private void CheckIfCannonIsInReach(GameObject doctorContainer) { float shortestDistance = int.MaxValue; GameObject doctor = doctorContainer.transform.Find("Player").gameObject; foreach (GameObject cannon in cannonList) { float cannonDistance = Vector3.Distance(cannon.transform.position, doctor.transform.position); if (!(cannonDistance < shortestDistance)) { continue; } shortestDistance = cannonDistance; selectedCannon = cannon; } if (Vector3.Distance(selectedCannon.transform.position, doctor.transform.position) < 3) { FireCannonball cannonball = selectedCannon.GetComponent <FireCannonball>(); cannonball.SetDoctor(doctorContainer); cannonball.attachDoctor(); cannonball.animatorSettings(); } }
public void spawnC(GameObject doctor) { sharedCannon.transform.position = doctor.transform.Find("Player").gameObject.GetComponent <NavMeshAgent>().transform.position; FireCannonball fireCannonball = sharedCannon.GetComponent <FireCannonball>(); fireCannonball.SetDoctor(doctor); fireCannonball.resetCannonball(); fireCannonball.attachDoctor(); fireCannonball.animatorSettings(); //reduce charge }
// Use this for initialization void Start() { controlsHandler = GameObject.Find("ControlsHandler"); controls = controlsHandler.GetComponent <ControlsHandling>(); canpos = GetComponent <CannonPosToAnim>(); fireC = GetComponent <FireCannonball>(); cannonSound = GetComponent <CannonSound>(); audio = GetComponent <AudioSource>(); stage = 0; //0=init 1=horizontal, 2=vertical, 3=charging, 4=fired; reset = false; hHasChanged = false; vHasChanged = false; firePowerPerTick = 1; firePowerMultiplier = 50; }
void Awake() { parent = GetComponentInParent <FireCannonball>(); }