Пример #1
0
 void InformNearbyAllies()
 {
     if (Time.time > nextInform)
     {
         nextInform        = Time.time + informRate;
         friendlyColliders = Physics.OverlapSphere(nPC.transform.position, nPC.sightRange, nPC.myFriendlyLayers);
         if (friendlyColliders.Length == 0)
         {
             return;
         }
         foreach (Collider ally in friendlyColliders)
         {
             if (ally.transform.root.GetComponent <NPCStatePattern>() != null)
             {
                 NPCStatePattern allyPattern = ally.transform.root.GetComponent <NPCStatePattern>();
                 if (allyPattern.currentState == allyPattern.patrolState)
                 {
                     allyPattern.pursueTarget       = nPC.pursueTarget;
                     allyPattern.locationOfInterest = nPC.pursueTarget.position;
                     allyPattern.currentState       = allyPattern.alertState;
                     allyPattern.nPCMaster.CallEventNPCWalkAnim();
                 }
             }
         }
     }
 }
Пример #2
0
 void SetInitialReferences()
 {
     nPCStatePattern = GetComponent <NPCStatePattern>();
     if (FindObjectOfType <GameManagerMaster>().GetComponent <GameManagerNPCRelationsMaster>() != null)
     {
         nPCRelationsMaster = FindObjectOfType <GameManagerMaster>().GetComponent <GameManagerNPCRelationsMaster>();
     }
 }
 void SetInitialReferences()
 {
     nPCMaster = GetComponent <NPCMaster>();
     if (GetComponent <NPCStatePattern>() != null)
     {
         nPCStatePattern = GetComponent <NPCStatePattern>();
     }
 }
Пример #4
0
 void SetInitialReferences()
 {
     gunMaster = GetComponent <GunMaster>();
     if (transform.root.GetComponent <NPCMaster>() != null)
     {
         nPCMaster = transform.root.GetComponent <NPCMaster>();
     }
     if (transform.root.GetComponent <NPCStatePattern>() != null)
     {
         nPCStatePattern = transform.root.GetComponent <NPCStatePattern>();
     }
     myTransform = transform;
 }
Пример #5
0
 void AlertNearbyAllies()
 {
     foreach (Collider ally in friendlyColliders)
     {
         if (ally.transform.root.GetComponent <NPCStatePattern>() != null)
         {
             NPCStatePattern allyPattern = ally.transform.root.GetComponent <NPCStatePattern>();
             if (allyPattern.currentState == allyPattern.patrolState)
             {
                 allyPattern.pursueTarget       = nPC.myAttacker;
                 allyPattern.locationOfInterest = nPC.myAttacker.position;
                 allyPattern.currentState       = allyPattern.investigateHarmState;
                 allyPattern.nPCMaster.CallEventNPCWalkAnim();
             }
         }
     }
 }
Пример #6
0
 public NPCStateRangeAttack(NPCStatePattern nPCStatePattern)
 {
     nPC = nPCStatePattern;
 }
Пример #7
0
 public NPCStateFollow(NPCStatePattern nPCStatePattern)
 {
     nPC = nPCStatePattern;
 }
Пример #8
0
 public NPCStateMeleeAttack(NPCStatePattern nPCStatePattern)
 {
     nPC = nPCStatePattern;
 }
Пример #9
0
 void SetInitialReferences()
 {
     nPCStatePattern = GetComponent <NPCStatePattern>();
     myAnimator      = GetComponent <Animator>();
 }
Пример #10
0
 public NPCStatePatrol(NPCStatePattern nPCStatePatern)
 {
     nPC = nPCStatePatern;
 }
Пример #11
0
 public NPCStateAlert(NPCStatePattern nPCStatePattern)
 {
     nPC = nPCStatePattern;
 }
 public NPCStateInvestigateHarm(NPCStatePattern nPCStatePattern)
 {
     nPC = nPCStatePattern;
 }
Пример #13
0
 public NPCStateStruck(NPCStatePattern nPCStatePattern)
 {
     nPC = nPCStatePattern;
 }
Пример #14
0
 public NPCStatePursue(NPCStatePattern nPCStatePattern)
 {
     nPC = nPCStatePattern;
 }
Пример #15
0
 public NPCStateFlee(NPCStatePattern nPCStatePattern)
 {
     nPC = nPCStatePattern;
 }