Moved the hover logic to the server
This commit is contained in:
parent
8ed2688095
commit
116f066a80
@ -210,6 +210,7 @@ void Client::update(double elapsed_time)
|
||||
client_packet >> m_players[player_index]->direction;
|
||||
client_packet >> m_players[player_index]->x;
|
||||
client_packet >> m_players[player_index]->y;
|
||||
client_packet >> m_players[player_index]->hover;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -286,15 +287,6 @@ void Client::update(double elapsed_time)
|
||||
}
|
||||
}
|
||||
|
||||
/* decrease player hover when not over a tile */
|
||||
if (m_map.get_tile_at(m_players[m_current_player]->x,
|
||||
m_players[m_current_player]->y).isNull())
|
||||
{
|
||||
m_players[m_current_player]->hover -= elapsed_time / 10;
|
||||
if (m_players[m_current_player]->hover < 0)
|
||||
m_players[m_current_player]->hover = 0;
|
||||
}
|
||||
|
||||
m_player_dir_x = cos(m_players[m_current_player]->direction);
|
||||
m_player_dir_y = sin(m_players[m_current_player]->direction);
|
||||
|
||||
|
@ -166,6 +166,17 @@ void Server::update( double elapsed_time )
|
||||
|
||||
if(m_players[pindex]->m_client->disconnect == CONNECTED)
|
||||
{
|
||||
/* decrease player hover when not over a tile */
|
||||
if((m_players[pindex]->hover > 0) &&
|
||||
(m_map.get_tile_at(m_players[pindex]->x, m_players[pindex]->y).isNull()))
|
||||
{
|
||||
m_players[pindex]->hover -= elapsed_time / 10;
|
||||
if (m_players[pindex]->hover < 0)
|
||||
{
|
||||
m_players[pindex]->hover = 0;
|
||||
}
|
||||
m_players[pindex]->updated = true;
|
||||
}
|
||||
if (KEY_PRESSED == m_players[pindex]->a_pressed)
|
||||
{
|
||||
double direction = m_players[pindex]->direction + M_PI_2;
|
||||
@ -211,6 +222,7 @@ void Server::update( double elapsed_time )
|
||||
server_packet << m_players[pindex]->direction;
|
||||
server_packet << m_players[pindex]->x;
|
||||
server_packet << m_players[pindex]->y;
|
||||
server_packet << m_players[pindex]->hover;
|
||||
m_net_server->sendData(server_packet);
|
||||
m_players[pindex]->updated = false;
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
#include "Player.h"
|
||||
#include "refptr.h"
|
||||
#include "SFML/Config.hpp"
|
||||
#include "Map.h"
|
||||
|
||||
class Server{
|
||||
public:
|
||||
@ -14,4 +15,5 @@ class Server{
|
||||
refptr<Network> m_net_server;
|
||||
std::map<sf::Uint8, refptr<Player> > m_players;
|
||||
sf::Clock m_clock;
|
||||
Map m_map;
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user