[1] | 1 | // Copyright (c) Athena Dev Teams - Licensed under GNU GPL |
---|
| 2 | // For more information, see LICENCE in the main folder |
---|
| 3 | |
---|
| 4 | #ifndef _CLIF_H_ |
---|
| 5 | #define _CLIF_H_ |
---|
| 6 | |
---|
| 7 | #include "../common/cbasetypes.h" |
---|
| 8 | //#include "../common/mmo.h" |
---|
| 9 | struct storage; |
---|
| 10 | struct guild_storage; |
---|
| 11 | //#include "map.h" |
---|
| 12 | struct block_list; |
---|
| 13 | struct unit_data; |
---|
| 14 | struct map_session_data; |
---|
| 15 | struct homun_data; |
---|
| 16 | struct pet_data; |
---|
| 17 | struct mob_data; |
---|
| 18 | struct npc_data; |
---|
| 19 | struct chat_data; |
---|
| 20 | struct flooritem_data; |
---|
| 21 | struct skill_unit; |
---|
| 22 | struct s_vending; |
---|
| 23 | struct party; |
---|
| 24 | struct party_data; |
---|
| 25 | struct guild; |
---|
| 26 | struct quest; |
---|
| 27 | #include <stdarg.h> |
---|
| 28 | |
---|
| 29 | // server->client protocol version |
---|
| 30 | // 0 - pre-? |
---|
| 31 | // 1 - ? - 0x196 |
---|
| 32 | // 2 - ? - 0x78, 0x79 |
---|
| 33 | // 3 - ? - 0x1c8, 0x1c9, 0x1de |
---|
| 34 | // 4 - ? - 0x1d7, 0x1d8, 0x1d9, 0x1da |
---|
| 35 | // 5 - 2003-12-18aSakexe+ - 0x1ee, 0x1ef, 0x1f0, ?0x1c4, 0x1c5? |
---|
| 36 | // 6 - 2004-03-02aSakexe+ - 0x1f4, 0x1f5 |
---|
| 37 | // 7 - 2005-04-11aSakexe+ - 0x229, 0x22a, 0x22b, 0x22c |
---|
| 38 | // 20070521 - 2007-05-21aSakexe+ - 0x283 |
---|
| 39 | // 20070821 - 2007-08-21aSakexe+ - 0x2c5 |
---|
| 40 | // 20070918 - 2007-09-18aSakexe+ - 0x2d7, 0x2d9, 0x2da |
---|
| 41 | // 20071106 - 2007-11-06aSakexe+ - 0x78, 0x7c, 0x22c |
---|
| 42 | #ifndef PACKETVER |
---|
| 43 | #define PACKETVER 20071106 |
---|
| 44 | #endif |
---|
| 45 | // backward compatible PACKETVER 8 and 9 |
---|
| 46 | #if PACKETVER == 8 |
---|
| 47 | #undef PACKETVER |
---|
| 48 | #define PACKETVER 20070521 |
---|
| 49 | #endif |
---|
| 50 | #if PACKETVER == 9 |
---|
| 51 | #undef PACKETVER |
---|
| 52 | #define PACKETVER 20071106 |
---|
| 53 | #endif |
---|
| 54 | |
---|
| 55 | // packet DB |
---|
| 56 | #define MAX_PACKET_DB 0x400 |
---|
| 57 | #define MAX_PACKET_VER 22 |
---|
| 58 | |
---|
| 59 | struct s_packet_db { |
---|
| 60 | short len; |
---|
| 61 | void (*func)(int, struct map_session_data *); |
---|
| 62 | short pos[20]; |
---|
| 63 | }; |
---|
| 64 | |
---|
| 65 | // packet_db[SERVER] is reserved for server use |
---|
| 66 | #define SERVER 0 |
---|
| 67 | #define packet_len(cmd) packet_db[SERVER][cmd].len |
---|
| 68 | extern struct s_packet_db packet_db[MAX_PACKET_VER+1][MAX_PACKET_DB+1]; |
---|
| 69 | |
---|
| 70 | // local define |
---|
| 71 | typedef enum send_target { |
---|
| 72 | ALL_CLIENT, |
---|
| 73 | ALL_SAMEMAP, |
---|
| 74 | AREA, // area |
---|
| 75 | AREA_WOS, // area, without self |
---|
| 76 | AREA_WOC, // area, without chatrooms |
---|
| 77 | AREA_WOSC, // area, without own chatroom |
---|
| 78 | AREA_CHAT_WOC, // hearable area, without chatrooms |
---|
| 79 | CHAT, // current chatroom |
---|
| 80 | CHAT_WOS, // current chatroom, without self |
---|
| 81 | PARTY, |
---|
| 82 | PARTY_WOS, |
---|
| 83 | PARTY_SAMEMAP, |
---|
| 84 | PARTY_SAMEMAP_WOS, |
---|
| 85 | PARTY_AREA, |
---|
| 86 | PARTY_AREA_WOS, |
---|
| 87 | GUILD, |
---|
| 88 | GUILD_WOS, |
---|
| 89 | GUILD_SAMEMAP, |
---|
| 90 | GUILD_SAMEMAP_WOS, |
---|
| 91 | GUILD_AREA, |
---|
| 92 | GUILD_AREA_WOS, |
---|
| 93 | DUEL, |
---|
| 94 | DUEL_WOS, |
---|
| 95 | CHAT_MAINCHAT, // everyone on main chat |
---|
| 96 | SELF, |
---|
| 97 | } send_target; |
---|
| 98 | |
---|
| 99 | int clif_setip(const char* ip); |
---|
| 100 | void clif_setbindip(const char* ip); |
---|
| 101 | void clif_setport(uint16 port); |
---|
| 102 | |
---|
| 103 | uint32 clif_getip(void); |
---|
| 104 | uint32 clif_refresh_ip(void); |
---|
| 105 | uint16 clif_getport(void); |
---|
| 106 | |
---|
| 107 | int clif_authok(struct map_session_data *); |
---|
| 108 | int clif_authfail_fd(int fd,int type); |
---|
| 109 | int clif_charselectok(int); |
---|
| 110 | int clif_dropflooritem(struct flooritem_data *); |
---|
| 111 | int clif_clearflooritem(struct flooritem_data *,int); |
---|
| 112 | |
---|
| 113 | int clif_clearunit_single(int id, uint8 type, int fd); |
---|
| 114 | int clif_clearunit_area(struct block_list* bl, uint8 type); |
---|
| 115 | int clif_clearunit_delayed(struct block_list* bl, unsigned int tick); |
---|
| 116 | int clif_spawn(struct block_list*); //area |
---|
| 117 | int clif_walkok(struct map_session_data*); // self |
---|
| 118 | void clif_move(struct unit_data *ud); //area |
---|
| 119 | void clif_changemap(struct map_session_data*,short,int,int); //self |
---|
| 120 | void clif_changemapserver(struct map_session_data* sd, unsigned short map_index, int x, int y, uint32 ip, uint16 port); //self |
---|
| 121 | int clif_blown(struct block_list *); // area |
---|
| 122 | int clif_slide(struct block_list *,int,int); // area |
---|
| 123 | int clif_fixpos(struct block_list *); // area |
---|
| 124 | int clif_npcbuysell(struct map_session_data*,int); //self |
---|
| 125 | int clif_buylist(struct map_session_data*,struct npc_data*); //self |
---|
| 126 | int clif_selllist(struct map_session_data*); //self |
---|
| 127 | int clif_scriptmes(struct map_session_data*,int,const char*); //self |
---|
| 128 | int clif_scriptnext(struct map_session_data*,int); //self |
---|
| 129 | int clif_scriptclose(struct map_session_data*,int); //self |
---|
| 130 | int clif_scriptmenu(struct map_session_data* sd, int npcid, const char* mes); //self |
---|
| 131 | int clif_scriptinput(struct map_session_data*,int); //self |
---|
| 132 | int clif_scriptinputstr(struct map_session_data *sd,int npcid); // self |
---|
| 133 | int clif_cutin(struct map_session_data* sd, const char* image, int type); //self |
---|
| 134 | int clif_viewpoint(struct map_session_data*,int,int,int,int,int,int); //self |
---|
| 135 | int clif_additem(struct map_session_data *sd, int n, int amount, int fail); // self |
---|
| 136 | int clif_delitem(struct map_session_data*,int,int); //self |
---|
| 137 | int clif_updatestatus(struct map_session_data*,int); //self |
---|
| 138 | int clif_changestatus(struct block_list*,int,int); //area |
---|
| 139 | int clif_damage(struct block_list* src,struct block_list *dst,unsigned int tick,int sdelay,int ddelay,int damage,int div,int type,int damage2); // area |
---|
| 140 | void clif_takeitem(struct block_list* src,struct block_list* dst); |
---|
| 141 | void clif_sitting(struct block_list* bl); |
---|
| 142 | void clif_standing(struct block_list* bl); |
---|
| 143 | void clif_changelook(struct block_list *bl,int type,int val); // area |
---|
| 144 | void clif_changetraplook(struct block_list *bl,int val); // area |
---|
| 145 | void clif_refreshlook(struct block_list *bl,int id,int type,int val,enum send_target target); //area specified in 'target' |
---|
| 146 | int clif_arrowequip(struct map_session_data *sd,int val); //self |
---|
| 147 | int clif_arrow_fail(struct map_session_data *sd,int type); //self |
---|
| 148 | int clif_arrow_create_list(struct map_session_data *sd); //self |
---|
| 149 | int clif_statusupack(struct map_session_data *,int,int,int); // self |
---|
| 150 | int clif_equipitemack(struct map_session_data *,int,int,int); // self |
---|
| 151 | int clif_unequipitemack(struct map_session_data *,int,int,int); // self |
---|
| 152 | int clif_misceffect(struct block_list*,int); // area |
---|
| 153 | int clif_misceffect2(struct block_list *bl,int type); |
---|
| 154 | int clif_changeoption(struct block_list*); // area |
---|
| 155 | int clif_changeoption2(struct block_list*); // area |
---|
| 156 | int clif_useitemack(struct map_session_data*,int,int,int); // self |
---|
| 157 | void clif_GlobalMessage(struct block_list* bl, const char* message); |
---|
| 158 | void clif_createchat(struct map_session_data* sd, int fail); // self |
---|
| 159 | int clif_dispchat(struct chat_data*,int); // area or fd |
---|
| 160 | int clif_joinchatfail(struct map_session_data*,int); // self |
---|
| 161 | int clif_joinchatok(struct map_session_data*,struct chat_data*); // self |
---|
| 162 | int clif_addchat(struct chat_data*,struct map_session_data*); // chat |
---|
| 163 | void clif_changechatowner(struct chat_data* cd, struct map_session_data* sd); // chat |
---|
| 164 | int clif_clearchat(struct chat_data*,int); // area or fd |
---|
| 165 | void clif_leavechat(struct chat_data* cd, struct map_session_data* sd, bool flag); // chat |
---|
| 166 | int clif_changechatstatus(struct chat_data*); // chat |
---|
| 167 | int clif_refresh(struct map_session_data*); // self |
---|
| 168 | |
---|
| 169 | int clif_fame_blacksmith(struct map_session_data *, int); |
---|
| 170 | int clif_fame_alchemist(struct map_session_data *, int); |
---|
| 171 | int clif_fame_taekwon(struct map_session_data *, int); |
---|
| 172 | |
---|
| 173 | void clif_emotion(struct block_list *bl,int type); |
---|
| 174 | void clif_talkiebox(struct block_list* bl, const char* talkie); |
---|
| 175 | void clif_wedding_effect(struct block_list *bl); |
---|
| 176 | void clif_divorced(struct map_session_data* sd, const char* name); |
---|
| 177 | //void clif_callpartner(struct map_session_data *sd); |
---|
| 178 | void clif_soundeffect(struct map_session_data* sd, struct block_list* bl, const char* name, int type); |
---|
| 179 | int clif_soundeffectall(struct block_list* bl, const char *name, int type, enum send_target coverage); |
---|
| 180 | void clif_parse_ActionRequest_sub(struct map_session_data *sd, int action_type, int target_id, unsigned int tick); |
---|
| 181 | void clif_parse_LoadEndAck(int fd,struct map_session_data *sd); |
---|
| 182 | void clif_hotkeys_send(struct map_session_data *sd); |
---|
| 183 | |
---|
| 184 | // trade |
---|
| 185 | void clif_traderequest(struct map_session_data* sd, const char* name); |
---|
| 186 | void clif_tradestart(struct map_session_data* sd, uint8 type); |
---|
| 187 | void clif_tradeadditem(struct map_session_data* sd, struct map_session_data* tsd, int index, int amount); |
---|
| 188 | void clif_tradeitemok(struct map_session_data* sd, int index, int fail); |
---|
| 189 | void clif_tradedeal_lock(struct map_session_data* sd, int fail); |
---|
| 190 | void clif_tradecancelled(struct map_session_data* sd); |
---|
| 191 | void clif_tradecompleted(struct map_session_data* sd, int fail); |
---|
| 192 | |
---|
| 193 | // storage |
---|
| 194 | #include "storage.h" |
---|
| 195 | void clif_storagelist(struct map_session_data *sd,struct storage *stor); |
---|
| 196 | int clif_updatestorageamount(struct map_session_data *sd,struct storage *stor); |
---|
| 197 | int clif_storageitemadded(struct map_session_data *sd,struct storage *stor,int index,int amount); |
---|
| 198 | int clif_storageitemremoved(struct map_session_data *sd,int index,int amount); |
---|
| 199 | int clif_storageclose(struct map_session_data *sd); |
---|
| 200 | void clif_guildstoragelist(struct map_session_data *sd,struct guild_storage *stor); |
---|
| 201 | int clif_updateguildstorageamount(struct map_session_data *sd,struct guild_storage *stor); |
---|
| 202 | int clif_guildstorageitemadded(struct map_session_data *sd,struct guild_storage *stor,int index,int amount); |
---|
| 203 | |
---|
| 204 | int clif_insight(struct block_list *,va_list); // map_forallinmovearea callback |
---|
| 205 | int clif_outsight(struct block_list *,va_list); // map_forallinmovearea callback |
---|
| 206 | |
---|
| 207 | int clif_class_change(struct block_list *bl,int class_,int type); |
---|
| 208 | #define clif_mob_class_change(md, class_) clif_class_change(&md->bl, class_, 1) |
---|
| 209 | int clif_mob_equip(struct mob_data *md,int nameid); // [Valaris] |
---|
| 210 | |
---|
| 211 | int clif_skillinfo(struct map_session_data *sd,int skillid,int type,int range); |
---|
| 212 | int clif_skillinfoblock(struct map_session_data *sd); |
---|
| 213 | int clif_skillup(struct map_session_data *sd,int skill_num); |
---|
| 214 | |
---|
| 215 | int clif_skillcasting(struct block_list* bl,int src_id,int dst_id,int dst_x,int dst_y,int skill_num,int pl,int casttime); |
---|
| 216 | int clif_skillcastcancel(struct block_list* bl); |
---|
| 217 | int clif_skill_fail(struct map_session_data *sd,int skill_id,int type,int btype); |
---|
| 218 | int clif_skill_damage(struct block_list *src,struct block_list *dst,unsigned int tick,int sdelay,int ddelay,int damage,int div,int skill_id,int skill_lv,int type); |
---|
| 219 | //int clif_skill_damage2(struct block_list *src,struct block_list *dst,unsigned int tick,int sdelay,int ddelay,int damage,int div,int skill_id,int skill_lv,int type); |
---|
| 220 | int clif_skill_nodamage(struct block_list *src,struct block_list *dst,int skill_id,int heal,int fail); |
---|
| 221 | int clif_skill_poseffect(struct block_list *src,int skill_id,int val,int x,int y,int tick); |
---|
| 222 | int clif_skill_estimation(struct map_session_data *sd,struct block_list *dst); |
---|
| 223 | void clif_skill_warppoint(struct map_session_data* sd, short skill_num, short skill_lv, unsigned short map1, unsigned short map2, unsigned short map3, unsigned short map4); |
---|
| 224 | void clif_skill_memomessage(struct map_session_data* sd, int type); |
---|
| 225 | void clif_skill_teleportmessage(struct map_session_data* sd, int type); |
---|
| 226 | int clif_skill_produce_mix_list(struct map_session_data *sd, int trigger); |
---|
| 227 | |
---|
| 228 | int clif_produceeffect(struct map_session_data* sd,int flag,int nameid); |
---|
| 229 | |
---|
| 230 | void clif_skill_setunit(struct skill_unit *unit); |
---|
| 231 | void clif_skill_delunit(struct skill_unit *unit); |
---|
| 232 | |
---|
| 233 | void clif_01ac(struct block_list* bl); |
---|
| 234 | |
---|
| 235 | int clif_autospell(struct map_session_data *sd,int skilllv); |
---|
| 236 | void clif_devotion(struct map_session_data *sd, struct map_session_data *tsd); |
---|
| 237 | int clif_spiritball(struct map_session_data *sd); |
---|
| 238 | int clif_combo_delay(struct block_list *src,int wait); |
---|
| 239 | int clif_bladestop(struct block_list *src,struct block_list *dst,int bool_); |
---|
| 240 | void clif_changemapcell(int fd, int m, int x, int y, int type, enum send_target target); |
---|
| 241 | |
---|
| 242 | int clif_status_load(struct block_list *bl,int type, int flag); |
---|
| 243 | int clif_status_change(struct block_list *bl,int type,int flag); |
---|
| 244 | |
---|
| 245 | int clif_wis_message(int fd, const char* nick, const char* mes, int mes_len); |
---|
| 246 | int clif_wis_end(int fd,int flag); |
---|
| 247 | |
---|
| 248 | int clif_solved_charname(int fd, int charid, const char* name); |
---|
| 249 | int clif_charnameack(int fd, struct block_list *bl); |
---|
| 250 | int clif_charnameupdate(struct map_session_data *ssd); |
---|
| 251 | |
---|
| 252 | int clif_use_card(struct map_session_data *sd,int idx); |
---|
| 253 | int clif_insert_card(struct map_session_data *sd,int idx_equip,int idx_card,int flag); |
---|
| 254 | |
---|
| 255 | void clif_inventorylist(struct map_session_data *sd); |
---|
| 256 | void clif_equiplist(struct map_session_data *sd); |
---|
| 257 | |
---|
| 258 | int clif_cart_additem(struct map_session_data*,int,int,int); |
---|
| 259 | int clif_cart_delitem(struct map_session_data*,int,int); |
---|
| 260 | void clif_cartlist(struct map_session_data *sd); |
---|
| 261 | void clif_clearcart(int fd); |
---|
| 262 | |
---|
| 263 | int clif_item_identify_list(struct map_session_data *sd); |
---|
| 264 | int clif_item_identified(struct map_session_data *sd,int idx,int flag); |
---|
| 265 | int clif_item_repair_list (struct map_session_data *sd, struct map_session_data *dstsd); |
---|
| 266 | int clif_item_repaireffect(struct map_session_data *sd, int nameid, int flag); |
---|
| 267 | int clif_item_refine_list(struct map_session_data *sd); |
---|
| 268 | |
---|
| 269 | int clif_item_skill(struct map_session_data *sd,int skillid,int skilllv); |
---|
| 270 | |
---|
| 271 | int clif_mvp_effect(struct map_session_data *sd); |
---|
| 272 | int clif_mvp_item(struct map_session_data *sd,int nameid); |
---|
| 273 | int clif_mvp_exp(struct map_session_data *sd, unsigned int exp); |
---|
| 274 | void clif_changed_dir(struct block_list *bl, enum send_target target); |
---|
| 275 | |
---|
| 276 | // vending |
---|
| 277 | void clif_openvendingreq(struct map_session_data* sd, int num); |
---|
| 278 | void clif_showvendingboard(struct block_list* bl, const char* message, int fd); |
---|
| 279 | void clif_closevendingboard(struct block_list* bl,int fd); |
---|
| 280 | void clif_vendinglist(struct map_session_data* sd,int id, struct s_vending* vending); |
---|
| 281 | void clif_buyvending(struct map_session_data* sd, int index, int amount, int fail); |
---|
| 282 | void clif_openvending(struct map_session_data* sd, int id, struct s_vending* vending); |
---|
| 283 | void clif_vendingreport(struct map_session_data* sd, int index, int amount); |
---|
| 284 | |
---|
| 285 | int clif_movetoattack(struct map_session_data *sd,struct block_list *bl); |
---|
| 286 | |
---|
| 287 | // party |
---|
| 288 | int clif_party_created(struct map_session_data *sd,int result); |
---|
| 289 | int clif_party_member_info(struct party_data *p, struct map_session_data *sd); |
---|
| 290 | int clif_party_info(struct party_data *p, struct map_session_data *sd); |
---|
| 291 | int clif_party_invite(struct map_session_data *sd,struct map_session_data *tsd); |
---|
| 292 | void clif_party_inviteack(struct map_session_data* sd, const char* nick, int flag); |
---|
| 293 | int clif_party_option(struct party_data *p,struct map_session_data *sd,int flag); |
---|
| 294 | int clif_party_leaved(struct party_data* p, struct map_session_data* sd, int account_id, const char* name, int flag); |
---|
| 295 | int clif_party_message(struct party_data* p, int account_id, const char* mes, int len); |
---|
| 296 | void clif_party_move(struct party* p, struct map_session_data* sd, int online); |
---|
| 297 | int clif_party_xy(struct map_session_data *sd); |
---|
| 298 | int clif_party_xy_single(int fd, struct map_session_data *sd); |
---|
| 299 | int clif_party_hp(struct map_session_data *sd); |
---|
| 300 | void clif_hpmeter_single(int fd, int id, unsigned int hp, unsigned int maxhp); |
---|
| 301 | int clif_hpmeter(struct map_session_data *sd); |
---|
| 302 | |
---|
| 303 | // guild |
---|
| 304 | int clif_guild_created(struct map_session_data *sd,int flag); |
---|
| 305 | int clif_guild_belonginfo(struct map_session_data *sd,struct guild *g); |
---|
| 306 | int clif_guild_masterormember(struct map_session_data *sd); |
---|
| 307 | int clif_guild_basicinfo(struct map_session_data *sd); |
---|
| 308 | int clif_guild_allianceinfo(struct map_session_data *sd); |
---|
| 309 | int clif_guild_memberlist(struct map_session_data *sd); |
---|
| 310 | int clif_guild_skillinfo(struct map_session_data *sd); |
---|
| 311 | int clif_guild_send_onlineinfo(struct map_session_data *sd); //[LuzZza] |
---|
| 312 | int clif_guild_memberlogin_notice(struct guild *g,int idx,int flag); |
---|
| 313 | int clif_guild_invite(struct map_session_data *sd,struct guild *g); |
---|
| 314 | int clif_guild_inviteack(struct map_session_data *sd,int flag); |
---|
| 315 | int clif_guild_leave(struct map_session_data *sd,const char *name,const char *mes); |
---|
| 316 | int clif_guild_expulsion(struct map_session_data *sd,const char *name,const char *mes,int account_id); |
---|
| 317 | int clif_guild_positionchanged(struct guild *g,int idx); |
---|
| 318 | int clif_guild_memberpositionchanged(struct guild *g,int idx); |
---|
| 319 | int clif_guild_emblem(struct map_session_data *sd,struct guild *g); |
---|
| 320 | void clif_guild_emblem_area(struct block_list* bl); |
---|
| 321 | int clif_guild_notice(struct map_session_data *sd,struct guild *g); |
---|
| 322 | int clif_guild_message(struct guild *g,int account_id,const char *mes,int len); |
---|
| 323 | int clif_guild_skillup(struct map_session_data *sd,int skill_num,int lv); |
---|
| 324 | int clif_guild_reqalliance(struct map_session_data *sd,int account_id,const char *name); |
---|
| 325 | int clif_guild_allianceack(struct map_session_data *sd,int flag); |
---|
| 326 | int clif_guild_delalliance(struct map_session_data *sd,int guild_id,int flag); |
---|
| 327 | int clif_guild_oppositionack(struct map_session_data *sd,int flag); |
---|
| 328 | int clif_guild_broken(struct map_session_data *sd,int flag); |
---|
| 329 | int clif_guild_xy(struct map_session_data *sd); |
---|
| 330 | int clif_guild_xy_single(int fd, struct map_session_data *sd); |
---|
| 331 | int clif_guild_xy_remove(struct map_session_data *sd); |
---|
| 332 | |
---|
| 333 | |
---|
| 334 | // atcommand |
---|
| 335 | int clif_displaymessage(const int fd,const char* mes); |
---|
| 336 | int clif_disp_onlyself(struct map_session_data *sd,const char *mes,int len); |
---|
| 337 | void clif_disp_message(struct block_list* src, const char* mes, int len, enum send_target target); |
---|
| 338 | int clif_GMmessage(struct block_list* bl, const char* mes, int len, int flag); |
---|
| 339 | void clif_MainChatMessage(const char* message); //luzza |
---|
| 340 | int clif_announce(struct block_list *bl, const char* mes, int len, unsigned long color, int flag); |
---|
| 341 | int clif_announce_ex(struct block_list *bl, const char* mes, int len, unsigned long color, int flag, int size); |
---|
| 342 | int clif_heal(int fd,int type,int val); |
---|
| 343 | int clif_resurrection(struct block_list *bl,int type); |
---|
| 344 | void clif_set0199(struct map_session_data* sd, int mode); |
---|
| 345 | int clif_pvpset(struct map_session_data *sd, int pvprank, int pvpnum,int type); |
---|
| 346 | int clif_send0199(int map,int type); |
---|
| 347 | void clif_refine(int fd, int fail, int index, int val); |
---|
| 348 | void clif_upgrademessage(int fd, int result, int item_id); |
---|
| 349 | |
---|
| 350 | //petsystem |
---|
| 351 | int clif_catch_process(struct map_session_data *sd); |
---|
| 352 | int clif_pet_roulette(struct map_session_data *sd,int data); |
---|
| 353 | int clif_sendegg(struct map_session_data *sd); |
---|
| 354 | int clif_send_petstatus(struct map_session_data *sd); |
---|
| 355 | int clif_send_petdata(struct map_session_data *sd, struct pet_data* pd, int type, int param); |
---|
| 356 | #define clif_pet_equip(sd, pd) clif_send_petdata(sd, pd, 3, (pd)->vd.head_bottom) |
---|
| 357 | #define clif_pet_equip_area(pd) clif_send_petdata(NULL, pd, 3, (pd)->vd.head_bottom) |
---|
| 358 | #define clif_pet_performance(pd, param) clif_send_petdata(NULL, pd, 4, param) |
---|
| 359 | int clif_pet_emotion(struct pet_data *pd,int param); |
---|
| 360 | int clif_pet_food(struct map_session_data *sd,int foodid,int fail); |
---|
| 361 | |
---|
| 362 | //friends list |
---|
| 363 | int clif_friendslist_toggle_sub(struct map_session_data *sd,va_list ap); |
---|
| 364 | void clif_friendslist_send(struct map_session_data *sd); |
---|
| 365 | void clif_friendslist_reqack(struct map_session_data *sd, struct map_session_data *f_sd, int type); |
---|
| 366 | |
---|
| 367 | // [Valaris] |
---|
| 368 | int clif_mob_hp(struct mob_data *md); |
---|
| 369 | void clif_weather(int m); // [Valaris] |
---|
| 370 | int clif_specialeffect(struct block_list* bl, int type, enum send_target target); // special effects [Valaris] |
---|
| 371 | void clif_specialeffect_single(struct block_list* bl, int type, int fd); |
---|
| 372 | int clif_message(struct block_list *bl, const char* msg); // messages (from mobs/npcs) [Valaris] |
---|
| 373 | |
---|
| 374 | int clif_GM_kickack(struct map_session_data *sd,int id); |
---|
| 375 | void clif_GM_kick(struct map_session_data *sd,struct map_session_data *tsd); |
---|
| 376 | void clif_manner_message(struct map_session_data* sd, uint32 type); |
---|
| 377 | void clif_GM_silence(struct map_session_data* sd, struct map_session_data* tsd, uint8 type); |
---|
| 378 | int clif_timedout(struct map_session_data *sd); |
---|
| 379 | |
---|
| 380 | int clif_disp_overhead(struct map_session_data *sd, const char* mes); |
---|
| 381 | |
---|
| 382 | void clif_get_weapon_view(struct map_session_data* sd, unsigned short *rhand, unsigned short *lhand); |
---|
| 383 | |
---|
| 384 | int clif_party_xy_remove(struct map_session_data *sd); //Fix for minimap [Kevin] |
---|
| 385 | void clif_gospel_info(struct map_session_data *sd, int type); |
---|
| 386 | void clif_parse_ReqFeel(int fd, struct map_session_data *sd, int skilllv); |
---|
| 387 | void clif_feel_info(struct map_session_data *sd, unsigned char feel_level, unsigned char type); |
---|
| 388 | void clif_hate_info(struct map_session_data *sd, unsigned char hate_level,int class_, unsigned char type); |
---|
| 389 | void clif_mission_info(struct map_session_data *sd, int mob_id, unsigned char progress); |
---|
| 390 | void clif_feel_hate_reset(struct map_session_data *sd); |
---|
| 391 | |
---|
| 392 | // [blackhole89] |
---|
| 393 | int clif_spawnhomun(struct homun_data *hd); |
---|
| 394 | int clif_hominfo(struct map_session_data *sd, struct homun_data *hd, int flag); |
---|
| 395 | int clif_homskillinfoblock(struct map_session_data *sd); |
---|
| 396 | void clif_homskillup(struct map_session_data *sd, int skill_num) ; //[orn] |
---|
| 397 | int clif_hom_food(struct map_session_data *sd,int foodid,int fail); //[orn] |
---|
| 398 | void clif_send_homdata(struct map_session_data *sd, int type, int param); //[orn] |
---|
| 399 | int clif_hwalkok(struct homun_data *hd); //[orn] |
---|
| 400 | |
---|
| 401 | void clif_equiptickack(struct map_session_data* sd, int flag); |
---|
| 402 | void clif_viewequip_ack(struct map_session_data* sd, struct map_session_data* tsd); |
---|
| 403 | void clif_viewequip_fail(struct map_session_data* sd); |
---|
| 404 | void clif_equipcheckbox(struct map_session_data* sd); |
---|
| 405 | |
---|
| 406 | //quest system [Kevin] |
---|
| 407 | void clif_send_questlog(struct map_session_data * sd); |
---|
| 408 | void clif_send_questlog_info(struct map_session_data * sd); |
---|
| 409 | void clif_send_quest_info(struct map_session_data * sd, struct quest * qd); |
---|
| 410 | void clif_send_quest_delete(struct map_session_data * sd, int quest_id); |
---|
| 411 | void clif_send_quest_status(struct map_session_data * sd, int quest_id, bool active); |
---|
| 412 | |
---|
| 413 | |
---|
| 414 | int clif_send(const uint8* buf, int len, struct block_list* bl, enum send_target type); |
---|
| 415 | int do_final_clif(void); |
---|
| 416 | int do_init_clif(void); |
---|
| 417 | |
---|
| 418 | #ifndef TXT_ONLY |
---|
| 419 | // MAIL SYSTEM |
---|
| 420 | void clif_Mail_window(int fd, int flag); |
---|
| 421 | void clif_Mail_read(struct map_session_data *sd, int mail_id); |
---|
| 422 | void clif_Mail_delete(int fd, int mail_id, short fail); |
---|
| 423 | void clif_Mail_return(int fd, int mail_id, short fail); |
---|
| 424 | void clif_Mail_send(int fd, bool fail); |
---|
| 425 | void clif_Mail_new(int fd, int mail_id, const char *sender, const char *title); |
---|
| 426 | void clif_Mail_refreshinbox(struct map_session_data *sd); |
---|
| 427 | void clif_Mail_getattachment(int fd, uint8 flag); |
---|
| 428 | // AUCTION SYSTEM |
---|
| 429 | void clif_Auction_openwindow(struct map_session_data *sd); |
---|
| 430 | void clif_Auction_results(struct map_session_data *sd, short count, short pages, uint8 *buf); |
---|
| 431 | void clif_Auction_message(int fd, unsigned char flag); |
---|
| 432 | void clif_Auction_close(int fd, unsigned char flag); |
---|
| 433 | void clif_parse_Auction_cancelreg(int fd, struct map_session_data *sd); |
---|
| 434 | #endif |
---|
| 435 | |
---|
| 436 | void clif_cashshop_show(struct map_session_data *sd, struct npc_data *nd); |
---|
| 437 | |
---|
| 438 | // ADOPTION |
---|
| 439 | void clif_Adopt_reply(struct map_session_data *sd, int type); |
---|
| 440 | |
---|
| 441 | #endif /* _CLIF_H_ */ |
---|