1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

Client & ClientEnvirnment: don't create fake events (#5676)

Instead of create fake events on the stack on each loop call (Game::run), verify is queue is empty or not and handle event directly if there is.

This prevents fake ClientEvent creation & memory allocations

Same fix is also applied on ClientEnvironment, & rename getClientEvent to getClientEnvEvent to match ClientEnvEvent object
This commit is contained in:
Loïc Blot 2017-04-29 17:25:25 +02:00 committed by GitHub
parent f727f54192
commit 3db66b4531
5 changed files with 27 additions and 33 deletions

View file

@ -3055,11 +3055,10 @@ inline void Game::step(f32 *dtime)
void Game::processClientEvents(CameraOrientation *cam)
{
ClientEvent event = client->getClientEvent();
LocalPlayer *player = client->getEnv().getLocalPlayer();
for ( ; event.type != CE_NONE; event = client->getClientEvent()) {
while (client->hasClientEvents()) {
ClientEvent event = client->getClientEvent();
switch (event.type) {
case CE_PLAYER_DAMAGE: