public void DeployStateReady(Tile tile) { PlayercontrolledCharacter CharacterToUse = charactersForStartOfDay[0]; CharacterToUse.characterCoaster = monoPool.GetCharacterCoasterInstance(); CharacterToUse._monoPool = monoPool; CharacterToUse.TilePawnIsOn = tile; CharacterToUse.NeedsRemoval = false; AddPlayerControlledCharacterToList(CharacterToUse); CharacterToUse.characterCoaster.SetArtForFacing(EnumHolder.Facing.Down); charactersForStartOfDay.Remove(CharacterToUse); if (charactersForStartOfDay.Count == 0) { SortList(); DeactivateAllTiles(); StartNextCharactersTurn(); } else { characterDisplay.ChangeCharacterArt(charactersForStartOfDay[0].characterArt); } }
AICharacter setUpCharacter(AICharacter aICharacter, Tile targetTile) { aICharacter.ChooseWhatToEat(_desireContainer.chooseWhatToEatBasedOnTaste(aICharacter.Race)); aICharacter.characterCoaster = _monoPool.GetCharacterCoasterInstance(); aICharacter._monoPool = _monoPool; aICharacter.characterCoaster.SetArtForFacing(EnumHolder.Facing.Up); if (targetTile.EntityTypeOnTile == EnumHolder.EntityType.Clear) { aICharacter.TilePawnIsOn = targetTile; aICharacter.TilePawnIsOn.EntityTypeOnTile = EnumHolder.EntityType.Character; } else { for (int i = 0; i < targetTile.neighbors.Count; i++) { if (targetTile.neighbors[i].EntityTypeOnTile == EnumHolder.EntityType.Clear) { aICharacter.TilePawnIsOn = targetTile.neighbors[i]; aICharacter.TilePawnIsOn.EntityTypeOnTile = EnumHolder.EntityType.Character; break; } } } return(aICharacter); }
public void OnStartNextDay() { for (int i = 0; i < itemsInStore.Count; i++) { if (itemsInStore[i].ammountOwned > 0) { Supply s = fl.GetFoodAsSupply(itemsInStore[i].FoodName, itemsInStore[i].ammountOwned); s.characterCoaster = _monoPool.GetCharacterCoasterInstance(); s._monoPool = _monoPool; s.TilePawnIsOn = _map.GetTileAtRowAndColumn(4, i); } } loadShopItemsForDay(); }
private GameObject PlacePawnOnTile(string marker, GameObject temp) { if (editorLookUp.ContainsKey(marker[0])) { AbstractPawn pawnToPlace = editorLookUp[marker[0]].Invoke(marker); if (pawnToPlace is AbstractInteractablePawn) { temp.GetComponent <Tile>().TargetableOnTile = (AbstractInteractablePawn)pawnToPlace; } pawnToPlace.characterCoaster = _monoPool.GetCharacterCoasterInstance(); pawnToPlace._monoPool = _monoPool; pawnToPlace.TilePawnIsOn = temp.GetComponent <Tile>(); } return(temp.gameObject); }