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.
3568 lines
234 KiB
C#
3568 lines
234 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using _1869_Remake;
|
|
using _1869_Remake.ToolKlassen;
|
|
using _1869_Remake.Entities;
|
|
using Otter;
|
|
|
|
|
|
namespace _1869_Remake.Scenes
|
|
{
|
|
public class WerftScene : Scene
|
|
{
|
|
|
|
TextBuilder TextLieferant;
|
|
|
|
public Image WerftScreen_Büro = new Image(Assets.WERFTBÜROSCREEN);
|
|
public Image WerftScreen_Reparatur = new Image(Assets.WERFTREPERATURSCREEN);
|
|
public Image WerftScreen_SchiffsAuswahl = new Image(Assets.WERFTSCHIFFSAUSWAHLSCREEN);
|
|
public Image FadeInBlackScreen = new Image(Assets.BLACKSCREEN);
|
|
public Image FadeOutBlackScreen = new Image(Assets.BLACKSCREEN);
|
|
|
|
//Schiffsscreens
|
|
public Image Schiffsauswahl_Schoner = new Image(Assets.WERFT_SCHIFF_SCHONER);
|
|
public Image Schiffsauswahl_Bark = new Image(Assets.WERFT_SCHIFF_BARK);
|
|
public Image Schiffsauswahl_Fregatte = new Image(Assets.WERFT_SCHIFF_FREGATTE);
|
|
public Image Schiffsauswahl_Brigg = new Image(Assets.WERFT_SCHIFF_BRIGG);
|
|
public Image Schiffsauswahl_Holzdampfschiff = new Image(Assets.WERFT_SCHIFF_HOLZDAMPFSCHIFF);
|
|
public Image Schiffsauswahl_Eisendampfschiff = new Image(Assets.WERFT_SCHIFF_EISENDAMPFSCHIFF);
|
|
public Image Schiffsauswahl_Klipper = new Image(Assets.WERFT_SCHIFF_KLIPPER);
|
|
public Image Schiffsauswahl_Name = new Image(Assets.WERFT_SCHIFF_BAU_NAME);
|
|
private List<Image> SchiffsSchemaListe = new List<Image>();
|
|
private List<Schiff> gebrauchteSchiffe = new List<Schiff>();
|
|
private int SchiffsIndex = 0;
|
|
//AnzeigeTimer
|
|
public const float TIMER_GRENZE = 90f;
|
|
public float szenenTimer = 0f;
|
|
public bool wahlFertig = true;
|
|
public bool anzeigeFertig = false;
|
|
|
|
//TempTextVariablen
|
|
Queue<string> TempSprachText = new Queue<string>();
|
|
Queue<string> TempSprachParams = new Queue<string>();
|
|
Queue<string> TempQueue = new Queue<string>();
|
|
|
|
//Letzte dem Textbuilder übergebene Liste an Paramtern (Wird nur für Shortcut funktionalität verwender)
|
|
private List<string> letzteÜbergebeneListe = new List<string>();
|
|
|
|
public Hafen aktuellerHafen;
|
|
private Image aktuellerBG;
|
|
private string aktuellGewählterSchiffstyp = "SCHONER";
|
|
//Standard Aufbereitungszeit für gebrauchte Schiffe ist 4 Tage
|
|
private TimeSpan StandardLieferZeit = new TimeSpan(4, 0, 0, 0);
|
|
|
|
//Temporäre Liste der möglichen Geldquellen
|
|
public List<string> möglicheGeldQuellen = new List<string>();
|
|
public int geldQuellenIndex = 0;
|
|
public int betragAbbezahlen = 0;
|
|
private int GebrauchtWert;
|
|
private int WunschRestBetrag;
|
|
bool kannBezahlen;
|
|
|
|
//Textbox zum Eingeben der Schiffsnamen
|
|
public TextBox textFeld;
|
|
|
|
|
|
public WerftScene(string Preset)
|
|
{
|
|
//Initialisieren des Hauptbildschirms und einblenden
|
|
Globals.aktuelleSzene = "Werft";
|
|
|
|
//Informationen zum aktuellen Hafen wird geladen, Alle Handlungen beeinflussen den globalen Zustand des Hafens
|
|
aktuellerHafen = Globals.AlleHäfen[Preset];
|
|
//TestLogging
|
|
Console.WriteLine("Aktueller Hafen ist " + aktuellerHafen.NAME);
|
|
|
|
//TextBuilder einbinden (POS = Unterer RAND)
|
|
TextLieferant = new TextBuilder(Globals.aktuelleSzene);
|
|
Add(TextLieferant);
|
|
|
|
überprüfeGeldquellen();
|
|
|
|
//Einleitungssprachtexte
|
|
Queue<string> WillkommensText = new Queue<string>();
|
|
WillkommensText.Enqueue("Helfen");
|
|
TextLieferant.erzeugeSprachText(WillkommensText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
|
|
//Auswahltexte
|
|
TextLieferant.erzeugeAuswahlText(new Queue<string>(), 25, 410);
|
|
|
|
//Vorbeireiten des Hintergrundes Büro und der NebenScreens
|
|
//Büro
|
|
WerftScreen_Büro.CenterOrigin();
|
|
WerftScreen_Büro.X = Globals.Remake.HalfWidth;
|
|
WerftScreen_Büro.Y = Globals.Remake.HalfHeight;
|
|
WerftScreen_Büro.Alpha = 1f;
|
|
//bei Start der Szene wird der aktuelle BG weg gespeichert um diesen Später aus/einzublenden
|
|
aktuellerBG = WerftScreen_Büro;
|
|
AddGraphic(aktuellerBG);
|
|
|
|
//Reperatur Screen
|
|
WerftScreen_Reparatur.CenterOrigin();
|
|
WerftScreen_Reparatur.X = Globals.Remake.HalfWidth;
|
|
WerftScreen_Reparatur.Y = Globals.Remake.HalfHeight;
|
|
WerftScreen_Reparatur.Alpha = 0f;
|
|
|
|
//Schiffsauswahl Screen
|
|
WerftScreen_SchiffsAuswahl.CenterOrigin();
|
|
WerftScreen_SchiffsAuswahl.X = Globals.Remake.HalfWidth;
|
|
WerftScreen_SchiffsAuswahl.Y = Globals.Remake.HalfHeight;
|
|
WerftScreen_SchiffsAuswahl.Alpha = 0f;
|
|
|
|
//SchiffsScreens
|
|
Schiffsauswahl_Schoner.CenterOrigin();
|
|
Schiffsauswahl_Schoner.X = Globals.Remake.HalfWidth;
|
|
Schiffsauswahl_Schoner.Y = Globals.Remake.HalfHeight;
|
|
Schiffsauswahl_Schoner.Alpha = 0f;
|
|
|
|
Schiffsauswahl_Bark.CenterOrigin();
|
|
Schiffsauswahl_Bark.X = Globals.Remake.HalfWidth;
|
|
Schiffsauswahl_Bark.Y = Globals.Remake.HalfHeight;
|
|
Schiffsauswahl_Bark.Alpha = 0f;
|
|
|
|
Schiffsauswahl_Holzdampfschiff.CenterOrigin();
|
|
Schiffsauswahl_Holzdampfschiff.X = Globals.Remake.HalfWidth;
|
|
Schiffsauswahl_Holzdampfschiff.Y = Globals.Remake.HalfHeight;
|
|
Schiffsauswahl_Holzdampfschiff.Alpha = 0f;
|
|
|
|
Schiffsauswahl_Eisendampfschiff.CenterOrigin();
|
|
Schiffsauswahl_Eisendampfschiff.X = Globals.Remake.HalfWidth;
|
|
Schiffsauswahl_Eisendampfschiff.Y = Globals.Remake.HalfHeight;
|
|
Schiffsauswahl_Eisendampfschiff.Alpha = 0f;
|
|
|
|
Schiffsauswahl_Brigg.CenterOrigin();
|
|
Schiffsauswahl_Brigg.X = Globals.Remake.HalfWidth;
|
|
Schiffsauswahl_Brigg.Y = Globals.Remake.HalfHeight;
|
|
Schiffsauswahl_Brigg.Alpha = 0f;
|
|
|
|
Schiffsauswahl_Fregatte.CenterOrigin();
|
|
Schiffsauswahl_Fregatte.X = Globals.Remake.HalfWidth;
|
|
Schiffsauswahl_Fregatte.Y = Globals.Remake.HalfHeight;
|
|
Schiffsauswahl_Fregatte.Alpha = 0f;
|
|
|
|
|
|
Schiffsauswahl_Klipper.CenterOrigin();
|
|
Schiffsauswahl_Klipper.X = Globals.Remake.HalfWidth;
|
|
Schiffsauswahl_Klipper.Y = Globals.Remake.HalfHeight;
|
|
Schiffsauswahl_Klipper.Alpha = 0f;
|
|
|
|
Schiffsauswahl_Name.CenterOrigin();
|
|
Schiffsauswahl_Name.X = Globals.Remake.HalfWidth;
|
|
Schiffsauswahl_Name.Y = Globals.Remake.HalfHeight;
|
|
Schiffsauswahl_Name.Alpha = 0f;
|
|
|
|
//Vorbereiten des Blackscreens
|
|
FadeInBlackScreen.CenterOrigin();
|
|
FadeInBlackScreen.X = Globals.Remake.HalfWidth;
|
|
FadeInBlackScreen.Y = Globals.Remake.HalfHeight;
|
|
FadeInBlackScreen.Alpha = 1f;
|
|
|
|
FadeOutBlackScreen.CenterOrigin();
|
|
FadeOutBlackScreen.X = Globals.Remake.HalfWidth;
|
|
FadeOutBlackScreen.Y = Globals.Remake.HalfHeight;
|
|
FadeOutBlackScreen.Alpha = 0f;
|
|
|
|
Tween(FadeInBlackScreen, new { Alpha = 0f }, 64f, 0f).Ease(Ease.BackInOut);
|
|
AddGraphics(FadeInBlackScreen);
|
|
AddGraphic(FadeOutBlackScreen);
|
|
}
|
|
|
|
|
|
public override void Update()
|
|
{
|
|
base.Update();
|
|
|
|
//hochzählendes Zeitelement um Aktionen in der Szene zu Takten
|
|
szenenTimer++;
|
|
|
|
if (FadeOutBlackScreen.Alpha >= 0.999f)
|
|
{
|
|
Globals.LetzteSzene = "Werft";
|
|
this.RemoveAll();
|
|
Globals.Remake.SwitchScene(new worldMap());
|
|
}
|
|
|
|
//Bei Tick überprüfen, ob etwas im Textbuilder geklickt wurde (1 = Obere Auswahl, 2 = Mitlere Auswahl, 3 = Untere Auswahl, 4 = Oberer Pfeil, 5 = unterer Pfeil)
|
|
//Zuerst überprüfen auf welcher Ebene wir uns aktuell befinden und danach was dort geklickt wurde
|
|
int tempAuswahl = TextLieferant.checkAuswahl();
|
|
Text TempText;
|
|
List<Text> anzeigeTextListe = new List<Text>();
|
|
Schiff SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
string gewählterSchiffsName = " ";
|
|
switch (TextLieferant.aktuelleEbene)
|
|
{
|
|
// Textbaum - Root
|
|
case "1":
|
|
#region RootLogik (Demo Ready)
|
|
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
//Noch keine Auswahl getroffen
|
|
break;
|
|
|
|
// Hier muss für jede Auswahl immer alle Möglichen Baumstränge abgedeckt werden, wenn neuer Baumzweig hinzukommt muss hier seine Auswahl verwaltet werdenkd
|
|
case 1:
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
letzteÜbergebeneListe.Clear();
|
|
//Auswahl Reparatur
|
|
WechsleBG("Reparatur");
|
|
|
|
TextLieferant.wechsleAuswahlText("1.1", new Queue<string>());
|
|
|
|
break;
|
|
case 2:
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
aktuellGewählterSchiffstyp = Globals.AlleSchiffsTypen[SchiffsIndex].SCHIFFSTYP;
|
|
//Auswahl Schiff bauen
|
|
|
|
int tempSchiffeInBau = 0;
|
|
//Vorabüberprüfen ob bereits 2 zu bauende Schiffe im Hafen sind
|
|
//Jede Werft baut maximal 2 Schiffe (spielerübergreifend)
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.inBau)
|
|
{
|
|
tempSchiffeInBau++;
|
|
}
|
|
}
|
|
if (tempSchiffeInBau >= 2)
|
|
{
|
|
TempSprachText.Clear();
|
|
TempSprachText.Enqueue("BAU_KEINPLATZ1");
|
|
TempSprachText.Enqueue("BAU_KEINPLATZ2");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<String>(), Globals.Remake.HalfWidth, 100);
|
|
break;
|
|
}
|
|
else
|
|
{
|
|
// Es könenn pro Werft maximal 2 Schiffe gebaut werden unabhängig von welchem Spieler
|
|
switch (SchiffsIndex)
|
|
{
|
|
#region SchiffsParams
|
|
//Erzeugen der jeweiligen Anzeigen Texte je nach Schiffstyp
|
|
case 0:
|
|
WechsleBG("Schiffsauswahl_Schoner");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 1:
|
|
WechsleBG("Schiffsauswahl_Bark");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 2:
|
|
WechsleBG("Schiffsauswahl_Holzdampfschiff");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(4), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 3:
|
|
WechsleBG("Schiffsauswahl_Eisendampfschiff");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(5), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 4:
|
|
WechsleBG("Schiffsauswahl_Brigg");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 280;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 300;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 5:
|
|
WechsleBG("Schiffsauswahl_Fregatte");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 220;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 6:
|
|
WechsleBG("Schiffsauswahl_Klipper");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 340;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
#endregion
|
|
}
|
|
|
|
TextLieferant.erzeugeAnzeigeTexte(anzeigeTextListe);
|
|
TextLieferant.wechsleAuswahlText("1.2", new Queue<string>());
|
|
break;
|
|
}
|
|
case 3:
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
//Auswahl Verlassen
|
|
//FadeOut zu WorldMap
|
|
Tween(FadeOutBlackScreen, new { Alpha = 1f }, 180f, 0f).Ease(Ease.BackInOut);
|
|
|
|
TextLieferant.setzeFadeOut();
|
|
break;
|
|
|
|
case 4:
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
letzteÜbergebeneListe.Clear();
|
|
//Auswahl Gebrauchtes Schiff
|
|
|
|
//Zusammensuchen der Liste aller gebrauchten Schiffe
|
|
// Gebrauchtes Schiff = Schiff ohne Commandeur angedockt im aktuellen Hafen
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.COMMANDEUR == null)
|
|
{
|
|
gebrauchteSchiffe.Add(s);
|
|
}
|
|
}
|
|
if (gebrauchteSchiffe.IsEmpty())
|
|
{
|
|
TempSprachText.Clear();
|
|
TempSprachText.Enqueue("Gebraucht_KEINESCHIFFE");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<String>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
else
|
|
{
|
|
SchiffsIndex = 0;
|
|
aktuellGewählterSchiffstyp = gebrauchteSchiffe[SchiffsIndex].SCHIFFSTYP;
|
|
|
|
GebrauchtWert = gebrauchteSchiffe[SchiffsIndex].NEUWERT;
|
|
//Verlaufswert muss berechnet werden
|
|
//-> Normalerweise wird prozentual zur Abnutzung die Differenz aus Neuwert-(Grad der Abnutzung in %) gerechnet
|
|
//-> Da Reparatur noch nich einbaut ist wird Altersabhängig bestimmt ((1/2)* Alter in jahren)
|
|
for (int Alter = 0; Alter < gebrauchteSchiffe[SchiffsIndex].ALTER; Alter++)
|
|
{//halbiere den NeuWert pro jahr
|
|
GebrauchtWert /= 2;
|
|
}
|
|
switch (aktuellGewählterSchiffstyp)
|
|
{
|
|
#region SchiffsParams
|
|
//Erzeugen der jeweiligen Anzeigen Texte je nach Schiffstyp
|
|
|
|
case "SCHONER":
|
|
WechsleBG("Schiffsauswahl_Schoner");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "BARK":
|
|
WechsleBG("Schiffsauswahl_Bark");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "HOLZDAMPFSCHIFF":
|
|
WechsleBG("Schiffsauswahl_Holzdampfschiff");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(4), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "EISENDAMPFSCHIFF":
|
|
WechsleBG("Schiffsauswahl_Eisendampfschiff");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(5), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "BRIGG":
|
|
WechsleBG("Schiffsauswahl_Brigg");
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 280;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 300;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 320;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "FREGATTE":
|
|
WechsleBG("Schiffsauswahl_Fregatte");
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 220;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 240;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "KLIPPER":
|
|
WechsleBG("Schiffsauswahl_Klipper");
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 340;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 190;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
#endregion
|
|
}
|
|
|
|
//Geldquellen paramter
|
|
TempQueue.Clear();
|
|
geldQuellenIndex = 0;
|
|
|
|
// Paramter1: Quellort Geld
|
|
// Parameter2: Geldmenge der Quelle
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
TempQueue.Enqueue("IM LAGER VERFÜGE ICH");
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
TempQueue.Enqueue((f.BUDGET / 100).ToString());
|
|
TempQueue.Enqueue((f.BUDGET % 100).ToString());
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
TempQueue.Enqueue("DIE " + möglicheGeldQuellen[geldQuellenIndex] + " VERFÜGT");
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET / 100).ToString());
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET % 100).ToString());
|
|
}
|
|
}
|
|
}
|
|
TextLieferant.erzeugeAnzeigeTexte(anzeigeTextListe);
|
|
TextLieferant.wechsleAuswahlText("1.4", TempQueue, false);
|
|
}
|
|
|
|
break;
|
|
case 5:
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
letzteÜbergebeneListe.Clear();
|
|
//Auswahl Schiff verkaufen
|
|
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
//Alle Schiffe des aktuellen Spielers anbieten (außer die noch in Bau befindlichen oder präpariert werden)
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.inBau != true && s.inBereitstellung != true)
|
|
{
|
|
TempQueue.Enqueue(s.NAME);
|
|
letzteÜbergebeneListe.Add(s.NAME);
|
|
}
|
|
|
|
}
|
|
|
|
TempSprachText = new Queue<string>();
|
|
if (TempQueue.Count() > 0)
|
|
{
|
|
if (TempQueue.Count() == 1)
|
|
{
|
|
//Shortcut zu Mengenbestimmungsscreen setzen
|
|
TextLieferant.setAuswahl(1);
|
|
}
|
|
else
|
|
{
|
|
TempSprachText.Enqueue("Verkauf_WelchesSchiff");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
|
|
}
|
|
|
|
TextLieferant.wechsleAuswahlText("1.5A", TempQueue, true);
|
|
}
|
|
else
|
|
{
|
|
|
|
//Spieler hat keine angedockten Schiffe in diesem Hafen
|
|
TempSprachText.Enqueue("Verkauf_KeinSchiff1");
|
|
TempSprachText.Enqueue("Verkauf_KeinSchiff2");
|
|
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
|
|
break;
|
|
case 6:
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
letzteÜbergebeneListe.Clear();
|
|
//Auswahl Schiff bezahlen wenn bestellt wurde
|
|
bool hatSchiffeInBau = false;
|
|
string bezahlterSchiffsName = "";
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
//Alle Schiffe des aktuellen Spielers anbieten (außer die noch in Bau befindlichen)
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.inBau)
|
|
{
|
|
hatSchiffeInBau = true;
|
|
//Spieler hat Schiff welches
|
|
if (bezahlterSchiffsName == "")
|
|
{
|
|
bezahlterSchiffsName = s.NAME;
|
|
}
|
|
else
|
|
{
|
|
bezahlterSchiffsName = "ALLE";
|
|
}
|
|
|
|
//Nur in die Liste nehmen wenn Schiff noch nicht bezahlt ist
|
|
if(!s.bezahlt)
|
|
{
|
|
TempQueue.Enqueue(s.NAME);
|
|
letzteÜbergebeneListe.Add(s.NAME);
|
|
}
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
TempSprachText = new Queue<string>();
|
|
TempSprachParams = new Queue<string>();
|
|
if (TempQueue.Count() > 0)
|
|
{
|
|
if (TempQueue.Count() == 1)
|
|
{
|
|
//Shortcut zu Mengenbestimmungsscreen setzen
|
|
TextLieferant.setAuswahl(1);
|
|
}
|
|
else
|
|
{
|
|
TempSprachText.Enqueue("Verkauf_WelchesSchiff");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
|
|
}
|
|
|
|
TextLieferant.wechsleAuswahlText("1.6A", TempQueue, true);
|
|
}
|
|
else
|
|
{
|
|
if(hatSchiffeInBau)
|
|
{
|
|
if(bezahlterSchiffsName=="ALLE")
|
|
{
|
|
TempSprachText.Enqueue("Bezahlen_AlleBezahlt");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
else
|
|
{
|
|
TempSprachParams.Enqueue(bezahlterSchiffsName);
|
|
TempSprachText.Enqueue("Bezahlen_XBezahlt");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
TempSprachText.Enqueue("Bezahlen_KeineSchiffe");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
|
|
}
|
|
break;
|
|
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.1":
|
|
#region Reparatur Logik (Demo ready)
|
|
// In der Demo deaktiviert (überall die selbe Nachricht)
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
//Noch keine Auswahl getroffen
|
|
break;
|
|
case 3:
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
break;
|
|
default:
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TempSprachText.Enqueue("Demo_KeineReparatur");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<String>(), Globals.Remake.HalfWidth, 100);
|
|
break;
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.2":
|
|
#region Bauen Logik (Demo ready)
|
|
// Bauen eines neuen Schiffes - Typauswahl
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
//Noch keine Auswahl getroffen
|
|
break;
|
|
case 1:
|
|
// Nächstes Model zeigen
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
SchiffsIndex++;
|
|
|
|
if (SchiffsIndex > 6)
|
|
SchiffsIndex = 6;
|
|
aktuellGewählterSchiffstyp = Globals.AlleSchiffsTypen[SchiffsIndex].SCHIFFSTYP;
|
|
switch (SchiffsIndex)
|
|
{
|
|
#region Schiffsparams
|
|
case 0:
|
|
WechsleBG("Schiffsauswahl_Schoner");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 1:
|
|
WechsleBG("Schiffsauswahl_Bark");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 2:
|
|
WechsleBG("Schiffsauswahl_Holzdampfschiff");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(4), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 3:
|
|
WechsleBG("Schiffsauswahl_Eisendampfschiff");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(5), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 4:
|
|
WechsleBG("Schiffsauswahl_Brigg");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 280;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 300;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 5:
|
|
WechsleBG("Schiffsauswahl_Fregatte");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 220;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 6:
|
|
WechsleBG("Schiffsauswahl_Klipper");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 340;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
#endregion
|
|
}
|
|
TextLieferant.erzeugeAnzeigeTexte(anzeigeTextListe);
|
|
break;
|
|
case 2:
|
|
// Letztes Model zeigen
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
SchiffsIndex--;
|
|
if (SchiffsIndex < 0)
|
|
SchiffsIndex = 0;
|
|
aktuellGewählterSchiffstyp = Globals.AlleSchiffsTypen[SchiffsIndex].SCHIFFSTYP;
|
|
switch (SchiffsIndex)
|
|
{
|
|
#region Schiffsparams
|
|
case 0:
|
|
WechsleBG("Schiffsauswahl_Schoner");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
|
|
break;
|
|
case 1:
|
|
WechsleBG("Schiffsauswahl_Bark");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
|
|
break;
|
|
case 2:
|
|
WechsleBG("Schiffsauswahl_Holzdampfschiff");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(4), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
|
|
break;
|
|
case 3:
|
|
WechsleBG("Schiffsauswahl_Eisendampfschiff");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(5), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 4:
|
|
WechsleBG("Schiffsauswahl_Brigg");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 280;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 300;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 5:
|
|
WechsleBG("Schiffsauswahl_Fregatte");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 220;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case 6:
|
|
WechsleBG("Schiffsauswahl_Klipper");
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempText = new Text("KABINEN FÜR " + SchablonenSchiff.KABINEN + " PASSAGIERE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + SchablonenSchiff.MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + SchablonenSchiff.LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + SchablonenSchiff.LIEFERZEIT + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + SchablonenSchiff.BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 340;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (SchablonenSchiff.NEUWERT / 100).ToString() + "," + (SchablonenSchiff.NEUWERT % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ANZAHLUNG: $" + (SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString() + "," + (SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
#endregion
|
|
}
|
|
TextLieferant.erzeugeAnzeigeTexte(anzeigeTextListe);
|
|
break;
|
|
case 3:
|
|
// Bestätigung - Schiff bauen
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
|
|
//Anzeigetext muss gelöscht werden
|
|
TextLieferant.erzeugeAnzeigeTexte(new List<Text>());
|
|
|
|
//Je nachdem welcher Index aktuell gewählt ist wird ein Bau-Event erzeugt mit dem jeweiligen Schiffstyp und Spieler
|
|
switch (SchiffsIndex)
|
|
{
|
|
case 0:
|
|
aktuellGewählterSchiffstyp = "SCHONER";
|
|
break;
|
|
case 1:
|
|
aktuellGewählterSchiffstyp = "BARK";
|
|
break;
|
|
case 2:
|
|
aktuellGewählterSchiffstyp = "HOLZDAMPFSCHIFF";
|
|
break;
|
|
case 3:
|
|
aktuellGewählterSchiffstyp = "EISENDAMPFSCHIFF";
|
|
break;
|
|
case 4:
|
|
aktuellGewählterSchiffstyp = "BRIGG";
|
|
break;
|
|
case 5:
|
|
aktuellGewählterSchiffstyp = "FREGATTE";
|
|
break;
|
|
|
|
case 6:
|
|
aktuellGewählterSchiffstyp = "KLIPPER";
|
|
break;
|
|
}
|
|
Console.WriteLine("Schiffstyp gewählt: " + aktuellGewählterSchiffstyp);
|
|
|
|
//Eingabefeld für Texteingabe
|
|
textFeld = new TextBox(Globals.Remake.HalfWidth - 65, Globals.Remake.HalfHeight - 60, 150, 20, 15, false);
|
|
this.Add(textFeld);
|
|
textFeld.Focus();
|
|
|
|
TextLieferant.wechsleAuswahlText("1.2.3A", TempQueue, false);
|
|
WechsleBG("Schiffsauswahl_Name");
|
|
|
|
break;
|
|
case 4:
|
|
// Abbruch
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
break;
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.2.3A":
|
|
#region Bauen_Namenswahl (Demo ready)
|
|
if (Globals.PlayerSession.Controller.Button("Enter").Pressed)
|
|
{
|
|
TempSprachText.Clear();
|
|
gewählterSchiffsName = textFeld.getInput();
|
|
|
|
//TODO namens einzigartigkeit einabauen
|
|
|
|
if (textFeld.Text.ToString().IsEmpty())
|
|
{
|
|
TempSprachText.Enqueue("Bau_KeinName");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<String>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
//Wenn Eingabe erfolgt, Textfeld nicht leer und Eingabe kein Duplikater Schiffsname ist -> zu Bestätigung Szene
|
|
bool nameIstDuplikat = false;
|
|
foreach (Schiff s in Globals.AktuellerSpieler.SCHIFFE)
|
|
{
|
|
if (s.NAME == textFeld.Text.ToString())
|
|
{
|
|
nameIstDuplikat = true;
|
|
}
|
|
}
|
|
|
|
if (!nameIstDuplikat)
|
|
{
|
|
letzteÜbergebeneListe.Clear();
|
|
letzteÜbergebeneListe.Add(gewählterSchiffsName);
|
|
|
|
//Variable Texte füllen
|
|
TempQueue = new Queue<string>();
|
|
|
|
geldQuellenIndex = 0;
|
|
|
|
// Paramter1: Quellort Geld
|
|
// Parameter2: Geldmenge der Quelle
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
TempQueue.Enqueue("IM LAGER VERFÜGE ICH");
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
TempQueue.Enqueue((f.BUDGET / 100).ToString());
|
|
TempQueue.Enqueue((f.BUDGET % 100).ToString());
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
TempQueue.Enqueue("DIE " + möglicheGeldQuellen[geldQuellenIndex] + " VERFÜGT");
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET / 100).ToString());
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET % 100).ToString());
|
|
}
|
|
}
|
|
}
|
|
|
|
//Sprachtexte erzeugen
|
|
TempSprachText.Clear();
|
|
TempSprachParams.Clear();
|
|
|
|
TempSprachText.Enqueue("Bezahlen_ANZAHLUNG1");
|
|
TempSprachText.Enqueue("Bezahlen_ANZAHLUNG2");
|
|
|
|
//Parameter 1 & 2: $ Betrag der Anzahlung
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempSprachParams.Enqueue((SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString());
|
|
TempSprachParams.Enqueue((SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString());
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
|
|
//Texteingabe muss gelöscht werden sonst verbleibt die eingabe auf dem screen
|
|
Remove(textFeld);
|
|
|
|
TextLieferant.wechsleAuswahlText("1.2.3B", TempQueue, false);
|
|
WechsleBG("Büro");
|
|
}
|
|
else
|
|
{
|
|
if (TempSprachText.IsEmpty())
|
|
{
|
|
TempSprachText.Enqueue("Bau_NameDuplikat");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<String>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.2.3B":
|
|
#region Bauen_Bezahlen (Demo ready)
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
break;
|
|
case 1:
|
|
//Wiederholung des Anzahlungsbetrages
|
|
//Sprachtexte erzeugen
|
|
TempSprachText.Clear();
|
|
TempSprachParams.Clear();
|
|
|
|
TempSprachText.Enqueue("Bezahlen_ANZAHLUNG1");
|
|
TempSprachText.Enqueue("Bezahlen_ANZAHLUNG2");
|
|
|
|
//Parameter 1 & 2: $ Betrag der Anzahlung
|
|
SchablonenSchiff = suchenSchablone(aktuellGewählterSchiffstyp);
|
|
TempSprachParams.Enqueue((SchablonenSchiff.ANZAHLUNGSPREIS / 100).ToString());
|
|
TempSprachParams.Enqueue((SchablonenSchiff.ANZAHLUNGSPREIS % 100).ToString());
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
break;
|
|
case 2:
|
|
//Anzahlung muss vorab bezahlt werden
|
|
//WEnn nicht genug geld -> Fehlermeldung
|
|
Filiale GeldQuelleLager = null;
|
|
Schiff GeldQuelleSchiff = null;
|
|
kannBezahlen = true;
|
|
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (Globals.AktuellerSpieler == f.BESITZER)
|
|
{
|
|
GeldQuelleLager = f;
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
GeldQuelleSchiff = s;
|
|
}
|
|
}
|
|
}
|
|
|
|
if (GeldQuelleLager != null)
|
|
{
|
|
//Geldquelle ist Lager -> Geld hier abziehen
|
|
if (GeldQuelleLager.BUDGET < SchablonenSchiff.ANZAHLUNGSPREIS)
|
|
{
|
|
kannBezahlen = false;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
//Geldquelle ist Schiff -> geld hier abziehen
|
|
if (GeldQuelleSchiff.SCHIFFSBUDGET < SchablonenSchiff.ANZAHLUNGSPREIS)
|
|
{
|
|
kannBezahlen = false;
|
|
}
|
|
}
|
|
|
|
if (kannBezahlen)
|
|
{
|
|
//Vorraussichtliches Fertigstellungsdatum
|
|
DateTime TempDatum = Globals.AktuellesDatum.Add(new TimeSpan(SchablonenSchiff.LIEFERZEIT, 0, 0));
|
|
|
|
//Erstellen des Schiffs als reales Objekt und anmelden im aktuellen Hafen
|
|
Schiff TempSchiff = new Schiff(letzteÜbergebeneListe[0], aktuellGewählterSchiffstyp, 0, Globals.AktuellerSpieler);
|
|
TempSchiff.initiereBau(TempDatum);
|
|
TempSchiff.fahreInHafenEin(aktuellerHafen.NAME);
|
|
aktuellerHafen.schiffsAktivität("Einfahren", TempSchiff);
|
|
Globals.AktuellerSpieler.erhalteSchiff(TempSchiff);
|
|
//Geld muss beigeldquelle abgezogen werden und mögliche Geldquellen müssen eventuell upgedated werden
|
|
if (GeldQuelleLager != null)
|
|
{//Geldquelle ist Filiale
|
|
GeldQuelleLager.verringereBudget(TempSchiff.ANZAHLUNGSPREIS);
|
|
}
|
|
else
|
|
{//Geldquelle ist Schiff
|
|
GeldQuelleSchiff.vermindernBudget(TempSchiff.ANZAHLUNGSPREIS);
|
|
}
|
|
überprüfeGeldquellen();
|
|
|
|
//Hinzufügen des SchiffsAktivierungsEvent
|
|
//Hinweis: Wenn dieses Event nicht mit dem bool bezahlt = true versehen ist wird es am gegebenen Datum dem Hafen übergeben
|
|
Globals.EventListe.Add(new WeltEvent(TempDatum, "SCHIFFBAU-FERTIGSTELLUNG", Globals.AktuellerSpieler, null, TempSchiff, aktuellerHafen, 0, null, null));
|
|
Globals.EventListe.Sort(new EventSorter());
|
|
|
|
//Sprachtext erzeugen
|
|
TempSprachText.Clear();
|
|
TempSprachParams.Clear();
|
|
|
|
//1. Text Param Anzahl Bau 2.Param Zeitfaktor(Monate/Tage)
|
|
TempSprachParams.Enqueue((TempSchiff.LIEFERZEIT / 30).ToString());
|
|
TempSprachParams.Enqueue("MONATE");
|
|
TempSprachText.Enqueue("Bezahlen_Abschluss1");
|
|
TempSprachText.Enqueue("Bezahlen_Abschluss2");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
|
|
//Wechsel zu root Menü
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
}
|
|
else
|
|
{
|
|
//Wenn nicht genug geld dann kurze Warnmeldung
|
|
TempSprachText.Enqueue("Bezahlen_KEINGELD");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
break;
|
|
case 3:
|
|
//Wechsle die Geldquelle
|
|
geldQuellenIndex++;
|
|
if (geldQuellenIndex >= möglicheGeldQuellen.Count())
|
|
{
|
|
geldQuellenIndex = 0;
|
|
}
|
|
// Paramter1: Quellort Geld
|
|
// Parameter2: Geldmenge der Quelle
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
TempQueue.Enqueue("IM LAGER VERFÜGE ICH");
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
TempQueue.Enqueue((f.BUDGET / 100).ToString());
|
|
TempQueue.Enqueue((f.BUDGET % 100).ToString());
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
TempQueue.Enqueue("DIE " + möglicheGeldQuellen[geldQuellenIndex] + " VERFÜGT");
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET / 100).ToString());
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET % 100).ToString());
|
|
}
|
|
}
|
|
}
|
|
TextLieferant.wechsleAuswahlText("1.2.3B", TempQueue, false);
|
|
break;
|
|
case 4:
|
|
// Abbruch
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
break;
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.4":
|
|
#region Gebraucht kaufen Logik
|
|
//TODO: Multi-Kauf des gleichen Schiffs ist möglich
|
|
// Kaufen eines gebrauchten Schiffes - Typauswahl
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
//Noch keine Auswahl getroffen
|
|
break;
|
|
case 1:
|
|
// Nächstes Model zeigen
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
|
|
SchiffsIndex++;
|
|
|
|
if (SchiffsIndex >= gebrauchteSchiffe.Count())
|
|
SchiffsIndex = gebrauchteSchiffe.Count() - 1;
|
|
|
|
aktuellGewählterSchiffstyp = gebrauchteSchiffe[SchiffsIndex].SCHIFFSTYP;
|
|
|
|
GebrauchtWert = gebrauchteSchiffe[SchiffsIndex].NEUWERT;
|
|
//Verlaufswert muss berechnet werden
|
|
//-> Normalerweise wird prozentual zur Abnutzung die Differenz aus Neuwert-(Grad der Abnutzung in %) gerechnet
|
|
//-> Da Reparatur noch nich einbaut ist wird Altersabhängig bestimmt ((1/2)* Alter in jahren)
|
|
for (int Alter = 0; Alter < gebrauchteSchiffe[SchiffsIndex].ALTER; Alter++)
|
|
{//halbiere den NeuWert pro jahr
|
|
GebrauchtWert /= 2;
|
|
}
|
|
switch (aktuellGewählterSchiffstyp)
|
|
{
|
|
#region SchiffsParams
|
|
//Erzeugen der jeweiligen Anzeigen Texte je nach Schiffstyp
|
|
|
|
case "SCHONER":
|
|
WechsleBG("Schiffsauswahl_Schoner");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "BARK":
|
|
WechsleBG("Schiffsauswahl_Bark");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "HOLZDAMPFSCHIFF":
|
|
WechsleBG("Schiffsauswahl_Holzdampfschiff");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(4), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "EISENDAMPFSCHIFF":
|
|
WechsleBG("Schiffsauswahl_Eisendampfschiff");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(5), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "BRIGG":
|
|
WechsleBG("Schiffsauswahl_Brigg");
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 280;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 300;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 320;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "FREGATTE":
|
|
WechsleBG("Schiffsauswahl_Fregatte");
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 220;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 240;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "KLIPPER":
|
|
WechsleBG("Schiffsauswahl_Klipper");
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 340;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 190;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
#endregion
|
|
}
|
|
|
|
TextLieferant.erzeugeAnzeigeTexte(anzeigeTextListe);
|
|
|
|
break;
|
|
case 2:
|
|
// Letztes Model zeigen
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
SchiffsIndex--;
|
|
|
|
if (SchiffsIndex < 0)
|
|
SchiffsIndex = 0;
|
|
|
|
aktuellGewählterSchiffstyp = gebrauchteSchiffe[SchiffsIndex].SCHIFFSTYP;
|
|
|
|
GebrauchtWert = gebrauchteSchiffe[SchiffsIndex].NEUWERT;
|
|
//Verlaufswert muss berechnet werden
|
|
//-> Normalerweise wird prozentual zur Abnutzung die Differenz aus Neuwert-(Grad der Abnutzung in %) gerechnet
|
|
//-> Da Reparatur noch nich einbaut ist wird Altersabhängig bestimmt ((1/2)* Alter in jahren)
|
|
for (int Alter = 0; Alter < gebrauchteSchiffe[SchiffsIndex].ALTER; Alter++)
|
|
{//halbiere den NeuWert pro jahr
|
|
GebrauchtWert /= 2;
|
|
}
|
|
switch (aktuellGewählterSchiffstyp)
|
|
{
|
|
#region SchiffsParams
|
|
//Erzeugen der jeweiligen Anzeigen Texte je nach Schiffstyp
|
|
|
|
case "SCHONER":
|
|
WechsleBG("Schiffsauswahl_Schoner");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "BARK":
|
|
WechsleBG("Schiffsauswahl_Bark");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "HOLZDAMPFSCHIFF":
|
|
WechsleBG("Schiffsauswahl_Holzdampfschiff");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(4), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 160;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 180;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "EISENDAMPFSCHIFF":
|
|
WechsleBG("Schiffsauswahl_Eisendampfschiff");
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 80;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp.Substring(5), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "BRIGG":
|
|
WechsleBG("Schiffsauswahl_Brigg");
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 40;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 280;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 300;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 320;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "FREGATTE":
|
|
WechsleBG("Schiffsauswahl_Fregatte");
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 60;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 80;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 100;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 350;
|
|
TempText.Y = 120;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 140;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 200;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 220;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 240;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
case "KLIPPER":
|
|
WechsleBG("Schiffsauswahl_Klipper");
|
|
TempText = new Text("KABINEN FÜR " + gebrauchteSchiffe[SchiffsIndex].KABINEN + " PASSAGIERE.", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 300;
|
|
TempText.Y = 30;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("BESATZUNG: " + gebrauchteSchiffe[SchiffsIndex].MANNSCHAFT_MAXGRÖßE + " MANN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 50;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LADERAUM: " + gebrauchteSchiffe[SchiffsIndex].LADERAUM + " TONNEN", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 70;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("LIEFERZEIT: " + StandardLieferZeit.TotalDays + " TAGE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 320;
|
|
TempText.Y = 90;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("RUMPF: " + gebrauchteSchiffe[SchiffsIndex].BAUMATERIAL, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 340;
|
|
TempText.Y = 110;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("PREIS: $" + (GebrauchtWert / 100).ToString() + "," + (GebrauchtWert % 100).ToString(), Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 130;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("ALTER: " + gebrauchteSchiffe[SchiffsIndex].ALTER.ToString() + " JAHRE", Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 360;
|
|
TempText.Y = 150;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("TYPE: " + aktuellGewählterSchiffstyp, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 170;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
TempText = new Text("NAME: " + gebrauchteSchiffe[SchiffsIndex].NAME, Assets.FONT_AMIGA4EVER2, 12);
|
|
TempText.X = 380;
|
|
TempText.Y = 190;
|
|
TempText.Color = Globals.AnzeigeBraun;
|
|
anzeigeTextListe.Add(TempText);
|
|
break;
|
|
#endregion
|
|
}
|
|
|
|
TextLieferant.erzeugeAnzeigeTexte(anzeigeTextListe);
|
|
break;
|
|
case 3:
|
|
// Nächste Geldquelle
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
//Wechsle die Geldquelle
|
|
geldQuellenIndex++;
|
|
TempQueue.Clear();
|
|
|
|
if (geldQuellenIndex >= möglicheGeldQuellen.Count())
|
|
{
|
|
geldQuellenIndex = 0;
|
|
}
|
|
// Paramter1: Quellort Geld
|
|
// Parameter2: Geldmenge der Quelle
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
TempQueue.Enqueue("IM LAGER VERFÜGE ICH");
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
TempQueue.Enqueue((f.BUDGET / 100).ToString());
|
|
TempQueue.Enqueue((f.BUDGET % 100).ToString());
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
TempQueue.Enqueue("DIE " + möglicheGeldQuellen[geldQuellenIndex] + " VERFÜGT");
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET / 100).ToString());
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET % 100).ToString());
|
|
}
|
|
}
|
|
}
|
|
TextLieferant.wechsleAuswahlText("1.4", TempQueue, false);
|
|
break;
|
|
case 4:
|
|
// Bestätigung - Schiff kaufen
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
|
|
Filiale GeldQuelleLager = null;
|
|
Schiff GeldQuelleSchiff = null;
|
|
kannBezahlen = true;
|
|
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (Globals.AktuellerSpieler == f.BESITZER)
|
|
{
|
|
GeldQuelleLager = f;
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
GeldQuelleSchiff = s;
|
|
}
|
|
}
|
|
}
|
|
|
|
if (GeldQuelleLager != null)
|
|
{
|
|
//Geldquelle ist Lager -> Geld hier abziehen
|
|
if (GeldQuelleLager.BUDGET < GebrauchtWert)
|
|
{
|
|
kannBezahlen = false;
|
|
}
|
|
else
|
|
{
|
|
//Geld muss bei Geldquelle abgezogen werden
|
|
GeldQuelleLager.verringereBudget(GebrauchtWert);
|
|
überprüfeGeldquellen();
|
|
}
|
|
}
|
|
else
|
|
{
|
|
//Geldquelle ist Schiff -> geld hier abziehen
|
|
if (GeldQuelleSchiff.SCHIFFSBUDGET < GebrauchtWert)
|
|
{
|
|
kannBezahlen = false;
|
|
}
|
|
else
|
|
{
|
|
//Geld muss bei Geldquelle abgezogen werden
|
|
GeldQuelleSchiff.vermindernBudget(GebrauchtWert);
|
|
überprüfeGeldquellen();
|
|
}
|
|
}
|
|
|
|
if (kannBezahlen)
|
|
{
|
|
//Vorraussichtliches Fertigstellungsdatum
|
|
//Bereitstellungsevent ist immer direkt am nächsten tag (Wenn Schiff noch gebaut wird wird dessen Datum übernommen ansonsten standard 4 Tage)
|
|
DateTime TempDatum = Globals.AktuellesDatum.Add(new TimeSpan(1, 0, 0, 0));
|
|
|
|
//Erstellen des Schiffs als reales Objekt und anmelden im aktuellen Hafen
|
|
Schiff TempSchiff = gebrauchteSchiffe[SchiffsIndex];
|
|
|
|
//Hinzufügen des SchiffsAktivierungsEvent
|
|
//Hinweis: Wenn dieses Event nicht mit dem bool bezahlt = true versehen ist wird es am gegebenen Datum dem Hafen übergeben
|
|
TempSchiff.initiereBereitstellung(Globals.AktuellesDatum + StandardLieferZeit);
|
|
TempSchiff.COMMANDEUR = Globals.AktuellerSpieler;
|
|
gebrauchteSchiffe.Remove(TempSchiff);
|
|
|
|
Globals.EventAktion(new WeltEvent(TempDatum, "SCHIFFBAU-BEREITSTELLUNG", null, null, TempSchiff, aktuellerHafen, 0, null, null), "EINFÜGEN");
|
|
Globals.EventAktion(new WeltEvent(TempDatum.AddDays(3), "SCHIFFBAU-FERTIGSTELLUNG", null, null, TempSchiff, aktuellerHafen, 0, null, null), "EINFÜGEN");
|
|
Globals.EventListe.Sort(new EventSorter());
|
|
|
|
//Kaufender Spieler erhält schiff
|
|
Globals.AktuellerSpieler.erhalteSchiff(TempSchiff);
|
|
|
|
//Sprachtext erzeugen
|
|
TempSprachText.Clear();
|
|
TempSprachParams.Clear();
|
|
|
|
//1. Text Param Anzahl Bau 2.Param Zeitfaktor(Monate/Tage)
|
|
TempSprachParams.Enqueue(StandardLieferZeit.TotalDays.ToString());
|
|
TempSprachParams.Enqueue("TAGE");
|
|
TempSprachText.Enqueue("Bezahlen_Abschluss1");
|
|
TempSprachText.Enqueue("Bezahlen_Abschluss2");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
|
|
//Anzeigetext muss gelöscht werden
|
|
TextLieferant.erzeugeAnzeigeTexte(new List<Text>());
|
|
|
|
//Wechsel zu root Menü
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
}
|
|
else
|
|
{
|
|
//Wenn nicht genug geld dann kurze Warnmeldung
|
|
TempSprachText.Enqueue("Bezahlen_KEINGELD");
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
|
|
|
|
break;
|
|
case 5:
|
|
// Abbruch
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
|
|
//Anzeigetext muss gelöscht werden
|
|
TextLieferant.erzeugeAnzeigeTexte(new List<Text>());
|
|
break;
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.5A":
|
|
#region Schiff verkaufen Logik - Schiffwahl (Demo ready)
|
|
// Verkaufen eines Schiffes - Model
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
//Noch keine Auswahl getroffen
|
|
break;
|
|
case 999:
|
|
// Abbruch
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
break;
|
|
default:
|
|
// Jeweilige Auswahl ist die Bootsauswahl
|
|
//Zunächst muss der Preis für das angebotene Schiff berechnet werden
|
|
//Im original wird prozentual berechnet -> aktuell jedoch noch ein 1/4. des Orignialpreises im bezug auf alter
|
|
|
|
Schiff TempSchiff = null;
|
|
GebrauchtWert = 0;
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == letzteÜbergebeneListe[tempAuswahl - 1])
|
|
{
|
|
TempSchiff = s;
|
|
GebrauchtWert = TempSchiff.NEUWERT;
|
|
break;
|
|
}
|
|
}
|
|
|
|
letzteÜbergebeneListe.Clear();
|
|
letzteÜbergebeneListe.Add(TempSchiff.NAME);
|
|
|
|
// Runterrechnen des Gebrauchtwertes
|
|
for (int Alter = 0; Alter <= TempSchiff.ALTER; Alter++)
|
|
{//halbiere den NeuWert pro jahr (+ einmal mehr halbieren um zu vierteln)
|
|
GebrauchtWert /= 2;
|
|
}
|
|
|
|
TempSprachText = new Queue<string>();
|
|
TempSprachText.Enqueue("Verkauf_Angebot");
|
|
|
|
TempSprachParams = new Queue<string>();
|
|
//1. Parameter Schiffsname
|
|
TempSprachParams.Enqueue(TempSchiff.NAME);
|
|
//2 & 3. Parameter Angebotspreis
|
|
TempSprachParams.Enqueue((GebrauchtWert / 100).ToString());
|
|
TempSprachParams.Enqueue((GebrauchtWert % 100).ToString());
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
|
|
TextLieferant.wechsleAuswahlText("1.5B", new Queue<string>(), false);
|
|
|
|
break;
|
|
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.5B":
|
|
#region Schiff Verkaufen Bestätigung (Demo ready)
|
|
// Auswahl, ob schiff verkauft wird zum Angebotenen Preis
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
//Noch keine auswahl getroffen
|
|
break;
|
|
case 1:
|
|
//Wiederholen Angebot
|
|
TempSprachText = new Queue<string>();
|
|
TempSprachText.Enqueue("Verkauf_Angebot");
|
|
|
|
TempSprachParams = new Queue<string>();
|
|
//1. Parameter Schiffsname
|
|
TempSprachParams.Enqueue(letzteÜbergebeneListe[0]);
|
|
//2 & 3. Parameter Angebotspreis
|
|
TempSprachParams.Enqueue((GebrauchtWert / 100).ToString());
|
|
TempSprachParams.Enqueue((GebrauchtWert % 100).ToString());
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
break;
|
|
case 2:
|
|
//Bestätigen Verkauf
|
|
TempSprachText = new Queue<string>();
|
|
TempSprachText.Enqueue("Verkauf_Abschluss");
|
|
|
|
TempSprachParams = new Queue<string>();
|
|
//1 & 2. Parameter Angebotspreis
|
|
TempSprachParams.Enqueue((GebrauchtWert / 100).ToString());
|
|
TempSprachParams.Enqueue((GebrauchtWert % 100).ToString());
|
|
|
|
//3. Parameter Zielort der Einzahlung -> hier wird erster eintrag in der möglichen Geldquellenliste genommen(meist das Lager)
|
|
if (möglicheGeldQuellen[0] == "LAGER")
|
|
{
|
|
TempSprachParams.Enqueue("LAGERKASSE");
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
// Wenn Verkauf bestätigt wird der Betrag ins Lager gegeben
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
f.erhöheBudget(GebrauchtWert);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
TempSprachParams.Enqueue("SCHIFFSKASSE DER " + möglicheGeldQuellen[0]);
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
//Wenn Verkauf bestätigt wird Betrag auf erstes angedocktes Schiff gegeben
|
|
if (s.NAME == möglicheGeldQuellen[0])
|
|
{
|
|
s.erhöhenBudget(GebrauchtWert);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Schiff muss an Hafen übergehen
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == letzteÜbergebeneListe[0])
|
|
{
|
|
Globals.AktuellerSpieler.schiffLoswerden(s, true);
|
|
s.COMMANDEUR = null;
|
|
break;
|
|
}
|
|
}
|
|
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
|
|
break;
|
|
case 3:
|
|
//Abbruch
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
break;
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.6A":
|
|
#region Schiff bezahlen Logik-Auswahl welches zu bauende Schiff bezahlt wird (Demo ready)
|
|
// Auswahl welches Schiff noch abzubezahlen ist
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
//Noch keine Auswahl getroffen
|
|
break;
|
|
case 999:
|
|
// Abbruch
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1.6B", new Queue<string>(), false);
|
|
WechsleBG("Büro");
|
|
break;
|
|
default:
|
|
// Jeweilige Auswahl ist die Bootsauswahl
|
|
Schiff TempSchiff = null;
|
|
betragAbbezahlen = 0;
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == letzteÜbergebeneListe[tempAuswahl - 1])
|
|
{
|
|
TempSchiff = s;
|
|
betragAbbezahlen = TempSchiff.RESTBETRAGKAUFPREIS;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (betragAbbezahlen <= 0)
|
|
{
|
|
//Schiff ist bereits abbezahlt -> kein verzeigen in die nächste Seite
|
|
TempSprachText = new Queue<string>();
|
|
TempSprachText.Enqueue("Bezahlen_KeinRestbetrag");
|
|
|
|
TempSprachParams = new Queue<string>();
|
|
//1 & 2. Parameter Angebotspreis
|
|
TempSprachParams.Enqueue(letzteÜbergebeneListe[tempAuswahl - 1]);
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
}
|
|
else
|
|
{
|
|
letzteÜbergebeneListe.Clear();
|
|
letzteÜbergebeneListe.Add(TempSchiff.NAME);
|
|
|
|
TempSprachText = new Queue<string>();
|
|
TempSprachText.Enqueue("Bezahlen_Restbetrag");
|
|
|
|
TempSprachParams = new Queue<string>();
|
|
//1 & 2. Parameter Angebotspreis
|
|
TempSprachParams.Enqueue((betragAbbezahlen / 100).ToString());
|
|
TempSprachParams.Enqueue((betragAbbezahlen % 100).ToString());
|
|
TextLieferant.erzeugeSprachText(TempSprachText, TempSprachParams, Globals.Remake.HalfWidth, 100);
|
|
|
|
//Variable Auswahl Texte füllen
|
|
TempQueue = new Queue<string>();
|
|
|
|
geldQuellenIndex = 0;
|
|
|
|
// Paramter1: Quellort Geld
|
|
// Parameter2: Geldmenge der Quelle
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
TempQueue.Enqueue("IM LAGER VERFÜGE ICH");
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
TempQueue.Enqueue((f.BUDGET / 100).ToString());
|
|
TempQueue.Enqueue((f.BUDGET % 100).ToString());
|
|
WunschRestBetrag = f.BUDGET;
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
TempQueue.Enqueue("DIE " + möglicheGeldQuellen[geldQuellenIndex] + " VERFÜGT");
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET / 100).ToString());
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET % 100).ToString());
|
|
WunschRestBetrag = s.SCHIFFSBUDGET;
|
|
}
|
|
}
|
|
}
|
|
|
|
//2. Paramtext -> gewünschter Zahlbetrag (Std immer voller Preis oder was 1. Geldquelle hergibt)
|
|
if (betragAbbezahlen <= WunschRestBetrag)
|
|
{
|
|
//Wenn möglicher Betrag der geldquelle > abzubezahlender Betrag -> abzubezahlender Betrag = max
|
|
WunschRestBetrag = betragAbbezahlen;
|
|
}
|
|
|
|
TempQueue.Enqueue((WunschRestBetrag / 100).ToString());
|
|
TempQueue.Enqueue((WunschRestBetrag % 100).ToString());
|
|
|
|
//3 Paramtertext -> Schiffsname
|
|
TempQueue.Enqueue(TempSchiff.NAME);
|
|
|
|
TextLieferant.wechsleAuswahlText("1.6B", TempQueue, false);
|
|
|
|
}
|
|
break;
|
|
}
|
|
#endregion
|
|
break;
|
|
case "1.6B":
|
|
#region Schiff bezahlen Logik-Auswahl der finanziellen Aspekte des zu bezahlenden Schiff (Demo ready)
|
|
// Bezahlen des Restbetrages eines beauftragten Schiffsbaus
|
|
switch (tempAuswahl)
|
|
{
|
|
case 0:
|
|
//Noch keine Auswahl getroffen
|
|
break;
|
|
case 1:
|
|
//Geldquelle
|
|
|
|
//Bei Linksklick erhöhen
|
|
geldQuellenIndex++;
|
|
|
|
|
|
if (geldQuellenIndex >= möglicheGeldQuellen.Count())
|
|
{
|
|
geldQuellenIndex = 0;
|
|
}
|
|
|
|
// Paramter1: Quellort Geld
|
|
// Parameter2: Geldmenge der Quelle
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
TempQueue.Enqueue("IM LAGER VERFÜGE ICH");
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
TempQueue.Enqueue((f.BUDGET / 100).ToString());
|
|
TempQueue.Enqueue((f.BUDGET % 100).ToString());
|
|
WunschRestBetrag = f.BUDGET;
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
TempQueue.Enqueue("DIE " + möglicheGeldQuellen[geldQuellenIndex] + " VERFÜGT");
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET / 100).ToString());
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET % 100).ToString());
|
|
WunschRestBetrag = s.SCHIFFSBUDGET;
|
|
}
|
|
}
|
|
}
|
|
|
|
//2. Paramtext -> gewünschter Zahlbetrag (Std immer voller Preis oder was 1. Geldquelle hergibt)
|
|
if (betragAbbezahlen <= WunschRestBetrag)
|
|
{
|
|
//Wenn möglicher Betrag der geldquelle > abzubezahlender Betrag -> abzubezahlender Betrag = max
|
|
WunschRestBetrag = betragAbbezahlen;
|
|
}
|
|
|
|
TempQueue.Enqueue((WunschRestBetrag / 100).ToString());
|
|
TempQueue.Enqueue((WunschRestBetrag % 100).ToString());
|
|
|
|
//3 Paramtertext -> Schiffsname
|
|
TempQueue.Enqueue(letzteÜbergebeneListe[0]);
|
|
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1.6B", TempQueue, false);
|
|
|
|
break;
|
|
case 2:
|
|
//gewünschter Bezahlbetrag
|
|
if (TextLieferant.checkButtonAuswahl() == "MausLinks")
|
|
{
|
|
//Bei Linksklick erhöhen um $100
|
|
betragAbbezahlen += 10000;
|
|
int TempMax;
|
|
Filiale QuellenFiliale;
|
|
Schiff QuellenSchiff = null;
|
|
Schiff TempSchiff = null;
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == letzteÜbergebeneListe[0])
|
|
{
|
|
TempSchiff = s;
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
if (setzeGeldQuelle().GetType() == typeof(Filiale))
|
|
{
|
|
//Geldquelle ist Lager
|
|
QuellenFiliale = setzeGeldQuelle() as Filiale;
|
|
TempMax = QuellenFiliale.BUDGET;
|
|
if (betragAbbezahlen >= TempMax)
|
|
{
|
|
betragAbbezahlen = TempMax;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
//Geldquelle ist Schiff
|
|
QuellenSchiff = setzeGeldQuelle() as Schiff;
|
|
TempMax = QuellenSchiff.SCHIFFSBUDGET;
|
|
if (betragAbbezahlen >= TempMax)
|
|
{
|
|
betragAbbezahlen = TempMax;
|
|
}
|
|
}
|
|
//check ob gewählter Betrag maximaler abbezahl betrag überschreitet
|
|
if (betragAbbezahlen >= TempSchiff.RESTBETRAGKAUFPREIS)
|
|
{
|
|
betragAbbezahlen = TempSchiff.RESTBETRAGKAUFPREIS;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
//bei rechtsklick vermindern um $100
|
|
betragAbbezahlen -= 10000;
|
|
|
|
//Min kriterium
|
|
if (betragAbbezahlen < 0)
|
|
{
|
|
betragAbbezahlen = 0;
|
|
}
|
|
}
|
|
|
|
// Paramter1: Quellort Geld
|
|
// Parameter2: Geldmenge der Quelle
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
TempQueue.Enqueue("IM LAGER VERFÜGE ICH");
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
TempQueue.Enqueue((f.BUDGET / 100).ToString());
|
|
TempQueue.Enqueue((f.BUDGET % 100).ToString());
|
|
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
TempQueue.Enqueue("DIE " + möglicheGeldQuellen[geldQuellenIndex] + " VERFÜGT");
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.COMMANDEUR == Globals.AktuellerSpieler && s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET / 100).ToString());
|
|
TempQueue.Enqueue((s.SCHIFFSBUDGET % 100).ToString());
|
|
WunschRestBetrag = s.SCHIFFSBUDGET;
|
|
}
|
|
}
|
|
}
|
|
|
|
//2. Paramtext -> gewünschter Zahlbetrag (Std immer voller Preis oder was 1. Geldquelle hergibt)
|
|
TempQueue.Enqueue((betragAbbezahlen / 100).ToString());
|
|
TempQueue.Enqueue((betragAbbezahlen % 100).ToString());
|
|
|
|
//3 Paramtertext -> Schiffsname
|
|
TempQueue.Enqueue(letzteÜbergebeneListe[0]);
|
|
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1.6B", TempQueue, false);
|
|
break;
|
|
case 3:
|
|
//Bestätigen
|
|
|
|
//Absicherung, dass User nicht versucht 0 zu bezahlen
|
|
if (betragAbbezahlen <= 0)
|
|
{
|
|
TempSprachText = new Queue<string>();
|
|
TempSprachText.Enqueue("Bezahlen_KeinZahlbetrag");
|
|
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
}
|
|
else
|
|
{
|
|
//Abziehen des Geldbetrages
|
|
Filiale GeldQuelleLager = null;
|
|
Schiff GeldQuelleSchiff = null;
|
|
kannBezahlen = true;
|
|
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (Globals.AktuellerSpieler == f.BESITZER)
|
|
{
|
|
GeldQuelleLager = f;
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
GeldQuelleSchiff = s;
|
|
}
|
|
}
|
|
}
|
|
|
|
if (GeldQuelleLager != null)
|
|
{
|
|
//Geldquelle ist Lager -> Geld hier abziehen
|
|
GeldQuelleLager.verringereBudget(GebrauchtWert);
|
|
überprüfeGeldquellen();
|
|
|
|
}
|
|
else
|
|
{
|
|
//Geldquelle ist Schiff -> geld hier abziehen
|
|
GeldQuelleSchiff.vermindernBudget(GebrauchtWert);
|
|
überprüfeGeldquellen();
|
|
|
|
}
|
|
|
|
//Vorraussichtliches Fertigstellungsdatum
|
|
//Bereitstellungsevent ist immer direkt am nächsten tag (Wenn Schiff noch gebaut wird wird dessen Datum übernommen ansonsten standard 4 Tage)
|
|
DateTime TempDatum = Globals.AktuellesDatum.Add(new TimeSpan(1, 0, 0, 0));
|
|
Schiff TempSchiff = null;
|
|
//Suchen des Schiffs im aktuellen Hafen
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == letzteÜbergebeneListe[0])
|
|
{
|
|
TempSchiff = s;
|
|
break;
|
|
}
|
|
}
|
|
|
|
//Hinzufügen des SchiffsAktivierungsEvent
|
|
//Hinweis: Wenn dieses Event nicht mit dem bool bezahlt = true versehen ist wird es am gegebenen Datum dem Hafen übergeben
|
|
if (TempSchiff.schiffAbbezahlen(betragAbbezahlen) == "ERFOLG_BEZAHLT")
|
|
{
|
|
//Wenn schiff fertig abbezahlt dann wird bereitstellungsevent eingefügt
|
|
Globals.EventAktion(new WeltEvent(TempDatum, "SCHIFFBAU-BEREITSTELLUNG", null, null, TempSchiff, aktuellerHafen, 0, null, null), "EINFÜGEN");
|
|
Globals.EventListe.Sort(new EventSorter());
|
|
}
|
|
|
|
//Erzeugen Sprachtext
|
|
TempSprachText = new Queue<string>();
|
|
TempSprachText.Enqueue("Bezahlen_BestenDank");
|
|
TempSprachText.Enqueue("Bezahlen_Zufrieden");
|
|
|
|
TextLieferant.erzeugeSprachText(TempSprachText, new Queue<string>(), Globals.Remake.HalfWidth, 100);
|
|
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
}
|
|
|
|
|
|
break;
|
|
case 4:
|
|
// Abbruch
|
|
Console.WriteLine("Auswahl " + tempAuswahl + " der Ebene " + TextLieferant.aktuelleEbene);
|
|
TextLieferant.wechsleAuswahlText("1", new Queue<string>(), false);
|
|
break;
|
|
}
|
|
#endregion
|
|
break;
|
|
|
|
}
|
|
}
|
|
|
|
public Schiff suchenSchablone(string SchiffsTyp)
|
|
{
|
|
foreach (Schiff s in Globals.AlleSchiffsTypen)
|
|
{
|
|
if (s.SCHIFFSTYP == SchiffsTyp)
|
|
{ return s; }
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public void WechsleBG(string Ziel)
|
|
{
|
|
// Vor wechsel muss erstmal der aktuelle ausgeblendet werden
|
|
aktuellerBG.Alpha = 0f;
|
|
RemoveGraphic(aktuellerBG);
|
|
// Wechseln des Background je nach Zielebene des Auswahlbaums (so muss nicht jeweils neue Szenen für einzelne Baum Strukturen gebaut werden)
|
|
switch (Ziel)
|
|
{
|
|
case "Büro":
|
|
WerftScreen_Büro.Alpha = 1f;
|
|
aktuellerBG = WerftScreen_Büro;
|
|
break;
|
|
case "Reparatur":
|
|
WerftScreen_Reparatur.Alpha = 1f;
|
|
aktuellerBG = WerftScreen_Reparatur;
|
|
break;
|
|
case "Schiffsauswahl":
|
|
WerftScreen_SchiffsAuswahl.Alpha = 1f;
|
|
aktuellerBG = WerftScreen_SchiffsAuswahl;
|
|
break;
|
|
case "Schiffsauswahl_Schoner":
|
|
Schiffsauswahl_Schoner.Alpha = 1f;
|
|
aktuellerBG = Schiffsauswahl_Schoner;
|
|
break;
|
|
case "Schiffsauswahl_Bark":
|
|
Schiffsauswahl_Bark.Alpha = 1f;
|
|
aktuellerBG = Schiffsauswahl_Bark;
|
|
break;
|
|
case "Schiffsauswahl_Holzdampfschiff":
|
|
Schiffsauswahl_Holzdampfschiff.Alpha = 1f;
|
|
aktuellerBG = Schiffsauswahl_Holzdampfschiff;
|
|
break;
|
|
case "Schiffsauswahl_Eisendampfschiff":
|
|
Schiffsauswahl_Eisendampfschiff.Alpha = 1f;
|
|
aktuellerBG = Schiffsauswahl_Eisendampfschiff;
|
|
break;
|
|
case "Schiffsauswahl_Brigg":
|
|
Schiffsauswahl_Brigg.Alpha = 1f;
|
|
aktuellerBG = Schiffsauswahl_Brigg;
|
|
break;
|
|
case "Schiffsauswahl_Fregatte":
|
|
Schiffsauswahl_Fregatte.Alpha = 1f;
|
|
aktuellerBG = Schiffsauswahl_Fregatte;
|
|
break;
|
|
case "Schiffsauswahl_Klipper":
|
|
Schiffsauswahl_Klipper.Alpha = 1f;
|
|
aktuellerBG = Schiffsauswahl_Klipper;
|
|
break;
|
|
case "Schiffsauswahl_Name":
|
|
Schiffsauswahl_Name.Alpha = 1f;
|
|
aktuellerBG = Schiffsauswahl_Name;
|
|
break;
|
|
}
|
|
|
|
// Wenn Änderung aktiv dann neues BG laden
|
|
AddGraphic(aktuellerBG);
|
|
}
|
|
|
|
private void überprüfeGeldquellen()
|
|
{
|
|
//Liste möglicher Geldquellen (Für einige Auswahlbäume notwendig)
|
|
// MöglicheGeldQuelle wird im Verkaufsstrang als ZielKasse benutzt
|
|
möglicheGeldQuellen.Clear();
|
|
geldQuellenIndex = 0;
|
|
aktuellerHafen.überprüfeAktuelleFilialeVorhanden(Globals.AktuellerSpieler);
|
|
|
|
if (aktuellerHafen.filialeVorhanden)
|
|
{
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
möglicheGeldQuellen.Add("LAGER");
|
|
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
//Wenn Schiffe vorhanden -> Schiff ist mögliche Quelle
|
|
foreach (Schiff Boot in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (Boot.COMMANDEUR == Globals.AktuellerSpieler)
|
|
{
|
|
//Mögliche Geldziele sind alle Schiffe des Spielers
|
|
möglicheGeldQuellen.Add(Boot.NAME);
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
private Entity setzeGeldQuelle()
|
|
{
|
|
|
|
if (möglicheGeldQuellen[geldQuellenIndex] == "LAGER")
|
|
{
|
|
foreach (Filiale f in aktuellerHafen.vorhandeneFilialen)
|
|
{
|
|
if (f.BESITZER == Globals.AktuellerSpieler)
|
|
{
|
|
return f;
|
|
}
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
foreach (Schiff s in aktuellerHafen.angedockteSchiffe)
|
|
{
|
|
if (s.NAME == möglicheGeldQuellen[geldQuellenIndex])
|
|
{
|
|
return s;
|
|
}
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
private class EventSorter : IComparer<WeltEvent>
|
|
{
|
|
//Sortier Comparer -> Sortiert alle Events nach Datum (muss immer aufgerfen werden wenn datum abgefragt wird)
|
|
public int Compare(WeltEvent e1, WeltEvent e2)
|
|
{
|
|
if (e1.EventDate.CompareTo(e2.EventDate) == 0)
|
|
{
|
|
//Wenn beide Events gleich dann nach Spieler Sortieren
|
|
switch (e1.BetroffenerSpielerName)
|
|
{
|
|
case "System":
|
|
switch (e2.BetroffenerSpielerName)
|
|
{
|
|
case "System": return 0;
|
|
default: return -1;
|
|
}
|
|
case "Spieler1":
|
|
switch (e2.BetroffenerSpielerName)
|
|
{
|
|
case "System": return 1;
|
|
case "Spieler1": return 0;
|
|
default: return -1;
|
|
}
|
|
|
|
case "Spieler2":
|
|
switch (e2.BetroffenerSpielerName)
|
|
{
|
|
case "System": return 1;
|
|
case "Spieler1": return 1;
|
|
case "Spieler2": return 0;
|
|
default: return -1;
|
|
}
|
|
case "Spieler3":
|
|
switch (e2.BetroffenerSpielerName)
|
|
{
|
|
case "Spieler3": return 0;
|
|
case "Spieler4": return -1;
|
|
default: return 1;
|
|
}
|
|
case "Spieler4":
|
|
switch (e2.BetroffenerSpielerName)
|
|
{
|
|
case "Spieler4": return 0;
|
|
default: return 1;
|
|
}
|
|
default: return 0;
|
|
}
|
|
}
|
|
else
|
|
return e1.EventDate.CompareTo(e2.EventDate);
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|