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(); } }
private MapEditor() { EditorMouse = new EditorMouse(this); Camera = new Camera { Rotation = 0, Zoom = 1, }; SelectedObjects = new List <LevelGeometry>(); CreateBlankMap(); }
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; } }
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); }
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; } } }
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)); }