//CopyConst
 public MapLayer(MapLayer MapLayer)
 {
     this._name = MapLayer._name;
     this._parallaxValueHorz = MapLayer._parallaxValueHorz;
     this._parallaxValueVert = MapLayer._parallaxValueVert;
     this._tilemap = MapLayer._tilemap;
 }
 public void MoveLayerUp(int IndexOfLayer)
 {
     //letzter Layer kann nicht hoch bewegt werden
     if (IndexOfLayer == _layers.Count - 1) { }
     else
     {
         //Wenn Index ist Base dann muss base neu berechnet werden
         if (IndexOfLayer == 0)
         {
             if (enableBaseLayerModification)
             {
                 MapLayer temp = new MapLayer(_layers[IndexOfLayer]);
                 _layers[IndexOfLayer] = _layers[IndexOfLayer + 1];
                 _layers[IndexOfLayer + 1] = temp;
                 RecalculateParallaxValues(0);
             }
         }
         //Sonst positionen vertauschen
         else
         {
             MapLayer temp = new MapLayer(_layers[IndexOfLayer]);
             _layers[IndexOfLayer] = _layers[IndexOfLayer + 1];
             _layers[IndexOfLayer + 1] = temp;
         }
     }
 }
 public void MoveLayerDown(int IndexOfLayer)
 {
     //0 kann nicht nach unten bewegt werden
     if (IndexOfLayer == 0) { }
     else
     {
         //wenn index 1 dann wird neuer base erzeugt
         if (IndexOfLayer == 1)
         {
             if (enableBaseLayerModification)
             {
                 MapLayer temp = new MapLayer(_layers[IndexOfLayer]);
                 _layers[IndexOfLayer] = _layers[IndexOfLayer - 1];
                 _layers[IndexOfLayer - 1] = temp;
                 RecalculateParallaxValues(0);
             }
         }
         //Sonst positionen vertauschen
         else
         {
             MapLayer temp = new MapLayer(_layers[IndexOfLayer]);
             _layers[IndexOfLayer] = _layers[IndexOfLayer - 1];
             _layers[IndexOfLayer - 1] = temp;
         }
     }
 }