/** This function initialize a mouse press event @param e is the either a right click or a left click */ void block::mousePressEvent(QMouseEvent *e) { if(e->button() == Qt::LeftButton && !marked) { if(num==9) { setIcon(QIcon(":/image/boom.png")); emit lost(); } else { emit expand(id); } } if(e->button() == Qt::RightButton) { if(marked) { marked = false; setIconSize(QSize(0,0)); emit markDecrease(); } else { marked = true; setIcon(QIcon(":/image/flag.png")); setIconSize(QSize(15,15)); emit markIncrease(); emit testWin(); } } }
// Runs the Game... void Ultra1::App::Run( ) { // All of the game states we could be in... Intro intro( this ); MainMenu menu( this ); Game game( this ); MapState map_state( this ); WonState won( this ); LostState lost( this ); HelpState help( this ); StoryState story( this ); OptionsState options( this ); // Must be entered into array in same order as the const values... GameState* states[] = { &intro, &menu, &game, &map_state, &won, &lost, &help, &story, &options }; // We start in the intro... StateNumber current_state = INTRO_STATE; while( current_state != QUIT_STATE ) { // Run the current state and assign the next state to it... current_state = states[current_state]->Run( ); } }
ResourceManager::ResourceManager() : QObject(), m_resources(0), m_result(false), m_waiting(false) { qRegisterMetaType<ResourcePolicy::ResourceSet*>("ResourcePolicy::ResourceSet*"); qRegisterMetaType<ResourcePolicy::ResourceType>("ResourcePolicy::ResourceType"); qRegisterMetaType<QList<ResourcePolicy::ResourceType> >("QList<ResourcePolicy::ResourceType>"); m_resources = new ResourcePolicy::ResourceSet(QString::fromAscii("camera"), this); m_resources->setAlwaysReply(); m_resources->addResource(ResourcePolicy::VideoPlaybackType); m_resources->addResource(ResourcePolicy::VideoRecorderType); QObject::connect(m_resources, SIGNAL(resourcesDenied()), this, SLOT(denied())); QObject::connect(m_resources, SIGNAL(lostResources()), this, SLOT(lost())); QObject::connect(m_resources, SIGNAL(resourcesGranted(QList<ResourcePolicy::ResourceType>)), this, SLOT(granted())); }
void balls_update(t_ball *ball, float size) { float min; float max; float b_min; float b_max; min = -1.0f + 0.03f; max = 1.0f - 0.03f; b_min = ball->player->bar.position; b_max = ball->player->bar.position + size; ball->position.x += ball->direction.x * ball->speed; ball->position.y += ball->direction.y * ball->speed; check_block(ball); if (ball->position.x <= min) bounce(1, ball); if (ball->position.x >= max) bounce(1, ball); if (ball->position.x + 0.03f >= b_min && ball->position.x - 0.03f <= b_max) bounce_bar(b_min, b_max, ball); if (ball->position.y <= min) lost(ball); if (ball->position.y >= max) { ball->direction.y *= -1; ball->position.y += ball->direction.y * ball->speed; } }
//============================================================================================================= bool CGame10::Lose() { devicelost = true; lost(); // ... return true; }
int HighestNumber::value(std::uint8_t player) const { if (won(player)) return 1; else if (lost(player)) return -1; else return 0; }
/* Find a node from the nodes section */ bool JBEAM_TextBox::FindNodeContainer2(QString *JBEAM_box, QString nodename, int &nodesBegin, int &pos1, int &pos2) { QString re = "\\[\\s*\\\"" + nodename + "\\\"\\s*,?\\s*-?\\d*.\\d*\\s*,?\\s*-?\\d*.\\d*\\s*,?\\s*-?\\d*.\\d*"; QRegExp lost(re); pos1 = lost.indexIn(*JBEAM_box,nodesBegin) + 1; if(pos1>=1) { pos2 = lost.matchedLength()-1; return true; } return false; }
MainScene::MainScene(QWidget *parent) : QWidget(parent), ui(new Ui::MainScene), m_time_counter(new QTimer(this)), m_who_am_i(NOT_PLAYER), m_click(new QSound(":/sounds/click.wav")) { ui->setupUi(this); connect(ui->transferButton, SIGNAL(clicked(bool)), this, SLOT(toChangeTurn())); connect(ui->menuButton, SIGNAL(clicked(bool)), this, SIGNAL(shouldSetting())); connect(ui->undoButton, SIGNAL(clicked(bool)), this, SLOT(toSendUndo())); connect(ui->giveupButton, SIGNAL(clicked(bool)), this, SLOT(toSendGiveup())); connect(ui->transferButton, SIGNAL(clicked(bool)), m_click, SLOT(play())); connect(ui->menuButton, SIGNAL(clicked(bool)), m_click, SLOT(play())); connect(ui->undoButton, SIGNAL(clicked(bool)), m_click, SLOT(play())); connect(ui->giveupButton, SIGNAL(clicked(bool)), m_click, SLOT(play())); connect(this, SIGNAL(remainingTimeChanged(int)), this, SLOT(updateRemaining(int))); m_time_counter->setInterval(TIMER_INTERVAL); connect(m_time_counter, SIGNAL(timeout()), this, SLOT(reduceRemaining())); connect(ui->boardView, SIGNAL(won()), this, SIGNAL(gameWon())); connect(ui->boardView, SIGNAL(lost()), this, SIGNAL(gameLost())); connect(ui->boardView, SIGNAL(finished(bool)), this, SIGNAL(gameFinished(bool))); connect(ui->boardView, SIGNAL(placed(QPoint,bool,bool)), this, SIGNAL(shouldPlace(QPoint,bool,bool))); }
void clean(uint16_t seq, int64_t now, void *v) { int ttl; Req **l, *r; ttl = 0; if (v) { if (proto->version == 4) ttl = ((struct ip4hdr *)v)->ttl; else ttl = ((struct ip6hdr *)v)->ttl; } spin_pdr_lock(&listlock); last = NULL; for(l = &first; *l; ){ r = *l; if(v && r->seq == seq){ r->rtt = ndiff(r->tsctime, now); r->ttl = ttl; reply(r, v); } if (now - r->tsctime > MINUTETSC) { *l = r->next; r->rtt = ndiff(r->tsctime, now); if(v) r->ttl = ttl; if(r->replied == 0) lost(r, v); free(r); }else{ last = r; l = &r->next; } } spin_pdr_unlock(&listlock); }
/** * revealCell() * Reveals the cell at the given coordinate, also handles losing / winning */ void MainWindow::revealCell(QString coordinates) { //Obtain the coordinates QStringList results = coordinates.split(","); if ( results.size() != 2) //Ensure that we receive two coordinates qFatal("Less than two numbers received"); int row = results.at(0).toInt(); int column = results.at(1).toInt(); //If we already finished the game.. we won't do anything here if (hasFinished) { return; } else { cellsRevealed++; } //If it is flagged, we will ignore the mine if ( mineStatus[row][column] == FLAGGED_CELL || mineStatus[row][column] == QUESTION_CELL ) { cellsRevealed--; return; } //Get the button we just pushed MineSweeperButton *buttonPushed = qobject_cast<MineSweeperButton *>(signalMapper->mapping(coordinates)); //If it is flat.. we already pushed it so ignore it if (buttonPushed->isFlat()) { cellsRevealed--; return; } //If we have 90 cells revealed (10 mines, 90 not mines), we win the game! if (cellsRevealed == 90 && game->getValue(row, column) != MINE) { changeIcon(buttonPushed, row, column); won(); return; } //Recrusively clear the squares if we reveal a zero if ( game->getValue (row, column) == 0 ) { cellsRevealed--; clear(row, column, true); } //Set the image according to the value of the cell changeIcon(buttonPushed, row, column); buttonPushed->setFlat(true); // if revealed, set button flat //If we reveal a mine, we just lost :( if ( game->isMine( row, column ) ) { lost(); cellsRevealed--; return; } else { //Phew, it's not a mine! We're happy!!!!!!! :D ui->smileyFace->setIcon(QIcon(":/images/normal_face.png")); } //If we haven't started yet, let's start the counter if ( !hasStarted ) { timer->start(1000); hasStarted = true; } }
char game() { unsigned int counts_p, counts_c; // player & computer char *cards[13] = {"A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3", "2"}; char *players_card, *players_card2, *comps_card; // player unsigned char ch1; counts_p = sizeof(cards) / sizeof(cards[0]); counts_c = sizeof(cards) / sizeof(cards[0]); players_card = cards[rand() % counts_p]; players_card2 = cards[rand() % counts_p]; comps_card = cards[rand() % counts_p]; system("clear"); printf("Choosing first card...\n"); sleep(2); printf("Here is first card: "); printf("| %s%s%s |\n", purple, players_card, normal); printf("Do you want to play with this card? (Y/n)\n"); scanf("%c", &ch1); if(ch1 == 'Y' || ch1 == 'y') { printf("Your card: | %s%s%s |\n", purple, players_card, normal); printf("\nComputer is playing...\n"); sleep(3); printf("\nComputer's card: | %s%s%s |\n", red, comps_card, normal); if(players_card == "A" && comps_card == "2" || players_card == "A" && comps_card == "3" || players_card == "A" && comps_card == "4" || players_card == "A" && comps_card == "5" || players_card == "A" && comps_card == "6" || players_card == "A" && comps_card == "7" || players_card == "A" && comps_card == "8" || players_card == "A" && comps_card == "9" || players_card == "A" && comps_card == "10" || players_card == "A" && comps_card == "Q" || players_card == "A" && comps_card == "K") { win(); } else if(players_card == "K" && comps_card == "2" || players_card == "K" && comps_card == "3" || players_card == "K" && comps_card == "4" || players_card == "K" && comps_card == "5" || players_card == "K" && comps_card == "6" || players_card == "K" && comps_card == "7" || players_card == "K" && comps_card == "8" || players_card == "K" && comps_card == "9" || players_card == "K" && comps_card == "10" || players_card == "K" && comps_card == "J" || players_card == "K" && comps_card == "Q") { win(); } else if(players_card == "Q" && comps_card == "2" || players_card == "Q" && comps_card == "3" || players_card == "Q" && comps_card == "4" || players_card == "Q" && comps_card == "5" || players_card == "Q" && comps_card == "6" || players_card == "Q" && comps_card == "7" || players_card == "Q" && comps_card == "8" || players_card == "Q" && comps_card == "9" || players_card == "Q" && comps_card == "10" || players_card == "Q" && comps_card == "J") { win(); } else if(players_card == "J" && comps_card == "2" || players_card == "J" && comps_card == "3" || players_card == "J" && comps_card == "4" || players_card == "J" && comps_card == "5" || players_card == "J" && comps_card == "6" || players_card == "J" && comps_card == "7" || players_card == "J" && comps_card == "8" || players_card == "J" && comps_card == "9" || players_card == "J" && comps_card == "10") { win(); } else if(players_card == "10" && comps_card == "2" || players_card == "10" && comps_card == "3" || players_card == "10" && comps_card == "4" || players_card == "10" && comps_card == "5" || players_card == "10" && comps_card == "6" || players_card == "10" && comps_card == "7" || players_card == "10" && comps_card == "8" || players_card == "10" && comps_card == "9") { win(); } else if(players_card == "9" && comps_card == "2" || players_card == "9" && comps_card == "3" || players_card == "9" && comps_card == "4" || players_card == "9" && comps_card == "5" || players_card == "9" && comps_card == "6" || players_card == "9" && comps_card == "7" || players_card == "9" && comps_card == "8") { win(); } else if(players_card == "8" && comps_card == "2" || players_card == "8" && comps_card == "3" || players_card == "8" && comps_card == "4" || players_card == "8" && comps_card == "5" || players_card == "8" && comps_card == "6" || players_card == "8" && comps_card == "7") { win(); } else if(players_card == "7" && comps_card == "2" || players_card == "7" && comps_card == "3" || players_card == "7" && comps_card == "4" || players_card == "7" && comps_card == "5" || players_card == "7" && comps_card == "6") { win(); } else if(players_card == "6" && comps_card == "2" || players_card == "6" && comps_card == "3" || players_card == "6" && comps_card == "4" || players_card == "6" && comps_card == "5") { win(); } else if(players_card == "5" && comps_card == "2" || players_card == "5" && comps_card == "3" || players_card == "5" && comps_card == "4") { win(); } else if(players_card == "4" && comps_card == "2" || players_card == "4" && comps_card == "3") { win(); } else if(players_card == "3" && comps_card == "2") { win(); } else if(players_card == comps_card) { draw(); } else { lost(); } } else if(ch1 == 'n' || ch1 == 'N') { system("clear"); printf("I'm choosing another one...\n"); sleep(2); printf("Your new card is: | %s%s%s |\n", purple, players_card2, normal); printf("\nComputer is playing...\n"); sleep(3); printf("\nComputer's card: | %s%s%s |\n", red, comps_card, normal); if(players_card2 == "A" && comps_card == "2" || players_card2 == "A" && comps_card == "3" || players_card2 == "A" && comps_card == "4" || players_card2 == "A" && comps_card == "5" || players_card2 == "A" && comps_card == "6" || players_card2 == "A" && comps_card == "7" || players_card2 == "A" && comps_card == "8" || players_card2 == "A" && comps_card == "9" || players_card2 == "A" && comps_card == "10" || players_card2 == "A" && comps_card == "Q" || players_card2 == "A" && comps_card == "K") { win(); } else if(players_card2 == "K" && comps_card == "2" || players_card2 == "K" && comps_card == "3" || players_card2 == "K" && comps_card == "4" || players_card2 == "K" && comps_card == "5" || players_card2 == "K" && comps_card == "6" || players_card2 == "K" && comps_card == "7" || players_card2 == "K" && comps_card == "8" || players_card2 == "K" && comps_card == "9" || players_card2 == "K" && comps_card == "10" || players_card2 == "K" && comps_card == "J" || players_card2 == "K" && comps_card == "Q") { win(); } else if(players_card2 == "Q" && comps_card == "2" || players_card2 == "Q" && comps_card == "3" || players_card2 == "Q" && comps_card == "4" || players_card2 == "Q" && comps_card == "5" || players_card2 == "Q" && comps_card == "6" || players_card2 == "Q" && comps_card == "7" || players_card2 == "Q" && comps_card == "8" || players_card2 == "Q" && comps_card == "9" || players_card2 == "Q" && comps_card == "10" || players_card2 == "Q" && comps_card == "J") { win(); } else if(players_card2 == "J" && comps_card == "2" || players_card2 == "J" && comps_card == "3" || players_card2 == "J" && comps_card == "4" || players_card2 == "J" && comps_card == "5" || players_card2 == "J" && comps_card == "6" || players_card2 == "J" && comps_card == "7" || players_card2 == "J" && comps_card == "8" || players_card2 == "J" && comps_card == "9" || players_card2 == "J" && comps_card == "10") { win(); } else if(players_card2 == "10" && comps_card == "2" || players_card2 == "10" && comps_card == "3" || players_card2 == "10" && comps_card == "4" || players_card2 == "10" && comps_card == "5" || players_card2 == "10" && comps_card == "6" || players_card2 == "10" && comps_card == "7" || players_card2 == "10" && comps_card == "8" || players_card2 == "10" && comps_card == "9") { win(); } else if(players_card2 == "9" && comps_card == "2" || players_card2 == "9" && comps_card == "3" || players_card2 == "9" && comps_card == "4" || players_card2 == "9" && comps_card == "5" || players_card2 == "9" && comps_card == "6" || players_card2 == "9" && comps_card == "7" || players_card2 == "9" && comps_card == "8") { win(); } else if(players_card2 == "8" && comps_card == "2" || players_card2 == "8" && comps_card == "3" || players_card2 == "8" && comps_card == "4" || players_card2 == "8" && comps_card == "5" || players_card2 == "8" && comps_card == "6" || players_card2 == "8" && comps_card == "7") { win(); } else if(players_card2 == "7" && comps_card == "2" || players_card2 == "7" && comps_card == "3" || players_card2 == "7" && comps_card == "4" || players_card2 == "7" && comps_card == "5" || players_card2 == "7" && comps_card == "6") { win(); } else if(players_card2 == "6" && comps_card == "2" || players_card2 == "6" && comps_card == "3" || players_card2 == "6" && comps_card == "4" || players_card2 == "6" && comps_card == "5") { win(); } else if(players_card2 == "5" && comps_card == "2" || players_card2 == "5" && comps_card == "3" || players_card2 == "5" && comps_card == "4") { win(); } else if(players_card2 == "4" && comps_card == "2" || players_card2 == "4" && comps_card == "3") { win(); } else if(players_card2 == "3" && comps_card == "2") { win(); } else if(players_card2 == comps_card) { draw(); } else { lost(); } } else { printf("uhu....\n"); } return 0; }
/* ----- [ add ] ------------------------------------------------------------ */ void add(struct Var_conf *config) { int timer = 1; // Fix bug of timer int random = 0; SDL_Rect pos; // Pieces id's enum Piece_bloc pieces[PC_NB] = { SQR1,SQR1,SQR1,SQR1, BAR1,BAR1,BAR2,BAR2, L1,L2,L3,L4, LINV1,LINV2,LINV3,LINV4, S1,S1,S2,S2, SINV1,SINV1,SINV2,SINV2, DP1,DP2,DP3,DP4 }; // Disable timer config->state = J_PAUSE; if(!config->dropping && !config->down_pressed && !SDL_RemoveTimer(config->timer)) { fprintf(stderr, "[ERROR] Cannot remove timer in %s at line %d.\n", __FILE__,__LINE__); timer = 0; } // Get a random piece random = rand() % PC_NB + 1; // Copy next piece in current piece config->pc_cur_id = config->pc_next_id; // Copy random piece in next piece config->pc_next_id = pieces[random - 1]; // Check position pos.x = (PNL_LB / 2) - (PC_NB_LBLC / 2); pos.y = 1; // Dynamic height panel management if(ENABLE_DYNPNL) { // Empty lines check int r = 0; int s = 0; int empty = 1; // Check if half the panel is empty for(r = 0;r < 2 * PC_NB_HBLC && empty;r++) { for(s = 0;s < model_width(config->model) && empty;s++) { if(model_get(config->model,r,s) != CL_MPT) empty = 0; } } // If a quarter of the panel is not empty, add a quarter of empty lines if(!empty) for(r = 0;r < 2 * PC_NB_HBLC;r++) model_add_first(config->model,CL_MPT); } // Position is good if(check_pc(config,config->model,config->pieces[config->pc_cur_id],pos)) { config->piece_pos.x = pos.x; config->piece_pos.y = pos.y; // Piece ghost pos.x = config->piece_pos.x; pos.y = config->piece_pos.y; while(check_pc(config, config->model, config->pieces[config->pc_cur_id], pos) && pos.y != model_height(config->model)) pos.y++; pos.y--; config->ghost_pos.x = config->piece_pos.x; config->ghost_pos.y = pos.y; // Display next piece disp_next_pc(config); // Trigger AI if launched if(config->ai_started) config->ai_trigger = 1; // Enable timer config->state = J_PLAY; if(timer) if(!config->dropping && !config->down_pressed && (config->timer = SDL_AddTimer(config->interv, step,config)) == NULL) fprintf(stderr, "[ERROR] Cannot initialize timer in %s at line %d.\n", __FILE__,__LINE__); return; } // Game Over else { config->pc_cur_id = PCMPTY; lost(config); return; } }
void state_epoch_t::open() { if (not is_open and unlink(lost())<0) log_critical("can't unlink '%s': %m", lost()) ; abstract_gate_state_t::open() ; }
state_epoch_t::state_epoch_t(machine_t *owner) : abstract_gate_state_t("EPOCH", "WAITING", owner) { is_open = access(lost(), F_OK) != 0 ; }