//select or deselect public void Select(bool input) { foreach (var member in SquadMembers) //set up selection for members { SquadMemberManager memberManager = member.GetComponent <SquadMemberManager>(); memberManager.Select(input); } selected = input; }
//team will be set by player on spawn public void SetSquadTeam(int getTeam) { Team = getTeam; //set squad's team foreach (var member in SquadMembers) //set everyones team { SquadMemberManager memberManager = member.GetComponent <SquadMemberManager>(); memberManager.Team = Team; } }
public void SetSquadSpeed(float setSpeed) //sets squad speed, public function for traps, potions etc. { setSpeed = setSpeed * speedMultiplier; foreach (var member in SquadMembers) //set everyones speed to given speed { SquadMemberManager memberManager = member.GetComponent <SquadMemberManager>(); memberManager.SetMySpeed(setSpeed); } //set speed of squad manager aIController.speed = setSpeed * 2; //placeholders will go faster than mans for prevent bugs, to achive this its multipled with 2 }
private void SpawnMans(GameObject placeholder, GameObject manager, GameObject squadParent) { GameObject spawnedMan = Instantiate(manType, placeholder.transform.position, placeholder.transform.rotation); spawnedMan.transform.SetParent(squadParent.transform); placeholder.GetComponent <PlaceHolderInfo>().PlaceholderObject = spawnedMan; placeholder.GetComponent <PlaceHolderInfo>().Empty = false; InvokeRepeating("UpdateStatus", 0.0f, 0.01f); SquadMemberManager manSettings = spawnedMan.GetComponent <SquadMemberManager>(); manSettings.SetMyManager(manager); manSettings.Team = secondInfo.Team; manSettings.Setup(manSpawnTime); }
public void UpdateSquadMembers() //updates members and sets up manager { SquadMembers.Clear(); GameObject squadParent = null; float squadSpeedTemp = 100000f; //declare a temp speed foreach (var go in GetComponentsInChildren <Transform>()) { if (go.name == "SquadMembers") { squadParent = go.gameObject; } } foreach (var member in squadParent.GetComponentsInChildren <Transform>()) { if (member.GetComponent <SquadMemberManager>() != null) { SquadMembers.Add(member.gameObject); } } int i = 0; foreach (var member in SquadMembers) //search for slowest man in squaad and setup members { SquadMemberManager memberManager = member.GetComponent <SquadMemberManager>(); if (memberManager.speed < squadSpeedTemp) //is it slower than others? { squadSpeedTemp = memberManager.speed; } memberManager.SetPlaceholder(Placeholders[i]); //set default positin memberManager.GoPosition(); //send him to position memberManager.Team = Team; memberManager.SetMyManager(gameObject); //set his manager i++; } SetSquadSpeed(squadSpeedTemp); //set everyones speed to slowest man in squad SetSquadTeam(Team); manCount = squadMembers.Count; Alive = true; }
private void UpdateSquadMembers() //updates members and sets up manager { squadMembers.Clear(); GameObject squadParent = null; float squadSpeedTemp = 100000f; //declare a temp speed foreach (var go in GetComponentsInChildren <Transform>()) { if (go.name == "SquadMembers") { squadParent = go.gameObject; } } foreach (var member in squadParent.GetComponentsInChildren <Transform>()) { if (member.GetComponent <SquadMemberManager>() != null) { squadMembers.Add(member.gameObject); } } int i = 0; foreach (var member in squadMembers) //search for slowest man in squaad and setup members { SquadMemberManager memberManager = member.GetComponent <SquadMemberManager>(); if (memberManager.speed < squadSpeedTemp) //is it slower than others? { squadSpeedTemp = memberManager.speed; } memberManager.SetPlaceholder(placeholders[i]); //set default positin memberManager.GoPosition(); //send him to position memberManager.SetTeam(team); // TODO: remove it later FOR TESTING. Use SetSquadTeam() from player when squad spawned i++; } SetSquadSpeed(squadSpeedTemp); //set everyones speed to slowest man in squad }