protected virtual void GenerateLandingRoom(Board board, Vector2Int stairway, Verticality verticality) { landing = new Landing(); rooms.Add(landing); landing.SetupRoom(stairway, verticality, board.startingDoorwayDirection, identifier); landing.TestRoomValidity(board); }
public virtual void ChangeStory(Verticality verticality) { print(verticality); if (verticality == Verticality.Up) { storyLocation++; } else { storyLocation--; } UpdateLayering(); SortIntoParent(); }
public virtual void SetupRoom(Vector2Int stairway, Verticality verticality, Direction disabledDoorDirection, int story) { this.story = story; SetRoomDimensions(); this.disabledDoorDirection = disabledDoorDirection; x = Random.Range(stairway.x - width + stairwayBreadth, stairway.x - stairwayBreadth); y = Random.Range(stairway.y - height + stairwayBreadth, stairway.y - stairwayBreadth); if (verticality == Verticality.Down) { stairwayUp = stairway; stairwayDown = new Vector2Int(Random.Range(x, x + width - stairwayBreadth), Random.Range(y, y + height) - stairwayBreadth); } else { stairwayDown = stairway; stairwayUp = new Vector2Int(Random.Range(x, x + width - stairwayBreadth), Random.Range(y, y + height) - stairwayBreadth); } }
public virtual void CreateRoomsAndCorridors(Board board, Vector2Int stairway, Verticality verticality) { GenerateLandingRoom(board, stairway, verticality); GenerateRemainingRooms(board); }
public override void ChangeStory(Verticality verticality) { base.ChangeStory(verticality); print("Changing to story " + storyLocation); EventHub.PlayerChangeStoryBroadcast(this); }