Esempio n. 1
0
void Console::keyPressEvent(QKeyEvent *event)
{
    if (event->key() == Qt::Key_1)
    {
        createGame(GameSnake);
        return;
    }
    else if (event->key() == Qt::Key_2)
    {
        createGame(GameRaycasting);
        return;
    }
    else if (event->key() == Qt::Key_Escape)
    {
        closeGame();
        return;
    }
    else if (event->key() == Qt::Key_Space)
    {
        m_isRunnig = !m_isRunnig;
        return;
    }

    if (m_game && m_isRunnig)
        m_game->keyPressEvent(convertQtKeyToGameKey(event->key()));
}
Esempio n. 2
0
void CreateGameTest()	{

	GameProperties testGame;
	testGame = createGame();
	sput_fail_if((createGame()) == NULL,"Creating Game");
	sput_fail_unless(getAvailableMemory(testGame) == 0,"Initializing Memory");
	sput_fail_unless(getWave(testGame) == 0,"Initializing WaveNo");
	sput_fail_unless(getHealth(testGame) == 0,"Initializing Health");
	free(testGame);
}
Esempio n. 3
0
/*teLevel
 *Initializes all data structures required for level
 */
void initLevel(int level)    {
    createKeywordQueue();
	switch(level)	{
		case 0:
			readLevelSettingsFile(TUTORIAL_LEVEL);
			break;
		case 1:
			readLevelSettingsFile(HARD_LEVEL);
			break;
		case 2:
			readLevelSettingsFile(EASY_LEVEL);
			break;
		default:
			break;
	}
    createLevelPaths();
    createTowerGroup();
    createActionQueue();
	createGame();
	createLevelClocks();
    createEnemyGroup();
	createTowerPos();
	initialQueueReader();
	createProjectileList();
  	createExplosionList();
	initialiseParser();
	init_abilities();
    destroyCommandList();
}
Esempio n. 4
0
void AssassinWar::initGameSettingDlg()
{
    m_pGameSettingDlg = new GameSettingDlg(this);
    m_pGameSettingDlg->initialize();
    connect(m_pGameSettingDlg, SIGNAL(createGame()), this, SLOT(hostGame()));
    connect(m_pGameSettingDlg, SIGNAL(cancelCreateGame()), this, SLOT(showMainWin()));
}
createInternetGameDialogImpl::createInternetGameDialogImpl(QWidget *parent, ConfigFile *c)
	: QDialog(parent), myConfig(c), currentGuestMode(false), currentPlayerName("")
{
#ifdef __APPLE__
	setWindowModality(Qt::ApplicationModal);
	setWindowFlags(Qt::WindowSystemMenuHint | Qt::CustomizeWindowHint | Qt::Dialog);
#endif
	setupUi(this);
	this->installEventFilter(this);

	comboBox_gameType->setItemData(0, GAME_TYPE_NORMAL, Qt::UserRole);
	comboBox_gameType->setItemData(1, GAME_TYPE_REGISTERED_ONLY, Qt::UserRole);
	comboBox_gameType->setItemData(2, GAME_TYPE_INVITE_ONLY, Qt::UserRole);
	comboBox_gameType->setItemData(3, GAME_TYPE_RANKING, Qt::UserRole);

	myChangeCompleteBlindsDialog = new changeCompleteBlindsDialogImpl;

	startBlind = new QLabel(tr("<i>First small blind: $%1</i>").arg(RANKING_GAME_START_SBLIND));
	raiseMode = new QLabel(tr("<i>Double blinds every %1'th hand</i>").arg(RANKING_GAME_RAISE_EVERY_HAND));
	startBlind->hide();
	raiseMode->hide();
	gridLayout1->addWidget(startBlind, 0, 0, 1, 1);
	gridLayout1->addWidget(raiseMode, 1, 0, 1, 1);

	connect( radioButton_changeBlindsSettings, SIGNAL( clicked(bool) ), this, SLOT( callChangeBlindsDialog(bool) ) );
#ifndef GUI_800x480
	connect( pushButton_cancel, SIGNAL( clicked() ), this, SLOT( cancel() ) );
#endif
	connect( pushButton_createGame, SIGNAL( clicked() ), this, SLOT( createGame() ) );
	connect( checkBox_Password, SIGNAL( toggled(bool) ), this, SLOT( clearGamePassword(bool)) );
	connect( comboBox_gameType, SIGNAL(currentIndexChanged(int)), this, SLOT( gameTypeChanged() ) );

}
CreateGameScreen::CreateGameScreen(QWidget *parent) : QWidget(parent)
{
    setWindowModality(Qt::ApplicationModal);

    _labelName.setText("Game name :");
    _labelMap.setText("Map id :");
    _labelPlayer.setText("Player number :");
    _validButton.setText("Create");
    _cancelButton.setText("Cancel");
    _spinBoxMap.setMaximum(9);
    _spinBoxPlayer.setMaximum(4);

    _gridLayout.addWidget(&_labelName, 0, 0);
    _gridLayout.addWidget(&_lineEditName, 0, 1);

    _gridLayout.addWidget(&_labelMap, 1, 0);
    _gridLayout.addWidget(&_spinBoxMap, 1, 1);

    _gridLayout.addWidget(&_labelPlayer, 2, 0);
    _gridLayout.addWidget(&_spinBoxPlayer, 2, 1);

    _gridLayout.addWidget(&_validButton, 3, 0);
    _gridLayout.addWidget(&_cancelButton, 3, 1);

    setLayout(&_gridLayout);

    connect(&_validButton, SIGNAL(clicked()), this, SLOT(createGame()));
    connect(&_cancelButton, SIGNAL(clicked()), this, SLOT(giveUp()));
    connect(ListenServerSingleton::getInstance(), SIGNAL(gameCreation(bool)), this, SLOT(validGameCreation(bool)));
}
Esempio n. 7
0
void TestGetAvailableMemory()	{
	GameProperties testGame;
    testGame = createGame();
	testGame->totalMemory = 10;
	sput_fail_unless(getAvailableMemory(testGame) == 10,"Getting Memory");	
	free(testGame);
}
Esempio n. 8
0
int main(int argc ,char **argv){
 SDL_Init(SDL_INIT_VIDEO);
 Window *frame = createWindow(SCREEN_WIDTH,SCREEN_HEIGHT,"Snakeing!");
 Game *game = createGame(frame);
 SDL_Event event;
 int flag = 1 ;
 while (flag){
   if ( !displayGame(game) ) {
     flag=0; 
     break;
    }  
   SDL_PollEvent(&event);
   SDL_Delay(80);
    if (event.type == SDL_QUIT){
       flag = 0;
       break;
      } 
    else if (event.type == SDL_KEYDOWN) {
        handleEvent(game,event); 
       }
  } 
 printf("Your Score is : %i\n",getGameScore(game));
 destroyGame(game); 
 game = NULL;
 destroyWindow(frame); 
 frame = NULL;
 SDL_Quit();
 return 0;
}
Esempio n. 9
0
void GameWidget::newGame()
{
    for(int i=0;i<Max;i++)
    {
        for(int j=0;j<Max;j++)
        {
            map[i][j]->setVisible(false);
            map[i][j]->reBrothers();
            map[i][j]->setInit();
        }
    }
    for(int i=0;i<hCount;i++)
    {
        for(int j=0;j<wCount;j++)
        {
            map[i][j]->setVisible(true);
            connect(map[i][j],SIGNAL(start()),this,SLOT(createGame()));
            connect(map[i][j],SIGNAL(isOpen()),this,SLOT(openBlock()));
            connect(map[i][j],SIGNAL(isBoom()),this,SLOT(gameMiss()));
            connect(map[i][j],SIGNAL(isFlag()),this,SLOT(isFlag()));
            connect(map[i][j],SIGNAL(disFlag()),this,SLOT(disFlag()));

            map[i][j]->unLocked();
        }
    }
    firstRun=1;
    emit mineSum(MineCount);
}
void TestAddMemory()	{

    GameProperties testGame;
    testGame = createGame();
    addMemory(100);
    sput_fail_unless(getAvailableMemory() == 100,"Adding MEmory");
    sput_fail_unless(addMemory(-100) == 0,"Adding Negative Memory");
    free(testGame);
}
Esempio n. 11
0
/**
* \fn int main(int argc, char* argv[])
* \brief Main function.
* \param[in] argc Number of argument passed to the program.
* \param[in] argv Arguments passed to the program.
*/
int main(int argc, char* argv[]) {

   unsigned int frameLimit;

   /*Create the Game structure*/
   Game* game = createGame();

   frameLimit = SDL_GetTicks()+16;

   /* initializes SDL */
   initGame("MyLittleProject",game);

   /* initializes player */
   initializePlayer(game->player);

   /* loads resources */
   loadGame(game);

   /* Main loop */
   while(game->go == 1) {
      /* reads input from keyboard */
      getInput(game->input, game);

      /* checks if menu is used */
      if(game->onMenu == 0) {
         /* updates game */
         updatePlayer(game->player,game);
         updateObject(game);

         /* displays everything */
         draw(game);

      } else {
         switch(game->menuType) {

         case START :
            updateStartMenu(game->input,game);
            drawStartMenu(game); // ya un bug ici !
            break;

         case SELECT_LEVEL :
            updateSelectLevelMenu(game->input,game);
            drawSelectLevelMenu(game);

         }
      }

      /*set the framerate at 60 FPS*/
      delay(frameLimit);
      frameLimit = SDL_GetTicks()+16;
   }

   /*free everything*/
   destroyGame(game);

   return EXIT_SUCCESS;
}
Esempio n. 12
0
/**
 * Copy a Game
 * */
Game* copyGame(Game* game) {
	Game* copy = createGame();
	copy->score = game->score;
	
	short i;
	for(i=0; i<T_HEIGHT; i++)
		copy->array[i] = game->array[i];
	return copy;
}
void TestUseMemory()	{

    GameProperties testGame;
    testGame = createGame();
    testGame->totalMemory = 100;
    useMemory(testGame,50);
    sput_fail_unless(getAvailableMemory() == 50,"Subtracting Memory");
    sput_fail_unless(useMemory(testGame,100) == 0,"Subtracting too much Memory");
    free(testGame);
}
Esempio n. 14
0
void testSetLastAction()	{

 	GameProperties newGame = createGame();
	clock_t currTime = clock()/CLOCKS_PER_SEC;
	delayGame(2);
	sput_fail_unless(setlastAction(newGame) == (currTime + 2),"Setting Last Action to current time");
	delayGame(2);
	sput_fail_unless(setlastAction(newGame) == (currTime + 4),"Setting Last Action to current time");
	free(newGame->clock);
	free(newGame);
}
Esempio n. 15
0
void testlastAction()	{

	GameProperties newGame = createGame();
	delayGame(ACTIONCOOLDOWN);
	sput_fail_unless(lastAction(newGame) == 1,"Checking delay more than Cooldown returns true");
	delayGame(ACTIONCOOLDOWN-1);
	sput_fail_unless(lastAction(newGame) == 0,"Checking delay less than Cooldown returns false");
	free(newGame->clock);
	free(newGame);

}
Esempio n. 16
0
TEST_F(GameLogicTests, CreateStartTable8x8)
{
    Array defaultArray = createArray8x8({{o, B, o, B, o, B, o, B}
                                        ,{B, o, B, o, B, o, B, o}
                                        ,{o, B, o, B, o, B, o, B}
                                        ,{o, o, o, o, o, o, o, o}
                                        ,{o, o, o, o, o, o, o, o}
                                        ,{W, o, W, o, W, o, W, o}
                                        ,{o, W, o, W, o, W, o, W}
                                        ,{W, o, W, o, W, o, W, o}});
    EXPECT_NO_FATAL_FAILURE(createGame(std::move(defaultArray), PieceColor::White));
}
Esempio n. 17
0
void GameScreen::initialise(){
	glewInit();

	m_delayTest = false;

	m_cam = new Camera();
	m_cam->move()->setPos(0, 1, 0);

	m_turnTimer = new Timer();
	m_gameTimer = new Timer();
	m_endTurnTimer = new Timer();

	m_largeFont = new BFont(m_hdc, "Courier", 50);
	m_skySphere = new Sphere(10);
	m_skySphere->setTexture("Images/sky_sunbeams1.bmp");

	m_water = new Water("Images/water.bmp", 20, 30);
	m_quadTree = NULL;

	m_land = NULL;
	m_explo = NULL;
	m_curUnit = NULL;

	m_fired = m_hitTerrain = false;

	m_curTeam = 0;

	for (int i = 0; i < NBR_TEAMS; i++){
		m_teams.push_back(new Team(i));
		m_teams[i]->setCurrentUnit(0);

		Vector tCol = Vector(random::rnd.number(1.0f), random::rnd.number(1.0f), random::rnd.number(1.0f));
		for (int j = 0; j < NBR_UNITS; j++){
			Cube* temp;

			temp = new Cube(0.048f, tCol.x, tCol.y, tCol.z);
			char s[255];
			sprintf_s(s, "Pete %i", i);
			m_teams[i]->addUnit(new Unit(s, temp, 100, 2.0f));
		}
	}

	m_sEngine->play2D("Sounds/Electrodoodle.mp3", true);

	m_landCube = new Cube(0.05f, 0.0f, 0.8f, 0.25f);

	int gameType = rand() % 9;
	createGame(gameType);

	m_water->setPos(Vector(m_width / 2, 0 - m_landCube->getScale()/2, 0));

	changeUnit();
}
Esempio n. 18
0
void Server::start(unsigned short portConnection) {
    srand(time(NULL));

    initializeNetwork(portConnection);

    while (true) {
        startChronoAndWait();
        createGame();
        sendGame();
        startGame();
    }
}
Esempio n. 19
0
Game* GameLoader::newGame()
{
	QString filename = "data/main.xml";

	QDomDocument document = load(filename);

	QDomElement node = document.documentElement();

	Game* game = createGame(node);

	_paths.pop();

	return game;
}
/*---------- Test Functions ----------*/
void setUpTesting()	{
    createKeywordQueue();
	readLevelSettingsFile(TESTLEVEL);	
    createLevelPaths();
    layTestPath();
    createTowerGroup();
    createActionQueue();
    createGame();
    createLevelClocks();
    createEnemyGroup();
    createTowerPos();
    createProjectileList();
    initialiseParser();
    init_abilities();
}
Esempio n. 21
0
int main()
{
    printf("Block game generator.\n");

    srandom(time(NULL));

    testGame();
    evaluateGame();

    while (1)
    {
        createGame();
        evaluateGame();
    }

    return 0;
}
Esempio n. 22
0
void View_StartGame::setupPlayerEndSlot(Player *p) {
	qDebug() << "View_StartGame::setupPlayerEndSlot(Player *p)";
	
	settings->hide();
	delete settings;
	settings = NULL;
	disconnect(this, SIGNAL(setupPlayerEndSignal(Player*)), this, SLOT(setupPlayerEndSlot(Player*)));
	if (curColor == WHITE) {
		wp = p;
		qDebug() << "View_StartGame -> setupPlayerBegin(BLACK)";
		setupPlayerBegin(BLACK);
	} else if (curColor == BLACK) {
		bp = p;
		qDebug() << "View_StartGame emit createGame(wp, bp);";
		emit createGame(wp, bp);
	} else {
		exit(1);
	}
}
Esempio n. 23
0
int main(void)
{
	int width = 4;
	int height = 16;

	// create two players...
	Player *player1 = createPlayer("Player1");
	Player *player2 = createPlayer("Player2");

	// game logic and the like
	Engine *engine = createEngine(consoleRenderer, eventHandler);

	// initialize renderer
	initConsoleRenderer(width + 2, height + 2);

	while (TRUE)
	{
		// create the game board
		SuPong *suPong = createGame(width, height, player1, player2);
		resetEngine(engine);
		
		// now run the game...
		while (engine->state == RUNNING)
		{
			engineTick(engine, suPong);
			usleep(100000);
		}

		// engine->state now contains the winner...
		// you could for example restart the game for a next match...
		// do this by calling run(engine, suPong) again
		//	engine->state

		renderGameEnd(engine);
		usleep(1000000);
	}

	// shutdown renderer
	shutdownConsoleRenderer();

	return 0;
}
Esempio n. 24
0
/**
 * @brief Constructs and initialize the \ref MainWindow.
 * @param QWidget parent - the parent of the \ref MainWindow (0 by default).
 */
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    /* Init Threads */
    _listener = NULL;

    /* Opponent player */
    strcpy(_opponent_player.name , "");

    /* player */
    strcpy(_player.name, "");
    _player.color = 0;

    // Connect Connection Widget with the window
    connect(ui->connectionWidget, SIGNAL(askConnection(QString, int, QString)),
            this, SLOT(serverConnection(QString, int, QString)));

    // Configure disconnection of the user
    connect(ui->rightMenuWidget, SIGNAL(askDisconnection()), this, SLOT(serverDisconnection()));
    connect(ui->rightMenuWidget, SIGNAL(askSendMessage(QString)), this, SLOT(sendChatMessage(QString)));

    //Chatroom
    connect(this, SIGNAL(askAddMsg(QString)), ui->rightMenuWidget, SIGNAL(addMsg(QString)));

    //Online players
    connect(this, SIGNAL(askAddPlayer(player)), ui->rightMenuWidget, SIGNAL(addPlayerToView(player)));
    connect(this, SIGNAL(askRmPlayer(player)), ui->rightMenuWidget, SIGNAL(rmPlayerFromView(player)));
    connect(ui->rightMenuWidget, SIGNAL(askNewGameWith(player)), this, SLOT(createGame(player)));
    connect(this, SIGNAL(askSetBusy(player)), ui->rightMenuWidget, SIGNAL(askSetBusy(player)));
    connect(this, SIGNAL(askSetFree(player)), ui->rightMenuWidget, SIGNAL(askSetFree(player)));

    //Checkerboard
    connect(this, SIGNAL(initGame(player, player)), ui->checkerboardwidget, SLOT(init(player, player)));
    connect(ui->checkerboardwidget, SIGNAL(sendCheckerboard(checkerboard)), this, SLOT(sendCheckerboard(checkerboard)));
    connect(ui->checkerboardwidget, SIGNAL(sendWinner(player)), this, SLOT(adviseWinner(player)));
    //connect(this, SIGNAL(changePlayerTurn(int)), ui->checkerboardwidget, SLOT(changePlayer(int)));

}
createNetworkGameDialogImpl::createNetworkGameDialogImpl(QWidget *parent, ConfigFile *c)
	: QDialog(parent), myConfig(c)
{
#ifdef __APPLE__
	setWindowModality(Qt::ApplicationModal);
	setWindowFlags(Qt::WindowSystemMenuHint | Qt::CustomizeWindowHint | Qt::Dialog);
#endif
	setupUi(this);
	this->installEventFilter(this);

	myChangeCompleteBlindsDialog = new changeCompleteBlindsDialogImpl;

	fillFormular();

	connect( radioButton_changeBlindsSettings, SIGNAL( clicked(bool) ), this, SLOT( callChangeBlindsDialog(bool) ) );
#ifndef GUI_800x480
	connect( pushButton_cancel, SIGNAL( clicked() ), this, SLOT( cancel() ) );
#endif
	connect( pushButton_createGame, SIGNAL( clicked() ), this, SLOT( createGame() ) );

}
Esempio n. 26
0
void gui_tetris_init(){
    draw_filled_rect(camera_screen.ts_button_border+0,0,camera_screen.width-camera_screen.ts_button_border,camera_screen.height, TETRIS_COLOR_BG);
    draw_rect(camera_screen.ts_button_border+BOARD_X-1,BOARD_Y-1,camera_screen.ts_button_border+BOARD_WIDTH*TILE_SIZE+10,BOARD_HEIGHT*TILE_SIZE+10, COLOR_BLACK);
    game = createGame();
    gameInit(game);
  
    long buf;
    FILE *f;    

    f=fopen("A/CHDK/GAMES/TETRIS.SCO","rb");
    if(!f) {
        game->stats.high = 0;
    } else {
    
    fread( &buf, 1, sizeof( buf ), f );
    game->stats.high = buf; 
    
    }

    fclose (f);
    startGame(game);
}
Esempio n. 27
0
        void create()
        {
            physicsDraw_ = createPhysicsDraw();
            game_ = createGame(window_->getContext());
            loadConfig("../../../data/configs/config.xml");
            game_->loadModule("../../../data/modules/level.xml", Matrix3());

            std::auto_ptr<ShaderSource> vertexShaderSource =
                createFileShaderSource("../../../data/shaders/texture.vsh");
            boost::intrusive_ptr<Shader> vertexShader =
                createShader(window_->getContext());
            vertexShader->setSource(vertexShaderSource);

            std::auto_ptr<ShaderSource> fragmentShaderSource =
                createFileShaderSource("../../../data/shaders/texture.fsh");
            boost::intrusive_ptr<Shader> fragmentShader =
                createShader(window_->getContext());
            fragmentShader->setSource(fragmentShaderSource);

            program_ = createProgram(window_->getContext());
            program_->attachShader(vertexShader);
            program_->attachShader(fragmentShader);
        }
Esempio n. 28
0
void GameScreen::processKeyUp(int key){
	int gameType = rand() % 9;

	switch (key){
	case VK_W:
		break;
	case VK_S:
		break;
	case VK_A:
		m_curUnit->getPhysics()->setAccelX(0);
		break;
	case VK_D:
		m_curUnit->getPhysics()->setAccelX(0);
		break;
	case VK_1:
		createGame(gameType);
		changeUnit();
		break;
	default:
		break;
	}

}
/*
 *Initializes all data structures required for level
 */
void initLevel(int level)    {
    createKeywordQueue();
	switch(level)	{
		case 0:
			readLevelSettingsFile("../data/tutorial.txt");
			break;
		case 1:
			createLevel();
			break;
		default:
			break;
	}
    createLevelPaths();
    createTowerGroup();
    createActionQueue();
	createGame();
	createLevelClocks();
    createEnemyGroup();
	createTowerPos();
	initialQueueReader();
	createProjectileList();
	initialiseParser();
	init_abilities();
}
Esempio n. 30
0
int main(void) {
	int running = 1;
	State currState = MainMenu;
	Game* game = NULL;
#ifdef DEBUG
	game = createGame();
	printf("---------------- Open the game successfully \n");
	if (!game->setting->useAI)
		selectOpponent(game);
	printf("---------------- Changing the game to AI mode \n");
	printf("---------------- Going to run 100 times AI vs AI \n");
	printf(" Press enter to continue \n");
	getchar();
	fflush(stdin);
	while (game->turn < 100) {
		onAIsTurn(game);
	}
	printf("---------------- AI and check is tested \n");
	saveLog(game, "log.txt");
	printf("---------------- Save record successfully \n");
	printf(" Press enter to continue \n");
	getchar();
	replay(game);
	printf("---------------- Replay successfully \n");
	printf(" Press enter to exit \n");
	getchar();
	deleteGame(game);
	printf("---------------- Delete the game successfully \n");
	exit(0);
#endif
	game = createGame();

	while (running) {
		switch(currState) {
		case MainMenu:
			/*printf("currState = MainMenu\n");*/
			currState = onMainMenu(game);
			break;
		case NewGame:
			/*printf("currState = NewGame\n");*/
			currState = onNewGame(game);
			break;
		case GameMenu:
			/*printf("currState = GameMenu\n");*/
			currState = onGameMain(game);
			break;
		case TurnPlayer:
			/*printf("currState = Player's Turn\n");*/
			currState = onPlayersTurn(game);
			break;
		case TurnAI:
			/*printf("currState = AI's Turn\n");*/
			currState = onAIsTurn(game);
			break;
		case Exit:
			/*printf("currState = Exit\n");*/
			running = 0;
			break;
		default:
			break;
		}
	}
	deleteGame(game);
	return 0; /* added by Cesar on 1/27 */
}