//Increments by amount ( can be negative ) to side public void IncrementDoor(Room r, Door.side s, int ammount) { //Which side is it on and Add to that amount switch (s) { case Door.side.LEFT: r.leftDoors += ammount; break; case Door.side.RIGHT: r.rightDoors += ammount; break; case Door.side.UP: r.upDoors += ammount; break; case Door.side.DOWN: r.downDoors += ammount; break; default: break; } }
IEnumerator WaitForLevelLoad(string currentDoor, string conenctedDoor) { yield return(new WaitForSecondsRealtime(0.1f)); GameObject[] doorways = GameObject.FindGameObjectsWithTag("Doorway"); yInteract.SetActive(false); foreach (GameObject door in doorways) { if (door.name == conenctedDoor + "_to_" + currentDoor) { Door.side testSide = door.GetComponent <DoorwayScript>().thisDoorSide; switch (testSide) { case Door.side.UP: transform.position = door.transform.position - (Vector3.up * 2); break; case Door.side.DOWN: transform.position = door.transform.position + (Vector3.up * 2); break; case Door.side.RIGHT: transform.position = door.transform.position - (Vector3.right * 2); break; case Door.side.LEFT: transform.position = door.transform.position + (Vector3.right * 2); break; default: break; } lastGroundedPosition = transform.position; thisCamera.SetPosition(transform.position); Physics2D.IgnoreCollision(door.GetComponent <Collider2D>(), GetComponent <Collider2D>()); yield return(new WaitForSecondsRealtime(1f)); Physics2D.IgnoreCollision(door.GetComponent <Collider2D>(), GetComponent <Collider2D>(), false); break; } } }