Ejemplo n.º 1
0
void Puissance4::hasP4_sens(int i, int j, int *sens, bool *stop){
  if((not stop[0]) && i > -1 && j > -1 && i<getNbLignes() && j<getNbColonnes()){
    if(not HAS_PION(i, j)|| GET_CASE(i, j)->getPion()->getJoueur() != get_j()){
      *stop = true;
    } else {
      (*sens)++;
    }
  } 
}
Ejemplo n.º 2
0
int cmd_get(fs_file fp, union cmd *cmd)
{
    int type;
    short size;

    if (!fp || !cmd)
        return 0;

    if ((type = fs_getc(fp)) >= 0)
    {
        get_short(fp, &size);

        /* Discard unrecognised commands. */

        if (type >= CMD_MAX)
        {
            fs_seek(fp, size, SEEK_CUR);
            type = CMD_NONE;
        }

        cmd->type = type;

        switch (cmd->type)
        {
            GET_CASE(CMD_END_OF_UPDATE);
            GET_CASE(CMD_MAKE_BALL);
            GET_CASE(CMD_MAKE_ITEM);
            GET_CASE(CMD_PICK_ITEM);
            GET_CASE(CMD_TILT_ANGLES);
            GET_CASE(CMD_SOUND);
            GET_CASE(CMD_TIMER);
            GET_CASE(CMD_STATUS);
            GET_CASE(CMD_COINS);
            GET_CASE(CMD_JUMP_ENTER);
            GET_CASE(CMD_JUMP_EXIT);
            GET_CASE(CMD_BODY_PATH);
            GET_CASE(CMD_BODY_TIME);
            GET_CASE(CMD_GOAL_OPEN);
            GET_CASE(CMD_SWCH_ENTER);
            GET_CASE(CMD_SWCH_TOGGLE);
            GET_CASE(CMD_SWCH_EXIT);
            GET_CASE(CMD_UPDATES_PER_SECOND);
            GET_CASE(CMD_BALL_RADIUS);
            GET_CASE(CMD_CLEAR_ITEMS);
            GET_CASE(CMD_CLEAR_BALLS);
            GET_CASE(CMD_BALL_POSITION);
            GET_CASE(CMD_BALL_BASIS);
            GET_CASE(CMD_BALL_PEND_BASIS);
            GET_CASE(CMD_VIEW_POSITION);
            GET_CASE(CMD_VIEW_CENTER);
            GET_CASE(CMD_VIEW_BASIS);
            GET_CASE(CMD_CURRENT_BALL);
            GET_CASE(CMD_PATH_FLAG);
            GET_CASE(CMD_STEP_SIMULATION);
            GET_CASE(CMD_MAP);
            GET_CASE(CMD_TILT_AXES);
            GET_CASE(CMD_MOVE_PATH);
            GET_CASE(CMD_MOVE_TIME);

        case CMD_NONE:
        case CMD_MAX:
            break;
        }

        return !fs_eof(fp);
    }
    return 0;
}