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#

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;
}
}
}