Exemplo n.º 1
0
    public void Setup5(Transform[] respawnTransforms)
    {
        gameUI = GameUI._gameUI;
        playerControl5Firing = playerInstance.GetComponent <PlayerControl5Firing>();
        playerControl5       = playerInstance.GetComponent <PlayerControl5>();
        canPause             = playerInstance.GetComponent <CanPause>();
        playerMesh           = playerInstance.GetComponent <MeshRenderer>();
        playerRigidbody      = playerInstance.GetComponent <Rigidbody>();
        capsuleCollider      = playerInstance.GetComponents <CapsuleCollider>();

        canPause.playerNumber               = playerNumber;
        playerControl5.playerNumber         = playerNumber;
        playerControl5Firing.playerNumber   = playerNumber;
        playerControl5Firing.componentOwner = this;
        playerControl5.componentOwner       = this;
        roundPanelInput = false;
        Material[] materials = playerMesh.materials;
        materials[2].color = playerColor;
    }
Exemplo n.º 2
0
    void OnTriggerEnter(Collider other)
    {
        missileTrail.Stop();
        missileTrail.transform.parent = null;
        Destroy(missileTrail.gameObject, trailParticleMainModule.duration);

        Collider[] colliders = Physics.OverlapSphere(transform.position, explosionRadius, damagableLayer);

        for (int i = 0; i < colliders.Length; i++)
        {
            Rigidbody            playerRigidbody         = colliders[i].GetComponent <Rigidbody>();
            PlayerControl5       playerControl           = colliders[i].GetComponent <PlayerControl5>();
            PlayerControl5Firing playerControlFiring     = colliders[i].GetComponent <PlayerControl5Firing>();
            Rigidbody            rocketLauncherRigidbody = playerControlFiring.rocketLauncher.GetComponent <Rigidbody>();

            if (!playerRigidbody || !playerControl || !playerControlFiring || !rocketLauncherRigidbody)
            {
                continue;
            }

            rocketLauncherRigidbody.isKinematic = false;
            playerRigidbody.freezeRotation      = false;
            rocketLauncherRigidbody.AddExplosionForce(explosionForce, transform.position, explosionRadius);
            playerRigidbody.AddExplosionForce(explosionForce, transform.position, explosionRadius);

            if (!playerControl.playerDead)
            {
                playerControl.whoHitYou  = playerWhoShot;
                playerControl.playerDead = true;
                playerControl.dustTrail.gameObject.SetActive(false);
            }
        }

        Destroy(missileModel);
        Destroy(gameObject);
    }