public override void UpdateDefault() { rotation = GetCurrentRotation(); if (Mouse.GetInstance().GetStateLMB() == Mouse.StateEnum.Click) { posGridStart = instanceMouse.GetPosGrid(); } else if (Mouse.GetInstance().GetStateLMB() == Mouse.StateEnum.Hold) { roomTypeCurrent = Input.GetKey(KeyCode.Space) ? ShipGrid.Tile.RoomType.Greenhouse : ShipGrid.Tile.RoomType.Corridor; posGridEndOld = posGridEnd; posGridEnd = instanceMouse.GetPosGrid(); if (posGridEnd != posGridEndOld) { ClearDraggedOutTiles(); DrawDraggedOutTiles(isTemporary: true); } } else if (Mouse.GetInstance().GetStateLMB() == Mouse.StateEnum.Release) { ClearDraggedOutTiles(); DrawDraggedOutTiles(isTemporary: false); } }
public Int2 GetAssetForTile(ShipGrid.Tile tile, Sorting sorting) { bool hasTemporarySettings = tile.HasTemporarySettings(); ShipGrid.Tile.RoomType roomType = tile.GetRoomType(shouldGetTemporary: hasTemporarySettings); TileAssetBlock tileAssetBlock = GetTileAssetBlockForRoomType(roomType); Int2 posTileAssetBlock = tile.GetPosTileAssetBlock(shouldGetTemporary: hasTemporarySettings); return(tileAssetBlock.GetPosTexture(posTileAssetBlock, tile.GetBlockType(shouldGetTemporary: hasTemporarySettings), sorting)); }
public TileAssetBlock GetTileAssetBlockForRoomType(ShipGrid.Tile.RoomType roomType) { switch (roomType) { case ShipGrid.Tile.RoomType.None: return(None); case ShipGrid.Tile.RoomType.Corridor: return(Corridor); case ShipGrid.Tile.RoomType.Greenhouse: return(Greenhouse); default: Debug.LogError(roomType + " hasn't been properly implemented yet!"); return(null); } }