Exemplo n.º 1
0
    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);
        }
    }
Exemplo n.º 2
0
    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);
    }
Exemplo n.º 3
0
 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);
    }