src/proto2/NetworkClient.cc
changeset 26 5685602aeb9c
parent 25 af75a1894a32
child 28 3da59a3bc92e
equal deleted inserted replaced
25:af75a1894a32 26:5685602aeb9c
    93     // XXX: leak because deleting the slot while it's being called breaks ClanLib
    93     // XXX: leak because deleting the slot while it's being called breaks ClanLib
    94     //  delete player;
    94     //  delete player;
    95 }
    95 }
    96 
    96 
    97 NetworkClientLocalPlayer::NetworkClientLocalPlayer (NetworkClient &client, CL_NetObject_Client &obj, Coordinate initial_position) :
    97 NetworkClientLocalPlayer::NetworkClientLocalPlayer (NetworkClient &client, CL_NetObject_Client &obj, Coordinate initial_position) :
    98     LocalPlayer(initial_position, true), client(client), obj(obj) {
    98     LocalPlayer(client.state, initial_position, true), client(client), obj(obj) {
    99     
    99     
   100     // receive messages
   100     // receive messages
   101     slots.connect(obj.sig_received_message(NETMSG_PLAYER_POSITION), this, &NetworkClientLocalPlayer::on_position);
   101     slots.connect(obj.sig_received_message(NETMSG_PLAYER_POSITION), this, &NetworkClientLocalPlayer::on_position);
   102 }
   102 }
   103         
   103         
   123     
   123     
   124     updatePosition(pos);
   124     updatePosition(pos);
   125 }
   125 }
   126         
   126         
   127 NetworkClientRemotePlayer::NetworkClientRemotePlayer (NetworkClient &client, CL_NetObject_Client &obj, Coordinate initial_position) :
   127 NetworkClientRemotePlayer::NetworkClientRemotePlayer (NetworkClient &client, CL_NetObject_Client &obj, Coordinate initial_position) :
   128     RemotePlayer(initial_position, true), client(client), obj(obj) {
   128     RemotePlayer(client.state, initial_position, true), client(client), obj(obj) {
   129     
   129     
   130     // receive messages
   130     // receive messages
   131     slots.connect(obj.sig_received_message(NETMSG_PLAYER_POSITION), this, &NetworkClientRemotePlayer::on_position);
   131     slots.connect(obj.sig_received_message(NETMSG_PLAYER_POSITION), this, &NetworkClientRemotePlayer::on_position);
   132     slots.connect(obj.sig_received_message(NETMSG_PLAYER_QUIT), this, &NetworkClientRemotePlayer::on_quit);
   132     slots.connect(obj.sig_received_message(NETMSG_PLAYER_QUIT), this, &NetworkClientRemotePlayer::on_quit);
   133 }
   133 }