Exemplo n.º 1
0
 public Object(Objectdatabase objektdatenbank, Animationsmanager animationsmanager, ObjectClass typ, int variante , Vector2 position, float skalierung, int layer, Objektebene objektebene, bool statisch)
 {
     this.Statisch = statisch;
     this.MaxSpeed = new Vector2(6, 12);
     this.Typ = typ;
     this.PositionCurrent = position;
     this.Skalierung = skalierung;
     this.Layer = layer;
     this.Variante = variante;
     this.Objektvariante = objektdatenbank.Auslesen(Typ, Variante);
     if (this.Objektvariante == null) return;
     this.Objektebene = objektebene;
     this.BearbeitungsID = (int)PositionCurrent.Y + (int)Objektvariante.Bearbeitungsverschiebung.Y + (Layer * 1000);
     if (Objektvariante.Animiert == true)
     {
         Animation = new Animation(Objektvariante.Textur, Objektvariante.Wiederholen, Objektvariante.Spalten, Objektvariante.Texturausschnitt, skalierung, Objektvariante.Geschwindigkeit);
         animationsmanager.AddAnimation(Animation);
     }
 }
Exemplo n.º 2
0
 //Inputmanager setzt Vorschau zurück und prüft anschließend auf neue Vorschau
 public void VorschauRuecksetzen()
 {
     VorschauObjektvariation = null;
     VorschauGegner = null;
     VorschauItem = null;
 }
Exemplo n.º 3
0
        private void LoadObjektdatenbank()
        {
            int Zeiger = 0;
            ObjectType TempObjekttyp = new ObjectType();
            Objectvariation TempObjektvariante = new Objectvariation(null);
            Objectcollision TempCollision = new Objectcollision(new Rectangle(0,0,0,0));

            if (File.Exists(@"Objects.xml"))
            {
                XmlReader reader = XmlReader.Create(@"Objects.xml");
                while (reader.Read())
                {
                    switch (reader.NodeType)
                    {
                        case XmlNodeType.Element:
                            switch (reader.LocalName)
                            {
                                case "NeuesObjekt": TempObjekttyp = new ObjectType(); Objektdaten.Add(TempObjekttyp); break;
                                case "Typ": Zeiger = 1; break;
                                case "Texturpfad": Zeiger = 2; break;
                                case "NeueVariation": TempObjektvariante = new Objectvariation(TempObjekttyp.Textur); TempObjekttyp.Variante.Add(TempObjektvariante); break;
                                case "Name": Zeiger = 3; break;
                                case "BearbeitungsverschiebungX": Zeiger = 4; break;
                                case "BearbeitungsverschiebungY": Zeiger = 5; break;
                                case "TexturausschnittX": Zeiger = 6; break;
                                case "TexturausschnittY": Zeiger = 7; break;
                                case "TexturausschnittBreite": Zeiger = 8; break;
                                case "TexturausschnittHöhe": Zeiger = 9; break;
                                case "Zerstörbar": Zeiger = 10; break;
                                case "Animiert": Zeiger = 11; break;
                                case "Spalten": Zeiger = 12; break;
                                case "Geschwindigkeit": Zeiger = 13; break;
                                case "Wiederholen": Zeiger = 14; break;
                                case "NeueKollision": TempCollision = new Objectcollision(new Rectangle(0,0,0,0)); break;
                                case "PosX": Zeiger = 15; break;
                                case "PosY": Zeiger = 16; break;
                                case "Width": Zeiger = 17; break;
                                case "Height": Zeiger = 18; break;
                                default: Zeiger = 0; break;
                            }
                            break;
                        case XmlNodeType.Text:
                            switch (Zeiger)
                            {
                                case 1: TempObjekttyp.ObjectClass = (ObjectClass)Enum.Parse(typeof(ObjectClass), reader.Value); break;
                                case 2: TempObjekttyp.Texturpfad = reader.Value; TempObjekttyp.Textur = Content.Load<Texture2D>(@"Objects\" + reader.Value); break;
                                case 3: TempObjektvariante.Name = reader.Value; break;
                                case 4: TempObjektvariante.Bearbeitungsverschiebung = new Vector2(Convert.ToInt32(reader.Value), 0); break;
                                case 5: TempObjektvariante.Bearbeitungsverschiebung = new Vector2(TempObjektvariante.Bearbeitungsverschiebung.X, Convert.ToInt32(reader.Value)); break;
                                case 6: TempObjektvariante.Texturausschnitt = new Rectangle(Convert.ToInt32(reader.Value), 0, 0, 0); break;
                                case 7: TempObjektvariante.Texturausschnitt = new Rectangle(TempObjektvariante.Texturausschnitt.X, Convert.ToInt32(reader.Value), 0, 0); break;
                                case 8: TempObjektvariante.Texturausschnitt = new Rectangle(TempObjektvariante.Texturausschnitt.X, TempObjektvariante.Texturausschnitt.Y, Convert.ToInt32(reader.Value), 0); break;
                                case 9: TempObjektvariante.Texturausschnitt = new Rectangle(TempObjektvariante.Texturausschnitt.X, TempObjektvariante.Texturausschnitt.Y, TempObjektvariante.Texturausschnitt.Width, Convert.ToInt32(reader.Value)); break;
                                case 10: TempObjektvariante.Zerstörbar = Convert.ToBoolean(reader.Value); break;
                                case 11: TempObjektvariante.Animiert = Convert.ToBoolean(reader.Value); break;
                                case 12: TempObjektvariante.Spalten = Convert.ToInt32(reader.Value); break;
                                case 13: TempObjektvariante.Geschwindigkeit = Convert.ToInt32(reader.Value); break;
                                case 14: TempObjektvariante.Wiederholen = Convert.ToBoolean(reader.Value); break;
                                case 15: TempCollision.Zone.X = Convert.ToInt32(reader.Value); break;
                                case 16: TempCollision.Zone.Y = Convert.ToInt32(reader.Value); break;
                                case 17: TempCollision.Zone.Width = Convert.ToInt32(reader.Value); break;
                                case 18: TempCollision.Zone.Height = Convert.ToInt32(reader.Value); break;
                            }
                            break;
                        case XmlNodeType.EndElement:
                            switch (reader.LocalName)
                            {
                                case "NeueKollision": TempObjektvariante.Kollision.Add(TempCollision); break;
                            }
                            break;
                    }
                }
                reader.Close();
            }
        }
Exemplo n.º 4
0
        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;
                }
            }
        }