public virtual void AIPreInitialize(AIDecisionMaker decisionMaker) { PlayerCharacter = decisionMaker.Player; animator = decisionMaker.GetComponent <Animator>(); OnActionFinished = false; AI = decisionMaker.transform; navMeshAgent = decisionMaker.GetComponent <NavMeshAgent>(); audioSource = decisionMaker.GetComponent <AudioSource>(); }
public override bool CanActivate(AIDecisionMaker decisionMaker) { if (decisionMaker.IsSeen) { return(false); } return(true); }
public override bool CanActivate(AIDecisionMaker decisionMaker) { if (decisionMaker.IsAggressive) { return(true); } if ((decisionMaker.transform.position - PlayerCharacter.position).sqrMagnitude <= ScareDistance && decisionMaker.HitByLight) { return(true); } return(false); }
public override bool CanActivate(AIDecisionMaker decisionMaker) { if (DecisionMaker.IsAggressive) { return(false); } if ((decisionMaker.RunAway || decisionMaker.HitByLight) && DecisionMaker.IsSeen && (DecisionMaker.transform.position - PlayerCharacter.position).sqrMagnitude <= DistanceToRunAway) { return(true); } return(false); }
public override bool CanActivate(AIDecisionMaker decisionMaker) { if (!DecisionMaker.IsSeen && MustBeSeenToAttack && !decisionMaker.IsAggressive) { return(false); } if ((decisionMaker.transform.position - PlayerCharacter.position).sqrMagnitude <= AttackDistance) { return(true); } if (!decisionMaker.IsAggressive) { return(false); } return(false); }
public override void AIPreInitialize(AIDecisionMaker decisionMaker) { base.AIPreInitialize(decisionMaker); DecisionMaker = decisionMaker; }
public virtual bool CanActivate(AIDecisionMaker decisionMaker) { return(false); }
public override bool CanActivate(AIDecisionMaker decisionMaker) { return(true); }
public override void AIPreInitialize(AIDecisionMaker decisionMaker) { base.AIPreInitialize(decisionMaker); TransformID = -1; AllWaypoints = GameObject.FindGameObjectsWithTag(WaypointsTag).Select(go => go.transform).ToArray(); }