You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
72 lines
2.2 KiB
C#
72 lines
2.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using _1869_Remake;
|
|
using _1869_Remake.Entities;
|
|
using Otter;
|
|
|
|
namespace _1869_Remake.Entities
|
|
{
|
|
public class MeeresKnotenpunkt : Entity
|
|
{
|
|
//ID_NAME_LAGE des Knotenpunktes
|
|
public string ORT;
|
|
|
|
//Liste aller mit diesem Punkt verbundenen Knotenpunkte
|
|
Dictionary<KeyValuePair<SeeStraße, string>, int> VERKNÜPFTESEESTRAßEN = new Dictionary<KeyValuePair<SeeStraße, string>, int>();
|
|
|
|
//zugehöriger Weltkartenteil und dessen Position (Da die Pos abhängig ist von Weltkarten teil aber der Punkt [z.b. Bei Auswahl] der gleiche bleibt)
|
|
Dictionary<string, int> SCREENPOS_X;
|
|
Dictionary<string, int> SCREENPOS_Y;
|
|
|
|
public Image Knoten;
|
|
|
|
|
|
|
|
public MeeresKnotenpunkt(string ort)
|
|
{
|
|
// Todo Vervollständigen
|
|
this.ORT = ort;
|
|
|
|
Knoten = new Image(Assets.ICON_MEERESKNOTEN);
|
|
Knoten.CenterOrigin();
|
|
Knoten.X = 0;
|
|
Knoten.Y = 0;
|
|
|
|
AddGraphic(Knoten);
|
|
Globals.registriereEntität(this);
|
|
}
|
|
|
|
public override void Update()
|
|
{
|
|
base.Update();
|
|
|
|
|
|
}
|
|
|
|
public void verlinkeSeeStraße(SeeStraße Route, int SpeedMultiplikator, string JahresZeit)
|
|
{// Eintragen der Seestraße (+ Jahreszeit wegen Strömungskarte) in Verbindung mit dessen SpeedMultiplikator (wenn gute Windverhältnisse die Reise begünstigen z.b.)
|
|
if (!VERKNÜPFTESEESTRAßEN.ContainsKey(new KeyValuePair<SeeStraße, string>(Route, JahresZeit)))
|
|
{
|
|
VERKNÜPFTESEESTRAßEN.Add(new KeyValuePair<SeeStraße, string>(Route, JahresZeit), SpeedMultiplikator);
|
|
}
|
|
}
|
|
|
|
public void wechsleWeltAnsicht(string Kontinent)
|
|
{
|
|
if (SCREENPOS_X.ContainsKey(Kontinent))
|
|
{
|
|
setzeNeueScreenPos(SCREENPOS_X[Kontinent], SCREENPOS_Y[Kontinent]);
|
|
}
|
|
}
|
|
|
|
public void setzeNeueScreenPos(int xPos, int yPos)
|
|
{
|
|
this.X = xPos;
|
|
this.Y = yPos;
|
|
}
|
|
}
|
|
}
|