📄 packet.h
字号:
//----------------------------------------------------------------------// // Filename : Packet.h // Written By : Reiot// Description : // //----------------------------------------------------------------------#ifndef __PACKET_H__#define __PACKET_H__// include files#include "Types.h"#include "Exception.h"#include "SocketInputStream.h"#include "SocketOutputStream.h"// forward declarationclass Socket;class Player;//----------------------------------------------------------------------// Packet ID Type//----------------------------------------------------------------------typedef ushort PacketID_t;const uint szPacketID = sizeof(PacketID_t);//----------------------------------------------------------------------// Packet Size Type//----------------------------------------------------------------------typedef uint PacketSize_t;const uint szPacketSize = sizeof(PacketSize_t);//----------------------------------------------------------------------// Packet Header Size//----------------------------------------------------------------------const uint szPacketHeader = szPacketID + szPacketSize;//----------------------------------------------------------------------//// class Packet;//// 菩哦 单捞鸥甫 唱鸥郴绰 牢磐其捞胶 努贰胶捞促.//// read()客 write()甫 林狼表霸 混旗焊扼. 家南涝仿胶飘覆苞 家南免仿胶飘覆篮// 葛电 菩哦阑 绢痘霸 佬绊 镜 巴牢瘤甫 舅 荐 绝促. 蝶扼辑, 菩哦 磊脚捞 阿// 胶飘覆俊 绢痘霸 佬绊 镜 巴牢瘤甫 舅绊 乐绢具 茄促.////----------------------------------------------------------------------class Packet {public : //---------------------------------------------------------------------- // // Packet ID // // prefix狼 快急鉴困绰 G > L > C 捞促. (GL/LG, GC/CG, LC/CL) // 绢恫 葛碘俊辑 绢恫 巴甸阑 器窃秦具 窍绰瘤 林狼表霸 汲沥秦具 茄促. // 啊飞 LC绰 肺弊牢辑滚客 努扼捞攫飘 葛滴 器窃秦具 窍绰 葛碘捞促. // //---------------------------------------------------------------------- enum { PACKET_CG_ATTACK = 0, // 0 PACKET_CG_ADD_GEAR_TO_MOUSE, // 1 PACKET_CG_ADD_INVENTORY_TO_MOUSE, // 2 PACKET_CG_ADD_MOUSE_TO_GEAR, // 3 PACKET_CG_ADD_MOUSE_TO_INVENTORY, // 4 PACKET_CG_ADD_MOUSE_TO_QUICKSLOT, // 5 PACKET_CG_ADD_MOUSE_TO_ZONE, // 6 PACKET_CG_ADD_QUICKSLOT_TO_MOUSE, // 7 PACKET_CG_ADD_ZONE_TO_MOUSE, // 8 PACKET_CG_ADD_ZONE_TO_INVENTORY, // 9 PACKET_CG_CONNECT, // 10 PACKET_CG_GET_OFF_MOTORCYCLE, // 11 PACKET_CG_LEARN_SKILL, // 12 PACKET_CG_LOGOUT, // 13 PACKET_CG_MOVE, // 14 PACKET_CG_READY, // 15 PACKET_CG_RELOAD_FROM_INVENTORY, // 16 PACKET_CG_RELOAD_FROM_QUICKSLOT, // 17 PACKET_CG_RIDE_MOTORCYCLE, // 18 PACKET_CG_SAY, // 19 PACKET_CG_SKILL_TO_INVENTORY, // 20 PACKET_CG_THROW_ITEM, // 21 PACKET_CG_USE_POTION_FROM_INVENTORY, // 22 PACKET_CG_USE_POTION_FROM_QUICKSLOT, // 23 PACKET_CL_CREATE_PC, // 24 PACKET_CL_DELETE_PC, // 25 PACKET_CL_GET_PC_LIST, // 26 PACKET_CL_LOGIN, // 27 PACKET_CL_LOGOUT, // 28 PACKET_CL_QUERY_PLAYER_ID, // 29 PACKET_CL_REGISTER_PLAYER, // 30 PACKET_CL_SELECT_PC, // 31 PACKET_CG_GLOBAL_CHAT, // 32 PACKET_GC_GLOBAL_CHAT, // 33 PACKET_GC_SYSTEM_MESSAGE, // 34 PACKET_GC_USE_OK, // 35 PACKET_GC_TAKE_OFF, // 36 PACKET_CG_CASTING_SKILL, // 37 PACKET_GC_CASTING_SKILL, // 38 PACKET_GC_RELOAD_OK, // 39 PACKET_CG_NPC_TALK, // 40 PACKET_GC_NPC_ASK, // 41 PACKET_GC_NPC_SAY, // 42 PACKET_CG_DISSECTION_CORPSE, // 43 PACKET_CU_BEGIN_UPDATE, // 44 PACKET_CU_END_UPDATE, // 45 PACKET_CU_REQUEST, // 46 PACKET_GC_ADD_MONSTER, // 47 PACKET_GC_ADD_MONSTER_CORPSE, // 48 PACKET_GC_ADD_NEW_ITEM_TO_ZONE, // 49 PACKET_GC_ADD_NPC, // 50 PACKET_GC_ADD_SLAYER, // 51 PACKET_GC_ADD_SLAYER_CORPSE, // 52 PACKET_GC_ADD_VAMPIRE, // 53 PACKET_GC_ADD_VAMPIRE_CORPSE, // 54 PACKET_GC_ATTACK_ARMS_OK_1, // 55 PACKET_GC_ATTACK_ARMS_OK_2, // 56 PACKET_GC_ATTACK_ARMS_OK_3, // 57 PACKET_GC_ATTACK_ARMS_OK_4, // 58 PACKET_GC_ATTACK_ARMS_OK_5, // 59 PACKET_GC_ATTACK_MELEE_OK_1, // 60 PACKET_GC_ATTACK_MELEE_OK_2, // 61 PACKET_GC_ATTACK_MELEE_OK_3, // 62 PACKET_GC_ATTACK, // 63 PACKET_GC_CANNOT_ADD, // 64 PACKET_GC_CANNOT_USE, // 65 PACKET_GC_CHANGE_SHAPE, // 66 PACKET_GC_CHANGE_DARK_LIGHT, // 67 PACKET_GC_CHANGE_WEATHER, // 68 PACKET_GC_CREATURE_DIED, // 69 PACKET_GC_DELETE_OBJECT, // 70 PACKET_GC_DELETE_AND_PICKUP_OK, // 71 PACKET_GC_DISCONNECT, // 72 PACKET_GC_GET_DAMAGE, // 73 PACKET_GC_GET_OFF_MOTORCYCLE, // 74 PACKET_GC_GET_OFF_MOTORCYCLE_FAILED, // 75 PACKET_GC_GET_OFF_MOTORCYCLE_OK, // 76 PACKET_GC_LEARN_SKILL_FAILED, // 77 PACKET_GC_LEARN_SKILL_OK, // 78 PACKET_GC_LEARN_SKILL_READY, // 79 PACKET_GC_LIGHTNING, // 80 PACKET_GC_MODIFY_INFORMATION, // 81 PACKET_GC_MOVE, // 82 PACKET_GC_MOVE_ERROR, // 83 PACKET_GC_MOVE_OK, // 84 PACKET_GC_RECONNECT, // 85 PACKET_GC_RIDE_MOTORCYCLE, // 86 PACKET_GC_RIDE_MOTORCYCLE_FAILED, // 87 PACKET_GC_RIDE_MOTORCYCLE_OK, // 88 PACKET_GC_SAY, // 89 PACKET_GC_SET_POSITION, // 90 PACKET_GC_SKILL_FAILED_1, // 91 PACKET_GC_SKILL_FAILED_2, // 92 PACKET_GC_SKILL_TO_INVENTORY_OK_1, // 93 PACKET_GC_SKILL_TO_INVENTORY_OK_2, // 94 PACKET_GC_SKILL_TO_OBJECT_OK_1, // 95 PACKET_GC_SKILL_TO_OBJECT_OK_2, // 96 PACKET_GC_SKILL_TO_OBJECT_OK_3, // 97 PACKET_GC_SKILL_TO_OBJECT_OK_4, // 98 PACKET_GC_SKILL_TO_OBJECT_OK_5, // 99 PACKET_GC_SKILL_TO_SELF_OK_1, // 100 PACKET_GC_SKILL_TO_SELF_OK_2, // 101 PACKET_GC_SKILL_TO_TILE_OK_1, // 102 PACKET_GC_SKILL_TO_TILE_OK_2, // 103 PACKET_GC_SKILL_TO_TILE_OK_3, // 104 PACKET_GC_SKILL_TO_TILE_OK_4, // 105 PACKET_GC_SKILL_TO_TILE_OK_5, // 106 PACKET_GC_THROW_ITEM_OK_1, // 107 PACKET_GC_THROW_ITEM_OK_2, // 108 PACKET_GC_UPDATE_INFO, // 109 PACKET_GL_INCOMING_CONNECTION_ERROR, // 110 PACKET_GL_INCOMING_CONNECTION_OK, // 111 PACKET_LC_CREATE_PC_ERROR, // 112 PACKET_LC_CREATE_PC_OK, // 113 PACKET_LC_DELETE_PC_ERROR, // 114 PACKET_LC_DELETE_PC_OK, // 115 PACKET_LC_LOGIN_ERROR, // 116 PACKET_LC_LOGIN_OK, // 117 PACKET_LC_PC_LIST, // 118 PACKET_LC_QUERY_RESULT_PLAYER_ID, // 119 PACKET_LC_RECONNECT, // 120 PACKET_LC_REGISTER_PLAYER_ERROR, // 121 PACKET_LC_REGISTER_PLAYER_OK, // 122 PACKET_LC_SELECT_PC_ERROR, // 123 PACKET_LG_INCOMING_CONNECTION, // 124 PACKET_CG_BLOOD_DRAIN, // 125 PACKET_GC_BLOOD_DRAIN_OK_1, // 126 PACKET_GC_BLOOD_DRAIN_OK_2, // 127 PACKET_GC_BLOOD_DRAIN_OK_3, // 128 PACKET_GC_ADD_GEAR_TO_INVENTORY, // 129 PACKET_GC_ADD_GEAR_TO_ZONE, // 130 PACKET_UC_UPDATE_LIST, // 131 PACKET_UC_UPDATE, // 132 PACKET_GC_DROP_ITEM_TO_ZONE, // 133 // 2000-10-4 added PACKET_GC_MORPH_1, // 134 // 2000-10-25 abcd PACKET_GC_MORPH_SLAYER_2, // 135 PACKET_GC_MORPH_VAMPIRE_2, // 136 PACKET_GC_CREATE_ITEM, // 137 // 2000-10-13 elca PACKET_CG_NPC_ASK_ANSWER, // 138 // 2000-10-13 excel96 PACKET_CG_SHOP_REQUEST_LIST, // 139 // 2000-10-24 excel96 PACKET_CG_SHOP_REQUEST_BUY, // 140 // 2000-10-28 excel96 PACKET_GC_SHOP_VERSION, // 141 PACKET_GC_SHOP_LIST, // 142 PACKET_GC_SHOP_BUY_OK, // 143 PACKET_GC_SHOP_BUY_FAIL, // 144 PACKET_GC_SHOP_SOLD, // 145 PACKET_GC_KNOCKS_TARGET_BACK_OK_1, // 146 // 2000-10-31 ABCD PACKET_GC_KNOCKS_TARGET_BACK_OK_2, // 147 PACKET_GC_KNOCKS_TARGET_BACK_OK_4, // 148 PACKET_GC_KNOCKS_TARGET_BACK_OK_5, // 149 PACKET_CG_SHOP_REQUEST_SELL, // 150 // 2000-11-06 excel96 PACKET_GC_SHOP_SELL_FAIL, // 151 PACKET_GC_SHOP_SELL_OK, // 152 PACKET_GC_SHOP_BOUGHT, // 153 PACKET_GC_REMOVE_EFFECT, // 154 // 2000-11-07 ABCD PACKET_GC_ADD_VAMPIRE_FROM_BURROWING, // 155 // 2000-11-09 ABCd PACKET_GC_ADD_MONSTER_FROM_BURROWING, // 156 PACKET_GC_ADD_BURROWING_CREATURE, // 157 PACKET_CG_UNBURROW, // 158 // 2000-11-10 ABCD PACKET_GC_UNBURROW_OK, // 159 PACKET_GC_UNBURROW_FAIL, // 160 PACKET_GC_ADD_EFFECT, // 161 // 2000-11-14 ABCD PACKET_CG_USE_BONUS_POINT, // 162 // 2000-11-21 ABCD PACKET_GC_USE_BONUS_POINT_FAIL, // 163 PACKET_GC_USE_BONUS_POINT_OK, // 164 PACKET_GC_SHOP_LIST_MYSTERIOUS, // 165 // 2000-11-10 excel96 PACKET_GC_SHOP_MARKET_CONDITION, // 166 PACKET_GC_TEACH_SKILL_INFO, // 167 // 2000-11-14 excel96 PACKET_CG_DIAL_UP, // 168 // 2000-11-21 Elca PACKET_CG_PHONE_DISCONNECT, // 169 PACKET_CG_PHONE_SAY, // 170 PACKET_CG_WHISPER, // 171 PACKET_GC_PHONE_CONNECTED, // 172 PACKET_GC_RING, // 173 PACKET_GC_PHONE_DISCONNECTED, // 174 PACKET_GC_PHONE_CONNECTION_FAILED, // 175 PACKET_GC_PHONE_SAY, // 176 PACKET_GC_WHISPER, // 177 PACKET_GC_WHISPER_FAILED, // 178 PACKET_CG_PICKUP_MONEY, // 179 // 2000-12-01 excel96 PACKET_CG_DROP_MONEY, // 180 PACKET_GC_SKILL_INFO, // 181 // 2000-12-02 elca PACKET_GC_ADD_EFFECT_TO_TILE, // 182 // 2000-12-05 ABCD PACKET_GC_SEARCH_MOTORCYCLE_OK, // 183 // 2000-12-08 excel96 PACKET_GC_SEARCH_MOTORCYCLE_FAIL, // 184 PACKET_GC_STATUS_CURRENT_HP, // 185 // 2000-12-09 elca PACKET_CL_VERSION_CHECK, // 186 // 2000-12-10 elca PACKET_LC_VERSION_CHECK_OK, // 187 PACKET_LC_VERSION_CHECK_ERROR, // 188 PACKET_GC_REAL_WEARING_INFO, // 189 // 2000-12-11 excel96 PACKET_GC_REMOVE_FROM_GEAR, // 190 // 2000-12-11 ABCD PACKET_CG_REQUEST_REPAIR, // 191 // 2000-12-13 excel96 PACKET_GC_THROW_ITEM_OK_3, // 192 // 2000-12-14 elca PACKET_CG_SET_SLAYER_HOT_KEY, // 193 // 2000-12-14 elca PACKET_GC_SKILL_TO_SELF_OK_3, // 194 // 2000-12-16 ABCd PACKET_GC_SKILL_TO_TILE_OK_6, // 195 PACKET_GC_SKILL_TO_OBJECT_OK_6, // 196 PACKET_GC_DELETE_EFFECT_FROM_TILE, // 197 // 2000-12-17 ABCD PACKET_CG_MOUSE_TO_STASH, // 198 // 2001-01-08 excel96 PACKET_CG_STASH_TO_MOUSE, // 199 PACKET_CG_STASH_LIST, // 200 PACKET_GC_STASH_LIST, // 201 PACKET_CG_STASH_DEPOSIT, // 202 PACKET_CG_STASH_WITHDRAW, // 203 PACKET_CG_STASH_REQUEST_BUY, // 204 // 2001-01-17 excel96 PACKET_GC_STASH_SELL, // 205 PACKET_GC_KNOCK_BACK, // 206 // 2001-01-31 ABCD PACKET_CG_TRADE_PREPARE, // 207 // 2001-02-16 excel96 PACKET_CG_TRADE_ADD_ITEM, // 208 PACKET_CG_TRADE_REMOVE_ITEM, // 209 PACKET_CG_TRADE_MONEY, // 210
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -