private void Shoot() { Debug.DrawRay(m_SecondBarrel.transform.position, -m_SecondBarrel.transform.right * 1000, Color.red, m_ShootingCooldown / 2); RaycastHit hit; if (Physics.Raycast(m_SecondBarrel.transform.position, -m_SecondBarrel.transform.right, out hit, 1000, m_CollisionLayer)) { if (hit.transform.tag == "Player") { TeamController tc = hit.transform.parent.GetComponent <TeamController>(); tc.InflictDamage(1); m_SoundController.PlaySound(m_SoundTankHit); } // hit explosion GameObject hitEffect = (GameObject)Instantiate(m_HitExplosionEffect, hit.point, Quaternion.identity); } ControllerInput.SetVibration(m_BasePlayer, .8f, .8f, .2f); ControllerInput.SetVibration(m_TurretPlayer, .8f, .8f, .2f); // flare GameObject flare = (GameObject)Instantiate(m_ShotEffect, m_ShootingPoint.position, Quaternion.identity); flare.transform.SetParent(m_TankTurret.transform); // steam GameObject steam = (GameObject)Instantiate(m_SteamEffect, m_ShootingPoint.position, Quaternion.identity); steam.transform.SetParent(m_TankTurret.transform); // sound m_SoundController.PlaySound(m_SoundShooting, 0); m_ShootingTimer = m_ShootingCooldown; }
void Awake() { m_TeamController = transform.parent.GetComponent <TeamController>(); }