public void RefundEvo(Critter critter) { if (critter.activeEvos.Contains(this)) { if(cost > 0) { critter.ModifyEvoPts(cost - 1); } Deactivate(critter); UnlockEvo(critter); } critter.statUpdateQueued = true; }
public void BuyEvo(Critter critter) { float pts = critter.GetEvoPts(); if (pts >= cost && !critter.activeEvos.Contains(this)) { Activate(critter); critter.ModifyEvoPts(-cost); if(isMajor && !critter.GetIsPlayer()){ EquipOpenSlot(critter); } } critter.statUpdateQueued = true; }
//Runs Generators to create values for each species. public void Generate(Hex hex, bool isPlayer) { name = "Bob " + num; num++; GenerateSize(); GameObject creature = Instantiate(Creature, transform.position, Quaternion.identity) as GameObject; critter = creature.GetComponent<Critter>(); //Assigns generated values for each Species after being Instantiated. creature.name = name; critter.SetName (name); critter.SetNumber(critterCount); critter.SetIsPlayer(isPlayer); critter.SetSize(size); baseFoodValue = (size*size) * 10; critter.SetBaseFoodValue(baseFoodValue); critter.SetSpeed(StatGenerator()); critter.SetSneak(StatGenerator()); critter.SetSense(StatGenerator()); critter.SetOffense(StatGenerator()); critter.SetDefense(StatGenerator()); critter.ModifyEvoPts(startEvoPts); critter.adultPopulations.Add(startPop); critter.cubPopulations.Add(startPop * .25f); critter.babyPopulations.Add(startPop * .25f); CreateCritterLists(critterCount); AddToLocalCritterList(critter, hex); critter.InitializeSlots(); critter.ResetPreferences(); UnlockCritterStartEvos(critter); if (isPlayer){ Player player = FindObjectOfType<Player>(); critter.SetName(player.GetCritterName()); critter.SetTokenSprite(player.GetCritterTokenSprite()); critter.SetTokenColor(player.GetCritterTokenColor()); player.SetCritter(critter); hex.SetPlayerHab(true); }else if(!isPlayer){ critter.SetTokenSprite(SelectSprite()); critter.SetTokenColor(GenerateColor()); critter.GenerateTokens(); } critter.InitializePopsList(); critterCount++; }