public override void Reason(GameObject player, GameObject group) { //enemy inside Battle Radius ThirdPersonUserControl control = player.GetComponent <ThirdPersonUserControl>(); if (Vector3.Distance(player.transform.position, group.transform.position) < control.BRadius) { GlobalGameInfo.enemyGroup = group.GetComponent <Group>(); control.SetTransition(Transition.TransitionToBattleState); control.transform.LookAt(group.transform.position); } }
public override void Reason(GameObject player, GameObject npc) { ThirdPersonUserControl control = player.GetComponent <ThirdPersonUserControl>(); //if the amount of dead things in the group is equal to the size of the group, transition to normal state int dead = 0; for (int y = 0; y < Globals.GlobalGameInfo.enemyGroup.GroupMembersGameObjects.Count; y++) { CharacterData currentEnemyData = Globals.GlobalGameInfo.enemyGroup.GroupMembersGameObjects[y].GetComponent <CharacterData>(); if (currentEnemyData.Alive == false) { dead++; } } if (dead >= Globals.GlobalGameInfo.enemyGroup.GroupMembersGameObjects.Count) { control.SetTransition(Transition.TransitionToNormalState); } }