public UseableItem Draw()
    {
        switch (_stage)
        {
        case 0:
            return((UseableItem)(AIFunctions.FullyRandom()));

        case 1:
        case 2:
            return(_favourite);

        case 3:
            return((UseableItem)((AIFunctions.GetLastPlayerMove() + Constants.WINNING_OFFSET) % 3));

        case 4:
        case 5:
            return(_favourite);

        case 6:
            return((UseableItem)((AIFunctions.GetWeightedGuess() + Constants.WINNING_OFFSET) % 3));

        case 7:
        case 8:
        case 9:
            return(_favourite);

        default:
            return(UseableItem.Rock);
        }
    }
Exemple #2
0
    public UseableItem Draw()
    {
        switch (_stage)
        {
        case 0:
            return((UseableItem)((AIFunctions.GetLastPlayerMove() + Constants.WINNING_OFFSET) % 3));

        case 1:
            return((UseableItem)((AIFunctions.GetLastPlayerMove() + Constants.LOSING_OFFSET) % 3));

        case 2:
            return((UseableItem)(AIFunctions.GetLastPlayerMove()));

        case 3:
            return((UseableItem)((AIFunctions.GetWeightedGuess() + Constants.WINNING_OFFSET) % 3));

        case 4:
            return((UseableItem)((AIFunctions.GetWeightedGuess() + Constants.LOSING_OFFSET) % 3));

        case 5:
            return((UseableItem)(AIFunctions.GetWeightedGuess()));

        default:
            return(UseableItem.Rock);
        }
    }
Exemple #3
0
        public GameAI(GameClient game, Duel duel)
        {
            Game  = game;
            Duel  = duel;
            Utils = new AIFunctions(duel);

            _dialogs = new Dialogs(game);
        }
Exemple #4
0
        public GameAI(AIGameClient game, Duel duel)
        {
            Game       = game;
            Connection = game.Connection;
            Duel       = duel;
            Utils      = new AIFunctions(duel);

            _dialogs = new Dialogs(game);
        }
 public bool IsDoneAfterResult(Result r)
 {
     if (_stage == 0)
     {
         if (r == Result.Lose)
         {
             _favourite         = (UseableItem)((AIFunctions.GetLastPlayerMove() + Constants.WINNING_OFFSET) % 3);
             _specialTauntReady = true;
             _specialTaunt      = "I played " + _favourite + ". I won. It was the best win! No one thought I could do it. None of them played " + _favourite + ". Only Trump!";
             _stage             = 1;
         }
     }
     else
     {
         _stage += r == Result.Win ? 1 : 0;
     }
     return(_stage > 9);
 }