private void LoadEnemydatenbank() { int Zeiger = 0; int Animation = 0; Enemy TempEnemy = new Enemy(); if (File.Exists(@"Enemys.xml")) { XmlReader reader = XmlReader.Create(@"Enemys.xml"); while (reader.Read()) { switch (reader.NodeType) { case XmlNodeType.Element: switch (reader.LocalName) { case "NewEnemy": TempEnemy = new Enemy(); AddEnemy(TempEnemy); Animation = 0; break; case "Typ": Zeiger = 1; break; //case "TexturX": Zeiger = 2; break; //case "TexturY": Zeiger = 3; break; case "NewAnimation": Animation++; break; case "TexturName": Zeiger = 4; break; case "Spalten": Zeiger = 5; break; case "Animationsgeschwindigkeit": Zeiger = 6; break; case "Wiederholen": Zeiger = 7; break; default: Zeiger = 0; break; } break; case XmlNodeType.Text: switch (Zeiger) { case 1: TempEnemy.Typ = (Enemytype)Enum.Parse(typeof(Enemytype), reader.Value); break; //case 2: TempEnemy.Texturmaße.X = Convert.ToInt32(reader.Value); break; //case 3: TempEnemy.Texturmaße.Y = Convert.ToInt32(reader.Value); break; case 4: TempEnemy.Texturname[Animation - 1] = reader.Value; TempEnemy.Textur[Animation - 1] = Content.Load<Texture2D>(@"Enemys\" + TempEnemy.Typ.ToString() + @"\" + reader.Value); break; case 5: TempEnemy.Spalten[Animation - 1] = Convert.ToInt32(reader.Value); break; case 6: TempEnemy.AniGeschwindigkeit[Animation - 1] = Convert.ToInt32(reader.Value); break; case 7: TempEnemy.Wiederholen[Animation - 1] = Convert.ToBoolean(reader.Value); break; default: break; } break; case XmlNodeType.EndElement: switch (reader.LocalName) { case "NewEnemy": TempEnemy.Texturmaße.X = TempEnemy.Textur[0].Width / (TempEnemy.Spalten[0] + 1); TempEnemy.Texturmaße.Y = TempEnemy.Textur[0].Height / 2; break; } break; } } } }
public void LoadEnemys(string filename) { int Zeiger = 0; Enemys.Clear(); Enemy TempEnemy = new Enemy(); XmlReader reader = XmlReader.Create(filename); while (reader.Read()) { switch (reader.NodeType) { case XmlNodeType.Element: switch (reader.LocalName) { case "NeuerGegner": TempEnemy = new Enemy(); break; case "PositionX": Zeiger = 1; break; case "PositionY": Zeiger = 2; break; case "Typ": Zeiger = 3; break; case "Skalierung": Zeiger = 4; break; case "Blickrichtung": Zeiger = 5; break; default: Zeiger = 0; break; } break; case XmlNodeType.Text: switch (Zeiger) { case 1: TempEnemy.PositionCurrent = new Vector2(Convert.ToInt32(reader.Value), 0); break; case 2: TempEnemy.PositionCurrent = new Vector2(TempEnemy.PositionCurrent.X, Convert.ToInt32(reader.Value)); break; case 3: TempEnemy.Typ = (Enemytype)Enum.Parse(typeof(Enemytype), reader.Value); break; case 4: TempEnemy.Skalierung = 0f + (Convert.ToInt32(reader.Value) / 100f); break; case 5: TempEnemy.Blickrichtung = (Richtung)Enum.Parse(typeof(Richtung), reader.Value); AddEnemy(TempEnemy.Typ, TempEnemy.PositionCurrent, TempEnemy.Blickrichtung, TempEnemy.Skalierung); break; default: break; } break; } } reader.Close(); }
private void AddEnemy(Enemy enemy) { Enemys.Add(enemy); }
public void RemoveEnemy(Enemy enemy) { if (enemy != null) //Fehlgeschlagene Auswahl via PickEnemy abfangen { Delete.Add(enemy); } }
//Inputmanager setzt Vorschau zurück und prüft anschließend auf neue Vorschau public void VorschauRuecksetzen() { VorschauObjektvariation = null; VorschauGegner = null; VorschauItem = null; }
public void ChangeTool(Editortool tool) { if (Tool != tool) { Tool = tool; switch (tool) { case Editortool.Editoreinstellungen: Windowmanager.AddWindow(Windowtype.Editoreinstellungen); break; case Editortool.Neu: Windowmanager.AddWindow(Windowtype.Neu); break; case Editortool.Laden: Windowmanager.AddWindow(Windowtype.Laden); LäuferY = 40; LäuferLinksklick = 310; foreach (Level level in Levelmanager.Levels) { Windowmanager.GetWindowOfType(Windowtype.Laden).AddButton(new Button(new Rectangle(10, LäuferY, 120, 15), Contents.Meiryo8, level.Name, false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Leveleinstellungen: Windowmanager.AddWindow(Windowtype.Leveleinstellungen); break; case Editortool.Hintergruende: AuswahlHintergrund = null; Windowmanager.AddWindow(Windowtype.Hintergruende); Windowmanager.GetWindowOfType(Windowtype.Hintergruende).Feld = Windowmanager.GetWindowPosition(Windowtype.Hintergrund); LäuferY = 40; LäuferLinksklick = 610; foreach (Background Background in Backgroundmanager.Backgrounds) { if (Background.Textur != null) Windowmanager.GetWindowOfType(Windowtype.Hintergruende).AddButton(new Button(new Rectangle(10, LäuferY, 120, 15), Contents.Meiryo8, Background.Name.ToString() + " " + Background.Position.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); else Windowmanager.GetWindowOfType(Windowtype.Hintergruende).AddButton(new Button(new Rectangle(10, LäuferY, 200, 15), Contents.Meiryo8, "Leerer Hintergrund " + Background.Position.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Hintergrund: Windowmanager.AddWindow(Windowtype.Hintergrund); Windowmanager.GetWindowOfType(Windowtype.Hintergrund).Feld = Windowmanager.GetWindowPosition(Windowtype.Hintergruende); break; case Editortool.Hintergrundtextur: Windowmanager.AddWindow(Windowtype.Hintergrundtextur); Windowmanager.GetWindowOfType(Windowtype.Hintergrundtextur).Feld = Windowmanager.GetWindowPosition(Windowtype.Hintergrund); LäuferY = 40; LäuferLinksklick = 410; foreach (Background background in Backgrounddatabase.Backgrounds) { Windowmanager.GetWindowOfType(Windowtype.Hintergrundtextur).AddButton(new Button(new Rectangle(10, LäuferY, 200, 15), Contents.Meiryo8, background.Name, false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Objektkategorie: AuswahlObjektkategorie = null; AuswahlObjektvariation = null; Windowmanager.RemoveWindow(Windowtype.Event); Windowmanager.AddWindow(Windowtype.Objektkategorie); Windowmanager.GetWindowOfType(Windowtype.Objektkategorie).Feld = Windowmanager.GetWindowPosition(Windowtype.Objektvariante); LäuferY = 40; LäuferLinksklick = 810; foreach (ObjectType Objekttyp in Objectdatabase.Objektdaten) { Windowmanager.GetWindowOfType(Windowtype.Objektkategorie).AddButton(new Button(new Rectangle(10, LäuferY, 200, 15), Contents.Meiryo8, Objekttyp.ObjectClass.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Objektvariante: Windowmanager.AddWindow(Windowtype.Objektvariante); Windowmanager.GetWindowOfType(Windowtype.Objektvariante).Feld = Windowmanager.GetWindowPosition(Windowtype.Objektkategorie); LäuferY = 40; LäuferLinksklick = 910; foreach (Objectvariation Variation in AuswahlObjektkategorie.Variante) { Windowmanager.GetWindowOfType(Windowtype.Objektvariante).AddButton(new Button(new Rectangle(10, LäuferY, 200, 15), Contents.Meiryo8, Variation.Name, false, Color.Blue, LäuferLinksklick, 0, LäuferLinksklick + 40)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Events: AnzeigenEvents = true; AuswahlEvent = null; Windowmanager.RemoveWindow(Windowtype.Ausloeser); Windowmanager.RemoveWindow(Windowtype.Bedingung); Windowmanager.RemoveWindow(Windowtype.Aktion); Windowmanager.AddWindow(Windowtype.Events); Windowmanager.GetWindowOfType(Windowtype.Events).Feld = Windowmanager.GetWindowPosition(Windowtype.Event); LäuferY = 40; LäuferLinksklick = 1010; foreach (Event Event in Eventmanager.Events) { Windowmanager.GetWindowOfType(Windowtype.Events).AddButton(new Button(new Rectangle(10, LäuferY, 200, 15), Contents.Meiryo8, Event.Name, false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Event: Windowmanager.RemoveWindow(Windowtype.Event); Windowmanager.RemoveWindow(Windowtype.Ausloeser); Windowmanager.RemoveWindow(Windowtype.Bedingung); Windowmanager.RemoveWindow(Windowtype.Aktion); Windowmanager.AddWindow(Windowtype.Event); Windowmanager.GetWindowOfType(Windowtype.Event).Feld = Windowmanager.GetWindowPosition(Windowtype.Events); LäuferY = 40; LäuferLinksklick = 1100; foreach (Eventtrigger trigger in AuswahlEvent.Triggers) { Windowmanager.GetWindowOfType(Windowtype.Event).AddButton(new Button(new Rectangle(236, LäuferY, 200, 15), Contents.Meiryo8, trigger.Type.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } LäuferY = 40; LäuferLinksklick = 1125; foreach (Eventcondition condition in AuswahlEvent.Conditions) { Windowmanager.GetWindowOfType(Windowtype.Event).AddButton(new Button(new Rectangle(462, LäuferY, 200, 15), Contents.Meiryo8, condition.Type.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } LäuferY = 40; LäuferLinksklick = 1150; foreach (Eventaction action in AuswahlEvent.Actions) { Windowmanager.GetWindowOfType(Windowtype.Event).AddButton(new Button(new Rectangle(688, LäuferY, 200, 15), Contents.Meiryo8, action.Type.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Ausloeser: AuswahlCondition = null; AuswahlAction = null; Windowmanager.RemoveWindow(Windowtype.Ausloeser); Windowmanager.AddWindow(Windowtype.Ausloeser); LäuferY = 70; switch (AuswahlTrigger.Type) { case Triggertype.Position: Windowmanager.GetWindowOfType(Windowtype.Ausloeser).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Position X-Achse", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Ausloeser, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 23, 3016, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 5), new Vector2(10, LäuferY)); LäuferY += 15; break; case Triggertype.Depression: Windowmanager.GetWindowOfType(Windowtype.Ausloeser).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Depression %", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Ausloeser, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 24, 3017, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 2), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Ausloeser).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Ausrichtung", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Ausloeser, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 25, 3018, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; case Triggertype.Schalter: Windowmanager.GetWindowOfType(Windowtype.Ausloeser).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Schalter", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Ausloeser, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 55, 3016, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 5), new Vector2(10, LäuferY)); LäuferY += 15; break; case Triggertype.Intervall: Windowmanager.GetWindowOfType(Windowtype.Ausloeser).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Frameintervall", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Ausloeser, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 24, 3017, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 5), new Vector2(10, LäuferY)); LäuferY += 15; break; case Triggertype.Gegner: Windowmanager.GetWindowOfType(Windowtype.Ausloeser).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Position", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Ausloeser, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 67, 3016, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 5), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Ausloeser).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Gegnertyp", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Ausloeser, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 66, 3050, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 5), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Ausloeser).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Status", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Ausloeser, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 68, 3051, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 5), new Vector2(10, LäuferY)); LäuferY += 15; break; } break; case Editortool.Bedingung: AuswahlTrigger = null; AuswahlAction = null; Windowmanager.RemoveWindow(Windowtype.Bedingung); Windowmanager.AddWindow(Windowtype.Bedingung); LäuferY = 70; switch (AuswahlCondition.Type) { case Conditiontype.Position: Windowmanager.GetWindowOfType(Windowtype.Bedingung).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Ausrichtung", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Bedingung, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 41, 3021, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Bedingung).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Position X-Achse", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Bedingung, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 26, 3016, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 5), new Vector2(10, LäuferY)); LäuferY += 15; break; case Conditiontype.Depression: Windowmanager.GetWindowOfType(Windowtype.Bedingung).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Depression %", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Bedingung, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 27, 3020, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 2), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Bedingung).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Ausrichtung", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Bedingung, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 28, 3021, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; case Conditiontype.Schalter: Windowmanager.GetWindowOfType(Windowtype.Bedingung).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Schalter", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Bedingung, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 58, 3016, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Bedingung).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Zustand", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Bedingung, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 59, 3021, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 5), new Vector2(10, LäuferY)); LäuferY += 15; break; } break; case Editortool.Aktion: AuswahlTrigger = null; AuswahlCondition = null; Windowmanager.RemoveWindow(Windowtype.Aktion); Windowmanager.AddWindow(Windowtype.Aktion); LäuferY = 70; switch (AuswahlAction.Type) { case Actiontype.Animation: break; case Actiontype.Depression: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Ausrichtung", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 32, 3023, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Depression %", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 33, 3024, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 2), new Vector2(10, LäuferY)); LäuferY += 15; break; case Actiontype.Effekt: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Effekttyp", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 34, 3025, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Aktion", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 35, 3026, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; case Actiontype.Gegneraktion: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Gegneraktion", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 38, 3019, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Gegnertyp", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 36, 3027, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Position", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 37, 3016, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; switch (AuswahlAction.Gegneraktion) { case Gegneraktionstyp.Erstellen: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Blickrichtung", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 39, 3028, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; case Gegneraktionstyp.Entfernen: break; case Gegneraktionstyp.Status: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Gegnerstatus", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 40, 3029, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; } break; case Actiontype.Hintergrund: break; case Actiontype.Objektaktion: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Objektaktion", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 60, 3044, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Position", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 37, 3016, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Layer", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 62, 3046, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Objekttyp", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 61, 3047, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; switch (AuswahlAction.Objektaktion) { case Objektaktionstyp.Erstellen: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Variante", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 64, 3045, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Skalierung", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 63, 0/*3048*/, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 3), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Statisch", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 70, 3053, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 3), new Vector2(10, LäuferY)); LäuferY += 15; break; case Objektaktionstyp.Entfernen: break; case Objektaktionstyp.Austauschen: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Objektvariation wechseln zu:", Contents.Meiryo8, Color.White, false)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Variante", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 64, 3045, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; } Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Objektebene", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(95, LäuferY + 1, 115, 14), WindowElementType.Eingabezelle, 65, 3049, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; case Actiontype.Levelwechsel: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Kartenname", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 42, 3030, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; case Actiontype.Klettern: Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Oberkante", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 48, 3034, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; Windowmanager.GetWindowOfType(Windowtype.Aktion).Elemente.Add(new Windowelement(new Vector2(10, LäuferY), WindowElementType.Text, "Unterkante", Contents.Meiryo8, Color.White, false)); Windowmanager.AddTextCell(Windowtype.Aktion, new Windowelement(new Rectangle(115, LäuferY + 1, 85, 14), WindowElementType.Eingabezelle, 49, 3035, Contents.Block, Contents.Meiryo8, Color.Blue, Color.White, true, 1), new Vector2(10, LäuferY)); LäuferY += 15; break; } break; case Editortool.Typ: Windowmanager.AddWindow(Windowtype.Typ); LäuferY = 40; LäuferLinksklick = 1510; if (AuswahlTrigger != null) { Windowmanager.GetWindowOfType(Windowtype.Typ).Feld = Windowmanager.GetWindowPosition(Windowtype.Ausloeser); Windowmanager.RemoveWindow(Windowtype.Ausloeser); foreach (Triggertype type in Enum.GetValues(typeof(Triggertype))) { Windowmanager.GetWindowOfType(Windowtype.Typ).AddButton(new Button(new Rectangle(10, LäuferY, 120, 15), Contents.Meiryo8, type.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } } else if (AuswahlCondition != null) { Windowmanager.GetWindowOfType(Windowtype.Typ).Feld = Windowmanager.GetWindowPosition(Windowtype.Bedingung); Windowmanager.RemoveWindow(Windowtype.Bedingung); foreach (Conditiontype type in Enum.GetValues(typeof(Conditiontype))) { Windowmanager.GetWindowOfType(Windowtype.Typ).AddButton(new Button(new Rectangle(10, LäuferY, 120, 15), Contents.Meiryo8, type.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } } else if (AuswahlAction != null) { Windowmanager.GetWindowOfType(Windowtype.Typ).Feld = Windowmanager.GetWindowPosition(Windowtype.Aktion); Windowmanager.RemoveWindow(Windowtype.Aktion); foreach (Actiontype type in Enum.GetValues(typeof(Actiontype))) { Windowmanager.GetWindowOfType(Windowtype.Typ).AddButton(new Button(new Rectangle(10, LäuferY, 120, 15), Contents.Meiryo8, type.ToString(), false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } } break; case Editortool.Gegner: AuswahlGegner = null; Windowmanager.AddWindow(Windowtype.Gegner); LäuferY = 40; LäuferLinksklick = 1610; foreach (Enemy enemy in Enemymanager.Enemydatabase.Enemys) { Windowmanager.GetWindowOfType(Windowtype.Gegner).AddButton(new Button(new Rectangle(10, LäuferY, 120, 15), Contents.Meiryo8, enemy.Typ.ToString(), false, Color.Blue, LäuferLinksklick, 0, LäuferLinksklick + 40)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Items: AuswahlItem = null; Windowmanager.AddWindow(Windowtype.Items); LäuferY = 40; LäuferLinksklick = 1710; foreach (Item item in Itemmanager.Datenbank) { Windowmanager.GetWindowOfType(Windowtype.Items).AddButton(new Button(new Rectangle(10, LäuferY, 120, 15), Contents.Meiryo8, item.Name, false, Color.Blue, LäuferLinksklick, 0, LäuferLinksklick + 40)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Schalter: AuswahlLever = null; Windowmanager.RemoveWindow(Windowtype.Lever); Windowmanager.AddWindow(Windowtype.Levers); LäuferY = 40; LäuferLinksklick = 1810; foreach (Lever lever in Levermanager.Levers) { Windowmanager.GetWindowOfType(Windowtype.Levers).AddButton(new Button(new Rectangle(10, LäuferY, 120, 15), Contents.Meiryo8, lever.Name, false, Color.Blue, LäuferLinksklick, 0, 0)); LäuferY += 15; LäuferLinksklick++; } break; case Editortool.Schaltereinstellungen: Windowmanager.RemoveWindow(Windowtype.Levers); Windowmanager.AddWindow(Windowtype.Lever); LäuferY = 70; break; } } }