Example #1
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);
    }