--- a/src/Network/Client.cc Sun Dec 07 00:12:04 2008 +0000
+++ b/src/Network/Client.cc Sun Dec 07 00:27:30 2008 +0000
@@ -122,6 +122,7 @@
// receive position updates
slots.connect(obj->sig_message(NETMSG_PLAYER_POSITION), this, &NetworkClientPlayerHelper::on_position);
slots.connect(obj->sig_message(NETMSG_PLAYER_DIG), this, &NetworkClientPlayerHelper::on_dig);
+ slots.connect(obj->sig_message(NETMSG_PLAYER_WEAPON_CHANGE), this, &NetworkClientPlayerHelper::on_weapon_change);
}
void NetworkClientPlayerHelper::on_position (NetworkPacketInput &pkt) {
@@ -145,6 +146,14 @@
// just update...
handleDig(position, radius);
}
+
+void NetworkClientPlayerHelper::on_weapon_change (NetworkPacketInput &pkt) {
+ uint8_t weapon_index = pkt.read_uint8();
+
+ Engine::log(INFO, "client_player.on_weapon_change") << "obj=" << obj << ", weapon_index=" << weapon_index;
+
+ handleChangeWeapon(weapon_index);
+}
NetworkClientLocalPlayer::NetworkClientLocalPlayer (NetworkClient &client, NetworkObject_Client *obj, Vector position) :
Player(client.state, position, true), NetworkClientPlayerHelper(client, position, obj) {