void MinigameBbAnt::update() { int inputTicks; if (_gameTicks > 0) { int currTicks = _vm->_system->getMillis(); inputTicks = 3 * (currTicks - _gameTicks) / 50; _gameTicks = currTicks - (currTicks - _gameTicks - 50 * inputTicks / 3); } else { inputTicks = 1; _gameTicks = _vm->_system->getMillis(); } if (_vm->_keyCode == Common::KEYCODE_ESCAPE) { _gameDone = true; return; } if (inputTicks == 0) return; bool done; do { done = !updateStatus(_vm->_mouseX, _vm->_mouseY, _vm->_mouseButtons); _vm->_mouseButtons &= ~kLeftButtonClicked; _vm->_mouseButtons &= ~kRightButtonClicked; _vm->_keyCode = Common::KEYCODE_INVALID; } while (--inputTicks && _gameTicks > 0 && !done); drawSprites(); _vm->_system->delayMillis(10); }
void rScene5::render() { m_window->clear(); drawSprites(); drawText(); m_window->display(); }
static void gameScreen_Draw( void ) { particlesDraw( ); drawSprites( ); drawMines( ); drawBarbedWire( ); drawPits( ); queueRenderImage( sandImg, 1, center, center, 100 ); queueRenderImage( launchFromImg, 1, launchFromPosition, launchFromPosition, 0 ); queueRenderImage( launchToImg, 1, launchToPosition, launchToPosition, 0 ); // draw healths // base image is 15x15 Vector2 barPos; Vector2 scale; float percentHealth; float barScale; percentHealth = (float)attackerHealth / (float)MAX_HEALTH; barScale = ( 300.0f * percentHealth ) / 15.0f; barPos.x = 1000.0f - 7.0f; barPos.y = 600.0f - ( ( 15.0f * barScale ) / 2.0f ); scale.x = 1.0f; scale.y = barScale; queueRenderImage_sv_c( barBaseImg, 1, barPos, barPos, scale, scale, sideColors[0], sideColors[0], -10 ); percentHealth = (float)defenderHealth / (float)MAX_HEALTH; barScale = ( 300.0f * percentHealth ) / 15.0f; barPos.x = 1000.0f - 7.0f; barPos.y = ( ( 15.0f * barScale ) / 2.0f ); scale.x = 1.0f; scale.y = barScale; queueRenderImage_sv_c( barBaseImg, 1, barPos, barPos, scale, scale, sideColors[0], sideColors[1], -10 ); // draw recharge bars drawPanjandrumsReady( ); if( introMode ) { queueRenderImage( instructionsImg, 1, center, center, -100 ); } /* debugRenderPanjandrums( ); debugRenderTroops( ); debugRenderExplosions( ); debugRenderMines( ); debugRenderBarbedWire( ); debugRenderPits( ); collisionCollectionDebugRendering( sideColliders, 1, 1.0f, 1.0f, 1.0f ); if( introMode ) { collisionDebugRendering( &startCollider, 1, 0, 1, 1.0f, 1.0f, 1.0f ); } // */ }
void Renderer::begin() { ContextSettings contextSettings; contextSettings.depthBits = 32; window = new RenderWindow ( VideoMode ( tam.x, tam.y ), name, Style::Default, contextSettings ); active = true; window->setActive(); glClearDepth ( 0xff ); glClearColor ( 0xff, 0xff, 0xff, 0xff ); bool kb[256] = {0}; // sprite.getOrigin(0,0); while ( window->isOpen() ) { for ( auto x : syncList ) { x->update ( 0 ); } Event event; while ( window->pollEvent ( event ) ) { if ( event.type == Event::Closed || !active ) { window->close(); } createMouseEvent ( event ); createKeyBoardEvent ( event ); createCharEvents ( event ); if ( event.type == Event::Resized ) { } } std::this_thread::sleep_for ( std::chrono::milliseconds ( 16 ) ); window->clear ( Color ( 0x00, 0x00, 0x00, 0x00 ) ); drawSprites(); window->display(); } }