Commit 7e584bb9 authored by nanahira's avatar nanahira

add CTOS_HOSTNAME

parent 7ff76322
......@@ -117,6 +117,11 @@ void DuelClient::ClientRead(bufferevent* bev, void* ctx) {
void DuelClient::ClientEvent(bufferevent* bev, short events, void* ctx) {
if (events & BEV_EVENT_CONNECTED) {
bool create_game = (intptr_t)ctx;
if(!create_game) {
uint16_t msgbuf[LEN_HOSTNAME];
int len = BufferIO::CopyCharArray(mainGame->ebJoinHost->getText(), msgbuf);
DuelClient::SendBufferToServer(CTOS_HOSTNAME, msgbuf, (len + 1) * sizeof(uint16_t));
}
CTOS_PlayerInfo cspi;
BufferIO::CopyCharArray(mainGame->ebNickName->getText(), cspi.name);
SendPacketToServer(CTOS_PLAYER_INFO, cspi);
......
......@@ -253,6 +253,10 @@ void NetServer::HandleCTOSPacket(DuelPlayer* dp, unsigned char* data, int len) {
BufferIO::CopyCharArray(pkt->name, dp->name);
break;
}
case CTOS_HOSTNAME: {
// for other server impl use only
break;
}
case CTOS_CREATE_GAME: {
if(dp->game || duel_mode)
return;
......
......@@ -164,6 +164,13 @@ constexpr int LEN_CHAT_PLAYER = 1;
constexpr int LEN_CHAT_MSG = 256;
constexpr int SIZE_STOC_CHAT = (LEN_CHAT_PLAYER + LEN_CHAT_MSG) * sizeof(uint16_t);
/*
* STOC_HOSTNAME
* uint16_t hostname[256]; (UTF-16 string)
*/
constexpr int LEN_HOSTNAME = 256;
struct STOC_HS_PlayerEnter {
uint16_t name[20]{};
uint8_t pos{};
......@@ -269,6 +276,7 @@ public:
#define CTOS_SURRENDER 0x14 // no data
#define CTOS_TIME_CONFIRM 0x15 // no data
#define CTOS_CHAT 0x16 // uint16_t array
#define CTOS_HOSTNAME 0x17 // uint16_t array
#define CTOS_HS_TODUELIST 0x20 // no data
#define CTOS_HS_TOOBSERVER 0x21 // no data
#define CTOS_HS_READY 0x22 // no data
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment