private void HandleMouseInput() { OnMouseMove(); if (Input.GetMouseButtonDown(0)) { OnMouseDown(); } else if (Input.GetMouseButton(0) && currentTool == Tool.BRUSH && selectedObject == null) { shouldGenerateMesh = true; //get the mouse position in world coordinates Vector2 tilePosition = map.WorldToTilePosition(cam.ScreenToWorldPoint(Input.mousePosition)); //check if we are on the same tile as last time if (lastCoordinate == new Vector2((int)tilePosition.x, (int)tilePosition.y)) { return; } //give the current tile a new value moves.Push(map.GetAllTiles()); Paint(tilePosition, lastBrushValue); } else if (Input.GetMouseButtonUp(0)) { OnMouseUp(); } }