Ejemplo n.º 1
0
void do_blackjack(CHAR_DATA *ch,char *argument)
{
    char arg1[MAX_INPUT_LENGTH],arg2[MAX_INPUT_LENGTH];                         
    char buf[MAX_STRING_LENGTH];

	argument = one_argument( argument, arg1 );
	argument = one_argument( argument, arg2 );   

    if( arg1[0] == '\0' )
    {
      send_to_char("You must bet, hit, stand or hand.\n\r",ch);
      return;
    }

    switch( LOWER(arg1[0]) )
    {
      case 'b': place_bet(ch,UMIN(30000,atoi(arg2))); break;
      case 'h': give_card(ch); show_bj_hand(ch,TRUE); check_bj_hand(ch); break;
      case 's': show_bj_hand(ch,TRUE); show_bj_hand(ch,FALSE); break;
      case 'h':
      default: show_bj_hand(ch,TRUE);
    }

    return;
}
Ejemplo n.º 2
0
int *draw_n_cards_for_n_players_n_times(int nSuits, int nCardsOfSuit, int nCards, int nPlayers, int nTimes){

    int index, i, j;
    int *sumOfCards;
    player **players;
    deck *cardinal;

    sumOfCards = (int *)calloc(nCards*11, sizeof(int));
    players = malloc(sizeof(player *)*nPlayers);
    cardinal = create_deck(nSuits, nCardsOfSuit);

    while(nTimes){

        index = 0;
        shuffle_deck(cardinal);

        for(i = 0; i < nPlayers; i++){

            players[i] = get_new_player();


            for(j = 0; j < nCards - 2; j++, index++)
                give_card(players[i]->hand, cardinal, index);

            calculate_score(players[i]);
            sumOfCards[players[i]->score] += 1;

        }

        for(i = 0; i < nPlayers; i++)
            trash_participant(players[i]);

        nTimes--;
    }

    trash_deck(cardinal);

    return sumOfCards;
}