/// <summary> If the Animal has a IMountAI component it can be called</summary> public virtual void CallAnimal(bool call) { if (!CanCallAnimal) { return; } if (MountStored) //Call the animal Stored { MonturaAI = MountStored.GetComponent <IAIControl>(); if (MonturaAI != null) { ToggleCall = call; if (ToggleCall) { MonturaAI.SetTarget(transform); //Set the Rider as the Target to follow if (CallAnimalA) { RiderAudio.PlayOneShot(CallAnimalA); } } else { StopMountAI(); if (StopAnimalA) { RiderAudio.PlayOneShot(StopAnimalA); } } } } }
public virtual void MountTriggerEnter(Mount mount, MountTriggers mountTrigger) { Montura = mount; //Set to Mount on this Rider MonturaAI = Montura.GetComponent <IAIControl>(); MountTrigger = mountTrigger; //Send the side transform to mount OnFindMount.Invoke(mount.transform.root.gameObject); //Invoke Found Animal Montura.OnCanBeMounted.Invoke(Montura.CanBeMountedByState); //Invoke Can Be mounted to true ??? Montura.NearbyRider = true; UpdateCanMountDismount(); }