void EnemyBulletObject::OnUpdateThis(){ SetAllPositions(getPosition() + (TimeMngr::GetDtime() * (m_vDir * m_fAcceleration))); if (!OnScreen()){ DeleteMe(); } }
bool CEntity::Jump() { // Cancel any carrying // Allows entity to jump from moving platforms for instance if (CarriedBy) { if ((CarriedBy->Type == ENTITY_TYPE_PLATFORM) || (CarriedBy->Type == ENTITY_TYPE_ROTATINGPLATFORM)) CanJump = true; // Can always jump from platform CarriedBy->Carrying = NULL; // Cancel carry CarriedBy = NULL; } if (CanJump == false) return false; if (Ducking == true) return false; SpeedY = -MaxSpeedY; // Play Sound if Entity is on screen if (OnScreen(this)) CSoundManager::SoundManager.Play(FX_JUMP); return true; }
int Run() { _Status = Server_Status::SERVER_RUNNING; _ServerNetworkDriver.Start(); _HttpsServerNetworkDriver.Start(); _Clipboard = std::make_unique<Capturing::Clipboard>(&_Config->Share_Clipboard, [&](const char* c, int len) { _ServerNetworkDriver.SendClipboardText(nullptr, c, static_cast<unsigned int>(len)); }); #if !__ANDROID__ auto mouseimg(Input::get_MouseImage()); auto mousepos(Input::get_MousePosition()); auto mouseimgtimer = std::chrono::steady_clock::now(); auto mousepostimer = std::chrono::steady_clock::now(); auto screenimg(Capturing::get_ScreenImage()); auto screenimgtimer = std::chrono::steady_clock::now(); #endif while (_Keepgoing) { #if !__ANDROID__ auto curtime = std::chrono::steady_clock::now(); if (_ServerNetworkDriver.ClientCount() > 0) { //check mouse img first if (std::chrono::duration_cast<std::chrono::milliseconds>(curtime - mouseimgtimer).count() > _Config->MouseImageCaptureRate && is_ready(mouseimg)) { OnMouseImg(mouseimg.get()); mouseimg = Input::get_MouseImage(); mouseimgtimer = curtime; } //check mouse pos next if (std::chrono::duration_cast<std::chrono::milliseconds>(curtime - mousepostimer).count() > _Config->MousePositionCaptureRate && is_ready(mousepos)) { OnMousePos(mousepos.get()); mousepos = Input::get_MousePosition(); mousepostimer = curtime; } //check screen next if (std::chrono::duration_cast<std::chrono::milliseconds>(curtime - screenimgtimer).count() > _Config->ScreenImageCaptureRate && is_ready(screenimg)) { OnScreen(screenimg.get()); screenimg = Capturing::get_ScreenImage(); screenimgtimer = curtime; } } #endif std::this_thread::sleep_for(std::chrono::milliseconds(50)); } _HttpsServerNetworkDriver.Stop(); _ServerNetworkDriver.Stop(); _Status = Server_Status::SERVER_STOPPED; return 0; }