struct gameserver_client *joiner = &gameserver.clients[index];
netmsg_playerjoin join = { .inetmsg_id = k_inetmsg_playerjoin,
- .index = index };
+ .index = index,
+ .steamid = joiner->steamid };
+
gameserver_send_to_all( index, &join, sizeof(join),
k_nSteamNetworkingSend_Reliable );
/* join */
netmsg_playerjoin init = { .inetmsg_id = k_inetmsg_playerjoin,
- .index = i };
+ .index = i,
+ .steamid = client->steamid };
gameserver_send_to_client( index, &init, sizeof(init),
k_nSteamNetworkingSend_Reliable );
return;
}
- netmsg_playerjoin leave;
+ netmsg_playerleave leave;
leave.inetmsg_id = k_inetmsg_playerleave;
leave.index = index;
gameserver_send_to_all( client_id, prop, msg->m_cbSize,
k_nSteamNetworkingSend_Reliable );
}
+ else if( tmp->inetmsg_id == k_inetmsg_chat ){
+ netmsg_chat *chat = msg->m_pData,
+ *prop = alloca( sizeof(netmsg_chat) + NETWORK_MAX_CHAT );
+ prop->inetmsg_id = k_inetmsg_chat;
+ prop->client = client_id;
+
+ u32 l = network_msgstring( chat->msg, msg->m_cbSize, sizeof(netmsg_chat),
+ prop->msg, NETWORK_MAX_CHAT );
+ vg_info( "[%d]: %s\n", client_id, prop->msg );
+
+ gameserver_send_to_all( client_id, prop, sizeof(netmsg_chat)+l,
+ k_nSteamNetworkingSend_Reliable );
+ }
else {
vg_warn( "Unknown inetmsg_id recieved from client. (%u)\n",
tmp->inetmsg_id );