Exemple #1
0
 private void OnTriggerExit(Collider other)
 {
     if (other.gameObject == PlayersList.GetMyPlayer())
     {
         UseBtn.interactable = false;
     }
 }
Exemple #2
0
 void Start()
 {
     myplayer      = PlayersList.GetMyPlayer();
     killtrigger   = myplayer.GetComponent <KillTrigger>();
     reportTrigger = myplayer.GetComponent <ReportTrigger>();
     ventTrigger   = myplayer.GetComponent <VentTrigger>();
 }
    IEnumerator CR_Vent_In(GameObject _player, Vector3 target, float overTime)
    {
        //If I am Venting then disable movement.
        GameObject myPlayer = PlayersList.GetMyPlayer();

        if (_player == myPlayer)
        {
            playerMovement.canMove = false;
        }

        // Move the player on top of the vent.
        float   startTime = Time.time;
        Vector3 source    = _player.transform.position;
        float   distance  = Vector3.Distance(source, target);

        if (!(distance > 0.349 && distance < 0.35))
        {
            while (Time.time < startTime + overTime)
            {
                _player.transform.position = Vector3.Lerp(source, target, (Time.time - startTime) / overTime);
                yield return(null);
            }
        }
        _player.transform.position = target;


        // Play vent-in animation.
        //_player.GetComponentInChildren<Animator>().SetBool("vent", true);

        // Wait for the length of animations then hide the character.
        yield return(new WaitForSeconds(0.25f));

        //Disable the sprite.
        _player.GetComponentInChildren <SpriteRenderer>().enabled = false;
    }
Exemple #4
0
    public void ExitTask(bool isComplete)
    {
        doingTask = false;
        PlayersList.GetMyPlayer().GetComponent <PlayerMovement>().canMove = true;
        VendingMachineVCam.gameObject.SetActive(false);

        TaskComplete = isComplete;
    }
Exemple #5
0
 private void OnTriggerExit(Collider other)
 {
     // Disable Use button
     if (other.gameObject == PlayersList.GetMyPlayer())
     {
         taskManager.currentTask = null;
         crewmateHud.ToggleUseBtn(false);
     }
 }
Exemple #6
0
 private void OnTriggerStay(Collider other)
 {
     // Enable Use button
     if (other.gameObject == PlayersList.GetMyPlayer())
     {
         taskManager.currentTask = gameObject;
         crewmateHud.ToggleUseBtn(true);
     }
 }
Exemple #7
0
    public void ExitTask(bool isComplete)
    {
        doingTask = false;
        PlayersList.GetMyPlayer().GetComponent <PlayerMovement>().canMove = true;
        TrashCanFreeLookCam.gameObject.SetActive(false);
        trashBagSpringJoint.GetComponent <SpringJoint>().spring = defaultSpringForce;


        TaskComplete = isComplete;
    }
Exemple #8
0
 public void TriggerTask()
 {
     if (!doingTask && !TaskComplete)
     {
         doingTask = true;
         PlayersList.GetMyPlayer().GetComponent <PlayerMovement>().canMove = false;
         VendingMachineVCam.gameObject.SetActive(true);
         StartCoroutine(AcceptClicks());
     }
     else
     {
         doingTask = false;
         PlayersList.GetMyPlayer().GetComponent <PlayerMovement>().canMove = true;
         VendingMachineVCam.gameObject.SetActive(false);
     }
 }
Exemple #9
0
 public void TriggerTask()
 {
     if (!doingTask && !TaskComplete)
     {
         doingTask = true;
         PlayersList.GetMyPlayer().GetComponent <PlayerMovement>().canMove = false;
         TrashCanFreeLookCam.gameObject.SetActive(true);
         StartCoroutine(AcceptInput());
     }
     else
     {
         doingTask = false;
         PlayersList.GetMyPlayer().GetComponent <PlayerMovement>().canMove = true;
         TrashCanFreeLookCam.gameObject.SetActive(false);
     }
 }
    void GetRoles(Dictionary <string, string> _playersRole)
    {
        playersRole = _playersRole;

        string myname = PlayersList.GetMyPlayer().name;

        myrole = playersRole[myname];

        //Reflect the role in UI
        if (myrole == IMPOSTER)
        {
            ShowImpostersHUD();
        }
        else if (myrole == CREWMATE)
        {
            ShowCrewmatesHUD();
        }
    }
Exemple #11
0
    public void OnClick_UseBtn()
    {
        //Show Color Picker Panel
        if (!open)
        {
            ColorPanel.SetActive(true);
            open = true;

            PlayersList.GetMyPlayer().GetComponent <PlayerMovement>().canMove = false;
        }
        else
        {
            ColorPanel.SetActive(false);
            open = false;

            PlayersList.GetMyPlayer().GetComponent <PlayerMovement>().canMove = true;
        }
    }
    void Kill(string killersName, string targetsName)
    {
        GameObject target = PlayersList.GetPlayer(targetsName);
        GameObject killer = PlayersList.GetPlayer(killersName);

        // No Animations Yet :(
        //Animator targetsAnimator = target.GetComponentInChildren<Animator>();
        //targetsAnimator.SetTrigger("dead");

        // Disable SpriteRenderer only if i am not the target.
        if (target != PlayersList.GetMyPlayer())
        {
            target.GetComponentInChildren <MeshRenderer>().enabled = false;

            // Set State of the target to dead if its not my player
            target.GetComponent <Player>().myState = Player.State.dead;
        }
        else
        {
            target.GetComponent <Player>().ThisPlayerDead();
        }

        // Spawm DeadBody rename it to targets name.
        Vector3    offset   = new Vector3(0, -0.3f, 0);
        GameObject deadbody = Instantiate(deadBodyPrefab, target.transform.position + offset, Quaternion.identity);

        deadbody.name = targetsName;

        // Show death animations here, if needed.

        // Change targets collider to trigger
        target.GetComponent <CapsuleCollider>().isTrigger = true;

        // Teleport killer to targets position
        killer.transform.position = target.transform.position;


        /** If u want to write a custom position synchronization script.
         * Might help:
         *  https://doc.photonengine.com/en-us/pun/current/gameplay/synchronization-and-state
         *  https://forum.photonengine.com/discussion/13140/teleport-like-abilities-while-using-photon-transform-view
         **/
    }
Exemple #13
0
 void Start()
 {
     myPlayer    = PlayersList.GetMyPlayer();
     roleManager = FindObjectOfType <RoleManager>();
 }
Exemple #14
0
 void Start()
 {
     myplayer      = PlayersList.GetMyPlayer();
     reportTrigger = myplayer.GetComponent <ReportTrigger>();
 }
Exemple #15
0
 public void OnClick_Color(string colorName)
 {
     wantedColor = colorName;
     PlayersList.GetMyPlayer().GetComponent <ColorManager>().CheckForColor(wantedColor);
 }
 void Start()
 {
     myplayer = PlayersList.GetMyPlayer().transform;
     Physics.IgnoreCollision(GetComponentInChildren <MeshCollider>(), myplayer.GetComponent <CapsuleCollider>(), ignore: true);
 }