Exemple #1
0
 public bool tryEnterDoor(Player_EnterDoors sc)
 {
     if (reachedTarget)
     {
         enterDoor(sc);
         return(true);
     }
     return(false);
 }
Exemple #2
0
 void OnTriggerStay2D(Collider2D other)
 {
     if (other.CompareTag("NPC"))
     {
         Player_EnterDoors ped = this.GetComponentInParent <Player_EnterDoors>();
         if (other.GetComponent <NPC_Movement>().tryEnterDoor(ped))
         {
             this.gameObject.SetActive(false);
         }
     }
 }
Exemple #3
0
    Transform FinalRoom(Player_EnterDoors entranceDoor)
    {
        Transform room = (Transform)Instantiate(prefab_FinalRoom, transform.position, transform.rotation);

        numberOfRooms++;
        room.name = "Room " + numberOfRooms;

        /*
         * Player_EnterDoors doorAux = room.Find("InitialDoor").GetComponent<Player_EnterDoors>();
         *      doorAux.linkedDoor = entranceDoor;
         *      doorAux.currentRoom = room;
         *      doorAux.nextRoom = entranceDoor.currentRoom;
         *      doorAux.Initialized ();
         */
        room.SetParent(activeLevel);
        return(room);
    }
Exemple #4
0
    public Transform NewRoom(Player_EnterDoors entranceDoor)
    {
        Transform room = (Transform)Instantiate(prefab_Rooms.Find("Room " + pickRandomRoom()), transform.position, transform.rotation);

        numberOfRooms++;
        room.name = "Room " + numberOfRooms;

        /*
         * //Creating essential components
         * Player_EnterDoors doorAux = room.Find("InitialDoor").GetComponent<Player_EnterDoors>();
         *      doorAux.linkedDoor = entranceDoor;
         *      doorAux.currentRoom = room;
         *      doorAux.nextRoom = entranceDoor.currentRoom;
         *      doorAux.Initialized ();
         */
        room.SetParent(activeLevel);
        room.gameObject.SetActive(false);
        return(room);
    }
Exemple #5
0
 private void enterDoor(Player_EnterDoors sc)
 {
     sc.changeRoom(false);
     setVisibility(false);
 }
Exemple #6
0
    IEnumerator panCamera(Vector2 startPosition, float startTime, Vector2 finalPosition, float pan_duration, float stay_duration, Player_EnterDoors linkedDoor)
    {
        float alpha = (Time.realtimeSinceStartup - startTime) / pan_duration;
        float beta  = (Time.realtimeSinceStartup - startTime - pan_duration) / stay_duration;

        while (alpha < 1)
        {
            alpha = (Time.realtimeSinceStartup - startTime) / pan_duration;
            this.transform.position = Vector2.Lerp(startPosition, finalPosition, alpha);
            yield return(null);
        }
        bool updated = false;

        while (beta < 1)
        {
            if (!updated && beta > 0.2f)
            {
                linkedDoor.isInCutscene = false;
                linkedDoor.checkLocks();
                updated = true;
            }
            beta = (Time.realtimeSinceStartup - startTime - pan_duration) / stay_duration;
            yield return(null);
        }
        Time.timeScale = 1;
        inCutscene     = false;
    }
Exemple #7
0
 public void newCutscene(Vector2 finalPosition, float pan_duration, float stay_duration, Player_EnterDoors linkedDoor)
 {
     VibrateController.vibrateControllerForXSeconds(pan_duration + stay_duration, 0, 0);
     Time.timeScale = 0;
     inCutscene     = true;
     StartCoroutine(panCamera(this.transform.position, Time.realtimeSinceStartup, finalPosition, pan_duration, stay_duration, linkedDoor));
 }