public override void Action() { player = GameObject.FindGameObjectWithTag("Player"); playerPers = player.GetComponent <PlayerPersonality>(); playerGroup = player.GetComponent <GroupScript>(); // Debug.Log("YES"); targetIA = menuController.GetTargetIA(); if (playerPers.interactionFromOtherCharacter == ActionsEnum.Actions.OFFER) { playerPers.myObject = targetIA.GetComponent <AIPersonality>().myObject; player.GetComponent <ObjectHandler> ().hasObject = true; player.GetComponent <ObjectHandler>().currentObject = targetIA.GetComponent <ObjectHandler>().currentObject; targetIA.GetComponent <AIPersonality>().myObject = ObjectHandler.ObjectType.NONE; targetIA.GetComponent <ObjectHandler> ().hasObject = false; targetIA.GetComponent <ObjectHandler>().currentObject = null; Debug.Log("player:he cogido tu objeto"); } else if (playerPers.interactionFromOtherCharacter == ActionsEnum.Actions.JOIN) { // playerGroup.addSingleMember (targetIA); // targetIA.GetComponent<GroupScript> ().updateGroups (player); //Debug.Log("player:me uno a tu grupo bro"); GroupScript myGroup = playerPers.gameObject.GetComponent <GroupScript>(); GroupScript leadergroup = targetIA.GetComponent <GroupScript>(); //Debug.Log(targetIA); /*myGroup.groupLeader = targetIA ; * myGroup.inGroup = true; * myGroup.IAmTheLeader = false; * myGroup.groupMembers.Clear(); * myGroup.groupMembers.AddRange(leadergroup.copyGroup()); * myGroup.addSingleMember(targetIA); * leadergroup.updateGroups(playerPers.gameObject); * leadergroup.makeLeader();*/ GameObject t = leadergroup.groupLeader; myGroup.groupLeader = t; myGroup.inGroup = true; myGroup.IAmTheLeader = false; leadergroup.updateGroups(myGroup.gameObject, myGroup.groupMembers); leadergroup.makeLeader(); myGroup.addSingleMember(t); leadergroup.resetMembersOfGroups(t.GetComponent <SpriteRenderer>()); } this.gameObject.transform.parent.gameObject.SetActive(false); }
void Start() { if (this.tag == "IA") { cycleIA = this.GetComponent <VisibilityConeCycleIA>(); personality = this.GetComponent <AIPersonality> (); objSeenBefore = personality.myMemory.objectsSeenBefore; } else if (this.tag == "Player") { cyclePlayer = this.GetComponent <VisibilityConeCycle>(); playerPersonality = this.GetComponent <PlayerPersonality>(); } agentPositionControllerScript = this.GetComponent <AgentPositionController>(); }
// Use this for initialization void Start() { float iterator = 1f; Color currentColor; float randomColor = 0f; spawnersLeft = new List <GameObject>(); spawnersLeft.AddRange(spawnPoints); numberOfHumans = numberOfIAs; if (numberOfIAs > spawnPoints.Length && spawnPoints.Length > 6) { numberOfIAs = spawnPoints.Length - 3; } numberOfIAs += 1; AIPersonality.Personalities type = (AIPersonality.Personalities)Random.Range(0, 1); int spawnPos = Random.Range(0, spawnersLeft.Count - 1); if (!allCharisma) { int i = 3; randomColor = Random.Range((iterator - 1) / numberOfIAs, iterator / numberOfIAs); currentColor = gradient.Evaluate(randomColor); instantiateIA(type, spawnersLeft[spawnPos].transform.position, 0, currentColor); spawnersLeft.Remove(spawnersLeft[spawnPos]); iterator++; //Debug.Log(randomColor); type = (AIPersonality.Personalities)Random.Range(2, 3); spawnPos = Random.Range(0, spawnersLeft.Count - 1); randomColor = Random.Range((iterator - 1) / numberOfIAs, iterator / numberOfIAs); currentColor = gradient.Evaluate(randomColor); instantiateIA(type, spawnersLeft[spawnPos].transform.position, 1, currentColor); spawnersLeft.Remove(spawnersLeft[spawnPos]); iterator++; //Debug.Log(randomColor); type = (AIPersonality.Personalities)Random.Range(4, 5); spawnPos = Random.Range(0, spawnersLeft.Count - 1); randomColor = Random.Range((iterator - 1) / numberOfIAs, iterator / numberOfIAs); currentColor = gradient.Evaluate(randomColor); instantiateIA(type, spawnersLeft[spawnPos].transform.position, 2, currentColor); spawnersLeft.Remove(spawnersLeft[spawnPos]); iterator++; //Debug.Log(randomColor); while (i < numberOfIAs - 1) { spawnPos = Random.Range(0, spawnersLeft.Count - 1); type = (AIPersonality.Personalities)Random.Range(0, 5); randomColor = Random.Range((iterator - 1) / numberOfIAs, iterator / numberOfIAs); currentColor = gradient.Evaluate(randomColor); instantiateIA(type, spawnersLeft[spawnPos].transform.position, i, currentColor); spawnersLeft.Remove(spawnersLeft[spawnPos]); i++; iterator++; //Debug.Log(randomColor); } GameObject player = GameObject.FindGameObjectWithTag("Player"); PlayerPersonality personality = player.GetComponent <PlayerPersonality>(); personality.configurePlayer(new Color(250, 250, 250, 255) / 255); } else { int i = 0; while (i < numberOfIAs - 1) { spawnPos = Random.Range(0, spawnersLeft.Count - 1); type = AIPersonality.Personalities.SFA; currentColor = gradient.Evaluate(Random.Range((i - 1) / numberOfIAs, i / numberOfIAs)); instantiateIA(type, spawnersLeft[spawnPos].transform.position, i, currentColor); spawnersLeft.Remove(spawnersLeft[spawnPos]); i++; } } determineMonster(); /*personality.health = 100; * personality.attack = 10; * * personality.MyOwnIndex = numberOfIAs - 1;*/ //Al final del start se activan los colliders de las habitaciones para que se puedan guardar las IAs las habitaciones donde spawneen //List<GameObject> Rooms = new List<GameObject>(); //Rooms.AddRange(GameObject.FindGameObjectsWithTag("RoomsAndDoors")) foreach (GameObject room in GameObject.FindGameObjectsWithTag("RoomsAndDoors")) { room.GetComponent <LocationDiscovery>().enabled = true; } }
public static void Import(string fullpath) { using (StreamReader r = new StreamReader(fullpath)) { try { string json = r.ReadToEnd(); CM94Data data = JsonConvert.DeserializeObject <CM94Data>(json); int i = 0; foreach (var club in data.clubs) { Club c = new Club(); c.City = club.Trim(); c.Name = club.Trim(); c.Funds = 10000; c.Id = i++; c.NickName = ""; c.PrimaryColor = Color.Red; c.SecondaryColor = Color.White; c.StadiumCapacity = 1000; c.StadiumName = ""; CmData.Clubs.Add(c); } int idplayer = 0; foreach (var player in data.players) { if (player.firstName != null && player.surname != "noname") { Player p = new Player(); p.Id = idplayer++; p.LastName = player.surname; p.FirstName = player.firstName; p.BirthDate = DateTime.Now.AddYears(-player.age); p.Position = new PlayerPosition() { Goalkeeper = player.position.G, Defender = player.position.D, Midfield = player.position.M, Forward = player.position.A, Center = player.position.C, Right = player.position.R, Left = player.position.L }; p.Attributes = new PlayerAttributes(); p.Attributes.Passing = player.passing; p.Attributes.Tackling = player.tackling; p.Attributes.Pace = player.pace; p.Attributes.Heading = player.heading; p.Attributes.Development = player.flair; p.Attributes.Dribbling = player.creativity; p.Attributes.Stamina = player.stamina; p.Attributes.Presence = player.influence; p.Attributes.Agility = player.agility; p.Attributes.Strength = player.strength; p.Attributes.Potential = player.potentialSkill; p.Attributes.CurrentPotential = player.currentSkill; p.Attributes.Goalscoring = player.goalscoring; p.Attributes.Persevarance = new Random().Next(0, 20); p.Attributes.Versatility = new Random().Next(0, 20); p.Attributes.Shot = new Random().Next(0, 20); p.Attributes.InjuryProne = new Random().Next(0, 10); p.Attributes.Aggression = new Random().Next(0, 20); p.Attributes.GoalKeeping = p.Position.Goalkeeper ? new Random().Next(15, 20) : new Random().Next(0, 10); Array values = Enum.GetValues(typeof(PlayerPersonality)); PlayerPersonality personality = (PlayerPersonality)values.GetValue(new Random().Next(values.Length)); p.Personality = personality; PlayerContract contract = new PlayerContract(); contract.Salary = new Random().Next(10000, 1000000); contract.Expiry = DateTime.Now.AddYears(new Random().Next(1, 5)); contract.StartDate = DateTime.Now.AddYears(-new Random().Next(0, 10)); p.Contract = contract; CmData.Players.Add(p); } } foreach (var name in data.playerNames) { if (name.FirstName != null && name.SurName != "noname") { try { CmData.FirstNames.Add(name.FirstName.Trim()); CmData.LastNames.Add(name.SurName.Trim()); } catch (Exception e) { MessageBox.Show(e.ToString()); } } } } catch (Exception e) { MessageBox.Show(e.ToString()); } } }