Esempio n. 1
0
void advanceGame(void* gameMemory, OOGameInput* input, OOGameOutput* output) {
	cbgame * game = (cbgame*) gameMemory;

	game->input = input;
	game->output = output;

	if( !game->initialised ) {
		initGame(game);
	}

	game->moveDelta = game->p1.x;
	updateGame(game);
	game->moveDelta -= game->p1.x;

	clearScreen(game);
	
	drawPlayer(game, &game->p2);
	drawPlayer(game, &game->p1);

	// draw a rectangle at the mouse position
	drawRectangle(game, (ooint)input->mouse.x, (ooint)input->mouse.y, 25, 25, 0xffff0000);

	outputSine(game);

	game->time += game->input->dt;
}
Esempio n. 2
0
void advanceGame(void* gameMemory, OOGameInput* input, OOGameOutput* output) {
    cbgame * game = (cbgame*) gameMemory;
    oofloat respawnTime = 2.f;
    if(game->p1.score == CombatGame_ScoreLimit)
    {
        //Player 1 wins
    }
    else if (game->p2.score == CombatGame_ScoreLimit)
    {
        //Player 2 Wins
    }
    
    if(!game->p1.alive && game->time >= game->p1.timeOfDeath + respawnTime)
    {
        respawnPlayer(game, &game->p1);
    }
    else if (!game->p2.alive && game->time >= game->p2.timeOfDeath + respawnTime)
    {
        respawnPlayer(game, &game->p2);
    }
    game->input = input;
    game->output = output;
    
    if( !game->initialised ) {
        initGame(game);
    }
    
    game->moveDelta = game->p1.x;
    updateGame(game);
    game->moveDelta -= game->p1.x;
    
    clearScreen(game);
    moveWall(game);
    drawPlayer(game, &game->p2);
    drawPlayer(game, &game->p1);
    drawArena(game);
    

    if(game->p1.missile.isFiring)
    {
        drawMissile(game,&game->p1);
    }
    if(game->p2.missile.isFiring)
    {
        drawMissile(game,&game->p2);
    }
    
    
    game->time += game->input->dt;
}
Esempio n. 3
0
void			Game::moveDown(Player & player)
{
	AGameEntity		*result;

	drawPlayer(player, NULL);
	player.goDown();
	if (player.getPosY() > _win.getH() - 5)
		player.setPosY(_win.getH() - 5);
	if ( player.getPosY() < 5)
		player.setPosY(5);
	result = _board.getMatriceValueAt(player.getPosX(), player.getPosY());
	if (result && result->getType() != PLAYER)
		loseHp(player);
	drawPlayer(player, &player);
}
Esempio n. 4
0
main()
{
	int key;

	while(1)
	{
		system("cls");
		drawPlayer(x,y);
		key = getch();

        switch(key)
        {
            case 113:
            case  81: //quit on "q"
                exit(0);
                break;
            case 119:
                movePlayer(0,-1);
                break;
            case 115:
                movePlayer(0,1);
                break;
            case  97:
                movePlayer(-1,0);
                break;
            case 100:
                movePlayer(1,0);
                break;
        }
	}
}
Esempio n. 5
0
void drawScene(camera_s* c, portal_s* p, int depth, u8 stencil)
{
	if(!c)return;

	gsMatrixMode(GS_MODELVIEW);
	gsPushMatrix();
		gsLoadIdentity();
		useCamera(c);

		drawRoom(&testRoom);

		drawCubeDispensers();
		drawEnergyDevices();
		drawEnergyBalls();
		drawPlatforms();
		drawBigButtons();
		drawTimedButtons();
		drawWallDoors();
		drawDoors();
		drawOBBs();

		if(p && depth)drawPlayer(&testPlayer);
		
		drawSludge(&testRoom);

		drawEmancipators();
		drawEmancipationGrids();

		if(p == &portals[0])drawPortals((portal_s*[]){&portals[0]}, 1, drawScene, c, depth, stencil);
Esempio n. 6
0
void Player::drawFaded() const {
    if (MainWindow::getInstance()->getMouseState() & Qt::LeftButton){
        drawPlayer();
    }

    drawLightning();
    drawStorm();

    //hit indication (an X)
    if (hitDisplayTime > 0){
        const int angle = qrand() % 359;
        const float size = (1 - getLifePercent()) * 50 + 50;

        glColor3d(100, 100, 100);
        for (int i = -6 ; i <= 6 ; i++){
            Util::drawLine(x + size * Util::sind(angle + i), y + size * Util::cosd(angle + i),
                           x - size * Util::sind(angle + i), y - size * Util::cosd(angle + i));
            Util::drawLine(x + size * Util::sind(angle + 90 + i), y + size * Util::cosd(angle + 90 + i),
                           x - size * Util::sind(angle + 90 + i), y - size * Util::cosd(angle + 90 + i));
        }
    }

    //repulsing enemies
    if (repulseDisplayTime > 0){
        Util::drawRoundShape(x, y, (1 - repulseDisplayTime/REPULSE_TIME) * REPULSE_RANGE, 20, false,
                             ResourceManager::getInstance()->getColour(ResourceManager::LIGHTBLUE));
    }
}
Esempio n. 7
0
void ViewSFML::output() {
  if (!simulation) {
    throw std::runtime_error("No Simulation was set for this View.");
  }

  frameTimer.sync();

  /* NOTE: to get better perfomance for drawing only create  the
   * Graphical objets once and update their state here.
   */
  // clear-draw-display cycle

  // clear background
  window.clear(sf::Color::Black);

  // draw Arena
  drawArena(window);

  // draw all players
  for (auto const &player : simulation->getPlayers()) {
    drawPlayer(window, player.first, player.second);
  }
  // draw all projectiles
  for (auto const &projectile : simulation->getProjectiles()) {
    drawProjectile(window, projectile);
  }
  // draw UI
  drawUI(window);

  window.display();
}
Esempio n. 8
0
void display(void)
{
	
	if (!ingame )
	{
		Menu.drawMenu();
	}
	else 
	{
	//movements handling
	playerMovement();//player collisons handled inside this function
	enemyMovement();

	//player drawing
	glPushAttrib(GL_CURRENT_BIT);//keeps players color from changing
	glColor4f(0.0, 1.0, 0.0,1.0); 
	drawPlayer();

	//enemy drawing
	for (int x=0; x<enemy_size; x++)
		drawEnemy(enemy[x].getPosition().x, enemy[x].getPosition().y,enemy[x].getRadius());
	}	

	
	glutSwapBuffers();//swap bufferes!!!! Important for animation
//	glFlush();
}
void World::draw(sf::RenderTarget& target)
{
    target.clear(sf::Color::Black);
    b.drawOn(target);
    drawObstacles(target);
    drawPlayer(target);
}
Esempio n. 10
0
void MiniMap::showBookMiniMap(int showLevel) {
	
	// First Load Minimap TC & DATA if needed
	if(m_levels[showLevel].m_texContainer == NULL) {
		getData(showLevel);
	}
	
	if(m_levels[showLevel].m_texContainer) {
		
		GRenderer->SetRenderState(Renderer::DepthTest, false);
		
		float zoom = 900.f;
		
		Vec2f start = Vec2f_ZERO;
		Vec2f playerPos(0.f, 0.f);
		
		if(showLevel == ARX_LEVELS_GetRealNum(m_currentLevel)) {
			playerPos = computePlayerPos(zoom, showLevel);
			start = Vec2f(490.f, 220.f) - playerPos;
			playerPos += start;
		}
		
		drawBackground(showLevel, Rect(360, 85, 555, 355), start.x, start.y, zoom, 20.f);
		
		GRenderer->GetTextureStage(0)->setWrapMode(TextureStage::WrapRepeat);
		
		if(showLevel == ARX_LEVELS_GetRealNum(m_currentLevel)) {
			drawPlayer(6.f, playerPos);
			drawDetectedEntities(showLevel, start, zoom);
		}
		
	}
}
Esempio n. 11
0
void MainGameState::draw( 
        sf::RenderTarget& target, sf::RenderStates states ) const {
    setWorldView( target );
    target.draw( world );
    drawPlayer( target );
    setInterfaceView( target );
    target.draw( GUI );
}
Esempio n. 12
0
void movePlayer(int x2, int y2)
{
	x += x2;
	y += y2;

	system("cls");
	drawPlayer(x,y);
}
Esempio n. 13
0
//--------------------------------------------------------------
void ofApp::draw(){
	// draw everything.
	ofBackground(64,64,64);
	
	drawPlayer();
	drawUnwarpedVideo();
	drawTexturedCylinder();
}
Esempio n. 14
0
void Engine::drawGame()
{
    drawMap();
    drawItems();
    drawPlayer();
    drawMonsters();
    drawStatus();
    drawMessageQue();
}
Esempio n. 15
0
void mainMenu() {
		u8 option=0;
		cpct_etm_setTileset2x4(g_tile_tileset_bg);
		cpct_etm_drawTilemap2x4_f(MAP_WIDTH_TILES, MAP_HEIGHT_TILES, SCR_VMEM, g_background);

		cpct_drawSprite (g_tile_titulo, getScreenPosition(5, 2), 32, 16);
		cpct_drawStringM0 ("PLAY GAME", getScreenPosition(5, 5), 15, 7);
		cpct_drawStringM0 ("CONTROLS", getScreenPosition(5, 7), 15, 7);
		cpct_drawStringM0 ("CREDITS", getScreenPosition(5, 9), 15, 7);

		initScroll();
		initPlayer();
		cpct_scanKeyboard_f ();
		do {
		    waitNVSYNCs(3);
			cpct_akp_musicPlay();

			Road();
			drawPlayer();
			if ( cpct_isKeyPressed (Key_CursorUp) && option != 0) {
				--option;
			}
			else if ( cpct_isKeyPressed (Key_CursorDown) && option != 2) {
				++option;
			}

			switch (option) {
				case 0:
					cpct_drawSprite(g_tile_sky_blue, getScreenPosition(3, 7), 4, 8);
					cpct_drawSprite(sprite_skate, getScreenPosition(3, 5), 4, 8);
					break;
				case 1:
					cpct_drawSprite(g_tile_sky_blue, getScreenPosition(3, 5), 4, 8);
					cpct_drawSprite(g_tile_sky_blue, getScreenPosition(3, 9), 4, 8);
					cpct_drawSprite(sprite_skate, getScreenPosition(3, 7), 4, 8);
					break;
				case 2:
					cpct_drawSprite(g_tile_sky_blue, getScreenPosition(3, 7), 4, 8);
					cpct_drawSprite(sprite_skate, getScreenPosition(3, 9), 4, 8);
					break;
			}
			cpct_scanKeyboard_f ();
//			waitNVSYNCs(5);
	} while (!cpct_isKeyPressed(Key_Return));

		switch (option) {
    		case 0:	playMenu();
				break;
    		case 1: 
				gameScene=CONTROLSSCREEN;
				break;
		    case 2: 
				gameScene=CREDITSSCEENE;
				break;
		}
}
Esempio n. 16
0
void playMenu() {
		u8 option=0;

		cpct_etm_setTileset2x4(g_tile_tileset_bg);
		cpct_etm_drawTilemap2x4_f(MAP_WIDTH_TILES, MAP_HEIGHT_TILES, SCR_VMEM, g_background);

		cpct_drawSprite (g_tile_titulo, getScreenPosition(5, 2), 32, 16);
		cpct_drawStringM0 ("PLAY GAME", getScreenPosition(5, 5), 15, 7);
		cpct_drawStringM0 ("INFINITY MODE", getScreenPosition(6, 7), 15, 7);
		cpct_drawStringM0 ("LEVELS MODE", getScreenPosition(6, 9), 15, 7);

		initScroll();
		initPlayer();
		cpct_scanKeyboard_f ();
		do {
			waitNVSYNCs(3);
			cpct_akp_musicPlay();
			Road();
			drawPlayer();
			if ( cpct_isKeyPressed (Key_Esc)) {
				gameScene=MENUSCREEN;
				return;
			}
			else if ( cpct_isKeyPressed (Key_CursorUp) && option != 0) {
				--option;
			}
			else if ( cpct_isKeyPressed (Key_CursorDown) && option != 1) {
				++option;
			}

			switch (option) {
				case 0:
					cpct_drawSprite(g_tile_sky_blue, getScreenPosition(4, 9), 4, 8);
					cpct_drawSprite(sprite_skate, getScreenPosition(4, 7), 4, 8);
					break;
				case 1:
					cpct_drawSprite(g_tile_sky_blue, getScreenPosition(4, 7), 4, 8);
					cpct_drawSprite(sprite_skate, getScreenPosition(4, 9), 4, 8);
					break;
			}
			cpct_scanKeyboard_f ();
//			waitNVSYNCs(5);
	} while (!cpct_isKeyPressed(Key_Return));

		switch (option) {
			case 0:
				cpct_akp_stop();
				gameScene=PLAYGAMESCREEN;
				break;
			case 1:
				cpct_akp_stop();
				gameScene=NEXTLEVELSCREEN;
				break;
		}
}
Esempio n. 17
0
void		Menu::draw()
{
  if (this->which == 0)
    drawMain();
  else if (this->which == 1)
    drawNew();
  else if (this->which == 2)
    drawLoad();
  else if (this->which == 3)
    drawPlayer();
}
//-------------------------------------------------------------------------
void pmWarpPiRendererVideoPlayer::drawElement(ofRectangle container)
{
//    ofLog(OF_LOG_NOTICE) << "RendVideoPlayer::draw";
    
    // SCREEN BACKGROUND
//    ofSetColor(0,0,0,255*screenOpacity);
//    ofFill();
    //ofDrawRectangle(container);
    
    // DRAW VIDEO
    ofSetColor(255,255,255,255 * screenOpacity * maxScreenOpacity);
    drawPlayer(container);
}
Esempio n. 19
0
int drawBoard(char level[MAX_H][MAX_W], NME player, NME *ogres, int numNMES){

    system("CLS");

    drawNMES (level, ogres, numNMES);

    drawPlayer(level, player);
    for (int j = 0; j < MAX_H; j++){
        printf("%s", level[j]);
        printf("\n");
    }

    return 1;
}
Esempio n. 20
0
static inline void render2(void)
{
	if(!(orangeSeen||blueSeen)){previousPortal=NULL;return;}
	if((orangeSeen&&blueSeen)/*||(!orangeSeen&&!blueSeen)*/)
	{
		if(switchPortal)currentPortal=&portal1;
		else currentPortal=&portal2;
	}else if(orangeSeen)currentPortal=&portal1;
	else if(blueSeen)currentPortal=&portal2;
	
	previousPortal=currentPortal;
	
	switchPortal^=1;
	
	glClearColor(0,0,0,31);
	
	updatePortalCamera(currentPortal, NULL);
	projectCamera(&currentPortal->camera);

	glPushMatrix();
		
		glScalef32(SCALEFACT,SCALEFACT,SCALEFACT);
		
		renderGun(NULL);
		
		transformCamera(&currentPortal->camera);
		
		// drawRoomsGame(0);
		drawPortalRoom(currentPortal);
		
		drawPlayer(NULL);
		
		drawOBBs();
		drawBigButtons();
		drawTimedButtons();
		drawEnergyDevices();
		drawEnergyBalls();
		drawPlatforms();
		drawCubeDispensers();
		drawTurretsStuff();
		drawEmancipators();
		drawEmancipationGrids();
		drawDoors();
		drawWallDoors(currentPortal);
		drawSludge(&gameRoom);

	glPopMatrix(1);
	
	glFlush(0);
}
Esempio n. 21
0
void drawGame(void)
{
    if (toDraw) {
        arduboy.clear();
        if (state != STATE_PAUSE) {
            drawChips();
            drawFloors();
        }
        drawPlayer();
        drawStrings();
        isBlink = !isBlink;
        toDraw = false;
    }
}
Esempio n. 22
0
bool drawGame()
{
    arduboy.clear();
    drawScore();
    drawLives();
    drawEnemies();
    if(player.alive)
        drawPlayer();
    drawSupply();
    drawBullets();
    drawStars();
    bool finished = drawExplosions();
    arduboy.display();
    return finished;
}
Esempio n. 23
0
void GameMain::draw()
{
	drawBackGround();//背景(昼)描画

	drawMarioLove();//水道描画

	drawGround();//背景(地面)描画
	
	drawPlayer();//プレイヤー描画
	
	drawUI();//UI描画

	//DrawFormatString(0, 0, RGB(0, 0, 0), "playtime : %d", m_playtime);
	//DrawFormatString(0, 0, RGB(0, 0, 0), "P : %d", m_playerPoint);
}
Esempio n. 24
0
Mode PlayMode::frame()
{
  if(!paused)
  {
    background->draw();
    if(!handleInput())
      return MENU;
    if(!crashed)
    {
      moveField();
      background->update();
      updatePlayer();
      generateWalls();
      generateObstacles();
      generateItems();
    }
    updatePlayerTail();
    particles->draw(0);
    particles->draw(2);
    drawStuff();
    particles->draw(4);
    drawPlayer();
    particles->draw(1);
    floating->draw();
    collisionDetect();
    obstacleCounter();
    drawScorePanel();
    if(crashed && !gameOverExplosionTime--)
    {
      globalStore->seconds = playtime / 60;
      globalStore->score = score;
      globalStore->obstacles = passed;
      globalStore->stars = collected;
      storage->read();
      storage->insert(score);
      return GAMEOVER;
    }
    particles->update();
    floating->update();
  } else
  {
    drawPauseScreen();
    if(!handleInput())
      return MENU;
  }
  return PLAY;
}
Esempio n. 25
0
void			Game::keyHandler()
{
	switch (getch()) {
	case ' ':
		if (!_player2)
			playerShoot(_player);
		else
			playerShoot(*_player2);
		break;
	case KEY_UP:
		moveUp(_player);
		break;
	case KEY_DOWN:
		moveDown(_player);
		break;
	case '1':
		if (_win.getIsMenu() == true)
			_win.setIsMenu(false);
	case '2':
		if (_win.getIsMenu() == true)
		{
			_win.setIsMenu(false);
			_player2 = new Player(2);
			_win.updateHp(P2, 3);
			_player2->setPosY(_player2->getPosY() + 50);
			drawPlayer(*_player2, _player2);
		}
		break;
	case 'w':
		if (!_player2)
			break;
		moveUp(*_player2);
		break;
	case 's':
		if (!_player2)
			break;
		moveDown(*_player2);
		break;
	case 10:
		if (!_player2)
			break;
		playerShoot(_player);
		break;
	}
}
Esempio n. 26
0
void draw()
{
	/* Draw the map */
	
	drawMap();
	
	/* Draw the player */
	
	drawPlayer();

	/* Swap the buffers */

	SDL_Flip(screen);
	
	/* Sleep briefly */
	
	SDL_Delay(1);
}
Esempio n. 27
0
int main(){
	
	initscr();
	start_color();
	colorStuff();
	noecho();
	while((ch=getch())!='q'){
		erase();
		curs_set(0);
		plinp(ch);
		checks();
		draw();
		drawPlayer();
	}
	endwin();
	curs_set(1);
	return 0;
}
Esempio n. 28
0
void Map::Draw()
{
	_d3ddev->Clear(0, NULL, D3DCLEAR_TARGET, COLOR_GREY, 1.0f, 0);
	drawRightMenu();	
	drawMap();
	drawEagle();
	BulletManager::getInstance()->Draw();
	drawIce();
	drawPlayer();
	drawEnemy();
	drawTrees();
	drawPowerUp();
	EffectManager::getInstance(0)->Draw();
	if (_player->getLife() < 0 || _eagle->getEagleStatus() == EAGLE_STATUS::DEAD)
	{
		_text->drawText("GAME\nOVER", _posGameOverText, COLOR_RED, 30, DT_CENTER, 0, 2);
	}
}
Esempio n. 29
0
void MiniMap::showPlayerMiniMap(int showLevel) {
	
	const float miniMapZoom = 300.f; // zoom of the minimap
	const Rect miniMapRect(390, 135, 590, 295); // minimap rect on a 640*480 screen
	const float playerSize = 4.f; // red arrow size
	
	const float decalY = -150;
	const float decalX = +40;
	
	// First Load Minimap TC & DATA if needed
	if(m_levels[showLevel].m_texContainer == NULL) {
		getData(showLevel);
	}
	
	if(m_levels[showLevel].m_texContainer) {
		
		GRenderer->SetRenderState(Renderer::DepthTest, false);
		
		float startX = 0.f;
		float startY = 0.f;
		
		Vec2f playerPos(0.f, 0.f);
		
		if(showLevel == ARX_LEVELS_GetRealNum(m_currentLevel)) {
			playerPos = computePlayerPos(miniMapZoom, showLevel);
			startX = 490.f - playerPos.x;
			startY = 220.f - playerPos.y;
			playerPos.x += startX;
			playerPos.y += startY;
		}
		
		// Draw the background
		drawBackground(showLevel, Rect(390, 135, 590, 295), startX, startY, miniMapZoom, 20.f, decalX, decalY, true, 0.5f);
		
		GRenderer->GetTextureStage(0)->setWrapMode(TextureStage::WrapRepeat);
		
		// Draw the player (red arrow)
		if(showLevel == ARX_LEVELS_GetRealNum(m_currentLevel)) {
			drawPlayer(playerSize, playerPos.x + decalX, playerPos.y + decalY, true);
			drawDetectedEntities(showLevel, startX + decalX, startY + decalY, miniMapZoom);
		}
		
	}
}
Esempio n. 30
0
void MiniMap::showPlayerMiniMap(int showLevel) {
	
	ARX_PROFILE_FUNC();
	
	const float miniMapZoom = 300.f; // zoom of the minimap
	const Rect miniMapRect(390, 135, 590, 295); // minimap rect on a 640*480 screen
	const float playerSize = 4.f; // red arrow size
	
	static const Vec2f decal = Vec2f(40.f, -150.f);
	
	// First Load Minimap TC & DATA if needed
	if(m_levels[showLevel].m_texContainer == NULL) {
		getData(showLevel);
	}
	
	if(m_levels[showLevel].m_texContainer) {
		
		GRenderer->SetRenderState(Renderer::DepthTest, false);
		
		Vec2f start = Vec2f_ZERO;
		
		Vec2f playerPos(0.f, 0.f);
		
		if(showLevel == ARX_LEVELS_GetRealNum(m_currentLevel)) {
			playerPos = computePlayerPos(miniMapZoom, showLevel);
			start = Vec2f(490.f, 220.f) - playerPos;
			playerPos += start;
		}
		
		// Draw the background
		drawBackground(showLevel, Rect(390, 135, 590, 295), start, miniMapZoom, 20.f, decal, true, 0.5f);
		
		GRenderer->GetTextureStage(0)->setWrapMode(TextureStage::WrapRepeat);
		
		// Draw the player (red arrow)
		if(showLevel == ARX_LEVELS_GetRealNum(m_currentLevel)) {
			drawPlayer(playerSize, playerPos + decal, true);
			drawDetectedEntities(showLevel, start + decal, miniMapZoom);
		}
		
	}
}