public void OnEnable() { Instance = this; m_MovementAxisName = "Vertical" + PlayerNumber; m_TurnAxisName = "Horizontal" + PlayerNumber; m_FireButton = "Fire" + PlayerNumber; }
public override void Think(TankThinker tank) { var movement = tank.GetComponent <TankMovement>(); movement.Steer(Input.GetAxis(m_MovementAxisName), Input.GetAxis(m_TurnAxisName)); var shooting = tank.GetComponent <TankShooting>(); if (Input.GetButton(m_FireButton)) { shooting.BeginChargingShot(); } else { shooting.FireChargedShot(); } //Setup player vs enemy awareness. if (PlayerControlledTankMovement == null) { PlayerControlledTankMovement = tank.GetComponent <TankMovement>(); } if (PlayerControlledTankHealth == null) { PlayerControlledTankHealth = tank.GetComponent <TankHealth>(); } if (TankRigidBody == null || TankRigidBody.GetHashCode() == 0) { Instance = this; //Saving a reference to the Rigid Body of this Tank, so that we can later check against it. //Used for damage-related tasks. TankRigidBody = tank.GetComponent <Rigidbody>(); //L.D("TankRigidBody created for PlayerControlledTank with Hash: " + GetHashCode()); } }