protected override bool Initialize(Vehicle vehicle) { if (!base.Initialize(vehicle)) { return(false); } characterController = vehicle.GetComponent <RigidbodyCharacterController>(); torsoGimbal = vehicle.GetComponent <GimballedVehicleController>(); triggerablesManager = vehicle.GetComponent <TriggerablesManager>(); weapons = vehicle.GetComponent <Weapons>(); if (characterController != null && torsoGimbal != null) { moveTargetPosition = vehicle.transform.position; Damageable[] damageables = vehicle.transform.GetComponentsInChildren <Damageable>(); foreach (Damageable damageable in damageables) { damageable.onDamaged.AddListener(delegate { OnHit(); }); } return(true); } else { return(false); } }
// Called when the game agent enters a vehicle protected override bool Initialize(Vehicle vehicle) { if (!base.Initialize(vehicle)) { return(false); } // Grab necessary components m_RigidbodyCharacterController = vehicle.GetComponent <RigidbodyCharacterController>(); lookController = vehicle.GetComponent <GimballedVehicleController>(); return(m_RigidbodyCharacterController != null); }
protected virtual void Reset() { gimballedVehicleController = GetComponent <GimballedVehicleController>(); targetSelector = GetComponentInChildren <TargetSelector>(); }