public void DoorCreateRoom(Vector2 roomPosition, DoorsDirection requireDirection) { roomsToCreates.Add(new RoomsToCreate(roomPosition, requireDirection)); if (createRoomCoroutine == null) { createRoomCoroutine = StartCoroutine(CreateRoomsIE()); } }
//Check if the room exists and update private bool CheckRoom(DoorsDirection direction, Vector2 position) { if (direction == DoorsDirection.front && squares.ContainsKey(position + Vector2.up)) { Square square; squares.TryGetValue(position + Vector2.up, out square); square.AddDoorDirection(DoorsDirection.back); return(true); } if (direction == DoorsDirection.back && squares.ContainsKey(position + Vector2.down)) { Square square; squares.TryGetValue(position + Vector2.down, out square); square.AddDoorDirection(DoorsDirection.front); return(true); } if (direction == DoorsDirection.left && squares.ContainsKey(position + Vector2.left)) { Square square; squares.TryGetValue(position + Vector2.left, out square); square.AddDoorDirection(DoorsDirection.right); return(true); } if (direction == DoorsDirection.right && squares.ContainsKey(position + Vector2.right)) { Square square; squares.TryGetValue(position + Vector2.right, out square); square.AddDoorDirection(DoorsDirection.left); return(true); } return(false); }
public RoomsToCreate(Vector2 position, DoorsDirection requireDirection) { this.position = position; this.requireDirection = requireDirection; }