mirror of
https://github.com/ddnet/ddnet.git
synced 2024-11-10 01:58:19 +00:00
join and quit messages
This commit is contained in:
parent
3cbaf193c7
commit
8bfaea274e
|
@ -411,6 +411,13 @@ void chat_add_line(int client_id, const char *line)
|
||||||
sprintf(chat_lines[chat_current_line].text, "%s: %s", client_datas[client_id].name, line); // TODO: abit nasty
|
sprintf(chat_lines[chat_current_line].text, "%s: %s", client_datas[client_id].name, line); // TODO: abit nasty
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void status_add_line(const char *line)
|
||||||
|
{
|
||||||
|
chat_current_line = (chat_current_line+1)%chat_max_lines;
|
||||||
|
chat_lines[chat_current_line].tick = client_tick();
|
||||||
|
strcpy(chat_lines[chat_current_line].text, line);
|
||||||
|
}
|
||||||
|
|
||||||
struct killmsg
|
struct killmsg
|
||||||
{
|
{
|
||||||
int weapon;
|
int weapon;
|
||||||
|
@ -1808,4 +1815,18 @@ void modc_message(int msg)
|
||||||
killmsgs[killmsg_current].weapon = msg_unpack_int();
|
killmsgs[killmsg_current].weapon = msg_unpack_int();
|
||||||
killmsgs[killmsg_current].tick = client_tick();
|
killmsgs[killmsg_current].tick = client_tick();
|
||||||
}
|
}
|
||||||
|
else if(msg == MSG_JOIN)
|
||||||
|
{
|
||||||
|
int cid = msg_unpack_int();
|
||||||
|
char message[256];
|
||||||
|
sprintf(message, "%s joined the game", client_datas[cid].name);
|
||||||
|
status_add_line(message);
|
||||||
|
}
|
||||||
|
else if(msg == MSG_QUIT)
|
||||||
|
{
|
||||||
|
int cid = msg_unpack_int();
|
||||||
|
char message[256];
|
||||||
|
sprintf(message, "%s quit the game", client_datas[cid].name);
|
||||||
|
status_add_line(message);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,6 +51,8 @@ enum
|
||||||
MSG_SETNAME,
|
MSG_SETNAME,
|
||||||
MSG_KILLMSG,
|
MSG_KILLMSG,
|
||||||
MSG_SWITCHTEAM,
|
MSG_SWITCHTEAM,
|
||||||
|
MSG_JOIN,
|
||||||
|
MSG_QUIT,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum
|
enum
|
||||||
|
|
|
@ -1753,10 +1753,13 @@ void mods_client_enter(int client_id)
|
||||||
server_send_msg(client_id);
|
server_send_msg(client_id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mods_message(MSG_JOIN, client_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
void mods_client_drop(int client_id)
|
void mods_client_drop(int client_id)
|
||||||
{
|
{
|
||||||
|
mods_message(MSG_QUIT, client_id);
|
||||||
dbg_msg("mods", "client drop %d", client_id);
|
dbg_msg("mods", "client drop %d", client_id);
|
||||||
world.remove_entity(&players[client_id]);
|
world.remove_entity(&players[client_id]);
|
||||||
players[client_id].client_id = -1;
|
players[client_id].client_id = -1;
|
||||||
|
@ -1779,6 +1782,20 @@ void mods_message(int msg, int client_id)
|
||||||
players[client_id].die(client_id, -1);
|
players[client_id].die(client_id, -1);
|
||||||
players[client_id].score--;
|
players[client_id].score--;
|
||||||
}
|
}
|
||||||
|
else if (msg == MSG_JOIN)
|
||||||
|
{
|
||||||
|
msg_pack_start(MSG_JOIN, MSGFLAG_VITAL);
|
||||||
|
msg_pack_int(client_id);
|
||||||
|
msg_pack_end();
|
||||||
|
server_send_msg(-1);
|
||||||
|
}
|
||||||
|
else if (msg == MSG_QUIT)
|
||||||
|
{
|
||||||
|
msg_pack_start(MSG_QUIT, MSGFLAG_VITAL);
|
||||||
|
msg_pack_int(client_id);
|
||||||
|
msg_pack_end();
|
||||||
|
server_send_msg(-1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
extern unsigned char internal_data[];
|
extern unsigned char internal_data[];
|
||||||
|
|
Loading…
Reference in a new issue