From c90ec19afcfc826a077ed300fc2a9f8347d9b1e6 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Fri, 20 Feb 2015 00:16:20 +0300 Subject: add packet to get state from client. --- src/map/data/session.c | 1 + src/map/init.c | 1 + src/map/parse.c | 6 ++++++ src/map/parse.h | 1 + src/map/struct/sessionext.h | 1 + 5 files changed, 10 insertions(+) (limited to 'src/map') diff --git a/src/map/data/session.c b/src/map/data/session.c index fd1c0d5..81fe697 100644 --- a/src/map/data/session.c +++ b/src/map/data/session.c @@ -42,5 +42,6 @@ struct SessionExt *session_create(void) return NULL; data->clientVersion = 0; data->language = 0; + data->state = 0; return data; } diff --git a/src/map/init.c b/src/map/init.c index c00c884..e5dff10 100644 --- a/src/map/init.c +++ b/src/map/init.c @@ -109,6 +109,7 @@ HPExport void plugin_init (void) addPacket(0xb09, 26, map_parse_part_channel, hpClif_Parse); addPacket(0xb0c, -1, map_parse_pet_say, hpClif_Parse); addPacket(0xb0d, 3, map_parse_pet_emote, hpClif_Parse); + addPacket(0xb0e, 4, map_parse_set_status, hpClif_Parse); addHookPre("pc->readparam", epc_readparam_pre); addHookPre("pc->setregistry", epc_setregistry); addHookPre("pc->equipitem_pos", epc_equipitem_pos); diff --git a/src/map/parse.c b/src/map/parse.c index bf3f296..7044197 100644 --- a/src/map/parse.c +++ b/src/map/parse.c @@ -124,3 +124,9 @@ void map_parse_pet_emote(int fd) sd->emotionlasttime = t; send_pet_emote(sd, RFIFOB(fd, 2)); } + +void map_parse_set_status(int fd) +{ + struct SessionExt *data = session_get(fd); + data->state = RFIFOB(fd, 2); +} diff --git a/src/map/parse.h b/src/map/parse.h index eaa3e37..75a0392 100644 --- a/src/map/parse.h +++ b/src/map/parse.h @@ -9,5 +9,6 @@ void map_parse_join_channel(int fd); void map_parse_part_channel(int fd); void map_parse_pet_say(int fd); void map_parse_pet_emote(int fd); +void map_parse_set_status(int fd); #endif // EVOL_MAP_PARSE diff --git a/src/map/struct/sessionext.h b/src/map/struct/sessionext.h index cd94393..c742faa 100644 --- a/src/map/struct/sessionext.h +++ b/src/map/struct/sessionext.h @@ -8,6 +8,7 @@ struct SessionExt { int clientVersion; int language; + uint8 state; }; #endif // EVOL_MAP_SESSIONEXT -- cgit v1.2.3-60-g2f50