public bool CanGo(MOVEMENTDIRECTION dir, int j, int i) { switch (dir) { case MOVEMENTDIRECTION.UP: return(rooms[j, i].transform.FindChild("door_top") != null); case MOVEMENTDIRECTION.DOWN: return(rooms[j, i].transform.FindChild("door_bottom") != null); case MOVEMENTDIRECTION.LEFT: return(rooms[j, i].transform.FindChild("door_left") != null); case MOVEMENTDIRECTION.RIGHT: return(rooms[j, i].transform.FindChild("door_right") != null); } Debug.LogError("Impossible direction"); return(false); }
void FixedUpdate() { if (RoomManager.Instance.Pause) { return; } //Player basic control if (Input.GetKey(KeyCode.UpArrow)) { transform.position += new Vector3(0, speed, 0); movementDirection = MOVEMENTDIRECTION.UP; } else if (Input.GetKey(KeyCode.DownArrow)) { transform.position += new Vector3(0, -speed, 0); movementDirection = MOVEMENTDIRECTION.DOWN; } else if (Input.GetKey(KeyCode.LeftArrow)) { transform.position += new Vector3(-speed, 0, 0); movementDirection = MOVEMENTDIRECTION.LEFT; } else if (Input.GetKey(KeyCode.RightArrow)) { transform.position += new Vector3(speed, 0, 0); movementDirection = MOVEMENTDIRECTION.RIGHT; } else { movementDirection = MOVEMENTDIRECTION.NONE; } if (movementDirection != MOVEMENTDIRECTION.NONE) { lookingTo = movementDirection; } }
void Start() { movementDirection = MOVEMENTDIRECTION.DOWN; lookingTo = MOVEMENTDIRECTION.DOWN; }
//Check if we can go to some direction from a room, in order to build the map public bool CanGo(MOVEMENTDIRECTION dir) { return(CanGo(dir, j_pos, i_pos)); }