Esempio n. 1
0
    public void SwitchItem(Vector2 mousepos, EntityType et, string asset, int boundingy = 0)
    {
        //check selected entity
        Vector2      vpos   = GridPosition(mousepos + new Vector2(0, cellHeight / 2));
        Point        pos    = new Point((int)vpos.X, (int)vpos.Y);
        EditorEntity entity = Get(pos.X, pos.Y) as EditorEntity;

        //replace entity
        if (entity != null)
        {
            Remove(entity.Id, pos.X, pos.Y);
            EditorEntity newentity = new EditorEntity(pos, asset, boundingy, et);
            if (et == EntityType.Enemy)
            {
                //get additional information from the mouse
                EditorMouse mouse = GameWorld.GetObject("mouse") as EditorMouse;
                newentity.EnemyType = mouse.EnemyType;
            }
            else if (et == EntityType.AnimatedItem || et == EntityType.SpriteItem)
            {
                //get additional information from the mouse
                EditorMouse mouse = GameWorld.GetObject("mouse") as EditorMouse;
                newentity.ItemType = mouse.ItemType;
            }
            Add(newentity, pos.X, pos.Y);
            newentity.InitializeTile();
        }
    }
Esempio n. 2
0
 private MapEditor()
 {
     EditorMouse = new EditorMouse(this);
     Camera      = new Camera {
         Rotation = 0,
         Zoom     = 1,
     };
     SelectedObjects = new List <LevelGeometry>();
     CreateBlankMap();
 }
Esempio n. 3
0
 public override void HandleInput(InputHelper inputHelper)
 {
     //give information to the mouse
     base.HandleInput(inputHelper);
     if (pressed)
     {
         EditorMouse mouse = GameWorld.GetObject("mouse") as EditorMouse;
         mouse.Asset       = asset;
         mouse.TileType    = tiletype;
         mouse.TextureType = texturetype;
         mouse.TileObject  = tileobject;
         mouse.Tile        = true;
     }
 }
Esempio n. 4
0
        public void Update(float delta)
        {
            Camera.Zoom = Util_Lerp(Camera.Zoom, cameraZoomLerp, 0.5f);

            var worldSpaceMouse     = Camera.ScreenToWorldCoordinates(MousePosition);
            var lastWorldSpaceMouse = Camera.ScreenToWorldCoordinates(LastMousePosition);

            if (draggingElement)
            {
                foreach (LevelGeometry geom in SelectedObjects)
                {
                    geom.Position += worldSpaceMouse - lastWorldSpaceMouse;
                }
            }

            KeyboardControls();
            EditorMouse.Update(delta);
        }
Esempio n. 5
0
 public override void HandleInput(InputHelper inputHelper)
 {
     base.HandleInput(inputHelper);
     if (pressed)
     {
         EditorMouse mouse = GameWorld.GetObject("mouse") as EditorMouse;
         mouse.Asset           = asset;
         mouse.EntityBoundingy = boundingy;
         mouse.EntityType      = entitytype;
         mouse.Item            = true;
         if (entitytype == EntityType.Enemy)
         {
             mouse.EnemyType = enemytype;
         }
         else if (entitytype == EntityType.AnimatedItem || entitytype == EntityType.SpriteItem)
         {
             mouse.ItemType = itemtype;
         }
     }
 }
Esempio n. 6
0
 void GameControl_MouseDown(object sender, MouseEventArgs e)
 {
     EditorMouse.UpdateState(e.X, e.Y, (e.Button == System.Windows.Forms.MouseButtons.Left), (e.Button == System.Windows.Forms.MouseButtons.Middle), (e.Button == System.Windows.Forms.MouseButtons.Right));
 }