/// <summary> /// Initialize /// </summary> private void Start() { m_winTile = FindObjectOfType <WinTile>(); if (m_winTile == null) { Debug.LogError($"{name} could not find a reference to the Win Tile"); } }
public override void Update(GameTime time) { if (InputHelper.Instance.IsLeftMousePressed()) { if (!dragging) { dragging = true; winTileSize.X = (int)InputHelper.Instance.MousePos().X; winTileSize.Y = (int)InputHelper.Instance.MousePos().Y; winTileSize.Width = (int)Math.Abs(InputHelper.Instance.MousePos().X - winTileSize.X); winTileSize.Height = (int)Math.Abs(InputHelper.Instance.MousePos().Y - winTileSize.Y); } } else if (InputHelper.Instance.LeftMouseDown()) { winTileSize.Width = (int)Math.Abs(InputHelper.Instance.MousePos().X - winTileSize.X); winTileSize.Height = (int)Math.Abs(InputHelper.Instance.MousePos().Y - winTileSize.Y); } else if (InputHelper.Instance.IsLeftMouseReleased() && dragging) { WinTile win = new WinTile(winTileSize); tiles.Add(win); dragging = false; } else if (InputHelper.Instance.IsRightMousePressed() && !dragging) { for (int i = 0; i < tiles.Count; i++) { WinTile o = tiles[i]; if (o.Boundingbox.Contains(InputHelper.Instance.MousePos().toPoint())) { tiles.Remove(o); } } } // check for left mouse up if (!InputHelper.Instance.LeftMouseDown()) { dragging = false; } if (dragging) { blockLayerChange = true; winTileSize = GetInvertedRectangle(winTileSize); } else { blockLayerChange = false; } base.Update(time); }