summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
Diffstat (limited to 'src/map')
-rw-r--r--src/map/Makefile.in25
-rw-r--r--src/map/achievement.c4
-rw-r--r--src/map/atcommand.c253
-rw-r--r--src/map/atcommand.h10
-rw-r--r--src/map/battle.c52
-rw-r--r--src/map/battle.h3
-rw-r--r--src/map/chrif.c2
-rw-r--r--src/map/clif.c858
-rw-r--r--src/map/clif.h11
-rw-r--r--src/map/guild.c4
-rw-r--r--src/map/intif.c14
-rw-r--r--src/map/itemdb.h1
-rw-r--r--src/map/map.c69
-rw-r--r--src/map/map.h15
-rw-r--r--src/map/mapreg.h67
-rw-r--r--src/map/mapreg_sql.c818
-rw-r--r--src/map/messages_main.h28
-rw-r--r--src/map/messages_zero.h28
-rw-r--r--src/map/mob.c692
-rw-r--r--src/map/mob.h12
-rw-r--r--src/map/npc.c20
-rw-r--r--src/map/npc.h6
-rw-r--r--src/map/npc_chat.c3
-rw-r--r--src/map/packets.h5
-rw-r--r--src/map/packets_keys_main.h9
-rw-r--r--src/map/packets_keys_zero.h9
-rw-r--r--src/map/packets_shuffle_main.h17135
-rw-r--r--src/map/packets_shuffle_re.h16958
-rw-r--r--src/map/packets_shuffle_zero.h1325
-rw-r--r--src/map/packets_struct.h38
-rw-r--r--src/map/party.c17
-rw-r--r--src/map/pc.c950
-rw-r--r--src/map/pc.h50
-rw-r--r--src/map/pet.c950
-rw-r--r--src/map/pet.h4
-rw-r--r--src/map/quest.c2
-rw-r--r--src/map/script.c1322
-rw-r--r--src/map/script.h22
-rw-r--r--src/map/skill.c5071
-rw-r--r--src/map/skill.h157
-rw-r--r--src/map/status.c561
-rw-r--r--src/map/status.h11
-rw-r--r--src/map/unit.c48
43 files changed, 26054 insertions, 21585 deletions
diff --git a/src/map/Makefile.in b/src/map/Makefile.in
index 6dbebb5ad..75093662f 100644
--- a/src/map/Makefile.in
+++ b/src/map/Makefile.in
@@ -36,6 +36,19 @@ LIBCONFIG_OBJ = $(addprefix $(LIBCONFIG_D)/, libconfig.o grammar.o scanctx.o \
LIBCONFIG_H = $(addprefix $(LIBCONFIG_D)/, libconfig.h grammar.h parsectx.h \
scanctx.h scanner.h strbuf.h wincompat.h)
+ifeq (@USE_LIBBACKTRACE@,yes)
+ LIBBACKTRACE_D = $(THIRDPARTY_D)/libbacktrace
+ LIBBACKTRACE_OBJ = $(addprefix $(LIBBACKTRACE_D)/, atomic.o backtrace.o \
+ dwarf.o @LIBBACKTRACE_FORMAT_FILE@ fileline.o mmapio.o mmap.o posix.o print.o \
+ simple.o sort.o state.o)
+ LIBBACKTRACE_H = $(addprefix $(LIBBACKTRACE_D)/, backtrace.h \
+ backtrace-supported.h config.h filenames.h internal.h)
+else
+ LIBBACKTRACE_D =
+ LIBBACKTRACE_OBJ =
+ LIBBACKTRACE_H =
+endif
+
MT19937AR_D = $(THIRDPARTY_D)/mt19937ar
MT19937AR_OBJ = $(MT19937AR_D)/mt19937ar.o
MT19937AR_H = $(MT19937AR_D)/mt19937ar.h
@@ -60,7 +73,7 @@ MAP_PH = refine.p.h
HAVE_MYSQL=@HAVE_MYSQL@
ifeq ($(HAVE_MYSQL),yes)
- MAP_SERVER_SQL_DEPENDS=$(MAP_OBJ) $(COMMON_D)/obj_all/common.a $(COMMON_D)/obj_sql/common_sql.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) $(SYSINFO_INC)
+ MAP_SERVER_SQL_DEPENDS=$(MAP_OBJ) $(COMMON_D)/obj_all/common.a $(COMMON_D)/obj_sql/common_sql.a $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) $(LIBBACKTRACE_OBJ) $(SYSINFO_INC)
else
MAP_SERVER_SQL_DEPENDS=needs_mysql
endif
@@ -99,7 +112,7 @@ help:
Makefile: Makefile.in
@$(MAKE) -C ../.. src/map/Makefile
-$(SYSINFO_INC): $(MAP_C) $(MAP_PH) $(MAP_H) $(COMMON_H) $(CONFIG_H) $(MT19937AR_H) $(LIBCONFIG_H)
+$(SYSINFO_INC): $(MAP_C) $(MAP_PH) $(MAP_H) $(COMMON_H) $(CONFIG_H) $(MT19937AR_H) $(LIBCONFIG_H) $(LIBBACKTRACE_H)
@echo " MAKE $@"
@$(MAKE) -C ../.. sysinfo
@@ -120,7 +133,7 @@ map-server: ../../map-server@EXEEXT@
../../map-server@EXEEXT@: $(MAP_SERVER_SQL_DEPENDS) Makefile
@echo " LD $(notdir $@)"
@$(CC) @STATIC@ @LDFLAGS@ -o ../../map-server@EXEEXT@ $(MAP_OBJ) $(COMMON_D)/obj_all/common.a $(COMMON_D)/obj_sql/common_sql.a \
- $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) @LIBS@ @MYSQL_LIBS@
+ $(MT19937AR_OBJ) $(LIBCONFIG_OBJ) $(LIBBACKTRACE_OBJ) @LIBS@ @MYSQL_LIBS@
# missing object files
$(COMMON_D)/obj_all/common.a:
@@ -139,10 +152,14 @@ $(LIBCONFIG_OBJ):
@echo " MAKE $@"
@$(MAKE) -C $(LIBCONFIG_D)
+$(LIBBACKTRACE_OBJ):
+ @echo " MAKE $@"
+ @$(MAKE) -C $(LIBBACKTRACE_D)
+
.SECONDEXPANSION:
# map object files
-obj_sql/%.o: %.c $$(filter %.p.h, $(MAP_PH)) $(MAP_H) $(COMMON_H) $(CONFIG_H) $(MT19937AR_H) $(LIBCONFIG_H) | obj_sql
+obj_sql/%.o: %.c $$(filter %.p.h, $(MAP_PH)) $(MAP_H) $(COMMON_H) $(CONFIG_H) $(MT19937AR_H) $(LIBCONFIG_H) $(LIBBACKTRACE_H) | obj_sql
@echo " CC $<"
@$(CC) @CFLAGS@ @DEFS@ $(COMMON_INCLUDE) $(THIRDPARTY_INCLUDE) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<
diff --git a/src/map/achievement.c b/src/map/achievement.c
index e6a9ae3be..0b0d9749b 100644
--- a/src/map/achievement.c
+++ b/src/map/achievement.c
@@ -194,6 +194,8 @@ static void achievement_progress_add(struct map_session_data *sd, const struct a
// Check if the Achievement is complete.
if (achievement->check_complete(sd, ad)) {
achievement->validate_achieve(sd, ad->id);
+ if ((ach = achievement->ensure(sd, ad)) == NULL)
+ return;
ach->completed_at = time(NULL);
}
@@ -232,6 +234,8 @@ static void achievement_progress_set(struct map_session_data *sd, const struct a
if (achievement->check_complete(sd, ad)) {
achievement->validate_achieve(sd, ad->id);
+ if ((ach = achievement->ensure(sd, ad)) == NULL)
+ return;
ach->completed_at = time(NULL);
}
diff --git a/src/map/atcommand.c b/src/map/atcommand.c
index 410cd7af7..76448b237 100644
--- a/src/map/atcommand.c
+++ b/src/map/atcommand.c
@@ -962,39 +962,10 @@ ACMD(option)
*------------------------------------------*/
ACMD(hide)
{
- if (pc_isinvisible(sd)) {
- sd->sc.option &= ~OPTION_INVISIBLE;
- if (sd->disguise != -1 )
- status->set_viewdata(&sd->bl, sd->disguise);
- else
- status->set_viewdata(&sd->bl, sd->status.class);
- clif->message(fd, msg_fd(fd,10)); // Invisible: Off
-
- // increment the number of pvp players on the map
- map->list[sd->bl.m].users_pvp++;
-
- if( map->list[sd->bl.m].flag.pvp && !map->list[sd->bl.m].flag.pvp_nocalcrank ) {
- // register the player for ranking calculations
- sd->pvp_timer = timer->add( timer->gettick() + 200, pc->calc_pvprank_timer, sd->bl.id, 0 );
- }
- //bugreport:2266
- map->foreachinmovearea(clif->insight, &sd->bl, AREA_SIZE, sd->bl.x, sd->bl.y, BL_ALL, &sd->bl);
- } else {
- clif->clearunit_area(&sd->bl, CLR_OUTSIGHT);
- sd->sc.option |= OPTION_INVISIBLE;
- sd->vd.class = INVISIBLE_CLASS;
- clif->message(fd, msg_fd(fd,11)); // Invisible: On
-
- // decrement the number of pvp players on the map
- map->list[sd->bl.m].users_pvp--;
-
- if( map->list[sd->bl.m].flag.pvp && !map->list[sd->bl.m].flag.pvp_nocalcrank && sd->pvp_timer != INVALID_TIMER ) {
- // unregister the player for ranking
- timer->delete( sd->pvp_timer, pc->calc_pvprank_timer );
- sd->pvp_timer = INVALID_TIMER;
- }
- }
- clif->changeoption(&sd->bl);
+ if (pc_isinvisible(sd))
+ pc->unhide(sd, true);
+ else
+ pc->hide(sd, true);
return true;
}
@@ -2744,42 +2715,49 @@ ACMD(guildlevelup)
return true;
}
-/*==========================================
+/**
+ * Creates a pet egg in the character's inventory.
*
- *------------------------------------------*/
+ * @code{.herc}
+ * @makeegg <pet>
+ * @endcode
+ *
+ **/
ACMD(makeegg)
{
- struct item_data *item_data;
- int id, pet_id;
-
- if (!*message) {
- clif->message(fd, msg_fd(fd,1015)); // Please enter a monster/egg name/ID (usage: @makeegg <pet>).
+ if (*message == '\0') {
+ clif->message(fd, msg_fd(fd, 1015)); // Please enter a monster/egg name/ID (usage: @makeegg <pet>).
return false;
}
- if ((item_data = itemdb->search_name(message)) != NULL) // for egg name
+ struct item_data *item_data = itemdb->search_name(message);
+ int id;
+
+ if (item_data != NULL) { // Egg name.
id = item_data->nameid;
- else
- if ((id = mob->db_searchname(message)) != 0) // for monster name
- ;
- else
- id = atoi(message);
+ } else {
+ id = mob->db_searchname(message); // Monster name.
- pet_id = pet->search_petDB_index(id, PET_CLASS);
- if (pet_id < 0)
+ if (id == 0)
+ id = atoi(message); // Egg/monster ID.
+ }
+
+ int pet_id = pet->search_petDB_index(id, PET_CLASS);
+
+ if (pet_id == INDEX_NOT_FOUND)
pet_id = pet->search_petDB_index(id, PET_EGG);
- if (pet_id >= 0) {
- sd->catch_target_class = pet->db[pet_id].class_;
- intif->create_pet(
- sd->status.account_id, sd->status.char_id,
- pet->db[pet_id].class_, mob->db(pet->db[pet_id].class_)->lv,
- pet->db[pet_id].EggID, 0, (short)pet->db[pet_id].intimate,
- 100, 0, 1, pet->db[pet_id].jname);
- } else {
- clif->message(fd, msg_fd(fd,180)); // The monster/egg name/id doesn't exist.
+
+ if (pet_id == INDEX_NOT_FOUND) {
+ clif->message(fd, msg_fd(fd, 180)); // The monster/egg name/ID doesn't exist.
return false;
}
+ sd->catch_target_class = pet->db[pet_id].class_;
+ intif->create_pet(sd->status.account_id, sd->status.char_id, pet->db[pet_id].class_,
+ mob->db(pet->db[pet_id].class_)->lv, pet->db[pet_id].EggID, 0,
+ (short)pet->db[pet_id].intimate, PET_HUNGER_STUFFED,
+ 0, 1,pet->db[pet_id].jname);
+
return true;
}
@@ -2798,72 +2776,90 @@ ACMD(hatch)
return true;
}
-/*==========================================
+/**
+ * Sets a pet's intimacy value.
*
- *------------------------------------------*/
+ * @code{.herc}
+ * @petfriendly <0-1000>
+ * @endcode
+ *
+ **/
ACMD(petfriendly)
{
- int friendly;
- struct pet_data *pd;
-
- if (!*message || (friendly = atoi(message)) < 0) {
- clif->message(fd, msg_fd(fd,1016)); // Please enter a valid value (usage: @petfriendly <0-1000>).
+ if (*message == '\0' || (atoi(message) == 0 && isdigit(*message) == 0)) {
+ clif->message(fd, msg_fd(fd, 1016)); // Please enter a valid value (usage: @petfriendly <0-1000>).
return false;
}
- pd = sd->pd;
- if (!pd) {
- clif->message(fd, msg_fd(fd,184)); // Sorry, but you have no pet.
+ int friendly = atoi(message);
+
+ if (friendly < PET_INTIMACY_NONE || friendly > PET_INTIMACY_MAX) {
+ clif->message(fd, msg_fd(fd, 1016)); // Please enter a valid value (usage: @petfriendly <0-1000>).
return false;
}
- if (friendly < 0 || friendly > 1000)
- {
- clif->message(fd, msg_fd(fd,37)); // An invalid number was specified.
+ struct pet_data *pd = sd->pd;
+
+ if (sd->status.pet_id == 0 || pd == NULL) {
+ clif->message(fd, msg_fd(fd, 184)); // Sorry, but you have no pet.
return false;
}
- if (friendly == pd->pet.intimate) {
- clif->message(fd, msg_fd(fd,183)); // Pet intimacy is already at maximum.
+ if (friendly == pd->pet.intimate && friendly == PET_INTIMACY_MAX) {
+ clif->message(fd, msg_fd(fd, 183)); // Pet intimacy is already at maximum.
return false;
}
- pet->set_intimate(pd, friendly);
- clif->send_petstatus(sd);
- clif->message(fd, msg_fd(fd,182)); // Pet intimacy changed.
+ if (friendly != pd->pet.intimate) { // No need to update the pet's status if intimacy value won't change.
+ pet->set_intimate(pd, friendly);
+ clif->send_petstatus(sd);
+ }
+
+ clif->message(fd, msg_fd(fd, 182)); // Pet intimacy changed. (Send message regardless of value has changed or not.)
+
return true;
}
-/*==========================================
+/**
+ * Sets a pet's hunger value.
*
- *------------------------------------------*/
+ * @code{.herc}
+ * @pethungry <0-100>
+ * @endcode
+ *
+ **/
ACMD(pethungry)
{
- int hungry;
- struct pet_data *pd;
-
- if (!*message || (hungry = atoi(message)) < 0) {
- clif->message(fd, msg_fd(fd,1017)); // Please enter a valid number (usage: @pethungry <0-100>).
+ if (*message == '\0' || (atoi(message) == 0 && isdigit(*message) == 0)) {
+ clif->message(fd, msg_fd(fd, 1017)); // Please enter a valid number (usage: @pethungry <0-100>).
return false;
}
- pd = sd->pd;
- if (!sd->status.pet_id || !pd) {
- clif->message(fd, msg_fd(fd,184)); // Sorry, but you have no pet.
+ int hungry = atoi(message);
+
+ if (hungry < PET_HUNGER_STARVING || hungry > PET_HUNGER_STUFFED) {
+ clif->message(fd, msg_fd(fd, 1017)); // Please enter a valid number (usage: @pethungry <0-100>).
return false;
}
- if (hungry < 0 || hungry > 100) {
- clif->message(fd, msg_fd(fd,37)); // An invalid number was specified.
+
+ struct pet_data *pd = sd->pd;
+
+ if (sd->status.pet_id == 0 || pd == NULL) {
+ clif->message(fd, msg_fd(fd, 184)); // Sorry, but you have no pet.
return false;
}
- if (hungry == pd->pet.hungry) {
- clif->message(fd, msg_fd(fd,186)); // Pet hunger is already at maximum.
+
+ if (hungry == pd->pet.hungry && hungry == PET_HUNGER_STUFFED) {
+ clif->message(fd, msg_fd(fd, 186)); // Pet hunger is already at maximum.
return false;
}
- pd->pet.hungry = hungry;
- clif->send_petstatus(sd);
- clif->message(fd, msg_fd(fd,185)); // Pet hunger changed.
+ if (hungry != pd->pet.hungry) { // No need to update the pet's status if hunger value won't change.
+ pd->pet.hungry = hungry;
+ clif->send_petstatus(sd);
+ }
+
+ clif->message(fd, msg_fd(fd, 185)); // Pet hunger changed. (Send message regardless of value has changed or not.)
return true;
}
@@ -4503,6 +4499,7 @@ ACMD(loadnpc)
// add to list of script sources and run it
npc->addsrcfile(message);
npc->parsesrcfile(message,true);
+ npc->motd = npc->name2id("HerculesMOTD");
npc->read_event_script();
clif->message(fd, msg_fd(fd,262));
@@ -4537,6 +4534,7 @@ ACMD(unloadnpc)
npc->unload_duplicates(nd, (flag != 0));
npc->unload(nd, true, (flag != 0));
+ npc->motd = npc->name2id("HerculesMOTD");
npc->read_event_script();
clif->message(fd, msg_fd(fd, 112)); /// Npc Disabled.
return true;
@@ -4592,6 +4590,7 @@ ACMD(reloadnpc)
clif->message(fd, msg_fd(fd, 1386)); /// File unloaded. Be aware that...
npc->addsrcfile(file_path);
npc->parsesrcfile(file_path, true);
+ npc->motd = npc->name2id("HerculesMOTD");
npc->read_event_script();
clif->message(fd, msg_fd(fd, 262)); /// Script loaded.
return true;
@@ -5671,6 +5670,8 @@ ACMD(useskill)
return false;
}
+ pc->autocast_clear(sd);
+
if (skill_id >= HM_SKILLBASE && skill_id < HM_SKILLBASE+MAX_HOMUNSKILL
&& sd->hd && homun_alive(sd->hd)) // (If used with @useskill, put the homunc as dest)
bl = &sd->hd->bl;
@@ -7865,39 +7866,61 @@ ACMD(monsterignore)
return true;
}
-/*==========================================
- * @fakename
- * => Gives your character a fake name. [Valaris]
- *------------------------------------------*/
+
+/**
+ * Temporarily changes the character's name to the specified string.
+ *
+ * @code{.herc}
+ * @fakename {<options>} {<fake_name>}
+ * @endcode
+ *
+ **/
ACMD(fakename)
{
- if (!*message)
- {
- if (sd->fakename[0])
- {
+ if (*message == '\0') {
+ if (sd->fakename[0] != '\0') {
sd->fakename[0] = '\0';
+ sd->fakename_options = FAKENAME_OPTION_NONE;
clif->blname_ack(0, &sd->bl);
- if( sd->disguise )
+
+ if (sd->disguise != 0) // Another packet should be sent so the client updates the name for sd.
clif->blname_ack(sd->fd, &sd->bl);
- clif->message(sd->fd, msg_fd(fd,1307)); // Returned to real name.
+
+ clif->message(sd->fd, msg_fd(fd, 1307)); // Returned to real name.
return true;
}
- clif->message(sd->fd, msg_fd(fd,1308)); // You must enter a name.
+ clif->message(sd->fd, msg_fd(fd, 1308)); // You must enter a name.
return false;
}
- if (strlen(message) < 2)
- {
- clif->message(sd->fd, msg_fd(fd,1309)); // Fake name must be at least two characters.
+ int options = FAKENAME_OPTION_NONE;
+ char buf[NAME_LENGTH] = {'\0'};
+ const char *fake_name = NULL;
+
+ if (sscanf(message, "%d %23[^\n]", &options, buf) == 2) {
+ fake_name = buf;
+ } else {
+ options = FAKENAME_OPTION_NONE;
+ fake_name = message;
+ }
+
+ if (strlen(fake_name) < 2) {
+ clif->message(sd->fd, msg_fd(fd, 1309)); // Fake name must be at least two characters.
return false;
}
- safestrncpy(sd->fakename, message, sizeof(sd->fakename));
+ if (options < FAKENAME_OPTION_NONE)
+ options = FAKENAME_OPTION_NONE;
+
+ safestrncpy(sd->fakename, fake_name, sizeof(sd->fakename));
+ sd->fakename_options = options;
clif->blname_ack(0, &sd->bl);
- if (sd->disguise) // Another packet should be sent so the client updates the name for sd
+
+ if (sd->disguise != 0) // Another packet should be sent so the client updates the name for sd.
clif->blname_ack(sd->fd, &sd->bl);
- clif->message(sd->fd, msg_fd(fd,1310)); // Fake name enabled.
+
+ clif->message(sd->fd, msg_fd(fd, 1310)); // Fake name enabled.
return true;
}
@@ -8896,13 +8919,17 @@ ACMD(accinfo)
/* [Ind] */
ACMD(set)
{
- char reg[SCRIPT_VARNAME_LENGTH+1], val[254];
+ char reg[SCRIPT_VARNAME_LENGTH + 1];
+ char val[SCRIPT_STRING_VAR_LENGTH + 1];
struct script_data* data;
int toset = 0;
bool is_str = false;
size_t len;
- if (!*message || (toset = sscanf(message, "%32s %253[^\n]", reg, val)) < 1) {
+ char format[20];
+ safesnprintf(format, sizeof(format), "%%%ds %%%d[^\\n]", SCRIPT_VARNAME_LENGTH, SCRIPT_STRING_VAR_LENGTH);
+
+ if (*message == '\0' || (toset = sscanf(message, format, reg, val)) < 1) {
clif->message(fd, msg_fd(fd,1367)); // Usage: @set <variable name> <value>
clif->message(fd, msg_fd(fd,1368)); // Usage: ex. "@set PoringCharVar 50"
clif->message(fd, msg_fd(fd,1369)); // Usage: ex. "@set PoringCharVarSTR$ Super Duper String"
@@ -10545,9 +10572,9 @@ static bool atcommand_exec(const int fd, struct map_session_data *sd, const char
clif->message(fd, msg_fd(fd,143));
return false;
}
+ if (sd->block_action.commands) // *pcblock script command
+ return false;
}
- if (sd->block_action.commands) // *pcblock script command
- return false;
if (*message == atcommand->char_symbol)
is_atcommand = false;
diff --git a/src/map/atcommand.h b/src/map/atcommand.h
index 66827b3b2..f3a5155ab 100644
--- a/src/map/atcommand.h
+++ b/src/map/atcommand.h
@@ -54,6 +54,16 @@ typedef enum {
COMMAND_CHARCOMMAND = 2,
} AtCommandType;
+/** @fakename display option flags **/
+enum fakename_option_flag {
+ FAKENAME_OPTION_NONE = 0x00,
+ FAKENAME_OPTION_SHOW_PARTYNAME = 0x01,
+ FAKENAME_OPTION_SHOW_GUILDNAME = 0x02,
+ FAKENAME_OPTION_SHOW_GUILDPOSITION = 0x04,
+ FAKENAME_OPTION_SHOW_CLANPOSITION = 0x08,
+ FAKENAME_OPTION_SHOW_TITLE = 0x10
+};
+
/**
* Typedef
**/
diff --git a/src/map/battle.c b/src/map/battle.c
index 985d2bca4..236ed70b7 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -2832,18 +2832,18 @@ static int64 battle_calc_damage(struct block_list *src, struct block_list *bl, s
d->dmg_lv = ATK_BLOCK;
if(src_skill_id == MH_STEINWAND){
if (--group->val2<=0)
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
if( (group->val3 - damage) > 0 )
group->val3 -= (int)cap_value(damage, INT_MIN, INT_MAX);
else
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
return 0;
}
if( skill_id == SO_ELEMENTAL_SHIELD ) {
if ( ( group->val2 - damage) > 0 ) {
group->val2 -= (int)cap_value(damage,INT_MIN,INT_MAX);
} else
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
return 0;
}
/**
@@ -2853,12 +2853,12 @@ static int64 battle_calc_damage(struct block_list *src, struct block_list *bl, s
if ( ( group->val2 - damage) > 0 ) {
group->val2 -= (int)cap_value(damage,INT_MIN,INT_MAX);
} else
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
if (--group->val3<=0)
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
#else
if (--group->val2<=0)
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
#endif
return 0;
}
@@ -3750,7 +3750,7 @@ static struct Damage battle_calc_magic_attack(struct block_list *src, struct blo
if (sc){
if( sc->data[SC_TELEKINESIS_INTENSE] && s_ele == ELE_GHOST )
- ad.damage += sc->data[SC_TELEKINESIS_INTENSE]->val3;
+ ad.damage += ad.damage * sc->data[SC_TELEKINESIS_INTENSE]->val3 / 100;
}
switch(skill_id){
case MG_FIREBOLT:
@@ -4124,13 +4124,6 @@ static struct Damage battle_calc_misc_attack(struct block_list *src, struct bloc
case NPC_EVILLAND:
md.damage = skill->calc_heal(src,target,skill_id,skill_lv,false);
break;
- case RK_DRAGONBREATH:
- case RK_DRAGONBREATH_WATER:
- md.damage = ((status_get_hp(src) / 50) + (status_get_max_sp(src) / 4)) * skill_lv;
- RE_LVL_MDMOD(150);
- if (sd) md.damage = md.damage * (95 + 5 * pc->checkskill(sd,RK_DRAGONTRAINING)) / 100;
- md.flag |= BF_LONG|BF_WEAPON;
- break;
/**
* Ranger
**/
@@ -4958,6 +4951,12 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src, struct bl
break;
}
break;
+ case RK_DRAGONBREATH:
+ case RK_DRAGONBREATH_WATER:
+ wd.damage = ((status_get_hp(src) / 50) + (status_get_max_sp(src) / 4)) * skill_lv;
+ wd.damage = wd.damage * status->get_lv(src) / 150;
+ if (sd) wd.damage = wd.damage * (95 + 5 * pc->checkskill(sd, RK_DRAGONTRAINING)) / 100;
+ break;
default:
{
i = (flag.cri
@@ -5928,21 +5927,21 @@ static void battle_reflect_damage(struct block_list *target, struct block_list *
delay += 100;/* gradual increase so the numbers don't clip in the client */
}
if( sc->data[SC_LG_REFLECTDAMAGE] && rnd()%100 < (30 + 10*sc->data[SC_LG_REFLECTDAMAGE]->val1) ) {
- bool change = false;
-
NORMALIZE_RDAMAGE(damage * sc->data[SC_LG_REFLECTDAMAGE]->val2 / 100);
trdamage -= rdamage;/* wont count towards total */
- if( sd && !sd->state.autocast ) {
- change = true;
- sd->state.autocast = 1;
+ enum autocast_type ac_type;
+
+ if (sd != NULL) {
+ ac_type = sd->auto_cast_current.type;
+ sd->auto_cast_current.type = AUTOCAST_TEMP;
}
map->foreachinshootrange(battle->damage_area,target,skill->get_splash(LG_REFLECTDAMAGE,1),BL_CHAR,tick,target,delay,wd->dmotion,rdamage,status_get_race(target));
- if( change )
- sd->state.autocast = 0;
+ if (sd != NULL)
+ sd->auto_cast_current.type = ac_type;
delay += 150;/* gradual increase so the numbers don't clip in the client */
@@ -6132,7 +6131,7 @@ static int battle_damage_area(struct block_list *bl, va_list ap)
else
status_fix_damage(src,bl,damage,0);
clif->damage(bl,bl,amotion,dmotion,damage,1,BDT_ENDURE,0);
- if (src->type != BL_PC || !BL_UCCAST(BL_PC, src)->state.autocast)
+ if (src->type != BL_PC || BL_UCCAST(BL_PC, src)->auto_cast_current.type != AUTOCAST_TEMP)
skill->additional_effect(src, bl, CR_REFLECTSHIELD, 1, BF_WEAPON|BF_SHORT|BF_NORMAL,ATK_DEF,tick);
map->freeblock_unlock();
}
@@ -6341,7 +6340,7 @@ static enum damage_lv battle_weapon_attack(struct block_list *src, struct block_
skill_id = AB_DUPLELIGHT_MELEE;
else
skill_id = AB_DUPLELIGHT_MAGIC;
- skill->attack(skill->get_type(skill_id), src, src, target, skill_id, sc->data[SC_DUPLELIGHT]->val1, tick, SD_LEVEL);
+ skill->attack(skill->get_type(skill_id, sc->data[SC_DUPLELIGHT]->val1), src, src, target, skill_id, sc->data[SC_DUPLELIGHT]->val1, tick, SD_LEVEL);
}
}
@@ -6456,10 +6455,10 @@ static enum damage_lv battle_weapon_attack(struct block_list *src, struct block_
}
}
- sd->state.autocast = 1;
+ sd->auto_cast_current.type = AUTOCAST_TEMP;
skill->consume_requirement(sd,r_skill,r_lv,3);
skill->castend_type(type, src, target, r_skill, r_lv, tick, flag);
- sd->state.autocast = 0;
+ sd->auto_cast_current.type = AUTOCAST_NONE;
sd->ud.canact_tick = tick + skill->delay_fix(src, r_skill, r_lv);
clif->status_change(src, status->get_sc_icon(SC_POSTDELAY), status->get_sc_relevant_bl_types(SC_POSTDELAY), 1, skill->delay_fix(src, r_skill, r_lv), 0, 0, 1);
}
@@ -7085,16 +7084,15 @@ static const struct battle_data {
{ "guild_emperium_check", &battle_config.guild_emperium_check, 1, 0, 1, },
{ "guild_exp_limit", &battle_config.guild_exp_limit, 50, 0, 99, },
{ "player_invincible_time", &battle_config.pc_invincible_time, 5000, 0, INT_MAX, },
+ { "pet_catch_rate_official_formula", &battle_config.pet_catch_rate_official_formula, 1, 0, 1, },
{ "pet_catch_rate", &battle_config.pet_catch_rate, 100, 0, INT_MAX, },
{ "pet_rename", &battle_config.pet_rename, 0, 0, 1, },
{ "pet_friendly_rate", &battle_config.pet_friendly_rate, 100, 0, INT_MAX, },
{ "pet_hungry_delay_rate", &battle_config.pet_hungry_delay_rate, 100, 10, INT_MAX, },
- { "pet_hungry_friendly_decrease", &battle_config.pet_hungry_friendly_decrease, 5, 0, INT_MAX, },
{ "pet_status_support", &battle_config.pet_status_support, 0, 0, 1, },
{ "pet_attack_support", &battle_config.pet_attack_support, 0, 0, 1, },
{ "pet_damage_support", &battle_config.pet_damage_support, 0, 0, 1, },
{ "pet_support_min_friendly", &battle_config.pet_support_min_friendly, 900, 0, 950, },
- { "pet_equip_min_friendly", &battle_config.pet_equip_min_friendly, 900, 0, 950, },
{ "pet_support_rate", &battle_config.pet_support_rate, 100, 0, INT_MAX, },
{ "pet_attack_exp_to_master", &battle_config.pet_attack_exp_to_master, 0, 0, 1, },
{ "pet_attack_exp_rate", &battle_config.pet_attack_exp_rate, 100, 0, INT_MAX, },
diff --git a/src/map/battle.h b/src/map/battle.h
index 2e710f7f8..bb907d5b9 100644
--- a/src/map/battle.h
+++ b/src/map/battle.h
@@ -212,16 +212,15 @@ struct Battle_Config {
int guild_aura;
int pc_invincible_time;
+ int pet_catch_rate_official_formula;
int pet_catch_rate;
int pet_rename;
int pet_friendly_rate;
int pet_hungry_delay_rate;
- int pet_hungry_friendly_decrease;
int pet_status_support;
int pet_attack_support;
int pet_damage_support;
int pet_support_min_friendly; //[Skotlex]
- int pet_equip_min_friendly;
int pet_support_rate;
int pet_attack_exp_to_master;
int pet_attack_exp_rate;
diff --git a/src/map/chrif.c b/src/map/chrif.c
index b131907e0..ac5fb4dd0 100644
--- a/src/map/chrif.c
+++ b/src/map/chrif.c
@@ -863,6 +863,8 @@ static bool chrif_changesex(struct map_session_data *sd, bool change_account)
nullpo_retr(false, sd);
chrif_check(false);
+ chrif->save(sd, 0);
+
WFIFOHEAD(chrif->fd,44);
WFIFOW(chrif->fd,0) = 0x2b0e;
WFIFOL(chrif->fd,2) = sd->status.account_id;
diff --git a/src/map/clif.c b/src/map/clif.c
index c9e018f73..6d67b5114 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -936,19 +936,25 @@ static void clif_clearunit_area(struct block_list *bl, enum clr_type type)
static int clif_clearunit_delayed_sub(int tid, int64 tick, int id, intptr_t data)
{
struct block_list *bl = (struct block_list *)data;
+ nullpo_ret(bl);
+ Assert_ret(bl->m >= 0 && bl->m < map->count);
+ if (map->list[bl->m].block == NULL) {
+ // avoid error report for missing/removed map
+ ers_free(clif->delay_clearunit_ers, bl);
+ return 0;
+ }
clif->clearunit_area(bl, (enum clr_type) id);
- ers_free(clif->delay_clearunit_ers,bl);
+ ers_free(clif->delay_clearunit_ers, bl);
return 0;
}
static void clif_clearunit_delayed(struct block_list *bl, enum clr_type type, int64 tick)
{
- struct block_list *tbl;
-
nullpo_retv(bl);
- tbl = ers_alloc(clif->delay_clearunit_ers, struct block_list);
- memcpy (tbl, bl, sizeof (struct block_list));
- timer->add(tick, clif->clearunit_delayed_sub, (int)type, (intptr_t)tbl);
+ Assert_retv(bl->type == BL_MOB);
+ struct mob_data *md = ers_alloc(clif->delay_clearunit_ers, struct mob_data);
+ memcpy (md, bl, sizeof (struct mob_data));
+ timer->add(tick, clif->clearunit_delayed_sub, (int)type, (intptr_t)md);
}
/// Gets weapon view info from sd's inventory_data and points (*rhand,*lhand)
@@ -1031,6 +1037,7 @@ static void clif_set_unit_idle2(struct block_list *bl, struct map_session_data *
int g_id = status->get_guild_id(bl);
nullpo_retv(bl);
+ nullpo_retv(vd);
sd = BL_CAST(BL_PC, bl);
p.PacketType = idle_unit2Type;
@@ -1087,6 +1094,7 @@ static void clif_set_unit_idle(struct block_list *bl, struct map_session_data *t
int g_id = status->get_guild_id(bl);
nullpo_retv(bl);
+ nullpo_retv(vd);
#if PACKETVER < 20091103
if (!pc->db_checkid(vd->class)) {
@@ -1197,6 +1205,7 @@ static void clif_spawn_unit2(struct block_list *bl, enum send_target target)
int g_id = status->get_guild_id(bl);
nullpo_retv(bl);
+ nullpo_retv(vd);
sd = BL_CAST(BL_PC, bl);
p.PacketType = spawn_unit2Type;
@@ -1244,6 +1253,7 @@ static void clif_spawn_unit(struct block_list *bl, enum send_target target)
int g_id = status->get_guild_id(bl);
nullpo_retv(bl);
+ nullpo_retv(vd);
#if PACKETVER < 20091103
if (!pc->db_checkid(vd->class)) {
@@ -1357,6 +1367,7 @@ static void clif_set_unit_walking(struct block_list *bl, struct map_session_data
nullpo_retv(bl);
nullpo_retv(ud);
+ nullpo_retv(vd);
sd = BL_CAST(BL_PC, bl);
@@ -6766,7 +6777,7 @@ static void clif_item_skill(struct map_session_data *sd, uint16 skill_id, uint16
struct PACKET_ZC_AUTORUN_SKILL *p = WFIFOP(fd, 0);
int type = skill->get_inf(skill_id);
- if (sd->state.itemskill_castonself == 1 && skill->is_item_skill(sd, skill_id, skill_lv))
+ if (sd->auto_cast_current.itemskill_cast_on_self && sd->auto_cast_current.type == AUTOCAST_ITEM)
type = INF_SELF_SKILL;
p->packetType = HEADER_ZC_AUTORUN_SKILL;
@@ -9382,82 +9393,98 @@ static void clif_send_selforarea(int fd, struct block_list *bl, const void *buf,
}
}
-/// Updates the object's (bl) name on client.
-/// 0095 <id>.L <char name>.24B (ZC_ACK_REQNAME)
-/// 0195 <id>.L <char name>.24B <party name>.24B <guild name>.24B <position name>.24B (ZC_ACK_REQNAMEALL)
-/// 0A30 <id>.L <char name>.24B <party name>.24B <guild name>.24B <position name>.24B <title id>.L (ZC_ACK_REQNAMEALL2)
+/**
+ * Updates a character's name on client.
+ *
+ * @code
+ * 0095 <id>.L <char name>.24B (ZC_ACK_REQNAME)
+ * 0195 <id>.L <char name>.24B <party name>.24B <guild name>.24B <position name>.24B (ZC_ACK_REQNAMEALL)
+ * 0A30 <id>.L <char name>.24B <party name>.24B <guild name>.24B <position name>.24B <title id>.L (ZC_ACK_REQNAMEALL2)
+ * @endcode
+ *
+ * @param fd The incoming file descriptor.
+ * @param bl The related character's block list.
+ *
+ **/
static void clif_pcname_ack(int fd, struct block_list *bl)
{
nullpo_retv(bl);
Assert_retv(bl->type == BL_PC);
- struct PACKET_ZC_ACK_REQNAMEALL packet = { 0 };
- int len = sizeof(struct PACKET_ZC_ACK_REQNAMEALL);
+ struct PACKET_ZC_ACK_REQNAMEALL packet = {0};
+ packet.packet_id = HEADER_ZC_ACK_REQNAMEALL;
packet.gid = bl->id;
const struct map_session_data *ssd = BL_UCCAST(BL_PC, bl);
- if (ssd->fakename[0] != '\0') {
- packet.packet_id = reqName;
- len = sizeof(struct packet_reqname_ack);
- } else {
- packet.packet_id = HEADER_ZC_ACK_REQNAMEALL;
- len = sizeof(struct PACKET_ZC_ACK_REQNAMEALL);
- }
-
- //Requesting your own "shadow" name. [Skotlex]
- if (ssd->fd == fd && ssd->disguise != -1) {
+ if (ssd->fd == fd && ssd->disguise != -1) // Requesting your own "shadow" name.
packet.gid = -bl->id;
- }
- if (ssd->fakename[0] != '\0') {
+ if (ssd->fakename[0] != '\0')
memcpy(packet.name, ssd->fakename, NAME_LENGTH);
- } else {
-#if PACKETVER_MAIN_NUM >= 20150225 || PACKETVER_RE_NUM >= 20141126 || defined(PACKETVER_ZERO)
- // Title System [Dastgir/Hercules]
- if (ssd->status.title_id > 0) {
- packet.title_id = ssd->status.title_id;
- }
-#endif
+ else
memcpy(packet.name, ssd->status.name, NAME_LENGTH);
- const struct party_data *p = NULL;
- int ps = -1;
- if (ssd->status.party_id != 0) {
- p = party->search(ssd->status.party_id);
- }
- const struct guild *g = NULL;
- if (ssd->status.guild_id != 0) {
- if ((g = ssd->guild) != NULL) {
- int i;
- ARR_FIND(0, g->max_member, i, g->member[i].account_id == ssd->status.account_id && g->member[i].char_id == ssd->status.char_id);
- if (i < g->max_member)
- ps = g->member[i].position;
- }
- }
+ const struct party_data *p = NULL;
- if (!battle_config.display_party_name && g == NULL) {
- // do not display party unless the player is also in a guild
- p = NULL;
- }
+ if (ssd->status.party_id != 0)
+ p = party->search(ssd->status.party_id);
+
+ const struct guild *g = NULL;
+ int pos_idx = INDEX_NOT_FOUND;
+
+ if (ssd->status.guild_id != 0 && (g = ssd->guild) != NULL) {
+ int i;
+ int acc_id = ssd->status.account_id;
+ int chr_id = ssd->status.char_id;
+
+ ARR_FIND(0, g->max_member, i, g->member[i].account_id == acc_id && g->member[i].char_id == chr_id);
+
+ if (i < g->max_member)
+ pos_idx = g->member[i].position;
+ }
- if (p != NULL) {
+ if (battle_config.display_party_name == 0 && g == NULL)
+ p = NULL; // Do not display party name, unless the character is also in a guild.
+
+ if (p != NULL) {
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_PARTYNAME) != 0)
+ || ssd->fakename[0] == '\0') {
memcpy(packet.party_name, p->party.name, NAME_LENGTH);
}
+ }
- if (g != NULL && ps >= 0 && ps < MAX_GUILDPOSITION) {
+ if (g != NULL && pos_idx >= 0 && pos_idx < MAX_GUILDPOSITION) {
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_GUILDNAME) != 0)
+ || ssd->fakename[0] == '\0') {
memcpy(packet.guild_name, g->name,NAME_LENGTH);
- memcpy(packet.position_name, g->position[ps].name, NAME_LENGTH);
}
- else if (ssd->status.clan_id != 0) {
- struct clan *c = clan->search(ssd->status.clan_id);
- if (c != 0) {
+
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_GUILDPOSITION) != 0)
+ || ssd->fakename[0] == '\0') {
+ memcpy(packet.position_name, g->position[pos_idx].name, NAME_LENGTH);
+ }
+ } else if (ssd->status.clan_id != 0) {
+ struct clan *c = clan->search(ssd->status.clan_id);
+
+ if (c != 0) {
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_CLANPOSITION) != 0)
+ || ssd->fakename[0] == '\0') {
memcpy(packet.position_name, c->name, NAME_LENGTH);
}
}
}
- clif->send_selforarea(fd, bl, &packet, len);
+#if PACKETVER_MAIN_NUM >= 20150225 || PACKETVER_RE_NUM >= 20141126 || defined(PACKETVER_ZERO) // Title system.
+ if (ssd->status.title_id > 0) {
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_TITLE) != 0)
+ || ssd->fakename[0] == '\0') {
+ packet.title_id = ssd->status.title_id;
+ }
+ }
+#endif
+
+ clif->send_selforarea(fd, bl, &packet, sizeof(struct PACKET_ZC_ACK_REQNAMEALL));
}
/// Updates the object's (bl) name on client.
@@ -9706,10 +9733,22 @@ static void clif_elemname_ack(int fd, struct block_list *bl)
clif->send_selforarea(fd, bl, &packet, sizeof(struct PACKET_ZC_ACK_REQNAME_TITLE));
}
+static void clif_skillname_ack(int fd, struct block_list *bl)
+{
+}
+
+static void clif_itemname_ack(int fd, struct block_list *bl)
+{
+ nullpo_retv(bl);
+ ShowError("clif_itemname_ack: bad type %u(%d)\n", bl->type, bl->id);
+ Assert_retv(0);
+}
+
static void clif_unknownname_ack(int fd, struct block_list *bl)
{
nullpo_retv(bl);
ShowError("clif_blname_ack: bad type %u(%d)\n", bl->type, bl->id);
+ Assert_retv(0);
}
static void clif_blname_ack(int fd, struct block_list *bl)
@@ -9741,62 +9780,102 @@ static void clif_blname_ack(int fd, struct block_list *bl)
case BL_ELEM:
clif->elemname_ack(fd, bl);
break;
+ case BL_ITEM:
+ clif->itemname_ack(fd, bl);
+ break;
+ case BL_SKILL:
+ clif->skillname_ack(fd, bl);
+ break;
default:
clif->unknownname_ack(fd, bl);
break;
}
}
-//Used to update when a char leaves a party/guild. [Skotlex]
-//Needed because when you send a 0x95 packet, the client will not remove the cached party/guild info that is not sent.
+/**
+ * Updates a character's name on client when leaving a party/guild.
+ *
+ * @code
+ * 0195 <id>.L <char name>.24B <party name>.24B <guild name>.24B <position name>.24B (ZC_ACK_REQNAMEALL)
+ * 0A30 <id>.L <char name>.24B <party name>.24B <guild name>.24B <position name>.24B <title id>.L (ZC_ACK_REQNAMEALL2)
+ * @endcode
+ *
+ * @param ssd The related character.
+ *
+ **/
static void clif_charnameupdate(struct map_session_data *ssd)
{
- int ps = -1;
- struct party_data *p = NULL;
- struct guild *g = NULL;
- struct PACKET_ZC_ACK_REQNAMEALL packet = { 0 };
-
nullpo_retv(ssd);
- if (ssd->fakename[0])
- return; //No need to update as the party/guild was not displayed anyway.
-
+ struct PACKET_ZC_ACK_REQNAMEALL packet = {0};
packet.packet_id = HEADER_ZC_ACK_REQNAMEALL;
packet.gid = ssd->bl.id;
- memcpy(packet.name, ssd->status.name, NAME_LENGTH);
+ if (ssd->fakename[0] != '\0')
+ memcpy(packet.name, ssd->fakename, NAME_LENGTH);
+ else
+ memcpy(packet.name, ssd->status.name, NAME_LENGTH);
- if (!battle_config.display_party_name) {
- if (ssd->status.party_id > 0 && ssd->status.guild_id > 0 && (g = ssd->guild) != NULL)
- p = party->search(ssd->status.party_id);
- } else {
- if (ssd->status.party_id > 0)
- p = party->search(ssd->status.party_id);
- }
+ struct party_data *p = NULL;
- if (ssd->status.guild_id > 0 && (g = ssd->guild) != NULL) {
+ if (ssd->status.party_id != 0)
+ p = party->search(ssd->status.party_id);
+
+ struct guild *g = NULL;
+ int pos_idx = INDEX_NOT_FOUND;
+
+ if (ssd->status.guild_id != 0 && (g = ssd->guild) != NULL) {
int i;
- ARR_FIND(0, g->max_member, i, g->member[i].account_id == ssd->status.account_id && g->member[i].char_id == ssd->status.char_id);
- if( i < g->max_member ) ps = g->member[i].position;
+ int acc_id = ssd->status.account_id;
+ int chr_id = ssd->status.char_id;
+
+ ARR_FIND(0, g->max_member, i, g->member[i].account_id == acc_id && g->member[i].char_id == chr_id);
+
+ if (i < g->max_member)
+ pos_idx = g->member[i].position;
}
- if (p != NULL)
- memcpy(packet.party_name, p->party.name, NAME_LENGTH);
+ if (battle_config.display_party_name == 0 && g == NULL)
+ p = NULL; // Do not display party name, unless the character is also in a guild.
- if (g != NULL && ps >= 0 && ps < MAX_GUILDPOSITION) {
- memcpy(packet.guild_name, g->name,NAME_LENGTH);
- memcpy(packet.position_name, g->position[ps].name, NAME_LENGTH);
+ if (p != NULL) {
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_PARTYNAME) != 0)
+ || ssd->fakename[0] == '\0') {
+ memcpy(packet.party_name, p->party.name, NAME_LENGTH);
+ }
}
-#if PACKETVER_MAIN_NUM >= 20150225 || PACKETVER_RE_NUM >= 20141126 || defined(PACKETVER_ZERO)
- // Achievement System [Dastgir/Hercules]
+ if (g != NULL && pos_idx >= 0 && pos_idx < MAX_GUILDPOSITION) {
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_GUILDNAME) != 0)
+ || ssd->fakename[0] == '\0') {
+ memcpy(packet.guild_name, g->name,NAME_LENGTH);
+ }
+
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_GUILDPOSITION) != 0)
+ || ssd->fakename[0] == '\0') {
+ memcpy(packet.position_name, g->position[pos_idx].name, NAME_LENGTH);
+ }
+ } else if (ssd->status.clan_id != 0) {
+ struct clan *c = clan->search(ssd->status.clan_id);
+
+ if (c != 0) {
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_CLANPOSITION) != 0)
+ || ssd->fakename[0] == '\0') {
+ memcpy(packet.position_name, c->name, NAME_LENGTH);
+ }
+ }
+ }
+
+#if PACKETVER_MAIN_NUM >= 20150225 || PACKETVER_RE_NUM >= 20141126 || defined(PACKETVER_ZERO) // Title system.
if (ssd->status.title_id > 0) {
- packet.title_id = ssd->status.title_id;
+ if ((ssd->fakename[0] != '\0' && (ssd->fakename_options & FAKENAME_OPTION_SHOW_TITLE) != 0)
+ || ssd->fakename[0] == '\0') {
+ packet.title_id = ssd->status.title_id;
+ }
}
#endif
- // Update nearby clients
- clif->send(&packet, sizeof(packet), &ssd->bl, AREA);
+ clif->send(&packet, sizeof(packet), &ssd->bl, AREA); // Update nearby clients.
}
/// Taekwon Jump (TK_HIGHJUMP) effect (ZC_HIGHJUMP).
@@ -10321,7 +10400,8 @@ static const char *clif_process_chat_message(struct map_session_data *sd, const
* @param[in] sd The source character.
* @param[in] packet The packet data.
* @param[out] out_name The parsed target name buffer (must be a valid
- * buffer of size NAME_LENGTH).
+ * buffer of size NAME_LENGTH + 1 because the client
+ * can send 24 characters without NULL terminator).
* @param[out] out_message The output message buffer (must be a valid buffer).
* @param[in] out_messagelen The size of out_message.
* @retval true if the validation succeeded and the message is a chat message.
@@ -10331,7 +10411,7 @@ static const char *clif_process_chat_message(struct map_session_data *sd, const
*/
static bool clif_process_whisper_message(struct map_session_data *sd, const struct packet_whisper_message *packet, char *out_name, char *out_message, int out_messagelen)
{
- int namelen = 0, messagelen = 0;
+ int messagelen = 0;
nullpo_retr(false, sd);
nullpo_retr(false, packet);
@@ -10344,15 +10424,6 @@ static bool clif_process_whisper_message(struct map_session_data *sd, const stru
return false;
}
- // validate name
- namelen = (int)strnlen(packet->name, NAME_LENGTH-1); // name length (w/o zero byte)
-
- if (packet->name[namelen] != '\0') {
- // only restriction is that the name must be zero-terminated
- ShowWarning("clif_process_whisper_message: Player '%s' sent an unterminated name!\n", sd->status.name);
- return false;
- }
-
#if PACKETVER >= 20151001
// Packet doesn't include a NUL terminator
messagelen = packet->packet_len - NAME_LENGTH - 4;
@@ -10371,7 +10442,7 @@ static bool clif_process_whisper_message(struct map_session_data *sd, const stru
return false;
}
- safestrncpy(out_name, packet->name, namelen+1); // [!] packet->name is not NUL terminated
+ safestrncpy(out_name, packet->name, NAME_LENGTH + 1); // [!] packet->name is not NUL terminated
safestrncpy(out_message, packet->message, messagelen+1); // [!] packet->message is not necessarily NUL terminated
if (!pc->process_chat_message(sd, out_message))
@@ -10539,51 +10610,60 @@ static void clif_parse_WantToConnection(int fd, struct map_session_data *sd)
chrif->authreq(sd,false);
}
+/**
+ * Notification from the client, that it has finished map loading and is about to display player's character. (CZ_NOTIFY_ACTORINIT)
+ *
+ * @code
+ * 007d
+ * @endcode
+ *
+ * @param fd The incoming file descriptor.
+ * @param sd The related character.
+ *
+ **/
static void clif_parse_LoadEndAck(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
-/// Notification from the client, that it has finished map loading and is about to display player's character (CZ_NOTIFY_ACTORINIT).
-/// 007d
static void clif_parse_LoadEndAck(int fd, struct map_session_data *sd)
{
- bool first_time = false;
-
- if(sd->bl.prev != NULL)
+ if (sd->bl.prev != NULL)
return;
- if (!sd->state.active) { //Character loading is not complete yet!
- //Let pc->reg_received reinvoke this when ready.
+ if (sd->state.active == 0) { // Character loading is not complete yet! Let pc->reg_received reinvoke this when ready.
sd->state.connect_new = 0;
return;
}
- if (sd->state.rewarp) { //Rewarp player.
+ if (sd->state.rewarp != 0) { // Rewarp character.
sd->state.rewarp = 0;
clif->changemap(sd, sd->bl.m, sd->bl.x, sd->bl.y);
return;
}
sd->state.warping = 0;
- sd->state.dialog = 0;/* reset when warping, client dialog will go missing */
+ sd->state.dialog = 0; // Reset when warping. Client dialog will go missing.
- // Character Looks
+ // Character looks.
#if PACKETVER < 4
clif->changelook(&sd->bl, LOOK_WEAPON, sd->status.look.weapon);
clif->changelook(&sd->bl, LOOK_SHIELD, sd->status.look.shield);
#else
- clif->changelook(&sd->bl,LOOK_WEAPON,0);
+ clif->changelook(&sd->bl, LOOK_WEAPON, 0);
#endif
- if(sd->vd.cloth_color)
- clif->refreshlook(&sd->bl,sd->bl.id,LOOK_CLOTHES_COLOR,sd->vd.cloth_color,SELF);
+ if (sd->vd.cloth_color != 0)
+ clif->refreshlook(&sd->bl, sd->bl.id, LOOK_CLOTHES_COLOR, sd->vd.cloth_color, SELF);
- if (sd->vd.body_style)
- clif->refreshlook(&sd->bl,sd->bl.id,LOOK_BODY2,sd->vd.body_style,SELF);
+ if (sd->vd.body_style != 0)
+ clif->refreshlook(&sd->bl, sd->bl.id, LOOK_BODY2, sd->vd.body_style, SELF);
- // Send character inventory to the client.
- // call this before pc->checkitem() so that the client isn't called to delete a non-existent item.
+ /**
+ * Send character inventory to the client.
+ * Call this before pc->checkitem() so that the client isn't called to delete a non-existent items.
+ *
+ **/
clif->inventoryList(sd);
// Send the cart inventory, counts & weight to the client.
- if(pc_iscarton(sd)) {
+ if (pc_iscarton(sd)) {
clif->cartList(sd);
clif->updatestatus(sd, SP_CARTINFO);
}
@@ -10654,309 +10734,330 @@ static void clif_parse_LoadEndAck(int fd, struct map_session_data *sd)
clif->updatestatus(sd, SP_WEIGHT);
clif->updatestatus(sd, SP_MAXWEIGHT);
- // guild
- // (needs to go before clif_spawn() to show guild emblems correctly)
- if(sd->status.guild_id)
- guild->send_memberinfoshort(sd,1);
+ // Send character's guild info to the client. Call this before clif->spawn() to show guild emblems correctly.
+ if (sd->status.guild_id != 0)
+ guild->send_memberinfoshort(sd, 1);
- if(battle_config.pc_invincible_time > 0) {
- pc->setinvincibletimer(sd,battle_config.pc_invincible_time);
- }
+ if (battle_config.pc_invincible_time > 0)
+ pc->setinvincibletimer(sd, battle_config.pc_invincible_time);
- if( map->list[sd->bl.m].users++ == 0 && battle_config.dynamic_mobs )
+ if (map->list[sd->bl.m].users++ == 0 && battle_config.dynamic_mobs != 0)
map->spawnmobs(sd->bl.m);
- if( map->list[sd->bl.m].instance_id >= 0 ) {
+ if (map->list[sd->bl.m].instance_id >= 0) {
instance->list[map->list[sd->bl.m].instance_id].users++;
instance->check_idle(map->list[sd->bl.m].instance_id);
}
- if( pc_has_permission(sd,PC_PERM_VIEW_HPMETER) ) {
+ if (pc_has_permission(sd, PC_PERM_VIEW_HPMETER)) {
map->list[sd->bl.m].hpmeter_visible++;
sd->state.hpmeter_visible = 1;
}
- if (!pc_isinvisible(sd)) { // increment the number of pvp players on the map
+ if (!pc_isinvisible(sd)) // Increment the number of pvp players on the map.
map->list[sd->bl.m].users_pvp++;
- }
-
- sd->state.debug_remove_map = 0; // temporary state to track double remove_map's [FlavioJS]
- // reset the callshop flag if the player changes map
- sd->state.callshop = 0;
+ sd->state.debug_remove_map = 0; // Temporary state to track double calls of unit->remove_map(). [FlavioJS]
+ sd->state.callshop = 0; // Reset the callshop flag if the character changes map.
+ map->addblock(&sd->bl); // Add the character to the map.
+ clif->spawn(&sd->bl); // Spawn character client side.
- map->addblock(&sd->bl);
- clif->spawn(&sd->bl);
-
- // Party
- // (needs to go after clif_spawn() to show hp bars correctly)
- if(sd->status.party_id) {
+ // Send character's party info to the client. Call this after clif->spawn() to show HP bars correctly.
+ if (sd->status.party_id != 0) {
party->send_movemap(sd);
- clif->party_hp(sd); // Show hp after displacement [LuzZza]
+ clif->party_hp(sd); // Show HP after displacement. [LuzZza]
}
- if( sd->bg_id ) clif->bg_hp(sd); // BattleGround System
+ if (sd->bg_id != 0)
+ clif->bg_hp(sd); // BattleGround system.
+
+ if (map->list[sd->bl.m].flag.pvp != 0 && !pc_isinvisible(sd)) {
+ if (battle_config.pk_mode == 0) { // Remove PVP stuff for pk_mode. [Valaris]
+ if (map->list[sd->bl.m].flag.pvp_nocalcrank == 0)
+ sd->pvp_timer = timer->add(timer->gettick() + 200, pc->calc_pvprank_timer, sd->bl.id, 0);
- if (map->list[sd->bl.m].flag.pvp && !pc_isinvisible(sd)) {
- if(!battle_config.pk_mode) { // remove pvp stuff for pk_mode [Valaris]
- if (!map->list[sd->bl.m].flag.pvp_nocalcrank)
- sd->pvp_timer = timer->add(timer->gettick()+200, pc->calc_pvprank_timer, sd->bl.id, 0);
sd->pvp_rank = 0;
sd->pvp_lastusers = 0;
sd->pvp_point = 5;
sd->pvp_won = 0;
sd->pvp_lost = 0;
}
+
clif->map_property(sd, MAPPROPERTY_FREEPVPZONE);
- } else
- // set flag, if it's a duel [LuzZza]
- if(sd->duel_group)
+ } else if(sd->duel_group != 0) { // Set flag, if it's a duel. [LuzZza]
clif->map_property(sd, MAPPROPERTY_FREEPVPZONE);
+ }
- if (map->list[sd->bl.m].flag.gvg_dungeon)
+ if (map->list[sd->bl.m].flag.gvg_dungeon != 0)
clif->map_property(sd, MAPPROPERTY_FREEPVPZONE); //TODO: Figure out the real packet to send here.
- if( map_flag_gvg2(sd->bl.m) )
+ if (map_flag_gvg2(sd->bl.m))
clif->map_property(sd, MAPPROPERTY_AGITZONE);
- // info about nearby objects
- // must use foreachinarea (CIRCULAR_AREA interferes with foreachinrange)
- map->foreachinarea(clif->getareachar, sd->bl.m, sd->bl.x-AREA_SIZE, sd->bl.y-AREA_SIZE, sd->bl.x+AREA_SIZE, sd->bl.y+AREA_SIZE, BL_ALL, sd);
+ // Info about nearby objects. Must use map->foreachinarea(). (CIRCULAR_AREA interferes with map->foreachinrange().)
+ map->foreachinarea(clif->getareachar, sd->bl.m, sd->bl.x - AREA_SIZE, sd->bl.y - AREA_SIZE,
+ sd->bl.x + AREA_SIZE, sd->bl.y + AREA_SIZE, BL_ALL, sd);
- // pet
- if( sd->pd ) {
- if( battle_config.pet_no_gvg && map_flag_gvg2(sd->bl.m) ) { //Return the pet to egg. [Skotlex]
- clif->message(sd->fd, msg_sd(sd,866)); // "Pets are not allowed in Guild Wars."
- pet->menu(sd, 3); //Option 3 is return to egg.
+ // Spawn pet.
+ if (sd->pd != NULL) {
+ if (battle_config.pet_no_gvg != 0 && map_flag_gvg2(sd->bl.m)) { // Return the pet to egg. [Skotlex]
+ clif->message(sd->fd, msg_sd(sd, 866)); // "Pets are not allowed in Guild Wars."
+ pet->menu(sd, 3); // Option 3 is return to egg.
} else {
map->addblock(&sd->pd->bl);
clif->spawn(&sd->pd->bl);
- clif->send_petdata(sd,sd->pd,0,0);
+ clif->send_petdata(sd,sd->pd, 0, 0);
clif->send_petstatus(sd);
- //skill->unit_move(&sd->pd->bl,timer->gettick(),1);
}
}
- //homunculus [blackhole89]
- if( homun_alive(sd->hd) ) {
+ // Spawn homunculus. [blackhole89]
+ if (homun_alive(sd->hd)) {
map->addblock(&sd->hd->bl);
clif->spawn(&sd->hd->bl);
- clif->send_homdata(sd,SP_ACK,0);
- clif->hominfo(sd,sd->hd,1);
- clif->hominfo(sd,sd->hd,0); //for some reason, at least older clients want this sent twice
+ clif->send_homdata(sd, SP_ACK, 0);
+ clif->hominfo(sd,sd->hd, 1);
+ clif->hominfo(sd,sd->hd, 0); // For some reason, at least older clients want this sent twice.
clif->homskillinfoblock(sd);
- if( battle_config.hom_setting&0x8 )
- status_calc_bl(&sd->hd->bl, SCB_SPEED); //Homunc mimic their master's speed on each map change
- if( !(battle_config.hom_setting&0x2) )
- skill->unit_move(&sd->hd->bl,timer->gettick(),1); // apply land skills immediately
+
+ if ((battle_config.hom_setting & 0x8) != 0)
+ status_calc_bl(&sd->hd->bl, SCB_SPEED); // Homunculi mimic their master's speed on each map change.
+
+ if ((battle_config.hom_setting & 0x2) == 0)
+ skill->unit_move(&sd->hd->bl, timer->gettick(), 1); // Apply land skills immediately.
}
- if( sd->md ) {
+ // Spawn mercenary.
+ if (sd->md != NULL) {
map->addblock(&sd->md->bl);
clif->spawn(&sd->md->bl);
clif->mercenary_info(sd);
clif->mercenary_skillblock(sd);
- status_calc_bl(&sd->md->bl, SCB_SPEED); // Mercenary mimic their master's speed on each map change
+ status_calc_bl(&sd->md->bl, SCB_SPEED); // Mercenaries mimic their master's speed on each map change.
}
- if( sd->ed ) {
+ // Spawn elemental.
+ if (sd->ed != NULL) {
map->addblock(&sd->ed->bl);
clif->spawn(&sd->ed->bl);
clif->elemental_info(sd);
- clif->elemental_updatestatus(sd,SP_HP);
- clif->hpmeter_single(sd->fd,sd->ed->bl.id,sd->ed->battle_status.hp,sd->ed->battle_status.max_hp);
- clif->elemental_updatestatus(sd,SP_SP);
- status_calc_bl(&sd->ed->bl, SCB_SPEED); //Elemental mimic their master's speed on each map change
+ clif->elemental_updatestatus(sd, SP_HP);
+ clif->hpmeter_single(sd->fd, sd->ed->bl.id, sd->ed->battle_status.hp, sd->ed->battle_status.max_hp);
+ clif->elemental_updatestatus(sd, SP_SP);
+ status_calc_bl(&sd->ed->bl, SCB_SPEED); // Elementals mimic their master's speed on each map change.
}
- if(sd->state.connect_new) {
- int lv;
+ bool first_time = false;
+
+ if (sd->state.connect_new != 0) {
first_time = true;
sd->state.connect_new = 0;
clif->skillinfoblock(sd);
clif->hotkeysAll(sd);
- clif->updatestatus(sd,SP_BASEEXP);
- clif->updatestatus(sd,SP_NEXTBASEEXP);
- clif->updatestatus(sd,SP_JOBEXP);
- clif->updatestatus(sd,SP_NEXTJOBEXP);
- clif->updatestatus(sd,SP_SKILLPOINT);
+ clif->updatestatus(sd, SP_BASEEXP);
+ clif->updatestatus(sd, SP_NEXTBASEEXP);
+ clif->updatestatus(sd, SP_JOBEXP);
+ clif->updatestatus(sd, SP_NEXTJOBEXP);
+ clif->updatestatus(sd, SP_SKILLPOINT);
clif->initialstatus(sd);
- if (pc_isfalcon(sd))
- clif->status_change(&sd->bl, status->get_sc_icon(SC_FALCON), status->get_sc_relevant_bl_types(SC_FALCON), 1, 0, 0, 0, 0);
- if (pc_isridingpeco(sd) || pc_isridingdragon(sd))
- clif->status_change(&sd->bl, status->get_sc_icon(SC_RIDING), status->get_sc_relevant_bl_types(SC_RIDING), 1, 0, 0, 0, 0);
- else if (pc_isridingwug(sd))
- clif->status_change(&sd->bl, status->get_sc_icon(SC_WUGRIDER), status->get_sc_relevant_bl_types(SC_WUGRIDER), 1, 0, 0, 0, 0);
+ if (pc_isfalcon(sd)) {
+ int sc_icn = status->get_sc_icon(SC_FALCON);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_FALCON);
+ clif->status_change(&sd->bl, sc_icn, sc_typ, 1, 0, 0, 0, 0);
+ }
- if(sd->status.manner < 0)
- sc_start(NULL,&sd->bl,SC_NOCHAT,100,0,0);
+ if (pc_isridingpeco(sd) || pc_isridingdragon(sd)) {
+ int sc_icn = status->get_sc_icon(SC_RIDING);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RIDING);
+ clif->status_change(&sd->bl, sc_icn, sc_typ, 1, 0, 0, 0, 0);
+ } else if (pc_isridingwug(sd)) {
+ int sc_icn = status->get_sc_icon(SC_WUGRIDER);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_WUGRIDER);
+ clif->status_change(&sd->bl, sc_icn, sc_typ, 1, 0, 0, 0, 0);
+ }
- //Auron reported that This skill only triggers when you logon on the map o.O [Skotlex]
- if ((lv = pc->checkskill(sd,SG_KNOWLEDGE)) > 0) {
- int i;
- for (i = 0; i < MAX_PC_FEELHATE; i++) {
+ if (sd->status.manner < 0)
+ sc_start(NULL, &sd->bl, SC_NOCHAT, 100, 0, 0);
+
+ int lv = pc->checkskill(sd,SG_KNOWLEDGE);
+
+ // Auron reported that this skill only triggers when you logon on the map. [Skotlex]
+ if (lv > 0) {
+ for (int i = 0; i < MAX_PC_FEELHATE; i++) {
if (sd->bl.m == sd->feel_map[i].m) {
- sc_start(NULL,&sd->bl, SC_KNOWLEDGE, 100, lv, skill->get_time(SG_KNOWLEDGE, lv));
+ sc_start(NULL, &sd->bl, SC_KNOWLEDGE, 100, lv, skill->get_time(SG_KNOWLEDGE, lv));
break;
}
}
}
- if(sd->pd && sd->pd->pet.intimate > 900)
- clif->pet_emotion(sd->pd,(sd->pd->pet.class_ - 100)*100 + 50 + pet->hungry_val(sd->pd));
+ if (sd->pd != NULL && sd->pd->pet.intimate > PET_INTIMACY_LOYAL)
+ clif->pet_emotion(sd->pd, (sd->pd->pet.class_ - 100) * 100 + 50 + pet->hungry_val(sd->pd));
- if(homun_alive(sd->hd))
+ if (homun_alive(sd->hd))
homun->init_timers(sd->hd);
- if (map->night_flag && map->list[sd->bl.m].flag.nightenabled) {
+ if (map->night_flag != 0 && map->list[sd->bl.m].flag.nightenabled != 0) {
+ int sc_icn = status->get_sc_icon(SC_SKE);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_SKE);
+
sd->state.night = 1;
- clif->status_change(&sd->bl, status->get_sc_icon(SC_SKE), status->get_sc_relevant_bl_types(SC_SKE), 1, 0, 0, 0, 0);
+ clif->status_change(&sd->bl, sc_icn, sc_typ, 1, 0, 0, 0, 0);
}
- // Notify everyone that this char logged in [Skotlex].
+ // Notify everyone that this character logged in. [Skotlex]
map->foreachpc(clif->friendslist_toggle_sub, sd->status.account_id, sd->status.char_id, 1);
- //Login Event
+ // Run OnPCLoginEvent labels.
npc->script_event(sd, NPCE_LOGIN);
} else {
- //For some reason the client "loses" these on warp/map-change.
- clif->updatestatus(sd,SP_STR);
- clif->updatestatus(sd,SP_AGI);
- clif->updatestatus(sd,SP_VIT);
- clif->updatestatus(sd,SP_INT);
- clif->updatestatus(sd,SP_DEX);
- clif->updatestatus(sd,SP_LUK);
-
- if (sd->state.warp_clean) {
- // abort currently running script
+ // For some reason the client "loses" these on warp/map-change.
+ clif->updatestatus(sd, SP_STR);
+ clif->updatestatus(sd, SP_AGI);
+ clif->updatestatus(sd, SP_VIT);
+ clif->updatestatus(sd, SP_INT);
+ clif->updatestatus(sd, SP_DEX);
+ clif->updatestatus(sd, SP_LUK);
+
+ if (sd->state.warp_clean != 0) { // Abort currently running script.
sd->state.using_fake_npc = 0;
sd->state.menu_or_input = 0;
sd->npc_menu = 0;
- if(sd->npc_id)
+
+ if (sd->npc_id != 0)
npc->event_dequeue(sd);
} else {
sd->state.warp_clean = 1;
}
- if( sd->guild && ( battle_config.guild_notice_changemap == 2 || ( battle_config.guild_notice_changemap == 1 && sd->state.changemap ) ) )
- clif->guild_notice(sd,sd->guild);
+
+ if (sd->guild != NULL && ((battle_config.guild_notice_changemap == 1 && sd->state.changemap != 0)
+ || battle_config.guild_notice_changemap == 2)) {
+ clif->guild_notice(sd, sd->guild);
+ }
}
- if( sd->state.changemap ) {// restore information that gets lost on map-change
+ if (sd->state.changemap != 0) { // Restore information that gets lost on map-change.
#if PACKETVER >= 20070918
clif->partyinvitationstate(sd);
clif->equpcheckbox(sd);
#endif
#if PACKETVER_MAIN_NUM >= 20171025 || PACKETVER_RE_NUM >= 20170920
- if (sd->hd != NULL)
- clif->zc_config(sd, CZ_CONFIG_HOMUNCULUS_AUTOFEEDING, sd->hd->homunculus.autofeed);
- else
- clif->zc_config(sd, CZ_CONFIG_HOMUNCULUS_AUTOFEEDING, false);
+ if (sd->hd != NULL)
+ clif->zc_config(sd, CZ_CONFIG_HOMUNCULUS_AUTOFEEDING, sd->hd->homunculus.autofeed);
+ else
+ clif->zc_config(sd, CZ_CONFIG_HOMUNCULUS_AUTOFEEDING, false);
#endif
- if( (battle_config.bg_flee_penalty != 100 || battle_config.gvg_flee_penalty != 100)
- && (map_flag_gvg2(sd->state.pmap) || map_flag_gvg2(sd->bl.m)
- || map->list[sd->state.pmap].flag.battleground || map->list[sd->bl.m].flag.battleground) )
- status_calc_bl(&sd->bl, SCB_FLEE); //Refresh flee penalty
- if( map->night_flag && map->list[sd->bl.m].flag.nightenabled ) {
- //Display night.
- if( !sd->state.night ) {
+ bool flee_penalty = (battle_config.bg_flee_penalty != 100 || battle_config.gvg_flee_penalty != 100);
+ bool is_gvg = (map_flag_gvg2(sd->state.pmap) || map_flag_gvg2(sd->bl.m));
+ bool is_bg = (map->list[sd->state.pmap].flag.battleground != 0 || map->list[sd->bl.m].flag.battleground != 0);
+
+ if (flee_penalty && (is_gvg || is_bg))
+ status_calc_bl(&sd->bl, SCB_FLEE); // Refresh flee penalty.
+
+ if (map->night_flag != 0 && map->list[sd->bl.m].flag.nightenabled != 0) {
+ if (sd->state.night == 0) { // Display night.
+ int sc_icn = status->get_sc_icon(SC_SKE);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_SKE);
+
sd->state.night = 1;
- clif->status_change(&sd->bl, status->get_sc_icon(SC_SKE), status->get_sc_relevant_bl_types(SC_SKE), 1, 0, 0, 0, 0);
+ clif->status_change(&sd->bl, sc_icn, sc_typ, 1, 0, 0, 0, 0);
}
- } else if( sd->state.night ) { //Clear night display.
+ } else if (sd->state.night != 0) { // Clear night display.
sd->state.night = 0;
clif->sc_end(&sd->bl, sd->bl.id, SELF, status->get_sc_icon(SC_SKE));
}
- if( map->list[sd->bl.m].flag.battleground ) {
- clif->map_type(sd, MAPTYPE_BATTLEFIELD); // Battleground Mode
- if( map->list[sd->bl.m].flag.battleground == 2 )
+ if (map->list[sd->bl.m].flag.battleground != 0) {
+ clif->map_type(sd, MAPTYPE_BATTLEFIELD); // Battleground mode.
+
+ if (map->list[sd->bl.m].flag.battleground == 2)
clif->bg_updatescore_single(sd);
}
- if( map->list[sd->bl.m].flag.allowks && !map_flag_ks(sd->bl.m) ) {
+ if (map->list[sd->bl.m].flag.allowks != 0 && !map_flag_ks(sd->bl.m)) {
char output[128];
+
sprintf(output, "%s", msg_sd(sd, 893)); // [ Kill Steal Protection Disabled. KS is allowed in this map ]
clif->broadcast(&sd->bl, output, (int)strlen(output) + 1, BC_BLUE, SELF);
}
- map->iwall_get(sd); // Updates Walls Info on this Map to Client
- status_calc_pc(sd, SCO_NONE);/* some conditions are map-dependent so we must recalculate */
+ map->iwall_get(sd); // Updates walls info on this map to client.
+ status_calc_pc(sd, SCO_NONE); // Some conditions are map-dependent so we must recalculate.
sd->state.changemap = false;
- if (channel->config->local && channel->config->local_autojoin) {
+ if (channel->config->local && channel->config->local_autojoin)
channel->map_join(sd);
- }
- if (channel->config->irc && channel->config->irc_autojoin) {
+
+ if (channel->config->irc && channel->config->irc_autojoin)
channel->irc_join(sd);
- }
}
mail->clear(sd);
+ clif->maptypeproperty2(&sd->bl, SELF);
- clif->maptypeproperty2(&sd->bl,SELF);
-
- /* Guild Aura Init */
- if( sd->state.gmaster_flag ) {
- guild->aura_refresh(sd,GD_LEADERSHIP,guild->checkskill(sd->guild,GD_LEADERSHIP));
- guild->aura_refresh(sd,GD_GLORYWOUNDS,guild->checkskill(sd->guild,GD_GLORYWOUNDS));
- guild->aura_refresh(sd,GD_SOULCOLD,guild->checkskill(sd->guild,GD_SOULCOLD));
- guild->aura_refresh(sd,GD_HAWKEYES,guild->checkskill(sd->guild,GD_HAWKEYES));
+ // Init guild aura.
+ if (sd->state.gmaster_flag != 0) {
+ guild->aura_refresh(sd, GD_LEADERSHIP, guild->checkskill(sd->guild, GD_LEADERSHIP));
+ guild->aura_refresh(sd, GD_GLORYWOUNDS, guild->checkskill(sd->guild, GD_GLORYWOUNDS));
+ guild->aura_refresh(sd, GD_SOULCOLD, guild->checkskill(sd->guild, GD_SOULCOLD));
+ guild->aura_refresh(sd, GD_HAWKEYES, guild->checkskill(sd->guild, GD_HAWKEYES));
}
- if( sd->state.vending ) { /* show we have a vending */
- clif->openvending(sd,sd->bl.id,sd->vending);
- clif->showvendingboard(&sd->bl,sd->message,0);
+ if (sd->state.vending != 0) { // Character is vending.
+ clif->openvending(sd, sd->bl.id, sd->vending);
+ clif->showvendingboard(&sd->bl, sd->message, 0);
}
- if(map->list[sd->bl.m].flag.loadevent) // Lance
+ if (map->list[sd->bl.m].flag.loadevent != 0) // Run OnPCLoadMapEvent labels. [Lance]
npc->script_event(sd, NPCE_LOADMAP);
- if (pc->checkskill(sd, SG_DEVIL) && !pc->nextjobexp(sd)) //blindness [Komurka]
+ if (pc->checkskill(sd, SG_DEVIL) > 0 && pc->nextjobexp(sd) == 0) // Blindness. [Komurka]
clif->sc_end(&sd->bl, sd->bl.id, SELF, status->get_sc_icon(SC_DEVIL1));
- if (sd->sc.opt2) //Client loses these on warp.
+ if (sd->sc.opt2 != 0) // Client loses these on warp.
clif->changeoption(&sd->bl);
- if( sd->sc.data[SC_MONSTER_TRANSFORM] && battle_config.mon_trans_disable_in_gvg && map_flag_gvg2(sd->bl.m) ){
+ if (sd->sc.data[SC_MONSTER_TRANSFORM] != NULL && battle_config.mon_trans_disable_in_gvg != 0
+ && map_flag_gvg2(sd->bl.m)) {
status_change_end(&sd->bl, SC_MONSTER_TRANSFORM, INVALID_TIMER);
- clif->message(sd->fd, msg_sd(sd,1488)); // Transforming into monster is not allowed in Guild Wars.
+ clif->message(sd->fd, msg_sd(sd, 1488)); // Transforming into monster is not allowed in Guild Wars.
}
clif->weather_check(sd);
- // This should be displayed last
- if( sd->guild && first_time )
+ // This should be displayed last.
+ if (sd->guild != NULL && first_time)
clif->guild_notice(sd, sd->guild);
- // For automatic triggering of NPCs after map loading (so you don't need to walk 1 step first)
- if (map->getcell(sd->bl.m, &sd->bl, sd->bl.x, sd->bl.y, CELL_CHKNPC))
- npc->touch_areanpc(sd,sd->bl.m,sd->bl.x,sd->bl.y);
+ // For automatic triggering of NPCs after map loading. (So you don't need to walk 1 step first.)
+ if (map->getcell(sd->bl.m, &sd->bl, sd->bl.x, sd->bl.y, CELL_CHKNPC) != 0)
+ npc->touch_areanpc(sd, sd->bl.m, sd->bl.x, sd->bl.y);
else
npc->untouch_areanpc(sd, sd->bl.m, sd->bl.x, sd->bl.y);
- /* it broke at some point (e.g. during a crash), so we make it visibly dead again. */
- if( !sd->status.hp && !pc_isdead(sd) && status->isdead(&sd->bl) )
+ // It broke at some point (e.g. during a crash), so we make it visibly dead again.
+ if (sd->status.hp == 0 && !pc_isdead(sd) && status->isdead(&sd->bl) != 0)
pc_setdead(sd);
- // If player is dead, and is spawned (such as @refresh) send death packet. [Valaris]
- if(pc_isdead(sd))
+ // Send death packet, if character is dead and is spawned (such as @refresh). [Valaris]
+ if (pc_isdead(sd)) {
clif->clearunit_area(&sd->bl, CLR_DEAD);
- else {
+ } else {
skill->usave_trigger(sd);
+
if (battle_config.player_warp_keep_direction == 1)
clif->changed_dir(&sd->bl, SELF); // Visually updates player facing direction
}
- // Trigger skill effects if you appear standing on them
- if(!battle_config.pc_invincible_time)
- skill->unit_move(&sd->bl,timer->gettick(),1);
+ // Trigger skill effects if you appear standing on them.
+ if (battle_config.pc_invincible_time == 0)
+ skill->unit_move(&sd->bl, timer->gettick(), 1);
- // NPC Quest / Event Icon Check [Kisuka]
#if PACKETVER >= 20090218
- quest->questinfo_refresh(sd);
+ quest->questinfo_refresh(sd); // NPC quest/event icon check. [Kisuka]
#endif
}
@@ -11680,7 +11781,8 @@ static void clif_parse_WisMessage(int fd, struct map_session_data *sd)
struct map_session_data* dstsd;
int i;
- char target[NAME_LENGTH], message[CHAT_SIZE_MAX + 1];
+ char target[NAME_LENGTH + 1]; // Client can send 24 characters without NULL terminator.
+ char message[CHAT_SIZE_MAX + 1];
const struct packet_whisper_message *packet = RP2PTR(fd);
if (!clif->process_whisper_message(sd, packet, target, message, sizeof message))
@@ -11696,7 +11798,7 @@ static void clif_parse_WisMessage(int fd, struct map_session_data *sd)
char *str = target + 4; // Skip the NPC: string part.
struct npc_data *nd;
if ((nd = npc->name2id(str))) {
- char split_data[NUM_WHISPER_VAR][CHAT_SIZE_MAX];
+ char split_data[NUM_WHISPER_VAR][SCRIPT_STRING_VAR_LENGTH + 1];
char *split;
char output[256];
@@ -12706,6 +12808,16 @@ static void clif_useSkillToIdReal(int fd, struct map_session_data *sd, int skill
{
int64 tick = timer->gettick();
+ pc->autocast_set_current(sd, skill_id);
+
+ /**
+ * According to Skotlex' comment below, the client sometimes passes 0 for the skill level.
+ * Even though this seems to only affect guild skills, sd->autocast.skill_lv is used
+ * for the auto-cast data validation if skill_lv is 0.
+ *
+ **/
+ skill->validate_autocast_data(sd, skill_id, (skill_lv == 0) ? sd->auto_cast_current.skill_lv : skill_lv);
+
if (skill_lv < 1)
skill_lv = 1; //No clue, I have seen the client do this with guild skills :/ [Skotlex]
@@ -12756,10 +12868,10 @@ static void clif_useSkillToIdReal(int fd, struct map_session_data *sd, int skill
target_id = sd->bl.id;
if (sd->ud.skilltimer != INVALID_TIMER) {
- if (skill_id != SA_CASTCANCEL && skill_id != SO_SPELLFIST)
+ if (skill_id != SA_CASTCANCEL && skill_id != SO_SPELLFIST && sd->auto_cast_current.type == AUTOCAST_NONE)
return;
} else if (DIFF_TICK(tick, sd->ud.canact_tick) < 0) {
- if (sd->skillitem != skill_id) {
+ if (sd->auto_cast_current.type == AUTOCAST_NONE) {
clif->skill_fail(sd, skill_id, USESKILL_FAIL_SKILLINTERVAL, 0, 0);
return;
}
@@ -12777,16 +12889,16 @@ static void clif_useSkillToIdReal(int fd, struct map_session_data *sd, int skill
} else if (sd->menuskill_id != SA_AUTOSPELL)
return; //Can't use skills while a menu is open.
}
- if (sd->skillitem == skill_id) {
- if (skill_lv != sd->skillitemlv)
- skill_lv = sd->skillitemlv;
+ if (sd->auto_cast_current.type != AUTOCAST_NONE) {
+ if (skill_lv != sd->auto_cast_current.skill_lv)
+ skill_lv = sd->auto_cast_current.skill_lv;
if (!(tmp&INF_SELF_SKILL))
pc->delinvincibletimer(sd); // Target skills through items cancel invincibility. [Inkfish]
unit->skilluse_id(&sd->bl, target_id, skill_id, skill_lv);
return;
}
- sd->skillitem = sd->skillitemlv = 0;
+ pc->autocast_clear(sd);
if (skill_id >= GD_SKILLBASE && skill_id < GD_MAX) {
if (sd->state.gmaster_flag)
@@ -12847,6 +12959,18 @@ static void clif_parse_UseSkillToPosSub(int fd, struct map_session_data *sd, uin
int64 tick = timer->gettick();
nullpo_retv(sd);
+
+ pc->autocast_set_current(sd, skill_id);
+
+ /**
+ * When using clif_item_skill() to initiate the execution of ground skills,
+ * the client sometimes passes 0 for the skill level in packet 0x0af4.
+ * In that case sd->autocast.skill_lv is used for the auto-cast data validation,
+ * since clif_item_skill() is only used for auto-cast skills.
+ *
+ **/
+ skill->validate_autocast_data(sd, skill_id, (skill_lv == 0) ? sd->auto_cast_current.skill_lv : skill_lv);
+
if( !(skill->get_inf(skill_id)&INF_GROUND_SKILL) )
return; //Using a target skill on the ground? WRONG.
@@ -12883,11 +13007,11 @@ static void clif_parse_UseSkillToPosSub(int fd, struct map_session_data *sd, uin
safestrncpy(sd->message, RFIFOP(fd, skillmoreinfo), TALKBOX_MESSAGE_SIZE);
}
- if( sd->ud.skilltimer != INVALID_TIMER )
+ if (sd->ud.skilltimer != INVALID_TIMER && sd->auto_cast_current.type == AUTOCAST_NONE)
return;
if( DIFF_TICK(tick, sd->ud.canact_tick) < 0 ) {
- if( sd->skillitem != skill_id ) {
+ if (sd->auto_cast_current.type == AUTOCAST_NONE) {
clif->skill_fail(sd, skill_id, USESKILL_FAIL_SKILLINTERVAL, 0, 0);
return;
}
@@ -12908,13 +13032,13 @@ static void clif_parse_UseSkillToPosSub(int fd, struct map_session_data *sd, uin
pc->delinvincibletimer(sd);
- if( sd->skillitem == skill_id ) {
- if( skill_lv != sd->skillitemlv )
- skill_lv = sd->skillitemlv;
+ if (sd->auto_cast_current.type != AUTOCAST_NONE) {
+ if (skill_lv != sd->auto_cast_current.skill_lv)
+ skill_lv = sd->auto_cast_current.skill_lv;
unit->skilluse_pos(&sd->bl, x, y, skill_id, skill_lv);
} else {
int lv;
- sd->skillitem = sd->skillitemlv = 0;
+ pc->autocast_clear(sd);
if( (lv = pc->checkskill(sd, skill_id)) > 0 ) {
if( skill_lv > lv )
skill_lv = lv;
@@ -12984,10 +13108,18 @@ static void clif_parse_UseSkillMap(int fd, struct map_session_data *sd)
clif_menuskill_clear(sd);
return;
}
+
+ pc->autocast_set_current(sd, skill_id);
+
+ /**
+ * Since no skill level was passed use 0 to notify skill_validate_autocast_data() of this special case.
+ *
+ **/
+ skill->validate_autocast_data(sd, skill_id, 0);
pc->delinvincibletimer(sd);
skill->castend_map(sd,skill_id,map_name);
- pc->itemskill_clear(sd);
+ pc->autocast_clear(sd);
}
static void clif_parse_RequestMemo(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
@@ -15180,58 +15312,68 @@ static void clif_parse_ChangePetName(int fd, struct map_session_data *sd)
pet->change_name(sd, RFIFOP(fd,2));
}
+/**
+ * Request to evolve the pet. (CZ_PET_EVOLUTION)
+ *
+ * @code
+ * 09fb <Length>.W <EvolvedPetEggID>.W {<index>.W <amount>.W}*items
+ * @endcode
+ *
+ * @param fd The incoming file descriptor.
+ * @param sd The related character.
+ *
+ **/
static void clif_parse_pet_evolution(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
-/// Request to Evolve the pet (CZ_PET_EVOLUTION) [Dastgir/Hercules]
-/// 09fb <Length>.W <EvolvedPetEggID>.W {<index>.W <amount>.W}*items
static void clif_parse_pet_evolution(int fd, struct map_session_data *sd)
{
- if (sd->state.trading || pc_isdead(sd) || pc_isvending(sd))
+ if (sd->state.trading != 0 || pc_isdead(sd) || pc_isvending(sd))
return;
- const struct PACKET_CZ_PET_EVOLUTION *p = RP2PTR(fd);
- int i = 0, idx, petIndex;
-
- Assert_retv(p->PacketLength >= (uint16)sizeof(struct PACKET_CZ_PET_EVOLUTION));
-
- if (sd->status.pet_id == 0) {
+ if (sd->pd == NULL || sd->status.pet_id == 0) { // No pet.
clif->petEvolutionResult(fd, PET_EVOL_NO_CALLPET);
return;
}
- ARR_FIND(0, sd->status.inventorySize, idx, sd->status.inventory[idx].card[0] == CARD0_PET &&
- sd->status.pet_id == MakeDWord(sd->status.inventory[idx].card[1], sd->status.inventory[idx].card[2]));
+ int inv_index;
- if (idx == sd->status.inventorySize) {
+ ARR_FIND(0, sd->status.inventorySize, inv_index, sd->status.inventory[inv_index].card[0] == CARD0_PET
+ && sd->status.pet_id == MakeDWord(sd->status.inventory[inv_index].card[1],
+ sd->status.inventory[inv_index].card[2]));
+
+ if (inv_index == sd->status.inventorySize) { // No pet egg.
clif->petEvolutionResult(fd, PET_EVOL_NO_PETEGG);
return;
}
- // Not Loyal Yet
- if (sd->pd == NULL || sd->pd->pet.intimate < 900) {
+ if (sd->pd->pet.intimate < PET_INTIMACY_LOYAL) { // Pet isn't loyal.
clif->petEvolutionResult(fd, PET_EVOL_RG_FAMILIAR);
return;
}
- ARR_FIND(0, MAX_PET_DB, petIndex, pet->db[petIndex].class_ == sd->pd->pet.class_);
+ int pet_index;
+
+ ARR_FIND(0, MAX_PET_DB, pet_index, pet->db[pet_index].class_ == sd->pd->pet.class_);
- if (petIndex == MAX_PET_DB) {
- // Which error?
- clif->petEvolutionResult(fd, PET_EVOL_UNKNOWN);
+ if (pet_index == MAX_PET_DB) {
+ clif->petEvolutionResult(fd, PET_EVOL_UNKNOWN); // Which error?
return;
}
+ const struct PACKET_CZ_PET_EVOLUTION *p = RP2PTR(fd);
+
+ Assert_retv(p->PacketLength >= (uint16)sizeof(struct PACKET_CZ_PET_EVOLUTION));
+
// Client side validation is not done as it is insecure.
- for (i = 0; i < VECTOR_LENGTH(pet->db[petIndex].evolve_data); i++) {
- struct pet_evolve_data *ped = &VECTOR_INDEX(pet->db[petIndex].evolve_data, i);
- if (ped->petEggId == p->EvolvedPetEggID) {
- int j;
- int pet_id;
+ for (int i = 0; i < VECTOR_LENGTH(pet->db[pet_index].evolve_data); i++) {
+ struct pet_evolve_data *ped = &VECTOR_INDEX(pet->db[pet_index].evolve_data, i);
+ if (ped->petEggId == p->EvolvedPetEggID) {
if (VECTOR_LENGTH(ped->items) == 0) {
clif->petEvolutionResult(fd, PET_EVOL_NO_RECIPE);
return;
}
- for (j = 0; j < VECTOR_LENGTH(ped->items); j++) {
+
+ for (int j = 0; j < VECTOR_LENGTH(ped->items); j++) {
struct itemlist_entry *list = &VECTOR_INDEX(ped->items, j);
int n = pc->search_inventory(sd, list->id);
@@ -15241,7 +15383,7 @@ static void clif_parse_pet_evolution(int fd, struct map_session_data *sd)
}
}
- for (j = 0; j < VECTOR_LENGTH(ped->items); j++) {
+ for (int j = 0; j < VECTOR_LENGTH(ped->items); j++) {
struct itemlist_entry *list = &VECTOR_INDEX(ped->items, j);
int n = pc->search_inventory(sd, list->id);
@@ -15251,27 +15393,26 @@ static void clif_parse_pet_evolution(int fd, struct map_session_data *sd)
}
}
- // Return to Egg
- pet->return_egg(sd, sd->pd);
+ pet->return_egg(sd, sd->pd); // Return pet to egg.
- if (pc->delitem(sd, idx, 1, 0, DELITEM_NORMAL, LOG_TYPE_EGG) == 1) {
+ if (pc->delitem(sd, inv_index, 1, 0, DELITEM_NORMAL, LOG_TYPE_EGG) == 1) {
clif->petEvolutionResult(fd, PET_EVOL_NO_PETEGG);
return;
}
- pet_id = pet->search_petDB_index(ped->petEggId, PET_EGG);
+ int pet_id = pet->search_petDB_index(ped->petEggId, PET_EGG);
+
if (pet_id >= 0) {
sd->catch_target_class = pet->db[pet_id].class_;
-
- intif->create_pet(
- sd->status.account_id, sd->status.char_id,
- pet->db[pet_id].class_, mob->db(pet->db[pet_id].class_)->lv,
- pet->db[pet_id].EggID, 0, (short)pet->db[pet_id].intimate,
- 100, 0, 1, pet->db[pet_id].jname);
+ intif->create_pet(sd->status.account_id, sd->status.char_id, pet->db[pet_id].class_,
+ mob->db(pet->db[pet_id].class_)->lv, pet->db[pet_id].EggID,
+ 0, (short)pet->db[pet_id].intimate, PET_HUNGER_STUFFED,
+ 0, 1, pet->db[pet_id].jname);
clif->petEvolutionResult(fd, PET_EVOL_SUCCESS);
} else {
clif->petEvolutionResult(fd, PET_EVOL_UNKNOWN);
}
+
return;
}
}
@@ -15344,6 +15485,7 @@ static void clif_parse_GMKick(int fd, struct map_session_data *sd)
}
npc->unload_duplicates(nd, true);
npc->unload(nd, true, true);
+ npc->motd = npc->name2id("HerculesMOTD");
npc->read_event_script();
}
break;
@@ -19797,9 +19939,9 @@ static int clif_autoshadowspell_list(struct map_session_data *sd)
WFIFOHEAD(fd, 2 * 6 + 4);
WFIFOW(fd,0) = 0x442;
for (i = 0, c = 0; i < MAX_SKILL_DB; i++)
- if( sd->status.skill[i].flag == SKILL_FLAG_PLAGIARIZED && sd->status.skill[i].id > 0 &&
- sd->status.skill[i].id < GS_GLITTERING && skill->get_type(sd->status.skill[i].id) == BF_MAGIC )
- { // Can't auto cast both Extended class and 3rd class skills.
+ if (sd->status.skill[i].flag == SKILL_FLAG_PLAGIARIZED && sd->status.skill[i].id > 0 && sd->status.skill[i].id < GS_GLITTERING
+ && skill->get_type(sd->status.skill[i].id, sd->status.skill[i].lv) == BF_MAGIC) {
+ // Can't auto cast both Extended class and 3rd class skills.
WFIFOW(fd,8+c*2) = sd->status.skill[i].id;
c++;
}
@@ -20091,7 +20233,7 @@ static void clif_parse_cashShopOpen2(int fd, struct map_session_data *sd)
static void clif_cashShopOpen(int fd, struct map_session_data *sd, int tab)
{
-#if PACKETVER_MAIN_NUM >= 20101123 || PACKETVER_RE_NUM >= 20120328 || PACKETVER_ZERO_NUM >= defined(PACKETVER_ZERO)
+#if PACKETVER_MAIN_NUM >= 20101123 || PACKETVER_RE_NUM >= 20120328 || defined(PACKETVER_ZERO)
WFIFOHEAD(fd, sizeof(struct PACKET_ZC_SE_CASHSHOP_OPEN));
struct PACKET_ZC_SE_CASHSHOP_OPEN *p = WFIFOP(fd, 0);
p->packetType = HEADER_ZC_SE_CASHSHOP_OPEN;
@@ -22169,7 +22311,7 @@ static void clif_rodex_checkname_result(struct map_session_data *sd, int char_id
sPacket->Class = class_;
sPacket->BaseLevel = base_level;
#if PACKETVER >= 20160316
- strncpy(sPacket->Name, name, NAME_LENGTH);
+ safestrncpy(sPacket->Name, name, NAME_LENGTH);
#endif
WFIFOSET(fd, sizeof(*sPacket));
#endif
@@ -23666,12 +23808,15 @@ static void clif_parse_lapineDdukDdak_ack(int fd, struct map_session_data *sd) _
static void clif_parse_lapineDdukDdak_ack(int fd, struct map_session_data *sd)
{
#if PACKETVER >= 20160302
+ if (sd->state.lapine_ui == 0)
+ return;
+
const struct PACKET_CZ_LAPINEDDUKDDAK_ACK *p = RP2PTR(fd);
struct item_data *it = itemdb->exists(p->itemId);
if (it == NULL || it->lapineddukddak == NULL)
return;
- if (pc_cant_act(sd))
+ if (pc_cant_act_except_lapine(sd))
return;
if (pc->search_inventory(sd, it->nameid) == INDEX_NOT_FOUND)
return;
@@ -23732,6 +23877,55 @@ static void clif_parse_lapineDdukDdak_close(int fd, struct map_session_data *sd)
#endif // PACKETVER >= 20160504
}
+static bool clif_lapineUpgrade_open(struct map_session_data *sd, int item_id)
+{
+#if PACKETVER_MAIN_NUM >= 20170726 || PACKETVER_RE_NUM >= 20170621 || defined(PACKETVER_ZERO)
+ nullpo_retr(false, sd);
+ nullpo_retr(false, itemdb->exists(item_id));
+ struct PACKET_ZC_LAPINEUPGRADE_OPEN p;
+
+ p.packetType = HEADER_ZC_LAPINEUPGRADE_OPEN;
+ p.itemId = item_id;
+ clif->send(&p, sizeof(p), &sd->bl, SELF);
+
+ return true;
+#else
+ return false;
+#endif // PACKETVER_MAIN_NUM >= 20170726 || PACKETVER_RE_NUM >= 20170621 || defined(PACKETVER_ZERO)
+}
+
+static void clif_parse_lapineUpgrade_close(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
+static void clif_parse_lapineUpgrade_close(int fd, struct map_session_data *sd)
+{
+#if PACKETVER_MAIN_NUM >= 20170111 || PACKETVER_RE_NUM >= 20170111 || defined(PACKETVER_ZERO)
+#endif // PACKETVER_MAIN_NUM >= 20170111 || PACKETVER_RE_NUM >= 20170111 || defined(PACKETVER_ZERO)
+}
+
+static void clif_parse_lapineUpgrade_makeItem(int fd, struct map_session_data *sd) __attribute__((nonnull (2)));
+static void clif_parse_lapineUpgrade_makeItem(int fd, struct map_session_data *sd)
+{
+#if PACKETVER_MAIN_NUM >= 20170111 || PACKETVER_RE_NUM >= 20170111 || defined(PACKETVER_ZERO)
+ ShowError("Lapin upgrade not implimented yet");
+ clif->lapineUpgrade_result(sd, LAPINE_UPGRADE_FAILED);
+#endif // PACKETVER_MAIN_NUM >= 20170111 || PACKETVER_RE_NUM >= 20170111 || defined(PACKETVER_ZERO)
+}
+
+static bool clif_lapineUpgrade_result(struct map_session_data *sd, enum lapineUpgrade_result result)
+{
+#if PACKETVER_MAIN_NUM >= 20170726 || PACKETVER_RE_NUM >= 20170621 || defined(PACKETVER_ZERO)
+ nullpo_retr(false, sd);
+ struct PACKET_ZC_LAPINEUPGRADE_RESULT p;
+
+ p.packetType = HEADER_ZC_LAPINEUPGRADE_RESULT;
+ p.result = result;
+ clif->send(&p, sizeof(p), &sd->bl, SELF);
+
+ return true;
+#else
+ return false;
+#endif // PACKETVER_MAIN_NUM >= 20170726 || PACKETVER_RE_NUM >= 20170621 || defined(PACKETVER_ZERO)
+}
+
/*==========================================
* Main client packet processing function
*------------------------------------------*/
@@ -24010,7 +24204,7 @@ static int do_init_clif(bool minimal)
timer->add_func_list(clif->clearunit_delayed_sub, "clif_clearunit_delayed_sub");
timer->add_func_list(clif->delayquit, "clif_delayquit");
- clif->delay_clearunit_ers = ers_new(sizeof(struct block_list),"clif.c::delay_clearunit_ers",ERS_OPT_CLEAR);
+ clif->delay_clearunit_ers = ers_new(sizeof(struct mob_data), "clif.c::delay_clearunit_ers", ERS_OPT_CLEAR);
clif->delayed_damage_ers = ers_new(sizeof(struct cdelayed_damage),"clif.c::delayed_damage_ers",ERS_OPT_CLEAR);
#if PACKETVER_MAIN_NUM >= 20190403 || PACKETVER_RE_NUM >= 20190320
@@ -24232,6 +24426,8 @@ void clif_defaults(void)
clif->mobname_normal_ack = clif_mobname_normal_ack;
clif->chatname_ack = clif_chatname_ack;
clif->elemname_ack = clif_elemname_ack;
+ clif->skillname_ack = clif_skillname_ack;
+ clif->itemname_ack = clif_itemname_ack;
clif->unknownname_ack = clif_unknownname_ack;
clif->monster_hp_bar = clif_monster_hp_bar;
clif->hpmeter = clif_hpmeter;
@@ -24975,5 +25171,9 @@ void clif_defaults(void)
clif->lapineDdukDdak_result = clif_lapineDdukDdak_result;
clif->plapineDdukDdak_ack = clif_parse_lapineDdukDdak_ack;
clif->plapineDdukDdak_close = clif_parse_lapineDdukDdak_close;
+ clif->lapineUpgrade_open = clif_lapineUpgrade_open;
+ clif->lapineUpgrade_result = clif_lapineUpgrade_result;
+ clif->pLapineUpgrade_close = clif_parse_lapineUpgrade_close;
+ clif->pLapineUpgrade_makeItem = clif_parse_lapineUpgrade_makeItem;
clif->pReqGearOff = clif_parse_reqGearOff;
}
diff --git a/src/map/clif.h b/src/map/clif.h
index 25ac65af5..fdaaf85e3 100644
--- a/src/map/clif.h
+++ b/src/map/clif.h
@@ -733,6 +733,11 @@ enum lapineddukddak_result {
LAPINEDDKUKDDAK_INVALID_ITEM = 7,
};
+enum lapineUpgrade_result {
+ LAPINE_UPGRADE_SUCCESS = 0,
+ LAPINE_UPGRADE_FAILED = 1
+};
+
enum removeGear_flag {
REMOVE_MOUNT_0 = 0, // unused
REMOVE_MOUNT_DRAGON = 1,
@@ -952,6 +957,8 @@ struct clif_interface {
void (*mobname_normal_ack) (int fd, struct block_list *bl);
void (*chatname_ack) (int fd, struct block_list *bl);
void (*elemname_ack) (int fd, struct block_list *bl);
+ void (*skillname_ack) (int fd, struct block_list *bl);
+ void (*itemname_ack) (int fd, struct block_list *bl);
void (*unknownname_ack) (int fd, struct block_list *bl);
void (*monster_hp_bar) ( struct mob_data* md, struct map_session_data *sd );
int (*hpmeter) (struct map_session_data *sd);
@@ -1688,6 +1695,10 @@ struct clif_interface {
bool (*lapineDdukDdak_result) (struct map_session_data *sd, enum lapineddukddak_result result);
void (*plapineDdukDdak_ack) (int fd, struct map_session_data *sd);
void (*plapineDdukDdak_close) (int fd, struct map_session_data *sd);
+ bool (*lapineUpgrade_open) (struct map_session_data *sd, int item_id);
+ bool (*lapineUpgrade_result) (struct map_session_data *sd, enum lapineUpgrade_result result);
+ void (*pLapineUpgrade_close) (int fd, struct map_session_data *sd);
+ void (*pLapineUpgrade_makeItem) (int fd, struct map_session_data *sd);
void (*pReqGearOff) (int fd, struct map_session_data *sd);
};
diff --git a/src/map/guild.c b/src/map/guild.c
index f344878e1..90f870f1c 100644
--- a/src/map/guild.c
+++ b/src/map/guild.c
@@ -1519,7 +1519,7 @@ static void guild_guildaura_refresh(struct map_session_data *sd, uint16 skill_id
if( !skill_lv )
return;
if (sd->sc.data[type] && (group = skill->id2group(sd->sc.data[type]->val4)) != NULL) {
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
status_change_end(&sd->bl,type,INVALID_TIMER);
}
group = skill->unitsetting(&sd->bl,skill_id,skill_lv,sd->bl.x,sd->bl.y,0);
@@ -2069,7 +2069,7 @@ static int guild_break(struct map_session_data *sd, const char *name)
}
}
for(i = 0; i < count; i++) { // FIXME: Why is this not done in the above loop?
- skill->del_unitgroup(groups[i],ALC_MARK);
+ skill->del_unitgroup(groups[i]);
}
}
diff --git a/src/map/intif.c b/src/map/intif.c
index a420b7204..276b40780 100644
--- a/src/map/intif.c
+++ b/src/map/intif.c
@@ -218,13 +218,13 @@ static int intif_saveregistry(struct map_session_data *sd)
plen += 1;
if( p->value ) {
- len = strlen(p->value)+1;
+ len = strlen(p->value);
- WFIFOB(inter_fd, plen) = (unsigned char)len;/* won't be higher; the column size is 254 */
+ WFIFOB(inter_fd, plen) = (unsigned char)len; // Won't be higher; the column size is 255.
plen += 1;
- safestrncpy(WFIFOP(inter_fd,plen), p->value, len);
- plen += len;
+ safestrncpy(WFIFOP(inter_fd, plen), p->value, len + 1);
+ plen += len + 1;
} else {
script->reg_destroy_single(sd,key.i64,&p->flag);
}
@@ -1025,7 +1025,7 @@ static void intif_parse_Registers(int fd)
* { keyLength(B), key(<keyLength>), index(L), valLength(B), val(<valLength>) }
**/
if (type) {
- char sval[254];
+ char sval[SCRIPT_STRING_VAR_LENGTH + 1];
for (i = 0; i < max; i++) {
int len = RFIFOB(fd, cursor);
safestrncpy(key, RFIFOP(fd, cursor + 1), min((int)sizeof(key), len));
@@ -1035,8 +1035,8 @@ static void intif_parse_Registers(int fd)
cursor += 4;
len = RFIFOB(fd, cursor);
- safestrncpy(sval, RFIFOP(fd, cursor + 1), min((int)sizeof(sval), len));
- cursor += len + 1;
+ safestrncpy(sval, RFIFOP(fd, cursor + 1), min((int)sizeof(sval), len + 1));
+ cursor += len + 2;
script->set_reg(NULL,sd,reference_uid(script->add_variable(key), index), key, sval, NULL);
}
diff --git a/src/map/itemdb.h b/src/map/itemdb.h
index 5f0790b10..4b06a21d6 100644
--- a/src/map/itemdb.h
+++ b/src/map/itemdb.h
@@ -606,7 +606,6 @@ struct item_data {
#define itemid_isgemstone(n) ((n) >= ITEMID_YELLOW_GEMSTONE && (n) <= ITEMID_BLUE_GEMSTONE)
#define itemdb_is_GNbomb(n) ((n) >= ITEMID_APPLE_BOMB && (n) <= ITEMID_VERY_HARD_LUMP)
#define itemdb_is_GNthrowable(n) ((n) >= ITEMID_MYSTERIOUS_POWDER && (n) <= ITEMID_BLACK_THING_TO_THROW)
-#define itemid_is_pilebunker(n) ((n) == ITEMID_PILEBUNCKER || (n) == ITEMID_PILEBUNCKER_P || (n) == ITEMID_PILEBUNCKER_S || (n) == ITEMID_PILEBUNCKER_T)
#define itemdb_is_shadowequip(n) ((n) & (EQP_SHADOW_ARMOR|EQP_SHADOW_WEAPON|EQP_SHADOW_SHIELD|EQP_SHADOW_SHOES|EQP_SHADOW_ACC_R|EQP_SHADOW_ACC_L))
#define itemdb_is_costumeequip(n) ((n) & (EQP_COSTUME_HEAD_TOP|EQP_COSTUME_HEAD_MID|EQP_COSTUME_HEAD_LOW|EQP_COSTUME_GARMENT))
diff --git a/src/map/map.c b/src/map/map.c
index defa56b2e..24d571498 100644
--- a/src/map/map.c
+++ b/src/map/map.c
@@ -261,11 +261,13 @@ static int map_addblock(struct block_list *bl)
pos = x/BLOCK_SIZE+(y/BLOCK_SIZE)*map->list[m].bxs;
if (bl->type == BL_MOB) {
+ Assert_ret(map->list[m].block_mob != NULL);
bl->next = map->list[m].block_mob[pos];
bl->prev = &map->bl_head;
if (bl->next) bl->next->prev = bl;
map->list[m].block_mob[pos] = bl;
} else {
+ Assert_ret(map->list[m].block != NULL);
bl->next = map->list[m].block[pos];
bl->prev = &map->bl_head;
if (bl->next) bl->next->prev = bl;
@@ -307,8 +309,10 @@ static int map_delblock(struct block_list *bl)
if (bl->prev == &map->bl_head) {
//Since the head of the list, update the block_list map of []
if (bl->type == BL_MOB) {
+ Assert_ret(map->list[bl->m].block_mob != NULL);
map->list[bl->m].block_mob[pos] = bl->next;
} else {
+ Assert_ret(map->list[bl->m].block != NULL);
map->list[bl->m].block[pos] = bl->next;
}
} else {
@@ -450,6 +454,12 @@ static int map_count_oncell(int16 m, int16 x, int16 y, int type, int flag)
struct block_list *bl;
int count = 0;
+ Assert_ret(m >= -1);
+ if (m < 0)
+ return 0;
+ Assert_ret(m < map->count);
+ Assert_ret(map->list[m].block != NULL);
+
if (x < 0 || y < 0 || (x >= map->list[m].xs) || (y >= map->list[m].ys))
return 0;
@@ -512,6 +522,12 @@ static struct skill_unit *map_find_skill_unit_oncell(struct block_list *target,
nullpo_retr(NULL, target);
m = target->m;
+ Assert_ret(m >= -1);
+ if (m < 0)
+ return 0;
+ Assert_ret(m < map->count);
+ Assert_ret(map->list[m].block != NULL);
+
if (x < 0 || y < 0 || (x >= map->list[m].xs) || (y >= map->list[m].ys))
return NULL;
@@ -586,8 +602,11 @@ static int map_vforeachinmap(int (*func)(struct block_list*, va_list), int16 m,
struct block_list *bl;
int blockcount = map->bl_list_count;
+ Assert_ret(m >= -1);
if (m < 0)
return 0;
+ Assert_ret(m < map->count);
+ Assert_ret(map->list[m].block != NULL);
bsize = map->list[m].bxs * map->list[m].bys;
for (i = 0; i < bsize; i++) {
@@ -719,24 +738,28 @@ static int bl_getall_area(int type, int m, int x0, int y0, int x1, int y1, int (
struct block_list *bl;
int found = 0;
+ Assert_ret(m >= -1);
if (m < 0)
return 0;
+ Assert_ret(m < map->count);
+ const struct map_data *const listm = &map->list[m];
+ Assert_ret(listm->xs > 0 && listm->ys > 0);
+ Assert_ret(listm->block != NULL);
+
+ // Limit search area to map size
+ x0 = min(max(x0, 0), map->list[m].xs - 1);
+ y0 = min(max(y0, 0), map->list[m].ys - 1);
+ x1 = min(max(x1, 0), map->list[m].xs - 1);
+ y1 = min(max(y1, 0), map->list[m].ys - 1);
if (x1 < x0) swap(x0, x1);
if (y1 < y0) swap(y0, y1);
- // Limit search area to map size
- x0 = max(x0, 0);
- y0 = max(y0, 0);
- x1 = min(x1, map->list[m].xs - 1);
- y1 = min(y1, map->list[m].ys - 1);
-
{
const int x0b = x0 / BLOCK_SIZE;
const int x1b = x1 / BLOCK_SIZE;
const int y0b = y0 / BLOCK_SIZE;
const int y1b = y1 / BLOCK_SIZE;
- const struct map_data *const listm = &map->list[m];
const int bxs0 = listm->bxs;
// duplication for better performance
@@ -1713,9 +1736,9 @@ static bool map_closest_freecell(int16 m, const struct block_list *bl, int16 *x,
tx = *x + dx;
ty = *y + dy;
if (unit_is_dir_or_opposite(dir, UNIT_DIR_SOUTHWEST))
- tx *= costrange / MOVE_COST;
+ tx = tx * costrange / MOVE_COST;
if (unit_is_dir_or_opposite(dir, UNIT_DIR_NORTHWEST))
- ty *= costrange / MOVE_COST;
+ ty = ty * costrange / MOVE_COST;
if (!map->count_oncell(m, tx, ty, type, flag) && map->getcell(m, bl, tx, ty, CELL_CHKPASS)) {
*x = tx;
*y = ty;
@@ -1724,9 +1747,9 @@ static bool map_closest_freecell(int16 m, const struct block_list *bl, int16 *x,
tx = *x + dx;
ty = *y + dy;
if (unit_is_dir_or_opposite(dir, UNIT_DIR_NORTHWEST))
- tx *= costrange / MOVE_COST;
+ tx = tx * costrange / MOVE_COST;
if (unit_is_dir_or_opposite(dir, UNIT_DIR_SOUTHWEST))
- ty *= costrange / MOVE_COST;
+ ty = ty * costrange / MOVE_COST;
if (!map->count_oncell(m, tx, ty, type, flag) && map->getcell(m, bl, tx, ty, CELL_CHKPASS)) {
*x = tx;
*y = ty;
@@ -3077,6 +3100,8 @@ static int map_getcellp(struct map_data *m, const struct block_list *bl, int16 x
return (cell.icewall);
case CELL_CHKNOICEWALL:
return (cell.noicewall);
+ case CELL_CHKNOSKILL:
+ return (cell.noskill);
// special checks
case CELL_CHKPASS:
@@ -3141,6 +3166,7 @@ static void map_setcell(int16 m, int16 x, int16 y, cell_t cell, bool flag)
case CELL_NOCHAT: map->list[m].cell[j].nochat = flag; break;
case CELL_ICEWALL: map->list[m].cell[j].icewall = flag; break;
case CELL_NOICEWALL: map->list[m].cell[j].noicewall = flag; break;
+ case CELL_NOSKILL: map->list[m].cell[j].noskill = flag; break;
default:
ShowWarning("map_setcell: invalid cell type '%d'\n", (int)cell);
@@ -4456,7 +4482,6 @@ static bool inter_config_read_connection(const char *filename, const struct conf
static bool inter_config_read_database_names(const char *filename, const struct config_t *config, bool imported)
{
const struct config_setting_t *setting = NULL;
- bool retval = true;
nullpo_retr(false, filename);
nullpo_retr(false, config);
@@ -4474,16 +4499,14 @@ static bool inter_config_read_database_names(const char *filename, const struct
libconfig->setting_lookup_mutable_string(setting, "npc_barter_data_db", map->npc_barter_data_db, sizeof(map->npc_barter_data_db));
libconfig->setting_lookup_mutable_string(setting, "npc_expanded_barter_data_db", map->npc_expanded_barter_data_db, sizeof(map->npc_expanded_barter_data_db));
- if (!mapreg->config_read(filename, setting, imported))
- retval = false;
-
if ((setting = libconfig->lookup(config, "inter_configuration/database_names/registry")) == NULL) {
if (imported)
- return retval;
+ return true;
ShowError("inter_config_read: inter_configuration/database_names/registry was not found in %s!\n", filename);
return false;
}
- return retval;
+
+ return mapreg->config_read_registry(filename, setting, imported);
}
/*=======================================
@@ -5265,7 +5288,7 @@ static bool map_zone_mf_cache(int m, char *flag, char *params)
}
}
- if( modifier[0] == '\0' || !( skill_id = skill->name2id(skill_name) ) || !skill->get_unit_id( skill->name2id(skill_name), 0) || atoi(modifier) < 1 || atoi(modifier) > USHRT_MAX ) {
+ if (modifier[0] == '\0' || (skill_id = skill->name2id(skill_name)) == 0 || skill->get_unit_id(skill->name2id(skill_name), 1, 0) == 0 || atoi(modifier) < 1 || atoi(modifier) > USHRT_MAX) {
;/* we don't mind it, the server will take care of it next. */
} else {
int idx = map->list[m].unit_count;
@@ -6047,11 +6070,15 @@ static bool map_add_questinfo(int m, struct npc_data *nd)
nullpo_retr(false, nd);
Assert_retr(false, m >= 0 && m < map->count);
- if (&VECTOR_LAST(map->list[m].qi_list) == nd)
+ int i;
+ ARR_FIND(0, VECTOR_LENGTH(map->list[m].qi_list), i, VECTOR_INDEX(map->list[m].qi_list, i) == nd);
+
+ if (i < VECTOR_LENGTH(map->list[m].qi_list)) {
return false;
+ }
VECTOR_ENSURE(map->list[m].qi_list, 1, 1);
- VECTOR_PUSH(map->list[m].qi_list, *nd);
+ VECTOR_PUSH(map->list[m].qi_list, nd);
return true;
}
@@ -6062,7 +6089,7 @@ static bool map_remove_questinfo(int m, struct npc_data *nd)
Assert_retr(false, m >= 0 && m < map->count);
int i;
- ARR_FIND(0, VECTOR_LENGTH(map->list[m].qi_list), i, &VECTOR_INDEX(map->list[m].qi_list, i) == nd);
+ ARR_FIND(0, VECTOR_LENGTH(map->list[m].qi_list), i, VECTOR_INDEX(map->list[m].qi_list, i) == nd);
if (i != VECTOR_LENGTH(map->list[m].qi_list)) {
VECTOR_ERASE(map->list[m].qi_list, i);
return true;
diff --git a/src/map/map.h b/src/map/map.h
index a876539d0..17f210bc3 100644
--- a/src/map/map.h
+++ b/src/map/map.h
@@ -329,6 +329,14 @@ enum bl_type {
enum npc_subtype { WARP, SHOP, SCRIPT, CASHSHOP, TOMB };
+/** optional flags for script labels, used by the label db */
+enum script_label_flags {
+ /** the label can be called from outside the local scope of the NPC */
+ LABEL_IS_EXTERN = 0x1,
+ /** the label is a public or private local NPC function */
+ LABEL_IS_USERFUNC = 0x2,
+};
+
/**
* Race type IDs.
*
@@ -588,6 +596,7 @@ typedef enum {
CELL_NOCHAT,
CELL_ICEWALL,
CELL_NOICEWALL,
+ CELL_NOSKILL,
} cell_t;
@@ -612,6 +621,7 @@ typedef enum {
CELL_CHKNOCHAT,
CELL_CHKICEWALL,
CELL_CHKNOICEWALL,
+ CELL_CHKNOSKILL,
} cell_chk;
@@ -630,7 +640,8 @@ struct mapcell {
novending : 1,
nochat : 1,
icewall : 1,
- noicewall : 1;
+ noicewall : 1,
+ noskill : 1;
#ifdef CELL_NOSTACK
int cell_bl; //Holds amount of bls in this cell.
@@ -846,7 +857,7 @@ struct map_data {
} cell_buf;
/* questinfo entries list */
- VECTOR_DECL(struct npc_data) qi_list;
+ VECTOR_DECL(struct npc_data *) qi_list;
/* speeds up clif_updatestatus processing by causing hpmeter to run only when someone with the permission can view it */
unsigned short hpmeter_visible;
diff --git a/src/map/mapreg.h b/src/map/mapreg.h
index b3b89e1b2..4318eaea8 100644
--- a/src/map/mapreg.h
+++ b/src/map/mapreg.h
@@ -21,55 +21,66 @@
#ifndef MAP_MAPREG_H
#define MAP_MAPREG_H
-#include "map/script.h" // struct reg_db
-#include "common/hercules.h"
+#include "map/script.h"
#include "common/db.h"
+#include "common/hercules.h"
-/* Forward Declarations */
-struct config_setting_t; // common/conf.h
+/** Forward Declarations **/
+struct config_setting_t;
struct eri;
-/** Container for a mapreg value */
+#ifndef MAPREG_AUTOSAVE_INTERVAL
+#define MAPREG_AUTOSAVE_INTERVAL (300 * 1000) //!< Interval for auto-saving permanent global variables to the database in milliseconds.
+#endif /** MAPREG_AUTOSAVE_INTERVAL **/
+
+/** Global variable structure. **/
struct mapreg_save {
- int64 uid; ///< Unique ID
- union {
- int i; ///< Numeric value
- char *str; ///< String value
+ int64 uid; //!< The variable's unique ID.
+ union value { //!< The variable's value container.
+ int i; //!< The variable's integer value.
+ char *str; //!< The variable's string value.
} u;
- bool is_string; ///< true if it's a string, false if it's a number
- bool save; ///< Whether a save operation is pending
+ bool is_string; //!< Whether the variable's value is a string.
+ bool save; //!< Whether the variable's save operation is pending.
};
+/** The mapreg interface structure. **/
struct mapreg_interface {
- struct reg_db regs;
- /* */
- bool skip_insert;
- /* */
- struct eri *ers; //[Ind/Hercules]
- /* */
- char table[32];
- /* */
- bool dirty; ///< Whether there are modified regs to be saved
- /* */
- void (*init) (void);
- void (*final) (void);
- /* */
+ /** Interface variables. **/
+ struct eri *ers; //!< Entry manager for global variables.
+ struct reg_db regs; //!< Generic database for global variables.
+ bool dirty; //!< Whether there are modified global variables to be saved.
+ bool skip_insert; //!< Whether to skip inserting the variable into the SQL database in mapreg_set_*_db().
+ char num_db[32]; //!< Name of SQL table which holds permanent global integer variables.
+ char str_db[32]; //!< Name of SQL table which holds permanent global string variables.
+
+ /** Interface functions. **/
int (*readreg) (int64 uid);
- char* (*readregstr) (int64 uid);
+ char *(*readregstr) (int64 uid);
+ bool (*set_num_db) (int64 uid, const char *name, unsigned int index, int value);
+ bool (*delete_num_db) (int64 uid, const char *name, unsigned int index);
bool (*setreg) (int64 uid, int val);
+ bool (*set_str_db) (int64 uid, const char *name, unsigned int index, const char *value);
+ bool (*delete_str_db) (int64 uid, const char *name, unsigned int index);
bool (*setregstr) (int64 uid, const char *str);
+ void (*load_num_db) (void);
+ void (*load_str_db) (void);
void (*load) (void);
+ void (*save_num_db) (const char *name, unsigned int index, int value);
+ void (*save_str_db) (const char *name, unsigned int index, const char *value);
void (*save) (void);
int (*save_timer) (int tid, int64 tick, int id, intptr_t data);
int (*destroyreg) (union DBKey key, struct DBData *data, va_list ap);
void (*reload) (void);
- bool (*config_read) (const char *filename, const struct config_setting_t *config, bool imported);
+ bool (*config_read_registry) (const char *filename, const struct config_setting_t *config, bool imported);
+ void (*final) (void);
+ void (*init) (void);
};
#ifdef HERCULES_CORE
void mapreg_defaults(void);
-#endif // HERCULES_CORE
+#endif /** HERCULES_CORE **/
HPShared struct mapreg_interface *mapreg;
-#endif /* MAP_MAPREG_H */
+#endif /** MAP_MAPREG_H **/
diff --git a/src/map/mapreg_sql.c b/src/map/mapreg_sql.c
index 741505e17..16d8b0ff6 100644
--- a/src/map/mapreg_sql.c
+++ b/src/map/mapreg_sql.c
@@ -22,7 +22,7 @@
#include "mapreg.h"
-#include "map/map.h" // map-"mysql_handle
+#include "map/map.h"
#include "map/script.h"
#include "common/cbasetypes.h"
#include "common/conf.h"
@@ -38,289 +38,596 @@
#include <stdlib.h>
#include <string.h>
-static struct mapreg_interface mapreg_s;
-struct mapreg_interface *mapreg;
-
-#define MAPREG_AUTOSAVE_INTERVAL (300*1000)
+static struct mapreg_interface mapreg_s; //!< Private interface structure.
+struct mapreg_interface *mapreg; //!< Public interface structure.
/**
- * Looks up the value of an integer variable using its uid.
+ * Looks up the value of a global integer variable using its unique ID.
*
- * @param uid variable's unique identifier.
- * @return variable's integer value
- */
-static int mapreg_readreg(int64 uid)
+ * @param uid The variable's unique ID.
+ * @return The variable's value or 0 if the variable does not exist.
+ *
+ **/
+static int mapreg_get_num_reg(int64 uid)
{
- struct mapreg_save *m = i64db_get(mapreg->regs.vars, uid);
- return m?m->u.i:0;
+ struct mapreg_save *var = i64db_get(mapreg->regs.vars, uid);
+ return (var != NULL) ? var->u.i : 0;
}
/**
- * Looks up the value of a string variable using its uid.
+ * Looks up the value of a global string variable using its unique ID.
*
- * @param uid variable's unique identifier
- * @return variable's string value
- */
-static char *mapreg_readregstr(int64 uid)
+ * @param uid The variable's unique ID.
+ * @return The variable's value or NULL if the variable does not exist.
+ *
+ **/
+static char *mapreg_get_str_reg(int64 uid)
{
- struct mapreg_save *m = i64db_get(mapreg->regs.vars, uid);
- return m?m->u.str:NULL;
+ struct mapreg_save *var = i64db_get(mapreg->regs.vars, uid);
+ return (var != NULL) ? var->u.str : NULL;
}
/**
- * Modifies the value of an integer variable.
+ * Sets the value of a global integer variable.
*
- * @param uid variable's unique identifier
- * @param val new value
- * @retval true value was successfully set
- */
-static bool mapreg_setreg(int64 uid, int val)
+ * @param uid The variable's unique ID.
+ * @param name The variable's name.
+ * @param index The variable's array index.
+ * @param value The variable's new value.
+ * @return True on success, otherwise false.
+ *
+ **/
+static bool mapreg_set_num_db(int64 uid, const char *name, unsigned int index, int value)
{
- struct mapreg_save *m;
- int num = script_getvarid(uid);
- unsigned int i = script_getvaridx(uid);
- const char* name = script->get_str(num);
-
- nullpo_retr(true, name);
- if( val != 0 ) {
- if( (m = i64db_get(mapreg->regs.vars, uid)) ) {
- m->u.i = val;
- if(name[1] != '@') {
- m->save = true;
- mapreg->dirty = true;
- }
- } else {
- if( i )
- script->array_update(&mapreg->regs, uid, false);
-
- m = ers_alloc(mapreg->ers, struct mapreg_save);
-
- m->u.i = val;
- m->uid = uid;
- m->save = false;
- m->is_string = false;
-
- if (name[1] != '@' && !mapreg->skip_insert) {// write new variable to database
- char tmp_str[(SCRIPT_VARNAME_LENGTH+1)*2+1];
- SQL->EscapeStringLen(map->mysql_handle, tmp_str, name, strnlen(name, SCRIPT_VARNAME_LENGTH+1));
- if( SQL_ERROR == SQL->Query(map->mysql_handle, "INSERT INTO `%s`(`varname`,`index`,`value`) VALUES ('%s','%u','%d')", mapreg->table, tmp_str, i, val) )
- Sql_ShowDebug(map->mysql_handle);
- }
- i64db_put(mapreg->regs.vars, uid, m);
+ nullpo_retr(false, name);
+ Assert_retr(false, *name != '\0');
+ Assert_retr(false, strlen(name) <= SCRIPT_VARNAME_LENGTH);
+
+ if (value == 0)
+ return mapreg->delete_num_db(uid, name, index);
+
+ struct mapreg_save *var = i64db_get(mapreg->regs.vars, uid);
+
+ // Update variable.
+ if (var != NULL) {
+ var->u.i = value;
+
+ if (script->is_permanent_variable(name)) {
+ var->save = true;
+ mapreg->dirty = true;
}
- } else { // val == 0
- if( i )
- script->array_update(&mapreg->regs, uid, true);
- if( (m = i64db_get(mapreg->regs.vars, uid)) ) {
- ers_free(mapreg->ers, m);
+
+ return true;
+ }
+
+ // Add new variable.
+ if (index != 0)
+ script->array_update(&mapreg->regs, uid, false);
+
+ var = ers_alloc(mapreg->ers, struct mapreg_save);
+ var->u.i = value;
+ var->uid = uid;
+ var->save = false;
+ var->is_string = false;
+ i64db_put(mapreg->regs.vars, uid, var);
+
+ if (script->is_permanent_variable(name) && !mapreg->skip_insert) {
+ struct SqlStmt *stmt = SQL->StmtMalloc(map->mysql_handle);
+
+ if (stmt == NULL) {
+ SqlStmt_ShowDebug(stmt);
+ return false;
}
- i64db_remove(mapreg->regs.vars, uid);
- if( name[1] != '@' ) {// Remove from database because it is unused.
- if( SQL_ERROR == SQL->Query(map->mysql_handle, "DELETE FROM `%s` WHERE `varname`='%s' AND `index`='%u'", mapreg->table, name, i) )
- Sql_ShowDebug(map->mysql_handle);
+ const char *query = "INSERT INTO `%s` (`key`, `index`, `value`) VALUES (?, ?, ?)";
+
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, query, mapreg->num_db)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_STRING, name, strlen(name))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 1, SQLDT_UINT32, &index, sizeof(index))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 2, SQLDT_INT32, &value, sizeof(value))
+ || SQL_ERROR == SQL->StmtExecute(stmt)) {
+ SqlStmt_ShowDebug(stmt);
+ SQL->StmtFree(stmt);
+ return false;
}
+
+ SQL->StmtFree(stmt);
}
return true;
}
/**
- * Modifies the value of a string variable.
+ * Deletes a global integer variable.
*
- * @param uid variable's unique identifier
- * @param str new value
- * @retval true value was successfully set
- */
-static bool mapreg_setregstr(int64 uid, const char *str)
+ * @param uid The variable's unique ID.
+ * @param name The variable's name.
+ * @param index The variable's array index.
+ * @return True on success, otherwise false.
+ *
+ **/
+static bool mapreg_delete_num_db(int64 uid, const char *name, unsigned int index)
{
- struct mapreg_save *m;
- int num = script_getvarid(uid);
- unsigned int i = script_getvaridx(uid);
- const char* name = script->get_str(num);
-
- nullpo_retr(true, name);
-
- if( str == NULL || *str == 0 ) {
- if( i )
- script->array_update(&mapreg->regs, uid, true);
- if(name[1] != '@') {
- if (SQL_ERROR == SQL->Query(map->mysql_handle, "DELETE FROM `%s` WHERE `varname`='%s' AND `index`='%u'", mapreg->table, name, i))
- Sql_ShowDebug(map->mysql_handle);
+ nullpo_retr(false, name);
+ Assert_retr(false, *name != '\0');
+ Assert_retr(false, strlen(name) <= SCRIPT_VARNAME_LENGTH);
+
+ struct mapreg_save *var = i64db_get(mapreg->regs.vars, uid);
+
+ if (var != NULL)
+ ers_free(mapreg->ers, var);
+
+ if (index != 0)
+ script->array_update(&mapreg->regs, uid, true);
+
+ i64db_remove(mapreg->regs.vars, uid);
+
+ if (script->is_permanent_variable(name)) {
+ struct SqlStmt *stmt = SQL->StmtMalloc(map->mysql_handle);
+
+ if (stmt == NULL) {
+ SqlStmt_ShowDebug(stmt);
+ return false;
}
- if( (m = i64db_get(mapreg->regs.vars, uid)) ) {
- if( m->u.str != NULL )
- aFree(m->u.str);
- ers_free(mapreg->ers, m);
+
+ const char *query = "DELETE FROM `%s` WHERE `key`=? AND `index`=?";
+
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, query, mapreg->num_db)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_STRING, name, strlen(name))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 1, SQLDT_UINT32, &index, sizeof(index))
+ || SQL_ERROR == SQL->StmtExecute(stmt)) {
+ SqlStmt_ShowDebug(stmt);
+ SQL->StmtFree(stmt);
+ return false;
}
- i64db_remove(mapreg->regs.vars, uid);
- } else {
- if( (m = i64db_get(mapreg->regs.vars, uid)) ) {
- if( m->u.str != NULL )
- aFree(m->u.str);
- m->u.str = aStrdup(str);
- if(name[1] != '@') {
- mapreg->dirty = true;
- m->save = true;
- }
- } else {
- if( i )
- script->array_update(&mapreg->regs, uid, false);
-
- m = ers_alloc(mapreg->ers, struct mapreg_save);
-
- m->uid = uid;
- m->u.str = aStrdup(str);
- m->save = false;
- m->is_string = true;
-
- if(name[1] != '@' && !mapreg->skip_insert) { //put returned null, so we must insert.
- char tmp_str[(SCRIPT_VARNAME_LENGTH+1)*2+1];
- char tmp_str2[255*2+1];
- SQL->EscapeStringLen(map->mysql_handle, tmp_str, name, strnlen(name, SCRIPT_VARNAME_LENGTH+1));
- SQL->EscapeStringLen(map->mysql_handle, tmp_str2, str, strnlen(str, 255));
- if( SQL_ERROR == SQL->Query(map->mysql_handle, "INSERT INTO `%s`(`varname`,`index`,`value`) VALUES ('%s','%u','%s')", mapreg->table, tmp_str, i, tmp_str2) )
- Sql_ShowDebug(map->mysql_handle);
- }
- i64db_put(mapreg->regs.vars, uid, m);
+
+ SQL->StmtFree(stmt);
+ }
+
+ return true;
+}
+
+/**
+ * Sets the value of a global integer variable or deletes it if passed value is 0.
+ *
+ * @param uid The variable's unique ID.
+ * @param val The variable's new value.
+ * @return True on success, otherwise false.
+ *
+ **/
+static bool mapreg_set_num(int64 uid, int val)
+{
+ unsigned int index = script_getvaridx(uid);
+ const char *name = script->get_str(script_getvarid(uid));
+
+ if (val != 0)
+ return mapreg->set_num_db(uid, name, index, val);
+ else
+ return mapreg->delete_num_db(uid, name, index);
+}
+
+/**
+ * Sets the value of a global string variable.
+ *
+ * @param uid The variable's unique ID.
+ * @param name The variable's name.
+ * @param index The variable's array index.
+ * @param value The variable's new value.
+ * @return True on success, otherwise false.
+ *
+ **/
+static bool mapreg_set_str_db(int64 uid, const char *name, unsigned int index, const char *value)
+{
+ nullpo_retr(false, name);
+ Assert_retr(false, *name != '\0');
+ Assert_retr(false, strlen(name) <= SCRIPT_VARNAME_LENGTH);
+
+ if (value == NULL || *value == '\0')
+ return mapreg->delete_str_db(uid, name, index);
+
+ if (script->is_permanent_variable(name))
+ Assert_retr(false, strlen(value) <= SCRIPT_STRING_VAR_LENGTH);
+
+ struct mapreg_save *var = i64db_get(mapreg->regs.vars, uid);
+
+ // Update variable.
+ if (var != NULL) {
+ if (var->u.str != NULL)
+ aFree(var->u.str);
+
+ var->u.str = aStrdup(value);
+
+ if (script->is_permanent_variable(name)) {
+ var->save = true;
+ mapreg->dirty = true;
}
+
+ return true;
+ }
+
+ // Add new variable.
+ if (index != 0)
+ script->array_update(&mapreg->regs, uid, false);
+
+ var = ers_alloc(mapreg->ers, struct mapreg_save);
+ var->u.str = aStrdup(value);
+ var->uid = uid;
+ var->save = false;
+ var->is_string = true;
+ i64db_put(mapreg->regs.vars, uid, var);
+
+ if (script->is_permanent_variable(name) && !mapreg->skip_insert) {
+ struct SqlStmt *stmt = SQL->StmtMalloc(map->mysql_handle);
+
+ if (stmt == NULL) {
+ SqlStmt_ShowDebug(stmt);
+ return false;
+ }
+
+ const char *query = "INSERT INTO `%s` (`key`, `index`, `value`) VALUES (?, ?, ?)";
+
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, query, mapreg->str_db)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_STRING, name, strlen(name))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 1, SQLDT_UINT32, &index, sizeof(index))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 2, SQLDT_STRING, value, strlen(value))
+ || SQL_ERROR == SQL->StmtExecute(stmt)) {
+ SqlStmt_ShowDebug(stmt);
+ SQL->StmtFree(stmt);
+ return false;
+ }
+
+ SQL->StmtFree(stmt);
}
return true;
}
/**
- * Loads permanent variables from database.
- */
-static void script_load_mapreg(void)
+ * Deletes a global string variable.
+ *
+ * @param uid The variable's unique ID.
+ * @param name The variable's name.
+ * @param index The variable's array index.
+ * @return True on success, otherwise false.
+ *
+ **/
+static bool mapreg_delete_str_db(int64 uid, const char *name, unsigned int index)
+{
+ nullpo_retr(false, name);
+ Assert_retr(false, *name != '\0');
+ Assert_retr(false, strlen(name) <= SCRIPT_VARNAME_LENGTH);
+
+ struct mapreg_save *var = i64db_get(mapreg->regs.vars, uid);
+
+ if (var != NULL) {
+ if (var->u.str != NULL)
+ aFree(var->u.str);
+
+ ers_free(mapreg->ers, var);
+ }
+
+ if (index != 0)
+ script->array_update(&mapreg->regs, uid, true);
+
+ i64db_remove(mapreg->regs.vars, uid);
+
+ if (script->is_permanent_variable(name)) {
+ struct SqlStmt *stmt = SQL->StmtMalloc(map->mysql_handle);
+
+ if (stmt == NULL) {
+ SqlStmt_ShowDebug(stmt);
+ return false;
+ }
+
+ const char *query = "DELETE FROM `%s` WHERE `key`=? AND `index`=?";
+
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, query, mapreg->str_db)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_STRING, name, strlen(name))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 1, SQLDT_UINT32, &index, sizeof(index))
+ || SQL_ERROR == SQL->StmtExecute(stmt)) {
+ SqlStmt_ShowDebug(stmt);
+ SQL->StmtFree(stmt);
+ return false;
+ }
+
+ SQL->StmtFree(stmt);
+ }
+
+ return true;
+}
+
+/**
+ * Sets the value of a global string variable or deletes it if passed value is NULL or an empty string.
+ *
+ * @param uid The variable's unique ID.
+ * @param str The variable's new value.
+ * @return True on success, otherwise false.
+ *
+ **/
+static bool mapreg_set_str(int64 uid, const char *str)
+{
+ unsigned int index = script_getvaridx(uid);
+ const char *name = script->get_str(script_getvarid(uid));
+
+ if (str != NULL && *str != '\0')
+ return mapreg->set_str_db(uid, name, index, str);
+ else
+ return mapreg->delete_str_db(uid, name, index);
+}
+
+/**
+ * Loads permanent global interger variables from the database.
+ *
+ **/
+static void mapreg_load_num_db(void)
{
- /*
- 0 1 2
- +-------------------------+
- | varname | index | value |
- +-------------------------+
- */
struct SqlStmt *stmt = SQL->StmtMalloc(map->mysql_handle);
- char varname[SCRIPT_VARNAME_LENGTH+1];
- int index;
- char value[255+1];
- uint32 length;
-
- if ( SQL_ERROR == SQL->StmtPrepare(stmt, "SELECT `varname`, `index`, `value` FROM `%s`", mapreg->table)
- || SQL_ERROR == SQL->StmtExecute(stmt)
- ) {
+
+ if (stmt == NULL) {
SqlStmt_ShowDebug(stmt);
- SQL->StmtFree(stmt);
return;
}
- mapreg->skip_insert = true;
+ const char *query = "SELECT `key`, `index`, `value` FROM `%s`";
+ char name[SCRIPT_VARNAME_LENGTH + 1];
+ unsigned int index;
+ int value;
- SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &varname, sizeof varname, &length, NULL);
- SQL->StmtBindColumn(stmt, 1, SQLDT_INT, &index, sizeof index, NULL, NULL);
- SQL->StmtBindColumn(stmt, 2, SQLDT_STRING, &value, sizeof value, NULL, NULL);
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, query, mapreg->num_db)
+ || SQL_ERROR == SQL->StmtExecute(stmt)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &name, sizeof(name), NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_UINT32, &index, sizeof(index), NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_INT32, &value, sizeof(value), NULL, NULL)) {
+ SqlStmt_ShowDebug(stmt);
+ SQL->StmtFree(stmt);
+ return;
+ }
- while ( SQL_SUCCESS == SQL->StmtNextRow(stmt) ) {
- int s = script->add_variable(varname);
- int i = index;
+ if (SQL->StmtNumRows(stmt) < 1) {
+ SQL->StmtFree(stmt);
+ return;
+ }
+ mapreg->skip_insert = true;
+
+ while (SQL_SUCCESS == SQL->StmtNextRow(stmt)) {
+ int var_key = script->add_variable(name);
+ int64 uid = reference_uid(var_key, index);
- if( i64db_exists(mapreg->regs.vars, reference_uid(s, i)) ) {
- ShowWarning("load_mapreg: duplicate! '%s' => '%s' skipping...\n",varname,value);
+ if (i64db_exists(mapreg->regs.vars, uid)) {
+ ShowWarning("mapreg_load_num_db: Duplicate! '%s' => '%d' Skipping...\n", name, value);
continue;
}
- if( varname[length-1] == '$' ) {
- mapreg->setregstr(reference_uid(s, i),value);
- } else {
- mapreg->setreg(reference_uid(s, i),atoi(value));
- }
+
+ mapreg->setreg(uid, value);
}
+ mapreg->skip_insert = false;
SQL->StmtFree(stmt);
+}
+
+/**
+ * Loads permanent global string variables from the database.
+ *
+ **/
+static void mapreg_load_str_db(void)
+{
+ struct SqlStmt *stmt = SQL->StmtMalloc(map->mysql_handle);
+
+ if (stmt == NULL) {
+ SqlStmt_ShowDebug(stmt);
+ return;
+ }
+
+ const char *query = "SELECT `key`, `index`, `value` FROM `%s`";
+ char name[SCRIPT_VARNAME_LENGTH + 1];
+ unsigned int index;
+ char value[SCRIPT_STRING_VAR_LENGTH + 1];
+
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, query, mapreg->str_db)
+ || SQL_ERROR == SQL->StmtExecute(stmt)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 0, SQLDT_STRING, &name, sizeof(name), NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 1, SQLDT_UINT32, &index, sizeof(index), NULL, NULL)
+ || SQL_ERROR == SQL->StmtBindColumn(stmt, 2, SQLDT_STRING, &value, sizeof(value), NULL, NULL)) {
+ SqlStmt_ShowDebug(stmt);
+ SQL->StmtFree(stmt);
+ return;
+ }
+
+ if (SQL->StmtNumRows(stmt) < 1) {
+ SQL->StmtFree(stmt);
+ return;
+ }
+
+ mapreg->skip_insert = true;
+
+ while (SQL_SUCCESS == SQL->StmtNextRow(stmt)) {
+ int var_key = script->add_variable(name);
+ int64 uid = reference_uid(var_key, index);
+
+ if (i64db_exists(mapreg->regs.vars, uid)) {
+ ShowWarning("mapreg_load_str_db: Duplicate! '%s' => '%s' Skipping...\n", name, value);
+ continue;
+ }
+
+ mapreg->setregstr(uid, value);
+ }
mapreg->skip_insert = false;
+ SQL->StmtFree(stmt);
+}
+/**
+ * Loads permanent global variables from the database.
+ *
+ **/
+static void mapreg_load(void)
+{
+ mapreg->load_num_db();
+ mapreg->load_str_db();
mapreg->dirty = false;
}
/**
- * Saves permanent variables to database.
- */
-static void script_save_mapreg(void)
+ * Saves a permanent global integer variable to the database.
+ *
+ * @param name The variable's name.
+ * @param index The variable's array index.
+ * @param value The variable's value.
+ *
+ **/
+static void mapreg_save_num_db(const char *name, unsigned int index, int value)
+{
+ nullpo_retv(name);
+ Assert_retv(*name != '\0');
+ Assert_retv(strlen(name) <= SCRIPT_VARNAME_LENGTH);
+
+ struct SqlStmt *stmt = SQL->StmtMalloc(map->mysql_handle);
+
+ if (stmt == NULL) {
+ SqlStmt_ShowDebug(stmt);
+ return;
+ }
+
+ const char *query = "UPDATE `%s` SET `value`=? WHERE `key`=? AND `index`=? LIMIT 1";
+
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, query, mapreg->num_db)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_INT32, &value, sizeof(value))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 1, SQLDT_STRING, name, strlen(name))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 2, SQLDT_UINT32, &index, sizeof(index))
+ || SQL_ERROR == SQL->StmtExecute(stmt)) {
+ SqlStmt_ShowDebug(stmt);
+ }
+
+ SQL->StmtFree(stmt);
+}
+
+/**
+ * Saves a permanent global string variable to the database.
+ *
+ * @param name The variable's name.
+ * @param index The variable's array index.
+ * @param value The variable's value.
+ *
+ **/
+static void mapreg_save_str_db(const char *name, unsigned int index, const char *value)
+{
+ nullpo_retv(name);
+ nullpo_retv(value);
+ Assert_retv(*name != '\0');
+ Assert_retv(strlen(name) <= SCRIPT_VARNAME_LENGTH);
+ Assert_retv(*value != '\0');
+ Assert_retv(strlen(value) <= SCRIPT_STRING_VAR_LENGTH);
+
+ struct SqlStmt *stmt = SQL->StmtMalloc(map->mysql_handle);
+
+ if (stmt == NULL) {
+ SqlStmt_ShowDebug(stmt);
+ return;
+ }
+
+ const char *query = "UPDATE `%s` SET `value`=? WHERE `key`=? AND `index`=? LIMIT 1";
+
+ if (SQL_ERROR == SQL->StmtPrepare(stmt, query, mapreg->str_db)
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 0, SQLDT_STRING, value, strlen(value))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 1, SQLDT_STRING, name, strlen(name))
+ || SQL_ERROR == SQL->StmtBindParam(stmt, 2, SQLDT_UINT32, &index, sizeof(index))
+ || SQL_ERROR == SQL->StmtExecute(stmt)) {
+ SqlStmt_ShowDebug(stmt);
+ }
+
+ SQL->StmtFree(stmt);
+}
+
+/**
+ * Saves permanent global variables to the database.
+ *
+ **/
+static void mapreg_save(void)
{
if (mapreg->dirty) {
struct DBIterator *iter = db_iterator(mapreg->regs.vars);
- struct mapreg_save *m = NULL;
- for (m = dbi_first(iter); dbi_exists(iter); m = dbi_next(iter)) {
- if (m->save) {
- int num = script_getvarid(m->uid);
- int i = script_getvaridx(m->uid);
- const char* name = script->get_str(num);
- nullpo_retv(name);
- if (!m->is_string) {
- if( SQL_ERROR == SQL->Query(map->mysql_handle, "UPDATE `%s` SET `value`='%d' WHERE `varname`='%s' AND `index`='%d' LIMIT 1", mapreg->table, m->u.i, name, i) )
- Sql_ShowDebug(map->mysql_handle);
- } else {
- char tmp_str2[2*255+1];
- SQL->EscapeStringLen(map->mysql_handle, tmp_str2, m->u.str, safestrnlen(m->u.str, 255));
- if( SQL_ERROR == SQL->Query(map->mysql_handle, "UPDATE `%s` SET `value`='%s' WHERE `varname`='%s' AND `index`='%d' LIMIT 1", mapreg->table, tmp_str2, name, i) )
- Sql_ShowDebug(map->mysql_handle);
- }
- m->save = false;
+ struct mapreg_save *var = NULL;
+
+ for (var = dbi_first(iter); dbi_exists(iter); var = dbi_next(iter)) {
+ if (var->save) {
+ int index = script_getvaridx(var->uid);
+ const char *name = script->get_str(script_getvarid(var->uid));
+
+ if (!var->is_string)
+ mapreg->save_num_db(name, index, var->u.i);
+ else
+ mapreg->save_str_db(name, index, var->u.str);
+
+ var->save = false;
}
}
+
dbi_destroy(iter);
mapreg->dirty = false;
}
}
/**
- * Timer event to auto-save permanent variables.
+ * Timer event to auto-save permanent global variables.
*
- * @see timer->do_timer
- */
-static int script_autosave_mapreg(int tid, int64 tick, int id, intptr_t data)
+ * @see timer->do_timer()
+ *
+ * @param tid Unused.
+ * @param tick Unused.
+ * @param id Unused.
+ * @param data Unused.
+ * @return Always 0.
+ *
+ **/
+static int mapreg_save_timer(int tid, int64 tick, int id, intptr_t data)
{
mapreg->save();
return 0;
}
/**
- * Destroys a mapreg_save structure, freeing the contained string, if any.
+ * Destroys a mapreg_save structure and frees the contained string, if any.
*
* @see DBApply
- */
-static int mapreg_destroyreg(union DBKey key, struct DBData *data, va_list ap)
+ *
+ * @param key Unused.
+ * @param data The DB data holding the mapreg_save data.
+ * @param ap Unused.
+ * @return 0 on success, otherwise 1.
+ *
+ **/
+static int mapreg_destroy_reg(union DBKey key, struct DBData *data, va_list ap)
{
- struct mapreg_save *m = NULL;
+ nullpo_retr(1, data);
if (data->type != DB_DATA_PTR) // Sanity check
- return 0;
+ return 1;
- m = DB->data2ptr(data);
+ struct mapreg_save *var = DB->data2ptr(data);
- if (m->is_string) {
- if (m->u.str)
- aFree(m->u.str);
- }
- ers_free(mapreg->ers, m);
+ if (var == NULL)
+ return 1;
+
+ if (var->is_string && var->u.str != NULL)
+ aFree(var->u.str);
+ ers_free(mapreg->ers, var);
return 0;
}
/**
- * Reloads mapregs, saving to database beforehand.
+ * Reloads permanent global variables, saving them to the database beforehand.
*
- * This has the effect of clearing the temporary variables, and
- * reloading the permanent ones.
- */
+ * This has the effect of clearing the temporary global variables and reloading the permanent ones.
+ *
+ **/
static void mapreg_reload(void)
{
mapreg->save();
-
mapreg->regs.vars->clear(mapreg->regs.vars, mapreg->destroyreg);
- if( mapreg->regs.arrays ) {
+ if (mapreg->regs.arrays != NULL) {
mapreg->regs.arrays->destroy(mapreg->regs.arrays, script->array_free_db);
mapreg->regs.arrays = NULL;
}
@@ -329,86 +636,105 @@ static void mapreg_reload(void)
}
/**
- * Finalizer.
- */
+ * Loads the mapreg database table names from configuration file.
+ *
+ * @param filename Path to configuration file. (Used in error and warning messages).
+ * @param config The current config being parsed.
+ * @param imported Whether the current config is imported from another file.
+ * @return True on success, otherwise false.
+ *
+ **/
+static bool mapreg_config_read_registry(const char *filename, const struct config_setting_t *config, bool imported)
+{
+ nullpo_retr(false, filename);
+ nullpo_retr(false, config);
+
+ bool ret_val = true;
+ size_t sz = sizeof(mapreg->num_db);
+ int result = libconfig->setting_lookup_mutable_string(config, "map_reg_num_db", mapreg->num_db, sz);
+
+ if (result != CONFIG_TRUE && !imported) {
+ ShowError("%s: inter_configuration/database_names/registry/map_reg_num_db was not found in %s!\n",
+ __func__, filename);
+ ret_val = false;
+ }
+
+ sz = sizeof(mapreg->str_db);
+ result = libconfig->setting_lookup_mutable_string(config, "map_reg_str_db", mapreg->str_db, sz);
+
+ if (result != CONFIG_TRUE && !imported) {
+ ShowError("%s: inter_configuration/database_names/registry/map_reg_str_db was not found in %s!\n",
+ __func__, filename);
+ ret_val = false;
+ }
+
+ return ret_val;
+}
+
+/**
+ * Saves permanent global variables to the database and frees all the memory they use afterwards.
+ *
+ **/
static void mapreg_final(void)
{
mapreg->save();
-
mapreg->regs.vars->destroy(mapreg->regs.vars, mapreg->destroyreg);
-
ers_destroy(mapreg->ers);
- if( mapreg->regs.arrays )
+ if (mapreg->regs.arrays != NULL)
mapreg->regs.arrays->destroy(mapreg->regs.arrays, script->array_free_db);
}
/**
- * Initializer.
- */
+ * Allocates memory for permanent global variables, loads them from the database and initializes the auto-save timer.
+ *
+ **/
static void mapreg_init(void)
{
mapreg->regs.vars = i64db_alloc(DB_OPT_BASE);
mapreg->ers = ers_new(sizeof(struct mapreg_save), "mapreg_sql.c::mapreg_ers", ERS_OPT_CLEAN);
-
mapreg->load();
-
- timer->add_func_list(mapreg->save_timer, "mapreg_script_autosave_mapreg");
+ timer->add_func_list(mapreg->save_timer, "mapreg_save_timer");
timer->add_interval(timer->gettick() + MAPREG_AUTOSAVE_INTERVAL, mapreg->save_timer, 0, 0, MAPREG_AUTOSAVE_INTERVAL);
}
/**
- * Loads the mapreg configuration file.
- *
- * @param filename Path to configuration file (used in error and warning messages).
- * @param config The current config being parsed.
- * @param imported Whether the current config is imported from another file.
+ * Initializes the mapreg interface defaults.
*
- * @retval false in case of error.
- */
-static bool mapreg_config_read(const char *filename, const struct config_setting_t *config, bool imported)
-{
- nullpo_retr(false, filename);
- nullpo_retr(false, config);
-
- if (libconfig->setting_lookup_mutable_string(config, "mapreg_db", mapreg->table, sizeof(mapreg->table)) != CONFIG_TRUE)
- return false;
-
- return true;
-}
-
-/**
- * Interface defaults initializer.
- */
+ **/
void mapreg_defaults(void)
{
+ /** Interface structure. **/
mapreg = &mapreg_s;
- /* */
- mapreg->regs.vars = NULL;
+ /** Interface variables. **/
mapreg->ers = NULL;
- mapreg->skip_insert = false;
-
- safestrncpy(mapreg->table, "mapreg", sizeof(mapreg->table));
- mapreg->dirty = false;
-
- /* */
+ mapreg->regs.vars = NULL;
mapreg->regs.arrays = NULL;
-
- /* */
- mapreg->init = mapreg_init;
- mapreg->final = mapreg_final;
-
- /* */
- mapreg->readreg = mapreg_readreg;
- mapreg->readregstr = mapreg_readregstr;
- mapreg->setreg = mapreg_setreg;
- mapreg->setregstr = mapreg_setregstr;
- mapreg->load = script_load_mapreg;
- mapreg->save = script_save_mapreg;
- mapreg->save_timer = script_autosave_mapreg;
- mapreg->destroyreg = mapreg_destroyreg;
+ mapreg->dirty = false;
+ mapreg->skip_insert = false;
+ safestrncpy(mapreg->num_db, "map_reg_num_db", sizeof(mapreg->num_db));
+ safestrncpy(mapreg->str_db, "map_reg_str_db", sizeof(mapreg->str_db));
+
+ /** Interface functions. **/
+ mapreg->readreg = mapreg_get_num_reg;
+ mapreg->readregstr = mapreg_get_str_reg;
+ mapreg->set_num_db = mapreg_set_num_db;
+ mapreg->delete_num_db = mapreg_delete_num_db;
+ mapreg->setreg = mapreg_set_num;
+ mapreg->set_str_db = mapreg_set_str_db;
+ mapreg->delete_str_db = mapreg_delete_str_db;
+ mapreg->setregstr = mapreg_set_str;
+ mapreg->load_num_db = mapreg_load_num_db;
+ mapreg->load_str_db = mapreg_load_str_db;
+ mapreg->load = mapreg_load;
+ mapreg->save_num_db = mapreg_save_num_db;
+ mapreg->save_str_db = mapreg_save_str_db;
+ mapreg->save = mapreg_save;
+ mapreg->save_timer = mapreg_save_timer;
+ mapreg->destroyreg = mapreg_destroy_reg;
mapreg->reload = mapreg_reload;
- mapreg->config_read = mapreg_config_read;
-
+ mapreg->config_read_registry = mapreg_config_read_registry;
+ mapreg->final = mapreg_final;
+ mapreg->init = mapreg_init;
}
diff --git a/src/map/messages_main.h b/src/map/messages_main.h
index 9f5a17662..dab537b6a 100644
--- a/src/map/messages_main.h
+++ b/src/map/messages_main.h
@@ -24,7 +24,7 @@
/* This file is autogenerated, please do not commit manual changes
-Latest version: 20200304
+Latest version: 20200520
*/
enum clif_messages {
@@ -13866,12 +13866,14 @@ Ghost %d
Shadow %d
*/
MSG_NAVIGATION_PROPERTY8 = 0x8de,
-/*20120417 to latest
+/*20120417 to 20200506
언데드%d
Undead %d
20130807 to 20130814
염속성%d
Ghost %d
+20200520 to latest
+불사%d
*/
MSG_NAVIGATION_PROPERTY9 = 0x8df,
/*20120417 to latest
@@ -22612,6 +22614,28 @@ DEATH: %.1f%% (basic: 100.0%%, %s: %.1f%%)
*/
MSG_ID_EE3 = 0xee3,
#endif
+#if PACKETVER >= 20200506
+/*20200506 to latest
+특성 마법 공격력이 증가되었습니다.
+*/
+ MSG_ID_EE4 = 0xee4,
+/*20200506 to latest
+스펠 인챈팅 효과가 해제되었습니다.
+*/
+ MSG_ID_EE5 = 0xee5,
+/*20200506 to latest
+프롬 디 어비스 효과가 해제되었습니다.
+*/
+ MSG_ID_EE6 = 0xee6,
+/*20200506 to latest
+특성 물리 공격력, 특성 마법 공격력 및 명중률이 증가되었습니다.
+*/
+ MSG_ID_EE7 = 0xee7,
+/*20200506 to latest
+어비스 슬레이어 효과가 해제되었습니다.
+*/
+ MSG_ID_EE8 = 0xee8,
+#endif
};
#endif /* MAP_MESSAGES_MAIN_H */
diff --git a/src/map/messages_zero.h b/src/map/messages_zero.h
index babe9384c..051d0e9df 100644
--- a/src/map/messages_zero.h
+++ b/src/map/messages_zero.h
@@ -24,7 +24,7 @@
/* This file is autogenerated, please do not commit manual changes
-Latest version: 20200304
+Latest version: 20200520
*/
enum clif_messages {
@@ -11263,9 +11263,11 @@ Shadow %d
Ghost %d
*/
MSG_NAVIGATION_PROPERTY8 = 0x8de,
-/*20171018 to latest
+/*20171018 to 20200506
언데드%d
Undead %d
+20200520 to latest
+불사%d
*/
MSG_NAVIGATION_PROPERTY9 = 0x8df,
/*20171018 to latest
@@ -18701,6 +18703,28 @@ DEATH: %.1f%% (basic: 100.0%%, %s: %.1f%%)
*/
MSG_ID_EE3 = 0xee3,
#endif
+#if PACKETVER >= 20200506
+/*20200506 to latest
+특성 마법 공격력이 증가되었습니다.
+*/
+ MSG_ID_EE4 = 0xee4,
+/*20200506 to latest
+스펠 인챈팅 효과가 해제되었습니다.
+*/
+ MSG_ID_EE5 = 0xee5,
+/*20200506 to latest
+프롬 디 어비스 효과가 해제되었습니다.
+*/
+ MSG_ID_EE6 = 0xee6,
+/*20200506 to latest
+특성 물리 공격력, 특성 마법 공격력 및 명중률이 증가되었습니다.
+*/
+ MSG_ID_EE7 = 0xee7,
+/*20200506 to latest
+어비스 슬레이어 효과가 해제되었습니다.
+*/
+ MSG_ID_EE8 = 0xee8,
+#endif
};
#endif /* MAP_MESSAGES_ZERO_H */
diff --git a/src/map/mob.c b/src/map/mob.c
index 51a32abd9..849b962a1 100644
--- a/src/map/mob.c
+++ b/src/map/mob.c
@@ -78,6 +78,7 @@ struct mob_interface *mob;
// Move probability for mobs away from players (rate of 1000 minute)
// in Aegis, this is 100% for mobs that have been activated by players and none otherwise.
#define MOB_LAZYMOVEPERC(md) ((md)->state.spotted?1000:0)
+#define MOB_MAX_CASTTIME (10 * 60 * 1000) // Maximum cast time for monster skills. (10 minutes)
#define MOB_MAX_DELAY (24*3600*1000)
#define MAX_MINCHASE 30 //Max minimum chase value to use for mobs.
#define RUDE_ATTACKED_COUNT 2 //After how many rude-attacks should the skill be used?
@@ -446,6 +447,9 @@ static bool mob_ksprotected(struct block_list *src, struct block_list *target)
if( !battle_config.ksprotection )
return false; // KS Protection Disabled
+ if (status->isdead(target) != 0)
+ return false; // Target is dead.
+
if( !(md = BL_CAST(BL_MOB,target)) )
return false; // Target is not MOB
@@ -1519,7 +1523,7 @@ static int mob_unlocktarget(struct mob_data *md, int64 tick)
FALLTHROUGH
case MSS_IDLE:
// Idle skill.
- if (!(++md->ud.walk_count%IDLE_SKILL_INTERVAL) && mob->skill_use(md, tick, -1))
+ if ((++md->ud.walk_count % IDLE_SKILL_INTERVAL) == 0 && mob->skill_use(md, tick, -1) == 0)
break;
//Random walk.
if (!md->master_id &&
@@ -1699,7 +1703,7 @@ static bool mob_ai_sub_hard(struct mob_data *md, int64 tick)
|| !mob->can_reach(md, tbl, md->min_chase, MSS_RUSH)
)
&& md->state.attacked_count++ >= RUDE_ATTACKED_COUNT
- && !mob->skill_use(md, tick, MSC_RUDEATTACKED) // If can't rude Attack
+ && mob->skill_use(md, tick, MSC_RUDEATTACKED) == 0 // If can't rude Attack
&& can_move && unit->escape(&md->bl, tbl, rnd()%10 +1) // Attempt escape
) {
//Escaped
@@ -1727,7 +1731,7 @@ static bool mob_ai_sub_hard(struct mob_data *md, int64 tick)
) {
// Rude attacked
if (md->state.attacked_count++ >= RUDE_ATTACKED_COUNT
- && !mob->skill_use(md, tick, MSC_RUDEATTACKED) && can_move
+ && mob->skill_use(md, tick, MSC_RUDEATTACKED) == 0 && can_move != 0
&& !tbl && unit->escape(&md->bl, abl, rnd()%10 +1)
) {
//Escaped.
@@ -2422,6 +2426,7 @@ static int mob_dead(struct mob_data *md, struct block_list *src, int type)
nullpo_retr(3, md);
m = md->bl.m;
+ Assert_retr(false, m >= 0 && m < map->count);
mstatus = &md->status;
if( md->guardian_data && md->guardian_data->number >= 0 && md->guardian_data->number < MAX_GUARDIANS )
@@ -3387,272 +3392,344 @@ static struct block_list *mob_getmasterhpltmaxrate(struct mob_data *md, int rate
return NULL;
}
-/*==========================================
- * What a status state suits by nearby MOB is looked for.
- *------------------------------------------*/
+
+/**
+ * Checks if the passed monster/character meets the passed status change requirements
+ * and returns it by reference parameter on success.
+ *
+ * @param bl The monster/character to check.
+ * @param ap List of arguments. (Source monster, MSC_* flag, SC_* flag, reference bl.)
+ * @return Always 0.
+ *
+ **/
static int mob_getfriendstatus_sub(struct block_list *bl, va_list ap)
{
- int cond1,cond2;
- struct mob_data **fr = NULL, *md = NULL, *mmd = NULL;
- int flag=0;
-
nullpo_ret(bl);
- Assert_ret(bl->type == BL_MOB);
- md = BL_UCAST(BL_MOB, bl);
- nullpo_ret(mmd=va_arg(ap,struct mob_data *));
- if( mmd->bl.id == bl->id && !(battle_config.mob_ai&0x10) )
+ struct mob_data *md = va_arg(ap, struct mob_data *);
+
+ nullpo_ret(md);
+
+ if (md->bl.id == bl->id && (battle_config.mob_ai & 0x10) == 0)
+ return 0;
+
+ if (battle->check_target(&md->bl, bl, BCT_ENEMY) > 0)
return 0;
- if (battle->check_target(&mmd->bl,bl,BCT_ENEMY)>0)
+ int cond1 = va_arg(ap, int);
+ int cond2 = va_arg(ap, int);
+ struct block_list **fr = va_arg(ap, struct block_list **);
+
+ if ((*fr) != NULL) // A friend was already found.
return 0;
- cond1=va_arg(ap,int);
- cond2=va_arg(ap,int);
- fr=va_arg(ap,struct mob_data **);
- if( cond2==-1 ){
- int j;
- for(j=SC_COMMON_MIN;j<=SC_COMMON_MAX && !flag;j++){
- if ((flag=(md->sc.data[j] != NULL))) //Once an effect was found, break out. [Skotlex]
+
+ int flag = 0;
+ struct status_change *sc = status->get_sc(bl);
+
+ if (cond2 == -1) { // Check for any of the common status alignments.
+ for (int i = SC_COMMON_MIN; i <= SC_COMMON_MAX; i++) {
+ if ((flag = (sc->data[i] != NULL)) != 0) // Once an effect was found, break out. [Skotlex]
break;
}
- }else
- flag=( md->sc.data[cond2] != NULL );
- if( flag^( cond1==MSC_FRIENDSTATUSOFF ) )
- (*fr)=md;
+ } else {
+ flag = (sc->data[cond2] != NULL);
+ }
+
+ if ((flag ^ (cond1 == MSC_FRIENDSTATUSOFF)) != 0)
+ (*fr) = bl;
return 0;
}
-static struct mob_data *mob_getfriendstatus(struct mob_data *md, int cond1, int cond2)
+/**
+ * Gets a random monster/character within a range of 8 cells around md.
+ * If md is summoned (no monster slave!) a character is picker, otherwise a monster.
+ *
+ * @param md The monster which tries to cast a skill.
+ * @param cond1 Whether to check for active or inactive status change. (MSC_FRIENDSTATUSON/MSC_FRIENDSTATUSOFF)
+ * @param cond2 The status change (SC_* flag) to check.
+ * @return A randomly picked monster/character within range.
+ *
+ **/
+static struct block_list *mob_getfriendstatus(struct mob_data *md, int cond1, int cond2)
{
- struct mob_data* fr = NULL;
nullpo_ret(md);
- map->foreachinrange(mob->getfriendstatus_sub, &md->bl, 8,BL_MOB, md,cond1,cond2,&fr);
+ int type = (md->special_state.ai != AI_NONE) ? BL_PC : BL_MOB;
+ struct block_list *fr = NULL;
+
+ map->foreachinrange(mob->getfriendstatus_sub, &md->bl, 8, type, md, cond1, cond2, &fr);
+
return fr;
}
-/*==========================================
- * Skill use judging
- *------------------------------------------*/
-static int mobskill_use(struct mob_data *md, int64 tick, int event)
+/**
+ * Checks if skill cast condition in fulfilled and executes the skill in case of success.
+ *
+ * @param md The monster which tries to cast a skill.
+ * @param tick The timestamp of skill execution.
+ * @param event The MSC_* flag which triggered the skill execution. (-1 for non-event skill conditions.)
+ * @return 0 on success, 1 on failure.
+ *
+ **/
+static int mob_skill_use(struct mob_data *md, int64 tick, int event)
{
- struct mob_skill *ms;
- struct block_list *fbl = NULL; //Friend bl, which can either be a BL_PC or BL_MOB depending on the situation. [Skotlex]
- struct block_list *bl;
- struct mob_data *fmd = NULL;
- int i,j,n;
-
nullpo_ret(md);
- nullpo_ret(ms = md->db->skill);
- if (!battle_config.mob_skill_rate || md->ud.skilltimer != INVALID_TIMER || !md->db->maxskill)
- return 0;
+ struct mob_skill *ms = md->db->skill;
+
+ nullpo_ret(ms);
+
+ if (battle_config.mob_skill_rate == 0 || md->ud.skilltimer != INVALID_TIMER || md->db->maxskill == 0)
+ return 1;
if (event == -1 && DIFF_TICK(md->ud.canact_tick, tick) > 0)
- return 0; //Skill act delay only affects non-event skills.
+ return 1; // Skill act delay only affects non-event skill conditions.
- //Pick a starting position and loop from that.
- i = (battle_config.mob_ai&0x100) ? rnd()%md->db->maxskill : 0;
- for (n = 0; n < md->db->maxskill; i++, n++) {
- int c2, flag = 0;
+ // Pick a starting position and loop from that.
+ int skill_idx = ((battle_config.mob_ai & 0x100) != 0) ? rnd() % md->db->maxskill : 0;
- if (i == md->db->maxskill)
- i = 0;
+ for (int i = 0; i < md->db->maxskill; skill_idx++, i++) {
+ if (skill_idx == md->db->maxskill)
+ skill_idx = 0;
- if (DIFF_TICK(tick, md->skilldelay[i]) < ms[i].delay)
+ if (DIFF_TICK(tick, md->skilldelay[skill_idx]) < ms[skill_idx].delay)
continue;
- c2 = ms[i].cond2;
+ enum MobSkillState state = ms[skill_idx].state;
- if (ms[i].state != md->state.skillstate) {
- if (md->state.skillstate != MSS_DEAD && (ms[i].state == MSS_ANY ||
- (ms[i].state == MSS_ANYTARGET && md->target_id && md->state.skillstate != MSS_LOOT)
- )) //ANYTARGET works with any state as long as there's a target. [Skotlex]
- ;
- else
+ if (state != md->state.skillstate) {
+ bool state_dead = (md->state.skillstate == MSS_DEAD);
+ bool any_target = (state == MSS_ANYTARGET && md->target_id != 0 && md->state.skillstate != MSS_LOOT);
+
+ // MSS_ANYTARGET works with any state as long as there's a target. [Skotlex]
+ if (state_dead || (state != MSS_ANY && !any_target))
continue;
}
- if (rnd() % 10000 > ms[i].permillage) //Lupus (max value = 10000)
+
+ if (rnd() % 10000 > ms[skill_idx].permillage)
continue;
- if (ms[i].cond1 == event)
- flag = 1; //Trigger skill.
- else if (ms[i].cond1 == MSC_SKILLUSED)
- flag = ((event & 0xffff) == MSC_SKILLUSED && ((event >> 16) == c2 || c2 == 0));
- else if(event == -1){
- //Avoid entering on defined events to avoid "hyper-active skill use" due to the overflow of calls to this function in battle.
- switch (ms[i].cond1)
- {
- case MSC_ALWAYS:
- flag = 1; break;
- case MSC_MYHPLTMAXRATE: // HP< maxhp%
- flag = get_percentage(md->status.hp, md->status.max_hp);
- flag = (flag <= c2);
- break;
- case MSC_MYHPINRATE:
- flag = get_percentage(md->status.hp, md->status.max_hp);
- flag = (flag >= c2 && flag <= ms[i].val[0]);
- break;
- case MSC_MYSTATUSON: // status[num] on
- case MSC_MYSTATUSOFF: // status[num] off
- if (!md->sc.count) {
- flag = 0;
- } else if (ms[i].cond2 == -1) {
- for (j = SC_COMMON_MIN; j <= SC_COMMON_MAX; j++)
- if ((flag = (md->sc.data[j]!=NULL)) != 0)
- break;
- } else {
- flag = (md->sc.data[ms[i].cond2]!=NULL);
+ int cast_cond = ms[skill_idx].cond1;
+ int cond_data = ms[skill_idx].cond2;
+ int flag = 0;
+ struct block_list *fbl = NULL; // Friend bl, which can either be a BL_PC or BL_MOB depending on the situation. [Skotlex]
+
+ if (cast_cond == event) {
+ flag = 1; // Trigger skill.
+ } else if (cast_cond == MSC_SKILLUSED) {
+ flag = ((event & 0xFFFF) == MSC_SKILLUSED && ((event >> 16) == cond_data || cond_data == 0));
+ } else if (event == -1) {
+ // Avoid entering on defined events to avoid "hyper-active skill use" due to the overflow of calls to this function in battle.
+ switch (cast_cond) {
+ case MSC_ALWAYS:
+ flag = 1;
+ break;
+ case MSC_MYHPLTMAXRATE: // HP <= x%
+ flag = get_percentage(md->status.hp, md->status.max_hp);
+ flag = (flag <= cond_data);
+ break;
+ case MSC_MYHPINRATE: // HP >= x% && HP <= y%
+ flag = get_percentage(md->status.hp, md->status.max_hp);
+ flag = (flag >= cond_data && flag <= ms[skill_idx].val[0]);
+ break;
+ case MSC_MYSTATUSON: // Status change x is active.
+ case MSC_MYSTATUSOFF: // Status change x is inactive.
+ if (cond_data == -1) { // Check for any of the common status alignments.
+ for (int j = SC_COMMON_MIN; j <= SC_COMMON_MAX; j++) {
+ if ((flag = (md->sc.data[j] != NULL)) != 0)
+ break;
}
- flag ^= (ms[i].cond1 == MSC_MYSTATUSOFF); break;
- case MSC_FRIENDHPLTMAXRATE: // friend HP < maxhp%
- flag = ((fbl = mob->getfriendhprate(md, 0, ms[i].cond2)) != NULL); break;
- case MSC_FRIENDHPINRATE:
- flag = ((fbl = mob->getfriendhprate(md, ms[i].cond2, ms[i].val[0])) != NULL); break;
- case MSC_FRIENDSTATUSON: // friend status[num] on
- case MSC_FRIENDSTATUSOFF: // friend status[num] off
- flag = ((fmd = mob->getfriendstatus(md, ms[i].cond1, ms[i].cond2)) != NULL); break;
- case MSC_SLAVELT: // slave < num
- flag = (mob->countslave(&md->bl) < c2 ); break;
- case MSC_ATTACKPCGT: // attack pc > num
- flag = (unit->counttargeted(&md->bl) > c2); break;
- case MSC_SLAVELE: // slave <= num
- flag = (mob->countslave(&md->bl) <= c2 ); break;
- case MSC_ATTACKPCGE: // attack pc >= num
- flag = (unit->counttargeted(&md->bl) >= c2); break;
- case MSC_AFTERSKILL:
- flag = (md->ud.skill_id == c2); break;
- case MSC_RUDEATTACKED:
- flag = (md->state.attacked_count >= RUDE_ATTACKED_COUNT);
- if (flag) md->state.attacked_count = 0; //Rude attacked count should be reset after the skill condition is met. Thanks to Komurka [Skotlex]
- break;
- case MSC_MASTERHPLTMAXRATE:
- flag = ((fbl = mob->getmasterhpltmaxrate(md, ms[i].cond2)) != NULL); break;
- case MSC_MASTERATTACKED:
- flag = (md->master_id > 0 && (fbl=map->id2bl(md->master_id)) != NULL && unit->counttargeted(fbl) > 0);
- break;
- case MSC_ALCHEMIST:
- flag = (md->state.alchemist);
- break;
+ } else {
+ flag = (md->sc.data[cond_data] != NULL);
+ }
+
+ flag ^= (cast_cond == MSC_MYSTATUSOFF);
+ break;
+ case MSC_FRIENDHPLTMAXRATE: // FriendHP <= x%
+ flag = ((fbl = mob->getfriendhprate(md, 0, cond_data)) != NULL);
+ break;
+ case MSC_FRIENDHPINRATE: // FriendHP >= x% && FriendHP <= y%
+ flag = ((fbl = mob->getfriendhprate(md, cond_data, ms[skill_idx].val[0])) != NULL);
+ break;
+ case MSC_FRIENDSTATUSON: // Friend's status change x is active.
+ case MSC_FRIENDSTATUSOFF: // Friend's status change x is inactive.
+ flag = ((fbl = mob->getfriendstatus(md, cast_cond, cond_data)) != NULL);
+ break;
+ case MSC_SLAVELT: // Monster has less than x active slaves.
+ flag = (mob->countslave(&md->bl) < cond_data);
+ break;
+ case MSC_ATTACKPCGT: // Monster is attacked by more than x units.
+ flag = (unit->counttargeted(&md->bl) > cond_data);
+ break;
+ case MSC_SLAVELE: // Monster has x or less active slaves.
+ flag = (mob->countslave(&md->bl) <= cond_data);
+ break;
+ case MSC_ATTACKPCGE: // Monster is attacked by x or more units.
+ flag = (unit->counttargeted(&md->bl) >= cond_data);
+ break;
+ case MSC_AFTERSKILL: // Monster used skill x, or any skill if x is 0.
+ flag = (md->ud.skill_id == cond_data || cond_data == 0);
+ break;
+ case MSC_RUDEATTACKED: // Monster was rude attacked RUDE_ATTACKED_COUNT or more times.
+ flag = (md->state.attacked_count >= RUDE_ATTACKED_COUNT);
+
+ // Rude attacked count should be reset after the skill condition is met. Thanks to Komurka [Skotlex]
+ if (flag)
+ md->state.attacked_count = 0;
+
+ break;
+ case MSC_MASTERHPLTMAXRATE: // MasterHP < x%
+ flag = ((fbl = mob->getmasterhpltmaxrate(md, cond_data)) != NULL);
+ break;
+ case MSC_MASTERATTACKED: // Monster's master is under attack.
+ flag = (md->master_id > 0 && (fbl = map->id2bl(md->master_id)) != NULL);
+ flag = (fbl != NULL && unit->counttargeted(fbl) > 0);
+ break;
+ case MSC_ALCHEMIST: // Monster was summoned by an Alchemist.
+ flag = (md->state.alchemist != 0);
+ break;
}
}
- if (!flag)
- continue; //Skill requisite failed to be fulfilled.
+ if (flag == 0) // Skill cast condition not fulfilled.
+ continue;
+
+ // Execute skill.
+ if (skill->get_casttype(ms[skill_idx].skill_id) == CAST_GROUND) { // Ground skill.
+ int target_type = ms[skill_idx].target;
+ int skill_range = skill->get_range2(&md->bl, ms[skill_idx].skill_id, ms[skill_idx].skill_lv);
+ struct block_list *bl;
- //Execute skill
- if (skill->get_casttype(ms[i].skill_id) == CAST_GROUND) {//Ground skill.
- short x, y;
- switch (ms[i].target) {
- case MST_RANDOM: //Pick a random enemy within skill range.
- bl = battle->get_enemy(&md->bl, DEFAULT_ENEMY_TYPE(md),
- skill->get_range2(&md->bl, ms[i].skill_id, ms[i].skill_lv));
- break;
- case MST_TARGET:
- case MST_AROUND5:
- case MST_AROUND6:
- case MST_AROUND7:
- case MST_AROUND8:
- bl = map->id2bl(md->target_id);
- break;
- case MST_MASTER:
- bl = &md->bl;
- if (md->master_id)
- bl = map->id2bl(md->master_id);
- if (bl) //Otherwise, fall through.
- break;
- FALLTHROUGH
- case MST_FRIEND:
- bl = fbl?fbl:(fmd?&fmd->bl:&md->bl);
- break;
- default:
- bl = &md->bl;
+ switch (target_type) {
+ case MST_RANDOM: // Pick a random enemy within skill range. Skill center is monster position.
+ bl = battle->get_enemy(&md->bl, DEFAULT_ENEMY_TYPE(md), skill_range);
+ break;
+ case MST_TARGET: // Monster's current target is within skill range. Skill center is monster position.
+ case MST_AROUND5: // Monster's current target is within skill range. Skill center is a random cell within a range of 1.
+ case MST_AROUND6: // Monster's current target is within skill range. Skill center is a random cell within a range of 2.
+ case MST_AROUND7: // Monster's current target is within skill range. Skill center is a random cell within a range of 3.
+ case MST_AROUND8: // Monster's current target is within skill range. Skill center is a random cell within a range of 4.
+ bl = map->id2bl(md->target_id);
+ break;
+ case MST_MASTER: // Monster's master is within skill range. Skill center is monster position.
+ // If monster has no master, use the monster as target,
+ bl = (md->master_id != 0) ? map->id2bl(md->master_id) : &md->bl;
+
+ if (bl != NULL)
break;
+
+ // If monster has a master but master wasn't found, try a friend.
+ FALLTHROUGH
+ case MST_FRIEND: // Monster's friend is within skill range. Skill center is monster position.
+ bl = (fbl != NULL) ? fbl : &md->bl;
+ break;
+ default: // Monster is within skill range. Skill center is monster position.
+ bl = &md->bl;
+ break;
}
- if (!bl) continue;
-
- x = bl->x;
- y = bl->y;
- // Look for an area to cast the spell around...
- if (ms[i].target >= MST_AROUND1 || ms[i].target >= MST_AROUND5) {
- j = ms[i].target >= MST_AROUND1?
- (ms[i].target-MST_AROUND1) +1:
- (ms[i].target-MST_AROUND5) +1;
- map->search_freecell(&md->bl, md->bl.m, &x, &y, j, j, 3);
+
+ if (bl == NULL) // No target found.
+ continue;
+
+ short x = bl->x;
+ short y = bl->y;
+
+ // Find a target cell.
+ if (target_type >= MST_AROUND5 && target_type <= MST_AROUND) {
+ int range = target_type - ((target_type >= MST_AROUND1) ? MST_AROUND1 : MST_AROUND5) + 1;
+ map->search_freecell(&md->bl, md->bl.m, &x, &y, range, range, 3);
}
- md->skill_idx = i;
+
+ md->skill_idx = skill_idx;
map->freeblock_lock();
- if( !battle->check_range(&md->bl,bl,skill->get_range2(&md->bl, ms[i].skill_id,ms[i].skill_lv))
- || !unit->skilluse_pos2(&md->bl, x, y,ms[i].skill_id, ms[i].skill_lv,ms[i].casttime, ms[i].cancel)
- ) {
+
+ uint16 sk_id = ms[skill_idx].skill_id;
+ uint16 sk_lv = ms[skill_idx].skill_lv;
+ int casttime = ms[skill_idx].casttime;
+ short cancel = ms[skill_idx].cancel;
+
+ if (!battle->check_range(&md->bl, bl, skill_range)
+ || unit->skilluse_pos2(&md->bl, x, y, sk_id, sk_lv, casttime, cancel) == 0) {
map->freeblock_unlock();
continue;
}
- } else {
- //Targeted skill
- switch (ms[i].target) {
- case MST_RANDOM: //Pick a random enemy within skill range.
- bl = battle->get_enemy(&md->bl, DEFAULT_ENEMY_TYPE(md),
- skill->get_range2(&md->bl, ms[i].skill_id, ms[i].skill_lv));
- break;
- case MST_TARGET:
- bl = map->id2bl(md->target_id);
- break;
- case MST_MASTER:
- bl = &md->bl;
- if (md->master_id)
- bl = map->id2bl(md->master_id);
- if (bl) //Otherwise, fall through.
- break;
- FALLTHROUGH
- case MST_FRIEND:
- if (fbl) {
- bl = fbl;
- break;
- } else if (fmd) {
- bl = &fmd->bl;
- break;
- } // else fall through
- FALLTHROUGH
- default:
- bl = &md->bl;
+ } else { // Targeted skill.
+ int skill_range = skill->get_range2(&md->bl, ms[skill_idx].skill_id, ms[skill_idx].skill_lv);
+ struct block_list *bl;
+
+ switch (ms[skill_idx].target) {
+ case MST_RANDOM: // Pick a random enemy within skill range.
+ bl = battle->get_enemy(&md->bl, DEFAULT_ENEMY_TYPE(md), skill_range);
+ break;
+ case MST_TARGET: // Monster's current target is within skill range.
+ bl = map->id2bl(md->target_id);
+ break;
+ case MST_MASTER: // Monster's master is within skill range.
+ // If monster has no master, use the monster as target,
+ bl = (md->master_id != 0) ? map->id2bl(md->master_id) : &md->bl;
+
+ if (bl != NULL)
break;
+
+ // If monster has a master but master wasn't found, try a friend.
+ FALLTHROUGH
+ case MST_FRIEND: // Monster's friend is within skill range.
+ bl = (fbl != NULL) ? fbl : &md->bl;
+ break;
+ default: // Monster is within skill range.
+ bl = &md->bl;
+ break;
}
- if (!bl) continue;
- md->skill_idx = i;
+ if (bl == NULL) // No target found.
+ continue;
+
+ md->skill_idx = skill_idx;
map->freeblock_lock();
- if( !battle->check_range(&md->bl,bl,skill->get_range2(&md->bl, ms[i].skill_id,ms[i].skill_lv))
- || !unit->skilluse_id2(&md->bl, bl->id,ms[i].skill_id, ms[i].skill_lv,ms[i].casttime, ms[i].cancel)
- ) {
+
+ uint16 sk_id = ms[skill_idx].skill_id;
+ uint16 sk_lv = ms[skill_idx].skill_lv;
+ int casttime = ms[skill_idx].casttime;
+ short cancel = ms[skill_idx].cancel;
+
+ if (!battle->check_range(&md->bl, bl, skill_range)
+ || unit->skilluse_id2(&md->bl, bl->id, sk_id, sk_lv, casttime, cancel) == 0) {
map->freeblock_unlock();
continue;
}
}
- //Skill used. Post-setups...
- if ( ms[ i ].msg_id ){ //Display color message [SnakeDrak]
- struct mob_chat *mc = mob->chat(ms[i].msg_id);
+
+ // Skill used.
+ if (ms[skill_idx].msg_id != 0) { // Display color message. [SnakeDrak]
char temp[CHAT_SIZE_MAX];
char name[NAME_LENGTH];
- snprintf(name, sizeof name,"%s", md->name);
- strtok(name, "#"); // discard extra name identifier if present [Daegaladh]
- safesnprintf(temp, sizeof temp,"%s : %s", name, mc->msg);
+ struct mob_chat *mc = mob->chat(ms[skill_idx].msg_id);
+
+ snprintf(name, sizeof(name), "%s", md->name);
+ strtok(name, "#"); // Discard extra name identifier if present. [Daegaladh]
+ safesnprintf(temp, sizeof(temp), "%s : %s", name, mc->msg);
clif->messagecolor(&md->bl, mc->color, temp);
}
- if(!(battle_config.mob_ai&0x200)) { //pass on delay to same skill.
- for (j = 0; j < md->db->maxskill; j++)
- if (md->db->skill[j].skill_id == ms[i].skill_id)
- md->skilldelay[j]=tick;
- } else
- md->skilldelay[i]=tick;
+
+ if ((battle_config.mob_ai & 0x200) == 0) { // Pass on delay to same skill.
+ for (int j = 0; j < md->db->maxskill; j++) {
+ if (md->db->skill[j].skill_id == ms[skill_idx].skill_id)
+ md->skilldelay[j] = tick;
+ }
+ } else {
+ md->skilldelay[skill_idx] = tick;
+ }
+
map->freeblock_unlock();
- return 1;
+ return 0;
}
- //No skill was used.
+
+ // No skill was used.
md->skill_idx = -1;
- return 0;
+ return 1;
}
+
/*==========================================
* Skill use event processing
*------------------------------------------*/
@@ -3663,7 +3740,7 @@ static int mobskill_event(struct mob_data *md, struct block_list *src, int64 tic
nullpo_ret(md);
nullpo_ret(src);
if(md->bl.prev == NULL || md->status.hp <= 0)
- return 0;
+ return 1;
if (md->special_state.ai == AI_SPHERE) {//LOne WOlf explained that ANYONE can trigger the marine countdown skill. [Skotlex]
md->state.alchemist = 1;
@@ -3682,8 +3759,10 @@ static int mobskill_event(struct mob_data *md, struct block_list *src, int64 tic
res = mob->skill_use(md, tick, MSC_CLOSEDATTACKED);
else if (flag&BF_LONG && !(flag&BF_MAGIC)) //Long-attacked should not include magic.
res = mob->skill_use(md, tick, MSC_LONGRANGEATTACKED);
+ else if ((flag & BF_MAGIC) != 0)
+ res = mob->skill_use(md, tick, MSC_MAGICATTACKED);
- if (!res)
+ if (res != 0)
//Restore previous target only if skill condition failed to trigger. [Skotlex]
md->target_id = target_id;
//Otherwise check if the target is an enemy, and unlock if needed.
@@ -3793,7 +3872,7 @@ static int mob_clone_spawn(struct map_session_data *sd, int16 m, int16 x, int16
continue;
/// Normal aggressive mob. Disable skills that cannot help fighting against players. (Those with flags UF_NOMOB and UF_NOPC are specific to always aid players!) [Skotlex]
- if (flag == 0 && skill->get_unit_id(skill_id, 0) != 0 &&
+ if (flag == 0 && skill->get_unit_id(skill_id, sd->status.skill[idx].lv, 0) != 0 &&
(skill->get_unit_flag(skill_id) & (UF_NOMOB | UF_NOPC)) > 0)
continue;
@@ -3826,7 +3905,7 @@ static int mob_clone_spawn(struct map_session_data *sd, int16 m, int16 x, int16
mob_skills[i].state = MSS_IDLE;
mob_skills[i].target = MST_AROUND2;
mob_skills[i].delay = 60000;
- } else if (skill->get_unit_target(skill_id) == BCT_ENEMY) { /// Target Enemy.
+ } else if (skill->get_unit_target(skill_id, sd->status.skill[idx].lv) == BCT_ENEMY) { /// Target Enemy.
mob_skills[i].state = MSS_ANYTARGET;
mob_skills[i].target = MST_TARGET;
mob_skills[i].cond1 = MSC_ALWAYS;
@@ -3907,8 +3986,8 @@ static int mob_clone_spawn(struct map_session_data *sd, int16 m, int16 x, int16
}
}
- mob_skills[i].permillage *= battle_config.mob_skill_rate / 100;
- mob_skills[i].delay *= battle_config.mob_skill_delay / 100;
+ mob_skills[i].permillage = mob_skills[i].permillage * battle_config.mob_skill_rate / 100;
+ mob_skills[i].delay = mob_skills[i].delay * battle_config.mob_skill_delay / 100;
db->maxskill = ++i;
}
@@ -5012,12 +5091,10 @@ static int mob_read_db_sub(struct config_setting_t *mobt, int n, const char *sou
md.status.def_ele = i32;
md.status.ele_lv = value;
} else if (!inherit) {
- ShowWarning("mob_read_db_sub: Missing element for monster ID %d.\n", md.mob_id);
md.status.def_ele = ELE_NEUTRAL;
md.status.ele_lv = 1;
}
} else if (!inherit) {
- ShowWarning("mob_read_db_sub: Missing element for monster ID %d.\n", md.mob_id);
md.status.def_ele = ELE_NEUTRAL;
md.status.ele_lv = 1;
}
@@ -5491,115 +5568,134 @@ static bool mob_skill_db_libconfig_sub(struct config_setting_t *it, int n)
return true;
}
+/**
+ * Reads a single monster skill from DB.
+ *
+ * @param it The libconfig settings block, which contains the skill data.
+ * @param n The skill data block's index within the parent monster block.
+ * @param mob_id The monster's ID.
+ * @return true on success, false on failure.
+ *
+ **/
static bool mob_skill_db_libconfig_sub_skill(struct config_setting_t *it, int n, int mob_id)
{
- int i, j, idx = 0;
- int i32;
- int skill_id = 0;
- int skill_idx = 0;
- bool clearskills = false;
- const char *name = config_setting_name(it);
- struct mob_skill *ms, gms;
-
nullpo_retr(false, it);
Assert_retr(false, mob_id <= 0 || mob->db(mob_id) != mob->dummy);
- if (!(skill_id = skill->name2id(name))) {
- ShowWarning("mob_skill_db_libconfig_sub_skill: Non existant skill id %d in monster %d, skipping.\n", skill_id, mob_id);
+ int skill_id = 0;
+ const char *name = config_setting_name(it);
+ const char *mob_str = (mob_id < 0) ? "global ID" : "monster";
+
+ if ((skill_id = skill->name2id(name)) == 0) {
+ ShowWarning("%s: Non existant skill %d in %s %d, skipping.\n", __func__, skill_id, mob_str, mob_id);
return false;
}
+ const char *skill_name = skill->get_name(skill_id);
+ bool clearskills = false;
+
// If ClearSkills flag is enabled clear all the previous skills.
- if (libconfig->setting_lookup_bool_real(it, "ClearSkills", &clearskills) && clearskills) {
- if (mob_id < 0) // Clearing skills globaly is not supported
+ if (libconfig->setting_lookup_bool_real(it, "ClearSkills", &clearskills) == CONFIG_TRUE && clearskills) {
+ if (mob_id < 0) {
+ ShowError("%s: Global skill clearing is not supported, skipping. (Global ID %d, skill %d (%s).)\n",
+ __func__, mob_id, skill_id, skill_name);
return false;
+ }
+
memset(mob->db_data[mob_id]->skill, 0, sizeof(struct mob_skill) * MAX_MOBSKILL);
mob->db_data[mob_id]->maxskill = 0;
return true;
}
- if (mob_id < 0) {
- // Prepare global skill. [Skotlex]
+ struct mob_skill *ms;
+
+ if (mob_id < 0) { // Prepare global skill. [Skotlex]
+ struct mob_skill gms;
memset(&gms, 0, sizeof (struct mob_skill));
ms = &gms;
} else {
+ int idx = 0;
+
ARR_FIND(0, MAX_MOBSKILL, idx, (ms = &mob->db_data[mob_id]->skill[idx])->skill_id == 0);
+
if (idx == MAX_MOBSKILL) {
- ShowError("mob_skill_db_libconfig_sub_skill: Too many skills for monster %d\n", mob_id);
+ ShowError("%s: Too many skills for monster %d, skipping.\n", __func__, mob_id);
return false;
}
+
+ mob->db_data[mob_id]->maxskill = idx + 1;
}
+
ms->skill_id = skill_id;
+ int i32 = MSS_ANY;
if (mob->lookup_const(it, "SkillState", &i32) && (i32 < MSS_ANY || i32 > MSS_ANYTARGET)) {
- ShowWarning("mob_skill_db_libconfig_sub_skill: Invalid skill state %d for skill id %d in monster %d, defaulting to MSS_ANY.\n", i32, skill_id, mob_id);
+ ShowWarning("%s: Invalid skill state %d for skill %d (%s) in %s %d, defaulting to MSS_ANY.\n",
+ __func__, i32, skill_id, skill_name, mob_str, mob_id);
i32 = MSS_ANY;
}
ms->state = i32;
- if (!libconfig->setting_lookup_int(it, "SkillLevel", &i32) || i32 <= 0)
- i32 = 1;
- ms->skill_lv = i32 > battle_config.mob_max_skilllvl ? battle_config.mob_max_skilllvl : i32; //we strip max skill level
+ int res = libconfig->setting_lookup_int(it, "SkillLevel", &i32);
+ ms->skill_lv = (res == CONFIG_FALSE) ? 1 : cap_value(i32, 1, battle_config.mob_max_skilllvl);
- //Apply battle_config modifiers to rate (permillage) and delay [Skotlex]
- if (libconfig->setting_lookup_int(it, "Rate", &i32))
- ms->permillage = i32;
+ res = libconfig->setting_lookup_int(it, "Rate", &i32);
+ ms->permillage = (res == CONFIG_FALSE) ? 1 : cap_value(i32, 1, 10000);
+ // Apply battle_config modifier to rate (permillage).
if (battle_config.mob_skill_rate != 100)
ms->permillage = ms->permillage * battle_config.mob_skill_rate / 100;
+
if (ms->permillage > 10000)
ms->permillage = 10000;
- else if (ms->permillage == 0 && battle_config.mob_skill_rate)
+ else if (ms->permillage == 0 && battle_config.mob_skill_rate != 0)
ms->permillage = 1;
- if (libconfig->setting_lookup_int(it, "CastTime", &i32) && i32 > 0)
- ms->casttime = i32;
+ res = libconfig->setting_lookup_int(it, "CastTime", &i32);
+ ms->casttime = (res == CONFIG_FALSE) ? 0 : cap_value(i32, 0, MOB_MAX_CASTTIME);
+
+ res = libconfig->setting_lookup_int(it, "Delay", &i32);
+ ms->delay = (res == CONFIG_FALSE) ? 0 : cap_value(i32, 0, MOB_MAX_DELAY);
- if (libconfig->setting_lookup_int(it, "Delay", &i32))
- ms->delay = i32;
+ // Apply battle_config modifier to delay.
if (battle_config.mob_skill_delay != 100)
ms->delay = ms->delay * battle_config.mob_skill_delay / 100;
- if (ms->delay < 0 || ms->delay > MOB_MAX_DELAY) //time overflow?
- ms->delay = MOB_MAX_DELAY;
- if (libconfig->setting_lookup_bool(it, "Cancelable", &i32))
- ms->cancel = (i32 == 0) ? 0 : 1;
+ ms->delay = min(ms->delay, MOB_MAX_DELAY);
+
+ res = libconfig->setting_lookup_bool(it, "Cancelable", &i32);
+ ms->cancel = (res == CONFIG_FALSE) ? 0 : cap_value(i32, 0, 1);
+ i32 = MST_TARGET;
if (mob->lookup_const(it, "SkillTarget", &i32) && (i32 < MST_TARGET || i32 > MST_AROUND)) {
- ShowWarning("mob_skill_db_libconfig_sub_skill: Invalid skill target %d for skill id %d in monster %d, defaulting to MST_TARGET.\n", i32, skill_id, mob_id);
- ms->target = MST_TARGET;
+ ShowWarning("%s: Invalid skill target %d for skill %d (%s) in %s %d, defaulting to MST_TARGET.\n",
+ __func__, i32, skill_id, skill_name, mob_str, mob_id);
+ i32 = MST_TARGET;
}
ms->target = i32;
- //Check that the target condition is right for the skill type. [Skotlex]
- skill_idx = skill->get_index(skill_id);
- if (skill->get_casttype2(skill_idx) == CAST_GROUND) {//Ground skill.
- if (ms->target > MST_AROUND) {
- ShowWarning("mob_skill_db_libconfig_sub_skill: Wrong mob skill target for ground skill %d (%s) for %s.\n",
- ms->skill_id, skill->dbs->db[skill_idx].name,
- mob_id < 0 ? "all mobs" : mob->db_data[mob_id]->sprite);
- ms->target = MST_TARGET;
- }
- } else if (ms->target > MST_MASTER) {
- ShowWarning("mob_skill_db_libconfig_sub_skill: Wrong mob skill target 'around' for non-ground skill %d (%s) for %s.\n",
- ms->skill_id, skill->dbs->db[skill_idx].name,
- mob_id < 0 ? "all mobs" : mob->db_data[mob_id]->sprite);
+ // Check the target condition for non-ground skills. (Ground skills can use every target.)
+ if (skill->get_casttype2(skill->get_index(skill_id)) != CAST_GROUND && ms->target > MST_MASTER) {
+ ShowWarning("%s: Wrong skill target %d for non-ground skill %d (%s) in %s %d, defaulting to MST_TARGET.\n",
+ __func__, ms->target, skill_id, skill_name, mob_str, mob_id);
ms->target = MST_TARGET;
}
- if (mob->lookup_const(it, "CastCondition", &i32) && (i32 < MSC_ALWAYS || i32 > MSC_SPAWN)) {
- ShowWarning("mob_skill_db_libconfig_sub_skill: Invalid skill condition %d for skill id %d in monster %d, defaulting to MSC_ALWAYS.\n", i32, skill_id, mob_id);
- ms->cond1 = MSC_ALWAYS;
+ i32 = MSC_ALWAYS;
+ if (mob->lookup_const(it, "CastCondition", &i32) && (i32 < MSC_ALWAYS || i32 > MSC_MAGICATTACKED)) {
+ ShowWarning("%s: Invalid skill condition %d for skill id %d (%s) in %s %d, defaulting to MSC_ALWAYS.\n",
+ __func__, i32, skill_id, skill_name, mob_str, mob_id);
+ i32 = MSC_ALWAYS;
}
ms->cond1 = i32;
- if (mob->lookup_const(it, "ConditionData", &i32))
- ms->cond2 = i32;
+ ms->cond2 = !mob->lookup_const(it, "ConditionData", &i32) ? 0 : cap_value(i32, SHRT_MIN, SHRT_MAX);
- for (i = 0; i < 5; i++) {
+ for (int i = 0; i < 5; i++) {
char valname[16];
sprintf(valname, "val%1d", i);
- if (libconfig->setting_lookup_int(it, valname, &i32))
+
+ if (libconfig->setting_lookup_int(it, valname, &i32) == CONFIG_TRUE)
ms->val[i] = i32;
}
@@ -5610,60 +5706,64 @@ static bool mob_skill_db_libconfig_sub_skill(struct config_setting_t *it, int n,
if (mob_id > 0 && (uint32)ms->val[1] == mob->db(mob_id)->status.mode) {
ms->val[1] = MD_NONE;
- ms->val[4] = 1; //request to return mode to normal.
+ ms->val[4] = 1; // Request to return mode to normal.
}
}
if (ms->skill_id == NPC_EMOTION_ON && mob_id > 0 && ms->val[1] != MD_NONE) {
- //Adds a mode to the mob.
- //Remove aggressive mode when the new mob type is passive.
- if (!(ms->val[1] & MD_AGGRESSIVE))
+ // Add a mode to the mob and remove aggressive mode if the new mode is passive.
+ if ((ms->val[1] & MD_AGGRESSIVE) == 0)
ms->val[3] |= MD_AGGRESSIVE;
- ms->val[2] |= (uint32)ms->val[1]; //Add the new mode.
- ms->val[1] = MD_NONE; //Do not "set" it.
+
+ ms->val[2] |= (uint32)ms->val[1]; // Add the new mode.
+ ms->val[1] = MD_NONE; // Do not "set" it.
}
- if (libconfig->setting_lookup_int(it, "Emotion", &i32))
- ms->emotion = i32;
- else
- ms->emotion = -1;
+ res = libconfig->setting_lookup_int(it, "Emotion", &i32);
+ ms->emotion = (res == CONFIG_FALSE) ? -1 : cap_value(i32, -1, SHRT_MAX);
- if (libconfig->setting_lookup_int(it, "ChatMsgID", &i32) && i32 > 0 && i32 <= MAX_MOB_CHAT) {
- if (mob->chat_db[i32] == NULL) {
- ShowWarning("mob_skill_db_libconfig_sub_skill: Invalid msg id %d for skill id %d in monster %d, ignoring.\n", i32, skill_id, mob_id);
+ if (libconfig->setting_lookup_int(it, "ChatMsgID", &i32) == CONFIG_TRUE) {
+ if (i32 <= 0 || i32 > MAX_MOB_CHAT || mob->chat_db[i32] == NULL) {
+ ShowWarning("%s: Invalid message ID %d for skill %d (%s) in %s %d, ignoring.\n",
+ __func__, i32, skill_id, skill_name, mob_str, mob_id);
} else {
ms->msg_id = i32;
}
}
- if (mob_id < 0) {
- // Set this skill to ALL mobs. [Skotlex]
- mob_id *= -1;
- for (i = 1; i < MAX_MOB_DB; i++) {
+ if (mob_id < 0) { // Global skill assignment.
+ mob_id = -mob_id;
+
+ for (int i = 1; i < MAX_MOB_DB; i++) {
if (mob->db_data[i] == NULL)
continue;
- if (mob->db_data[i]->status.mode & MD_BOSS) {
- if (!(mob_id & 2)) //Skill not for bosses
+
+ if ((mob->db_data[i]->status.mode & MD_BOSS) != 0) {
+ if ((mob_id & 2) == 0) // Skill not for boss monsters.
continue;
} else {
- if (!(mob_id & 1)) //Skill not for normal enemies.
+ if ((mob_id & 1) == 0) // Skill not for normal monsters.
continue;
}
- ARR_FIND(0, MAX_MOBSKILL, j, mob->db_data[i]->skill[j].skill_id == 0);
- if (j == MAX_MOBSKILL)
+
+ int idx;
+
+ ARR_FIND(0, MAX_MOBSKILL, idx, mob->db_data[i]->skill[idx].skill_id == 0);
+
+ if (idx == MAX_MOBSKILL) {
+ ShowError("%s: Too many skills for monster %d in global ID %d, skipping.\n",
+ __func__, i, -mob_id);
continue;
+ }
- memcpy(&mob->db_data[i]->skill[j], ms, sizeof(struct mob_skill));
- mob->db_data[i]->maxskill = j + 1;
+ memcpy(&mob->db_data[i]->skill[idx], ms, sizeof(struct mob_skill));
+ mob->db_data[i]->maxskill = idx + 1;
}
- } else { //Skill set on a single mob.
- mob->db_data[mob_id]->maxskill = idx + 1;
}
return true;
}
-
/*==========================================
* mob_skill_db.txt reading
*------------------------------------------*/
@@ -6059,7 +6159,7 @@ void mob_defaults(void)
mob->getmasterhpltmaxrate = mob_getmasterhpltmaxrate;
mob->getfriendstatus_sub = mob_getfriendstatus_sub;
mob->getfriendstatus = mob_getfriendstatus;
- mob->skill_use = mobskill_use;
+ mob->skill_use = mob_skill_use;
mob->skill_event = mobskill_event;
mob->is_clone = mob_is_clone;
mob->clone_spawn = mob_clone_spawn;
diff --git a/src/map/mob.h b/src/map/mob.h
index 8839809f2..59b288fcc 100644
--- a/src/map/mob.h
+++ b/src/map/mob.h
@@ -35,7 +35,7 @@ struct hplugin_data_store;
// Change this to increase the table size in your mob_db to accommodate a larger mob database.
// Be sure to note that IDs 4001 to 4048 are reserved for advanced/baby/expanded classes.
// Notice that the last 1000 entries are used for player clones, so always set this to desired value +1000
-#define MAX_MOB_DB 5000
+#define MAX_MOB_DB 22000
//The number of drops all mobs have and the max drop-slot that the steal skill will attempt to steal from.
#define MAX_MOB_DROP 10
@@ -321,6 +321,14 @@ enum {
MSC_MASTERATTACKED,
MSC_ALCHEMIST,
MSC_SPAWN,
+ MSC_MAGICATTACKED,
+};
+
+/** Special monster(-name) constants used to assign skills to a group of monsters. **/
+enum mob_group {
+ ALL_MOBS_NONBOSS = -1,
+ ALL_MOBS_BOSS = -2,
+ ALL_MOBS = -3,
};
/**
@@ -566,7 +574,7 @@ struct mob_interface {
struct block_list* (*getfriendhprate) (struct mob_data *md, int min_rate, int max_rate);
struct block_list* (*getmasterhpltmaxrate) (struct mob_data *md, int rate);
int (*getfriendstatus_sub) (struct block_list *bl, va_list ap);
- struct mob_data* (*getfriendstatus) (struct mob_data *md, int cond1, int cond2);
+ struct block_list *(*getfriendstatus) (struct mob_data *md, int cond1, int cond2);
int (*skill_use) (struct mob_data *md, int64 tick, int event);
int (*skill_event) (struct mob_data *md, struct block_list *src, int64 tick, int flag);
int (*is_clone) (int class_);
diff --git a/src/map/npc.c b/src/map/npc.c
index 2ac99948b..6ba088a80 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -389,7 +389,10 @@ static int npc_event_export(struct npc_data *nd, int i)
Assert_ret(i >= 0 && i < nd->u.scr.label_list_num);
lname = nd->u.scr.label_list[i].name;
pos = nd->u.scr.label_list[i].pos;
- if ((lname[0] == 'O' || lname[0] == 'o') && (lname[1] == 'N' || lname[1] == 'n')) {
+
+ if ((nd->u.scr.label_list[i].flags & LABEL_IS_EXTERN) != 0
+ && ((nd->u.scr.label_list[i].flags & LABEL_IS_USERFUNC) == 0
+ || script->config.functions_as_events)) {
struct event_data *ev;
struct linkdb_node **label_linkdb = NULL;
char buf[EVENT_NAME_LENGTH];
@@ -1799,6 +1802,7 @@ static void npc_expanded_barter_fromsql(void)
) {
SqlStmt_ShowDebug(stmt);
SQL->StmtFree(stmt);
+ StrBuf->Destroy(&buf);
return;
}
@@ -3053,11 +3057,11 @@ static int npc_unload(struct npc_data *nd, bool single, bool unload_mobs)
aFree(nd->u.shop.shop_item); /// src check for duplicate shops. [Orcao]
} else if (nd->subtype == SCRIPT) {
char evname[EVENT_NAME_LENGTH];
-
+
snprintf(evname, ARRAYLENGTH(evname), "%s::OnNPCUnload", nd->exname);
struct event_data *ev = strdb_get(npc->ev_db, evname);
-
+
if (ev != NULL)
script->run_npc(nd->u.scr.script, ev->pos, 0, nd->bl.id); /// Run OnNPCUnload.
@@ -3664,6 +3668,7 @@ static void npc_convertlabel_db(struct npc_label_list *label_list, const char *f
for( i = 0; i < script->label_count; i++ ) {
const char* lname = script->get_str(script->labels[i].key);
int lpos = script->labels[i].pos;
+ enum script_label_flags flags = script->labels[i].flags;
struct npc_label_list* label;
const char *p;
size_t len;
@@ -3685,6 +3690,7 @@ static void npc_convertlabel_db(struct npc_label_list *label_list, const char *f
safestrncpy(label->name, lname, sizeof(label->name));
label->pos = lpos;
+ label->flags = flags;
}
}
@@ -5098,7 +5104,7 @@ static const char *npc_parse_mapflag(const char *w1, const char *w2, const char
else if (modifier[0] == '\0') {
ShowWarning("npc_parse_mapflag: Missing 5th param for 'adjust_unit_duration' flag! removing flag from %s in file '%s', line '%d'.\n", map->list[m].name, filepath, strline(buffer,start-buffer));
if (retval) *retval = EXIT_FAILURE;
- } else if( !( skill_id = skill->name2id(skill_name) ) || !skill->get_unit_id( skill->name2id(skill_name), 0) ) {
+ } else if ((skill_id = skill->name2id(skill_name)) == 0 || skill->get_unit_id(skill->name2id(skill_name), 1, 0) == 0) {
ShowWarning("npc_parse_mapflag: Unknown skill (%s) for 'adjust_unit_duration' flag! removing flag from %s in file '%s', line '%d'.\n",skill_name, map->list[m].name, filepath, strline(buffer,start-buffer));
if (retval) *retval = EXIT_FAILURE;
} else if ( atoi(modifier) < 1 || atoi(modifier) > USHRT_MAX ) {
@@ -5605,7 +5611,7 @@ static int npc_reload(void)
npc->npc_last_npd = NULL;
npc->npc_last_path = NULL;
npc->npc_last_ref = NULL;
-
+
const int npc_new_min = npc->npc_id;
struct s_mapiterator *iter = mapit_geteachiddb();
@@ -5722,8 +5728,10 @@ static bool npc_unloadfile(const char *filepath, bool unload_mobs)
dbi_destroy(iter);
- if (found) /// Refresh event cache.
+ if (found) { /// Refresh event cache.
+ npc->motd = npc->name2id("HerculesMOTD");
npc->read_event_script();
+ }
return found;
}
diff --git a/src/map/npc.h b/src/map/npc.h
index 1585a2bc8..16d7a984b 100644
--- a/src/map/npc.h
+++ b/src/map/npc.h
@@ -56,9 +56,15 @@ enum npc_shop_types {
struct npc_timerevent_list {
int timer,pos;
};
+
+/** list of labels within a NPC (used internally by the label db) */
struct npc_label_list {
+ /** label name */
char name[NAME_LENGTH];
+ /** start point within the script */
int pos;
+ /** optional label flags */
+ enum script_label_flags flags;
};
struct npc_barter_currency {
diff --git a/src/map/npc_chat.c b/src/map/npc_chat.c
index 0ca84cff4..0df323e96 100644
--- a/src/map/npc_chat.c
+++ b/src/map/npc_chat.c
@@ -394,7 +394,8 @@ static int npc_chat_sub(struct block_list *bl, va_list ap)
// save out the matched strings
for (i = 0; i < r; i++)
{
- char var[15], val[255];
+ char var[SCRIPT_VARNAME_LENGTH + 1];
+ char val[SCRIPT_STRING_VAR_LENGTH + 1];
snprintf(var, sizeof(var), "$@p%i$", i);
libpcre->copy_substring(msg, offsets, r, i, val, sizeof(val));
script->set_var(sd, var, val);
diff --git a/src/map/packets.h b/src/map/packets.h
index 1e6dc71bc..e30acbdf7 100644
--- a/src/map/packets.h
+++ b/src/map/packets.h
@@ -1824,6 +1824,11 @@ packet(0x96e,clif->ackmergeitems);
packet(0x0aa4, clif->pRefineryUIClose);
#endif
+#if PACKETVER_MAIN_NUM >= 20170111 || PACKETVER_RE_NUM >= 20170111 || defined(PACKETVER_ZERO)
+ packet(0x0ab5, clif->pLapineUpgrade_close);
+ packet(0x0ab6, clif->pLapineUpgrade_makeItem);
+#endif
+
// 2017-02-28aRagexeRE
#if PACKETVER >= 20170228
// new packets
diff --git a/src/map/packets_keys_main.h b/src/map/packets_keys_main.h
index 5fddf9eaf..5a2a1f846 100644
--- a/src/map/packets_keys_main.h
+++ b/src/map/packets_keys_main.h
@@ -37,7 +37,7 @@
packetKeys(0x49357d72,0x22c370a1,0x5f836591);
#endif
-// 2010-11-23aRagexeRE, 2010-11-24aRagexeRE, 2010-11-24bRagexeRE, 2010-11-25aRagexeRE, 2010-11-26aRagexeRE, 2010-11-30aRagexeRE, 2010-12-07aRagexeRE, 2010-12-14aRagexeRE, 2010-12-21aRagexeRE, 2010-12-23aRagexeRE, 2010-12-28aRagexeRE, 2011-01-04aRagexeRE, 2011-01-05aRagexeRE, 2011-01-11aRagexeRE, 2011-01-18aRagexeRE, 2011-01-25aRagexeRE, 2011-01-26aRagexeRE, 2011-01-26bRagexeRE, 2011-01-31aRagexeRE, 2011-01-31bRagexeRE, 2011-01-31cRagexeRE, 2011-02-08aRagexeRE, 2011-02-15aRagexeRE, 2011-02-22aRagexeRE, 2011-02-23aRagexeRE, 2011-02-23bRagexeRE, 2011-02-24aRagexeRE, 2011-02-25aRagexeRE, 2011-02-28aRagexeRE, 2011-03-08aRagexeRE, 2011-03-09aRagexeRE, 2011-03-09bRagexeRE, 2011-03-09cRagexeRE, 2011-03-09dRagexeRE, 2011-03-15aRagexeRE, 2011-03-22aRagexeRE, 2011-03-29aRagexeRE, 2011-03-30aRagexeRE, 2011-03-30cRagexeRE, 2011-04-05aRagexeRE, 2011-04-12aRagexeRE, 2011-04-19aRagexeRE, 2011-04-20aRagexeRE, 2011-04-26aRagexeRE, 2011-04-27aRagexeRE, 2011-05-03aRagexeRE, 2011-05-11aRagexeRE, 2011-05-17bRagexeRE, 2011-05-24aRagexeRE, 2011-05-26aRagexeRE, 2011-05-31aRagexeRE, 2011-06-07aRagexeRE, 2011-06-08aRagexeRE, 2011-06-08bRagexeRE, 2011-06-08cRagexeRE, 2011-06-09aRagexeRE, 2011-06-14bRagexeRE, 2011-06-22aRagexeRE, 2011-06-28aRagexeRE, 2011-07-06aRagexeRE, 2011-07-13aRagexeRE, 2011-07-13bRagexeRE, 2011-07-13cRagexeRE, 2011-07-19aRagexeRE, 2011-07-26aRagexeRE, 2011-08-03aRagexeRE, 2011-08-03bRagexeRE, 2011-08-10aRagexeRE, 2013-12-23aRagexeRE, 2014-05-08aRagexe, 2014-05-08aRagexeRE, 2014-06-11eRagexe, 2015-02-25hRagexe, 2018-03-15aRagexe, 2018-03-21aRagexe, 2018-03-21aRagexeRE, 2018-03-28bRagexe, 2018-03-28bRagexeRE, 2018-04-04bRagexe, 2018-04-04cRagexeRE, 2018-04-18aRagexe, 2018-04-18bRagexeRE, 2018-04-25cRagexe, 2018-04-25cRagexeRE, 2018-05-02bRagexe, 2018-05-02bRagexeRE, 2018-05-02dRagexeRE, 2018-05-09aRagexe, 2018-05-16cRagexe, 2018-05-16cRagexeRE, 2018-05-23aRagexe, 2018-05-23aRagexeRE, 2018-05-30aRagexe, 2018-05-30bRagexeRE, 2018-05-30cRagexeRE, 2018-06-05bRagexe, 2018-06-05bRagexeRE, 2018-06-12aRagexeRE, 2018-06-12bRagexeRE, 2018-06-20cRagexe, 2018-06-20dRagexeRE, 2018-06-20eRagexe, 2018-06-20eRagexeRE, 2018-06-21aRagexe, 2018-06-21aRagexeRE, 2018-07-04aRagexe, 2018-07-04aRagexeRE, 2018-07-11aRagexeRE, 2018-07-18bRagexe, 2018-07-18bRagexeRE, 2018-07-18bRagexeRE1, 2018-07-18cRagexe, 2018-07-18cRagexeRE, 2018-08-01cRagexe, 2018-08-01cRagexeRE, 2018-08-08bRagexe, 2018-08-08bRagexeRE, 2018-08-22cRagexe, 2018-08-22cRagexeRE, 2018-08-29aRagexe, 2018-08-29aRagexeRE, 2018-08-29bRagexeRE, 2018-08-31aRagexe, 2018-09-12dRagexe, 2018-09-12dRagexeRE, 2018-09-19aRagexe, 2018-09-19aRagexeRE, 2018-10-02aRagexe, 2018-10-02aRagexeRE, 2018-10-02bRagexe, 2018-10-02bRagexeRE, 2018-10-17_02aRagexe, 2018-10-17_02aRagexeRE, 2018-10-17_03aRagexe, 2018-10-17_03aRagexeRE, 2018-10-17bRagexe, 2018-10-17bRagexeRE, 2018-10-24bRagexe, 2018-10-31aRagexe, 2018-10-31bRagexe, 2018-10-31cRagexeRE, 2018-11-07aRagexe, 2018-11-07aRagexeRE, 2018-11-14cRagexe, 2018-11-14cRagexeRE, 2018-11-14dRagexe, 2018-11-14dRagexeRE, 2018-11-21bRagexe, 2018-11-21cRagexeRE, 2018-11-28aRagexe, 2018-11-28aRagexeRE, 2018-11-28bRagexe, 2018-11-28cRagexe, 2018-12-05aRagexe, 2018-12-05bRagexeRE, 2018-12-12aRagexe, 2018-12-12aRagexeRE, 2018-12-12bRagexe, 2018-12-12bRagexeRE, 2018-12-19bRagexe, 2018-12-19bRagexeRE, 2018-12-26aRagexe, 2018-12-26aRagexeRE, 2019-01-09aRagexe, 2019-01-09bRagexeRE, 2019-01-16bRagexe, 2019-01-16bRagexeRE, 2019-01-16cRagexe, 2019-01-16cRagexeRE, 2019-01-23dRagexe, 2019-01-23dRagexeRE, 2019-02-13IRagexeRE, 2019-02-13bRagexe, 2019-02-13eRagexe, 2019-02-20aRagexeRE, 2019-02-27aRagexe, 2019-02-27bRagexeRE, 2019-02-28aRagexe, 2019-02-28aRagexeRE, 2019-03-06bRagexe, 2019-03-06bRagexeRE, 2019-03-06cRagexe, 2019-03-06cRagexeRE, 2019-03-13aRagexe, 2019-03-20aRagexe, 2019-03-20aRagexeRE, 2019-03-22aRagexe, 2019-03-22aRagexeRE, 2019-03-27bRagexe, 2019-03-27bRagexeRE, 2019-04-03aRagexe, 2019-04-03bRagexeRE, 2019-04-03cRagexeRE, 2019-04-17aRagexe, 2019-04-17cRagexeRE, 2019-04-18aRagexe, 2019-04-18aRagexeRE, 2019-05-08cRagexe, 2019-05-08dRagexeRE, 2019-05-08eRagexeRE, 2019-05-22bRagexe, 2019-05-22bRagexeRE, 2019-05-22cRagexe, 2019-05-22cRagexeRE, 2019-05-23aRagexe, 2019-05-29aRagexe, 2019-05-29bRagexeRE, 2019-05-29cRagexe, 2019-05-29cRagexeRE, 2019-05-30aRagexe, 2019-05-30aRagexeRE, 2019-06-05JRagexeRE, 2019-06-05KRagexe, 2019-06-05LRagexeRE, 2019-06-05fRagexe, 2019-06-05hRagexeRE, 2019-06-19bRagexe, 2019-06-19cRagexeRE, 2019-06-19eRagexe, 2019-06-19hRagexe, 2019-06-26bRagexeRE, 2019-07-03aRagexe, 2019-07-03bRagexeRE, 2019-07-17aRagexe, 2019-07-17cRagexeRE, 2019-07-17dRagexe, 2019-07-17dRagexeRE, 2019-07-24aRagexe, 2019-07-24bRagexeRE, 2019-07-31bRagexe, 2019-07-31bRagexeRE, 2019-08-02aRagexe, 2019-08-02aRagexeRE, 2019-08-07aRagexe, 2019-08-07dRagexeRE, 2019-08-21aRagexe, 2019-08-21cRagexeRE, 2019-08-21dRagexeRE, 2019-08-28aRagexe, 2019-08-28aRagexeRE, 2019-09-04aRagexe, 2019-09-04bRagexe, 2019-09-04bRagexeRE, 2019-09-18bRagexe, 2019-09-18cRagexeRE, 2019-09-25aRagexe, 2019-09-25aRagexeRE, 2019-09-25bRagexe, 2019-09-25bRagexeRE, 2019-10-02bRagexeRE, 2019-10-02cRagexe, 2019-10-02dRagexe, 2019-10-02dRagexeRE, 2019-10-02dRagexeRE_2, 2019-10-16fRagexe, 2019-10-16fRagexeRE, 2019-10-16gRagexe, 2019-10-16gRagexeRE, 2019-10-18aRagexe, 2019-10-23aRagexe, 2019-10-23aRagexeRE, 2019-10-30bRagexeRE, 2019-10-30cRagexe, 2019-11-06aRagexe, 2019-11-06bRagexeRE, 2019-11-07aRagexe, 2019-11-07aRagexeRE, 2019-11-13cRagexe, 2019-11-13eRagexe, 2019-11-13eRagexeRE, 2019-11-20aRagexe, 2019-11-20cRagexeRE, 2019-11-20dRagexe, 2019-11-27aRagexe, 2019-11-27aRagexeRE, 2019-11-27bRagexe, 2019-12-04aRagexe, 2019-12-04aRagexeRE, 2019-12-04bRagexe, 2019-12-04bRagexeRE, 2019-12-04cRagexeRE, 2019-12-11aRagexe, 2019-12-11fRagexeRE, 2019-12-18bRagexe, 2019-12-18bRagexeRE, 2019-12-24aRagexe, 2019-12-24aRagexeRE, 2019-12-24bRagexe, 2019-12-24bRagexeRE, 2020-01-08aRagexe, 2020-01-08bRagexeRE, 2020-01-22cRagexe, 2020-01-22cRagexeRE, 2020-01-29bRagexe, 2020-01-30aRagexe, 2020-02-05aRagexe, 2020-02-05aRagexeRE, 2020-02-06aRagexe, 2020-02-12aRagexe, 2020-02-12aRagexeRE, 2020-02-19dRagexe, 2020-02-19eRagexeRE, 2020-03-04aRagexe, 2020-03-04aRagexeRE
+// 2010-11-23aRagexeRE, 2010-11-24aRagexeRE, 2010-11-24bRagexeRE, 2010-11-25aRagexeRE, 2010-11-26aRagexeRE, 2010-11-30aRagexeRE, 2010-12-07aRagexeRE, 2010-12-14aRagexeRE, 2010-12-21aRagexeRE, 2010-12-23aRagexeRE, 2010-12-28aRagexeRE, 2011-01-04aRagexeRE, 2011-01-05aRagexeRE, 2011-01-11aRagexeRE, 2011-01-18aRagexeRE, 2011-01-25aRagexeRE, 2011-01-26aRagexeRE, 2011-01-26bRagexeRE, 2011-01-31aRagexeRE, 2011-01-31bRagexeRE, 2011-01-31cRagexeRE, 2011-02-08aRagexeRE, 2011-02-15aRagexeRE, 2011-02-22aRagexeRE, 2011-02-23aRagexeRE, 2011-02-23bRagexeRE, 2011-02-24aRagexeRE, 2011-02-25aRagexeRE, 2011-02-28aRagexeRE, 2011-03-08aRagexeRE, 2011-03-09aRagexeRE, 2011-03-09bRagexeRE, 2011-03-09cRagexeRE, 2011-03-09dRagexeRE, 2011-03-15aRagexeRE, 2011-03-22aRagexeRE, 2011-03-29aRagexeRE, 2011-03-30aRagexeRE, 2011-03-30cRagexeRE, 2011-04-05aRagexeRE, 2011-04-12aRagexeRE, 2011-04-19aRagexeRE, 2011-04-20aRagexeRE, 2011-04-26aRagexeRE, 2011-04-27aRagexeRE, 2011-05-03aRagexeRE, 2011-05-11aRagexeRE, 2011-05-17bRagexeRE, 2011-05-24aRagexeRE, 2011-05-26aRagexeRE, 2011-05-31aRagexeRE, 2011-06-07aRagexeRE, 2011-06-08aRagexeRE, 2011-06-08bRagexeRE, 2011-06-08cRagexeRE, 2011-06-09aRagexeRE, 2011-06-14bRagexeRE, 2011-06-22aRagexeRE, 2011-06-28aRagexeRE, 2011-07-06aRagexeRE, 2011-07-13aRagexeRE, 2011-07-13bRagexeRE, 2011-07-13cRagexeRE, 2011-07-19aRagexeRE, 2011-07-26aRagexeRE, 2011-08-03aRagexeRE, 2011-08-03bRagexeRE, 2011-08-10aRagexeRE, 2013-12-23aRagexeRE, 2014-05-08aRagexe, 2014-05-08aRagexeRE, 2014-06-11eRagexe, 2015-02-25hRagexe, 2018-03-15aRagexe, 2018-03-21aRagexe, 2018-03-21aRagexeRE, 2018-03-28bRagexe, 2018-03-28bRagexeRE, 2018-04-04bRagexe, 2018-04-04cRagexeRE, 2018-04-18aRagexe, 2018-04-18bRagexeRE, 2018-04-25cRagexe, 2018-04-25cRagexeRE, 2018-05-02bRagexe, 2018-05-02bRagexeRE, 2018-05-02dRagexeRE, 2018-05-09aRagexe, 2018-05-16cRagexe, 2018-05-16cRagexeRE, 2018-05-23aRagexe, 2018-05-23aRagexeRE, 2018-05-30aRagexe, 2018-05-30bRagexeRE, 2018-05-30cRagexeRE, 2018-06-05bRagexe, 2018-06-05bRagexeRE, 2018-06-12aRagexeRE, 2018-06-12bRagexeRE, 2018-06-20cRagexe, 2018-06-20dRagexeRE, 2018-06-20eRagexe, 2018-06-20eRagexeRE, 2018-06-21aRagexe, 2018-06-21aRagexeRE, 2018-07-04aRagexe, 2018-07-04aRagexeRE, 2018-07-11aRagexeRE, 2018-07-18bRagexe, 2018-07-18bRagexeRE, 2018-07-18bRagexeRE1, 2018-07-18cRagexe, 2018-07-18cRagexeRE, 2018-08-01cRagexe, 2018-08-01cRagexeRE, 2018-08-08bRagexe, 2018-08-08bRagexeRE, 2018-08-22cRagexe, 2018-08-22cRagexeRE, 2018-08-29aRagexe, 2018-08-29aRagexeRE, 2018-08-29bRagexeRE, 2018-08-31aRagexe, 2018-09-12dRagexe, 2018-09-12dRagexeRE, 2018-09-19aRagexe, 2018-09-19aRagexeRE, 2018-10-02aRagexe, 2018-10-02aRagexeRE, 2018-10-02bRagexe, 2018-10-02bRagexeRE, 2018-10-17_02aRagexe, 2018-10-17_02aRagexeRE, 2018-10-17_03aRagexe, 2018-10-17_03aRagexeRE, 2018-10-17bRagexe, 2018-10-17bRagexeRE, 2018-10-24bRagexe, 2018-10-31aRagexe, 2018-10-31bRagexe, 2018-10-31cRagexeRE, 2018-11-07aRagexe, 2018-11-07aRagexeRE, 2018-11-14cRagexe, 2018-11-14cRagexeRE, 2018-11-14dRagexe, 2018-11-14dRagexeRE, 2018-11-21bRagexe, 2018-11-21cRagexeRE, 2018-11-28aRagexe, 2018-11-28aRagexeRE, 2018-11-28bRagexe, 2018-11-28cRagexe, 2018-12-05aRagexe, 2018-12-05bRagexeRE, 2018-12-12aRagexe, 2018-12-12aRagexeRE, 2018-12-12bRagexe, 2018-12-12bRagexeRE, 2018-12-19bRagexe, 2018-12-19bRagexeRE, 2018-12-26aRagexe, 2018-12-26aRagexeRE, 2019-01-09aRagexe, 2019-01-09bRagexeRE, 2019-01-16bRagexe, 2019-01-16bRagexeRE, 2019-01-16cRagexe, 2019-01-16cRagexeRE, 2019-01-23dRagexe, 2019-01-23dRagexeRE, 2019-02-13IRagexeRE, 2019-02-13bRagexe, 2019-02-13eRagexe, 2019-02-20aRagexeRE, 2019-02-27aRagexe, 2019-02-27bRagexeRE, 2019-02-28aRagexe, 2019-02-28aRagexeRE, 2019-03-06bRagexe, 2019-03-06bRagexeRE, 2019-03-06cRagexe, 2019-03-06cRagexeRE, 2019-03-13aRagexe, 2019-03-20aRagexe, 2019-03-20aRagexeRE, 2019-03-22aRagexe, 2019-03-22aRagexeRE, 2019-03-27bRagexe, 2019-03-27bRagexeRE, 2019-04-03aRagexe, 2019-04-03bRagexeRE, 2019-04-03cRagexeRE, 2019-04-17aRagexe, 2019-04-17cRagexeRE, 2019-04-18aRagexe, 2019-04-18aRagexeRE, 2019-05-08cRagexe, 2019-05-08dRagexeRE, 2019-05-08eRagexeRE, 2019-05-22bRagexe, 2019-05-22bRagexeRE, 2019-05-22cRagexe, 2019-05-22cRagexeRE, 2019-05-23aRagexe, 2019-05-29aRagexe, 2019-05-29bRagexeRE, 2019-05-29cRagexe, 2019-05-29cRagexeRE, 2019-05-30aRagexe, 2019-05-30aRagexeRE, 2019-06-05JRagexeRE, 2019-06-05KRagexe, 2019-06-05LRagexeRE, 2019-06-05fRagexe, 2019-06-05hRagexeRE, 2019-06-19bRagexe, 2019-06-19cRagexeRE, 2019-06-19eRagexe, 2019-06-19hRagexe, 2019-06-26bRagexeRE, 2019-07-03aRagexe, 2019-07-03bRagexeRE, 2019-07-17aRagexe, 2019-07-17cRagexeRE, 2019-07-17dRagexe, 2019-07-17dRagexeRE, 2019-07-24aRagexe, 2019-07-24bRagexeRE, 2019-07-31bRagexe, 2019-07-31bRagexeRE, 2019-08-02aRagexe, 2019-08-02aRagexeRE, 2019-08-07aRagexe, 2019-08-07dRagexeRE, 2019-08-21aRagexe, 2019-08-21cRagexeRE, 2019-08-21dRagexeRE, 2019-08-28aRagexe, 2019-08-28aRagexeRE, 2019-09-04aRagexe, 2019-09-04bRagexe, 2019-09-04bRagexeRE, 2019-09-18bRagexe, 2019-09-18cRagexeRE, 2019-09-25aRagexe, 2019-09-25aRagexeRE, 2019-09-25bRagexe, 2019-09-25bRagexeRE, 2019-10-02bRagexeRE, 2019-10-02cRagexe, 2019-10-02dRagexe, 2019-10-02dRagexeRE, 2019-10-02dRagexeRE_2, 2019-10-16fRagexe, 2019-10-16fRagexeRE, 2019-10-16gRagexe, 2019-10-16gRagexeRE, 2019-10-18aRagexe, 2019-10-23aRagexe, 2019-10-23aRagexeRE, 2019-10-30bRagexeRE, 2019-10-30cRagexe, 2019-11-06aRagexe, 2019-11-06bRagexeRE, 2019-11-07aRagexe, 2019-11-07aRagexeRE, 2019-11-13cRagexe, 2019-11-13eRagexe, 2019-11-13eRagexeRE, 2019-11-20aRagexe, 2019-11-20cRagexeRE, 2019-11-20dRagexe, 2019-11-27aRagexe, 2019-11-27aRagexeRE, 2019-11-27bRagexe, 2019-12-04aRagexe, 2019-12-04aRagexeRE, 2019-12-04bRagexe, 2019-12-04bRagexeRE, 2019-12-04cRagexeRE, 2019-12-11aRagexe, 2019-12-11fRagexeRE, 2019-12-18bRagexe, 2019-12-18bRagexeRE, 2019-12-24aRagexe, 2019-12-24aRagexeRE, 2019-12-24bRagexe, 2019-12-24bRagexeRE, 2020-01-08aRagexe, 2020-01-08bRagexeRE, 2020-01-22cRagexe, 2020-01-22cRagexeRE, 2020-01-29bRagexe, 2020-01-30aRagexe, 2020-02-05aRagexe, 2020-02-05aRagexeRE, 2020-02-06aRagexe, 2020-02-12aRagexe, 2020-02-12aRagexeRE, 2020-02-19dRagexe, 2020-02-19eRagexeRE, 2020-03-04aRagexe, 2020-03-04aRagexeRE, 2020-03-18bRagexe, 2020-04-01bRagexe, 2020-04-14_6aRagexe, 2020-04-14eRagexe, 2020-05-06aRagexe, 2020-05-20bRagexe
#if PACKETVER == 20101123 || \
PACKETVER == 20101124 || \
PACKETVER == 20101125 || \
@@ -189,7 +189,12 @@
PACKETVER == 20200206 || \
PACKETVER == 20200212 || \
PACKETVER == 20200219 || \
- PACKETVER >= 20200304
+ PACKETVER == 20200304 || \
+ PACKETVER == 20200318 || \
+ PACKETVER == 20200401 || \
+ PACKETVER == 20200414 || \
+ PACKETVER == 20200506 || \
+ PACKETVER >= 20200520
packetKeys(0x00000000,0x00000000,0x00000000);
#endif
diff --git a/src/map/packets_keys_zero.h b/src/map/packets_keys_zero.h
index facf0e151..700ff4c6c 100644
--- a/src/map/packets_keys_zero.h
+++ b/src/map/packets_keys_zero.h
@@ -30,7 +30,7 @@
/* This file is autogenerated, please do not commit manual changes */
-// 2017-10-18aRagexe_zero, 2017-10-19aRagexe_zero, 2017-10-23aRagexe_zero, 2017-10-23bRagexe_zero, 2017-10-23cRagexe_zero, 2017-10-24aRagexe_2_zero, 2017-10-24aRagexe_zero, 2017-10-25bRagexe_zero, 2017-10-27aRagexe_zero, 2017-10-27bRagexe_zero, 2017-10-30aRagexe_zero, 2017-10-31aRagexe_zero, 2017-11-09aRagexe_zero, 2017-11-13aRagexe_zero, 2017-11-13bRagexe_zero, 2018-03-15aRagexe_zero, 2018-03-21aRagexe_zero, 2018-03-21bRagexe_zero, 2018-03-28_1aRagexe_zero, 2018-03-28cRagexe_zero, 2018-04-11aRagexe_zero, 2018-04-25_3aRagexe_zero, 2018-05-09_3aRagexe_zero, 2018-05-23aRagexe_zero, 2018-06-05bRagexe_zero, 2018-06-05cRagexe_zero, 2018-06-27aRagexe_zero, 2018-07-03aRagexe_zero, 2018-07-11_2aRagexe_zero, 2018-07-25_2aRagexe_zero, 2018-08-01aRagexe_zero, 2018-08-08_2aRagexe_zero, 2018-08-22aRagexe_zero, 2018-08-29aRagexe_zero, 2018-09-05aRagexe_zero, 2018-09-12aRagexe_zero, 2018-09-19aRagexe_zero, 2018-09-28aRagexe_zero, 2018-10-10_2aRagexe_zero, 2018-10-24_2aRagexe_zero, 2018-11-14aRagexe_zero, 2018-11-20aRagexe_zero, 2018-11-28aRagexe_zero, 2018-12-12aRagexe_zero, 2018-12-19aRagexe_zero, 2018-12-26_2aRagexe_zero, 2019-01-16_2aRagexe_zero, 2019-01-17_1aRagexe_zero, 2019-01-30_2aRagexe_zero, 2019-02-13aRagexe_zero, 2019-02-20aRagexe_zero, 2019-02-27aRagexe_zero, 2019-03-13aRagexe_zero, 2019-03-27_2aRagexe_zero, 2019-03-27_3aRagexe_zero, 2019-04-03aRagexe_zero, 2019-04-10bRagexe_zero, 2019-04-24aRagexe_zero, 2019-05-02aRagexe_zero, 2019-05-08_2aRagexe_zero, 2019-05-08aRagexe_zero, 2019-05-15aRagexe_zero, 2019-05-29aRagexe_zero, 2019-05-30aRagexe_zero, 2019-06-05_2aRagexe_zero, 2019-06-26_2aRagexe_zero, 2019-06-26_3aRagexe_zero, 2019-07-09aRagexe_zero, 2019-07-10_3aRagexe_zero, 2019-07-17aRagexe_zero, 2019-07-24aRagexe_zero, 2019-08-14_3aRagexe_zero, 2019-08-28_2aRagexe_zero, 2019-08-28_3aRagexe_zero, 2019-09-11aRagexe_zero, 2019-09-18_2aRagexe_zero, 2019-09-18aRagexe_zero, 2019-09-25_3aRagexe_zero, 2019-09-25_5aRagexe_zero, 2019-10-08_2aRagexe_zero, 2019-10-23_2aRagexe_zero, 2019-11-06aRagexe_zero, 2019-11-13aRagexe_zero, 2019-11-27_2aRagexe_zero, 2019-11-27aRagexe_zero, 2019-12-04aRagexe_zero, 2019-12-11_2aRagexe_zero, 2019-12-24_4aRagexe_zero, 2019-12-24_5aRagexe_zero, 2020-01-15_2aRagexe_zero, 2020-01-15aRagexe_zero, 2020-01-29_2aRagexe_zero, 2020-01-29aRagexe_zero, 2020-02-12aRagexe_zero, 2020-02-26aRagexe_zero, 2020-02-26bRagexe_zero, 2020-03-04aRagexe_zero
+// 2017-10-18aRagexe_zero, 2017-10-19aRagexe_zero, 2017-10-23aRagexe_zero, 2017-10-23bRagexe_zero, 2017-10-23cRagexe_zero, 2017-10-24aRagexe_2_zero, 2017-10-24aRagexe_zero, 2017-10-25bRagexe_zero, 2017-10-27aRagexe_zero, 2017-10-27bRagexe_zero, 2017-10-30aRagexe_zero, 2017-10-31aRagexe_zero, 2017-11-09aRagexe_zero, 2017-11-13aRagexe_zero, 2017-11-13bRagexe_zero, 2018-03-15aRagexe_zero, 2018-03-21aRagexe_zero, 2018-03-21bRagexe_zero, 2018-03-28_1aRagexe_zero, 2018-03-28cRagexe_zero, 2018-04-11aRagexe_zero, 2018-04-25_3aRagexe_zero, 2018-05-09_3aRagexe_zero, 2018-05-23aRagexe_zero, 2018-06-05bRagexe_zero, 2018-06-05cRagexe_zero, 2018-06-27aRagexe_zero, 2018-07-03aRagexe_zero, 2018-07-11_2aRagexe_zero, 2018-07-25_2aRagexe_zero, 2018-08-01aRagexe_zero, 2018-08-08_2aRagexe_zero, 2018-08-22aRagexe_zero, 2018-08-29aRagexe_zero, 2018-09-05aRagexe_zero, 2018-09-12aRagexe_zero, 2018-09-19aRagexe_zero, 2018-09-28aRagexe_zero, 2018-10-10_2aRagexe_zero, 2018-10-24_2aRagexe_zero, 2018-11-14aRagexe_zero, 2018-11-20aRagexe_zero, 2018-11-28aRagexe_zero, 2018-12-12aRagexe_zero, 2018-12-19aRagexe_zero, 2018-12-26_2aRagexe_zero, 2019-01-16_2aRagexe_zero, 2019-01-17_1aRagexe_zero, 2019-01-30_2aRagexe_zero, 2019-02-13aRagexe_zero, 2019-02-20aRagexe_zero, 2019-02-27aRagexe_zero, 2019-03-13aRagexe_zero, 2019-03-27_2aRagexe_zero, 2019-03-27_3aRagexe_zero, 2019-04-03aRagexe_zero, 2019-04-10bRagexe_zero, 2019-04-24aRagexe_zero, 2019-05-02aRagexe_zero, 2019-05-08_2aRagexe_zero, 2019-05-08aRagexe_zero, 2019-05-15aRagexe_zero, 2019-05-29aRagexe_zero, 2019-05-30aRagexe_zero, 2019-06-05_2aRagexe_zero, 2019-06-26_2aRagexe_zero, 2019-06-26_3aRagexe_zero, 2019-07-09aRagexe_zero, 2019-07-10_3aRagexe_zero, 2019-07-17aRagexe_zero, 2019-07-24aRagexe_zero, 2019-08-14_3aRagexe_zero, 2019-08-28_2aRagexe_zero, 2019-08-28_3aRagexe_zero, 2019-09-11aRagexe_zero, 2019-09-18_2aRagexe_zero, 2019-09-18aRagexe_zero, 2019-09-25_3aRagexe_zero, 2019-09-25_5aRagexe_zero, 2019-10-08_2aRagexe_zero, 2019-10-23_2aRagexe_zero, 2019-11-06aRagexe_zero, 2019-11-13aRagexe_zero, 2019-11-27_2aRagexe_zero, 2019-11-27aRagexe_zero, 2019-12-04aRagexe_zero, 2019-12-11_2aRagexe_zero, 2019-12-24_4aRagexe_zero, 2019-12-24_5aRagexe_zero, 2020-01-15_2aRagexe_zero, 2020-01-15aRagexe_zero, 2020-01-29_2aRagexe_zero, 2020-01-29aRagexe_zero, 2020-02-12aRagexe_zero, 2020-02-26aRagexe_zero, 2020-02-26bRagexe_zero, 2020-03-04aRagexe_zero, 2020-03-18_2aRagexe_zero, 2020-04-01_2aRagexe_zero, 2020-04-14bRagexe_zero, 2020-05-06aRagexe_zero, 2020-05-20_5aRagexe_zero
#if PACKETVER == 20171018 || \
PACKETVER == 20171019 || \
PACKETVER == 20171023 || \
@@ -108,7 +108,12 @@
PACKETVER == 20200129 || \
PACKETVER == 20200212 || \
PACKETVER == 20200226 || \
- PACKETVER >= 20200304
+ PACKETVER == 20200304 || \
+ PACKETVER == 20200318 || \
+ PACKETVER == 20200401 || \
+ PACKETVER == 20200414 || \
+ PACKETVER == 20200506 || \
+ PACKETVER >= 20200520
packetKeys(0x00000000,0x00000000,0x00000000);
#endif
diff --git a/src/map/packets_shuffle_main.h b/src/map/packets_shuffle_main.h
index 25024c9f9..ba234bdb8 100644
--- a/src/map/packets_shuffle_main.h
+++ b/src/map/packets_shuffle_main.h
@@ -40,3312 +40,3312 @@
// 2012-07-10aRagexe, 2012-07-12aRagexe
#if PACKETVER == 20120710 || \
PACKETVER == 20120712
- packet(0x0202,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x02c4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0362,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0365,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0367,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0436,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x07e4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0811,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0877,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0878,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x087f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x088d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0893,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0899,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a3,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a6,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a8,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08aa,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0936,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0948,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0953,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0956,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0958,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x0202,clif->pSolveCharName,2);
+ packet(0x02c4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0362,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0365,clif->pFriendsListAdd,2);
+ packet(0x0367,clif->pMoveToKafra,2,4);
+ packet(0x0436,clif->pActionRequest,2,6);
+ packet(0x07e4,clif->pTickSend,2);
+ packet(0x0811,clif->pReqClickBuyingStore,2);
+ packet(0x085b,clif->pUseSkillToId,2,4,6);
+ packet(0x0877,clif->pGetCharNameRequest,2);
+ packet(0x0878,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x087f,clif->pWalkToXY,2);
+ packet(0x088d,clif->pChangeDir,2,4);
+ packet(0x0893,clif->pStoragePassword,0);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0899,clif->pTakeItem,2);
+ packet(0x08a3,clif->pDropItem,2,4);
+ packet(0x08a6,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a8,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08aa,clif->pMoveFromKafra,2,4);
+ packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0936,clif->pDull/*,XXX*/);
+ packet(0x0948,clif->pReqCloseBuyingStore,0);
+ packet(0x094b,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pPartyInvite2,2);
+ packet(0x0953,clif->pDull/*,XXX*/);
+ packet(0x0956,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0958,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2012-07-16aRagexe
#if PACKETVER == 20120716
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x089f,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-07-24aRagexe
#if PACKETVER == 20120724
- packet(0x035f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0815,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0835,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0865,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0866,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0872,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0877,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087c,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0887,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0888,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a1,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a9,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08ab,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x092b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0935,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0938,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x093c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0945,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0957,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0959,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0963,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0965,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0966,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
+ packet(0x035f,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pReqClickBuyingStore,2);
+ packet(0x0815,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0835,clif->pPartyInvite2,2);
+ packet(0x0865,clif->pReqCloseBuyingStore,0);
+ packet(0x0866,clif->pDull/*,XXX*/);
+ packet(0x0872,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0877,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087c,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0887,clif->pChangeDir,2,4);
+ packet(0x0888,clif->pHomMenu,2,4);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x08a1,clif->pGetCharNameRequest,2);
+ packet(0x08a9,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08ab,clif->pTakeItem,2);
+ packet(0x091c,clif->pWalkToXY,2);
+ packet(0x091f,clif->pTickSend,2);
+ packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x092b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0935,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0938,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x093c,clif->pMoveToKafra,2,4);
+ packet(0x0945,clif->pActionRequest,2,6);
+ packet(0x0957,clif->pStoragePassword,0);
+ packet(0x0959,clif->pFriendsListAdd,2);
+ packet(0x0963,clif->pDropItem,2,4);
+ packet(0x0965,clif->pSolveCharName,2);
+ packet(0x0966,clif->pMoveFromKafra,2,4);
#endif
// 2012-08-01aRagexe, 2012-08-01bRagexe
#if PACKETVER == 20120801
- packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0438,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0873,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0875,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0895,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a2,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08aa,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ab,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0917,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0930,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0934,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x093c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0946,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0964,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0438,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x085d,clif->pSolveCharName,2);
+ packet(0x086a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086b,clif->pGetCharNameRequest,2);
+ packet(0x086f,clif->pReqCloseBuyingStore,0);
+ packet(0x0873,clif->pUseSkillToId,2,4,6);
+ packet(0x0875,clif->pTakeItem,2);
+ packet(0x087b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088b,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pActionRequest,2,6);
+ packet(0x0895,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089d,clif->pDropItem,2,4);
+ packet(0x089f,clif->pWalkToXY,2);
+ packet(0x08a2,clif->pFriendsListAdd,2);
+ packet(0x08aa,clif->pChangeDir,2,4);
+ packet(0x08ab,clif->pMoveFromKafra,2,4);
+ packet(0x0917,clif->pStoragePassword,0);
+ packet(0x091d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092a,clif->pDull/*,XXX*/);
+ packet(0x092e,clif->pReqClickBuyingStore,2);
+ packet(0x0930,clif->pTickSend,2);
+ packet(0x0934,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x093c,clif->pPartyInvite2,2);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x0946,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0964,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2012-08-08aRagexe, 2012-08-08bRagexe, 2012-08-08cRagexe
#if PACKETVER == 20120808
- packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pFriendsListAdd,2);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pStoragePassword,0);
+ packet(0x088f,clif->pChangeDir,2,4);
+ packet(0x093d,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-08-14aRagexe, 2012-08-14bRagexe
#if PACKETVER == 20120814
- packet(0x0281,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0361,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0365,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0366,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x07ec,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0815,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0838,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0861,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0862,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0865,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0868,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0875,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0882,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x088d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0895,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a8,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0920,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0929,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0932,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0934,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0967,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0969,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x0281,clif->pHomMenu,2,4);
+ packet(0x0361,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0365,clif->pSolveCharName,2);
+ packet(0x0366,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x07ec,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0815,clif->pDropItem,2,4);
+ packet(0x0838,clif->pReqCloseBuyingStore,0);
+ packet(0x085e,clif->pMoveToKafra,2,4);
+ packet(0x0861,clif->pReqClickBuyingStore,2);
+ packet(0x0862,clif->pTakeItem,2);
+ packet(0x0865,clif->pMoveFromKafra,2,4);
+ packet(0x0868,clif->pActionRequest,2,6);
+ packet(0x086f,clif->pStoragePassword,0);
+ packet(0x0875,clif->pWalkToXY,2);
+ packet(0x087f,clif->pPartyInvite2,2);
+ packet(0x0882,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x088b,clif->pFriendsListAdd,2);
+ packet(0x088d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0895,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a8,clif->pDull/*,XXX*/);
+ packet(0x091f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0920,clif->pGetCharNameRequest,2);
+ packet(0x0929,clif->pDull/*,XXX*/);
+ packet(0x0932,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0934,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0967,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0969,clif->pChangeDir,2,4);
#endif
// 2012-08-22aRagexe, 2012-08-22bRagexe, 2012-08-22cRagexe
#if PACKETVER == 20120822
- packet(0x0365,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0437,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x085a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x085d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0872,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x087d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0899,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ab,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0917,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0924,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0927,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0935,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0937,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0940,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0943,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0953,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0958,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
+ packet(0x0365,clif->pFriendsListAdd,2);
+ packet(0x0437,clif->pTakeItem,2);
+ packet(0x085a,clif->pWalkToXY,2);
+ packet(0x085c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x085d,clif->pUseSkillToId,2,4,6);
+ packet(0x086b,clif->pSolveCharName,2);
+ packet(0x086e,clif->pChangeDir,2,4);
+ packet(0x0872,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x087d,clif->pTickSend,2);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x088a,clif->pMoveToKafra,2,4);
+ packet(0x0899,clif->pPartyInvite2,2);
+ packet(0x089f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pDull/*,XXX*/);
+ packet(0x08ab,clif->pActionRequest,2,6);
+ packet(0x0917,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0924,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0927,clif->pGetCharNameRequest,2);
+ packet(0x0935,clif->pHomMenu,2,4);
+ packet(0x0937,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0940,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0943,clif->pMoveFromKafra,2,4);
+ packet(0x094d,clif->pStoragePassword,0);
+ packet(0x094e,clif->pDropItem,2,4);
+ packet(0x0953,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0955,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0958,clif->pReqCloseBuyingStore,0);
+ packet(0x095b,clif->pReqClickBuyingStore,2);
#endif
// 2012-08-30aRagexe
#if PACKETVER == 20120830
- packet(0x022d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0802,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0838,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0861,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0872,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0887,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0888,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0926,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0934,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0945,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094b,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0964,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pPartyInvite2,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0802,clif->pStoragePassword,0);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pMoveToKafra,2,4);
+ packet(0x0838,clif->pHomMenu,2,4);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0861,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0872,clif->pFriendsListAdd,2);
+ packet(0x0887,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0888,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x091d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0926,clif->pMoveFromKafra,2,4);
+ packet(0x0934,clif->pChangeDir,2,4);
+ packet(0x0945,clif->pDropItem,2,4);
+ packet(0x094b,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0964,clif->pTakeItem,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-09-05aRagexe
#if PACKETVER == 20120905
- packet(0x022d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0817,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0878,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x087e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0887,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0895,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0897,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a0,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a6,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0917,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0918,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0927,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x093c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0944,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0945,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0950,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0959,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0967,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x022d,clif->pMoveToKafra,2,4);
+ packet(0x0365,clif->pDull/*,XXX*/);
+ packet(0x0817,clif->pStoragePassword,0);
+ packet(0x085a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086f,clif->pSolveCharName,2);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0878,clif->pWalkToXY,2);
+ packet(0x087a,clif->pUseSkillToId,2,4,6);
+ packet(0x087b,clif->pTickSend,2);
+ packet(0x087e,clif->pMoveFromKafra,2,4);
+ packet(0x0887,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0895,clif->pChangeDir,2,4);
+ packet(0x0897,clif->pTakeItem,2);
+ packet(0x08a0,clif->pDull/*,XXX*/);
+ packet(0x08a6,clif->pFriendsListAdd,2);
+ packet(0x0917,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0918,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091a,clif->pGetCharNameRequest,2);
+ packet(0x0927,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x093c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0944,clif->pPartyInvite2,2);
+ packet(0x0945,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0950,clif->pDropItem,2,4);
+ packet(0x0954,clif->pReqCloseBuyingStore,0);
+ packet(0x0959,clif->pReqClickBuyingStore,2);
+ packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0967,clif->pActionRequest,2,6);
#endif
// 2012-09-11aRagexe
#if PACKETVER == 20120911
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0819,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0868,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0879,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a4,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a6,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a7,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08ad,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0930,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0935,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0948,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0949,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0958,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0959,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0962,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0963,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0968,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x0819,clif->pMoveFromKafra,2,4);
+ packet(0x0868,clif->pTakeItem,2);
+ packet(0x086f,clif->pWalkToXY,2);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pPartyInvite2,2);
+ packet(0x0879,clif->pReqClickBuyingStore,2);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x088a,clif->pGetCharNameRequest,2);
+ packet(0x088f,clif->pFriendsListAdd,2);
+ packet(0x08a4,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a6,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a7,clif->pDropItem,2,4);
+ packet(0x08ad,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0930,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0935,clif->pReqCloseBuyingStore,0);
+ packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0948,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0949,clif->pDull/*,XXX*/);
+ packet(0x094b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0958,clif->pUseSkillToId,2,4,6);
+ packet(0x0959,clif->pActionRequest,2,6);
+ packet(0x0962,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0963,clif->pSolveCharName,2);
+ packet(0x0966,clif->pMoveToKafra,2,4);
+ packet(0x0968,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pStoragePassword,0);
#endif
// 2012-09-19aRagexe
#if PACKETVER == 20120919
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0956,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0956,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-09-25aRagexe, 2012-09-26aRagexe
#if PACKETVER == 20120925 || \
PACKETVER == 20120926
- packet(0x07e4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0815,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0819,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0835,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0838,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0869,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0873,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x087e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a4,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0923,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0927,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0932,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0942,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0948,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0950,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0956,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0958,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0963,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
+ packet(0x07e4,clif->pDull/*,XXX*/);
+ packet(0x0815,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0819,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0835,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0838,clif->pGetCharNameRequest,2);
+ packet(0x085d,clif->pHomMenu,2,4);
+ packet(0x0869,clif->pMoveToKafra,2,4);
+ packet(0x0873,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087a,clif->pDropItem,2,4);
+ packet(0x087e,clif->pFriendsListAdd,2);
+ packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088a,clif->pPartyInvite2,2);
+ packet(0x088d,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a4,clif->pActionRequest,2,6);
+ packet(0x091c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091e,clif->pReqCloseBuyingStore,0);
+ packet(0x0923,clif->pTakeItem,2);
+ packet(0x0927,clif->pReqClickBuyingStore,2);
+ packet(0x0932,clif->pTickSend,2);
+ packet(0x0942,clif->pStoragePassword,0);
+ packet(0x0948,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0950,clif->pWalkToXY,2);
+ packet(0x0956,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pChangeDir,2,4);
+ packet(0x0958,clif->pSolveCharName,2);
+ packet(0x095e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0963,clif->pMoveFromKafra,2,4);
#endif
// 2012-10-10aRagexe, 2012-10-10bRagexe
#if PACKETVER == 20121010
- packet(0x0202,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0817,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0869,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0874,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0883,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0888,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0891,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0896,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a1,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a9,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0925,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0934,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0942,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0946,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0947,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0957,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0958,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0959,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0964,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0969,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0202,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0817,clif->pGetCharNameRequest,2);
+ packet(0x085a,clif->pReqCloseBuyingStore,0);
+ packet(0x0869,clif->pTakeItem,2);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x0874,clif->pMoveFromKafra,2,4);
+ packet(0x087d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0883,clif->pWalkToXY,2);
+ packet(0x0888,clif->pDull/*,XXX*/);
+ packet(0x088f,clif->pPartyInvite2,2);
+ packet(0x0891,clif->pUseSkillToId,2,4,6);
+ packet(0x0896,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pStoragePassword,0);
+ packet(0x08a1,clif->pActionRequest,2,6);
+ packet(0x08a6,clif->pSolveCharName,2);
+ packet(0x08a9,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0925,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0934,clif->pTickSend,2);
+ packet(0x093c,clif->pMoveToKafra,2,4);
+ packet(0x0942,clif->pReqClickBuyingStore,2);
+ packet(0x0946,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0947,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094c,clif->pDropItem,2,4);
+ packet(0x0957,clif->pChangeDir,2,4);
+ packet(0x0958,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0959,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095c,clif->pHomMenu,2,4);
+ packet(0x0964,clif->pFriendsListAdd,2);
+ packet(0x0969,clif->pPartyBookingRegisterReq,2,4,6);
#endif
// 2012-10-17aRagexe, 2012-10-17bRagexe
#if PACKETVER == 20121017
- packet(0x023b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0887,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0888,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0897,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a6,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0918,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0920,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0960,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0965,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pMoveFromKafra,2,4);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x086b,clif->pDropItem,2,4);
+ packet(0x0887,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0888,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0897,clif->pMoveToKafra,2,4);
+ packet(0x089a,clif->pFriendsListAdd,2);
+ packet(0x08a6,clif->pChangeDir,2,4);
+ packet(0x0918,clif->pStoragePassword,0);
+ packet(0x0920,clif->pDull/*,XXX*/);
+ packet(0x0960,clif->pHomMenu,2,4);
+ packet(0x0962,clif->pTakeItem,2);
+ packet(0x0965,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-10-24aRagexe
#if PACKETVER == 20121024
- packet(0x0436,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0437,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0438,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0817,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0838,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0868,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0872,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0875,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0882,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0888,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0889,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a9,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08aa,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0931,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0938,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0942,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0947,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0954,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0955,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x095d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0965,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x0436,clif->pWalkToXY,2);
+ packet(0x0437,clif->pUseSkillToId,2,4,6);
+ packet(0x0438,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0817,clif->pActionRequest,2,6);
+ packet(0x0838,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x085a,clif->pMoveFromKafra,2,4);
+ packet(0x0868,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0872,clif->pGetCharNameRequest,2);
+ packet(0x0875,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pMoveToKafra,2,4);
+ packet(0x087b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0882,clif->pStoragePassword,0);
+ packet(0x0888,clif->pHomMenu,2,4);
+ packet(0x0889,clif->pDropItem,2,4);
+ packet(0x088a,clif->pReqClickBuyingStore,2);
+ packet(0x089c,clif->pPartyInvite2,2);
+ packet(0x08a9,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08aa,clif->pChangeDir,2,4);
+ packet(0x0931,clif->pTakeItem,2);
+ packet(0x0938,clif->pReqCloseBuyingStore,0);
+ packet(0x093a,clif->pDull/*,XXX*/);
+ packet(0x0942,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0947,clif->pTickSend,2);
+ packet(0x0954,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0955,clif->pSearchStoreInfoNextPage,0);
+ packet(0x095d,clif->pFriendsListAdd,2);
+ packet(0x095e,clif->pSolveCharName,2);
+ packet(0x0965,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2012-10-31aRagexe
#if PACKETVER == 20121031
- packet(0x022d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0871,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0877,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0898,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pTickSend,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pHomMenu,2,4);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pFriendsListAdd,2);
+ packet(0x0871,clif->pChangeDir,2,4);
+ packet(0x0877,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0898,clif->pStoragePassword,0);
+ packet(0x092b,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-11-07aRagexe
#if PACKETVER == 20121107
- packet(0x0360,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0361,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0365,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x085c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0861,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0865,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0871,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0873,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0878,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0890,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0891,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0896,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0922,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0934,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0945,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x094d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0960,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0963,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0966,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
+ packet(0x0360,clif->pTakeItem,2);
+ packet(0x0361,clif->pStoragePassword,0);
+ packet(0x0365,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x085c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0861,clif->pTickSend,2);
+ packet(0x0865,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086c,clif->pHomMenu,2,4);
+ packet(0x086d,clif->pSolveCharName,2);
+ packet(0x0871,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0873,clif->pMoveToKafra,2,4);
+ packet(0x0878,clif->pPartyInvite2,2);
+ packet(0x087f,clif->pChangeDir,2,4);
+ packet(0x088f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0890,clif->pUseSkillToId,2,4,6);
+ packet(0x0891,clif->pMoveFromKafra,2,4);
+ packet(0x0896,clif->pReqClickBuyingStore,2);
+ packet(0x089a,clif->pActionRequest,2,6);
+ packet(0x089b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a2,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pGetCharNameRequest,2);
+ packet(0x0922,clif->pDull/*,XXX*/);
+ packet(0x0934,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0945,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x094d,clif->pWalkToXY,2);
+ packet(0x0960,clif->pDropItem,2,4);
+ packet(0x0963,clif->pDull/*,XXX*/);
+ packet(0x0966,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x096a,clif->pFriendsListAdd,2);
#endif
// 2012-11-14aRagexe
#if PACKETVER == 20121114
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0365,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0437,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0815,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0838,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0862,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0876,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0879,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0881,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0898,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0899,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a9,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08aa,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ab,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0930,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0935,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0938,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0944,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0949,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x095c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0965,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0365,clif->pHomMenu,2,4);
+ packet(0x0437,clif->pDropItem,2,4);
+ packet(0x0815,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0838,clif->pPartyInvite2,2);
+ packet(0x0862,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0876,clif->pSolveCharName,2);
+ packet(0x0879,clif->pGetCharNameRequest,2);
+ packet(0x0881,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0898,clif->pActionRequest,2,6);
+ packet(0x0899,clif->pWalkToXY,2);
+ packet(0x08a9,clif->pTickSend,2);
+ packet(0x08aa,clif->pReqCloseBuyingStore,0);
+ packet(0x08ab,clif->pChangeDir,2,4);
+ packet(0x091a,clif->pMoveFromKafra,2,4);
+ packet(0x0930,clif->pDull/*,XXX*/);
+ packet(0x0935,clif->pUseSkillToId,2,4,6);
+ packet(0x0938,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093c,clif->pMoveToKafra,2,4);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x0944,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0949,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094f,clif->pReqClickBuyingStore,2);
+ packet(0x095c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0965,clif->pTakeItem,2);
+ packet(0x096a,clif->pDull/*,XXX*/);
#endif
// 2012-11-21aRagexe
#if PACKETVER == 20121121
- packet(0x0202,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0362,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0437,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0863,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0872,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0875,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0880,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0892,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089a,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a7,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08aa,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0921,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0927,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0929,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0938,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0946,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0950,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0952,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0957,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0958,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
+ packet(0x0202,clif->pUseSkillToId,2,4,6);
+ packet(0x0362,clif->pReqCloseBuyingStore,0);
+ packet(0x0437,clif->pTakeItem,2);
+ packet(0x0863,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086d,clif->pSolveCharName,2);
+ packet(0x086f,clif->pMoveFromKafra,2,4);
+ packet(0x0872,clif->pGetCharNameRequest,2);
+ packet(0x0875,clif->pMoveToKafra,2,4);
+ packet(0x087e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0880,clif->pChangeDir,2,4);
+ packet(0x0892,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089a,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x08a7,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08aa,clif->pActionRequest,2,6);
+ packet(0x091a,clif->pTickSend,2);
+ packet(0x0921,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0927,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0929,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0946,clif->pWalkToXY,2);
+ packet(0x094d,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pHomMenu,2,4);
+ packet(0x0952,clif->pDropItem,2,4);
+ packet(0x0954,clif->pStoragePassword,0);
+ packet(0x0957,clif->pPartyInvite2,2);
+ packet(0x0958,clif->pReqClickBuyingStore,2);
#endif
// 2012-11-28aRagexe
#if PACKETVER == 20121128
- packet(0x0362,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0363,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x07ec,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0802,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0861,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0867,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x086c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0872,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0888,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0894,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0895,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a8,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ad,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0921,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0922,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0931,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0945,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0947,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0950,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0953,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0960,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x0362,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0363,clif->pFriendsListAdd,2);
+ packet(0x07ec,clif->pPartyInvite2,2);
+ packet(0x0802,clif->pStoragePassword,0);
+ packet(0x0861,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0867,clif->pTickSend,2);
+ packet(0x086c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086e,clif->pDull/*,XXX*/);
+ packet(0x0872,clif->pUseSkillToId,2,4,6);
+ packet(0x0888,clif->pChangeDir,2,4);
+ packet(0x088b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0894,clif->pDull/*,XXX*/);
+ packet(0x0895,clif->pTakeItem,2);
+ packet(0x08a8,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ad,clif->pWalkToXY,2);
+ packet(0x091b,clif->pSolveCharName,2);
+ packet(0x091c,clif->pGetCharNameRequest,2);
+ packet(0x091e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0921,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0922,clif->pMoveFromKafra,2,4);
+ packet(0x092f,clif->pReqClickBuyingStore,2);
+ packet(0x0931,clif->pActionRequest,2,6);
+ packet(0x0945,clif->pHomMenu,2,4);
+ packet(0x0947,clif->pReqCloseBuyingStore,0);
+ packet(0x0950,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0953,clif->pDropItem,2,4);
+ packet(0x0954,clif->pMoveToKafra,2,4);
+ packet(0x0960,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2012-12-05aRagexe, 2012-12-05bRagexe
#if PACKETVER == 20121205
- packet(0x035f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0360,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0815,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0863,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0864,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0873,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0875,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0878,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0888,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0889,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08ad,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0921,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0946,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0954,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0959,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0968,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x035f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0360,clif->pWalkToXY,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0815,clif->pTakeItem,2);
+ packet(0x0863,clif->pTickSend,2);
+ packet(0x0864,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x086c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0873,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0875,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0878,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0888,clif->pStoragePassword,0);
+ packet(0x0889,clif->pDropItem,2,4);
+ packet(0x088b,clif->pDull/*,XXX*/);
+ packet(0x089a,clif->pFriendsListAdd,2);
+ packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08ad,clif->pSolveCharName,2);
+ packet(0x091a,clif->pReqCloseBuyingStore,0);
+ packet(0x091c,clif->pMoveFromKafra,2,4);
+ packet(0x0921,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093a,clif->pReqClickBuyingStore,2);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x093f,clif->pUseSkillToId,2,4,6);
+ packet(0x0946,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094b,clif->pGetCharNameRequest,2);
+ packet(0x0954,clif->pActionRequest,2,6);
+ packet(0x0959,clif->pPartyInvite2,2);
+ packet(0x0966,clif->pMoveToKafra,2,4);
+ packet(0x0968,clif->pChangeDir,2,4);
#endif
// 2012-12-12aRagexe, 2012-12-12bRagexe
#if PACKETVER == 20121212
- packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0368,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0369,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0436,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0438,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x085c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0877,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x087d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0893,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0895,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a3,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a7,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a9,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08aa,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ac,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0917,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0920,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0932,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0947,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0951,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0953,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0957,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0966,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0368,clif->pFriendsListAdd,2);
+ packet(0x0369,clif->pPartyInvite2,2);
+ packet(0x0436,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0438,clif->pReqCloseBuyingStore,0);
+ packet(0x0817,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x085c,clif->pActionRequest,2,6);
+ packet(0x0877,clif->pTickSend,2);
+ packet(0x087d,clif->pUseSkillToId,2,4,6);
+ packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0893,clif->pSolveCharName,2);
+ packet(0x0895,clif->pReqClickBuyingStore,2);
+ packet(0x08a3,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a7,clif->pWalkToXY,2);
+ packet(0x08a9,clif->pStoragePassword,0);
+ packet(0x08aa,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pDropItem,2,4);
+ packet(0x0917,clif->pMoveFromKafra,2,4);
+ packet(0x091a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0920,clif->pChangeDir,2,4);
+ packet(0x0932,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0947,clif->pHomMenu,2,4);
+ packet(0x0951,clif->pDull/*,XXX*/);
+ packet(0x0953,clif->pTakeItem,2);
+ packet(0x0957,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095b,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0966,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-12-18aRagexe, 2012-12-18bRagexe
#if PACKETVER == 20121218
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0363,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0872,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0935,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0946,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0957,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pUseSkillToId,2,4,6);
+ packet(0x0363,clif->pTakeItem,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pDropItem,2,4);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x0872,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pChangeDir,2,4);
+ packet(0x087b,clif->pPartyInvite2,2);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x091a,clif->pMoveFromKafra,2,4);
+ packet(0x091c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0935,clif->pFriendsListAdd,2);
+ packet(0x0946,clif->pStoragePassword,0);
+ packet(0x0957,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-12-27aRagexe
#if PACKETVER == 20121227
- packet(0x0202,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x02c4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0361,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0437,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0860,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0870,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0872,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0886,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0888,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0890,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0894,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0896,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a6,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0917,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0920,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0932,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0933,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0940,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0943,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0947,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0953,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0958,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0962,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
+ packet(0x0202,clif->pHomMenu,2,4);
+ packet(0x02c4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0361,clif->pStoragePassword,0);
+ packet(0x0368,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0437,clif->pDropItem,2,4);
+ packet(0x0860,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0870,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0872,clif->pReqClickBuyingStore,2);
+ packet(0x087a,clif->pActionRequest,2,6);
+ packet(0x0886,clif->pMoveFromKafra,2,4);
+ packet(0x0888,clif->pTickSend,2);
+ packet(0x088e,clif->pChangeDir,2,4);
+ packet(0x0890,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0894,clif->pFriendsListAdd,2);
+ packet(0x0896,clif->pSolveCharName,2);
+ packet(0x08a6,clif->pTakeItem,2);
+ packet(0x08aa,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0917,clif->pReqCloseBuyingStore,0);
+ packet(0x091f,clif->pDull/*,XXX*/);
+ packet(0x0920,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0932,clif->pWalkToXY,2);
+ packet(0x0933,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0940,clif->pUseSkillToId,2,4,6);
+ packet(0x0943,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0947,clif->pGetCharNameRequest,2);
+ packet(0x0953,clif->pDull/*,XXX*/);
+ packet(0x0958,clif->pMoveToKafra,2,4);
+ packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0962,clif->pPartyInvite2,2);
#endif
// 2013-01-03aRagexe, 2013-01-07aRagexe
#if PACKETVER == 20130103 || \
PACKETVER == 20130107
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pDull/*,XXX*/);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pStoragePassword,0);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-01-09aRagexe
#if PACKETVER == 20130109
- packet(0x0281,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0365,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0368,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0838,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0866,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0888,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a2,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08aa,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ac,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0918,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0922,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0927,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0928,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0930,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0931,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0938,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093e,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0950,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0951,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0955,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x0281,clif->pGetCharNameRequest,2);
+ packet(0x0365,clif->pDull/*,XXX*/);
+ packet(0x0368,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0838,clif->pMoveFromKafra,2,4);
+ packet(0x0866,clif->pWalkToXY,2);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x0888,clif->pChangeDir,2,4);
+ packet(0x088a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x08a2,clif->pSolveCharName,2);
+ packet(0x08aa,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0918,clif->pFriendsListAdd,2);
+ packet(0x091b,clif->pDropItem,2,4);
+ packet(0x0922,clif->pReqClickBuyingStore,2);
+ packet(0x0927,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0928,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0930,clif->pHomMenu,2,4);
+ packet(0x0931,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0938,clif->pPartyInvite2,2);
+ packet(0x093e,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0950,clif->pStoragePassword,0);
+ packet(0x0951,clif->pTickSend,2);
+ packet(0x0955,clif->pReqCloseBuyingStore,0);
+ packet(0x095e,clif->pTakeItem,2);
#endif
// 2013-01-15bRagexe, 2013-01-16aRagexe, 2013-01-16bRagexe
#if PACKETVER == 20130115 || \
PACKETVER == 20130116
- packet(0x0361,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0817,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0861,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0863,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0870,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0871,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0877,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0879,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0888,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x088b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0894,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0895,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a0,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0918,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x092d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0939,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0946,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094b,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x095a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x0361,clif->pDull/*,XXX*/);
+ packet(0x07ec,clif->pDull/*,XXX*/);
+ packet(0x0817,clif->pWalkToXY,2);
+ packet(0x085e,clif->pReqCloseBuyingStore,0);
+ packet(0x0861,clif->pMoveFromKafra,2,4);
+ packet(0x0863,clif->pActionRequest,2,6);
+ packet(0x086b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0870,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0871,clif->pFriendsListAdd,2);
+ packet(0x0877,clif->pReqClickBuyingStore,2);
+ packet(0x0879,clif->pChangeDir,2,4);
+ packet(0x087c,clif->pSolveCharName,2);
+ packet(0x0888,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x088b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0894,clif->pHomMenu,2,4);
+ packet(0x0895,clif->pTickSend,2);
+ packet(0x08a0,clif->pPartyInvite2,2);
+ packet(0x08a4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x0918,clif->pUseSkillToId,2,4,6);
+ packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x092d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0939,clif->pGetCharNameRequest,2);
+ packet(0x0946,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094b,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094c,clif->pTakeItem,2);
+ packet(0x094e,clif->pDropItem,2,4);
+ packet(0x095a,clif->pStoragePassword,0);
#endif
// 2013-01-21aRagexe
#if PACKETVER == 20130121
- packet(0x023b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x035f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0802,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0817,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0874,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0893,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0956,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0963,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pReqCloseBuyingStore,0);
+ packet(0x035f,clif->pDull/*,XXX*/);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pTickSend,2);
+ packet(0x0802,clif->pActionRequest,2,6);
+ packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0817,clif->pStoragePassword,0);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pDull/*,XXX*/);
+ packet(0x085d,clif->pHomMenu,2,4);
+ packet(0x086c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0874,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0893,clif->pFriendsListAdd,2);
+ packet(0x091f,clif->pTakeItem,2);
+ packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094f,clif->pDropItem,2,4);
+ packet(0x0956,clif->pChangeDir,2,4);
+ packet(0x095b,clif->pPartyInvite2,2);
+ packet(0x0963,clif->pMoveFromKafra,2,4);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-01-30aRagexe
#if PACKETVER == 20130130
- packet(0x035f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0367,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0368,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0437,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x085f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0862,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0885,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0886,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0887,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0889,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x089a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a0,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a4,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a9,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0920,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0924,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0956,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095b,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x035f,clif->pMoveToKafra,2,4);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0367,clif->pGetCharNameRequest,2);
+ packet(0x0368,clif->pChangeDir,2,4);
+ packet(0x0437,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x085f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0862,clif->pReqCloseBuyingStore,0);
+ packet(0x086b,clif->pDull/*,XXX*/);
+ packet(0x087d,clif->pWalkToXY,2);
+ packet(0x087f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0885,clif->pActionRequest,2,6);
+ packet(0x0886,clif->pTakeItem,2);
+ packet(0x0887,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0889,clif->pTickSend,2);
+ packet(0x089a,clif->pPartyInvite2,2);
+ packet(0x089f,clif->pDropItem,2,4);
+ packet(0x08a0,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a4,clif->pUseSkillToId,2,4,6);
+ packet(0x08a9,clif->pDull/*,XXX*/);
+ packet(0x091a,clif->pSolveCharName,2);
+ packet(0x0920,clif->pFriendsListAdd,2);
+ packet(0x0924,clif->pReqClickBuyingStore,2);
+ packet(0x093a,clif->pStoragePassword,0);
+ packet(0x093d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0956,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095b,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x095c,clif->pMoveFromKafra,2,4);
+ packet(0x095d,clif->pSearchStoreInfoNextPage,0);
#endif
// 2013-02-06aRagexe
#if PACKETVER == 20130206
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0811,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0876,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0883,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0899,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a0,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ac,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0920,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0925,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x093c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0950,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x0811,clif->pTakeItem,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pMoveFromKafra,2,4);
+ packet(0x0876,clif->pDull/*,XXX*/);
+ packet(0x0883,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0885,clif->pMoveToKafra,2,4);
+ packet(0x0899,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a0,clif->pChangeDir,2,4);
+ packet(0x08ac,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0920,clif->pPartyInvite2,2);
+ packet(0x0925,clif->pDropItem,2,4);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x093c,clif->pFriendsListAdd,2);
+ packet(0x0950,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-02-15aRagexe, 2013-02-15bRagexe
#if PACKETVER == 20130215
- packet(0x023b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0886,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ad,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0923,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0956,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x095d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0962,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pReqClickBuyingStore,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pMoveToKafra,2,4);
+ packet(0x086f,clif->pDull/*,XXX*/);
+ packet(0x0886,clif->pDropItem,2,4);
+ packet(0x089e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089f,clif->pDull/*,XXX*/);
+ packet(0x08ad,clif->pTakeItem,2);
+ packet(0x0923,clif->pHomMenu,2,4);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x0956,clif->pPartyInvite2,2);
+ packet(0x095d,clif->pChangeDir,2,4);
+ packet(0x0962,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-02-20aRagexe
#if PACKETVER == 20130220
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x094b,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-02-27aRagexe
#if PACKETVER == 20130227
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x035f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0360,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0811,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0815,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0863,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0867,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0893,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0898,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a0,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a1,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0924,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x092b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x092f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0946,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0951,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0967,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x035f,clif->pHomMenu,2,4);
+ packet(0x0360,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0811,clif->pTickSend,2);
+ packet(0x0815,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0817,clif->pReqClickBuyingStore,2);
+ packet(0x085a,clif->pUseSkillToId,2,4,6);
+ packet(0x0863,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0867,clif->pTakeItem,2);
+ packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086e,clif->pDull/*,XXX*/);
+ packet(0x087b,clif->pPartyInvite2,2);
+ packet(0x0893,clif->pMoveFromKafra,2,4);
+ packet(0x0898,clif->pChangeDir,2,4);
+ packet(0x08a0,clif->pReqCloseBuyingStore,0);
+ packet(0x08a1,clif->pDull/*,XXX*/);
+ packet(0x091b,clif->pGetCharNameRequest,2);
+ packet(0x091f,clif->pDropItem,2,4);
+ packet(0x0924,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x092b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x092f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0946,clif->pMoveToKafra,2,4);
+ packet(0x0951,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095b,clif->pSolveCharName,2);
+ packet(0x095e,clif->pStoragePassword,0);
+ packet(0x095f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0967,clif->pActionRequest,2,6);
#endif
// 2013-03-06aRagexe
#if PACKETVER == 20130306
- packet(0x022d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0367,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0368,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0802,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0817,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x085b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0860,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0898,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ac,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0917,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0926,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0934,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0936,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0943,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0945,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0946,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094a,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0951,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0960,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x022d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0367,clif->pSolveCharName,2);
+ packet(0x0368,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0802,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0817,clif->pHomMenu,2,4);
+ packet(0x085b,clif->pWalkToXY,2);
+ packet(0x085c,clif->pReqClickBuyingStore,2);
+ packet(0x0860,clif->pChangeDir,2,4);
+ packet(0x086d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x0898,clif->pActionRequest,2,6);
+ packet(0x089f,clif->pTickSend,2);
+ packet(0x08a4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ac,clif->pDull/*,XXX*/);
+ packet(0x0917,clif->pMoveFromKafra,2,4);
+ packet(0x091e,clif->pMoveToKafra,2,4);
+ packet(0x0926,clif->pStoragePassword,0);
+ packet(0x0934,clif->pFriendsListAdd,2);
+ packet(0x0936,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0943,clif->pUseSkillToId,2,4,6);
+ packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0945,clif->pReqCloseBuyingStore,0);
+ packet(0x0946,clif->pPartyInvite2,2);
+ packet(0x094a,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094e,clif->pGetCharNameRequest,2);
+ packet(0x0951,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0960,clif->pDropItem,2,4);
+ packet(0x0962,clif->pTakeItem,2);
#endif
// 2013-03-13aRagexe
#if PACKETVER == 20130313
- packet(0x0202,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0887,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0920,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0947,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pPartyInvite2,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pFriendsListAdd,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0887,clif->pChangeDir,2,4);
+ packet(0x0920,clif->pStoragePassword,0);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0947,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-03-20dRagexe, 2013-03-20eRagexe
#if PACKETVER == 20130320
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0438,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x085d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0868,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0874,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0881,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0886,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0888,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0897,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0898,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0922,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0933,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0938,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0947,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0959,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pTickSend,2);
+ packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0438,clif->pDropItem,2,4);
+ packet(0x085a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x085d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0868,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086d,clif->pPartyInvite2,2);
+ packet(0x086f,clif->pFriendsListAdd,2);
+ packet(0x0874,clif->pMoveFromKafra,2,4);
+ packet(0x0881,clif->pWalkToXY,2);
+ packet(0x0886,clif->pReqCloseBuyingStore,0);
+ packet(0x0888,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088e,clif->pActionRequest,2,6);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pChangeDir,2,4);
+ packet(0x0898,clif->pGetCharNameRequest,2);
+ packet(0x089b,clif->pUseSkillToId,2,4,6);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x0922,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0933,clif->pTakeItem,2);
+ packet(0x0938,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093f,clif->pHomMenu,2,4);
+ packet(0x0947,clif->pStoragePassword,0);
+ packet(0x094c,clif->pSolveCharName,2);
+ packet(0x094e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0959,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095a,clif->pDull/*,XXX*/);
#endif
// 2013-03-27bRagexe
#if PACKETVER == 20130327
- packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0835,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0873,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0878,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0885,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0891,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0893,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0899,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a1,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x092b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x092d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0933,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0938,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0939,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0955,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0960,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0961,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0967,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0835,clif->pHomMenu,2,4);
+ packet(0x086d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0873,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0878,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0885,clif->pDropItem,2,4);
+ packet(0x088f,clif->pUseSkillToId,2,4,6);
+ packet(0x0891,clif->pMoveToKafra,2,4);
+ packet(0x0893,clif->pReqCloseBuyingStore,0);
+ packet(0x0899,clif->pTakeItem,2);
+ packet(0x08a1,clif->pGetCharNameRequest,2);
+ packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x092b,clif->pWalkToXY,2);
+ packet(0x092d,clif->pPartyInvite2,2);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x092f,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0938,clif->pMoveFromKafra,2,4);
+ packet(0x0939,clif->pTickSend,2);
+ packet(0x094a,clif->pChangeDir,2,4);
+ packet(0x094b,clif->pStoragePassword,0);
+ packet(0x094f,clif->pFriendsListAdd,2);
+ packet(0x0955,clif->pActionRequest,2,6);
+ packet(0x0960,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0961,clif->pSolveCharName,2);
+ packet(0x0967,clif->pItemListWindowSelected,2,4,8);
#endif
// 2013-04-03aRagexe
#if PACKETVER == 20130403
- packet(0x023b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0884,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0926,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0942,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0950,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pReqClickBuyingStore,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0884,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pDull/*,XXX*/);
+ packet(0x0926,clif->pHomMenu,2,4);
+ packet(0x0942,clif->pChangeDir,2,4);
+ packet(0x0950,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-04-10aRagexe
#if PACKETVER == 20130410
- packet(0x0367,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0437,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0860,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0865,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0881,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x088c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a0,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08a7,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0917,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0933,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0939,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x093d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0944,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0945,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0955,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0960,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0967,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x096a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x0367,clif->pReqClickBuyingStore,2);
+ packet(0x0437,clif->pTakeItem,2);
+ packet(0x0860,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0865,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x087c,clif->pWalkToXY,2);
+ packet(0x087d,clif->pGetCharNameRequest,2);
+ packet(0x0881,clif->pReqCloseBuyingStore,0);
+ packet(0x088c,clif->pStoragePassword,0);
+ packet(0x088d,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pDull/*,XXX*/);
+ packet(0x089c,clif->pSolveCharName,2);
+ packet(0x089e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a0,clif->pTickSend,2);
+ packet(0x08a4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08a7,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0917,clif->pPartyInvite2,2);
+ packet(0x091d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0933,clif->pUseSkillToId,2,4,6);
+ packet(0x0939,clif->pActionRequest,2,6);
+ packet(0x093d,clif->pMoveFromKafra,2,4);
+ packet(0x0944,clif->pDull/*,XXX*/);
+ packet(0x0945,clif->pChangeDir,2,4);
+ packet(0x0955,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0960,clif->pFriendsListAdd,2);
+ packet(0x0967,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x096a,clif->pDropItem,2,4);
#endif
// 2013-04-17aRagexe
#if PACKETVER == 20130417
- packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0875,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0929,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0962,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0969,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x096a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pFriendsListAdd,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0875,clif->pStoragePassword,0);
+ packet(0x0929,clif->pChangeDir,2,4);
+ packet(0x0962,clif->pHomMenu,2,4);
+ packet(0x0969,clif->pGetCharNameRequest,2);
+ packet(0x096a,clif->pDull/*,XXX*/);
#endif
// 2013-04-24aRagexe
#if PACKETVER == 20130424
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0969,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0969,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-05-02aRagexe, 2013-05-02bRagexe
#if PACKETVER == 20130502
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x07ec,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0870,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0874,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0875,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0877,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0888,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0889,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a1,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a3,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0961,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0967,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x07ec,clif->pChangeDir,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pDull/*,XXX*/);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x0870,clif->pPartyInvite2,2);
+ packet(0x0874,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0875,clif->pFriendsListAdd,2);
+ packet(0x0877,clif->pMoveToKafra,2,4);
+ packet(0x087c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0888,clif->pGetCharNameRequest,2);
+ packet(0x0889,clif->pDull/*,XXX*/);
+ packet(0x08a1,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a3,clif->pDropItem,2,4);
+ packet(0x0961,clif->pMoveFromKafra,2,4);
+ packet(0x0967,clif->pTakeItem,2);
#endif
// 2013-05-08bRagexe, 2013-05-08cRagexe, 2013-05-08dRagexe, 2013-05-08eRagexe, 2013-05-08fRagexe
#if PACKETVER == 20130508
- packet(0x022d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0868,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0878,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0893,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0895,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0897,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ab,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0944,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0957,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pMoveToKafra,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pFriendsListAdd,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0868,clif->pStoragePassword,0);
+ packet(0x0878,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088b,clif->pTakeItem,2);
+ packet(0x0893,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0895,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0897,clif->pDull/*,XXX*/);
+ packet(0x08ab,clif->pPartyInvite2,2);
+ packet(0x092d,clif->pDropItem,2,4);
+ packet(0x0944,clif->pDull/*,XXX*/);
+ packet(0x094d,clif->pHomMenu,2,4);
+ packet(0x0957,clif->pMoveFromKafra,2,4);
+ packet(0x095c,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-05-15aRagexe
#if PACKETVER == 20130515
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0887,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a1,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ac,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0931,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x093e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0943,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0944,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0947,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0962,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0963,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pChangeDir,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x0887,clif->pMoveToKafra,2,4);
+ packet(0x08a1,clif->pTakeItem,2);
+ packet(0x08aa,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pMoveFromKafra,2,4);
+ packet(0x092d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0931,clif->pHomMenu,2,4);
+ packet(0x093e,clif->pStoragePassword,0);
+ packet(0x0943,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0944,clif->pDropItem,2,4);
+ packet(0x0947,clif->pPartyInvite2,2);
+ packet(0x0962,clif->pFriendsListAdd,2);
+ packet(0x0963,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-05-22aRagexe
#if PACKETVER == 20130522
- packet(0x0360,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0362,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0368,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x07ec,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0811,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0874,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x088e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a2,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a3,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a6,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a9,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08aa,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08ac,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0925,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0926,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0950,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0952,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0964,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0965,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x0360,clif->pWalkToXY,2);
+ packet(0x0362,clif->pFriendsListAdd,2);
+ packet(0x0368,clif->pReqClickBuyingStore,2);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x07ec,clif->pTickSend,2);
+ packet(0x0811,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086e,clif->pReqCloseBuyingStore,0);
+ packet(0x0874,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087e,clif->pMoveFromKafra,2,4);
+ packet(0x088e,clif->pStoragePassword,0);
+ packet(0x089b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089c,clif->pDropItem,2,4);
+ packet(0x08a2,clif->pActionRequest,2,6);
+ packet(0x08a3,clif->pMoveToKafra,2,4);
+ packet(0x08a6,clif->pGetCharNameRequest,2);
+ packet(0x08a9,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08aa,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08ac,clif->pDull/*,XXX*/);
+ packet(0x0925,clif->pChangeDir,2,4);
+ packet(0x0926,clif->pHomMenu,2,4);
+ packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0950,clif->pPartyInvite2,2);
+ packet(0x0952,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095c,clif->pUseSkillToId,2,4,6);
+ packet(0x095e,clif->pTakeItem,2);
+ packet(0x0964,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0965,clif->pDull/*,XXX*/);
#endif
// 2013-05-29aRagexe
#if PACKETVER == 20130529
- packet(0x023b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0863,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0874,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0876,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0877,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0888,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0892,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0895,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0897,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a7,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a8,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0917,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0918,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0919,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0936,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0937,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0938,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0941,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0951,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0956,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0957,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0958,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0964,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x023b,clif->pHomMenu,2,4);
+ packet(0x0438,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0863,clif->pGetCharNameRequest,2);
+ packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0874,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0876,clif->pWalkToXY,2);
+ packet(0x0877,clif->pFriendsListAdd,2);
+ packet(0x0888,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pActionRequest,2,6);
+ packet(0x0892,clif->pReqClickBuyingStore,2);
+ packet(0x0895,clif->pTakeItem,2);
+ packet(0x0897,clif->pTickSend,2);
+ packet(0x08a7,clif->pDropItem,2,4);
+ packet(0x08a8,clif->pPartyInvite2,2);
+ packet(0x0917,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0918,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0919,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0936,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0937,clif->pSolveCharName,2);
+ packet(0x0938,clif->pMoveToKafra,2,4);
+ packet(0x0941,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0951,clif->pChangeDir,2,4);
+ packet(0x0956,clif->pStoragePassword,0);
+ packet(0x0957,clif->pMoveFromKafra,2,4);
+ packet(0x0958,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0964,clif->pReqCloseBuyingStore,0);
#endif
// 2013-06-05aRagexe, 2013-06-05bRagexe
#if PACKETVER == 20130605
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0883,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0883,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-06-12aRagexe, 2013-06-12bRagexe, 2013-06-12cRagexe, 2013-06-12dRagexe, 2013-06-12eRagexe
#if PACKETVER == 20130612
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0919,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0964,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087e,clif->pChangeDir,2,4);
+ packet(0x0919,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pFriendsListAdd,2);
+ packet(0x0964,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-06-18#1aRagexe
#if PACKETVER == 20130618
- packet(0x0281,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x02c4,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0363,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0862,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0864,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0885,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0887,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0889,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x088e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0890,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a6,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a7,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0917,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0930,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0932,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0936,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0942,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0944,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0945,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0951,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0953,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x0281,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x02c4,clif->pHomMenu,2,4);
+ packet(0x0363,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085a,clif->pReqCloseBuyingStore,0);
+ packet(0x0862,clif->pReqClickBuyingStore,2);
+ packet(0x0864,clif->pStoragePassword,0);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x0885,clif->pMoveToKafra,2,4);
+ packet(0x0887,clif->pPartyInvite2,2);
+ packet(0x0889,clif->pActionRequest,2,6);
+ packet(0x088e,clif->pWalkToXY,2);
+ packet(0x0890,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a6,clif->pChangeDir,2,4);
+ packet(0x08a7,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0917,clif->pDropItem,2,4);
+ packet(0x0930,clif->pTickSend,2);
+ packet(0x0932,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0936,clif->pMoveFromKafra,2,4);
+ packet(0x0942,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0944,clif->pGetCharNameRequest,2);
+ packet(0x0945,clif->pSolveCharName,2);
+ packet(0x094f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0951,clif->pUseSkillToId,2,4,6);
+ packet(0x0953,clif->pFriendsListAdd,2);
+ packet(0x095b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0962,clif->pTakeItem,2);
+ packet(0x096a,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2013-06-26_3cRagexe, 2013-06-26bRagexe
#if PACKETVER == 20130626
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0894,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0895,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a5,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ab,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0921,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0930,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0952,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0960,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pReqCloseBuyingStore,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pMoveFromKafra,2,4);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pTakeItem,2);
+ packet(0x088c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088f,clif->pDull/*,XXX*/);
+ packet(0x0894,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0895,clif->pPartyInvite2,2);
+ packet(0x08a5,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ab,clif->pFriendsListAdd,2);
+ packet(0x0921,clif->pMoveToKafra,2,4);
+ packet(0x0930,clif->pStoragePassword,0);
+ packet(0x094d,clif->pChangeDir,2,4);
+ packet(0x0952,clif->pDropItem,2,4);
+ packet(0x0960,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-07-03aRagexe
#if PACKETVER == 20130703
- packet(0x0202,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0873,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0930,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pReqClickBuyingStore,2);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pFriendsListAdd,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0873,clif->pStoragePassword,0);
+ packet(0x0930,clif->pChangeDir,2,4);
+ packet(0x094a,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-07-10bRagexe
#if PACKETVER == 20130710
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0880,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0880,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-07-17cRagexe
#if PACKETVER == 20130717
- packet(0x02c4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0863,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x086b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0882,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x088a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0897,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0898,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a9,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0917,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0918,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0956,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0958,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0960,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0967,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x096a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x02c4,clif->pTickSend,2);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pWalkToXY,2);
+ packet(0x0862,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0863,clif->pFriendsListAdd,2);
+ packet(0x086b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x0882,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x088a,clif->pHomMenu,2,4);
+ packet(0x088c,clif->pChangeDir,2,4);
+ packet(0x0897,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0898,clif->pReqClickBuyingStore,2);
+ packet(0x089b,clif->pMoveToKafra,2,4);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08a9,clif->pTakeItem,2);
+ packet(0x08aa,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0917,clif->pDropItem,2,4);
+ packet(0x0918,clif->pActionRequest,2,6);
+ packet(0x091d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091e,clif->pUseSkillToId,2,4,6);
+ packet(0x092f,clif->pPartyInvite2,2);
+ packet(0x093b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0956,clif->pMoveFromKafra,2,4);
+ packet(0x0958,clif->pGetCharNameRequest,2);
+ packet(0x095b,clif->pStoragePassword,0);
+ packet(0x0960,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0967,clif->pSolveCharName,2);
+ packet(0x096a,clif->pReqCloseBuyingStore,0);
#endif
// 2013-07-24eRagexe
#if PACKETVER == 20130724
- packet(0x023b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0437,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x085a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0860,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0867,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0874,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0876,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0890,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0891,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0893,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0924,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0953,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0954,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0956,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0958,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0966,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x023b,clif->pReqCloseBuyingStore,0);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0437,clif->pDull/*,XXX*/);
+ packet(0x085a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085e,clif->pMoveFromKafra,2,4);
+ packet(0x0860,clif->pStoragePassword,0);
+ packet(0x0867,clif->pGetCharNameRequest,2);
+ packet(0x086a,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0874,clif->pHomMenu,2,4);
+ packet(0x0876,clif->pActionRequest,2,6);
+ packet(0x0890,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0891,clif->pDropItem,2,4);
+ packet(0x0893,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0924,clif->pReqClickBuyingStore,2);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x092b,clif->pFriendsListAdd,2);
+ packet(0x092e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094a,clif->pTakeItem,2);
+ packet(0x0953,clif->pWalkToXY,2);
+ packet(0x0954,clif->pSolveCharName,2);
+ packet(0x0956,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0958,clif->pUseSkillToId,2,4,6);
+ packet(0x095c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095d,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0966,clif->pChangeDir,2,4);
#endif
// 2013-07-31cRagexe
#if PACKETVER == 20130731
- packet(0x022d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0366,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0865,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0878,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x087e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0884,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0889,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0894,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0923,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0925,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x092b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0935,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x094c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0956,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0957,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0958,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0962,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x022d,clif->pFriendsListAdd,2);
+ packet(0x0366,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pChangeDir,2,4);
+ packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x0865,clif->pUseSkillToId,2,4,6);
+ packet(0x0878,clif->pActionRequest,2,6);
+ packet(0x087e,clif->pReqCloseBuyingStore,0);
+ packet(0x0884,clif->pStoragePassword,0);
+ packet(0x0889,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pGetCharNameRequest,2);
+ packet(0x0894,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0923,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0925,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x092b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0935,clif->pTakeItem,2);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x094c,clif->pMoveFromKafra,2,4);
+ packet(0x0956,clif->pPartyInvite2,2);
+ packet(0x0957,clif->pSolveCharName,2);
+ packet(0x0958,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095f,clif->pTickSend,2);
+ packet(0x0962,clif->pDropItem,2,4);
#endif
// 2013-08-07aRagexe
#if PACKETVER == 20130807
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0887,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0887,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-08-14aRagexe
#if PACKETVER == 20130814
- packet(0x0202,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0281,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0368,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0815,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0868,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0873,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0874,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0885,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0887,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0895,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0896,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0923,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0926,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0936,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0937,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x093a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0941,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0947,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0958,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0959,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0962,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x0202,clif->pMoveToKafra,2,4);
+ packet(0x0281,clif->pFriendsListAdd,2);
+ packet(0x0368,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0815,clif->pDull/*,XXX*/);
+ packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0868,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0873,clif->pMoveFromKafra,2,4);
+ packet(0x0874,clif->pActionRequest,2,6);
+ packet(0x0885,clif->pStoragePassword,0);
+ packet(0x0887,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088a,clif->pTickSend,2);
+ packet(0x088c,clif->pChangeDir,2,4);
+ packet(0x0895,clif->pReqClickBuyingStore,2);
+ packet(0x0896,clif->pDull/*,XXX*/);
+ packet(0x08a4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0923,clif->pSolveCharName,2);
+ packet(0x0926,clif->pTakeItem,2);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x0936,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0937,clif->pGetCharNameRequest,2);
+ packet(0x093a,clif->pWalkToXY,2);
+ packet(0x0941,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0947,clif->pUseSkillToId,2,4,6);
+ packet(0x094e,clif->pReqCloseBuyingStore,0);
+ packet(0x0958,clif->pHomMenu,2,4);
+ packet(0x0959,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095f,clif->pDropItem,2,4);
+ packet(0x0962,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2013-08-21bRagexe
#if PACKETVER == 20130821
- packet(0x0202,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0437,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0438,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x07ec,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0815,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0863,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0879,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0881,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x088d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0892,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a6,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0923,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x093e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0947,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0954,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0964,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0967,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0969,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
+ packet(0x0202,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0437,clif->pMoveToKafra,2,4);
+ packet(0x0438,clif->pDull/*,XXX*/);
+ packet(0x07ec,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0815,clif->pWalkToXY,2);
+ packet(0x0862,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0863,clif->pActionRequest,2,6);
+ packet(0x086e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0879,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0881,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088d,clif->pTickSend,2);
+ packet(0x088f,clif->pFriendsListAdd,2);
+ packet(0x0892,clif->pReqClickBuyingStore,2);
+ packet(0x08a6,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pDull/*,XXX*/);
+ packet(0x091d,clif->pChangeDir,2,4);
+ packet(0x0923,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092d,clif->pGetCharNameRequest,2);
+ packet(0x093e,clif->pMoveFromKafra,2,4);
+ packet(0x0947,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0954,clif->pUseSkillToId,2,4,6);
+ packet(0x095e,clif->pSolveCharName,2);
+ packet(0x0962,clif->pTakeItem,2);
+ packet(0x0964,clif->pDropItem,2,4);
+ packet(0x0967,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0969,clif->pPartyInvite2,2);
#endif
// 2013-08-28bRagexe, 2013-08-28cRagexe
#if PACKETVER == 20130828
- packet(0x023b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0364,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0817,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0873,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0889,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0893,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a3,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ac,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0917,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0919,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0923,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0924,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0930,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0944,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0946,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x094f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x095d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x023b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0364,clif->pDull/*,XXX*/);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0817,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0873,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087e,clif->pDropItem,2,4);
+ packet(0x0889,clif->pHomMenu,2,4);
+ packet(0x0893,clif->pStoragePassword,0);
+ packet(0x089e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089f,clif->pChangeDir,2,4);
+ packet(0x08a3,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ac,clif->pGetCharNameRequest,2);
+ packet(0x0917,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0919,clif->pReqCloseBuyingStore,0);
+ packet(0x091e,clif->pTakeItem,2);
+ packet(0x0923,clif->pUseSkillToId,2,4,6);
+ packet(0x0924,clif->pTickSend,2);
+ packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x0930,clif->pSolveCharName,2);
+ packet(0x0944,clif->pFriendsListAdd,2);
+ packet(0x0946,clif->pDull/*,XXX*/);
+ packet(0x094a,clif->pPartyInvite2,2);
+ packet(0x094c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x094f,clif->pActionRequest,2,6);
+ packet(0x095d,clif->pWalkToXY,2);
+ packet(0x0966,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2013-09-04aRagexe
#if PACKETVER == 20130904
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0838,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0937,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0956,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pChangeDir,2,4);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0838,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0937,clif->pFriendsListAdd,2);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0956,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-09-11aRagexe, 2013-09-11bRagexe
#if PACKETVER == 20130911
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0868,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0889,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0891,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0948,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0967,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pGetCharNameRequest,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pPartyInvite2,2);
+ packet(0x0868,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086b,clif->pStoragePassword,0);
+ packet(0x086d,clif->pMoveFromKafra,2,4);
+ packet(0x087b,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pTakeItem,2);
+ packet(0x0891,clif->pHomMenu,2,4);
+ packet(0x08a4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091e,clif->pChangeDir,2,4);
+ packet(0x093a,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x0948,clif->pFriendsListAdd,2);
+ packet(0x0967,clif->pDropItem,2,4);
+ packet(0x096a,clif->pMoveToKafra,2,4);
#endif
// 2013-09-17aRagexe
#if PACKETVER == 20130917
- packet(0x035f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0811,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0838,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x083c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0863,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0868,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x087a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0895,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x089d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a0,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a8,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0918,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0921,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0923,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0934,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x094c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0959,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x096a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
+ packet(0x035f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0811,clif->pActionRequest,2,6);
+ packet(0x0838,clif->pReqClickBuyingStore,2);
+ packet(0x083c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0863,clif->pMoveFromKafra,2,4);
+ packet(0x0868,clif->pPartyInvite2,2);
+ packet(0x086e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086f,clif->pTickSend,2);
+ packet(0x087a,clif->pTakeItem,2);
+ packet(0x087e,clif->pUseSkillToId,2,4,6);
+ packet(0x088a,clif->pStoragePassword,0);
+ packet(0x0895,clif->pSolveCharName,2);
+ packet(0x089b,clif->pReqCloseBuyingStore,0);
+ packet(0x089d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a0,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a8,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0918,clif->pChangeDir,2,4);
+ packet(0x091c,clif->pDropItem,2,4);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x0921,clif->pGetCharNameRequest,2);
+ packet(0x0923,clif->pHomMenu,2,4);
+ packet(0x0934,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x094c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0959,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095b,clif->pWalkToXY,2);
+ packet(0x096a,clif->pFriendsListAdd,2);
#endif
// 2013-09-25aRagexe, 2013-09-25bRagexe, 2013-09-25cRagexe
#if PACKETVER == 20130925
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0875,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0876,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0885,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0887,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0940,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0969,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086d,clif->pStoragePassword,0);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x0875,clif->pHomMenu,2,4);
+ packet(0x0876,clif->pMoveFromKafra,2,4);
+ packet(0x087d,clif->pDropItem,2,4);
+ packet(0x0885,clif->pChangeDir,2,4);
+ packet(0x0887,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088f,clif->pFriendsListAdd,2);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0958,clif->pTakeItem,2);
+ packet(0x095a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095c,clif->pMoveToKafra,2,4);
+ packet(0x0969,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-10-02aRagexe
#if PACKETVER == 20131002
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pStoragePassword,0);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pTickSend,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pWalkToXY,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-10-08aRagexe
#if PACKETVER == 20131008
- packet(0x0202,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0362,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x07e4,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x083c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x085e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0863,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0883,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a9,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0917,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0923,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0927,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0932,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0934,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0936,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0947,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0952,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0956,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0202,clif->pGetCharNameRequest,2);
+ packet(0x0362,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x07e4,clif->pActionRequest,2,6);
+ packet(0x083c,clif->pReqCloseBuyingStore,0);
+ packet(0x085d,clif->pDull/*,XXX*/);
+ packet(0x085e,clif->pWalkToXY,2);
+ packet(0x0863,clif->pPartyInvite2,2);
+ packet(0x086c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086d,clif->pSolveCharName,2);
+ packet(0x0883,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089c,clif->pChangeDir,2,4);
+ packet(0x08a9,clif->pUseSkillToId,2,4,6);
+ packet(0x0917,clif->pMoveFromKafra,2,4);
+ packet(0x091c,clif->pTakeItem,2);
+ packet(0x0923,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0927,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0932,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0934,clif->pTickSend,2);
+ packet(0x0936,clif->pReqClickBuyingStore,2);
+ packet(0x093c,clif->pHomMenu,2,4);
+ packet(0x0947,clif->pStoragePassword,0);
+ packet(0x0952,clif->pDropItem,2,4);
+ packet(0x0954,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0956,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095d,clif->pFriendsListAdd,2);
+ packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2013-10-16aRagexe, 2013-10-16bRagexe
#if PACKETVER == 20131016
- packet(0x022d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0281,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0364,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x07ec,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x085d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0863,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0864,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0867,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0870,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0875,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0887,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0888,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0890,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0894,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x091e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0927,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0946,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0962,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0966,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x022d,clif->pMoveToKafra,2,4);
+ packet(0x0281,clif->pPartyInvite2,2);
+ packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0364,clif->pDropItem,2,4);
+ packet(0x0366,clif->pReqClickBuyingStore,2);
+ packet(0x07ec,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x085a,clif->pDull/*,XXX*/);
+ packet(0x085d,clif->pGetCharNameRequest,2);
+ packet(0x0863,clif->pUseSkillToId,2,4,6);
+ packet(0x0864,clif->pStoragePassword,0);
+ packet(0x0867,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0870,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0875,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0887,clif->pTakeItem,2);
+ packet(0x0888,clif->pHomMenu,2,4);
+ packet(0x088b,clif->pFriendsListAdd,2);
+ packet(0x0890,clif->pSolveCharName,2);
+ packet(0x0894,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x091e,clif->pMoveFromKafra,2,4);
+ packet(0x091f,clif->pWalkToXY,2);
+ packet(0x0927,clif->pTickSend,2);
+ packet(0x0946,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094e,clif->pReqCloseBuyingStore,0);
+ packet(0x095e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0962,clif->pActionRequest,2,6);
+ packet(0x0966,clif->pChangeDir,2,4);
#endif
// 2013-10-23aRagexe
#if PACKETVER == 20131023
- packet(0x0366,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0438,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0819,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0835,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0872,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0876,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0885,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a7,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ab,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ac,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0919,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0923,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0924,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0935,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0937,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0944,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x094a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0951,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0954,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
+ packet(0x0366,clif->pReqCloseBuyingStore,0);
+ packet(0x0438,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0819,clif->pDropItem,2,4);
+ packet(0x0835,clif->pDull/*,XXX*/);
+ packet(0x085b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x086e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0872,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0876,clif->pUseSkillToId,2,4,6);
+ packet(0x087f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0885,clif->pStoragePassword,0);
+ packet(0x088a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088b,clif->pTakeItem,2);
+ packet(0x088f,clif->pMoveToKafra,2,4);
+ packet(0x08a7,clif->pHomMenu,2,4);
+ packet(0x08ab,clif->pChangeDir,2,4);
+ packet(0x08ac,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0919,clif->pSolveCharName,2);
+ packet(0x091d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0923,clif->pActionRequest,2,6);
+ packet(0x0924,clif->pTickSend,2);
+ packet(0x0935,clif->pReqClickBuyingStore,2);
+ packet(0x0937,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0944,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x094a,clif->pFriendsListAdd,2);
+ packet(0x0951,clif->pGetCharNameRequest,2);
+ packet(0x0954,clif->pMoveFromKafra,2,4);
+ packet(0x095b,clif->pWalkToXY,2);
#endif
// 2013-10-30aRagexe
#if PACKETVER == 20131030
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0887,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0925,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pHomMenu,2,4);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087d,clif->pFriendsListAdd,2);
+ packet(0x0887,clif->pStoragePassword,0);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x0925,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-11-06aRagexe, 2013-11-07aRagexe, 2013-11-07bRagexe, 2013-11-07cRagexe, 2013-11-08aRagexe
#if PACKETVER == 20131106 || \
PACKETVER == 20131107 || \
PACKETVER == 20131108
- packet(0x0281,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0363,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0369,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0436,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0802,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0817,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0866,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0867,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0870,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0875,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0887,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0891,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0893,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0894,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a2,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0919,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0935,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0942,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0946,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0947,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0948,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0950,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0954,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0962,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0967,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x0281,clif->pGetCharNameRequest,2);
+ packet(0x0363,clif->pUseSkillToId,2,4,6);
+ packet(0x0369,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0436,clif->pStoragePassword,0);
+ packet(0x0802,clif->pChangeDir,2,4);
+ packet(0x0817,clif->pDull/*,XXX*/);
+ packet(0x0866,clif->pWalkToXY,2);
+ packet(0x0867,clif->pMoveToKafra,2,4);
+ packet(0x0870,clif->pReqCloseBuyingStore,0);
+ packet(0x0875,clif->pDropItem,2,4);
+ packet(0x0887,clif->pTickSend,2);
+ packet(0x0891,clif->pSolveCharName,2);
+ packet(0x0893,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0894,clif->pHomMenu,2,4);
+ packet(0x08a2,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0919,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x0935,clif->pFriendsListAdd,2);
+ packet(0x093b,clif->pTakeItem,2);
+ packet(0x0942,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0946,clif->pReqClickBuyingStore,2);
+ packet(0x0947,clif->pActionRequest,2,6);
+ packet(0x0948,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0954,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095d,clif->pPartyInvite2,2);
+ packet(0x0962,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0967,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2013-11-13bRagexe
#if PACKETVER == 20131113
- packet(0x0364,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0879,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x088f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0920,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0926,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0928,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0929,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x092b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x092f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0934,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0936,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0949,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0950,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x095f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0960,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0964,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0969,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x0364,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086d,clif->pReqCloseBuyingStore,0);
+ packet(0x0879,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088f,clif->pDropItem,2,4);
+ packet(0x089a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a8,clif->pDull/*,XXX*/);
+ packet(0x091c,clif->pMoveFromKafra,2,4);
+ packet(0x0920,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0926,clif->pHomMenu,2,4);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x0928,clif->pStoragePassword,0);
+ packet(0x0929,clif->pTickSend,2);
+ packet(0x092b,clif->pTakeItem,2);
+ packet(0x092c,clif->pFriendsListAdd,2);
+ packet(0x092d,clif->pReqClickBuyingStore,2);
+ packet(0x092e,clif->pGetCharNameRequest,2);
+ packet(0x092f,clif->pSolveCharName,2);
+ packet(0x0934,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0936,clif->pWalkToXY,2);
+ packet(0x093c,clif->pChangeDir,2,4);
+ packet(0x0949,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0950,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095d,clif->pActionRequest,2,6);
+ packet(0x095f,clif->pUseSkillToId,2,4,6);
+ packet(0x0960,clif->pMoveToKafra,2,4);
+ packet(0x0964,clif->pDull/*,XXX*/);
+ packet(0x0969,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2013-11-20dRagexe
#if PACKETVER == 20131120
- packet(0x0361,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0368,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0802,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0811,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0817,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x085f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0862,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0884,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a1,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a8,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0917,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0926,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0927,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x092d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0940,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0950,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0953,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0955,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0956,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0361,clif->pSolveCharName,2);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0368,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0802,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0811,clif->pDull/*,XXX*/);
+ packet(0x0817,clif->pTickSend,2);
+ packet(0x085a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x085f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0862,clif->pReqCloseBuyingStore,0);
+ packet(0x0884,clif->pUseSkillToId,2,4,6);
+ packet(0x088c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088d,clif->pFriendsListAdd,2);
+ packet(0x089e,clif->pTakeItem,2);
+ packet(0x08a1,clif->pHomMenu,2,4);
+ packet(0x08a4,clif->pStoragePassword,0);
+ packet(0x08a8,clif->pActionRequest,2,6);
+ packet(0x0917,clif->pDropItem,2,4);
+ packet(0x0926,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0927,clif->pMoveToKafra,2,4);
+ packet(0x092b,clif->pWalkToXY,2);
+ packet(0x092d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0940,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pGetCharNameRequest,2);
+ packet(0x0953,clif->pPartyInvite2,2);
+ packet(0x0955,clif->pReqClickBuyingStore,2);
+ packet(0x0956,clif->pChangeDir,2,4);
+ packet(0x095e,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2013-11-27bRagexe
#if PACKETVER == 20131127
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0365,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0366,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0881,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0884,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0894,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0930,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x093a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x095c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0967,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pGetCharNameRequest,2);
+ packet(0x0365,clif->pWalkToXY,2);
+ packet(0x0366,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pMoveFromKafra,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0881,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pHomMenu,2,4);
+ packet(0x088d,clif->pChangeDir,2,4);
+ packet(0x0894,clif->pStoragePassword,0);
+ packet(0x089e,clif->pDull/*,XXX*/);
+ packet(0x0930,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x093a,clif->pFriendsListAdd,2);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x094c,clif->pTakeItem,2);
+ packet(0x094f,clif->pDropItem,2,4);
+ packet(0x095c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0967,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pMoveToKafra,2,4);
#endif
// 2013-12-04eRagexe
#if PACKETVER == 20131204
- packet(0x0365,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0366,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0862,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0869,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0877,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0879,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0882,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a0,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a4,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a7,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08ad,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0928,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x092d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0932,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0951,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0958,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0959,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0961,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0967,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
+ packet(0x0365,clif->pReqCloseBuyingStore,0);
+ packet(0x0366,clif->pTickSend,2);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x085a,clif->pPartyInvite2,2);
+ packet(0x0862,clif->pChangeDir,2,4);
+ packet(0x0869,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0877,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0879,clif->pSolveCharName,2);
+ packet(0x087f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0882,clif->pFriendsListAdd,2);
+ packet(0x08a0,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a4,clif->pDropItem,2,4);
+ packet(0x08a7,clif->pTakeItem,2);
+ packet(0x08ad,clif->pGetCharNameRequest,2);
+ packet(0x091f,clif->pHomMenu,2,4);
+ packet(0x0928,clif->pActionRequest,2,6);
+ packet(0x092d,clif->pUseSkillToId,2,4,6);
+ packet(0x092f,clif->pWalkToXY,2);
+ packet(0x0932,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093b,clif->pDull/*,XXX*/);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x0951,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0958,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0959,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0961,clif->pDull/*,XXX*/);
+ packet(0x0967,clif->pMoveFromKafra,2,4);
#endif
// 2013-12-11cRagexe, 2013-12-11dRagexe
#if PACKETVER == 20131211
- packet(0x0202,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0366,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0865,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0873,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0886,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0892,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a3,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ab,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x092b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0931,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pUseSkillToId,2,4,6);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0366,clif->pTakeItem,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pFriendsListAdd,2);
+ packet(0x0865,clif->pPartyInvite2,2);
+ packet(0x086e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0873,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pDull/*,XXX*/);
+ packet(0x0886,clif->pHomMenu,2,4);
+ packet(0x0892,clif->pMoveToKafra,2,4);
+ packet(0x08a3,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a4,clif->pChangeDir,2,4);
+ packet(0x08ab,clif->pDropItem,2,4);
+ packet(0x092b,clif->pStoragePassword,0);
+ packet(0x0931,clif->pMoveFromKafra,2,4);
+ packet(0x094c,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-12-18bRagexe
#if PACKETVER == 20131218
- packet(0x022d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x087b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ab,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0947,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pHomMenu,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pStoragePassword,0);
+ packet(0x087b,clif->pDull/*,XXX*/);
+ packet(0x08ab,clif->pFriendsListAdd,2);
+ packet(0x092f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0947,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-12-23bRagexe, 2013-12-23cRagexe
#if PACKETVER == 20131223
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x08a4,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-12-30aRagexe
#if PACKETVER == 20131230
- packet(0x022d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x02c4,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0365,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0369,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0860,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0871,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x087b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0895,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0898,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a9,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x091f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0926,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x092a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0943,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0949,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0968,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0969,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x096a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x022d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x02c4,clif->pUseSkillToId,2,4,6);
+ packet(0x035f,clif->pWalkToXY,2);
+ packet(0x0365,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0369,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x0860,clif->pDropItem,2,4);
+ packet(0x0871,clif->pActionRequest,2,6);
+ packet(0x087b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087e,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0895,clif->pMoveFromKafra,2,4);
+ packet(0x0898,clif->pSolveCharName,2);
+ packet(0x089c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a9,clif->pPartyInvite2,2);
+ packet(0x091d,clif->pStoragePassword,0);
+ packet(0x091e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x091f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0926,clif->pGetCharNameRequest,2);
+ packet(0x092a,clif->pTakeItem,2);
+ packet(0x093d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x0943,clif->pFriendsListAdd,2);
+ packet(0x0949,clif->pHomMenu,2,4);
+ packet(0x094a,clif->pChangeDir,2,4);
+ packet(0x094c,clif->pReqCloseBuyingStore,0);
+ packet(0x0968,clif->pMoveToKafra,2,4);
+ packet(0x0969,clif->pReqClickBuyingStore,2);
+ packet(0x096a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2014-01-08cRagexe, 2014-01-08dRagexe
#if PACKETVER == 20140108
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0936,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0936,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-01-15aRagexe, 2014-01-15bRagexe, 2014-01-15cRagexe, 2014-01-15eRagexe
#if PACKETVER == 20140115
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0865,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a7,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0965,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0966,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pDropItem,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pMoveFromKafra,2,4);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pGetCharNameRequest,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0865,clif->pStoragePassword,0);
+ packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088a,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pMoveToKafra,2,4);
+ packet(0x089b,clif->pFriendsListAdd,2);
+ packet(0x08a7,clif->pChangeDir,2,4);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pTakeItem,2);
+ packet(0x095b,clif->pDull/*,XXX*/);
+ packet(0x095d,clif->pPartyInvite2,2);
+ packet(0x0965,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0966,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2014-01-22aRagexe
#if PACKETVER == 20140122
- packet(0x0360,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0811,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0863,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0870,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0871,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0872,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0893,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0899,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08aa,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0917,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0925,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x092f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0940,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0942,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x094c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0950,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0952,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0955,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0360,clif->pActionRequest,2,6);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0811,clif->pReqCloseBuyingStore,0);
+ packet(0x0863,clif->pHomMenu,2,4);
+ packet(0x0870,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0871,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0872,clif->pPartyInvite2,2);
+ packet(0x088c,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0893,clif->pFriendsListAdd,2);
+ packet(0x0899,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089d,clif->pGetCharNameRequest,2);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x08aa,clif->pDropItem,2,4);
+ packet(0x0917,clif->pTickSend,2);
+ packet(0x091a,clif->pChangeDir,2,4);
+ packet(0x0925,clif->pWalkToXY,2);
+ packet(0x092f,clif->pMoveToKafra,2,4);
+ packet(0x0940,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pSolveCharName,2);
+ packet(0x0942,clif->pTakeItem,2);
+ packet(0x094b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x094c,clif->pMoveFromKafra,2,4);
+ packet(0x0950,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0952,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0955,clif->pStoragePassword,0);
+ packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095f,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2014-01-29aRagexe, 2014-01-29cRagexe
#if PACKETVER == 20140129
- packet(0x0281,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0802,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0884,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0885,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0889,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0921,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0924,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x092c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0958,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0961,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pUseSkillToId,2,4,6);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pDull/*,XXX*/);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pDropItem,2,4);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pChangeDir,2,4);
+ packet(0x0802,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pHomMenu,2,4);
+ packet(0x0885,clif->pTakeItem,2);
+ packet(0x0889,clif->pMoveFromKafra,2,4);
+ packet(0x0921,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0924,clif->pItemListWindowSelected,2,4,8);
+ packet(0x092c,clif->pStoragePassword,0);
+ packet(0x094d,clif->pMoveToKafra,2,4);
+ packet(0x0958,clif->pPartyInvite2,2);
+ packet(0x0961,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-02-05bRagexe
#if PACKETVER == 20140205
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0938,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0938,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-02-12aRagexe
#if PACKETVER == 20140212
- packet(0x02c4,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0369,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0874,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0877,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0878,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0888,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a0,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a1,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a7,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08ad,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0919,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0928,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0930,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0934,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0936,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0944,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0952,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0953,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0960,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x02c4,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0369,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086e,clif->pUseSkillToId,2,4,6);
+ packet(0x0874,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0877,clif->pReqClickBuyingStore,2);
+ packet(0x0878,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087e,clif->pWalkToXY,2);
+ packet(0x0888,clif->pMoveFromKafra,2,4);
+ packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a0,clif->pStoragePassword,0);
+ packet(0x08a1,clif->pPartyInvite2,2);
+ packet(0x08a7,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x08ad,clif->pDropItem,2,4);
+ packet(0x0919,clif->pChangeDir,2,4);
+ packet(0x091b,clif->pFriendsListAdd,2);
+ packet(0x0928,clif->pSolveCharName,2);
+ packet(0x0930,clif->pTickSend,2);
+ packet(0x0934,clif->pActionRequest,2,6);
+ packet(0x0936,clif->pDull/*,XXX*/);
+ packet(0x093d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0944,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0952,clif->pGetCharNameRequest,2);
+ packet(0x0953,clif->pTakeItem,2);
+ packet(0x0960,clif->pReqCloseBuyingStore,0);
#endif
// 2014-02-19aRagexe
#if PACKETVER == 20140219
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0360,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0364,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0802,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x085d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0860,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0868,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a6,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08ac,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0921,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0927,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0939,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0946,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0949,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0953,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x095a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0961,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
+ packet(0x0202,clif->pFriendsListAdd,2);
+ packet(0x0360,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pSolveCharName,2);
+ packet(0x0802,clif->pTakeItem,2);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0838,clif->pUseSkillToId,2,4,6);
+ packet(0x085b,clif->pReqClickBuyingStore,2);
+ packet(0x085c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x085d,clif->pWalkToXY,2);
+ packet(0x085f,clif->pGetCharNameRequest,2);
+ packet(0x0860,clif->pHomMenu,2,4);
+ packet(0x0868,clif->pStoragePassword,0);
+ packet(0x086f,clif->pPartyInvite2,2);
+ packet(0x087c,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089f,clif->pDropItem,2,4);
+ packet(0x08a6,clif->pChangeDir,2,4);
+ packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08ac,clif->pMoveFromKafra,2,4);
+ packet(0x0921,clif->pActionRequest,2,6);
+ packet(0x0927,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0939,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0946,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0949,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0953,clif->pSearchStoreInfoNextPage,0);
+ packet(0x095a,clif->pReqCloseBuyingStore,0);
+ packet(0x0961,clif->pTickSend,2);
#endif
// 2014-02-26aRagexe
#if PACKETVER == 20140226
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0362,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0887,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0894,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0895,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0921,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0931,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0941,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0964,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0362,clif->pFriendsListAdd,2);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pChangeDir,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0887,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0894,clif->pDropItem,2,4);
+ packet(0x0895,clif->pMoveFromKafra,2,4);
+ packet(0x091a,clif->pMoveToKafra,2,4);
+ packet(0x0921,clif->pPartyInvite2,2);
+ packet(0x0931,clif->pDull/*,XXX*/);
+ packet(0x0941,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0962,clif->pDull/*,XXX*/);
+ packet(0x0964,clif->pTakeItem,2);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-03-05aRagexe, 2014-03-05bRagexe
#if PACKETVER == 20140305
- packet(0x0202,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x07e4,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0934,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pTakeItem,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x07e4,clif->pFriendsListAdd,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pChangeDir,2,4);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x0934,clif->pHomMenu,2,4);
+ packet(0x095e,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-03-12dRagexe
#if PACKETVER == 20140312
- packet(0x0202,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x023b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0889,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x088d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0891,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0894,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x089b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x089e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a9,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ad,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0948,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x094c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0957,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x0202,clif->pUseSkillToId,2,4,6);
+ packet(0x023b,clif->pDull/*,XXX*/);
+ packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085e,clif->pReqClickBuyingStore,2);
+ packet(0x086f,clif->pTickSend,2);
+ packet(0x0889,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x088d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088e,clif->pActionRequest,2,6);
+ packet(0x0891,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0894,clif->pWalkToXY,2);
+ packet(0x089b,clif->pGetCharNameRequest,2);
+ packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x089e,clif->pDropItem,2,4);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08a9,clif->pFriendsListAdd,2);
+ packet(0x08ad,clif->pSolveCharName,2);
+ packet(0x091b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091c,clif->pPartyInvite2,2);
+ packet(0x091e,clif->pHomMenu,2,4);
+ packet(0x092a,clif->pTakeItem,2);
+ packet(0x0948,clif->pReqCloseBuyingStore,0);
+ packet(0x094a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x094c,clif->pChangeDir,2,4);
+ packet(0x0957,clif->pMoveFromKafra,2,4);
+ packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095e,clif->pStoragePassword,0);
+ packet(0x0966,clif->pMoveToKafra,2,4);
#endif
// 2014-03-19aRagexe
#if PACKETVER == 20140319
- packet(0x02c4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07e4,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0802,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0811,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0815,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x085a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0864,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0866,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0872,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0883,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0893,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a2,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0923,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0933,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0942,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0944,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0947,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0954,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0955,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0964,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x096a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x02c4,clif->pTakeItem,2);
+ packet(0x07e4,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0802,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0811,clif->pReqClickBuyingStore,2);
+ packet(0x0815,clif->pHomMenu,2,4);
+ packet(0x085a,clif->pWalkToXY,2);
+ packet(0x0864,clif->pActionRequest,2,6);
+ packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0866,clif->pChangeDir,2,4);
+ packet(0x086e,clif->pDull/*,XXX*/);
+ packet(0x0872,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0883,clif->pDropItem,2,4);
+ packet(0x088e,clif->pPartyInvite2,2);
+ packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0893,clif->pDull/*,XXX*/);
+ packet(0x089f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a2,clif->pMoveToKafra,2,4);
+ packet(0x091f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0923,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0933,clif->pReqCloseBuyingStore,0);
+ packet(0x0942,clif->pStoragePassword,0);
+ packet(0x0944,clif->pUseSkillToId,2,4,6);
+ packet(0x0947,clif->pMoveFromKafra,2,4);
+ packet(0x094c,clif->pGetCharNameRequest,2);
+ packet(0x0954,clif->pFriendsListAdd,2);
+ packet(0x0955,clif->pTickSend,2);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0964,clif->pSolveCharName,2);
+ packet(0x096a,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2014-03-26aRagexe
#if PACKETVER == 20140326
- packet(0x0362,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0365,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x07ec,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x083c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0865,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0867,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0869,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0887,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0898,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08aa,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ac,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08ad,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0918,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0928,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0942,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0945,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0946,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0956,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0959,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0969,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x0362,clif->pGetCharNameRequest,2);
+ packet(0x0365,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x07ec,clif->pTakeItem,2);
+ packet(0x083c,clif->pReqClickBuyingStore,2);
+ packet(0x085b,clif->pReqCloseBuyingStore,0);
+ packet(0x0865,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0867,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0869,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086b,clif->pMoveFromKafra,2,4);
+ packet(0x087c,clif->pWalkToXY,2);
+ packet(0x087e,clif->pFriendsListAdd,2);
+ packet(0x087f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0887,clif->pDull/*,XXX*/);
+ packet(0x0898,clif->pDropItem,2,4);
+ packet(0x08aa,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08ad,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0918,clif->pTickSend,2);
+ packet(0x0928,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092a,clif->pStoragePassword,0);
+ packet(0x093d,clif->pActionRequest,2,6);
+ packet(0x0942,clif->pHomMenu,2,4);
+ packet(0x0945,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0946,clif->pPartyInvite2,2);
+ packet(0x0956,clif->pChangeDir,2,4);
+ packet(0x0959,clif->pMoveToKafra,2,4);
+ packet(0x095a,clif->pSolveCharName,2);
+ packet(0x095c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0969,clif->pUseSkillToId,2,4,6);
#endif
// 2014-04-02fRagexe, 2014-04-02gRagexe
#if PACKETVER == 20140402
- packet(0x023b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0360,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0364,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x085b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x085d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0867,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0868,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0882,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0883,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0890,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0896,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ac,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0920,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0926,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0933,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x093f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0944,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0946,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x094c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0950,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x023b,clif->pReqClickBuyingStore,2);
+ packet(0x0360,clif->pChangeDir,2,4);
+ packet(0x0364,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pSolveCharName,2);
+ packet(0x085b,clif->pMoveFromKafra,2,4);
+ packet(0x085d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0867,clif->pReqCloseBuyingStore,0);
+ packet(0x0868,clif->pUseSkillToId,2,4,6);
+ packet(0x0882,clif->pDropItem,2,4);
+ packet(0x0883,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088a,clif->pGetCharNameRequest,2);
+ packet(0x088c,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pPartyInvite2,2);
+ packet(0x0896,clif->pHomMenu,2,4);
+ packet(0x089a,clif->pFriendsListAdd,2);
+ packet(0x08ac,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0920,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0926,clif->pStoragePassword,0);
+ packet(0x092d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0933,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x093f,clif->pWalkToXY,2);
+ packet(0x0944,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0946,clif->pActionRequest,2,6);
+ packet(0x094c,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pTickSend,2);
+ packet(0x0958,clif->pTakeItem,2);
+ packet(0x095c,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2014-04-09aRagexe, 2014-04-09bRagexe
#if PACKETVER == 20140409
- packet(0x0819,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x085b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0868,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0873,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0875,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x087e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0883,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0884,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0893,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0896,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a6,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08a7,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a9,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0918,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x092e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0942,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0947,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x095e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x0819,clif->pMoveFromKafra,2,4);
+ packet(0x085b,clif->pSolveCharName,2);
+ packet(0x0868,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0873,clif->pReqCloseBuyingStore,0);
+ packet(0x0875,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x087e,clif->pTickSend,2);
+ packet(0x0883,clif->pWalkToXY,2);
+ packet(0x0884,clif->pGetCharNameRequest,2);
+ packet(0x088a,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pTakeItem,2);
+ packet(0x0893,clif->pActionRequest,2,6);
+ packet(0x0896,clif->pUseSkillToId,2,4,6);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x08a4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a6,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08a7,clif->pChangeDir,2,4);
+ packet(0x08a9,clif->pStoragePassword,0);
+ packet(0x0918,clif->pDropItem,2,4);
+ packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x092e,clif->pPartyInvite2,2);
+ packet(0x0942,clif->pMoveToKafra,2,4);
+ packet(0x0947,clif->pHomMenu,2,4);
+ packet(0x094c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095a,clif->pReqClickBuyingStore,2);
+ packet(0x095e,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2014-04-16aRagexe, 2014-04-16bRagexe
#if PACKETVER == 20140416
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x095c,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-04-23aRagexe
#if PACKETVER == 20140423
- packet(0x022d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0436,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0811,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x083c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x085a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0866,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x086f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0873,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0890,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0895,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0896,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a8,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ad,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0920,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x022d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x0436,clif->pFriendsListAdd,2);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x0811,clif->pMoveFromKafra,2,4);
+ packet(0x083c,clif->pChangeDir,2,4);
+ packet(0x085a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085b,clif->pWalkToXY,2);
+ packet(0x0862,clif->pMoveToKafra,2,4);
+ packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0866,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086b,clif->pDropItem,2,4);
+ packet(0x086f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0873,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088b,clif->pSolveCharName,2);
+ packet(0x0890,clif->pUseSkillToId,2,4,6);
+ packet(0x0895,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0896,clif->pActionRequest,2,6);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089b,clif->pReqClickBuyingStore,2);
+ packet(0x089d,clif->pGetCharNameRequest,2);
+ packet(0x089f,clif->pReqCloseBuyingStore,0);
+ packet(0x08a8,clif->pHomMenu,2,4);
+ packet(0x08ad,clif->pDull/*,XXX*/);
+ packet(0x091a,clif->pTickSend,2);
+ packet(0x0920,clif->pPartyInvite2,2);
+ packet(0x094f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095e,clif->pDull/*,XXX*/);
#endif
// 2014-04-30aRagexe
#if PACKETVER == 20140430
- packet(0x023b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x035f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0860,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0870,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0871,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0875,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0884,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0899,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a1,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0940,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0953,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0956,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
+ packet(0x023b,clif->pTickSend,2);
+ packet(0x035f,clif->pStoragePassword,0);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pUseSkillToId,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pDropItem,2,4);
+ packet(0x0860,clif->pFriendsListAdd,2);
+ packet(0x0870,clif->pPartyInvite2,2);
+ packet(0x0871,clif->pHomMenu,2,4);
+ packet(0x0875,clif->pMoveFromKafra,2,4);
+ packet(0x087f,clif->pTakeItem,2);
+ packet(0x0884,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0899,clif->pChangeDir,2,4);
+ packet(0x08a1,clif->pDull/*,XXX*/);
+ packet(0x093b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0940,clif->pGetCharNameRequest,2);
+ packet(0x094b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0953,clif->pDull/*,XXX*/);
+ packet(0x0956,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pSolveCharName,2);
#endif
// 2014-05-08bRagexe
#if PACKETVER == 20140508
- packet(0x022d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0366,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0368,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0802,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0861,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0927,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0930,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0932,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0934,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x094e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x022d,clif->pSolveCharName,2);
+ packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pChangeDir,2,4);
+ packet(0x0366,clif->pPartyInvite2,2);
+ packet(0x0368,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pHomMenu,2,4);
+ packet(0x0802,clif->pGetCharNameRequest,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0861,clif->pTakeItem,2);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x089b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x0927,clif->pStoragePassword,0);
+ packet(0x0930,clif->pMoveFromKafra,2,4);
+ packet(0x0932,clif->pDropItem,2,4);
+ packet(0x0934,clif->pDull/*,XXX*/);
+ packet(0x094e,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2014-05-14bRagexe
#if PACKETVER == 20140514
- packet(0x0437,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0817,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0865,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0868,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0876,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0877,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0885,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0886,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0895,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a5,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0918,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0921,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0925,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0958,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0962,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0965,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x096a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x0437,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0817,clif->pDull/*,XXX*/);
+ packet(0x0865,clif->pActionRequest,2,6);
+ packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0868,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0876,clif->pUseSkillToId,2,4,6);
+ packet(0x0877,clif->pDull/*,XXX*/);
+ packet(0x087d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0885,clif->pStoragePassword,0);
+ packet(0x0886,clif->pTickSend,2);
+ packet(0x088a,clif->pChangeDir,2,4);
+ packet(0x088b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0895,clif->pTakeItem,2);
+ packet(0x089a,clif->pSolveCharName,2);
+ packet(0x089c,clif->pFriendsListAdd,2);
+ packet(0x08a5,clif->pGetCharNameRequest,2);
+ packet(0x0918,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0921,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0925,clif->pReqClickBuyingStore,2);
+ packet(0x092c,clif->pMoveToKafra,2,4);
+ packet(0x092f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094d,clif->pReqCloseBuyingStore,0);
+ packet(0x094e,clif->pMoveFromKafra,2,4);
+ packet(0x0958,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pWalkToXY,2);
+ packet(0x0962,clif->pPartyInvite2,2);
+ packet(0x0965,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x096a,clif->pDropItem,2,4);
#endif
// 2014-05-21bRagexe
#if PACKETVER == 20140521
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x089c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ac,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0968,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pStoragePassword,0);
+ packet(0x088b,clif->pDull/*,XXX*/);
+ packet(0x088d,clif->pChangeDir,2,4);
+ packet(0x089c,clif->pFriendsListAdd,2);
+ packet(0x08ac,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0968,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-05-28aRagexe
#if PACKETVER == 20140528
- packet(0x0202,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0862,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0872,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0875,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0877,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0879,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x088f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0894,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0896,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a8,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0929,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0930,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0938,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x093f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x094b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0963,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0964,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0966,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x0202,clif->pWalkToXY,2);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x085f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0862,clif->pSolveCharName,2);
+ packet(0x0872,clif->pHomMenu,2,4);
+ packet(0x0875,clif->pDropItem,2,4);
+ packet(0x0877,clif->pTickSend,2);
+ packet(0x0879,clif->pMoveFromKafra,2,4);
+ packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x088f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0894,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089d,clif->pTakeItem,2);
+ packet(0x08a4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a8,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x091d,clif->pFriendsListAdd,2);
+ packet(0x0929,clif->pActionRequest,2,6);
+ packet(0x0930,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0938,clif->pReqCloseBuyingStore,0);
+ packet(0x093a,clif->pMoveToKafra,2,4);
+ packet(0x093f,clif->pPartyInvite2,2);
+ packet(0x094a,clif->pReqClickBuyingStore,2);
+ packet(0x094b,clif->pChangeDir,2,4);
+ packet(0x095f,clif->pGetCharNameRequest,2);
+ packet(0x0963,clif->pUseSkillToId,2,4,6);
+ packet(0x0964,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0966,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2014-06-05aRagexe, 2014-06-05bRagexe
#if PACKETVER == 20140605
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0369,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0921,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0931,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pReqCloseBuyingStore,0);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pActionRequest,2,6);
+ packet(0x0369,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pChangeDir,2,4);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0921,clif->pStoragePassword,0);
+ packet(0x0931,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pSolveCharName,2);
+ packet(0x094c,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-06-11cRagexe, 2014-06-11dRagexe, 2014-06-11hRagexe, 2014-06-12aRagexe, 2014-06-13aRagexe
#if PACKETVER == 20140611 || \
PACKETVER == 20140612 || \
PACKETVER == 20140613
- packet(0x0364,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0438,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x07e4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0838,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0864,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0867,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0874,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0878,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0891,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0893,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0894,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a1,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0924,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0941,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0950,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0951,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0952,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0957,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0958,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0963,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0965,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0969,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
-#endif
-
-// 2014-06-11eRagexe, 2015-02-25hRagexe, 2018-03-15aRagexe, 2018-03-21aRagexe, 2018-03-28bRagexe, 2018-04-04bRagexe, 2018-04-18aRagexe, 2018-04-25cRagexe, 2018-05-02bRagexe, 2018-05-09aRagexe, 2018-05-16cRagexe, 2018-05-23aRagexe, 2018-05-30aRagexe, 2018-06-05bRagexe, 2018-06-20cRagexe, 2018-06-20eRagexe, 2018-06-21aRagexe, 2018-07-04aRagexe, 2018-07-18bRagexe, 2018-07-18cRagexe, 2018-08-01cRagexe, 2018-08-08bRagexe, 2018-08-22cRagexe, 2018-08-29aRagexe, 2018-08-31aRagexe, 2018-09-12dRagexe, 2018-09-19aRagexe, 2018-10-02aRagexe, 2018-10-02bRagexe, 2018-10-17_02aRagexe, 2018-10-17_03aRagexe, 2018-10-17bRagexe, 2018-10-24bRagexe, 2018-10-31aRagexe, 2018-10-31bRagexe, 2018-11-07aRagexe, 2018-11-14cRagexe, 2018-11-14dRagexe
+ packet(0x0364,clif->pReqCloseBuyingStore,0);
+ packet(0x0438,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x07e4,clif->pMoveToKafra,2,4);
+ packet(0x0838,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0864,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0867,clif->pTickSend,2);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x0874,clif->pPartyInvite2,2);
+ packet(0x0878,clif->pTakeItem,2);
+ packet(0x088c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0891,clif->pActionRequest,2,6);
+ packet(0x0893,clif->pWalkToXY,2);
+ packet(0x0894,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089b,clif->pFriendsListAdd,2);
+ packet(0x08a1,clif->pUseSkillToId,2,4,6);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x0924,clif->pGetCharNameRequest,2);
+ packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0941,clif->pStoragePassword,0);
+ packet(0x094a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094f,clif->pSolveCharName,2);
+ packet(0x0950,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0951,clif->pChangeDir,2,4);
+ packet(0x0952,clif->pMoveFromKafra,2,4);
+ packet(0x0957,clif->pReqClickBuyingStore,2);
+ packet(0x0958,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0963,clif->pDropItem,2,4);
+ packet(0x0965,clif->pHomMenu,2,4);
+ packet(0x0969,clif->pSearchStoreInfoNextPage,0);
+#endif
+
+// 2014-06-11eRagexe, 2015-02-25hRagexe, 2018-03-15aRagexe, 2018-03-21aRagexe, 2018-03-28bRagexe, 2018-04-04bRagexe, 2018-04-18aRagexe, 2018-04-25cRagexe, 2018-05-02bRagexe, 2018-05-09aRagexe, 2018-05-16cRagexe, 2018-05-23aRagexe, 2018-05-30aRagexe, 2018-06-05bRagexe, 2018-06-20cRagexe, 2018-06-20eRagexe, 2018-06-21aRagexe, 2018-07-04aRagexe, 2018-07-18bRagexe, 2018-07-18cRagexe, 2018-08-01cRagexe, 2018-08-08bRagexe, 2018-08-22cRagexe, 2018-08-29aRagexe, 2018-08-31aRagexe, 2018-09-12dRagexe, 2018-09-19aRagexe, 2018-10-02aRagexe, 2018-10-02bRagexe, 2018-10-17_02aRagexe, 2018-10-17_03aRagexe, 2018-10-17bRagexe, 2018-10-24bRagexe, 2018-10-31aRagexe, 2018-10-31bRagexe, 2018-11-07aRagexe, 2018-11-14cRagexe, 2018-11-14dRagexe, 2018-11-21bRagexe, 2018-11-28aRagexe, 2018-11-28bRagexe, 2018-11-28cRagexe, 2018-12-05aRagexe, 2018-12-12aRagexe, 2018-12-12bRagexe, 2018-12-19bRagexe, 2018-12-26aRagexe, 2019-01-09aRagexe, 2019-01-16bRagexe, 2019-01-16cRagexe, 2019-01-23dRagexe, 2019-02-13bRagexe, 2019-02-13eRagexe, 2019-02-27aRagexe, 2019-02-28aRagexe, 2019-03-06bRagexe, 2019-03-06cRagexe, 2019-03-13aRagexe, 2019-03-20aRagexe, 2019-03-22aRagexe, 2019-03-27bRagexe, 2019-04-03aRagexe, 2019-04-17aRagexe, 2019-04-18aRagexe, 2019-05-08cRagexe, 2019-05-22bRagexe, 2019-05-22cRagexe, 2019-05-23aRagexe, 2019-05-29aRagexe, 2019-05-29cRagexe, 2019-05-30aRagexe, 2019-06-05fRagexe, 2019-06-05KRagexe, 2019-06-19bRagexe, 2019-06-19eRagexe, 2019-06-19hRagexe, 2019-07-03aRagexe, 2019-07-17aRagexe, 2019-07-17dRagexe, 2019-07-24aRagexe, 2019-07-31bRagexe, 2019-08-02aRagexe, 2019-08-07aRagexe, 2019-08-21aRagexe, 2019-08-28aRagexe, 2019-09-04aRagexe, 2019-09-04bRagexe, 2019-09-18bRagexe, 2019-09-25aRagexe, 2019-09-25bRagexe, 2019-10-02cRagexe, 2019-10-02dRagexe, 2019-10-16fRagexe, 2019-10-16gRagexe, 2019-10-18aRagexe, 2019-10-23aRagexe, 2019-10-30cRagexe, 2019-11-06aRagexe, 2019-11-07aRagexe, 2019-11-13cRagexe, 2019-11-13eRagexe, 2019-11-20aRagexe, 2019-11-20dRagexe, 2019-11-27aRagexe, 2019-11-27bRagexe, 2019-12-04aRagexe, 2019-12-04bRagexe, 2019-12-11aRagexe, 2019-12-18bRagexe, 2019-12-24aRagexe, 2019-12-24bRagexe, 2020-01-08aRagexe, 2020-01-22cRagexe, 2020-01-29bRagexe, 2020-01-30aRagexe, 2020-02-05aRagexe, 2020-02-06aRagexe, 2020-02-12aRagexe, 2020-02-19dRagexe, 2020-03-04aRagexe, 2020-03-18bRagexe, 2020-04-01bRagexe, 2020-04-14_6aRagexe, 2020-04-14eRagexe, 2020-05-06aRagexe, 2020-05-20bRagexe
#if PACKETVER == 20140611 || \
PACKETVER == 20150225 || \
PACKETVER == 20180315 || \
@@ -3376,6480 +3376,6421 @@
PACKETVER == 20181024 || \
PACKETVER == 20181031 || \
PACKETVER == 20181107 || \
- PACKETVER == 20181114
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ PACKETVER == 20181114 || \
+ PACKETVER == 20181121 || \
+ PACKETVER == 20181128 || \
+ PACKETVER == 20181205 || \
+ PACKETVER == 20181212 || \
+ PACKETVER == 20181219 || \
+ PACKETVER == 20181226 || \
+ PACKETVER == 20190109 || \
+ PACKETVER == 20190116 || \
+ PACKETVER == 20190123 || \
+ PACKETVER == 20190213 || \
+ PACKETVER == 20190227 || \
+ PACKETVER == 20190228 || \
+ PACKETVER == 20190306 || \
+ PACKETVER == 20190313 || \
+ PACKETVER == 20190320 || \
+ PACKETVER == 20190322 || \
+ PACKETVER == 20190327 || \
+ PACKETVER == 20190403 || \
+ PACKETVER == 20190417 || \
+ PACKETVER == 20190418 || \
+ PACKETVER == 20190508 || \
+ PACKETVER == 20190522 || \
+ PACKETVER == 20190523 || \
+ PACKETVER == 20190529 || \
+ PACKETVER == 20190530 || \
+ PACKETVER == 20190605 || \
+ PACKETVER == 20190619 || \
+ PACKETVER == 20190703 || \
+ PACKETVER == 20190717 || \
+ PACKETVER == 20190724 || \
+ PACKETVER == 20190731 || \
+ PACKETVER == 20190802 || \
+ PACKETVER == 20190807 || \
+ PACKETVER == 20190821 || \
+ PACKETVER == 20190828 || \
+ PACKETVER == 20190904 || \
+ PACKETVER == 20190918 || \
+ PACKETVER == 20190925 || \
+ PACKETVER == 20191002 || \
+ PACKETVER == 20191016 || \
+ PACKETVER == 20191018 || \
+ PACKETVER == 20191023 || \
+ PACKETVER == 20191030 || \
+ PACKETVER == 20191106 || \
+ PACKETVER == 20191107 || \
+ PACKETVER == 20191113 || \
+ PACKETVER == 20191120 || \
+ PACKETVER == 20191127 || \
+ PACKETVER == 20191204 || \
+ PACKETVER == 20191211 || \
+ PACKETVER == 20191218 || \
+ PACKETVER == 20191224 || \
+ PACKETVER == 20200108 || \
+ PACKETVER == 20200122 || \
+ PACKETVER == 20200129 || \
+ PACKETVER == 20200130 || \
+ PACKETVER == 20200205 || \
+ PACKETVER == 20200206 || \
+ PACKETVER == 20200212 || \
+ PACKETVER == 20200219 || \
+ PACKETVER == 20200304 || \
+ PACKETVER == 20200318 || \
+ PACKETVER == 20200401 || \
+ PACKETVER == 20200414 || \
+ PACKETVER == 20200506 || \
+ PACKETVER >= 20200520
+ packet(0x0202,clif->pFriendsListAdd,2);
+ packet(0x022d,clif->pHomMenu,2,4);
+ packet(0x023b,clif->pStoragePassword,0);
+ packet(0x0281,clif->pDull/*,XXX*/);
+ packet(0x02c4,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pWalkToXY,2);
+ packet(0x0360,clif->pTickSend,2);
+ packet(0x0361,clif->pChangeDir,2,4);
+ packet(0x0362,clif->pTakeItem,2);
+ packet(0x0363,clif->pDropItem,2,4);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0365,clif->pMoveFromKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pGetCharNameRequest,2);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x0436,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0438,clif->pUseSkillToId,2,4,6);
+ packet(0x07e4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x07ec,clif->pDull/*,XXX*/);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0815,clif->pReqCloseBuyingStore,0);
+ packet(0x0817,clif->pReqClickBuyingStore,2);
+ packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0838,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2014-06-18aRagexe
#if PACKETVER == 20140618
- packet(0x085d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0860,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0861,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0878,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0884,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0885,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0886,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0890,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a7,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08ac,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0917,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x091f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0935,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0938,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0939,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0945,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0957,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0967,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x085d,clif->pMoveToKafra,2,4);
+ packet(0x085f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0860,clif->pTickSend,2);
+ packet(0x0861,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0878,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087d,clif->pSolveCharName,2);
+ packet(0x0884,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0885,clif->pMoveFromKafra,2,4);
+ packet(0x0886,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0890,clif->pChangeDir,2,4);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x08a6,clif->pReqClickBuyingStore,2);
+ packet(0x08a7,clif->pWalkToXY,2);
+ packet(0x08ac,clif->pDull/*,XXX*/);
+ packet(0x0917,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x091f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0935,clif->pTakeItem,2);
+ packet(0x0938,clif->pPartyInvite2,2);
+ packet(0x0939,clif->pReqCloseBuyingStore,0);
+ packet(0x093b,clif->pActionRequest,2,6);
+ packet(0x0945,clif->pDropItem,2,4);
+ packet(0x0954,clif->pFriendsListAdd,2);
+ packet(0x0957,clif->pStoragePassword,0);
+ packet(0x095d,clif->pGetCharNameRequest,2);
+ packet(0x095e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0962,clif->pDull/*,XXX*/);
+ packet(0x0967,clif->pHomMenu,2,4);
#endif
// 2014-06-25aRagexe, 2014-06-25bRagexe
#if PACKETVER == 20140625
- packet(0x0202,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x023b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0815,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0817,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0861,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0875,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0885,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0886,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0888,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x088a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0897,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a1,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a2,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0923,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0928,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0946,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0959,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0960,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0968,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0969,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pMoveToKafra,2,4);
+ packet(0x023b,clif->pMoveFromKafra,2,4);
+ packet(0x0815,clif->pDull/*,XXX*/);
+ packet(0x0817,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pWalkToXY,2);
+ packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0861,clif->pUseSkillToId,2,4,6);
+ packet(0x086b,clif->pPartyInvite2,2);
+ packet(0x0875,clif->pSolveCharName,2);
+ packet(0x087b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0885,clif->pDropItem,2,4);
+ packet(0x0886,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0888,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x088a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0897,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a1,clif->pTickSend,2);
+ packet(0x08a2,clif->pChangeDir,2,4);
+ packet(0x091a,clif->pTakeItem,2);
+ packet(0x0923,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0928,clif->pReqCloseBuyingStore,0);
+ packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0946,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0959,clif->pActionRequest,2,6);
+ packet(0x0960,clif->pStoragePassword,0);
+ packet(0x0968,clif->pReqClickBuyingStore,2);
+ packet(0x0969,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-07-02aRagexe
#if PACKETVER == 20140702
- packet(0x022d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0438,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x07e4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x086c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0887,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0892,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a0,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a2,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0925,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0933,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0940,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pFriendsListAdd,2);
+ packet(0x0438,clif->pMoveToKafra,2,4);
+ packet(0x07e4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pStoragePassword,0);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pHomMenu,2,4);
+ packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pDropItem,2,4);
+ packet(0x086c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0887,clif->pWalkToXY,2);
+ packet(0x0892,clif->pMoveFromKafra,2,4);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x08a0,clif->pPartyInvite2,2);
+ packet(0x08a2,clif->pTakeItem,2);
+ packet(0x0925,clif->pChangeDir,2,4);
+ packet(0x092c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0933,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pSearchStoreInfoNextPage,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-07-09aRagexe
#if PACKETVER == 20140709
- packet(0x0364,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0860,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0866,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0869,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0875,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0877,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0879,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x087a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0887,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0888,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0894,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0897,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0898,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08ad,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0925,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x092f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0931,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0934,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0939,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0961,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x0364,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0860,clif->pStoragePassword,0);
+ packet(0x0866,clif->pDull/*,XXX*/);
+ packet(0x0869,clif->pChangeDir,2,4);
+ packet(0x0875,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0877,clif->pUseSkillToId,2,4,6);
+ packet(0x0879,clif->pGetCharNameRequest,2);
+ packet(0x087a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0887,clif->pMoveToKafra,2,4);
+ packet(0x0888,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pPartyInvite2,2);
+ packet(0x0894,clif->pReqCloseBuyingStore,0);
+ packet(0x0897,clif->pReqClickBuyingStore,2);
+ packet(0x0898,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08ad,clif->pDropItem,2,4);
+ packet(0x091a,clif->pWalkToXY,2);
+ packet(0x0925,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x092f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0931,clif->pSolveCharName,2);
+ packet(0x0934,clif->pTickSend,2);
+ packet(0x0939,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094d,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pMoveFromKafra,2,4);
+ packet(0x094f,clif->pFriendsListAdd,2);
+ packet(0x095f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0961,clif->pTakeItem,2);
#endif
// 2014-07-16aRagexe, 2014-07-16bRagexe, 2014-07-16cRagexe
#if PACKETVER == 20140716
- packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0811,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0868,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0871,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0881,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a4,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ac,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0918,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0926,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x092c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0938,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0947,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0952,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0959,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x0811,clif->pActionRequest,2,6);
+ packet(0x085c,clif->pGetCharNameRequest,2);
+ packet(0x085f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0868,clif->pPartyInvite2,2);
+ packet(0x0871,clif->pMoveToKafra,2,4);
+ packet(0x0881,clif->pUseSkillToId,2,4,6);
+ packet(0x088b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088d,clif->pDull/*,XXX*/);
+ packet(0x088f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089a,clif->pSolveCharName,2);
+ packet(0x089f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a2,clif->pReqCloseBuyingStore,0);
+ packet(0x08a4,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ac,clif->pHomMenu,2,4);
+ packet(0x0918,clif->pWalkToXY,2);
+ packet(0x091f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0926,clif->pDropItem,2,4);
+ packet(0x092c,clif->pFriendsListAdd,2);
+ packet(0x092f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0938,clif->pMoveFromKafra,2,4);
+ packet(0x093b,clif->pReqClickBuyingStore,2);
+ packet(0x0947,clif->pDull/*,XXX*/);
+ packet(0x0952,clif->pChangeDir,2,4);
+ packet(0x0958,clif->pTakeItem,2);
+ packet(0x0959,clif->pTickSend,2);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
#endif
// 2014-07-23aRagexe, 2014-07-23bRagexe
#if PACKETVER == 20140723
- packet(0x02c4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0436,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0819,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0838,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0869,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x087d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0888,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0891,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0896,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0898,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a2,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08ad,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0927,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0934,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0935,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0939,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x093d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0945,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0947,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0948,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0960,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x02c4,clif->pTickSend,2);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0368,clif->pGetCharNameRequest,2);
+ packet(0x0436,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0819,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0838,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085f,clif->pWalkToXY,2);
+ packet(0x0869,clif->pMoveToKafra,2,4);
+ packet(0x086d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x087d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0888,clif->pReqClickBuyingStore,2);
+ packet(0x0891,clif->pReqCloseBuyingStore,0);
+ packet(0x0896,clif->pDropItem,2,4);
+ packet(0x0898,clif->pDull/*,XXX*/);
+ packet(0x089e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a2,clif->pMoveFromKafra,2,4);
+ packet(0x08ad,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0927,clif->pSolveCharName,2);
+ packet(0x092f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0934,clif->pFriendsListAdd,2);
+ packet(0x0935,clif->pPartyInvite2,2);
+ packet(0x0939,clif->pItemListWindowSelected,2,4,8);
+ packet(0x093d,clif->pTakeItem,2);
+ packet(0x0945,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0947,clif->pActionRequest,2,6);
+ packet(0x0948,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pDull/*,XXX*/);
+ packet(0x0960,clif->pChangeDir,2,4);
#endif
// 2014-07-30aRagexe
#if PACKETVER == 20140730
- packet(0x022d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0364,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0366,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0367,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0437,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0815,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0817,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x087d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x087f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0889,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0892,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a0,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a7,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a9,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08ad,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0924,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0934,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0940,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0946,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x022d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0364,clif->pGetCharNameRequest,2);
+ packet(0x0366,clif->pUseSkillToId,2,4,6);
+ packet(0x0367,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0437,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x07ec,clif->pDull/*,XXX*/);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0815,clif->pFriendsListAdd,2);
+ packet(0x0817,clif->pActionRequest,2,6);
+ packet(0x085e,clif->pWalkToXY,2);
+ packet(0x085f,clif->pReqCloseBuyingStore,0);
+ packet(0x087d,clif->pMoveFromKafra,2,4);
+ packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x087f,clif->pDropItem,2,4);
+ packet(0x0889,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x088b,clif->pTickSend,2);
+ packet(0x088d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0892,clif->pMoveToKafra,2,4);
+ packet(0x08a0,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a6,clif->pReqClickBuyingStore,2);
+ packet(0x08a7,clif->pSolveCharName,2);
+ packet(0x08a9,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08ad,clif->pStoragePassword,0);
+ packet(0x091e,clif->pPartyInvite2,2);
+ packet(0x0924,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092a,clif->pTakeItem,2);
+ packet(0x0934,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0940,clif->pChangeDir,2,4);
+ packet(0x0946,clif->pHomMenu,2,4);
#endif
// 2014-08-06aRagexe, 2014-08-06bRagexe
#if PACKETVER == 20140806
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0948,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0948,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-08-13aRagexe, 2014-08-13bRagexe, 2014-08-14aRagexe
#if PACKETVER == 20140813 || \
PACKETVER == 20140814
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0802,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0868,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0878,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0882,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0895,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0897,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0899,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a3,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a7,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0967,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pStoragePassword,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0802,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0868,clif->pHomMenu,2,4);
+ packet(0x0878,clif->pChangeDir,2,4);
+ packet(0x087c,clif->pPartyInvite2,2);
+ packet(0x0882,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0895,clif->pMoveFromKafra,2,4);
+ packet(0x0897,clif->pFriendsListAdd,2);
+ packet(0x0899,clif->pDropItem,2,4);
+ packet(0x08a3,clif->pTakeItem,2);
+ packet(0x08a7,clif->pDull/*,XXX*/);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x0967,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-08-20aRagexe
#if PACKETVER == 20140820
- packet(0x035f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0835,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0861,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0864,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0869,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0872,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0876,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0891,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0899,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089a,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a3,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a7,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0937,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x093a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x094a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0951,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0952,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0956,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0958,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x035f,clif->pReqCloseBuyingStore,0);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0835,clif->pChangeDir,2,4);
+ packet(0x0861,clif->pTickSend,2);
+ packet(0x0864,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0869,clif->pDull/*,XXX*/);
+ packet(0x086c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x0872,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0876,clif->pDropItem,2,4);
+ packet(0x0891,clif->pGetCharNameRequest,2);
+ packet(0x0899,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089a,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089b,clif->pMoveFromKafra,2,4);
+ packet(0x08a3,clif->pWalkToXY,2);
+ packet(0x08a7,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091d,clif->pSolveCharName,2);
+ packet(0x092f,clif->pUseSkillToId,2,4,6);
+ packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0937,clif->pHomMenu,2,4);
+ packet(0x093a,clif->pStoragePassword,0);
+ packet(0x093e,clif->pReqClickBuyingStore,2);
+ packet(0x094a,clif->pFriendsListAdd,2);
+ packet(0x0951,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0952,clif->pActionRequest,2,6);
+ packet(0x0956,clif->pMoveToKafra,2,4);
+ packet(0x0958,clif->pDull/*,XXX*/);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2014-08-27aRagexe
#if PACKETVER == 20140827
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0943,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0943,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-09-03aRagexe
#if PACKETVER == 20140903
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0931,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0941,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0943,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0945,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089b,clif->pFriendsListAdd,2);
+ packet(0x0931,clif->pHomMenu,2,4);
+ packet(0x0941,clif->pStoragePassword,0);
+ packet(0x0943,clif->pDull/*,XXX*/);
+ packet(0x0945,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-09-17aRagexe
#if PACKETVER == 20140917
- packet(0x022d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0364,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0365,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0367,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0864,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0889,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0895,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0897,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0898,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a8,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0919,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x091e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x092a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0930,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0949,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0951,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0956,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0957,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x095c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x095e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0966,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x022d,clif->pPartyInvite2,2);
+ packet(0x0364,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0365,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0367,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0864,clif->pTakeItem,2);
+ packet(0x086d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0889,clif->pActionRequest,2,6);
+ packet(0x0895,clif->pHomMenu,2,4);
+ packet(0x0897,clif->pTickSend,2);
+ packet(0x0898,clif->pGetCharNameRequest,2);
+ packet(0x089c,clif->pReqClickBuyingStore,2);
+ packet(0x08a8,clif->pStoragePassword,0);
+ packet(0x0919,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x091e,clif->pReqCloseBuyingStore,0);
+ packet(0x092a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0930,clif->pMoveFromKafra,2,4);
+ packet(0x0949,clif->pUseSkillToId,2,4,6);
+ packet(0x094f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0951,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0955,clif->pFriendsListAdd,2);
+ packet(0x0956,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0957,clif->pDull/*,XXX*/);
+ packet(0x095a,clif->pDropItem,2,4);
+ packet(0x095c,clif->pWalkToXY,2);
+ packet(0x095e,clif->pChangeDir,2,4);
+ packet(0x0966,clif->pDull/*,XXX*/);
#endif
// 2014-09-24cRagexe
#if PACKETVER == 20140924
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0815,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0864,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x086b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0886,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0894,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0898,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a5,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a7,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0918,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0925,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0926,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0928,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0934,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0949,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0952,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
+ packet(0x0366,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0367,clif->pPartyInvite2,2);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0815,clif->pWalkToXY,2);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x0864,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x086b,clif->pReqCloseBuyingStore,0);
+ packet(0x086d,clif->pTakeItem,2);
+ packet(0x086e,clif->pHomMenu,2,4);
+ packet(0x0886,clif->pGetCharNameRequest,2);
+ packet(0x088b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0894,clif->pActionRequest,2,6);
+ packet(0x0898,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089c,clif->pMoveToKafra,2,4);
+ packet(0x08a5,clif->pSolveCharName,2);
+ packet(0x08a7,clif->pUseSkillToId,2,4,6);
+ packet(0x0918,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0925,clif->pDull/*,XXX*/);
+ packet(0x0926,clif->pTickSend,2);
+ packet(0x0928,clif->pMoveFromKafra,2,4);
+ packet(0x092b,clif->pReqClickBuyingStore,2);
+ packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0934,clif->pChangeDir,2,4);
+ packet(0x0949,clif->pDropItem,2,4);
+ packet(0x0952,clif->pFriendsListAdd,2);
#endif
// 2014-10-01aRagexe
#if PACKETVER == 20141001
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0885,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ad,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0937,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0939,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0952,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pDropItem,2,4);
+ packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pMoveFromKafra,2,4);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087c,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pPartyInvite2,2);
+ packet(0x0885,clif->pGetCharNameRequest,2);
+ packet(0x089c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089d,clif->pFriendsListAdd,2);
+ packet(0x08ad,clif->pChangeDir,2,4);
+ packet(0x091c,clif->pDull/*,XXX*/);
+ packet(0x092a,clif->pStoragePassword,0);
+ packet(0x0937,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0939,clif->pDull/*,XXX*/);
+ packet(0x093f,clif->pTakeItem,2);
+ packet(0x094b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0952,clif->pHomMenu,2,4);
#endif
// 2014-10-08aRagexe, 2014-10-08bRagexe, 2014-10-08cRagexe, 2014-10-08dRagexe
#if PACKETVER == 20141008
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0942,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0942,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-10-15bRagexe, 2014-10-15cRagexe, 2014-10-15dRagexe, 2014-10-16aRagexe
#if PACKETVER == 20141015 || \
PACKETVER == 20141016
- packet(0x022d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0922,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0936,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0967,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pMoveFromKafra,2,4);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pHomMenu,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0922,clif->pDull/*,XXX*/);
+ packet(0x0936,clif->pStoragePassword,0);
+ packet(0x094b,clif->pFriendsListAdd,2);
+ packet(0x0967,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-10-22bRagexe
#if PACKETVER == 20141022
- packet(0x023b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0878,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0896,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0899,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08aa,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ad,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x094e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0955,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pStoragePassword,0);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0878,clif->pMoveToKafra,2,4);
+ packet(0x087d,clif->pDropItem,2,4);
+ packet(0x0896,clif->pPartyInvite2,2);
+ packet(0x0899,clif->pHomMenu,2,4);
+ packet(0x08aa,clif->pMoveFromKafra,2,4);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x08ad,clif->pChangeDir,2,4);
+ packet(0x091a,clif->pFriendsListAdd,2);
+ packet(0x092b,clif->pDull/*,XXX*/);
+ packet(0x093b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pSearchStoreInfoNextPage,0);
+ packet(0x094e,clif->pTakeItem,2);
+ packet(0x0955,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-10-29aRagexe
#if PACKETVER == 20141029
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pWalkToXY,2);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pStoragePassword,0);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pActionRequest,2,6);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-11-05aRagexe, 2014-11-05bRagexe
#if PACKETVER == 20141105
- packet(0x022d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x035f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x085c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0863,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0864,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0865,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0871,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0874,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0875,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0877,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0879,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0887,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0892,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0898,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a0,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a7,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0944,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0948,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0950,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0957,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x095f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0968,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x022d,clif->pDull/*,XXX*/);
+ packet(0x035f,clif->pUseSkillToId,2,4,6);
+ packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x085c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0863,clif->pGetCharNameRequest,2);
+ packet(0x0864,clif->pTickSend,2);
+ packet(0x0865,clif->pFriendsListAdd,2);
+ packet(0x0871,clif->pStoragePassword,0);
+ packet(0x0874,clif->pDull/*,XXX*/);
+ packet(0x0875,clif->pActionRequest,2,6);
+ packet(0x0877,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0879,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0887,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0892,clif->pDropItem,2,4);
+ packet(0x0898,clif->pMoveFromKafra,2,4);
+ packet(0x08a0,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pChangeDir,2,4);
+ packet(0x08a7,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pMoveToKafra,2,4);
+ packet(0x091d,clif->pSolveCharName,2);
+ packet(0x091e,clif->pReqClickBuyingStore,2);
+ packet(0x092b,clif->pTakeItem,2);
+ packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0944,clif->pHomMenu,2,4);
+ packet(0x0948,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0950,clif->pPartyInvite2,2);
+ packet(0x0957,clif->pWalkToXY,2);
+ packet(0x095f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0968,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2014-11-12cRagexe, 2014-11-12dRagexe
#if PACKETVER == 20141112
- packet(0x0362,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0438,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x07e4,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0863,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0871,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0885,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0886,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0887,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08a0,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a1,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08ab,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0919,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0926,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0929,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0943,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0955,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0960,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0962,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x0362,clif->pFriendsListAdd,2);
+ packet(0x0438,clif->pSolveCharName,2);
+ packet(0x07e4,clif->pReqCloseBuyingStore,0);
+ packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0838,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pMoveToKafra,2,4);
+ packet(0x085f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0863,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pGetCharNameRequest,2);
+ packet(0x086c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0871,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0885,clif->pChangeDir,2,4);
+ packet(0x0886,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0887,clif->pPartyInvite2,2);
+ packet(0x088d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08a0,clif->pWalkToXY,2);
+ packet(0x08a1,clif->pReqClickBuyingStore,2);
+ packet(0x08ab,clif->pStoragePassword,0);
+ packet(0x0919,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0926,clif->pHomMenu,2,4);
+ packet(0x0929,clif->pActionRequest,2,6);
+ packet(0x0943,clif->pDropItem,2,4);
+ packet(0x094b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094c,clif->pDull/*,XXX*/);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0955,clif->pMoveFromKafra,2,4);
+ packet(0x095d,clif->pTickSend,2);
+ packet(0x0960,clif->pTakeItem,2);
+ packet(0x0962,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2014-11-19dRagexe
#if PACKETVER == 20141119
- packet(0x0202,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0861,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0865,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0866,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0872,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0873,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0875,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x087c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0887,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0888,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0895,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a8,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0918,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0920,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0921,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0933,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0938,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0940,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0942,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0948,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0963,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x0202,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085a,clif->pReqClickBuyingStore,2);
+ packet(0x0861,clif->pFriendsListAdd,2);
+ packet(0x0865,clif->pPartyInvite2,2);
+ packet(0x0866,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0872,clif->pActionRequest,2,6);
+ packet(0x0873,clif->pUseSkillToId,2,4,6);
+ packet(0x0875,clif->pGetCharNameRequest,2);
+ packet(0x087c,clif->pSolveCharName,2);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x0887,clif->pReqCloseBuyingStore,0);
+ packet(0x0888,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x088d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0895,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a8,clif->pTakeItem,2);
+ packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0918,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0920,clif->pChangeDir,2,4);
+ packet(0x0921,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x092f,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pStoragePassword,0);
+ packet(0x0938,clif->pTickSend,2);
+ packet(0x0940,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x0942,clif->pHomMenu,2,4);
+ packet(0x0948,clif->pWalkToXY,2);
+ packet(0x094c,clif->pDropItem,2,4);
+ packet(0x0963,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2014-11-26aRagexe, 2014-11-26bRagexe, 2014-11-26cRagexe, 2014-11-26dRagexe
#if PACKETVER == 20141126
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0871,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0896,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ad,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0920,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0942,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pDull/*,XXX*/);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0871,clif->pMoveFromKafra,2,4);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a4,clif->pChangeDir,2,4);
+ packet(0x08ad,clif->pStoragePassword,0);
+ packet(0x0920,clif->pDropItem,2,4);
+ packet(0x0942,clif->pFriendsListAdd,2);
+ packet(0x095a,clif->pTakeItem,2);
+ packet(0x095b,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-12-03aRagexe
#if PACKETVER == 20141203
- packet(0x0202,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0281,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0367,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0368,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0861,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x086e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0880,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0889,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0898,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a5,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08aa,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0917,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0928,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x092a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0936,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0957,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0962,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x0202,clif->pSolveCharName,2);
+ packet(0x0281,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0367,clif->pGetCharNameRequest,2);
+ packet(0x0368,clif->pDull/*,XXX*/);
+ packet(0x0802,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0861,clif->pMoveToKafra,2,4);
+ packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086d,clif->pMoveFromKafra,2,4);
+ packet(0x086e,clif->pTakeItem,2);
+ packet(0x087b,clif->pWalkToXY,2);
+ packet(0x087e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0880,clif->pChangeDir,2,4);
+ packet(0x0889,clif->pFriendsListAdd,2);
+ packet(0x0898,clif->pStoragePassword,0);
+ packet(0x089c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a5,clif->pActionRequest,2,6);
+ packet(0x08aa,clif->pDropItem,2,4);
+ packet(0x0917,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091d,clif->pPartyInvite2,2);
+ packet(0x0928,clif->pTickSend,2);
+ packet(0x092a,clif->pDull/*,XXX*/);
+ packet(0x0936,clif->pHomMenu,2,4);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0957,clif->pReqCloseBuyingStore,0);
+ packet(0x095c,clif->pReqClickBuyingStore,2);
+ packet(0x0962,clif->pUseSkillToId,2,4,6);
#endif
// 2014-12-10bRagexe, 2014-12-10cRagexe
#if PACKETVER == 20141210
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0885,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08ac,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0917,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0927,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x092b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0947,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0954,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0955,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0958,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0961,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0963,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0967,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pHomMenu,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pChangeDir,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087b,clif->pTakeItem,2);
+ packet(0x0885,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08ac,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0917,clif->pPartyInvite2,2);
+ packet(0x0927,clif->pDull/*,XXX*/);
+ packet(0x092b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0947,clif->pDull/*,XXX*/);
+ packet(0x0954,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0955,clif->pMoveFromKafra,2,4);
+ packet(0x0958,clif->pDropItem,2,4);
+ packet(0x0961,clif->pFriendsListAdd,2);
+ packet(0x0963,clif->pStoragePassword,0);
+ packet(0x0967,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-12-17aRagexe
#if PACKETVER == 20141217
- packet(0x0360,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0860,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0875,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0878,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0879,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0883,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0889,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x088e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a1,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a8,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08ab,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ac,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0919,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0924,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0930,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0932,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0933,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0936,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0939,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0940,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0944,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0945,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0948,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0960,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x0360,clif->pMoveToKafra,2,4);
+ packet(0x085b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0860,clif->pStoragePassword,0);
+ packet(0x086c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0875,clif->pMoveFromKafra,2,4);
+ packet(0x0878,clif->pWalkToXY,2);
+ packet(0x0879,clif->pHomMenu,2,4);
+ packet(0x0883,clif->pTakeItem,2);
+ packet(0x0889,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x088e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089f,clif->pDropItem,2,4);
+ packet(0x08a1,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x08a8,clif->pPartyInvite2,2);
+ packet(0x08ab,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ac,clif->pTickSend,2);
+ packet(0x0919,clif->pChangeDir,2,4);
+ packet(0x091f,clif->pUseSkillToId,2,4,6);
+ packet(0x0924,clif->pActionRequest,2,6);
+ packet(0x0930,clif->pReqCloseBuyingStore,0);
+ packet(0x0932,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0933,clif->pFriendsListAdd,2);
+ packet(0x0936,clif->pGetCharNameRequest,2);
+ packet(0x0939,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0940,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0944,clif->pReqClickBuyingStore,2);
+ packet(0x0945,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0948,clif->pSolveCharName,2);
+ packet(0x0960,clif->pDull/*,XXX*/);
#endif
// 2014-12-24aRagexe
#if PACKETVER == 20141224
- packet(0x0361,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0438,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0835,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0865,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0870,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x089b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a3,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08ac,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0930,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0932,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0945,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0946,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0949,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x094f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0950,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0953,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0956,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x0361,clif->pMoveToKafra,2,4);
+ packet(0x0438,clif->pFriendsListAdd,2);
+ packet(0x0835,clif->pItemListWindowSelected,2,4,8);
+ packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085e,clif->pReqCloseBuyingStore,0);
+ packet(0x0865,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x086c,clif->pReqClickBuyingStore,2);
+ packet(0x0870,clif->pChangeDir,2,4);
+ packet(0x087a,clif->pTakeItem,2);
+ packet(0x087b,clif->pDull/*,XXX*/);
+ packet(0x089a,clif->pWalkToXY,2);
+ packet(0x089b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a3,clif->pPartyInvite2,2);
+ packet(0x08a4,clif->pStoragePassword,0);
+ packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08ac,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0930,clif->pDropItem,2,4);
+ packet(0x0932,clif->pDull/*,XXX*/);
+ packet(0x093a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0945,clif->pTickSend,2);
+ packet(0x0946,clif->pGetCharNameRequest,2);
+ packet(0x0949,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x094f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0950,clif->pSolveCharName,2);
+ packet(0x0953,clif->pMoveFromKafra,2,4);
+ packet(0x0956,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095b,clif->pUseSkillToId,2,4,6);
+ packet(0x095f,clif->pActionRequest,2,6);
#endif
// 2014-12-31aRagexe
#if PACKETVER == 20141231
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086d,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-01-07aRagexe
#if PACKETVER == 20150107
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0895,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0943,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0947,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087c,clif->pFriendsListAdd,2);
+ packet(0x0895,clif->pStoragePassword,0);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0943,clif->pChangeDir,2,4);
+ packet(0x0947,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-01-14aRagexe, 2015-01-14bRagexe, 2015-01-14cRagexe, 2015-01-14dRagexe
#if PACKETVER == 20150114
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0868,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0899,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0946,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0955,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0957,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pUseSkillToId,2,4,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0868,clif->pFriendsListAdd,2);
+ packet(0x0899,clif->pHomMenu,2,4);
+ packet(0x0946,clif->pStoragePassword,0);
+ packet(0x0955,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-01-21aRagexe
#if PACKETVER == 20150121
- packet(0x0281,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ab,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0918,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0919,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0955,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0959,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0963,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0967,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087c,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pFriendsListAdd,2);
+ packet(0x089d,clif->pHomMenu,2,4);
+ packet(0x089e,clif->pChangeDir,2,4);
+ packet(0x08ab,clif->pStoragePassword,0);
+ packet(0x0918,clif->pDull/*,XXX*/);
+ packet(0x0919,clif->pDropItem,2,4);
+ packet(0x091d,clif->pTakeItem,2);
+ packet(0x0955,clif->pMoveToKafra,2,4);
+ packet(0x0959,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0963,clif->pMoveFromKafra,2,4);
+ packet(0x0967,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-01-28aRagexe, 2015-01-29aRagexe, 2015-01-30aRagexe
#if PACKETVER == 20150128 || \
PACKETVER == 20150129 || \
PACKETVER == 20150130
- packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x023b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0368,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0838,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0864,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0870,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0874,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0875,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x087d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0888,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ab,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0929,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0938,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0944,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0963,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0968,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x023b,clif->pChangeDir,2,4);
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0368,clif->pDull/*,XXX*/);
+ packet(0x0838,clif->pActionRequest,2,6);
+ packet(0x085a,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0864,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086d,clif->pMoveToKafra,2,4);
+ packet(0x0870,clif->pWalkToXY,2);
+ packet(0x0874,clif->pGetCharNameRequest,2);
+ packet(0x0875,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x087d,clif->pSolveCharName,2);
+ packet(0x0888,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ab,clif->pTakeItem,2);
+ packet(0x091f,clif->pTickSend,2);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x0929,clif->pStoragePassword,0);
+ packet(0x092d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0938,clif->pDull/*,XXX*/);
+ packet(0x093a,clif->pUseSkillToId,2,4,6);
+ packet(0x0944,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094d,clif->pReqCloseBuyingStore,0);
+ packet(0x094e,clif->pMoveFromKafra,2,4);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0963,clif->pFriendsListAdd,2);
+ packet(0x0968,clif->pDropItem,2,4);
#endif
// 2015-02-04aRagexe
#if PACKETVER == 20150204
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0966,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0966,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-02-11aRagexe
#if PACKETVER == 20150211
- packet(0x023b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0368,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0369,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0436,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0437,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x07e4,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0817,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0819,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0835,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0862,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0863,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0873,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x087f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0882,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0883,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0885,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0886,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a0,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08aa,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0919,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0920,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0951,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0957,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0958,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x023b,clif->pDull/*,XXX*/);
+ packet(0x0368,clif->pHomMenu,2,4);
+ packet(0x0369,clif->pChangeDir,2,4);
+ packet(0x0436,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0437,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x07e4,clif->pDropItem,2,4);
+ packet(0x0817,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0819,clif->pReqCloseBuyingStore,0);
+ packet(0x0835,clif->pDull/*,XXX*/);
+ packet(0x0862,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0863,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pTakeItem,2);
+ packet(0x0873,clif->pWalkToXY,2);
+ packet(0x087b,clif->pGetCharNameRequest,2);
+ packet(0x087f,clif->pStoragePassword,0);
+ packet(0x0882,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0883,clif->pMoveFromKafra,2,4);
+ packet(0x0885,clif->pTickSend,2);
+ packet(0x0886,clif->pReqClickBuyingStore,2);
+ packet(0x089c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a0,clif->pFriendsListAdd,2);
+ packet(0x08a4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08aa,clif->pActionRequest,2,6);
+ packet(0x0919,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0920,clif->pSolveCharName,2);
+ packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0951,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0957,clif->pPartyInvite2,2);
+ packet(0x0958,clif->pMoveToKafra,2,4);
#endif
// 2015-02-17aRagexe
#if PACKETVER == 20150217
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085b,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-02-25eRagexe, 2015-02-25fRagexe, 2015-02-25gRagexe, 2015-02-25iRagexe, 2015-02-25jRagexe, 2015-02-26aRagexe
#if PACKETVER == 20150225 || \
PACKETVER == 20150226
- packet(0x02c4,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0362,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0896,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0948,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0952,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0955,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x02c4,clif->pReqClickBuyingStore,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pPartyInvite2,2);
+ packet(0x0362,clif->pReqCloseBuyingStore,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pGetCharNameRequest,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pTakeItem,2);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089b,clif->pDull/*,XXX*/);
+ packet(0x089c,clif->pMoveToKafra,2,4);
+ packet(0x08a4,clif->pStoragePassword,0);
+ packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x0948,clif->pDropItem,2,4);
+ packet(0x094f,clif->pHomMenu,2,4);
+ packet(0x0952,clif->pMoveFromKafra,2,4);
+ packet(0x0955,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2015-03-04aRagexe
#if PACKETVER == 20150304
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x086d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0879,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0892,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0947,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0960,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0961,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pTakeItem,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pMoveFromKafra,2,4);
+ packet(0x086d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0879,clif->pChangeDir,2,4);
+ packet(0x087e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0892,clif->pStoragePassword,0);
+ packet(0x089a,clif->pPartyInvite2,2);
+ packet(0x093a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0947,clif->pMoveToKafra,2,4);
+ packet(0x095d,clif->pDull/*,XXX*/);
+ packet(0x0960,clif->pFriendsListAdd,2);
+ packet(0x0961,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-03-11aRagexe, 2015-03-11bRagexe
#if PACKETVER == 20150311
- packet(0x023b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0360,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0438,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0838,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x087b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0883,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0886,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0888,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0896,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a1,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a3,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a5,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a6,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0928,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x092e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0943,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0946,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0957,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0958,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0963,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0964,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x023b,clif->pHomMenu,2,4);
+ packet(0x0360,clif->pReqCloseBuyingStore,0);
+ packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0438,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0838,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086a,clif->pGetCharNameRequest,2);
+ packet(0x086c,clif->pStoragePassword,0);
+ packet(0x087b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0883,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0886,clif->pWalkToXY,2);
+ packet(0x0888,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0896,clif->pActionRequest,2,6);
+ packet(0x08a1,clif->pUseSkillToId,2,4,6);
+ packet(0x08a3,clif->pTakeItem,2);
+ packet(0x08a5,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a6,clif->pFriendsListAdd,2);
+ packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0928,clif->pChangeDir,2,4);
+ packet(0x092a,clif->pDull/*,XXX*/);
+ packet(0x092e,clif->pMoveFromKafra,2,4);
+ packet(0x093b,clif->pPartyInvite2,2);
+ packet(0x0943,clif->pSolveCharName,2);
+ packet(0x0946,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pReqClickBuyingStore,2);
+ packet(0x0958,clif->pTickSend,2);
+ packet(0x095b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0963,clif->pDropItem,2,4);
+ packet(0x0964,clif->pMoveToKafra,2,4);
#endif
// 2015-03-18aRagexe, 2015-03-18bRagexe
#if PACKETVER == 20150318
- packet(0x0202,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x023b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x07e4,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0802,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0862,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0873,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0885,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0889,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x088c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x089c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a4,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x091d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0920,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0927,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0928,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0936,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0937,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0938,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0951,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0958,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0959,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0960,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0202,clif->pDull/*,XXX*/);
+ packet(0x023b,clif->pTickSend,2);
+ packet(0x0281,clif->pDull/*,XXX*/);
+ packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x07e4,clif->pFriendsListAdd,2);
+ packet(0x0802,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0862,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x0873,clif->pStoragePassword,0);
+ packet(0x0885,clif->pReqCloseBuyingStore,0);
+ packet(0x0889,clif->pActionRequest,2,6);
+ packet(0x088c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x089c,clif->pMoveToKafra,2,4);
+ packet(0x08a4,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x091d,clif->pMoveFromKafra,2,4);
+ packet(0x0920,clif->pDropItem,2,4);
+ packet(0x0927,clif->pChangeDir,2,4);
+ packet(0x0928,clif->pTakeItem,2);
+ packet(0x0936,clif->pUseSkillToId,2,4,6);
+ packet(0x0937,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0938,clif->pPartyInvite2,2);
+ packet(0x093a,clif->pWalkToXY,2);
+ packet(0x093c,clif->pSolveCharName,2);
+ packet(0x094c,clif->pHomMenu,2,4);
+ packet(0x0951,clif->pGetCharNameRequest,2);
+ packet(0x0958,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0959,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0960,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2015-03-25aRagexe
#if PACKETVER == 20150325
- packet(0x0202,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0365,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0438,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0819,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0883,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0885,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0891,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0893,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0897,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0899,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a1,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a7,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0919,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0931,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0932,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0938,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0947,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0950,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0954,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0969,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
+ packet(0x0202,clif->pPartyInvite2,2);
+ packet(0x0363,clif->pDropItem,2,4);
+ packet(0x0365,clif->pUseSkillToId,2,4,6);
+ packet(0x0438,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0819,clif->pReqClickBuyingStore,2);
+ packet(0x085d,clif->pSolveCharName,2);
+ packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087c,clif->pMoveToKafra,2,4);
+ packet(0x087e,clif->pChangeDir,2,4);
+ packet(0x0883,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0885,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0891,clif->pGetCharNameRequest,2);
+ packet(0x0893,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0899,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a1,clif->pActionRequest,2,6);
+ packet(0x08a7,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0919,clif->pStoragePassword,0);
+ packet(0x092c,clif->pTakeItem,2);
+ packet(0x0931,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0932,clif->pWalkToXY,2);
+ packet(0x0938,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pFriendsListAdd,2);
+ packet(0x0947,clif->pReqCloseBuyingStore,0);
+ packet(0x094a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0950,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0954,clif->pTickSend,2);
+ packet(0x0969,clif->pMoveFromKafra,2,4);
#endif
// 2015-04-01aRagexe
#if PACKETVER == 20150401
- packet(0x0362,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0367,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0437,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x083c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0875,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0895,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0898,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a5,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0924,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0938,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0939,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x093b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0946,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0949,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0953,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0964,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x0362,clif->pActionRequest,2,6);
+ packet(0x0367,clif->pGetCharNameRequest,2);
+ packet(0x0437,clif->pReqClickBuyingStore,2);
+ packet(0x083c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086f,clif->pWalkToXY,2);
+ packet(0x0875,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087e,clif->pDull/*,XXX*/);
+ packet(0x088c,clif->pDropItem,2,4);
+ packet(0x088f,clif->pTickSend,2);
+ packet(0x0895,clif->pMoveFromKafra,2,4);
+ packet(0x0898,clif->pHomMenu,2,4);
+ packet(0x089c,clif->pStoragePassword,0);
+ packet(0x08a5,clif->pMoveToKafra,2,4);
+ packet(0x091b,clif->pPartyInvite2,2);
+ packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0924,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0938,clif->pReqCloseBuyingStore,0);
+ packet(0x0939,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x093b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0946,clif->pDull/*,XXX*/);
+ packet(0x0949,clif->pTakeItem,2);
+ packet(0x094b,clif->pUseSkillToId,2,4,6);
+ packet(0x0953,clif->pFriendsListAdd,2);
+ packet(0x095f,clif->pSolveCharName,2);
+ packet(0x0964,clif->pChangeDir,2,4);
#endif
// 2015-04-08aRagexe
#if PACKETVER == 20150408
- packet(0x0819,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x085a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0865,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0868,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x086b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0878,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x087f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0888,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0891,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0898,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a2,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a4,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0922,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0946,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0957,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0959,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0963,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x0819,clif->pMoveFromKafra,2,4);
+ packet(0x085a,clif->pTickSend,2);
+ packet(0x085c,clif->pUseSkillToId,2,4,6);
+ packet(0x085e,clif->pHomMenu,2,4);
+ packet(0x0865,clif->pActionRequest,2,6);
+ packet(0x0868,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x086b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0878,clif->pPartyInvite2,2);
+ packet(0x087e,clif->pGetCharNameRequest,2);
+ packet(0x087f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0888,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pStoragePassword,0);
+ packet(0x0891,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0898,clif->pDropItem,2,4);
+ packet(0x089c,clif->pWalkToXY,2);
+ packet(0x08a2,clif->pSolveCharName,2);
+ packet(0x08a4,clif->pFriendsListAdd,2);
+ packet(0x091b,clif->pDull/*,XXX*/);
+ packet(0x091e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0922,clif->pChangeDir,2,4);
+ packet(0x092a,clif->pDull/*,XXX*/);
+ packet(0x0946,clif->pReqCloseBuyingStore,0);
+ packet(0x094f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0955,clif->pReqClickBuyingStore,2);
+ packet(0x0957,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0959,clif->pTakeItem,2);
+ packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0963,clif->pSearchStoreInfoNextPage,0);
#endif
// 2015-04-15aRagexe
#if PACKETVER == 20150415
- packet(0x0361,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0364,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0366,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0368,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0802,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0817,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0835,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0867,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0868,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0869,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0880,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0891,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0898,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a0,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0922,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x093c,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0941,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0946,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0953,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0960,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0361,clif->pMoveToKafra,2,4);
+ packet(0x0364,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0366,clif->pWalkToXY,2);
+ packet(0x0368,clif->pReqClickBuyingStore,2);
+ packet(0x0802,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0817,clif->pTakeItem,2);
+ packet(0x0835,clif->pDropItem,2,4);
+ packet(0x085e,clif->pDull/*,XXX*/);
+ packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0867,clif->pPartyInvite2,2);
+ packet(0x0868,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0869,clif->pHomMenu,2,4);
+ packet(0x086c,clif->pActionRequest,2,6);
+ packet(0x0880,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x0891,clif->pGetCharNameRequest,2);
+ packet(0x0898,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a0,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0922,clif->pMoveFromKafra,2,4);
+ packet(0x092e,clif->pSolveCharName,2);
+ packet(0x093c,clif->pTickSend,2);
+ packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0941,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0946,clif->pReqCloseBuyingStore,0);
+ packet(0x094d,clif->pChangeDir,2,4);
+ packet(0x0953,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095c,clif->pFriendsListAdd,2);
+ packet(0x0960,clif->pStoragePassword,0);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2015-04-22aRagexe
#if PACKETVER == 20150422
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0955,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0955,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-04-29aRagexe
#if PACKETVER == 20150429
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0886,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0894,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0899,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a8,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ad,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0943,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pChangeDir,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pStoragePassword,0);
+ packet(0x086a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0886,clif->pPartyInvite2,2);
+ packet(0x088f,clif->pHomMenu,2,4);
+ packet(0x0894,clif->pDropItem,2,4);
+ packet(0x0899,clif->pMoveToKafra,2,4);
+ packet(0x089f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08a8,clif->pDull/*,XXX*/);
+ packet(0x08ad,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x093d,clif->pFriendsListAdd,2);
+ packet(0x0943,clif->pTakeItem,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-05-07bRagexe, 2015-05-07cRagexe
#if PACKETVER == 20150507
- packet(0x023b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0864,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0887,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0889,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0924,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x093b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0941,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0942,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0953,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0955,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0958,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pHomMenu,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pReqCloseBuyingStore,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pTakeItem,2);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pMoveToKafra,2,4);
+ packet(0x0864,clif->pPartyInvite2,2);
+ packet(0x0887,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0924,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x093b,clif->pChangeDir,2,4);
+ packet(0x0941,clif->pMoveFromKafra,2,4);
+ packet(0x0942,clif->pDull/*,XXX*/);
+ packet(0x0953,clif->pStoragePassword,0);
+ packet(0x0955,clif->pDropItem,2,4);
+ packet(0x0958,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-05-13aRagexe
#if PACKETVER == 20150513
- packet(0x022d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x02c4,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0864,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0883,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a8,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0923,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0924,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0927,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0960,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pReqCloseBuyingStore,0);
+ packet(0x02c4,clif->pDull/*,XXX*/);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pHomMenu,2,4);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0864,clif->pMoveFromKafra,2,4);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x0883,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pDropItem,2,4);
+ packet(0x08a8,clif->pFriendsListAdd,2);
+ packet(0x0923,clif->pStoragePassword,0);
+ packet(0x0924,clif->pChangeDir,2,4);
+ packet(0x0927,clif->pDull/*,XXX*/);
+ packet(0x094a,clif->pPartyInvite2,2);
+ packet(0x0958,clif->pTakeItem,2);
+ packet(0x0960,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-05-20aRagexe
#if PACKETVER == 20150520
- packet(0x0202,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0865,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0868,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0880,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0882,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a2,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08ad,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0924,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0931,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0936,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x093d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0940,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0945,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0960,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0961,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0202,clif->pTickSend,2);
+ packet(0x0361,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pReqCloseBuyingStore,0);
+ packet(0x085e,clif->pReqClickBuyingStore,2);
+ packet(0x0865,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0868,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0880,clif->pPartyInvite2,2);
+ packet(0x0882,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089c,clif->pStoragePassword,0);
+ packet(0x089e,clif->pDropItem,2,4);
+ packet(0x08a2,clif->pGetCharNameRequest,2);
+ packet(0x08ad,clif->pChangeDir,2,4);
+ packet(0x091c,clif->pTakeItem,2);
+ packet(0x091d,clif->pActionRequest,2,6);
+ packet(0x0924,clif->pMoveFromKafra,2,4);
+ packet(0x092b,clif->pWalkToXY,2);
+ packet(0x0931,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0936,clif->pUseSkillToId,2,4,6);
+ packet(0x093d,clif->pFriendsListAdd,2);
+ packet(0x0940,clif->pDull/*,XXX*/);
+ packet(0x0945,clif->pSolveCharName,2);
+ packet(0x094e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095b,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0960,clif->pDull/*,XXX*/);
+ packet(0x0961,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2015-05-27aRagexe
#if PACKETVER == 20150527
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x083c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0940,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pUseSkillToId,2,4,6);
+ packet(0x083c,clif->pStoragePassword,0);
+ packet(0x0940,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-06-03aRagexe
#if PACKETVER == 20150603
- packet(0x0361,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0437,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0811,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0819,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0860,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0864,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0867,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0873,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0877,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0881,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a1,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ad,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0922,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0956,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0960,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0969,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x096a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
+ packet(0x0361,clif->pPartyInvite2,2);
+ packet(0x0437,clif->pDull/*,XXX*/);
+ packet(0x0811,clif->pChangeDir,2,4);
+ packet(0x0819,clif->pReqClickBuyingStore,2);
+ packet(0x0860,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0864,clif->pFriendsListAdd,2);
+ packet(0x0867,clif->pMoveToKafra,2,4);
+ packet(0x086a,clif->pMoveFromKafra,2,4);
+ packet(0x0873,clif->pActionRequest,2,6);
+ packet(0x0877,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0881,clif->pGetCharNameRequest,2);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pDropItem,2,4);
+ packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089e,clif->pTickSend,2);
+ packet(0x08a1,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ad,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091b,clif->pSolveCharName,2);
+ packet(0x0922,clif->pStoragePassword,0);
+ packet(0x092d,clif->pTakeItem,2);
+ packet(0x093b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0955,clif->pHomMenu,2,4);
+ packet(0x0956,clif->pReqCloseBuyingStore,0);
+ packet(0x0960,clif->pUseSkillToId,2,4,6);
+ packet(0x0969,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x096a,clif->pWalkToXY,2);
#endif
// 2015-06-10aRagexe
#if PACKETVER == 20150610
- packet(0x022d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0438,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07e4,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0870,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0872,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0877,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0884,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0885,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0888,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x088d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0897,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a0,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08ac,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0925,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0932,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0940,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0946,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0949,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0957,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0964,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x022d,clif->pReqCloseBuyingStore,0);
+ packet(0x0438,clif->pItemListWindowSelected,2,4,8);
+ packet(0x07e4,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pDull/*,XXX*/);
+ packet(0x0870,clif->pPartyInvite2,2);
+ packet(0x0872,clif->pSolveCharName,2);
+ packet(0x0877,clif->pReqClickBuyingStore,2);
+ packet(0x087e,clif->pGetCharNameRequest,2);
+ packet(0x0884,clif->pMoveFromKafra,2,4);
+ packet(0x0885,clif->pHomMenu,2,4);
+ packet(0x0888,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088c,clif->pMoveToKafra,2,4);
+ packet(0x088d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x088f,clif->pWalkToXY,2);
+ packet(0x0897,clif->pFriendsListAdd,2);
+ packet(0x08a0,clif->pStoragePassword,0);
+ packet(0x08ac,clif->pDropItem,2,4);
+ packet(0x0925,clif->pTakeItem,2);
+ packet(0x092b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x0932,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093e,clif->pActionRequest,2,6);
+ packet(0x0940,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0946,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0949,clif->pUseSkillToId,2,4,6);
+ packet(0x0957,clif->pTickSend,2);
+ packet(0x095d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0964,clif->pChangeDir,2,4);
#endif
// 2015-06-17aRagexe, 2015-06-18aRagexe
#if PACKETVER == 20150617 || \
PACKETVER == 20150618
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0362,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0365,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0811,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x086a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0870,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0886,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0894,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pTakeItem,2);
+ packet(0x0362,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pStoragePassword,0);
+ packet(0x0365,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0811,clif->pDull/*,XXX*/);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pMoveFromKafra,2,4);
+ packet(0x086a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086b,clif->pChangeDir,2,4);
+ packet(0x0870,clif->pPartyInvite2,2);
+ packet(0x087a,clif->pMoveToKafra,2,4);
+ packet(0x0886,clif->pHomMenu,2,4);
+ packet(0x0894,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x094e,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-06-24aRagexe
#if PACKETVER == 20150624
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0365,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0940,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0966,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0365,clif->pHomMenu,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pStoragePassword,0);
+ packet(0x0940,clif->pMoveFromKafra,2,4);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x0966,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-07-01bRagexe, 2015-07-02aRagexe
#if PACKETVER == 20150701 || \
PACKETVER == 20150702
- packet(0x023b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x07e4,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0802,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x087d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x087e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0883,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0893,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a0,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a4,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a5,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a6,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08ad,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0919,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0923,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0928,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0946,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0954,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0956,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0958,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x095f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0960,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0968,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x023b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pSearchStoreInfoNextPage,0);
+ packet(0x07e4,clif->pMoveFromKafra,2,4);
+ packet(0x0802,clif->pGetCharNameRequest,2);
+ packet(0x086d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x087d,clif->pTickSend,2);
+ packet(0x087e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0883,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088e,clif->pReqCloseBuyingStore,0);
+ packet(0x0893,clif->pDull/*,XXX*/);
+ packet(0x08a0,clif->pDropItem,2,4);
+ packet(0x08a4,clif->pReqClickBuyingStore,2);
+ packet(0x08a5,clif->pPartyInvite2,2);
+ packet(0x08a6,clif->pUseSkillToId,2,4,6);
+ packet(0x08ad,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0919,clif->pStoragePassword,0);
+ packet(0x0923,clif->pDull/*,XXX*/);
+ packet(0x0928,clif->pMoveToKafra,2,4);
+ packet(0x092c,clif->pWalkToXY,2);
+ packet(0x093e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0946,clif->pTakeItem,2);
+ packet(0x094e,clif->pSolveCharName,2);
+ packet(0x0954,clif->pHomMenu,2,4);
+ packet(0x0956,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0958,clif->pActionRequest,2,6);
+ packet(0x095f,clif->pFriendsListAdd,2);
+ packet(0x0960,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0968,clif->pChangeDir,2,4);
#endif
// 2015-07-08cRagexe
#if PACKETVER == 20150708
- packet(0x022d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0368,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0872,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0884,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x089d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a5,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ad,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x092a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSolveCharName,2);
+ packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pPartyInvite2,2);
+ packet(0x0368,clif->pHomMenu,2,4);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085e,clif->pMoveToKafra,2,4);
+ packet(0x0872,clif->pTakeItem,2);
+ packet(0x087f,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pWalkToXY,2);
+ packet(0x089d,clif->pChangeDir,2,4);
+ packet(0x08a5,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ad,clif->pStoragePassword,0);
+ packet(0x091f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092a,clif->pMoveFromKafra,2,4);
+ packet(0x093c,clif->pFriendsListAdd,2);
+ packet(0x095b,clif->pDropItem,2,4);
+ packet(0x0962,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-07-15aRagexe
#if PACKETVER == 20150715
- packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0362,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0364,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0436,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0437,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0438,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x083c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0873,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0879,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x087f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0886,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0895,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0897,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0899,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x089a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ac,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0917,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0944,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0950,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0956,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0961,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0362,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0364,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0436,clif->pSolveCharName,2);
+ packet(0x0437,clif->pUseSkillToId,2,4,6);
+ packet(0x0438,clif->pWalkToXY,2);
+ packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x083c,clif->pActionRequest,2,6);
+ packet(0x085c,clif->pGetCharNameRequest,2);
+ packet(0x086f,clif->pMoveFromKafra,2,4);
+ packet(0x0873,clif->pTickSend,2);
+ packet(0x0879,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087c,clif->pDropItem,2,4);
+ packet(0x087f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0886,clif->pDull/*,XXX*/);
+ packet(0x0895,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0897,clif->pPartyInvite2,2);
+ packet(0x0899,clif->pReqCloseBuyingStore,0);
+ packet(0x089a,clif->pTakeItem,2);
+ packet(0x08a4,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pChangeDir,2,4);
+ packet(0x0917,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093e,clif->pHomMenu,2,4);
+ packet(0x0944,clif->pFriendsListAdd,2);
+ packet(0x0950,clif->pReqClickBuyingStore,2);
+ packet(0x0956,clif->pStoragePassword,0);
+ packet(0x0961,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2015-07-22bRagexe
#if PACKETVER == 20150722
- packet(0x023b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0281,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0360,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0361,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0368,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0811,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0869,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0878,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x087d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0880,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0884,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0899,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a8,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0919,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0921,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0925,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x092e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x094c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0951,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0958,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x023b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0281,clif->pGetCharNameRequest,2);
+ packet(0x0360,clif->pActionRequest,2,6);
+ packet(0x0361,clif->pDropItem,2,4);
+ packet(0x0368,clif->pPartyInvite2,2);
+ packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0811,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0815,clif->pReqCloseBuyingStore,0);
+ packet(0x0817,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0869,clif->pTakeItem,2);
+ packet(0x0878,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x087d,clif->pWalkToXY,2);
+ packet(0x087e,clif->pSolveCharName,2);
+ packet(0x0880,clif->pReqClickBuyingStore,2);
+ packet(0x0884,clif->pHomMenu,2,4);
+ packet(0x088d,clif->pTickSend,2);
+ packet(0x0899,clif->pMoveFromKafra,2,4);
+ packet(0x08a8,clif->pChangeDir,2,4);
+ packet(0x0919,clif->pDull/*,XXX*/);
+ packet(0x0921,clif->pMoveToKafra,2,4);
+ packet(0x0925,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x092e,clif->pFriendsListAdd,2);
+ packet(0x093c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x094c,clif->pUseSkillToId,2,4,6);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0951,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0958,clif->pStoragePassword,0);
#endif
// 2015-07-29aRagexe
#if PACKETVER == 20150729
- packet(0x0437,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0438,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x085b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0860,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0870,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0880,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0881,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0886,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a3,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ac,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08ad,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0920,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x092f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x093a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0955,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0961,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x0437,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0438,clif->pHomMenu,2,4);
+ packet(0x085b,clif->pDull/*,XXX*/);
+ packet(0x0860,clif->pTakeItem,2);
+ packet(0x086c,clif->pMoveToKafra,2,4);
+ packet(0x086d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086e,clif->pWalkToXY,2);
+ packet(0x086f,clif->pMoveFromKafra,2,4);
+ packet(0x0870,clif->pGetCharNameRequest,2);
+ packet(0x0880,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0881,clif->pActionRequest,2,6);
+ packet(0x0886,clif->pSolveCharName,2);
+ packet(0x089a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089b,clif->pFriendsListAdd,2);
+ packet(0x08a3,clif->pDull/*,XXX*/);
+ packet(0x08a4,clif->pChangeDir,2,4);
+ packet(0x08ac,clif->pPartyInvite2,2);
+ packet(0x08ad,clif->pReqClickBuyingStore,2);
+ packet(0x0920,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x092f,clif->pUseSkillToId,2,4,6);
+ packet(0x093a,clif->pTickSend,2);
+ packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x094f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0955,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0961,clif->pStoragePassword,0);
+ packet(0x096a,clif->pReqCloseBuyingStore,0);
#endif
// 2015-08-05aRagexe
#if PACKETVER == 20150805
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x088a,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-08-12aRagexe
#if PACKETVER == 20150812
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087f,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-08-19aRagexe
#if PACKETVER == 20150819
- packet(0x0202,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x022d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0281,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x085d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0865,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0871,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0888,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0919,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0927,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0961,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0967,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pItemListWindowSelected,2,4,8);
+ packet(0x022d,clif->pUseSkillToId,2,4,6);
+ packet(0x0281,clif->pTakeItem,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x085d,clif->pMoveFromKafra,2,4);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x0865,clif->pFriendsListAdd,2);
+ packet(0x0871,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0888,clif->pHomMenu,2,4);
+ packet(0x0919,clif->pMoveToKafra,2,4);
+ packet(0x091e,clif->pStoragePassword,0);
+ packet(0x0927,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x0961,clif->pPartyInvite2,2);
+ packet(0x0967,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-08-26aRagexe, 2015-08-26bRagexe
#if PACKETVER == 20150826
- packet(0x0362,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0436,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x07ec,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0819,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0861,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0865,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x088b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0890,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0891,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a0,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a1,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0924,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0928,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x092e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0945,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0951,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0959,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0964,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0968,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0969,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x0362,clif->pStoragePassword,0);
+ packet(0x0368,clif->pMoveFromKafra,2,4);
+ packet(0x0436,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x07ec,clif->pActionRequest,2,6);
+ packet(0x0819,clif->pReqClickBuyingStore,2);
+ packet(0x0861,clif->pDull/*,XXX*/);
+ packet(0x0865,clif->pWalkToXY,2);
+ packet(0x086b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087b,clif->pSolveCharName,2);
+ packet(0x088b,clif->pPartyInvite2,2);
+ packet(0x088d,clif->pFriendsListAdd,2);
+ packet(0x0890,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0891,clif->pUseSkillToId,2,4,6);
+ packet(0x08a0,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a1,clif->pMoveToKafra,2,4);
+ packet(0x08a4,clif->pTakeItem,2);
+ packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0924,clif->pDropItem,2,4);
+ packet(0x0928,clif->pReqCloseBuyingStore,0);
+ packet(0x092e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093b,clif->pGetCharNameRequest,2);
+ packet(0x0945,clif->pHomMenu,2,4);
+ packet(0x094f,clif->pChangeDir,2,4);
+ packet(0x0951,clif->pTickSend,2);
+ packet(0x0959,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0964,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0968,clif->pDull/*,XXX*/);
+ packet(0x0969,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2015-09-02aRagexe
#if PACKETVER == 20150902
- packet(0x023b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0367,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0802,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x083c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0863,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0886,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0887,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0889,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x088d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0892,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0897,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0899,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a9,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0923,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0928,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0941,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0947,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x094f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0953,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0960,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x023b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0367,clif->pTickSend,2);
+ packet(0x0802,clif->pStoragePassword,0);
+ packet(0x083c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085b,clif->pActionRequest,2,6);
+ packet(0x085d,clif->pSolveCharName,2);
+ packet(0x0863,clif->pUseSkillToId,2,4,6);
+ packet(0x086f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087b,clif->pWalkToXY,2);
+ packet(0x087f,clif->pDull/*,XXX*/);
+ packet(0x0886,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0887,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pReqCloseBuyingStore,0);
+ packet(0x088d,clif->pMoveFromKafra,2,4);
+ packet(0x0892,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0897,clif->pMoveToKafra,2,4);
+ packet(0x0899,clif->pGetCharNameRequest,2);
+ packet(0x08a9,clif->pDropItem,2,4);
+ packet(0x0923,clif->pFriendsListAdd,2);
+ packet(0x0928,clif->pTakeItem,2);
+ packet(0x092a,clif->pHomMenu,2,4);
+ packet(0x092d,clif->pPartyInvite2,2);
+ packet(0x0941,clif->pChangeDir,2,4);
+ packet(0x0947,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x094f,clif->pReqClickBuyingStore,2);
+ packet(0x0953,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0960,clif->pSearchStoreInfoNextPage,0);
#endif
// 2015-09-09aRagexe
#if PACKETVER == 20150909
- packet(0x023b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0361,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0365,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0437,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0861,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0871,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0883,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0886,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0895,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0928,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0940,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0941,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0962,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x023b,clif->pActionRequest,2,6);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqCloseBuyingStore,0);
+ packet(0x0361,clif->pGetCharNameRequest,2);
+ packet(0x0365,clif->pWalkToXY,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pStoragePassword,0);
+ packet(0x0437,clif->pMoveFromKafra,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0861,clif->pDull/*,XXX*/);
+ packet(0x0871,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0883,clif->pTakeItem,2);
+ packet(0x0886,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088f,clif->pPartyInvite2,2);
+ packet(0x0895,clif->pFriendsListAdd,2);
+ packet(0x0928,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pReqClickBuyingStore,2);
+ packet(0x0941,clif->pHomMenu,2,4);
+ packet(0x095e,clif->pDropItem,2,4);
+ packet(0x0962,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pChangeDir,2,4);
#endif
// 2015-09-16aRagexe, 2015-09-16cRagexe
#if PACKETVER == 20150916
- packet(0x022d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0817,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0835,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0869,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0873,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0877,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0881,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ac,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0920,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0924,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x092f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0934,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0936,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0938,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0942,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0948,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0960,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0961,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0969,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x022d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0817,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0835,clif->pReqClickBuyingStore,2);
+ packet(0x085e,clif->pMoveFromKafra,2,4);
+ packet(0x0869,clif->pActionRequest,2,6);
+ packet(0x0873,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0877,clif->pWalkToXY,2);
+ packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0881,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089c,clif->pTakeItem,2);
+ packet(0x089e,clif->pFriendsListAdd,2);
+ packet(0x08ac,clif->pTickSend,2);
+ packet(0x0920,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0924,clif->pPartyInvite2,2);
+ packet(0x092e,clif->pReqCloseBuyingStore,0);
+ packet(0x092f,clif->pDropItem,2,4);
+ packet(0x0934,clif->pMoveToKafra,2,4);
+ packet(0x0936,clif->pChangeDir,2,4);
+ packet(0x0938,clif->pDull/*,XXX*/);
+ packet(0x093e,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pStoragePassword,0);
+ packet(0x0942,clif->pSolveCharName,2);
+ packet(0x0948,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x095a,clif->pGetCharNameRequest,2);
+ packet(0x0960,clif->pHomMenu,2,4);
+ packet(0x0961,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0969,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2015-09-23bRagexe, 2015-09-23cRagexe, 2015-09-23dRagexe, 2015-09-23eRagexe, 2015-09-23fRagexe
#if PACKETVER == 20150923
- packet(0x0361,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0817,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x085c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x085d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0864,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0879,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0886,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x088e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0892,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a0,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a2,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a6,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x092b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0930,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0936,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0951,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0961,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x0361,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x0817,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x085c,clif->pSolveCharName,2);
+ packet(0x085d,clif->pFriendsListAdd,2);
+ packet(0x0864,clif->pHomMenu,2,4);
+ packet(0x086e,clif->pReqCloseBuyingStore,0);
+ packet(0x086f,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pChangeDir,2,4);
+ packet(0x0879,clif->pMoveFromKafra,2,4);
+ packet(0x087f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0886,clif->pWalkToXY,2);
+ packet(0x088e,clif->pReqClickBuyingStore,2);
+ packet(0x0892,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x089b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089f,clif->pMoveToKafra,2,4);
+ packet(0x08a0,clif->pTickSend,2);
+ packet(0x08a2,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pGetCharNameRequest,2);
+ packet(0x08a6,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x092b,clif->pTakeItem,2);
+ packet(0x0930,clif->pDropItem,2,4);
+ packet(0x0936,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093b,clif->pPartyInvite2,2);
+ packet(0x0951,clif->pActionRequest,2,6);
+ packet(0x0961,clif->pItemListWindowSelected,2,4,8);
#endif
// 2015-10-01aRagexe
#if PACKETVER == 20151001
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0960,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0960,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-10-07aRagexe
#if PACKETVER == 20151007
- packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0961,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0967,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pFriendsListAdd,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x093f,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pChangeDir,2,4);
+ packet(0x0961,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0967,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-10-14bRagexe
#if PACKETVER == 20151014
- packet(0x0202,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0817,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0838,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0860,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0863,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0872,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0874,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0881,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0883,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0884,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0889,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x089f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08aa,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0930,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0934,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0944,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x094f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0956,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0961,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0964,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x0202,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0817,clif->pFriendsListAdd,2);
+ packet(0x0838,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085a,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pActionRequest,2,6);
+ packet(0x0860,clif->pDropItem,2,4);
+ packet(0x0863,clif->pChangeDir,2,4);
+ packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0872,clif->pHomMenu,2,4);
+ packet(0x0874,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0881,clif->pMoveFromKafra,2,4);
+ packet(0x0883,clif->pTickSend,2);
+ packet(0x0884,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0889,clif->pReqClickBuyingStore,2);
+ packet(0x088e,clif->pDull/*,XXX*/);
+ packet(0x089a,clif->pDull/*,XXX*/);
+ packet(0x089b,clif->pReqCloseBuyingStore,0);
+ packet(0x089f,clif->pWalkToXY,2);
+ packet(0x08aa,clif->pTakeItem,2);
+ packet(0x091c,clif->pPartyInvite2,2);
+ packet(0x091d,clif->pStoragePassword,0);
+ packet(0x0930,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0934,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0944,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x094f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0956,clif->pSolveCharName,2);
+ packet(0x095e,clif->pMoveToKafra,2,4);
+ packet(0x0961,clif->pGetCharNameRequest,2);
+ packet(0x0964,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2015-10-21aRagexe, 2015-10-22aRagexe
#if PACKETVER == 20151021 || \
PACKETVER == 20151022
- packet(0x023b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x02c4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x02c4,clif->pStoragePassword,0);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pMoveToKafra,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pChangeDir,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086a,clif->pFriendsListAdd,2);
+ packet(0x091d,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-10-28cRagexe, 2015-10-28dRagexe, 2015-10-29aRagexe
#if PACKETVER == 20151028 || \
PACKETVER == 20151029
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-11-04aRagexe
#if PACKETVER == 20151104
- packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0360,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0363,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0437,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0811,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0886,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0887,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x088d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a3,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a5,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0928,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0939,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093a,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0940,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0964,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0360,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0363,clif->pWalkToXY,2);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x0437,clif->pDropItem,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pFriendsListAdd,2);
+ packet(0x0811,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0886,clif->pTickSend,2);
+ packet(0x0887,clif->pGetCharNameRequest,2);
+ packet(0x088b,clif->pMoveToKafra,2,4);
+ packet(0x088d,clif->pHomMenu,2,4);
+ packet(0x08a3,clif->pDull/*,XXX*/);
+ packet(0x08a5,clif->pPartyInvite2,2);
+ packet(0x0928,clif->pChangeDir,2,4);
+ packet(0x0939,clif->pDull/*,XXX*/);
+ packet(0x093a,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x0940,clif->pStoragePassword,2,4,20);
+ packet(0x0964,clif->pTakeItem,2);
#endif
// 2015-11-11aRagexe, 2015-11-11bRagexe
#if PACKETVER == 20151111
- packet(0x02c4,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0862,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0871,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0885,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0942,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0958,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0966,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0967,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0969,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x02c4,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pMoveToKafra,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pPartyInvite2,2);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x0862,clif->pDropItem,2,4);
+ packet(0x0871,clif->pFriendsListAdd,2);
+ packet(0x0885,clif->pActionRequest,2,6);
+ packet(0x089c,clif->pChangeDir,2,4);
+ packet(0x0942,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094a,clif->pTakeItem,2);
+ packet(0x0958,clif->pDull/*,XXX*/);
+ packet(0x0966,clif->pMoveFromKafra,2,4);
+ packet(0x0967,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0969,clif->pStoragePassword,2,4,20);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-11-18aRagexe
#if PACKETVER == 20151118
- packet(0x022d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x035f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x088b,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08ab,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0921,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0925,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0943,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0946,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0957,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095c,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pTickSend,2);
+ packet(0x035f,clif->pHomMenu,2,4);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pPartyInvite2,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086b,clif->pMoveToKafra,2,4);
+ packet(0x088b,clif->pStoragePassword,2,4,20);
+ packet(0x08ab,clif->pMoveFromKafra,2,4);
+ packet(0x0921,clif->pFriendsListAdd,2);
+ packet(0x0925,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092e,clif->pChangeDir,2,4);
+ packet(0x092f,clif->pDull/*,XXX*/);
+ packet(0x093c,clif->pDropItem,2,4);
+ packet(0x0943,clif->pTakeItem,2);
+ packet(0x0946,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x0957,clif->pDull/*,XXX*/);
+ packet(0x095c,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-11-25bRagexe, 2015-11-25dRagexe
#if PACKETVER == 20151125
- packet(0x0361,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0365,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0366,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0368,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0438,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0802,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0838,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0863,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0883,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0884,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088c,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a9,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0920,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0939,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0951,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0956,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0957,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0959,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x0361,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0365,clif->pWalkToXY,2);
+ packet(0x0366,clif->pMoveFromKafra,2,4);
+ packet(0x0368,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x0438,clif->pTakeItem,2);
+ packet(0x0802,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0838,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x085e,clif->pGetCharNameRequest,2);
+ packet(0x085f,clif->pMoveToKafra,2,4);
+ packet(0x0863,clif->pReqCloseBuyingStore,0);
+ packet(0x0883,clif->pChangeDir,2,4);
+ packet(0x0884,clif->pStoragePassword,2,4,20);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x088c,clif->pTickSend,2);
+ packet(0x088d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089c,clif->pActionRequest,2,6);
+ packet(0x089f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a9,clif->pDropItem,2,4);
+ packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0920,clif->pSolveCharName,2);
+ packet(0x092a,clif->pUseSkillToId,2,4,6);
+ packet(0x092e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0939,clif->pReqClickBuyingStore,2);
+ packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0951,clif->pHomMenu,2,4);
+ packet(0x0956,clif->pPartyInvite2,2);
+ packet(0x0957,clif->pDull/*,XXX*/);
+ packet(0x0959,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2015-12-02aRagexe
#if PACKETVER == 20151202
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pStoragePassword,2,4,20);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-12-09aRagexe
#if PACKETVER == 20151209
- packet(0x0365,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x07e4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x07ec,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0811,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0819,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085b,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0861,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0866,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0894,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a1,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0920,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0930,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0932,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x093b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0948,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094a,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0956,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0961,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0964,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
+ packet(0x0365,clif->pWalkToXY,2);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x07e4,clif->pPartyInvite2,2);
+ packet(0x07ec,clif->pTakeItem,2);
+ packet(0x0811,clif->pTickSend,2);
+ packet(0x0819,clif->pReqCloseBuyingStore,0);
+ packet(0x085b,clif->pStoragePassword,2,4,20);
+ packet(0x085d,clif->pGetCharNameRequest,2);
+ packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0861,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0866,clif->pChangeDir,2,4);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087f,clif->pReqClickBuyingStore,2);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pDull/*,XXX*/);
+ packet(0x0894,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a1,clif->pHomMenu,2,4);
+ packet(0x0920,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092d,clif->pMoveFromKafra,2,4);
+ packet(0x0930,clif->pDropItem,2,4);
+ packet(0x0932,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x093b,clif->pMoveToKafra,2,4);
+ packet(0x0948,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094a,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0956,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095c,clif->pDull/*,XXX*/);
+ packet(0x0961,clif->pActionRequest,2,6);
+ packet(0x0964,clif->pFriendsListAdd,2);
#endif
// 2015-12-16aRagexe
#if PACKETVER == 20151216
- packet(0x022d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0361,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0364,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0436,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0864,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0865,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0874,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0885,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a2,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a9,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0947,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0949,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0954,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0960,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0966,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0968,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x022d,clif->pChangeDir,2,4);
+ packet(0x0361,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0364,clif->pDull/*,XXX*/);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0436,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pReqCloseBuyingStore,0);
+ packet(0x085b,clif->pTickSend,2);
+ packet(0x0864,clif->pMoveFromKafra,2,4);
+ packet(0x0865,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086a,clif->pDull/*,XXX*/);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0874,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0885,clif->pStoragePassword,0);
+ packet(0x088b,clif->pGetCharNameRequest,2);
+ packet(0x089d,clif->pActionRequest,2,6);
+ packet(0x089e,clif->pSolveCharName,2);
+ packet(0x08a2,clif->pWalkToXY,2);
+ packet(0x08a9,clif->pTakeItem,2);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x091d,clif->pFriendsListAdd,2);
+ packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0947,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0949,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0954,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0960,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0966,clif->pDropItem,2,4);
+ packet(0x0968,clif->pUseSkillToId,2,4,6);
#endif
// 2015-12-23bRagexe
#if PACKETVER == 20151223
- packet(0x02c4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0362,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0815,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0864,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0866,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0872,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0875,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0876,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0881,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0884,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0886,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08aa,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0918,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0920,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0923,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0924,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0965,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0967,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x02c4,clif->pMoveToKafra,2,4);
+ packet(0x0362,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pTakeItem,2);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0815,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0864,clif->pGetCharNameRequest,2);
+ packet(0x0866,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0872,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0875,clif->pUseSkillToId,2,4,6);
+ packet(0x0876,clif->pDropItem,2,4);
+ packet(0x0881,clif->pActionRequest,2,6);
+ packet(0x0884,clif->pMoveFromKafra,2,4);
+ packet(0x0886,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088d,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08aa,clif->pPartyInvite2,2);
+ packet(0x0918,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091a,clif->pReqClickBuyingStore,2);
+ packet(0x091b,clif->pFriendsListAdd,2);
+ packet(0x0920,clif->pWalkToXY,2);
+ packet(0x0923,clif->pChangeDir,2,4);
+ packet(0x0924,clif->pTickSend,2);
+ packet(0x095e,clif->pSolveCharName,2);
+ packet(0x095f,clif->pReqCloseBuyingStore,0);
+ packet(0x0965,clif->pStoragePassword,0);
+ packet(0x0967,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2015-12-30aRagexe
#if PACKETVER == 20151230
- packet(0x02c4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x07ec,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0861,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0869,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0886,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x088e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0897,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0923,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0949,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x02c4,clif->pMoveToKafra,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pDull/*,XXX*/);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x07ec,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0861,clif->pPartyInvite2,2);
+ packet(0x0869,clif->pChangeDir,2,4);
+ packet(0x0886,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x088e,clif->pFriendsListAdd,2);
+ packet(0x0897,clif->pDropItem,2,4);
+ packet(0x091d,clif->pMoveFromKafra,2,4);
+ packet(0x0923,clif->pStoragePassword,0);
+ packet(0x093a,clif->pDull/*,XXX*/);
+ packet(0x0949,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pTakeItem,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-01-06aRagexe
#if PACKETVER == 20160106
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0861,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0878,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x087a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x087f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0885,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0891,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a0,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0940,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pHomMenu,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0861,clif->pTakeItem,2);
+ packet(0x086a,clif->pDropItem,2,4);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x0878,clif->pStoragePassword,0);
+ packet(0x087a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x087f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0885,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pChangeDir,2,4);
+ packet(0x088a,clif->pPartyInvite2,2);
+ packet(0x0891,clif->pMoveFromKafra,2,4);
+ packet(0x08a0,clif->pFriendsListAdd,2);
+ packet(0x091d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0940,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-01-13aRagexe, 2016-01-13bRagexe, 2016-01-13bRagexe_2
#if PACKETVER == 20160113
- packet(0x022d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x023b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x035f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0815,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0864,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0873,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0888,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0893,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a0,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a6,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0919,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0924,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0930,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0932,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x093c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0941,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0967,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x022d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x023b,clif->pWalkToXY,2);
+ packet(0x035f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0815,clif->pStoragePassword,0);
+ packet(0x085b,clif->pChangeDir,2,4);
+ packet(0x0864,clif->pReqClickBuyingStore,2);
+ packet(0x086d,clif->pHomMenu,2,4);
+ packet(0x0873,clif->pDull/*,XXX*/);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0888,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088b,clif->pPartyInvite2,2);
+ packet(0x088c,clif->pReqCloseBuyingStore,0);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x0893,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089a,clif->pActionRequest,2,6);
+ packet(0x08a0,clif->pTickSend,2);
+ packet(0x08a6,clif->pTakeItem,2);
+ packet(0x08aa,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0919,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091b,clif->pGetCharNameRequest,2);
+ packet(0x0924,clif->pDropItem,2,4);
+ packet(0x0930,clif->pSolveCharName,2);
+ packet(0x0932,clif->pMoveToKafra,2,4);
+ packet(0x093c,clif->pMoveFromKafra,2,4);
+ packet(0x0941,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0967,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2016-01-20aRagexe
#if PACKETVER == 20160120
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0865,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0865,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-01-27cRagexe, 2016-01-27dRagexe
#if PACKETVER == 20160127
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0922,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0961,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085e,clif->pChangeDir,2,4);
+ packet(0x0922,clif->pHomMenu,2,4);
+ packet(0x095a,clif->pStoragePassword,0);
+ packet(0x0961,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-02-03aRagexe
#if PACKETVER == 20160203
- packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0437,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0811,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0835,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0872,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0873,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0918,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0940,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0947,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pFriendsListAdd,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0437,clif->pTickSend,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0811,clif->pChangeDir,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0835,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0872,clif->pHomMenu,2,4);
+ packet(0x0873,clif->pStoragePassword,0);
+ packet(0x088c,clif->pDull/*,XXX*/);
+ packet(0x0918,clif->pDull/*,XXX*/);
+ packet(0x093e,clif->pPartyInvite2,2);
+ packet(0x0940,clif->pWalkToXY,2);
+ packet(0x0947,clif->pDropItem,2,4);
+ packet(0x0954,clif->pMoveFromKafra,2,4);
+ packet(0x095a,clif->pTakeItem,2);
+ packet(0x095d,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-02-11aRagexe
#if PACKETVER == 20160211
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0870,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0886,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pStoragePassword,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086c,clif->pChangeDir,2,4);
+ packet(0x0870,clif->pFriendsListAdd,2);
+ packet(0x0886,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-02-17aRagexe
#if PACKETVER == 20160217
- packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x023b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0362,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0864,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0870,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0873,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x087a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0888,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0899,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a0,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a9,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08ac,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ad,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0920,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0926,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0941,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0966,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0967,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x023b,clif->pReqCloseBuyingStore,0);
+ packet(0x0362,clif->pChangeDir,2,4);
+ packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0864,clif->pMoveToKafra,2,4);
+ packet(0x0870,clif->pFriendsListAdd,2);
+ packet(0x0873,clif->pHomMenu,2,4);
+ packet(0x087a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0888,clif->pTickSend,2);
+ packet(0x088d,clif->pReqClickBuyingStore,2);
+ packet(0x088f,clif->pDropItem,2,4);
+ packet(0x0899,clif->pDull/*,XXX*/);
+ packet(0x08a0,clif->pMoveFromKafra,2,4);
+ packet(0x08a9,clif->pPartyInvite2,2);
+ packet(0x08ac,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ad,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091d,clif->pWalkToXY,2);
+ packet(0x0920,clif->pActionRequest,2,6);
+ packet(0x0926,clif->pUseSkillToId,2,4,6);
+ packet(0x092e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0941,clif->pTakeItem,2);
+ packet(0x094a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x095e,clif->pStoragePassword,0);
+ packet(0x0966,clif->pGetCharNameRequest,2);
+ packet(0x0967,clif->pSolveCharName,2);
+ packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2016-02-24aRagexe
#if PACKETVER == 20160224
- packet(0x022d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0364,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0436,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0861,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0884,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0885,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0888,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a9,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0920,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0929,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0936,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0938,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0961,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0364,clif->pUseSkillToId,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pMoveFromKafra,2,4);
+ packet(0x0436,clif->pDropItem,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pMoveToKafra,2,4);
+ packet(0x0861,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086b,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pActionRequest,2,6);
+ packet(0x0885,clif->pReqClickBuyingStore,2);
+ packet(0x0888,clif->pWalkToXY,2);
+ packet(0x08a9,clif->pFriendsListAdd,2);
+ packet(0x0920,clif->pDull/*,XXX*/);
+ packet(0x0929,clif->pChangeDir,2,4);
+ packet(0x092f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0936,clif->pStoragePassword,0);
+ packet(0x0938,clif->pTakeItem,2);
+ packet(0x094c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0961,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-03-02bRagexe
#if PACKETVER == 20160302
- packet(0x022d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0367,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0802,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0819,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0864,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0868,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0873,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0883,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a6,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a9,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0927,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0945,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0950,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0960,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0967,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0968,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x022d,clif->pChangeDir,2,4);
+ packet(0x0367,clif->pReqClickBuyingStore,2);
+ packet(0x0802,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0819,clif->pWalkToXY,2);
+ packet(0x085b,clif->pFriendsListAdd,2);
+ packet(0x0864,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0868,clif->pHomMenu,2,4);
+ packet(0x0873,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087d,clif->pPartyInvite2,2);
+ packet(0x0883,clif->pUseSkillToId,2,4,6);
+ packet(0x08a6,clif->pReqCloseBuyingStore,0);
+ packet(0x08a9,clif->pMoveFromKafra,2,4);
+ packet(0x091a,clif->pDropItem,2,4);
+ packet(0x0927,clif->pTakeItem,2);
+ packet(0x092d,clif->pDull/*,XXX*/);
+ packet(0x092f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0945,clif->pGetCharNameRequest,2);
+ packet(0x094e,clif->pStoragePassword,0);
+ packet(0x0950,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095a,clif->pTickSend,2);
+ packet(0x0960,clif->pMoveToKafra,2,4);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0967,clif->pSolveCharName,2);
+ packet(0x0968,clif->pActionRequest,2,6);
#endif
// 2016-03-09cRagexe
#if PACKETVER == 20160309
- packet(0x023b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0281,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0819,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0838,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x083c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x085a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0866,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0873,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a7,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0920,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0929,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092a,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0932,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0956,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x096a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x023b,clif->pDropItem,2,4);
+ packet(0x0281,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pFriendsListAdd,2);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0819,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0838,clif->pWalkToXY,2);
+ packet(0x083c,clif->pPartyInvite2,2);
+ packet(0x085a,clif->pMoveToKafra,2,4);
+ packet(0x085f,clif->pUseSkillToId,2,4,6);
+ packet(0x0866,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0873,clif->pDull/*,XXX*/);
+ packet(0x087c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089d,clif->pChangeDir,2,4);
+ packet(0x08a7,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091d,clif->pGetCharNameRequest,2);
+ packet(0x0920,clif->pMoveFromKafra,2,4);
+ packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0929,clif->pDull/*,XXX*/);
+ packet(0x092a,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092e,clif->pReqCloseBuyingStore,0);
+ packet(0x0932,clif->pHomMenu,2,4);
+ packet(0x094f,clif->pActionRequest,2,6);
+ packet(0x0956,clif->pTickSend,2);
+ packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x096a,clif->pTakeItem,2);
#endif
// 2016-03-16aRagexe, 2016-03-18aRagexe
#if PACKETVER == 20160316 || \
PACKETVER == 20160318
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0922,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0922,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-03-23aRagexe, 2016-03-23bRagexe
#if PACKETVER == 20160323
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0869,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0872,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0878,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0883,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0896,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x091b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0926,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0927,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0933,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pFriendsListAdd,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pDull/*,XXX*/);
+ packet(0x0869,clif->pTakeItem,2);
+ packet(0x086a,clif->pMoveFromKafra,2,4);
+ packet(0x0872,clif->pStoragePassword,0);
+ packet(0x0878,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0883,clif->pPartyInvite2,2);
+ packet(0x0896,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089a,clif->pHomMenu,2,4);
+ packet(0x091b,clif->pDull/*,XXX*/);
+ packet(0x0926,clif->pMoveToKafra,2,4);
+ packet(0x0927,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0933,clif->pChangeDir,2,4);
+ packet(0x093c,clif->pDropItem,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-03-30aRagexe, 2016-03-30bRagexe
#if PACKETVER == 20160330
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0889,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0918,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0925,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x092c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0930,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0939,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x093b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pStoragePassword,0);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pPartyInvite2,2);
+ packet(0x086d,clif->pTakeItem,2);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pMoveFromKafra,2,4);
+ packet(0x0889,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088b,clif->pHomMenu,2,4);
+ packet(0x088d,clif->pDull/*,XXX*/);
+ packet(0x0918,clif->pMoveToKafra,2,4);
+ packet(0x0925,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x092c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0930,clif->pChangeDir,2,4);
+ packet(0x0939,clif->pDropItem,2,4);
+ packet(0x093b,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-04-06aRagexe, 2016-04-06bRagexe
#if PACKETVER == 20160406
- packet(0x0364,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x07e4,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0869,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0877,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0878,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0879,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0884,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0892,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0895,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0898,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a1,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a9,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ac,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0927,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0933,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0934,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0949,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0953,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x0364,clif->pSolveCharName,2);
+ packet(0x07e4,clif->pDropItem,2,4);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0869,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0877,clif->pTakeItem,2);
+ packet(0x0878,clif->pFriendsListAdd,2);
+ packet(0x0879,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0884,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0892,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0895,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0898,clif->pPartyInvite2,2);
+ packet(0x089b,clif->pGetCharNameRequest,2);
+ packet(0x089e,clif->pMoveFromKafra,2,4);
+ packet(0x08a1,clif->pActionRequest,2,6);
+ packet(0x08a9,clif->pReqCloseBuyingStore,0);
+ packet(0x08ac,clif->pDull/*,XXX*/);
+ packet(0x0927,clif->pMoveToKafra,2,4);
+ packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0933,clif->pChangeDir,2,4);
+ packet(0x0934,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x0949,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094d,clif->pReqClickBuyingStore,2);
+ packet(0x0953,clif->pStoragePassword,0);
+ packet(0x095d,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pWalkToXY,2);
+ packet(0x0962,clif->pDull/*,XXX*/);
#endif
// 2016-04-14aRagexe, 2016-04-14bRagexe, 2016-04-14bRagexe_2, 2016-04-14cRagexe
#if PACKETVER == 20160414
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0363,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0880,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0918,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0922,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0927,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0931,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0934,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0945,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0953,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0363,clif->pTakeItem,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x0880,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pMoveFromKafra,2,4);
+ packet(0x089e,clif->pPartyInvite2,2);
+ packet(0x0918,clif->pDull/*,XXX*/);
+ packet(0x0922,clif->pChangeDir,2,4);
+ packet(0x0927,clif->pStoragePassword,0);
+ packet(0x0931,clif->pDropItem,2,4);
+ packet(0x0934,clif->pHomMenu,2,4);
+ packet(0x0945,clif->pFriendsListAdd,2);
+ packet(0x0953,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-04-20cRagexe
#if PACKETVER == 20160420
- packet(0x022d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x02c4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x035f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0864,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0870,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0872,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0874,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0888,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a5,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0935,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x094e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x02c4,clif->pTickSend,2);
+ packet(0x035f,clif->pPartyInvite2,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pHomMenu,2,4);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0864,clif->pTakeItem,2);
+ packet(0x0870,clif->pDull/*,XXX*/);
+ packet(0x0872,clif->pChangeDir,2,4);
+ packet(0x0874,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pDropItem,2,4);
+ packet(0x0888,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088b,clif->pMoveFromKafra,2,4);
+ packet(0x08a5,clif->pStoragePassword,0);
+ packet(0x092f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0935,clif->pFriendsListAdd,2);
+ packet(0x094e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095c,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-04-27aRagexe
#if PACKETVER == 20160427
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0835,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0835,clif->pStoragePassword,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-05-04aRagexe
#if PACKETVER == 20160504
- packet(0x0202,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0363,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0365,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x083c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x087f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0884,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0887,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0890,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0893,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0898,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08ad,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0918,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0922,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0924,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0940,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0941,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0948,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0952,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0969,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x0202,clif->pHomMenu,2,4);
+ packet(0x0363,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0365,clif->pDull/*,XXX*/);
+ packet(0x083c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085f,clif->pActionRequest,2,6);
+ packet(0x086b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x087f,clif->pReqCloseBuyingStore,0);
+ packet(0x0884,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x0887,clif->pPartyInvite2,2);
+ packet(0x088a,clif->pTakeItem,2);
+ packet(0x088d,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0890,clif->pDropItem,2,4);
+ packet(0x0893,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0898,clif->pDull/*,XXX*/);
+ packet(0x089d,clif->pSolveCharName,2);
+ packet(0x08ad,clif->pChangeDir,2,4);
+ packet(0x0918,clif->pTickSend,2);
+ packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0922,clif->pGetCharNameRequest,2);
+ packet(0x0924,clif->pWalkToXY,2);
+ packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0940,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0941,clif->pMoveFromKafra,2,4);
+ packet(0x0948,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0952,clif->pFriendsListAdd,2);
+ packet(0x095b,clif->pReqClickBuyingStore,2);
+ packet(0x0969,clif->pStoragePassword,0);
#endif
// 2016-05-11aRagexe
#if PACKETVER == 20160511
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0894,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0918,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0920,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085e,clif->pChangeDir,2,4);
+ packet(0x0894,clif->pFriendsListAdd,2);
+ packet(0x089b,clif->pDull/*,XXX*/);
+ packet(0x0918,clif->pHomMenu,2,4);
+ packet(0x0920,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-05-18aRagexe
#if PACKETVER == 20160518
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0874,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a9,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0928,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086c,clif->pChangeDir,2,4);
+ packet(0x0874,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x08a9,clif->pFriendsListAdd,2);
+ packet(0x0928,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-05-25aRagexe, 2016-05-26aRagexe
#if PACKETVER == 20160525 || \
PACKETVER == 20160526
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0899,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0937,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0945,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0951,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0956,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pDull/*,XXX*/);
+ packet(0x085e,clif->pDropItem,2,4);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x086a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0899,clif->pTakeItem,2);
+ packet(0x089c,clif->pChangeDir,2,4);
+ packet(0x091d,clif->pStoragePassword,0);
+ packet(0x092c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0937,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0945,clif->pPartyInvite2,2);
+ packet(0x094a,clif->pMoveToKafra,2,4);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0951,clif->pFriendsListAdd,2);
+ packet(0x0956,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-06-01aRagexe
#if PACKETVER == 20160601
- packet(0x0202,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0863,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0870,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0895,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a7,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ac,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0924,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pReqCloseBuyingStore,0);
+ packet(0x02c4,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pFriendsListAdd,2);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0863,clif->pTakeItem,2);
+ packet(0x0870,clif->pMoveFromKafra,2,4);
+ packet(0x087d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088d,clif->pDropItem,2,4);
+ packet(0x088f,clif->pMoveToKafra,2,4);
+ packet(0x0895,clif->pHomMenu,2,4);
+ packet(0x08a7,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0924,clif->pDull/*,XXX*/);
+ packet(0x095b,clif->pChangeDir,2,4);
+ packet(0x095f,clif->pStoragePassword,0);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-06-08aRagexe, 2016-06-08bRagexe, 2016-06-09aRagexe
#if PACKETVER == 20160608 || \
PACKETVER == 20160609
- packet(0x022d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x02c4,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x035f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0437,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0802,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0889,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0899,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a6,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0958,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0969,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x02c4,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x035f,clif->pPartyInvite2,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pWalkToXY,2);
+ packet(0x0437,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pChangeDir,2,4);
+ packet(0x0802,clif->pTickSend,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pDull/*,XXX*/);
+ packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0889,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0899,clif->pTakeItem,2);
+ packet(0x089b,clif->pHomMenu,2,4);
+ packet(0x08a6,clif->pMoveFromKafra,2,4);
+ packet(0x093b,clif->pDull/*,XXX*/);
+ packet(0x094d,clif->pDropItem,2,4);
+ packet(0x0958,clif->pStoragePassword,0);
+ packet(0x095b,clif->pMoveToKafra,2,4);
+ packet(0x0969,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-06-15aRagexe
#if PACKETVER == 20160615
- packet(0x0281,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0363,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0369,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x083c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0866,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0870,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0888,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0898,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x092f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0947,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0948,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x094a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x094b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0954,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0957,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0958,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0961,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x0281,clif->pFriendsListAdd,2);
+ packet(0x0363,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0369,clif->pHomMenu,2,4);
+ packet(0x083c,clif->pGetCharNameRequest,2);
+ packet(0x0866,clif->pWalkToXY,2);
+ packet(0x0870,clif->pDull/*,XXX*/);
+ packet(0x087d,clif->pSolveCharName,2);
+ packet(0x087e,clif->pTakeItem,2);
+ packet(0x087f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0888,clif->pUseSkillToId,2,4,6);
+ packet(0x088a,clif->pTickSend,2);
+ packet(0x088d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0898,clif->pDropItem,2,4);
+ packet(0x092f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093e,clif->pPartyInvite2,2);
+ packet(0x0947,clif->pReqCloseBuyingStore,0);
+ packet(0x0948,clif->pActionRequest,2,6);
+ packet(0x094a,clif->pReqClickBuyingStore,2);
+ packet(0x094b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0954,clif->pChangeDir,2,4);
+ packet(0x0957,clif->pMoveToKafra,2,4);
+ packet(0x0958,clif->pMoveFromKafra,2,4);
+ packet(0x095c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0961,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2016-06-22aRagexe
#if PACKETVER == 20160622
- packet(0x023b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x035f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0361,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x07e4,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0865,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0867,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0880,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0887,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0890,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0891,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0892,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x089a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a2,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a8,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x092f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0936,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0946,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0959,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0965,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0969,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x023b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x035f,clif->pMoveFromKafra,2,4);
+ packet(0x0361,clif->pPartyInvite2,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x07e4,clif->pHomMenu,2,4);
+ packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0865,clif->pDull/*,XXX*/);
+ packet(0x0867,clif->pDull/*,XXX*/);
+ packet(0x0880,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0887,clif->pReqCloseBuyingStore,0);
+ packet(0x0890,clif->pFriendsListAdd,2);
+ packet(0x0891,clif->pReqClickBuyingStore,2);
+ packet(0x0892,clif->pSearchStoreInfoNextPage,0);
+ packet(0x089a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089e,clif->pActionRequest,2,6);
+ packet(0x08a2,clif->pSolveCharName,2);
+ packet(0x08a8,clif->pStoragePassword,0);
+ packet(0x091c,clif->pTakeItem,2);
+ packet(0x092d,clif->pTickSend,2);
+ packet(0x092f,clif->pUseSkillToId,2,4,6);
+ packet(0x0936,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093b,clif->pMoveToKafra,2,4);
+ packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0946,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0959,clif->pGetCharNameRequest,2);
+ packet(0x0965,clif->pChangeDir,2,4);
+ packet(0x0969,clif->pDropItem,2,4);
#endif
// 2016-06-29aRagexe, 2016-06-30aRagexe
#if PACKETVER == 20160629 || \
PACKETVER == 20160630
- packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x022d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x035f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0363,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x085c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x085e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0860,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0861,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0863,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0867,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0881,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0885,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0893,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0922,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0925,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0926,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0946,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0948,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0957,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0968,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0969,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x022d,clif->pWalkToXY,2);
+ packet(0x035f,clif->pDull/*,XXX*/);
+ packet(0x0363,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pItemListWindowSelected,2,4,8);
+ packet(0x085c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x085e,clif->pDull/*,XXX*/);
+ packet(0x0860,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0861,clif->pDropItem,2,4);
+ packet(0x0863,clif->pSolveCharName,2);
+ packet(0x0867,clif->pStoragePassword,0);
+ packet(0x086b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0881,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0885,clif->pHomMenu,2,4);
+ packet(0x088e,clif->pGetCharNameRequest,2);
+ packet(0x0893,clif->pTickSend,2);
+ packet(0x091e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0922,clif->pMoveFromKafra,2,4);
+ packet(0x0925,clif->pUseSkillToId,2,4,6);
+ packet(0x0926,clif->pPartyInvite2,2);
+ packet(0x093e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0946,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0948,clif->pChangeDir,2,4);
+ packet(0x094a,clif->pFriendsListAdd,2);
+ packet(0x0957,clif->pReqCloseBuyingStore,0);
+ packet(0x095a,clif->pActionRequest,2,6);
+ packet(0x0968,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0969,clif->pTakeItem,2);
+ packet(0x096a,clif->pMoveToKafra,2,4);
#endif
// 2016-07-06bRagexe
#if PACKETVER == 20160706
- packet(0x0362,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0860,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0869,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x086b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0884,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0886,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0892,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0899,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a4,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a5,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a8,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0918,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x091b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0924,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0926,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0927,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0939,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x093d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0944,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0945,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0952,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x0362,clif->pSolveCharName,2);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x085f,clif->pPartyInvite2,2);
+ packet(0x0860,clif->pActionRequest,2,6);
+ packet(0x0869,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x086b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0884,clif->pFriendsListAdd,2);
+ packet(0x0886,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0892,clif->pHomMenu,2,4);
+ packet(0x0899,clif->pUseSkillToId,2,4,6);
+ packet(0x08a4,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a5,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a8,clif->pTickSend,2);
+ packet(0x0918,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x091b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0924,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0926,clif->pChangeDir,2,4);
+ packet(0x0927,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x092d,clif->pWalkToXY,2);
+ packet(0x0939,clif->pMoveToKafra,2,4);
+ packet(0x093d,clif->pDropItem,2,4);
+ packet(0x0944,clif->pDull/*,XXX*/);
+ packet(0x0945,clif->pGetCharNameRequest,2);
+ packet(0x094c,clif->pStoragePassword,0);
+ packet(0x0952,clif->pReqCloseBuyingStore,0);
+ packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0958,clif->pTakeItem,2);
#endif
// 2016-07-13aRagexe, 2016-07-13bRagexe, 2016-07-13cRagexe, 2016-07-13dRagexe
#if PACKETVER == 20160713
- packet(0x022d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0363,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0364,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0838,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0860,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0865,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0877,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0883,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0892,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x089a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a2,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0922,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0931,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0939,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0944,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0945,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0947,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0957,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x095b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x022d,clif->pStoragePassword,0);
+ packet(0x0363,clif->pChangeDir,2,4);
+ packet(0x0364,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0838,clif->pTakeItem,2);
+ packet(0x0860,clif->pReqClickBuyingStore,2);
+ packet(0x0865,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0877,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087b,clif->pTickSend,2);
+ packet(0x0883,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0892,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x089a,clif->pPartyInvite2,2);
+ packet(0x089f,clif->pDull/*,XXX*/);
+ packet(0x08a2,clif->pMoveFromKafra,2,4);
+ packet(0x08a4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091c,clif->pWalkToXY,2);
+ packet(0x091d,clif->pSolveCharName,2);
+ packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0922,clif->pHomMenu,2,4);
+ packet(0x092c,clif->pGetCharNameRequest,2);
+ packet(0x0931,clif->pUseSkillToId,2,4,6);
+ packet(0x0939,clif->pFriendsListAdd,2);
+ packet(0x0944,clif->pReqCloseBuyingStore,0);
+ packet(0x0945,clif->pActionRequest,2,6);
+ packet(0x0947,clif->pMoveToKafra,2,4);
+ packet(0x0957,clif->pDropItem,2,4);
+ packet(0x095b,clif->pDull/*,XXX*/);
#endif
// 2016-07-20aRagexe, 2016-07-20bRagexe
#if PACKETVER == 20160720
- packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0363,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0365,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x07e4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0838,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0883,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0887,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a0,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08aa,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0917,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0946,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0953,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0960,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0969,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
+ packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0363,clif->pUseSkillToId,2,4,6);
+ packet(0x0365,clif->pActionRequest,2,6);
+ packet(0x07e4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0838,clif->pWalkToXY,2);
+ packet(0x085b,clif->pReqCloseBuyingStore,0);
+ packet(0x086a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086d,clif->pReqClickBuyingStore,2);
+ packet(0x087f,clif->pDropItem,2,4);
+ packet(0x0883,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0887,clif->pGetCharNameRequest,2);
+ packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x089c,clif->pHomMenu,2,4);
+ packet(0x089e,clif->pMoveFromKafra,2,4);
+ packet(0x08a0,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08aa,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0917,clif->pDull/*,XXX*/);
+ packet(0x091c,clif->pTakeItem,2);
+ packet(0x092a,clif->pFriendsListAdd,2);
+ packet(0x093b,clif->pChangeDir,2,4);
+ packet(0x093e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0946,clif->pTickSend,2);
+ packet(0x094d,clif->pSolveCharName,2);
+ packet(0x0953,clif->pDull/*,XXX*/);
+ packet(0x095b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0960,clif->pMoveToKafra,2,4);
+ packet(0x0969,clif->pPartyInvite2,2);
#endif
// 2016-07-27aRagexe, 2016-07-27bRagexe
#if PACKETVER == 20160727
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x023b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0363,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0436,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x07ec,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0866,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0868,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0869,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0874,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0877,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0883,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0887,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a4,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a7,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0936,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0941,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0946,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0949,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0951,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0966,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x023b,clif->pDull/*,XXX*/);
+ packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0363,clif->pFriendsListAdd,2);
+ packet(0x0436,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x07ec,clif->pDropItem,2,4);
+ packet(0x0866,clif->pDull/*,XXX*/);
+ packet(0x0868,clif->pPartyInvite2,2);
+ packet(0x0869,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0874,clif->pReqClickBuyingStore,2);
+ packet(0x0877,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0883,clif->pActionRequest,2,6);
+ packet(0x0887,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x08a4,clif->pSolveCharName,2);
+ packet(0x08a7,clif->pTakeItem,2);
+ packet(0x092e,clif->pWalkToXY,2);
+ packet(0x0936,clif->pHomMenu,2,4);
+ packet(0x0941,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0946,clif->pGetCharNameRequest,2);
+ packet(0x0949,clif->pMoveFromKafra,2,4);
+ packet(0x0951,clif->pMoveToKafra,2,4);
+ packet(0x095f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0966,clif->pReqCloseBuyingStore,0);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
#endif
// 2016-08-03bRagexe
#if PACKETVER == 20160803
- packet(0x0364,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x085d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0881,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0887,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0888,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0891,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0895,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08a1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0929,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0930,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0932,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0934,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0937,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x093a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0952,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0955,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0956,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0959,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x0364,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x085d,clif->pReqClickBuyingStore,2);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pWalkToXY,2);
+ packet(0x0881,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x0887,clif->pGetCharNameRequest,2);
+ packet(0x0888,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088b,clif->pReqCloseBuyingStore,0);
+ packet(0x0891,clif->pChangeDir,2,4);
+ packet(0x0895,clif->pFriendsListAdd,2);
+ packet(0x089c,clif->pDropItem,2,4);
+ packet(0x089e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08a1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091b,clif->pTakeItem,2);
+ packet(0x0929,clif->pStoragePassword,0);
+ packet(0x0930,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0932,clif->pUseSkillToId,2,4,6);
+ packet(0x0934,clif->pActionRequest,2,6);
+ packet(0x0937,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x093a,clif->pDull/*,XXX*/);
+ packet(0x093e,clif->pTickSend,2);
+ packet(0x093f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0952,clif->pHomMenu,2,4);
+ packet(0x0955,clif->pMoveFromKafra,2,4);
+ packet(0x0956,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0959,clif->pSolveCharName,2);
+ packet(0x095a,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2016-08-10aRagexe
#if PACKETVER == 20160810
- packet(0x0361,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0819,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0838,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x085d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x085e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0860,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0875,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0879,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0885,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0888,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0890,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x089f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a9,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0926,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0935,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0943,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0959,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0967,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x0361,clif->pStoragePassword,0);
+ packet(0x0819,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0838,clif->pPartyInvite2,2);
+ packet(0x085d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x085e,clif->pDropItem,2,4);
+ packet(0x085f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0860,clif->pSolveCharName,2);
+ packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0875,clif->pHomMenu,2,4);
+ packet(0x0879,clif->pReqClickBuyingStore,2);
+ packet(0x087a,clif->pWalkToXY,2);
+ packet(0x0885,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0888,clif->pFriendsListAdd,2);
+ packet(0x0890,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089d,clif->pChangeDir,2,4);
+ packet(0x089f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a9,clif->pMoveToKafra,2,4);
+ packet(0x091a,clif->pTakeItem,2);
+ packet(0x091b,clif->pGetCharNameRequest,2);
+ packet(0x091c,clif->pUseSkillToId,2,4,6);
+ packet(0x0926,clif->pDull/*,XXX*/);
+ packet(0x092b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092d,clif->pMoveFromKafra,2,4);
+ packet(0x0935,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0943,clif->pTickSend,2);
+ packet(0x094b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0959,clif->pReqCloseBuyingStore,0);
+ packet(0x095b,clif->pActionRequest,2,6);
+ packet(0x0967,clif->pDull/*,XXX*/);
#endif
// 2016-08-17aRagexe
#if PACKETVER == 20160817
- packet(0x0364,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0437,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x07e4,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0811,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0819,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x083c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x085c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0867,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0875,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0886,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0891,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a5,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a9,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08ab,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ac,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ad,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0929,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0930,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0939,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0960,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0963,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x0364,clif->pReqClickBuyingStore,2);
+ packet(0x0437,clif->pFriendsListAdd,2);
+ packet(0x07e4,clif->pGetCharNameRequest,2);
+ packet(0x0811,clif->pDull/*,XXX*/);
+ packet(0x0819,clif->pTickSend,2);
+ packet(0x083c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x085c,clif->pTakeItem,2);
+ packet(0x0867,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086b,clif->pSolveCharName,2);
+ packet(0x0875,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087f,clif->pDropItem,2,4);
+ packet(0x0886,clif->pActionRequest,2,6);
+ packet(0x0891,clif->pUseSkillToId,2,4,6);
+ packet(0x089c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a5,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pPartyInvite2,2);
+ packet(0x08a9,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08ab,clif->pHomMenu,2,4);
+ packet(0x08ac,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ad,clif->pMoveToKafra,2,4);
+ packet(0x091b,clif->pReqCloseBuyingStore,0);
+ packet(0x0929,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0930,clif->pWalkToXY,2);
+ packet(0x0939,clif->pMoveFromKafra,2,4);
+ packet(0x093c,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0960,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0963,clif->pChangeDir,2,4);
#endif
// 2016-08-24aRagexe
#if PACKETVER == 20160824
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0934,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0934,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-08-31aRagexe, 2016-08-31bRagexe
#if PACKETVER == 20160831
- packet(0x022d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0366,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0835,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0865,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0870,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0874,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0876,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0878,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x087c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a9,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0917,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0938,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0946,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0950,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0954,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0957,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0960,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0964,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0967,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x022d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0366,clif->pDropItem,2,4);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0835,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0865,clif->pWalkToXY,2);
+ packet(0x086d,clif->pReqCloseBuyingStore,0);
+ packet(0x0870,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0874,clif->pPartyInvite2,2);
+ packet(0x0876,clif->pDull/*,XXX*/);
+ packet(0x0878,clif->pActionRequest,2,6);
+ packet(0x087c,clif->pGetCharNameRequest,2);
+ packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a9,clif->pTickSend,2);
+ packet(0x0917,clif->pStoragePassword,0);
+ packet(0x091b,clif->pDull/*,XXX*/);
+ packet(0x092c,clif->pFriendsListAdd,2);
+ packet(0x092e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0938,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x0946,clif->pSolveCharName,2);
+ packet(0x094a,clif->pChangeDir,2,4);
+ packet(0x094f,clif->pMoveToKafra,2,4);
+ packet(0x0950,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0954,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0957,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095e,clif->pMoveFromKafra,2,4);
+ packet(0x0960,clif->pTakeItem,2);
+ packet(0x0964,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0967,clif->pUseSkillToId,2,4,6);
#endif
// 2016-09-07aRagexe
#if PACKETVER == 20160907
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x091c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x091c,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-09-13aRagexe
#if PACKETVER == 20160913
- packet(0x0361,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0817,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0865,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0874,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0875,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0879,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0887,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0889,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0891,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0892,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0928,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0935,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0949,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0950,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0952,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0954,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0963,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0968,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x0361,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0817,clif->pMoveToKafra,2,4);
+ packet(0x085b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0865,clif->pGetCharNameRequest,2);
+ packet(0x0874,clif->pReqClickBuyingStore,2);
+ packet(0x0875,clif->pTickSend,2);
+ packet(0x0879,clif->pDropItem,2,4);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x087b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0887,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0889,clif->pTakeItem,2);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0891,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0892,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089b,clif->pMoveFromKafra,2,4);
+ packet(0x089c,clif->pStoragePassword,0);
+ packet(0x08a5,clif->pChangeDir,2,4);
+ packet(0x0928,clif->pFriendsListAdd,2);
+ packet(0x0935,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x0949,clif->pPartyInvite2,2);
+ packet(0x094a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0950,clif->pActionRequest,2,6);
+ packet(0x0952,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0954,clif->pWalkToXY,2);
+ packet(0x0962,clif->pDull/*,XXX*/);
+ packet(0x0963,clif->pSolveCharName,2);
+ packet(0x0968,clif->pReqCloseBuyingStore,0);
#endif
// 2016-09-21aRagexe
#if PACKETVER == 20160921
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x094a,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-09-28cRagexe
#if PACKETVER == 20160928
- packet(0x0202,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0366,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0811,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0838,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0864,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0866,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0872,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0878,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0889,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0897,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a9,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0919,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0927,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0944,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0953,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0955,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0957,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x0202,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pGetCharNameRequest,2);
+ packet(0x0366,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x0811,clif->pDull/*,XXX*/);
+ packet(0x0838,clif->pPartyInvite2,2);
+ packet(0x0864,clif->pMoveFromKafra,2,4);
+ packet(0x0866,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086d,clif->pDropItem,2,4);
+ packet(0x0872,clif->pHomMenu,2,4);
+ packet(0x0878,clif->pSolveCharName,2);
+ packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0889,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0897,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089a,clif->pActionRequest,2,6);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x08a9,clif->pMoveToKafra,2,4);
+ packet(0x0919,clif->pWalkToXY,2);
+ packet(0x091e,clif->pTickSend,2);
+ packet(0x0927,clif->pUseSkillToId,2,4,6);
+ packet(0x092d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0944,clif->pChangeDir,2,4);
+ packet(0x094d,clif->pReqCloseBuyingStore,0);
+ packet(0x094e,clif->pFriendsListAdd,2);
+ packet(0x0953,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0955,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0957,clif->pTakeItem,2);
+ packet(0x095a,clif->pDull/*,XXX*/);
#endif
// 2016-10-05aRagexe
#if PACKETVER == 20161005
- packet(0x0202,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0838,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0863,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0886,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0891,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0892,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a0,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08ac,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0918,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0919,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x092b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0931,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0932,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0942,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0945,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0952,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x095b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0967,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x0202,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pActionRequest,2,6);
+ packet(0x0838,clif->pStoragePassword,0);
+ packet(0x0863,clif->pGetCharNameRequest,2);
+ packet(0x0886,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088e,clif->pMoveFromKafra,2,4);
+ packet(0x0891,clif->pChangeDir,2,4);
+ packet(0x0892,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089b,clif->pPartyInvite2,2);
+ packet(0x089c,clif->pTakeItem,2);
+ packet(0x08a0,clif->pMoveToKafra,2,4);
+ packet(0x08ac,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0918,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0919,clif->pSolveCharName,2);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x092b,clif->pTickSend,2);
+ packet(0x0931,clif->pFriendsListAdd,2);
+ packet(0x0932,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0942,clif->pDropItem,2,4);
+ packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0945,clif->pWalkToXY,2);
+ packet(0x094a,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094d,clif->pHomMenu,2,4);
+ packet(0x0952,clif->pDull/*,XXX*/);
+ packet(0x095a,clif->pReqClickBuyingStore,2);
+ packet(0x095b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0967,clif->pUseSkillToId,2,4,6);
#endif
// 2016-10-12aRagexe
#if PACKETVER == 20161012
- packet(0x023b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0365,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0369,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x07ec,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0819,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x085b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0863,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0868,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0872,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0875,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0880,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0893,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a0,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0936,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0937,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0939,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0943,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0944,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0951,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0962,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0966,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0967,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x023b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0364,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0365,clif->pTickSend,2);
+ packet(0x0369,clif->pPartyInvite2,2);
+ packet(0x07ec,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0819,clif->pFriendsListAdd,2);
+ packet(0x085b,clif->pDull/*,XXX*/);
+ packet(0x085e,clif->pReqCloseBuyingStore,0);
+ packet(0x0863,clif->pActionRequest,2,6);
+ packet(0x0868,clif->pTakeItem,2);
+ packet(0x086d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0872,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0875,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0880,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0893,clif->pMoveToKafra,2,4);
+ packet(0x08a0,clif->pChangeDir,2,4);
+ packet(0x092d,clif->pSolveCharName,2);
+ packet(0x0936,clif->pGetCharNameRequest,2);
+ packet(0x0937,clif->pReqClickBuyingStore,2);
+ packet(0x0939,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0943,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0944,clif->pMoveFromKafra,2,4);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0951,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095c,clif->pHomMenu,2,4);
+ packet(0x0962,clif->pUseSkillToId,2,4,6);
+ packet(0x0966,clif->pWalkToXY,2);
+ packet(0x0967,clif->pStoragePassword,0);
#endif
// 2016-10-19aRagexe
#if PACKETVER == 20161019
- packet(0x022d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0361,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0889,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0892,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0946,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0963,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pReqClickBuyingStore,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pHomMenu,2,4);
+ packet(0x0361,clif->pWalkToXY,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pChangeDir,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0889,clif->pStoragePassword,0);
+ packet(0x0892,clif->pDull/*,XXX*/);
+ packet(0x0946,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0963,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-10-26bRagexe, 2016-10-26cRagexe
#if PACKETVER == 20161026
- packet(0x0363,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0438,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0862,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x086a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x087c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0886,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0891,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0894,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0898,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0926,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x092e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0930,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0953,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x095c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0962,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x0363,clif->pStoragePassword,0);
+ packet(0x0438,clif->pWalkToXY,2);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085a,clif->pMoveToKafra,2,4);
+ packet(0x085f,clif->pActionRequest,2,6);
+ packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0862,clif->pTickSend,2);
+ packet(0x086a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086e,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x087c,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0886,clif->pDropItem,2,4);
+ packet(0x0891,clif->pReqClickBuyingStore,2);
+ packet(0x0894,clif->pUseSkillToId,2,4,6);
+ packet(0x0898,clif->pFriendsListAdd,2);
+ packet(0x091a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091b,clif->pTakeItem,2);
+ packet(0x0926,clif->pSolveCharName,2);
+ packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x092e,clif->pHomMenu,2,4);
+ packet(0x092f,clif->pReqCloseBuyingStore,0);
+ packet(0x0930,clif->pGetCharNameRequest,2);
+ packet(0x094b,clif->pMoveFromKafra,2,4);
+ packet(0x0953,clif->pPartyInvite2,2);
+ packet(0x095c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0962,clif->pChangeDir,2,4);
#endif
// 2016-11-02aRagexe, 2016-11-03aRagexe
#if PACKETVER == 20161102 || \
PACKETVER == 20161103
- packet(0x0361,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0367,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0436,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0802,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x083c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0874,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0886,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a2,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08aa,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0922,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0925,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0928,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0936,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0946,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0949,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0964,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0965,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0966,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
+ packet(0x0361,clif->pMoveFromKafra,2,4);
+ packet(0x0367,clif->pDull/*,XXX*/);
+ packet(0x0436,clif->pActionRequest,2,6);
+ packet(0x0802,clif->pTakeItem,2);
+ packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x083c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085f,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pMoveToKafra,2,4);
+ packet(0x086c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086f,clif->pDull/*,XXX*/);
+ packet(0x0874,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0886,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088f,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pDropItem,2,4);
+ packet(0x089f,clif->pPartyInvite2,2);
+ packet(0x08a2,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08aa,clif->pWalkToXY,2);
+ packet(0x091b,clif->pStoragePassword,0);
+ packet(0x0922,clif->pReqClickBuyingStore,2);
+ packet(0x0925,clif->pSolveCharName,2);
+ packet(0x0928,clif->pFriendsListAdd,2);
+ packet(0x092f,clif->pGetCharNameRequest,2);
+ packet(0x0936,clif->pReqCloseBuyingStore,0);
+ packet(0x0946,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0949,clif->pChangeDir,2,4);
+ packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0964,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0965,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0966,clif->pTickSend,2);
#endif
// 2016-11-09aRagexe, 2016-11-09bRagexe
#if PACKETVER == 20161109
- packet(0x02c4,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0361,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0362,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x085d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0865,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0870,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0876,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0881,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x088e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0898,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a7,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0937,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0954,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0956,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x02c4,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0361,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0362,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pTickSend,2);
+ packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSolveCharName,2);
+ packet(0x085d,clif->pReqCloseBuyingStore,0);
+ packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0865,clif->pWalkToXY,2);
+ packet(0x086a,clif->pActionRequest,2,6);
+ packet(0x086d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0870,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0876,clif->pReqClickBuyingStore,2);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x0881,clif->pMoveToKafra,2,4);
+ packet(0x088e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0898,clif->pTakeItem,2);
+ packet(0x089a,clif->pDropItem,2,4);
+ packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089f,clif->pDull/*,XXX*/);
+ packet(0x08a7,clif->pHomMenu,2,4);
+ packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x0937,clif->pFriendsListAdd,2);
+ packet(0x093c,clif->pStoragePassword,0);
+ packet(0x093f,clif->pGetCharNameRequest,2);
+ packet(0x0954,clif->pUseSkillToId,2,4,6);
+ packet(0x0956,clif->pChangeDir,2,4);
#endif
// 2016-11-16aRagexe
#if PACKETVER == 20161116
- packet(0x0368,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0369,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0835,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x085f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0864,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0885,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0890,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0892,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0893,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a1,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a2,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08ac,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0920,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0925,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x092a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0931,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x094a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0952,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0957,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0967,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x0368,clif->pTickSend,2);
+ packet(0x0369,clif->pMoveToKafra,2,4);
+ packet(0x0835,clif->pFriendsListAdd,2);
+ packet(0x085f,clif->pDropItem,2,4);
+ packet(0x0864,clif->pPartyInvite2,2);
+ packet(0x086f,clif->pTakeItem,2);
+ packet(0x0885,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088b,clif->pHomMenu,2,4);
+ packet(0x088d,clif->pReqClickBuyingStore,2);
+ packet(0x088f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0890,clif->pWalkToXY,2);
+ packet(0x0892,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0893,clif->pActionRequest,2,6);
+ packet(0x08a1,clif->pChangeDir,2,4);
+ packet(0x08a2,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08ac,clif->pMoveFromKafra,2,4);
+ packet(0x0920,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0925,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x092a,clif->pUseSkillToId,2,4,6);
+ packet(0x0931,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x094a,clif->pGetCharNameRequest,2);
+ packet(0x0952,clif->pReqCloseBuyingStore,0);
+ packet(0x0957,clif->pSolveCharName,2);
+ packet(0x095b,clif->pStoragePassword,0);
+ packet(0x095d,clif->pDull/*,XXX*/);
+ packet(0x095f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0967,clif->pDull/*,XXX*/);
#endif
// 2016-11-23aRagexe
#if PACKETVER == 20161123
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0437,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0861,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0866,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0871,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0880,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0882,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a9,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0926,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0930,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x094d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x095a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0962,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0437,clif->pTickSend,2);
+ packet(0x085c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0861,clif->pWalkToXY,2);
+ packet(0x0862,clif->pReqCloseBuyingStore,0);
+ packet(0x0866,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086f,clif->pDropItem,2,4);
+ packet(0x0871,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pPartyInvite2,2);
+ packet(0x0880,clif->pStoragePassword,0);
+ packet(0x0882,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088b,clif->pGetCharNameRequest,2);
+ packet(0x089c,clif->pChangeDir,2,4);
+ packet(0x08a9,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091a,clif->pMoveToKafra,2,4);
+ packet(0x0926,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092a,clif->pReqClickBuyingStore,2);
+ packet(0x092f,clif->pTakeItem,2);
+ packet(0x0930,clif->pHomMenu,2,4);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x094d,clif->pUseSkillToId,2,4,6);
+ packet(0x094f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x095a,clif->pDull/*,XXX*/);
+ packet(0x095b,clif->pActionRequest,2,6);
+ packet(0x0962,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pSolveCharName,2);
#endif
// 2016-11-30aRagexe, 2016-11-30bRagexe
#if PACKETVER == 20161130
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0931,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0943,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0954,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0959,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pChangeDir,2,4);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pTickSend,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pDull/*,XXX*/);
+ packet(0x0931,clif->pHomMenu,2,4);
+ packet(0x0943,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0954,clif->pStoragePassword,0);
+ packet(0x0959,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-12-07cRagexe, 2016-12-07eRagexe
#if PACKETVER == 20161207
- packet(0x023b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0875,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0886,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a1,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a2,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08ad,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0918,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0943,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0965,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pHomMenu,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pFriendsListAdd,2);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x0875,clif->pMoveToKafra,2,4);
+ packet(0x087e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0886,clif->pActionRequest,2,6);
+ packet(0x08a1,clif->pChangeDir,2,4);
+ packet(0x08a2,clif->pTakeItem,2);
+ packet(0x08ad,clif->pDropItem,2,4);
+ packet(0x0918,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091d,clif->pMoveFromKafra,2,4);
+ packet(0x0943,clif->pDull/*,XXX*/);
+ packet(0x095d,clif->pStoragePassword,0);
+ packet(0x0965,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-12-14bRagexe, 2016-12-14cRagexe
#if PACKETVER == 20161214
- packet(0x022d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0281,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x02c4,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0436,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0862,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x086d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0887,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0899,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x092e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pReqClickBuyingStore,2);
+ packet(0x0281,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x02c4,clif->pMoveFromKafra,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pHomMenu,2,4);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0436,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pDull/*,XXX*/);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0862,clif->pFriendsListAdd,2);
+ packet(0x086d,clif->pPartyInvite2,2);
+ packet(0x0887,clif->pDropItem,2,4);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x0899,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092e,clif->pTakeItem,2);
+ packet(0x093d,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-12-21aRagexe, 2016-12-21bRagexe
#if PACKETVER == 20161221
- packet(0x035f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0438,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0817,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0866,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0876,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0881,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0885,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0890,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0899,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08aa,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0926,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0928,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x092e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0930,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0943,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0946,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x095a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0964,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0965,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x035f,clif->pTakeItem,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0366,clif->pSolveCharName,2);
+ packet(0x0438,clif->pWalkToXY,2);
+ packet(0x0817,clif->pMoveToKafra,2,4);
+ packet(0x085b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0866,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0876,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0881,clif->pGetCharNameRequest,2);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0885,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0890,clif->pStoragePassword,0);
+ packet(0x0899,clif->pDull/*,XXX*/);
+ packet(0x089a,clif->pMoveFromKafra,2,4);
+ packet(0x089b,clif->pActionRequest,2,6);
+ packet(0x08aa,clif->pTickSend,2);
+ packet(0x091e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0926,clif->pPartyInvite2,2);
+ packet(0x0928,clif->pFriendsListAdd,2);
+ packet(0x092c,clif->pReqCloseBuyingStore,0);
+ packet(0x092e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0930,clif->pHomMenu,2,4);
+ packet(0x0943,clif->pUseSkillToId,2,4,6);
+ packet(0x0946,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x095a,clif->pReqClickBuyingStore,2);
+ packet(0x0964,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0965,clif->pChangeDir,2,4);
#endif
// 2016-12-28aRagexe
#if PACKETVER == 20161228
- packet(0x0362,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x085a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0865,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0870,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0871,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0875,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0886,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0889,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0893,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a3,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a5,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ab,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08ac,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08ad,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0929,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x092c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0934,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0935,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0938,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0944,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
+ packet(0x0362,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x085a,clif->pGetCharNameRequest,2);
+ packet(0x085e,clif->pHomMenu,2,4);
+ packet(0x0865,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086a,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086c,clif->pTakeItem,2);
+ packet(0x086d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0870,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0871,clif->pChangeDir,2,4);
+ packet(0x0875,clif->pReqCloseBuyingStore,0);
+ packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0886,clif->pWalkToXY,2);
+ packet(0x0889,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0893,clif->pDropItem,2,4);
+ packet(0x089f,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pUseSkillToId,2,4,6);
+ packet(0x08a3,clif->pReqClickBuyingStore,2);
+ packet(0x08a5,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ab,clif->pMoveFromKafra,2,4);
+ packet(0x08ac,clif->pSolveCharName,2);
+ packet(0x08ad,clif->pStoragePassword,0);
+ packet(0x091c,clif->pFriendsListAdd,2);
+ packet(0x0929,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x092c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0934,clif->pPartyInvite2,2);
+ packet(0x0935,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pDull/*,XXX*/);
+ packet(0x093d,clif->pActionRequest,2,6);
+ packet(0x0944,clif->pTickSend,2);
#endif
// 2017-01-04aRagexe
#if PACKETVER == 20170104
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x085a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0896,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x085a,clif->pFriendsListAdd,2);
+ packet(0x087f,clif->pStoragePassword,0);
+ packet(0x0896,clif->pChangeDir,2,4);
+ packet(0x091b,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pUseSkillToId,2,4,6);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-01-11aRagexe
#if PACKETVER == 20170111
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a1,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a3,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a6,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0961,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0969,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pFriendsListAdd,2);
+ packet(0x087f,clif->pDull/*,XXX*/);
+ packet(0x088a,clif->pMoveToKafra,2,4);
+ packet(0x08a1,clif->pChangeDir,2,4);
+ packet(0x08a3,clif->pTakeItem,2);
+ packet(0x08a6,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091a,clif->pStoragePassword,0);
+ packet(0x091b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x094c,clif->pMoveFromKafra,2,4);
+ packet(0x0961,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0969,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-01-18aRagexe
#if PACKETVER == 20170118
- packet(0x022d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0865,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0873,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08ad,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0927,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0933,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0958,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0962,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x022d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pGetCharNameRequest,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pHomMenu,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pMoveFromKafra,2,4);
+ packet(0x0865,clif->pChangeDir,2,4);
+ packet(0x086f,clif->pTakeItem,2);
+ packet(0x0873,clif->pDull/*,XXX*/);
+ packet(0x089e,clif->pPartyInvite2,2);
+ packet(0x08ad,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0927,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pDropItem,2,4);
+ packet(0x0958,clif->pStoragePassword,0);
+ packet(0x0962,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pMoveToKafra,2,4);
#endif
// 2017-01-25aRagexe
#if PACKETVER == 20170125
- packet(0x0438,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0879,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0881,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0893,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0894,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0895,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0898,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0920,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x092b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0930,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0943,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0944,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0965,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0968,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x0438,clif->pActionRequest,2,6);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pDropItem,2,4);
+ packet(0x0879,clif->pUseSkillToId,2,4,6);
+ packet(0x087b,clif->pTakeItem,2);
+ packet(0x087d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0881,clif->pChangeDir,2,4);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0893,clif->pStoragePassword,0);
+ packet(0x0894,clif->pDull/*,XXX*/);
+ packet(0x0895,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0898,clif->pSolveCharName,2);
+ packet(0x089b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091b,clif->pReqClickBuyingStore,2);
+ packet(0x091c,clif->pMoveToKafra,2,4);
+ packet(0x091d,clif->pReqCloseBuyingStore,0);
+ packet(0x0920,clif->pFriendsListAdd,2);
+ packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x092b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0930,clif->pWalkToXY,2);
+ packet(0x093c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0943,clif->pTickSend,2);
+ packet(0x0944,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095c,clif->pMoveFromKafra,2,4);
+ packet(0x0965,clif->pGetCharNameRequest,2);
+ packet(0x0968,clif->pSearchStoreInfoNextPage,0);
#endif
// 2017-02-01aRagexe
#if PACKETVER == 20170201
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0875,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0879,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0881,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0886,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a4,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0919,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0920,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0938,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0966,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085e,clif->pChangeDir,2,4);
+ packet(0x0875,clif->pTakeItem,2);
+ packet(0x0879,clif->pDull/*,XXX*/);
+ packet(0x0881,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pWalkToXY,2);
+ packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0886,clif->pStoragePassword,0);
+ packet(0x088b,clif->pDropItem,2,4);
+ packet(0x08a4,clif->pDull/*,XXX*/);
+ packet(0x0919,clif->pFriendsListAdd,2);
+ packet(0x0920,clif->pPartyInvite2,2);
+ packet(0x0938,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0966,clif->pMoveFromKafra,2,4);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-02-08bRagexe
#if PACKETVER == 20170208
- packet(0x02c4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0860,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0892,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a1,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0921,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0923,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0932,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0937,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x02c4,clif->pDull/*,XXX*/);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pPartyInvite2,2);
+ packet(0x0860,clif->pChangeDir,2,4);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x088c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0892,clif->pFriendsListAdd,2);
+ packet(0x08a1,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x0921,clif->pDropItem,2,4);
+ packet(0x0923,clif->pTakeItem,2);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0932,clif->pMoveFromKafra,2,4);
+ packet(0x0937,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-02-15aRagexe
#if PACKETVER == 20170215
- packet(0x02c4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x035f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x083c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0876,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0883,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0890,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0896,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a8,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0925,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x092d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0942,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0962,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0969,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
+ packet(0x02c4,clif->pStoragePassword,0);
+ packet(0x035f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0360,clif->pTickSend,2);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x083c,clif->pActionRequest,2,6);
+ packet(0x085c,clif->pDropItem,2,4);
+ packet(0x0876,clif->pFriendsListAdd,2);
+ packet(0x087c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087d,clif->pChangeDir,2,4);
+ packet(0x087e,clif->pUseSkillToId,2,4,6);
+ packet(0x0883,clif->pSolveCharName,2);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x088a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088b,clif->pPartyInvite2,2);
+ packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0890,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0896,clif->pDull/*,XXX*/);
+ packet(0x089b,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a8,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091c,clif->pReqCloseBuyingStore,0);
+ packet(0x0925,clif->pMoveFromKafra,2,4);
+ packet(0x092b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x092d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0942,clif->pTakeItem,2);
+ packet(0x094e,clif->pGetCharNameRequest,2);
+ packet(0x095f,clif->pReqClickBuyingStore,2);
+ packet(0x0962,clif->pHomMenu,2,4);
+ packet(0x0969,clif->pWalkToXY,2);
#endif
// 2017-02-22aRagexe
#if PACKETVER == 20170222
- packet(0x0202,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0866,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0870,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0871,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0877,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0894,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a3,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a8,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0937,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0939,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0943,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0962,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pHomMenu,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pFriendsListAdd,2);
+ packet(0x0866,clif->pDropItem,2,4);
+ packet(0x0870,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0871,clif->pDull/*,XXX*/);
+ packet(0x0877,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0894,clif->pTakeItem,2);
+ packet(0x08a3,clif->pChangeDir,2,4);
+ packet(0x08a8,clif->pPartyInvite2,2);
+ packet(0x0937,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0939,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0943,clif->pStoragePassword,0);
+ packet(0x095d,clif->pMoveToKafra,2,4);
+ packet(0x0962,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-02-28aRagexe, 2017-02-28bRagexe
#if PACKETVER == 20170228
- packet(0x022d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0360,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0819,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0863,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0873,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0874,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0876,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0883,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0884,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0889,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0893,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a0,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a7,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0937,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0944,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0947,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0948,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0952,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0955,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x022d,clif->pDropItem,2,4);
+ packet(0x0360,clif->pActionRequest,2,6);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0819,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0863,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0873,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0874,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0876,clif->pReqCloseBuyingStore,0);
+ packet(0x0883,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0884,clif->pWalkToXY,2);
+ packet(0x0889,clif->pChangeDir,2,4);
+ packet(0x0893,clif->pGetCharNameRequest,2);
+ packet(0x089e,clif->pMoveToKafra,2,4);
+ packet(0x08a0,clif->pFriendsListAdd,2);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08a7,clif->pReqClickBuyingStore,2);
+ packet(0x091f,clif->pUseSkillToId,2,4,6);
+ packet(0x092a,clif->pTakeItem,2);
+ packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0937,clif->pTickSend,2);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x0944,clif->pMoveFromKafra,2,4);
+ packet(0x0947,clif->pSolveCharName,2);
+ packet(0x0948,clif->pPartyInvite2,2);
+ packet(0x0952,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0955,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2017-03-08aRagexe
#if PACKETVER == 20170308
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087d,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-03-15cRagexe
#if PACKETVER == 20170315
- packet(0x02c4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x035f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0360,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0366,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0436,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x07ec,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0863,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0872,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0884,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x088b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08aa,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0920,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0922,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0944,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x094e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0950,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0952,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x02c4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x035f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0360,clif->pChangeDir,2,4);
+ packet(0x0366,clif->pTakeItem,2);
+ packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0436,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x07ec,clif->pTickSend,2);
+ packet(0x085c,clif->pDull/*,XXX*/);
+ packet(0x0863,clif->pHomMenu,2,4);
+ packet(0x086a,clif->pMoveFromKafra,2,4);
+ packet(0x0872,clif->pFriendsListAdd,2);
+ packet(0x087b,clif->pPartyInvite2,2);
+ packet(0x0884,clif->pActionRequest,2,6);
+ packet(0x088b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x088d,clif->pDull/*,XXX*/);
+ packet(0x088f,clif->pWalkToXY,2);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x089c,clif->pReqCloseBuyingStore,0);
+ packet(0x08aa,clif->pMoveToKafra,2,4);
+ packet(0x091a,clif->pDropItem,2,4);
+ packet(0x091b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0920,clif->pSolveCharName,2);
+ packet(0x0922,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0944,clif->pGetCharNameRequest,2);
+ packet(0x094a,clif->pReqClickBuyingStore,2);
+ packet(0x094e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0950,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0952,clif->pStoragePassword,0);
#endif
// 2017-03-22aRagexe, 2017-03-22bRagexe
#if PACKETVER == 20170322
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x091a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x091a,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-03-29bRagexe, 2017-03-29cRagexe
#if PACKETVER == 20170329
- packet(0x0281,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0363,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x087a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0888,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a8,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0917,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0926,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0929,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0937,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0939,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0949,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0363,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pStoragePassword,0);
+ packet(0x087a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0888,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a8,clif->pDropItem,2,4);
+ packet(0x0917,clif->pDull/*,XXX*/);
+ packet(0x0926,clif->pChangeDir,2,4);
+ packet(0x0929,clif->pTakeItem,2);
+ packet(0x092e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0937,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0939,clif->pFriendsListAdd,2);
+ packet(0x0949,clif->pMoveFromKafra,2,4);
+ packet(0x095f,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-04-05bRagexe, 2017-04-05cRagexe
#if PACKETVER == 20170405
- packet(0x022d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0281,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0860,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0864,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0865,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0893,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a5,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0964,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0281,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pActionRequest,2,6);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pTakeItem,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pHomMenu,2,4);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pMoveToKafra,2,4);
+ packet(0x0860,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0864,clif->pPartyInvite2,2);
+ packet(0x0865,clif->pChangeDir,2,4);
+ packet(0x086f,clif->pFriendsListAdd,2);
+ packet(0x0893,clif->pMoveFromKafra,2,4);
+ packet(0x08a5,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094c,clif->pStoragePassword,0);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0964,clif->pDropItem,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-04-12aRagexe
#if PACKETVER == 20170412
- packet(0x023b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0365,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0869,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0878,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0879,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0890,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0893,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a1,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0929,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0938,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0942,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0945,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0949,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x094f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0952,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0959,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x023b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0365,clif->pReqClickBuyingStore,2);
+ packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0869,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086d,clif->pMoveFromKafra,2,4);
+ packet(0x0878,clif->pWalkToXY,2);
+ packet(0x0879,clif->pDull/*,XXX*/);
+ packet(0x087b,clif->pUseSkillToId,2,4,6);
+ packet(0x088b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0890,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0893,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pSolveCharName,2);
+ packet(0x089a,clif->pHomMenu,2,4);
+ packet(0x089c,clif->pDropItem,2,4);
+ packet(0x08a1,clif->pActionRequest,2,6);
+ packet(0x091a,clif->pChangeDir,2,4);
+ packet(0x091e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0929,clif->pTickSend,2);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0942,clif->pFriendsListAdd,2);
+ packet(0x0945,clif->pMoveToKafra,2,4);
+ packet(0x0949,clif->pSearchStoreInfoNextPage,0);
+ packet(0x094f,clif->pPartyInvite2,2);
+ packet(0x0952,clif->pReqCloseBuyingStore,0);
+ packet(0x0959,clif->pTakeItem,2);
+ packet(0x095b,clif->pGetCharNameRequest,2);
+ packet(0x095c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095d,clif->pStoragePassword,0);
#endif
// 2017-04-19aRagexe
#if PACKETVER == 20170419
- packet(0x0811,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0819,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0838,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0868,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0872,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0881,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0897,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0898,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08aa,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0920,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0922,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0930,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0931,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0935,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0942,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x095c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0963,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0965,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
+ packet(0x0811,clif->pChangeDir,2,4);
+ packet(0x0819,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0838,clif->pGetCharNameRequest,2);
+ packet(0x085a,clif->pActionRequest,2,6);
+ packet(0x085e,clif->pWalkToXY,2);
+ packet(0x0862,clif->pPartyInvite2,2);
+ packet(0x0868,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0872,clif->pDull/*,XXX*/);
+ packet(0x0881,clif->pStoragePassword,0);
+ packet(0x088d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088f,clif->pHomMenu,2,4);
+ packet(0x0897,clif->pDropItem,2,4);
+ packet(0x0898,clif->pTickSend,2);
+ packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08aa,clif->pMoveToKafra,2,4);
+ packet(0x091b,clif->pSolveCharName,2);
+ packet(0x0920,clif->pUseSkillToId,2,4,6);
+ packet(0x0922,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0930,clif->pMoveFromKafra,2,4);
+ packet(0x0931,clif->pReqCloseBuyingStore,0);
+ packet(0x0935,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093a,clif->pFriendsListAdd,2);
+ packet(0x093f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0942,clif->pSearchStoreInfoNextPage,0);
+ packet(0x095c,clif->pTakeItem,2);
+ packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0963,clif->pDull/*,XXX*/);
+ packet(0x0965,clif->pReqClickBuyingStore,2);
#endif
// 2017-04-26bRagexe
#if PACKETVER == 20170426
- packet(0x0281,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0866,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0887,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0899,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a2,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0927,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0958,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0963,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pStoragePassword,0);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0866,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086f,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0887,clif->pSolveCharName,2);
+ packet(0x0899,clif->pMoveFromKafra,2,4);
+ packet(0x089c,clif->pHomMenu,2,4);
+ packet(0x08a2,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a4,clif->pTakeItem,2);
+ packet(0x091f,clif->pDull/*,XXX*/);
+ packet(0x0927,clif->pChangeDir,2,4);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x0958,clif->pFriendsListAdd,2);
+ packet(0x0963,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-05-02aRagexe, 2017-05-02bRagexe
#if PACKETVER == 20170502
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0875,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0894,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x089c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0950,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0875,clif->pStoragePassword,0);
+ packet(0x0894,clif->pChangeDir,2,4);
+ packet(0x089c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093c,clif->pFriendsListAdd,2);
+ packet(0x0950,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-05-17aRagexe
#if PACKETVER == 20170517
- packet(0x0364,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0367,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0815,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0817,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0868,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x088d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0894,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0896,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0899,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a2,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a8,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08aa,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0923,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0945,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0946,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0947,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0958,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0960,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0964,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x0364,clif->pDull/*,XXX*/);
+ packet(0x0367,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0815,clif->pUseSkillToId,2,4,6);
+ packet(0x0817,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0868,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087b,clif->pSolveCharName,2);
+ packet(0x087d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088c,clif->pMoveFromKafra,2,4);
+ packet(0x088d,clif->pChangeDir,2,4);
+ packet(0x0894,clif->pGetCharNameRequest,2);
+ packet(0x0896,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0899,clif->pPartyInvite2,2);
+ packet(0x089e,clif->pDull/*,XXX*/);
+ packet(0x089f,clif->pReqCloseBuyingStore,0);
+ packet(0x08a2,clif->pTickSend,2);
+ packet(0x08a8,clif->pWalkToXY,2);
+ packet(0x08aa,clif->pMoveToKafra,2,4);
+ packet(0x091b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0923,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093b,clif->pDropItem,2,4);
+ packet(0x0945,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0946,clif->pReqClickBuyingStore,2);
+ packet(0x0947,clif->pStoragePassword,0);
+ packet(0x0958,clif->pHomMenu,2,4);
+ packet(0x0960,clif->pFriendsListAdd,2);
+ packet(0x0964,clif->pTakeItem,2);
#endif
// 2017-05-24aRagexe, 2017-05-24bRagexe
#if PACKETVER == 20170524
- packet(0x0364,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0368,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0802,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0860,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0864,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0866,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0868,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0873,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0874,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0882,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0894,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a1,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0923,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0925,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0934,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0946,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0958,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0964,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0967,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0968,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
+ packet(0x0364,clif->pPartyInvite2,2);
+ packet(0x0368,clif->pStoragePassword,0);
+ packet(0x0802,clif->pDropItem,2,4);
+ packet(0x085e,clif->pActionRequest,2,6);
+ packet(0x085f,clif->pReqClickBuyingStore,2);
+ packet(0x0860,clif->pTickSend,2);
+ packet(0x0864,clif->pTakeItem,2);
+ packet(0x0866,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0868,clif->pMoveToKafra,2,4);
+ packet(0x086d,clif->pHomMenu,2,4);
+ packet(0x0873,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0874,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0882,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088d,clif->pUseSkillToId,2,4,6);
+ packet(0x0894,clif->pMoveFromKafra,2,4);
+ packet(0x089c,clif->pWalkToXY,2);
+ packet(0x08a1,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x0923,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0925,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0934,clif->pChangeDir,2,4);
+ packet(0x0946,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0958,clif->pDull/*,XXX*/);
+ packet(0x095a,clif->pGetCharNameRequest,2);
+ packet(0x095b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0964,clif->pReqCloseBuyingStore,0);
+ packet(0x0967,clif->pFriendsListAdd,2);
+ packet(0x0968,clif->pSolveCharName,2);
#endif
// 2017-05-31aRagexe
#if PACKETVER == 20170531
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0369,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x07ec,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0819,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x085f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0861,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0873,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0875,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0878,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0885,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x088d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0894,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08ac,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08ad,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0933,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0940,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0945,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0963,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0968,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x0361,clif->pChangeDir,2,4);
+ packet(0x0369,clif->pUseSkillToId,2,4,6);
+ packet(0x07e4,clif->pWalkToXY,2);
+ packet(0x07ec,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0819,clif->pTickSend,2);
+ packet(0x085b,clif->pDull/*,XXX*/);
+ packet(0x085f,clif->pSolveCharName,2);
+ packet(0x0861,clif->pFriendsListAdd,2);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x0873,clif->pReqCloseBuyingStore,0);
+ packet(0x0875,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0878,clif->pPartyInvite2,2);
+ packet(0x087b,clif->pActionRequest,2,6);
+ packet(0x0885,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088d,clif->pDropItem,2,4);
+ packet(0x0894,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x089c,clif->pHomMenu,2,4);
+ packet(0x08a2,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08ac,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08ad,clif->pMoveToKafra,2,4);
+ packet(0x092d,clif->pGetCharNameRequest,2);
+ packet(0x0933,clif->pMoveFromKafra,2,4);
+ packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0940,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0945,clif->pReqClickBuyingStore,2);
+ packet(0x0963,clif->pTakeItem,2);
+ packet(0x0968,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2017-06-07cRagexe
#if PACKETVER == 20170607
- packet(0x0361,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x07e4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x085e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0862,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0864,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0871,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0873,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0875,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0885,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x088a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0897,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a9,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08ab,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0917,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0918,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0919,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0925,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0927,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0931,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0934,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0938,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x093d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0942,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0944,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0949,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0361,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x07e4,clif->pTickSend,2);
+ packet(0x085a,clif->pChangeDir,2,4);
+ packet(0x085e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0862,clif->pGetCharNameRequest,2);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x0864,clif->pDropItem,2,4);
+ packet(0x0871,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0873,clif->pDull/*,XXX*/);
+ packet(0x0875,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0885,clif->pFriendsListAdd,2);
+ packet(0x088a,clif->pMoveFromKafra,2,4);
+ packet(0x0897,clif->pTakeItem,2);
+ packet(0x089d,clif->pMoveToKafra,2,4);
+ packet(0x08a9,clif->pUseSkillToId,2,4,6);
+ packet(0x08ab,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0917,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0918,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0919,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0925,clif->pPartyInvite2,2);
+ packet(0x0927,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0931,clif->pDull/*,XXX*/);
+ packet(0x0934,clif->pWalkToXY,2);
+ packet(0x0938,clif->pActionRequest,2,6);
+ packet(0x093d,clif->pReqCloseBuyingStore,0);
+ packet(0x0942,clif->pHomMenu,2,4);
+ packet(0x0944,clif->pSolveCharName,2);
+ packet(0x0949,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2017-06-14bRagexe
#if PACKETVER == 20170614
- packet(0x023b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0361,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0364,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0367,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0437,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0838,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x083c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0860,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0865,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0866,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0867,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x086b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0877,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0889,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0899,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ad,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0928,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0936,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0944,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0957,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0963,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x023b,clif->pMoveFromKafra,2,4);
+ packet(0x0361,clif->pWalkToXY,2);
+ packet(0x0364,clif->pHomMenu,2,4);
+ packet(0x0367,clif->pDropItem,2,4);
+ packet(0x0437,clif->pStoragePassword,0);
+ packet(0x0838,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x083c,clif->pActionRequest,2,6);
+ packet(0x0860,clif->pReqClickBuyingStore,2);
+ packet(0x0865,clif->pDull/*,XXX*/);
+ packet(0x0866,clif->pTickSend,2);
+ packet(0x0867,clif->pFriendsListAdd,2);
+ packet(0x086b,clif->pReqCloseBuyingStore,0);
+ packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0877,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x087d,clif->pSolveCharName,2);
+ packet(0x087e,clif->pChangeDir,2,4);
+ packet(0x0889,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0899,clif->pPartyInvite2,2);
+ packet(0x089d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ad,clif->pTakeItem,2);
+ packet(0x091b,clif->pUseSkillToId,2,4,6);
+ packet(0x0928,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0936,clif->pGetCharNameRequest,2);
+ packet(0x0944,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0957,clif->pDull/*,XXX*/);
+ packet(0x0963,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2017-06-21bRagexe
#if PACKETVER == 20170621
- packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0365,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0366,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0802,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0885,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0889,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a8,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0956,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0961,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pTakeItem,2);
+ packet(0x0365,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0366,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pFriendsListAdd,2);
+ packet(0x0802,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pChangeDir,2,4);
+ packet(0x087d,clif->pDropItem,2,4);
+ packet(0x0885,clif->pPartyInvite2,2);
+ packet(0x0889,clif->pMoveFromKafra,2,4);
+ packet(0x08a8,clif->pHomMenu,2,4);
+ packet(0x0956,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pStoragePassword,0);
+ packet(0x095b,clif->pDull/*,XXX*/);
+ packet(0x095c,clif->pMoveToKafra,2,4);
+ packet(0x0961,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-06-28bRagexe
#if PACKETVER == 20170628
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0863,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0863,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-07-05aRagexe
#if PACKETVER == 20170705
- packet(0x0202,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x02c4,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0886,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x088d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0930,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0932,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0934,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pStoragePassword,0);
+ packet(0x02c4,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x0886,clif->pFriendsListAdd,2);
+ packet(0x088d,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pPartyInvite2,2);
+ packet(0x089a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089d,clif->pDropItem,2,4);
+ packet(0x091a,clif->pChangeDir,2,4);
+ packet(0x092f,clif->pDull/*,XXX*/);
+ packet(0x0930,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0932,clif->pTakeItem,2);
+ packet(0x0934,clif->pMoveFromKafra,2,4);
+ packet(0x094c,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-07-12bRagexe
#if PACKETVER == 20170712
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0944,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0944,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-07-19aRagexe
#if PACKETVER == 20170719
- packet(0x022d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0367,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0368,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0369,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x07e4,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0881,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0882,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0885,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0898,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a6,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a8,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x093d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0944,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x022d,clif->pActionRequest,2,6);
+ packet(0x0367,clif->pReqCloseBuyingStore,0);
+ packet(0x0368,clif->pDull/*,XXX*/);
+ packet(0x0369,clif->pHomMenu,2,4);
+ packet(0x07e4,clif->pGetCharNameRequest,2);
+ packet(0x085a,clif->pTickSend,2);
+ packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x087d,clif->pTakeItem,2);
+ packet(0x0881,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0882,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0885,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0898,clif->pUseSkillToId,2,4,6);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x089d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a6,clif->pMoveFromKafra,2,4);
+ packet(0x08a8,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091b,clif->pDropItem,2,4);
+ packet(0x091f,clif->pSolveCharName,2);
+ packet(0x092c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x093d,clif->pWalkToXY,2);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x0944,clif->pChangeDir,2,4);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x0966,clif->pMoveToKafra,2,4);
#endif
// 2017-07-26aRagexe
#if PACKETVER == 20170726
- packet(0x0363,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0369,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0438,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0838,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0873,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0874,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0878,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0881,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0888,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a3,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a7,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08aa,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08ab,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08ac,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0921,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0923,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0943,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0950,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0952,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0954,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0963,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x0363,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0369,clif->pUseSkillToId,2,4,6);
+ packet(0x0438,clif->pPartyInvite2,2);
+ packet(0x0838,clif->pReqCloseBuyingStore,0);
+ packet(0x0873,clif->pReqClickBuyingStore,2);
+ packet(0x0874,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0878,clif->pActionRequest,2,6);
+ packet(0x0881,clif->pDull/*,XXX*/);
+ packet(0x0888,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088e,clif->pWalkToXY,2);
+ packet(0x08a3,clif->pDull/*,XXX*/);
+ packet(0x08a7,clif->pStoragePassword,0);
+ packet(0x08aa,clif->pGetCharNameRequest,2);
+ packet(0x08ab,clif->pTakeItem,2);
+ packet(0x08ac,clif->pTickSend,2);
+ packet(0x091d,clif->pFriendsListAdd,2);
+ packet(0x091e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091f,clif->pHomMenu,2,4);
+ packet(0x0921,clif->pSolveCharName,2);
+ packet(0x0923,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0943,clif->pDropItem,2,4);
+ packet(0x094f,clif->pMoveFromKafra,2,4);
+ packet(0x0950,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0952,clif->pChangeDir,2,4);
+ packet(0x0954,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0963,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2017-08-01aRagexe, 2017-08-01bRagexe
#if PACKETVER == 20170801
- packet(0x022d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0281,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pDropItem,2,4);
+ packet(0x0281,clif->pChangeDir,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087d,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x094f,clif->pFriendsListAdd,2);
+ packet(0x095a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-08-09cRagexe
#if PACKETVER == 20170809
- packet(0x022d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0281,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0364,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0366,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0367,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x07e4,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0802,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0835,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0868,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0876,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0880,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0890,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0892,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0895,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0899,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a3,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a6,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0918,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0921,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x092b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0931,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0939,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0940,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x022d,clif->pDull/*,XXX*/);
+ packet(0x0281,clif->pMoveFromKafra,2,4);
+ packet(0x0364,clif->pPartyInvite2,2);
+ packet(0x0366,clif->pFriendsListAdd,2);
+ packet(0x0367,clif->pReqCloseBuyingStore,0);
+ packet(0x07e4,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0802,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0835,clif->pDropItem,2,4);
+ packet(0x0868,clif->pActionRequest,2,6);
+ packet(0x086e,clif->pChangeDir,2,4);
+ packet(0x086f,clif->pHomMenu,2,4);
+ packet(0x0876,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0880,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088c,clif->pUseSkillToId,2,4,6);
+ packet(0x0890,clif->pStoragePassword,0);
+ packet(0x0892,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0895,clif->pWalkToXY,2);
+ packet(0x0899,clif->pDull/*,XXX*/);
+ packet(0x08a3,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a6,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0918,clif->pTakeItem,2);
+ packet(0x0921,clif->pMoveToKafra,2,4);
+ packet(0x092a,clif->pGetCharNameRequest,2);
+ packet(0x092b,clif->pTickSend,2);
+ packet(0x0931,clif->pSolveCharName,2);
+ packet(0x0939,clif->pReqClickBuyingStore,2);
+ packet(0x093b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0940,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2017-08-16cRagexe, 2017-08-16dRagexe
#if PACKETVER == 20170816
- packet(0x022d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x035f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0361,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0438,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0862,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0864,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x087e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0881,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0882,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0888,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0889,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a3,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a7,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a9,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08ac,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x091c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0921,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0925,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0950,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0959,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0960,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x022d,clif->pGetCharNameRequest,2);
+ packet(0x035f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0361,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0438,clif->pActionRequest,2,6);
+ packet(0x085a,clif->pSolveCharName,2);
+ packet(0x0862,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0864,clif->pReqCloseBuyingStore,0);
+ packet(0x087e,clif->pTakeItem,2);
+ packet(0x0881,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0882,clif->pStoragePassword,0);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0888,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0889,clif->pTickSend,2);
+ packet(0x08a3,clif->pFriendsListAdd,2);
+ packet(0x08a7,clif->pDull/*,XXX*/);
+ packet(0x08a9,clif->pWalkToXY,2);
+ packet(0x08ac,clif->pHomMenu,2,4);
+ packet(0x091c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0921,clif->pReqClickBuyingStore,2);
+ packet(0x0925,clif->pMoveFromKafra,2,4);
+ packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093a,clif->pPartyInvite2,2);
+ packet(0x093d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pDropItem,2,4);
+ packet(0x0950,clif->pChangeDir,2,4);
+ packet(0x0959,clif->pMoveToKafra,2,4);
+ packet(0x0960,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2017-08-23aRagexe
#if PACKETVER == 20170823
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08ac,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pPartyInvite2,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pChangeDir,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086d,clif->pStoragePassword,0);
+ packet(0x08ac,clif->pFriendsListAdd,2);
+ packet(0x095b,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-08-30aRagexe, 2017-08-30bRagexe
#if PACKETVER == 20170830
- packet(0x0281,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x02c4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0364,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0860,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0865,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0875,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0884,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0888,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0899,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0921,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0925,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0939,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0940,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0942,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0943,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0947,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0951,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0959,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x0281,clif->pChangeDir,2,4);
+ packet(0x02c4,clif->pTakeItem,2);
+ packet(0x0363,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0364,clif->pDull/*,XXX*/);
+ packet(0x0860,clif->pReqCloseBuyingStore,0);
+ packet(0x0865,clif->pWalkToXY,2);
+ packet(0x086a,clif->pPartyInvite2,2);
+ packet(0x0875,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0888,clif->pUseSkillToId,2,4,6);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0899,clif->pDropItem,2,4);
+ packet(0x089a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089e,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x08a8,clif->pMoveFromKafra,2,4);
+ packet(0x091e,clif->pTickSend,2);
+ packet(0x0921,clif->pHomMenu,2,4);
+ packet(0x0925,clif->pReqClickBuyingStore,2);
+ packet(0x092e,clif->pGetCharNameRequest,2);
+ packet(0x0939,clif->pFriendsListAdd,2);
+ packet(0x093e,clif->pActionRequest,2,6);
+ packet(0x0940,clif->pSolveCharName,2);
+ packet(0x0942,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0943,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0947,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0951,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0959,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-09-06cRagexe
#if PACKETVER == 20170906
- packet(0x0202,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0281,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0866,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a3,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a7,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0953,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pDull/*,XXX*/);
+ packet(0x0281,clif->pStoragePassword,0);
+ packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pPartyInvite2,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pChangeDir,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pDropItem,2,4);
+ packet(0x0866,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x087b,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pMoveFromKafra,2,4);
+ packet(0x08a3,clif->pFriendsListAdd,2);
+ packet(0x08a7,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091a,clif->pTakeItem,2);
+ packet(0x091e,clif->pHomMenu,2,4);
+ packet(0x0953,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-09-13cRagexe
#if PACKETVER == 20170913
- packet(0x0281,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x035f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0437,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x07e4,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0817,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0835,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x085a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0860,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0865,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0866,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x088c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0891,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0892,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a7,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08aa,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08ab,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ac,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ad,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0920,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0923,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0925,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0927,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
+ packet(0x0281,clif->pGetCharNameRequest,2);
+ packet(0x035f,clif->pFriendsListAdd,2);
+ packet(0x0437,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x07e4,clif->pMoveFromKafra,2,4);
+ packet(0x0817,clif->pActionRequest,2,6);
+ packet(0x0835,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x085a,clif->pReqCloseBuyingStore,0);
+ packet(0x0860,clif->pTakeItem,2);
+ packet(0x0865,clif->pPartyInvite2,2);
+ packet(0x0866,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088c,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0891,clif->pMoveToKafra,2,4);
+ packet(0x0892,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pReqClickBuyingStore,2);
+ packet(0x08a7,clif->pDull/*,XXX*/);
+ packet(0x08aa,clif->pUseSkillToId,2,4,6);
+ packet(0x08ab,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ac,clif->pChangeDir,2,4);
+ packet(0x08ad,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091b,clif->pTickSend,2);
+ packet(0x091d,clif->pDropItem,2,4);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x0920,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0923,clif->pWalkToXY,2);
+ packet(0x0925,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0927,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095c,clif->pSolveCharName,2);
#endif
// 2017-09-20aRagexe
#if PACKETVER == 20170920
- packet(0x0369,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0436,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x085a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0861,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0862,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0864,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0865,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0874,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0875,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0889,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x089b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0919,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0921,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0923,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0926,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0939,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0945,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0961,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0966,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x096a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x0369,clif->pTakeItem,2);
+ packet(0x0436,clif->pItemListWindowSelected,2,4,8);
+ packet(0x07ec,clif->pMoveFromKafra,2,4);
+ packet(0x085a,clif->pWalkToXY,2);
+ packet(0x0861,clif->pFriendsListAdd,2);
+ packet(0x0862,clif->pUseSkillToId,2,4,6);
+ packet(0x0864,clif->pStoragePassword,0);
+ packet(0x0865,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086a,clif->pPartyInvite2,2);
+ packet(0x086c,clif->pDropItem,2,4);
+ packet(0x0874,clif->pReqCloseBuyingStore,0);
+ packet(0x0875,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pGetCharNameRequest,2);
+ packet(0x088e,clif->pTickSend,2);
+ packet(0x089b,clif->pActionRequest,2,6);
+ packet(0x0919,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x0921,clif->pSolveCharName,2);
+ packet(0x0923,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0926,clif->pMoveToKafra,2,4);
+ packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0939,clif->pChangeDir,2,4);
+ packet(0x0945,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095d,clif->pHomMenu,2,4);
+ packet(0x0961,clif->pReqClickBuyingStore,2);
+ packet(0x0966,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x096a,clif->pSearchStoreInfoNextPage,0);
#endif
// 2017-09-27bRagexe, 2017-09-27cRagexe, 2017-09-27dRagexe
#if PACKETVER == 20170927
- packet(0x02c4,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x035f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0361,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x085c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0873,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0875,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x087e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0899,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a3,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a5,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ad,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x091e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0922,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0923,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0927,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0942,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0945,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x094d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0959,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x02c4,clif->pHomMenu,2,4);
+ packet(0x035f,clif->pGetCharNameRequest,2);
+ packet(0x0361,clif->pDull/*,XXX*/);
+ packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x085c,clif->pUseSkillToId,2,4,6);
+ packet(0x0873,clif->pSolveCharName,2);
+ packet(0x0875,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x087e,clif->pChangeDir,2,4);
+ packet(0x088b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0899,clif->pActionRequest,2,6);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x089b,clif->pMoveFromKafra,2,4);
+ packet(0x08a3,clif->pReqCloseBuyingStore,0);
+ packet(0x08a5,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08ad,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x091e,clif->pReqClickBuyingStore,2);
+ packet(0x0922,clif->pPartyInvite2,2);
+ packet(0x0923,clif->pDropItem,2,4);
+ packet(0x0927,clif->pWalkToXY,2);
+ packet(0x093b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0942,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0945,clif->pTickSend,2);
+ packet(0x094b,clif->pFriendsListAdd,2);
+ packet(0x094d,clif->pTakeItem,2);
+ packet(0x0959,clif->pMoveToKafra,2,4);
+ packet(0x095a,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-10-02cRagexe
#if PACKETVER == 20171002
- packet(0x022d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0885,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0897,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0928,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x092d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0934,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0943,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x095f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pDropItem,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pHomMenu,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0885,clif->pMoveToKafra,2,4);
+ packet(0x0897,clif->pChangeDir,2,4);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0928,clif->pItemListWindowSelected,2,4,8);
+ packet(0x092d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0934,clif->pStoragePassword,0);
+ packet(0x093b,clif->pMoveFromKafra,2,4);
+ packet(0x093d,clif->pTakeItem,2);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x0943,clif->pPartyInvite2,2);
+ packet(0x095f,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-10-11aRagexe, 2017-10-11bRagexe
#if PACKETVER == 20171011
- packet(0x023b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0882,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0950,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0954,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pWalkToXY,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pStoragePassword,0);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087b,clif->pFriendsListAdd,2);
+ packet(0x0882,clif->pHomMenu,2,4);
+ packet(0x0950,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0954,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-10-18aRagexe
#if PACKETVER == 20171018
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0889,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a6,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0938,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0944,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x094f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pTakeItem,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086a,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x087e,clif->pHomMenu,2,4);
+ packet(0x0889,clif->pMoveFromKafra,2,4);
+ packet(0x089a,clif->pDropItem,2,4);
+ packet(0x089f,clif->pPartyInvite2,2);
+ packet(0x08a6,clif->pChangeDir,2,4);
+ packet(0x0938,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0944,clif->pStoragePassword,0);
+ packet(0x094a,clif->pFriendsListAdd,2);
+ packet(0x094f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-10-25bRagexe, 2017-10-25cRagexe, 2017-10-25dRagexe, 2017-10-25eRagexe
#if PACKETVER == 20171025
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-11-01aRagexe
#if PACKETVER == 20171101
- packet(0x022d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0369,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0835,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0860,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0872,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0876,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0886,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0890,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0899,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a0,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08ab,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ad,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0939,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0957,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x095a,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0966,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x022d,clif->pStoragePassword,0);
+ packet(0x0368,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0369,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x0835,clif->pDropItem,2,4);
+ packet(0x085b,clif->pHomMenu,2,4);
+ packet(0x0860,clif->pGetCharNameRequest,2);
+ packet(0x086c,clif->pUseSkillToId,2,4,6);
+ packet(0x0872,clif->pFriendsListAdd,2);
+ packet(0x0876,clif->pChangeDir,2,4);
+ packet(0x0886,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pReqClickBuyingStore,2);
+ packet(0x0890,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x0899,clif->pPartyInvite2,2);
+ packet(0x089b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a0,clif->pMoveFromKafra,2,4);
+ packet(0x08ab,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ad,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091b,clif->pMoveToKafra,2,4);
+ packet(0x0939,clif->pWalkToXY,2);
+ packet(0x094a,clif->pReqCloseBuyingStore,0);
+ packet(0x094d,clif->pSolveCharName,2);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0957,clif->pActionRequest,2,6);
+ packet(0x095a,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0962,clif->pTakeItem,2);
+ packet(0x0966,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-11-08aRagexe
#if PACKETVER == 20171108
- packet(0x0202,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x07e4,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0815,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0819,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x085d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0863,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0878,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0884,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0896,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a2,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a9,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ad,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0940,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0945,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0947,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0949,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0958,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0963,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0965,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0967,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x0202,clif->pTickSend,2);
+ packet(0x0361,clif->pSearchStoreInfoNextPage,0);
+ packet(0x07e4,clif->pSolveCharName,2);
+ packet(0x0815,clif->pStoragePassword,0);
+ packet(0x0819,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x085d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0863,clif->pWalkToXY,2);
+ packet(0x0878,clif->pFriendsListAdd,2);
+ packet(0x087e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0884,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0896,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a2,clif->pUseSkillToId,2,4,6);
+ packet(0x08a9,clif->pHomMenu,2,4);
+ packet(0x08ad,clif->pGetCharNameRequest,2);
+ packet(0x091d,clif->pReqCloseBuyingStore,0);
+ packet(0x091f,clif->pChangeDir,2,4);
+ packet(0x0940,clif->pReqClickBuyingStore,2);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x0945,clif->pTakeItem,2);
+ packet(0x0947,clif->pDull/*,XXX*/);
+ packet(0x0949,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094e,clif->pPartyInvite2,2);
+ packet(0x0958,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095a,clif->pMoveFromKafra,2,4);
+ packet(0x0963,clif->pActionRequest,2,6);
+ packet(0x0965,clif->pDropItem,2,4);
+ packet(0x0967,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-11-15aRagexe
#if PACKETVER == 20171115
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0365,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x086f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0883,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0890,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0898,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0926,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0958,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0365,clif->pDropItem,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pFriendsListAdd,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086d,clif->pDull/*,XXX*/);
+ packet(0x086f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087e,clif->pMoveFromKafra,2,4);
+ packet(0x0883,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pMoveToKafra,2,4);
+ packet(0x0890,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0898,clif->pStoragePassword,0);
+ packet(0x08a4,clif->pChangeDir,2,4);
+ packet(0x0926,clif->pTakeItem,2);
+ packet(0x0958,clif->pHomMenu,2,4);
+ packet(0x095a,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-11-22aRagexe
#if PACKETVER == 20171122
- packet(0x0281,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x02c4,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x035f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0838,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x083c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x085b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0862,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0867,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0877,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0891,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0893,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0897,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0898,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a6,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a9,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0920,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0923,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0934,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0945,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0947,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0962,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0968,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0281,clif->pSolveCharName,2);
+ packet(0x02c4,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x035f,clif->pDull/*,XXX*/);
+ packet(0x0838,clif->pMoveToKafra,2,4);
+ packet(0x083c,clif->pHomMenu,2,4);
+ packet(0x085b,clif->pGetCharNameRequest,2);
+ packet(0x0862,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0867,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0877,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pTickSend,2);
+ packet(0x0891,clif->pTakeItem,2);
+ packet(0x0893,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0897,clif->pChangeDir,2,4);
+ packet(0x0898,clif->pDropItem,2,4);
+ packet(0x089a,clif->pMoveFromKafra,2,4);
+ packet(0x089e,clif->pActionRequest,2,6);
+ packet(0x08a6,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a9,clif->pReqClickBuyingStore,2);
+ packet(0x091e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0920,clif->pReqCloseBuyingStore,0);
+ packet(0x0923,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0934,clif->pStoragePassword,0);
+ packet(0x093b,clif->pUseSkillToId,2,4,6);
+ packet(0x0945,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x0947,clif->pWalkToXY,2);
+ packet(0x0962,clif->pPartyInvite2,2);
+ packet(0x0968,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2017-11-29aRagexe
#if PACKETVER == 20171129
- packet(0x02c4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0363,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0365,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0876,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0878,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a5,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0953,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0966,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x02c4,clif->pChangeDir,2,4);
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0363,clif->pFriendsListAdd,2);
+ packet(0x0365,clif->pDropItem,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pPartyInvite2,2);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pTakeItem,2);
+ packet(0x086d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0876,clif->pDull/*,XXX*/);
+ packet(0x0878,clif->pStoragePassword,0);
+ packet(0x088a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089c,clif->pHomMenu,2,4);
+ packet(0x08a5,clif->pMoveToKafra,2,4);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x094b,clif->pDull/*,XXX*/);
+ packet(0x0953,clif->pMoveFromKafra,2,4);
+ packet(0x0966,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-12-06bRagexe, 2017-12-06cRagexe
#if PACKETVER == 20171206
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x086a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x086e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0888,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0897,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a2,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a4,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0923,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0936,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0942,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0958,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0961,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pDropItem,2,4);
+ packet(0x086a,clif->pDull/*,XXX*/);
+ packet(0x086e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pTickSend,2);
+ packet(0x0888,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0897,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089d,clif->pStoragePassword,0);
+ packet(0x08a2,clif->pPartyInvite2,2);
+ packet(0x08a4,clif->pMoveFromKafra,2,4);
+ packet(0x091d,clif->pFriendsListAdd,2);
+ packet(0x0923,clif->pMoveToKafra,2,4);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x0936,clif->pChangeDir,2,4);
+ packet(0x0942,clif->pHomMenu,2,4);
+ packet(0x0958,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0961,clif->pTakeItem,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-12-13bRagexe
#if PACKETVER == 20171213
- packet(0x0202,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0890,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0957,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pPartyInvite2,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pFriendsListAdd,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pStoragePassword,0);
+ packet(0x091a,clif->pChangeDir,2,4);
+ packet(0x0957,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-12-20aRagexe
#if PACKETVER == 20171220
- packet(0x0281,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0366,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0369,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0436,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0437,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0872,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0873,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0880,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0882,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0885,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0899,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a7,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0924,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0929,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0933,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0941,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0946,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0951,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0957,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0964,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
+ packet(0x0281,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0366,clif->pMoveFromKafra,2,4);
+ packet(0x0369,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0436,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0437,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0872,clif->pUseSkillToId,2,4,6);
+ packet(0x0873,clif->pGetCharNameRequest,2);
+ packet(0x0880,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0882,clif->pTickSend,2);
+ packet(0x0885,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0899,clif->pStoragePassword,0);
+ packet(0x089e,clif->pWalkToXY,2);
+ packet(0x08a7,clif->pReqCloseBuyingStore,0);
+ packet(0x091b,clif->pTakeItem,2);
+ packet(0x091e,clif->pSolveCharName,2);
+ packet(0x0924,clif->pMoveToKafra,2,4);
+ packet(0x0929,clif->pDropItem,2,4);
+ packet(0x0933,clif->pChangeDir,2,4);
+ packet(0x093e,clif->pActionRequest,2,6);
+ packet(0x0941,clif->pReqClickBuyingStore,2);
+ packet(0x0946,clif->pDull/*,XXX*/);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0951,clif->pHomMenu,2,4);
+ packet(0x0957,clif->pFriendsListAdd,2);
+ packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0964,clif->pPartyInvite2,2);
#endif
// 2017-12-27aRagexe
#if PACKETVER == 20171227
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0888,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x088a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a0,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a5,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0938,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0945,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0969,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pActionRequest,2,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pChangeDir,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pGetCharNameRequest,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087d,clif->pStoragePassword,0);
+ packet(0x0888,clif->pMoveFromKafra,2,4);
+ packet(0x088a,clif->pDull/*,XXX*/);
+ packet(0x088d,clif->pTakeItem,2);
+ packet(0x08a0,clif->pMoveToKafra,2,4);
+ packet(0x08a5,clif->pHomMenu,2,4);
+ packet(0x092c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pPartyInvite2,2);
+ packet(0x0945,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x0969,clif->pDropItem,2,4);
+ packet(0x096a,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2018-01-03aRagexe, 2018-01-03bRagexe
#if PACKETVER == 20180103
- packet(0x02c4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0363,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0865,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x086b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0872,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0876,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0879,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a9,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ab,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08ac,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0922,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0926,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0927,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x092c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0935,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0938,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0946,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0948,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x095d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x02c4,clif->pMoveToKafra,2,4);
+ packet(0x0363,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0865,clif->pDull/*,XXX*/);
+ packet(0x086b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0872,clif->pReqClickBuyingStore,2);
+ packet(0x0876,clif->pTickSend,2);
+ packet(0x0879,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088e,clif->pReqCloseBuyingStore,0);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089f,clif->pSolveCharName,2);
+ packet(0x08a9,clif->pChangeDir,2,4);
+ packet(0x08ab,clif->pGetCharNameRequest,2);
+ packet(0x08ac,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091d,clif->pActionRequest,2,6);
+ packet(0x0922,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0926,clif->pDull/*,XXX*/);
+ packet(0x0927,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092c,clif->pMoveFromKafra,2,4);
+ packet(0x0935,clif->pTakeItem,2);
+ packet(0x0938,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pWalkToXY,2);
+ packet(0x0946,clif->pStoragePassword,0);
+ packet(0x0948,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x095d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095f,clif->pDropItem,2,4);
+ packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2018-01-17aRagexe
#if PACKETVER == 20180117
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0875,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0875,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-01-24bRagexe, 2018-01-31Ragexe
#if PACKETVER == 20180124 || \
PACKETVER == 20180131
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x086a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0888,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0890,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0919,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0946,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0958,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0961,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pMoveToKafra,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pDropItem,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pStoragePassword,0);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x086a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086f,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pPartyInvite2,2);
+ packet(0x0888,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0890,clif->pMoveFromKafra,2,4);
+ packet(0x0919,clif->pFriendsListAdd,2);
+ packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0946,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094d,clif->pTakeItem,2);
+ packet(0x0958,clif->pChangeDir,2,4);
+ packet(0x0961,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-02-07bRagexe, 2018-02-07cRagexe
#if PACKETVER == 20180207
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0360,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0950,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0360,clif->pDull/*,XXX*/);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pFriendsListAdd,2);
+ packet(0x092c,clif->pHomMenu,2,4);
+ packet(0x092e,clif->pChangeDir,2,4);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x0950,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-02-13aRagexe, 2018-02-13bRagexe
#if PACKETVER == 20180213
- packet(0x0369,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0802,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0817,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x085a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0874,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0875,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0878,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0882,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0892,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0898,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a3,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a9,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0917,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0922,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0924,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0926,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0933,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0936,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0943,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0962,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x0369,clif->pStoragePassword,0);
+ packet(0x0802,clif->pDropItem,2,4);
+ packet(0x0817,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x085a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086f,clif->pPartyInvite2,2);
+ packet(0x0874,clif->pTickSend,2);
+ packet(0x0875,clif->pMoveFromKafra,2,4);
+ packet(0x0878,clif->pChangeDir,2,4);
+ packet(0x087b,clif->pReqClickBuyingStore,2);
+ packet(0x0882,clif->pUseSkillToId,2,4,6);
+ packet(0x088c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0892,clif->pTakeItem,2);
+ packet(0x0898,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089c,clif->pDull/*,XXX*/);
+ packet(0x08a3,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a9,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pSolveCharName,2);
+ packet(0x0917,clif->pFriendsListAdd,2);
+ packet(0x0922,clif->pWalkToXY,2);
+ packet(0x0924,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0926,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pActionRequest,2,6);
+ packet(0x0936,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093c,clif->pGetCharNameRequest,2);
+ packet(0x0943,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0955,clif->pMoveToKafra,2,4);
+ packet(0x095a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0962,clif->pHomMenu,2,4);
#endif
// 2018-02-21bRagexe
#if PACKETVER == 20180221
- packet(0x0202,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0366,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0436,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0838,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0867,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0871,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0880,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0881,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0883,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0891,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0897,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0899,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x089d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0917,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0929,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0957,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0964,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x096a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x0202,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0366,clif->pDull/*,XXX*/);
+ packet(0x0436,clif->pFriendsListAdd,2);
+ packet(0x0838,clif->pChangeDir,2,4);
+ packet(0x0867,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086c,clif->pReqClickBuyingStore,2);
+ packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0871,clif->pDropItem,2,4);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x087d,clif->pWalkToXY,2);
+ packet(0x0880,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0881,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0883,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088f,clif->pSolveCharName,2);
+ packet(0x0891,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0899,clif->pSearchStoreInfoNextPage,0);
+ packet(0x089d,clif->pTickSend,2);
+ packet(0x0917,clif->pStoragePassword,0);
+ packet(0x091e,clif->pMoveFromKafra,2,4);
+ packet(0x0929,clif->pReqCloseBuyingStore,0);
+ packet(0x093d,clif->pPartyInvite2,2);
+ packet(0x094b,clif->pUseSkillToId,2,4,6);
+ packet(0x094d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094e,clif->pTakeItem,2);
+ packet(0x0957,clif->pGetCharNameRequest,2);
+ packet(0x0964,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x096a,clif->pActionRequest,2,6);
#endif
// 2018-03-07bRagexe, 2018-03-09aRagexe
#if PACKETVER == 20180307 || \
PACKETVER == 20180309
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x035f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0437,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x07e4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0861,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0862,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0864,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086c,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0870,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0872,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0877,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x088d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0893,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a6,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08aa,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ab,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0917,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0920,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0937,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0939,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0941,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0944,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0948,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0951,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0954,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0957,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0969,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x0281,clif->pDull/*,XXX*/);
+ packet(0x035f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0437,clif->pDropItem,2,4);
+ packet(0x07e4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0861,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0862,clif->pReqClickBuyingStore,2);
+ packet(0x0864,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086c,clif->pTickSend,2);
+ packet(0x0870,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0872,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0877,clif->pWalkToXY,2);
+ packet(0x088d,clif->pMoveFromKafra,2,4);
+ packet(0x0893,clif->pUseSkillToId,2,4,6);
+ packet(0x089b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a6,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08aa,clif->pFriendsListAdd,2);
+ packet(0x08ab,clif->pChangeDir,2,4);
+ packet(0x0917,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0920,clif->pMoveToKafra,2,4);
+ packet(0x0937,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0939,clif->pStoragePassword,0);
+ packet(0x093d,clif->pReqCloseBuyingStore,0);
+ packet(0x0941,clif->pGetCharNameRequest,2);
+ packet(0x0944,clif->pHomMenu,2,4);
+ packet(0x0948,clif->pPartyInvite2,2);
+ packet(0x0951,clif->pDull/*,XXX*/);
+ packet(0x0954,clif->pTakeItem,2);
+ packet(0x0957,clif->pSolveCharName,2);
+ packet(0x0969,clif->pActionRequest,2,6);
#endif
// 2018-03-14nRagexe
#if PACKETVER == 20180314
- packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0366,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0369,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0436,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0862,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0863,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0874,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x087a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0888,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x088d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0894,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x089b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0921,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0927,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0933,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0935,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0945,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0956,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0959,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x095f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0962,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0967,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
-#endif
-
-// 2018-11-21bRagexe, 2018-11-28aRagexe, 2018-11-28bRagexe, 2018-11-28cRagexe, 2018-12-05aRagexe, 2018-12-12aRagexe, 2018-12-12bRagexe, 2018-12-19bRagexe, 2018-12-26aRagexe, 2019-01-09aRagexe, 2019-01-16bRagexe, 2019-01-16cRagexe, 2019-01-23dRagexe, 2019-02-13bRagexe, 2019-02-13eRagexe, 2019-02-27aRagexe, 2019-02-28aRagexe, 2019-03-06bRagexe, 2019-03-06cRagexe, 2019-03-13aRagexe, 2019-03-20aRagexe, 2019-03-22aRagexe, 2019-03-27bRagexe, 2019-04-03aRagexe, 2019-04-17aRagexe, 2019-04-18aRagexe, 2019-05-08cRagexe, 2019-05-22bRagexe, 2019-05-22cRagexe, 2019-05-23aRagexe, 2019-05-29aRagexe, 2019-05-29cRagexe, 2019-05-30aRagexe, 2019-06-05fRagexe, 2019-06-05KRagexe, 2019-06-19bRagexe, 2019-06-19eRagexe, 2019-06-19hRagexe, 2019-07-03aRagexe, 2019-07-17aRagexe, 2019-07-17dRagexe, 2019-07-24aRagexe, 2019-07-31bRagexe, 2019-08-02aRagexe, 2019-08-07aRagexe, 2019-08-21aRagexe, 2019-08-28aRagexe
-#if PACKETVER == 20181121 || \
- PACKETVER == 20181128 || \
- PACKETVER == 20181205 || \
- PACKETVER == 20181212 || \
- PACKETVER == 20181219 || \
- PACKETVER == 20181226 || \
- PACKETVER == 20190109 || \
- PACKETVER == 20190116 || \
- PACKETVER == 20190123 || \
- PACKETVER == 20190213 || \
- PACKETVER == 20190227 || \
- PACKETVER == 20190228 || \
- PACKETVER == 20190306 || \
- PACKETVER == 20190313 || \
- PACKETVER == 20190320 || \
- PACKETVER == 20190322 || \
- PACKETVER == 20190327 || \
- PACKETVER == 20190403 || \
- PACKETVER == 20190417 || \
- PACKETVER == 20190418 || \
- PACKETVER == 20190508 || \
- PACKETVER == 20190522 || \
- PACKETVER == 20190523 || \
- PACKETVER == 20190529 || \
- PACKETVER == 20190530 || \
- PACKETVER == 20190605 || \
- PACKETVER == 20190619 || \
- PACKETVER == 20190703 || \
- PACKETVER == 20190717 || \
- PACKETVER == 20190724 || \
- PACKETVER == 20190731 || \
- PACKETVER == 20190802 || \
- PACKETVER == 20190807 || \
- PACKETVER == 20190821 || \
- PACKETVER >= 20190828
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 14
-#endif
-
-// 2019-09-04aRagexe, 2019-09-04bRagexe, 2019-09-18bRagexe, 2019-09-25aRagexe, 2019-09-25bRagexe, 2019-10-02cRagexe, 2019-10-02dRagexe, 2019-10-16fRagexe, 2019-10-16gRagexe, 2019-10-18aRagexe, 2019-10-23aRagexe, 2019-10-30cRagexe, 2019-11-06aRagexe, 2019-11-07aRagexe, 2019-11-13cRagexe, 2019-11-13eRagexe, 2019-11-20aRagexe, 2019-11-20dRagexe, 2019-11-27aRagexe, 2019-11-27bRagexe, 2019-12-04aRagexe, 2019-12-04bRagexe, 2019-12-11aRagexe, 2019-12-18bRagexe, 2019-12-24aRagexe, 2019-12-24bRagexe, 2020-01-08aRagexe, 2020-01-22cRagexe, 2020-01-29bRagexe, 2020-01-30aRagexe, 2020-02-05aRagexe, 2020-02-06aRagexe, 2020-02-12aRagexe, 2020-02-19dRagexe, 2020-03-04aRagexe
-#if PACKETVER == 20190904 || \
- PACKETVER == 20190918 || \
- PACKETVER == 20190925 || \
- PACKETVER == 20191002 || \
- PACKETVER == 20191016 || \
- PACKETVER == 20191018 || \
- PACKETVER == 20191023 || \
- PACKETVER == 20191030 || \
- PACKETVER == 20191106 || \
- PACKETVER == 20191107 || \
- PACKETVER == 20191113 || \
- PACKETVER == 20191120 || \
- PACKETVER == 20191127 || \
- PACKETVER == 20191204 || \
- PACKETVER == 20191211 || \
- PACKETVER == 20191218 || \
- PACKETVER == 20191224 || \
- PACKETVER == 20200108 || \
- PACKETVER == 20200122 || \
- PACKETVER == 20200129 || \
- PACKETVER == 20200130 || \
- PACKETVER == 20200205 || \
- PACKETVER == 20200206 || \
- PACKETVER == 20200212 || \
- PACKETVER == 20200219 || \
- PACKETVER == 20200304
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 31
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 14
+ packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0366,clif->pUseSkillToId,2,4,6);
+ packet(0x0369,clif->pHomMenu,2,4);
+ packet(0x0436,clif->pDropItem,2,4);
+ packet(0x085a,clif->pGetCharNameRequest,2);
+ packet(0x0862,clif->pTakeItem,2);
+ packet(0x0863,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x086e,clif->pMoveFromKafra,2,4);
+ packet(0x0874,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x087a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0888,clif->pChangeDir,2,4);
+ packet(0x088a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x088d,clif->pStoragePassword,0);
+ packet(0x0894,clif->pReqCloseBuyingStore,0);
+ packet(0x089b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0921,clif->pActionRequest,2,6);
+ packet(0x0927,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092f,clif->pWalkToXY,2);
+ packet(0x0933,clif->pMoveToKafra,2,4);
+ packet(0x0935,clif->pPartyInvite2,2);
+ packet(0x0945,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094e,clif->pFriendsListAdd,2);
+ packet(0x0956,clif->pDull/*,XXX*/);
+ packet(0x0959,clif->pReqClickBuyingStore,2);
+ packet(0x095f,clif->pTickSend,2);
+ packet(0x0962,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0967,clif->pSolveCharName,2);
#endif
diff --git a/src/map/packets_shuffle_re.h b/src/map/packets_shuffle_re.h
index 490d517fd..46829fec1 100644
--- a/src/map/packets_shuffle_re.h
+++ b/src/map/packets_shuffle_re.h
@@ -40,9585 +40,9585 @@
// 2012-07-10aRagexeRE, 2012-07-12aRagexeRE
#if PACKETVER == 20120710 || \
PACKETVER == 20120712
- packet(0x0202,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x02c4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0362,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0365,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0367,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0436,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x07e4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0811,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0877,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0878,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x087f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x088d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0893,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0899,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a3,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a6,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a8,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08aa,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0936,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0948,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0953,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0956,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0958,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x0202,clif->pSolveCharName,2);
+ packet(0x02c4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0362,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0365,clif->pFriendsListAdd,2);
+ packet(0x0367,clif->pMoveToKafra,2,4);
+ packet(0x0436,clif->pActionRequest,2,6);
+ packet(0x07e4,clif->pTickSend,2);
+ packet(0x0811,clif->pReqClickBuyingStore,2);
+ packet(0x085b,clif->pUseSkillToId,2,4,6);
+ packet(0x0877,clif->pGetCharNameRequest,2);
+ packet(0x0878,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x087f,clif->pWalkToXY,2);
+ packet(0x088d,clif->pChangeDir,2,4);
+ packet(0x0893,clif->pStoragePassword,0);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0899,clif->pTakeItem,2);
+ packet(0x08a3,clif->pDropItem,2,4);
+ packet(0x08a6,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a8,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08aa,clif->pMoveFromKafra,2,4);
+ packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0936,clif->pDull/*,XXX*/);
+ packet(0x0948,clif->pReqCloseBuyingStore,0);
+ packet(0x094b,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pPartyInvite2,2);
+ packet(0x0953,clif->pDull/*,XXX*/);
+ packet(0x0956,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0958,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2012-07-16aRagexeRE
#if PACKETVER == 20120716
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x089f,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-07-24aRagexeRE
#if PACKETVER == 20120724
- packet(0x035f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0815,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0835,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0865,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0866,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0872,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0877,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087c,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0887,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0888,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a1,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a9,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08ab,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x092b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0935,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0938,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x093c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0945,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0957,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0959,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0963,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0965,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0966,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
+ packet(0x035f,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pReqClickBuyingStore,2);
+ packet(0x0815,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0835,clif->pPartyInvite2,2);
+ packet(0x0865,clif->pReqCloseBuyingStore,0);
+ packet(0x0866,clif->pDull/*,XXX*/);
+ packet(0x0872,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0877,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087c,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0887,clif->pChangeDir,2,4);
+ packet(0x0888,clif->pHomMenu,2,4);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x08a1,clif->pGetCharNameRequest,2);
+ packet(0x08a9,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08ab,clif->pTakeItem,2);
+ packet(0x091c,clif->pWalkToXY,2);
+ packet(0x091f,clif->pTickSend,2);
+ packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x092b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0935,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0938,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x093c,clif->pMoveToKafra,2,4);
+ packet(0x0945,clif->pActionRequest,2,6);
+ packet(0x0957,clif->pStoragePassword,0);
+ packet(0x0959,clif->pFriendsListAdd,2);
+ packet(0x0963,clif->pDropItem,2,4);
+ packet(0x0965,clif->pSolveCharName,2);
+ packet(0x0966,clif->pMoveFromKafra,2,4);
#endif
// 2012-08-01aRagexeRE, 2012-08-01bRagexeRE
#if PACKETVER == 20120801
- packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0438,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0873,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0875,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0895,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a2,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08aa,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ab,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0917,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0930,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0934,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x093c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0946,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0964,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0438,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x085d,clif->pSolveCharName,2);
+ packet(0x086a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086b,clif->pGetCharNameRequest,2);
+ packet(0x086f,clif->pReqCloseBuyingStore,0);
+ packet(0x0873,clif->pUseSkillToId,2,4,6);
+ packet(0x0875,clif->pTakeItem,2);
+ packet(0x087b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088b,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pActionRequest,2,6);
+ packet(0x0895,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089d,clif->pDropItem,2,4);
+ packet(0x089f,clif->pWalkToXY,2);
+ packet(0x08a2,clif->pFriendsListAdd,2);
+ packet(0x08aa,clif->pChangeDir,2,4);
+ packet(0x08ab,clif->pMoveFromKafra,2,4);
+ packet(0x0917,clif->pStoragePassword,0);
+ packet(0x091d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092a,clif->pDull/*,XXX*/);
+ packet(0x092e,clif->pReqClickBuyingStore,2);
+ packet(0x0930,clif->pTickSend,2);
+ packet(0x0934,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x093c,clif->pPartyInvite2,2);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x0946,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0964,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2012-08-08aRagexeRE, 2012-08-08bRagexeRE, 2012-08-08cRagexeRE, 2012-08-08dRagexeRE
#if PACKETVER == 20120808
- packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pFriendsListAdd,2);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pStoragePassword,0);
+ packet(0x088f,clif->pChangeDir,2,4);
+ packet(0x093d,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-08-14aRagexeRE, 2012-08-14bRagexeRE
#if PACKETVER == 20120814
- packet(0x0281,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0361,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0365,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0366,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x07ec,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0815,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0838,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0861,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0862,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0865,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0868,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0875,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0882,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x088d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0895,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a8,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0920,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0929,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0932,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0934,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0967,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0969,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x0281,clif->pHomMenu,2,4);
+ packet(0x0361,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0365,clif->pSolveCharName,2);
+ packet(0x0366,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x07ec,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0815,clif->pDropItem,2,4);
+ packet(0x0838,clif->pReqCloseBuyingStore,0);
+ packet(0x085e,clif->pMoveToKafra,2,4);
+ packet(0x0861,clif->pReqClickBuyingStore,2);
+ packet(0x0862,clif->pTakeItem,2);
+ packet(0x0865,clif->pMoveFromKafra,2,4);
+ packet(0x0868,clif->pActionRequest,2,6);
+ packet(0x086f,clif->pStoragePassword,0);
+ packet(0x0875,clif->pWalkToXY,2);
+ packet(0x087f,clif->pPartyInvite2,2);
+ packet(0x0882,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x088b,clif->pFriendsListAdd,2);
+ packet(0x088d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0895,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a8,clif->pDull/*,XXX*/);
+ packet(0x091f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0920,clif->pGetCharNameRequest,2);
+ packet(0x0929,clif->pDull/*,XXX*/);
+ packet(0x0932,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0934,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0967,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0969,clif->pChangeDir,2,4);
#endif
// 2012-08-22aRagexeRE, 2012-08-22bRagexeRE, 2012-08-22cRagexeRE
#if PACKETVER == 20120822
- packet(0x0365,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0437,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x085a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x085d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0872,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x087d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0899,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ab,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0917,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0924,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0927,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0935,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0937,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0940,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0943,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0953,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0958,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
+ packet(0x0365,clif->pFriendsListAdd,2);
+ packet(0x0437,clif->pTakeItem,2);
+ packet(0x085a,clif->pWalkToXY,2);
+ packet(0x085c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x085d,clif->pUseSkillToId,2,4,6);
+ packet(0x086b,clif->pSolveCharName,2);
+ packet(0x086e,clif->pChangeDir,2,4);
+ packet(0x0872,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x087d,clif->pTickSend,2);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x088a,clif->pMoveToKafra,2,4);
+ packet(0x0899,clif->pPartyInvite2,2);
+ packet(0x089f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pDull/*,XXX*/);
+ packet(0x08ab,clif->pActionRequest,2,6);
+ packet(0x0917,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0924,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0927,clif->pGetCharNameRequest,2);
+ packet(0x0935,clif->pHomMenu,2,4);
+ packet(0x0937,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0940,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0943,clif->pMoveFromKafra,2,4);
+ packet(0x094d,clif->pStoragePassword,0);
+ packet(0x094e,clif->pDropItem,2,4);
+ packet(0x0953,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0955,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0958,clif->pReqCloseBuyingStore,0);
+ packet(0x095b,clif->pReqClickBuyingStore,2);
#endif
// 2012-08-30aRagexeRE, 2012-08-30bRagexeRE
#if PACKETVER == 20120830
- packet(0x022d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0802,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0838,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0861,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0872,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0887,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0888,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0926,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0934,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0945,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094b,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0964,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pPartyInvite2,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0802,clif->pStoragePassword,0);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pMoveToKafra,2,4);
+ packet(0x0838,clif->pHomMenu,2,4);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0861,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0872,clif->pFriendsListAdd,2);
+ packet(0x0887,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0888,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x091d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0926,clif->pMoveFromKafra,2,4);
+ packet(0x0934,clif->pChangeDir,2,4);
+ packet(0x0945,clif->pDropItem,2,4);
+ packet(0x094b,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0964,clif->pTakeItem,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-09-05aRagexeRE
#if PACKETVER == 20120905
- packet(0x022d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0817,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0878,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x087e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0887,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0895,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0897,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a0,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a6,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0917,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0918,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0927,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x093c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0944,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0945,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0950,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0959,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0967,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x022d,clif->pMoveToKafra,2,4);
+ packet(0x0365,clif->pDull/*,XXX*/);
+ packet(0x0817,clif->pStoragePassword,0);
+ packet(0x085a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086f,clif->pSolveCharName,2);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0878,clif->pWalkToXY,2);
+ packet(0x087a,clif->pUseSkillToId,2,4,6);
+ packet(0x087b,clif->pTickSend,2);
+ packet(0x087e,clif->pMoveFromKafra,2,4);
+ packet(0x0887,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0895,clif->pChangeDir,2,4);
+ packet(0x0897,clif->pTakeItem,2);
+ packet(0x08a0,clif->pDull/*,XXX*/);
+ packet(0x08a6,clif->pFriendsListAdd,2);
+ packet(0x0917,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0918,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091a,clif->pGetCharNameRequest,2);
+ packet(0x0927,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x093c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0944,clif->pPartyInvite2,2);
+ packet(0x0945,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0950,clif->pDropItem,2,4);
+ packet(0x0954,clif->pReqCloseBuyingStore,0);
+ packet(0x0959,clif->pReqClickBuyingStore,2);
+ packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0967,clif->pActionRequest,2,6);
#endif
// 2012-09-11aRagexeRE
#if PACKETVER == 20120911
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0819,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0868,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0879,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a4,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a6,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a7,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08ad,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0930,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0935,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0948,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0949,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0958,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0959,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0962,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0963,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0968,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x0819,clif->pMoveFromKafra,2,4);
+ packet(0x0868,clif->pTakeItem,2);
+ packet(0x086f,clif->pWalkToXY,2);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pPartyInvite2,2);
+ packet(0x0879,clif->pReqClickBuyingStore,2);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x088a,clif->pGetCharNameRequest,2);
+ packet(0x088f,clif->pFriendsListAdd,2);
+ packet(0x08a4,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a6,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a7,clif->pDropItem,2,4);
+ packet(0x08ad,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0930,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0935,clif->pReqCloseBuyingStore,0);
+ packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0948,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0949,clif->pDull/*,XXX*/);
+ packet(0x094b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0958,clif->pUseSkillToId,2,4,6);
+ packet(0x0959,clif->pActionRequest,2,6);
+ packet(0x0962,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0963,clif->pSolveCharName,2);
+ packet(0x0966,clif->pMoveToKafra,2,4);
+ packet(0x0968,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pStoragePassword,0);
#endif
// 2012-09-19aRagexeRE
#if PACKETVER == 20120919
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0956,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0956,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-09-25aRagexeRE, 2012-09-26aRagexeRE
#if PACKETVER == 20120925 || \
PACKETVER == 20120926
- packet(0x07e4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0815,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0819,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0835,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0838,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0869,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0873,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x087e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a4,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0923,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0927,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0932,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0942,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0948,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0950,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0956,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0958,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0963,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
+ packet(0x07e4,clif->pDull/*,XXX*/);
+ packet(0x0815,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0819,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0835,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0838,clif->pGetCharNameRequest,2);
+ packet(0x085d,clif->pHomMenu,2,4);
+ packet(0x0869,clif->pMoveToKafra,2,4);
+ packet(0x0873,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087a,clif->pDropItem,2,4);
+ packet(0x087e,clif->pFriendsListAdd,2);
+ packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088a,clif->pPartyInvite2,2);
+ packet(0x088d,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a4,clif->pActionRequest,2,6);
+ packet(0x091c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091e,clif->pReqCloseBuyingStore,0);
+ packet(0x0923,clif->pTakeItem,2);
+ packet(0x0927,clif->pReqClickBuyingStore,2);
+ packet(0x0932,clif->pTickSend,2);
+ packet(0x0942,clif->pStoragePassword,0);
+ packet(0x0948,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0950,clif->pWalkToXY,2);
+ packet(0x0956,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pChangeDir,2,4);
+ packet(0x0958,clif->pSolveCharName,2);
+ packet(0x095e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0963,clif->pMoveFromKafra,2,4);
#endif
// 2012-10-10aRagexeRE, 2012-10-10bRagexeRE, 2012-10-11aRagexeRE
#if PACKETVER == 20121010 || \
PACKETVER == 20121011
- packet(0x0202,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0817,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0869,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0874,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0883,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0888,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0891,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0896,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a1,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a6,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a9,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0925,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0934,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0942,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0946,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0947,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0957,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0958,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0959,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0964,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0969,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0202,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0817,clif->pGetCharNameRequest,2);
+ packet(0x085a,clif->pReqCloseBuyingStore,0);
+ packet(0x0869,clif->pTakeItem,2);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x0874,clif->pMoveFromKafra,2,4);
+ packet(0x087d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0883,clif->pWalkToXY,2);
+ packet(0x0888,clif->pDull/*,XXX*/);
+ packet(0x088f,clif->pPartyInvite2,2);
+ packet(0x0891,clif->pUseSkillToId,2,4,6);
+ packet(0x0896,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pStoragePassword,0);
+ packet(0x08a1,clif->pActionRequest,2,6);
+ packet(0x08a6,clif->pSolveCharName,2);
+ packet(0x08a9,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0925,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0934,clif->pTickSend,2);
+ packet(0x093c,clif->pMoveToKafra,2,4);
+ packet(0x0942,clif->pReqClickBuyingStore,2);
+ packet(0x0946,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0947,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094c,clif->pDropItem,2,4);
+ packet(0x0957,clif->pChangeDir,2,4);
+ packet(0x0958,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0959,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095c,clif->pHomMenu,2,4);
+ packet(0x0964,clif->pFriendsListAdd,2);
+ packet(0x0969,clif->pPartyBookingRegisterReq,2,4,6);
#endif
// 2012-10-17aRagexeRE, 2012-10-17bRagexeRE
#if PACKETVER == 20121017
- packet(0x023b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0887,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0888,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0897,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a6,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0918,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0920,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0960,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0965,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pMoveFromKafra,2,4);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x086b,clif->pDropItem,2,4);
+ packet(0x0887,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0888,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0897,clif->pMoveToKafra,2,4);
+ packet(0x089a,clif->pFriendsListAdd,2);
+ packet(0x08a6,clif->pChangeDir,2,4);
+ packet(0x0918,clif->pStoragePassword,0);
+ packet(0x0920,clif->pDull/*,XXX*/);
+ packet(0x0960,clif->pHomMenu,2,4);
+ packet(0x0962,clif->pTakeItem,2);
+ packet(0x0965,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-10-24aRagexeRE
#if PACKETVER == 20121024
- packet(0x0436,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0437,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0438,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0817,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0838,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0868,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0872,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0875,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0882,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0888,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0889,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a9,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08aa,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0931,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0938,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0942,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0947,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0954,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0955,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x095d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0965,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x0436,clif->pWalkToXY,2);
+ packet(0x0437,clif->pUseSkillToId,2,4,6);
+ packet(0x0438,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0817,clif->pActionRequest,2,6);
+ packet(0x0838,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x085a,clif->pMoveFromKafra,2,4);
+ packet(0x0868,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0872,clif->pGetCharNameRequest,2);
+ packet(0x0875,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pMoveToKafra,2,4);
+ packet(0x087b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0882,clif->pStoragePassword,0);
+ packet(0x0888,clif->pHomMenu,2,4);
+ packet(0x0889,clif->pDropItem,2,4);
+ packet(0x088a,clif->pReqClickBuyingStore,2);
+ packet(0x089c,clif->pPartyInvite2,2);
+ packet(0x08a9,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08aa,clif->pChangeDir,2,4);
+ packet(0x0931,clif->pTakeItem,2);
+ packet(0x0938,clif->pReqCloseBuyingStore,0);
+ packet(0x093a,clif->pDull/*,XXX*/);
+ packet(0x0942,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0947,clif->pTickSend,2);
+ packet(0x0954,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0955,clif->pSearchStoreInfoNextPage,0);
+ packet(0x095d,clif->pFriendsListAdd,2);
+ packet(0x095e,clif->pSolveCharName,2);
+ packet(0x0965,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2012-10-31aRagexeRE
#if PACKETVER == 20121031
- packet(0x022d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0871,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0877,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0898,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pTickSend,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pHomMenu,2,4);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pFriendsListAdd,2);
+ packet(0x0871,clif->pChangeDir,2,4);
+ packet(0x0877,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0898,clif->pStoragePassword,0);
+ packet(0x092b,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-11-07aRagexeRE
#if PACKETVER == 20121107
- packet(0x0360,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0361,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0365,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x085c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0861,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0865,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0871,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0873,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0878,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0890,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0891,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0896,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0922,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0934,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0945,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x094d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0960,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0963,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0966,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
+ packet(0x0360,clif->pTakeItem,2);
+ packet(0x0361,clif->pStoragePassword,0);
+ packet(0x0365,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x085c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0861,clif->pTickSend,2);
+ packet(0x0865,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086c,clif->pHomMenu,2,4);
+ packet(0x086d,clif->pSolveCharName,2);
+ packet(0x0871,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0873,clif->pMoveToKafra,2,4);
+ packet(0x0878,clif->pPartyInvite2,2);
+ packet(0x087f,clif->pChangeDir,2,4);
+ packet(0x088f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0890,clif->pUseSkillToId,2,4,6);
+ packet(0x0891,clif->pMoveFromKafra,2,4);
+ packet(0x0896,clif->pReqClickBuyingStore,2);
+ packet(0x089a,clif->pActionRequest,2,6);
+ packet(0x089b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a2,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pGetCharNameRequest,2);
+ packet(0x0922,clif->pDull/*,XXX*/);
+ packet(0x0934,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0945,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x094d,clif->pWalkToXY,2);
+ packet(0x0960,clif->pDropItem,2,4);
+ packet(0x0963,clif->pDull/*,XXX*/);
+ packet(0x0966,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x096a,clif->pFriendsListAdd,2);
#endif
// 2012-11-14aRagexeRE
#if PACKETVER == 20121114
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0365,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0437,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0815,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0838,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0862,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0876,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0879,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0881,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0898,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0899,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a9,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08aa,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ab,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0930,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0935,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0938,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0944,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0949,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x095c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0965,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0365,clif->pHomMenu,2,4);
+ packet(0x0437,clif->pDropItem,2,4);
+ packet(0x0815,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0838,clif->pPartyInvite2,2);
+ packet(0x0862,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0876,clif->pSolveCharName,2);
+ packet(0x0879,clif->pGetCharNameRequest,2);
+ packet(0x0881,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0898,clif->pActionRequest,2,6);
+ packet(0x0899,clif->pWalkToXY,2);
+ packet(0x08a9,clif->pTickSend,2);
+ packet(0x08aa,clif->pReqCloseBuyingStore,0);
+ packet(0x08ab,clif->pChangeDir,2,4);
+ packet(0x091a,clif->pMoveFromKafra,2,4);
+ packet(0x0930,clif->pDull/*,XXX*/);
+ packet(0x0935,clif->pUseSkillToId,2,4,6);
+ packet(0x0938,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093c,clif->pMoveToKafra,2,4);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x0944,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0949,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094f,clif->pReqClickBuyingStore,2);
+ packet(0x095c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0965,clif->pTakeItem,2);
+ packet(0x096a,clif->pDull/*,XXX*/);
#endif
// 2012-11-21aRagexeRE
#if PACKETVER == 20121121
- packet(0x0202,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0362,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0437,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0863,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0872,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0875,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0880,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0892,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089a,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a7,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08aa,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0921,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0927,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0929,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0938,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0946,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0950,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0952,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0957,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0958,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
+ packet(0x0202,clif->pUseSkillToId,2,4,6);
+ packet(0x0362,clif->pReqCloseBuyingStore,0);
+ packet(0x0437,clif->pTakeItem,2);
+ packet(0x0863,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086d,clif->pSolveCharName,2);
+ packet(0x086f,clif->pMoveFromKafra,2,4);
+ packet(0x0872,clif->pGetCharNameRequest,2);
+ packet(0x0875,clif->pMoveToKafra,2,4);
+ packet(0x087e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0880,clif->pChangeDir,2,4);
+ packet(0x0892,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089a,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x08a7,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08aa,clif->pActionRequest,2,6);
+ packet(0x091a,clif->pTickSend,2);
+ packet(0x0921,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0927,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0929,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0946,clif->pWalkToXY,2);
+ packet(0x094d,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pHomMenu,2,4);
+ packet(0x0952,clif->pDropItem,2,4);
+ packet(0x0954,clif->pStoragePassword,0);
+ packet(0x0957,clif->pPartyInvite2,2);
+ packet(0x0958,clif->pReqClickBuyingStore,2);
#endif
// 2012-11-28aRagexeRE
#if PACKETVER == 20121128
- packet(0x0362,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0363,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x07ec,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0802,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0861,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0867,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x086c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0872,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0888,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0894,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0895,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a8,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ad,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0921,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0922,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0931,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0945,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0947,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0950,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0953,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0960,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x0362,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0363,clif->pFriendsListAdd,2);
+ packet(0x07ec,clif->pPartyInvite2,2);
+ packet(0x0802,clif->pStoragePassword,0);
+ packet(0x0861,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0867,clif->pTickSend,2);
+ packet(0x086c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086e,clif->pDull/*,XXX*/);
+ packet(0x0872,clif->pUseSkillToId,2,4,6);
+ packet(0x0888,clif->pChangeDir,2,4);
+ packet(0x088b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0894,clif->pDull/*,XXX*/);
+ packet(0x0895,clif->pTakeItem,2);
+ packet(0x08a8,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ad,clif->pWalkToXY,2);
+ packet(0x091b,clif->pSolveCharName,2);
+ packet(0x091c,clif->pGetCharNameRequest,2);
+ packet(0x091e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0921,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0922,clif->pMoveFromKafra,2,4);
+ packet(0x092f,clif->pReqClickBuyingStore,2);
+ packet(0x0931,clif->pActionRequest,2,6);
+ packet(0x0945,clif->pHomMenu,2,4);
+ packet(0x0947,clif->pReqCloseBuyingStore,0);
+ packet(0x0950,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0953,clif->pDropItem,2,4);
+ packet(0x0954,clif->pMoveToKafra,2,4);
+ packet(0x0960,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2012-12-05aRagexeRE, 2012-12-05bRagexeRE
#if PACKETVER == 20121205
- packet(0x035f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0360,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0815,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0863,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0864,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0873,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0875,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0878,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0888,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0889,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08ad,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0921,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0946,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0954,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0959,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0968,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x035f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0360,clif->pWalkToXY,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0815,clif->pTakeItem,2);
+ packet(0x0863,clif->pTickSend,2);
+ packet(0x0864,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x086c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0873,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0875,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0878,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0888,clif->pStoragePassword,0);
+ packet(0x0889,clif->pDropItem,2,4);
+ packet(0x088b,clif->pDull/*,XXX*/);
+ packet(0x089a,clif->pFriendsListAdd,2);
+ packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08ad,clif->pSolveCharName,2);
+ packet(0x091a,clif->pReqCloseBuyingStore,0);
+ packet(0x091c,clif->pMoveFromKafra,2,4);
+ packet(0x0921,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093a,clif->pReqClickBuyingStore,2);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x093f,clif->pUseSkillToId,2,4,6);
+ packet(0x0946,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094b,clif->pGetCharNameRequest,2);
+ packet(0x0954,clif->pActionRequest,2,6);
+ packet(0x0959,clif->pPartyInvite2,2);
+ packet(0x0966,clif->pMoveToKafra,2,4);
+ packet(0x0968,clif->pChangeDir,2,4);
#endif
// 2012-12-12aRagexeRE, 2012-12-12bRagexeRE, 2012-12-12cRagexeRE
#if PACKETVER == 20121212
- packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0368,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0369,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0436,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0438,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x085c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0877,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x087d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0893,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0895,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a3,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a7,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a9,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08aa,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ac,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0917,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0920,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0932,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0947,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0951,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0953,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0957,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0966,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0368,clif->pFriendsListAdd,2);
+ packet(0x0369,clif->pPartyInvite2,2);
+ packet(0x0436,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0438,clif->pReqCloseBuyingStore,0);
+ packet(0x0817,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x085c,clif->pActionRequest,2,6);
+ packet(0x0877,clif->pTickSend,2);
+ packet(0x087d,clif->pUseSkillToId,2,4,6);
+ packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0893,clif->pSolveCharName,2);
+ packet(0x0895,clif->pReqClickBuyingStore,2);
+ packet(0x08a3,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a7,clif->pWalkToXY,2);
+ packet(0x08a9,clif->pStoragePassword,0);
+ packet(0x08aa,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pDropItem,2,4);
+ packet(0x0917,clif->pMoveFromKafra,2,4);
+ packet(0x091a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0920,clif->pChangeDir,2,4);
+ packet(0x0932,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0947,clif->pHomMenu,2,4);
+ packet(0x0951,clif->pDull/*,XXX*/);
+ packet(0x0953,clif->pTakeItem,2);
+ packet(0x0957,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095b,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0966,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-12-18aRagexeRE, 2012-12-18bRagexeRE
#if PACKETVER == 20121218
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0363,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0872,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0935,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0946,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0957,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pUseSkillToId,2,4,6);
+ packet(0x0363,clif->pTakeItem,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pDropItem,2,4);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x0872,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pChangeDir,2,4);
+ packet(0x087b,clif->pPartyInvite2,2);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x091a,clif->pMoveFromKafra,2,4);
+ packet(0x091c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0935,clif->pFriendsListAdd,2);
+ packet(0x0946,clif->pStoragePassword,0);
+ packet(0x0957,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2012-12-27aRagexeRE
#if PACKETVER == 20121227
- packet(0x0202,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x02c4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0361,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0437,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0860,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0870,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0872,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0886,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0888,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0890,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0894,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0896,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a6,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0917,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0920,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0932,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0933,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0940,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0943,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0947,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0953,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0958,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0962,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
+ packet(0x0202,clif->pHomMenu,2,4);
+ packet(0x02c4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0361,clif->pStoragePassword,0);
+ packet(0x0368,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0437,clif->pDropItem,2,4);
+ packet(0x0860,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0870,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0872,clif->pReqClickBuyingStore,2);
+ packet(0x087a,clif->pActionRequest,2,6);
+ packet(0x0886,clif->pMoveFromKafra,2,4);
+ packet(0x0888,clif->pTickSend,2);
+ packet(0x088e,clif->pChangeDir,2,4);
+ packet(0x0890,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0894,clif->pFriendsListAdd,2);
+ packet(0x0896,clif->pSolveCharName,2);
+ packet(0x08a6,clif->pTakeItem,2);
+ packet(0x08aa,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0917,clif->pReqCloseBuyingStore,0);
+ packet(0x091f,clif->pDull/*,XXX*/);
+ packet(0x0920,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0932,clif->pWalkToXY,2);
+ packet(0x0933,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0940,clif->pUseSkillToId,2,4,6);
+ packet(0x0943,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0947,clif->pGetCharNameRequest,2);
+ packet(0x0953,clif->pDull/*,XXX*/);
+ packet(0x0958,clif->pMoveToKafra,2,4);
+ packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0962,clif->pPartyInvite2,2);
#endif
// 2013-01-03aRagexeRE
#if PACKETVER == 20130103
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pDull/*,XXX*/);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pStoragePassword,0);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-01-09aRagexeRE
#if PACKETVER == 20130109
- packet(0x0281,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0365,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0368,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0838,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0866,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0888,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a2,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08aa,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ac,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0918,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0922,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0927,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0928,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0930,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0931,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0938,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093e,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0950,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0951,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0955,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x0281,clif->pGetCharNameRequest,2);
+ packet(0x0365,clif->pDull/*,XXX*/);
+ packet(0x0368,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0838,clif->pMoveFromKafra,2,4);
+ packet(0x0866,clif->pWalkToXY,2);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x0888,clif->pChangeDir,2,4);
+ packet(0x088a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x08a2,clif->pSolveCharName,2);
+ packet(0x08aa,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0918,clif->pFriendsListAdd,2);
+ packet(0x091b,clif->pDropItem,2,4);
+ packet(0x0922,clif->pReqClickBuyingStore,2);
+ packet(0x0927,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0928,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0930,clif->pHomMenu,2,4);
+ packet(0x0931,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0938,clif->pPartyInvite2,2);
+ packet(0x093e,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0950,clif->pStoragePassword,0);
+ packet(0x0951,clif->pTickSend,2);
+ packet(0x0955,clif->pReqCloseBuyingStore,0);
+ packet(0x095e,clif->pTakeItem,2);
#endif
// 2013-01-15aRagexeRE, 2013-01-16aRagexeRE
#if PACKETVER == 20130115 || \
PACKETVER == 20130116
- packet(0x0361,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0817,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0861,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0863,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0870,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0871,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0877,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0879,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0888,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x088b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0894,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0895,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a0,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0918,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x092d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0939,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0946,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094b,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x095a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x0361,clif->pDull/*,XXX*/);
+ packet(0x07ec,clif->pDull/*,XXX*/);
+ packet(0x0817,clif->pWalkToXY,2);
+ packet(0x085e,clif->pReqCloseBuyingStore,0);
+ packet(0x0861,clif->pMoveFromKafra,2,4);
+ packet(0x0863,clif->pActionRequest,2,6);
+ packet(0x086b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0870,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0871,clif->pFriendsListAdd,2);
+ packet(0x0877,clif->pReqClickBuyingStore,2);
+ packet(0x0879,clif->pChangeDir,2,4);
+ packet(0x087c,clif->pSolveCharName,2);
+ packet(0x0888,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x088b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0894,clif->pHomMenu,2,4);
+ packet(0x0895,clif->pTickSend,2);
+ packet(0x08a0,clif->pPartyInvite2,2);
+ packet(0x08a4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x0918,clif->pUseSkillToId,2,4,6);
+ packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x092d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0939,clif->pGetCharNameRequest,2);
+ packet(0x0946,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094b,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094c,clif->pTakeItem,2);
+ packet(0x094e,clif->pDropItem,2,4);
+ packet(0x095a,clif->pStoragePassword,0);
#endif
// 2013-01-21aRagexeRE
#if PACKETVER == 20130121
- packet(0x023b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x035f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0802,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0817,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0874,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0893,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0956,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0963,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pReqCloseBuyingStore,0);
+ packet(0x035f,clif->pDull/*,XXX*/);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pTickSend,2);
+ packet(0x0802,clif->pActionRequest,2,6);
+ packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0817,clif->pStoragePassword,0);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pDull/*,XXX*/);
+ packet(0x085d,clif->pHomMenu,2,4);
+ packet(0x086c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0874,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0893,clif->pFriendsListAdd,2);
+ packet(0x091f,clif->pTakeItem,2);
+ packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094f,clif->pDropItem,2,4);
+ packet(0x0956,clif->pChangeDir,2,4);
+ packet(0x095b,clif->pPartyInvite2,2);
+ packet(0x0963,clif->pMoveFromKafra,2,4);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-01-30aRagexeRE
#if PACKETVER == 20130130
- packet(0x035f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0367,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0368,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0437,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x085f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0862,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0885,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0886,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0887,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0889,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x089a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a0,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a4,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a9,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0920,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0924,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0956,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095b,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x035f,clif->pMoveToKafra,2,4);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0367,clif->pGetCharNameRequest,2);
+ packet(0x0368,clif->pChangeDir,2,4);
+ packet(0x0437,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x085f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0862,clif->pReqCloseBuyingStore,0);
+ packet(0x086b,clif->pDull/*,XXX*/);
+ packet(0x087d,clif->pWalkToXY,2);
+ packet(0x087f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0885,clif->pActionRequest,2,6);
+ packet(0x0886,clif->pTakeItem,2);
+ packet(0x0887,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0889,clif->pTickSend,2);
+ packet(0x089a,clif->pPartyInvite2,2);
+ packet(0x089f,clif->pDropItem,2,4);
+ packet(0x08a0,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a4,clif->pUseSkillToId,2,4,6);
+ packet(0x08a9,clif->pDull/*,XXX*/);
+ packet(0x091a,clif->pSolveCharName,2);
+ packet(0x0920,clif->pFriendsListAdd,2);
+ packet(0x0924,clif->pReqClickBuyingStore,2);
+ packet(0x093a,clif->pStoragePassword,0);
+ packet(0x093d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0956,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095b,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x095c,clif->pMoveFromKafra,2,4);
+ packet(0x095d,clif->pSearchStoreInfoNextPage,0);
#endif
// 2013-02-06aRagexeRE
#if PACKETVER == 20130206
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0811,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0876,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0883,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0899,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a0,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ac,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0920,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0925,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x093c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0950,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x0811,clif->pTakeItem,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pMoveFromKafra,2,4);
+ packet(0x0876,clif->pDull/*,XXX*/);
+ packet(0x0883,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0885,clif->pMoveToKafra,2,4);
+ packet(0x0899,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a0,clif->pChangeDir,2,4);
+ packet(0x08ac,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0920,clif->pPartyInvite2,2);
+ packet(0x0925,clif->pDropItem,2,4);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x093c,clif->pFriendsListAdd,2);
+ packet(0x0950,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-02-15aRagexeRE
#if PACKETVER == 20130215
- packet(0x023b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0886,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ad,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0923,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0956,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x095d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0962,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pReqClickBuyingStore,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pMoveToKafra,2,4);
+ packet(0x086f,clif->pDull/*,XXX*/);
+ packet(0x0886,clif->pDropItem,2,4);
+ packet(0x089e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089f,clif->pDull/*,XXX*/);
+ packet(0x08ad,clif->pTakeItem,2);
+ packet(0x0923,clif->pHomMenu,2,4);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x0956,clif->pPartyInvite2,2);
+ packet(0x095d,clif->pChangeDir,2,4);
+ packet(0x0962,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-02-20bRagexeRE
#if PACKETVER == 20130220
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x094b,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-02-27aRagexeRE
#if PACKETVER == 20130227
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x035f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0360,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0811,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0815,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0863,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0867,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0893,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0898,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a0,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a1,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0924,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x092b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x092f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0946,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0951,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0967,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x035f,clif->pHomMenu,2,4);
+ packet(0x0360,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0811,clif->pTickSend,2);
+ packet(0x0815,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0817,clif->pReqClickBuyingStore,2);
+ packet(0x085a,clif->pUseSkillToId,2,4,6);
+ packet(0x0863,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0867,clif->pTakeItem,2);
+ packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086e,clif->pDull/*,XXX*/);
+ packet(0x087b,clif->pPartyInvite2,2);
+ packet(0x0893,clif->pMoveFromKafra,2,4);
+ packet(0x0898,clif->pChangeDir,2,4);
+ packet(0x08a0,clif->pReqCloseBuyingStore,0);
+ packet(0x08a1,clif->pDull/*,XXX*/);
+ packet(0x091b,clif->pGetCharNameRequest,2);
+ packet(0x091f,clif->pDropItem,2,4);
+ packet(0x0924,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x092b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x092f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0946,clif->pMoveToKafra,2,4);
+ packet(0x0951,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095b,clif->pSolveCharName,2);
+ packet(0x095e,clif->pStoragePassword,0);
+ packet(0x095f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0967,clif->pActionRequest,2,6);
#endif
// 2013-03-06aRagexeRE, 2013-03-06bRagexeRE
#if PACKETVER == 20130306
- packet(0x022d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0367,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0368,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0802,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0817,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x085b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0860,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0898,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ac,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0917,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0926,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0934,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0936,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0943,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0945,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0946,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094a,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0951,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0960,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x022d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0367,clif->pSolveCharName,2);
+ packet(0x0368,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0802,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0817,clif->pHomMenu,2,4);
+ packet(0x085b,clif->pWalkToXY,2);
+ packet(0x085c,clif->pReqClickBuyingStore,2);
+ packet(0x0860,clif->pChangeDir,2,4);
+ packet(0x086d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x0898,clif->pActionRequest,2,6);
+ packet(0x089f,clif->pTickSend,2);
+ packet(0x08a4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ac,clif->pDull/*,XXX*/);
+ packet(0x0917,clif->pMoveFromKafra,2,4);
+ packet(0x091e,clif->pMoveToKafra,2,4);
+ packet(0x0926,clif->pStoragePassword,0);
+ packet(0x0934,clif->pFriendsListAdd,2);
+ packet(0x0936,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0943,clif->pUseSkillToId,2,4,6);
+ packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0945,clif->pReqCloseBuyingStore,0);
+ packet(0x0946,clif->pPartyInvite2,2);
+ packet(0x094a,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094e,clif->pGetCharNameRequest,2);
+ packet(0x0951,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0960,clif->pDropItem,2,4);
+ packet(0x0962,clif->pTakeItem,2);
#endif
// 2013-03-13aRagexeRE, 2013-03-13bRagexeRE, 2013-03-13cRagexeRE
#if PACKETVER == 20130313
- packet(0x0202,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0887,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0920,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0947,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pPartyInvite2,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pFriendsListAdd,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0887,clif->pChangeDir,2,4);
+ packet(0x0920,clif->pStoragePassword,0);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0947,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-03-20bRagexeRE, 2013-03-20cRagexeRE
#if PACKETVER == 20130320
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0438,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x085d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0868,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0874,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0881,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0886,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0888,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0897,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0898,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0922,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0933,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0938,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0947,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0959,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pTickSend,2);
+ packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0438,clif->pDropItem,2,4);
+ packet(0x085a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x085d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0868,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086d,clif->pPartyInvite2,2);
+ packet(0x086f,clif->pFriendsListAdd,2);
+ packet(0x0874,clif->pMoveFromKafra,2,4);
+ packet(0x0881,clif->pWalkToXY,2);
+ packet(0x0886,clif->pReqCloseBuyingStore,0);
+ packet(0x0888,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088e,clif->pActionRequest,2,6);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pChangeDir,2,4);
+ packet(0x0898,clif->pGetCharNameRequest,2);
+ packet(0x089b,clif->pUseSkillToId,2,4,6);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x0922,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0933,clif->pTakeItem,2);
+ packet(0x0938,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093f,clif->pHomMenu,2,4);
+ packet(0x0947,clif->pStoragePassword,0);
+ packet(0x094c,clif->pSolveCharName,2);
+ packet(0x094e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0959,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095a,clif->pDull/*,XXX*/);
#endif
// 2013-03-27bRagexeRE
#if PACKETVER == 20130327
- packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0835,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0873,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0878,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0885,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0891,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0893,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0899,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a1,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x092b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x092d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0933,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0938,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0939,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0955,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0960,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0961,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0967,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0835,clif->pHomMenu,2,4);
+ packet(0x086d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0873,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0878,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0885,clif->pDropItem,2,4);
+ packet(0x088f,clif->pUseSkillToId,2,4,6);
+ packet(0x0891,clif->pMoveToKafra,2,4);
+ packet(0x0893,clif->pReqCloseBuyingStore,0);
+ packet(0x0899,clif->pTakeItem,2);
+ packet(0x08a1,clif->pGetCharNameRequest,2);
+ packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x092b,clif->pWalkToXY,2);
+ packet(0x092d,clif->pPartyInvite2,2);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x092f,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0938,clif->pMoveFromKafra,2,4);
+ packet(0x0939,clif->pTickSend,2);
+ packet(0x094a,clif->pChangeDir,2,4);
+ packet(0x094b,clif->pStoragePassword,0);
+ packet(0x094f,clif->pFriendsListAdd,2);
+ packet(0x0955,clif->pActionRequest,2,6);
+ packet(0x0960,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0961,clif->pSolveCharName,2);
+ packet(0x0967,clif->pItemListWindowSelected,2,4,8);
#endif
// 2013-04-03aRagexeRE
#if PACKETVER == 20130403
- packet(0x023b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0884,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0926,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0942,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0950,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pReqClickBuyingStore,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0884,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pDull/*,XXX*/);
+ packet(0x0926,clif->pHomMenu,2,4);
+ packet(0x0942,clif->pChangeDir,2,4);
+ packet(0x0950,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-04-10aRagexeRE
#if PACKETVER == 20130410
- packet(0x0367,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0437,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0860,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0865,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0881,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x088c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a0,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08a7,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0917,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0933,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0939,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x093d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0944,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0945,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0955,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0960,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0967,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x096a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x0367,clif->pReqClickBuyingStore,2);
+ packet(0x0437,clif->pTakeItem,2);
+ packet(0x0860,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0865,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x087c,clif->pWalkToXY,2);
+ packet(0x087d,clif->pGetCharNameRequest,2);
+ packet(0x0881,clif->pReqCloseBuyingStore,0);
+ packet(0x088c,clif->pStoragePassword,0);
+ packet(0x088d,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pDull/*,XXX*/);
+ packet(0x089c,clif->pSolveCharName,2);
+ packet(0x089e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a0,clif->pTickSend,2);
+ packet(0x08a4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08a7,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0917,clif->pPartyInvite2,2);
+ packet(0x091d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0933,clif->pUseSkillToId,2,4,6);
+ packet(0x0939,clif->pActionRequest,2,6);
+ packet(0x093d,clif->pMoveFromKafra,2,4);
+ packet(0x0944,clif->pDull/*,XXX*/);
+ packet(0x0945,clif->pChangeDir,2,4);
+ packet(0x0955,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0960,clif->pFriendsListAdd,2);
+ packet(0x0967,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x096a,clif->pDropItem,2,4);
#endif
// 2013-04-17aRagexeRE
#if PACKETVER == 20130417
- packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0875,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0929,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0962,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0969,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x096a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pFriendsListAdd,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0875,clif->pStoragePassword,0);
+ packet(0x0929,clif->pChangeDir,2,4);
+ packet(0x0962,clif->pHomMenu,2,4);
+ packet(0x0969,clif->pGetCharNameRequest,2);
+ packet(0x096a,clif->pDull/*,XXX*/);
#endif
// 2013-04-24aRagexeRE
#if PACKETVER == 20130424
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0969,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0969,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-05-02aRagexeRE
#if PACKETVER == 20130502
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x07ec,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0870,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0874,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0875,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0877,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0888,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0889,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a1,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a3,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0961,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0967,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x07ec,clif->pChangeDir,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pDull/*,XXX*/);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x0870,clif->pPartyInvite2,2);
+ packet(0x0874,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0875,clif->pFriendsListAdd,2);
+ packet(0x0877,clif->pMoveToKafra,2,4);
+ packet(0x087c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0888,clif->pGetCharNameRequest,2);
+ packet(0x0889,clif->pDull/*,XXX*/);
+ packet(0x08a1,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a3,clif->pDropItem,2,4);
+ packet(0x0961,clif->pMoveFromKafra,2,4);
+ packet(0x0967,clif->pTakeItem,2);
#endif
// 2013-05-08bRagexeRE
#if PACKETVER == 20130508
- packet(0x022d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0868,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0878,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0893,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0895,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0897,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ab,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0944,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0957,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pMoveToKafra,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pFriendsListAdd,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0868,clif->pStoragePassword,0);
+ packet(0x0878,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088b,clif->pTakeItem,2);
+ packet(0x0893,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0895,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0897,clif->pDull/*,XXX*/);
+ packet(0x08ab,clif->pPartyInvite2,2);
+ packet(0x092d,clif->pDropItem,2,4);
+ packet(0x0944,clif->pDull/*,XXX*/);
+ packet(0x094d,clif->pHomMenu,2,4);
+ packet(0x0957,clif->pMoveFromKafra,2,4);
+ packet(0x095c,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-05-15aRagexeRE
#if PACKETVER == 20130515
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0887,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a1,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ac,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0931,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x093e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0943,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0944,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0947,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0962,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0963,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pChangeDir,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x0887,clif->pMoveToKafra,2,4);
+ packet(0x08a1,clif->pTakeItem,2);
+ packet(0x08aa,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pMoveFromKafra,2,4);
+ packet(0x092d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0931,clif->pHomMenu,2,4);
+ packet(0x093e,clif->pStoragePassword,0);
+ packet(0x0943,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0944,clif->pDropItem,2,4);
+ packet(0x0947,clif->pPartyInvite2,2);
+ packet(0x0962,clif->pFriendsListAdd,2);
+ packet(0x0963,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-05-22aRagexeRE
#if PACKETVER == 20130522
- packet(0x0360,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0362,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0368,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x07ec,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0811,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0874,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x088e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a2,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a3,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a6,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a9,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08aa,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08ac,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0925,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0926,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0950,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0952,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0964,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0965,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x0360,clif->pWalkToXY,2);
+ packet(0x0362,clif->pFriendsListAdd,2);
+ packet(0x0368,clif->pReqClickBuyingStore,2);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x07ec,clif->pTickSend,2);
+ packet(0x0811,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086e,clif->pReqCloseBuyingStore,0);
+ packet(0x0874,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087e,clif->pMoveFromKafra,2,4);
+ packet(0x088e,clif->pStoragePassword,0);
+ packet(0x089b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089c,clif->pDropItem,2,4);
+ packet(0x08a2,clif->pActionRequest,2,6);
+ packet(0x08a3,clif->pMoveToKafra,2,4);
+ packet(0x08a6,clif->pGetCharNameRequest,2);
+ packet(0x08a9,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08aa,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08ac,clif->pDull/*,XXX*/);
+ packet(0x0925,clif->pChangeDir,2,4);
+ packet(0x0926,clif->pHomMenu,2,4);
+ packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0950,clif->pPartyInvite2,2);
+ packet(0x0952,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095c,clif->pUseSkillToId,2,4,6);
+ packet(0x095e,clif->pTakeItem,2);
+ packet(0x0964,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0965,clif->pDull/*,XXX*/);
#endif
// 2013-05-29aRagexeRE
#if PACKETVER == 20130529
- packet(0x023b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0863,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0874,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0876,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0877,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0888,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0892,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0895,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0897,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a7,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a8,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0917,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0918,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0919,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0936,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0937,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0938,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0941,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0951,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0956,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0957,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0958,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0964,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x023b,clif->pHomMenu,2,4);
+ packet(0x0438,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0863,clif->pGetCharNameRequest,2);
+ packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0874,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0876,clif->pWalkToXY,2);
+ packet(0x0877,clif->pFriendsListAdd,2);
+ packet(0x0888,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pActionRequest,2,6);
+ packet(0x0892,clif->pReqClickBuyingStore,2);
+ packet(0x0895,clif->pTakeItem,2);
+ packet(0x0897,clif->pTickSend,2);
+ packet(0x08a7,clif->pDropItem,2,4);
+ packet(0x08a8,clif->pPartyInvite2,2);
+ packet(0x0917,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0918,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0919,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0936,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0937,clif->pSolveCharName,2);
+ packet(0x0938,clif->pMoveToKafra,2,4);
+ packet(0x0941,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0951,clif->pChangeDir,2,4);
+ packet(0x0956,clif->pStoragePassword,0);
+ packet(0x0957,clif->pMoveFromKafra,2,4);
+ packet(0x0958,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0964,clif->pReqCloseBuyingStore,0);
#endif
// 2013-06-05cRagexeRE
#if PACKETVER == 20130605
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0883,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0883,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-06-12bRagexeRE
#if PACKETVER == 20130612
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0919,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0964,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087e,clif->pChangeDir,2,4);
+ packet(0x0919,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pFriendsListAdd,2);
+ packet(0x0964,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-06-18#1aRagexeRE
#if PACKETVER == 20130618
- packet(0x0281,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x02c4,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0363,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0862,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0864,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0885,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0887,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0889,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x088e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0890,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a6,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a7,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0917,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0930,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0932,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0936,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0942,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0944,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0945,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0951,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0953,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x0281,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x02c4,clif->pHomMenu,2,4);
+ packet(0x0363,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085a,clif->pReqCloseBuyingStore,0);
+ packet(0x0862,clif->pReqClickBuyingStore,2);
+ packet(0x0864,clif->pStoragePassword,0);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x0885,clif->pMoveToKafra,2,4);
+ packet(0x0887,clif->pPartyInvite2,2);
+ packet(0x0889,clif->pActionRequest,2,6);
+ packet(0x088e,clif->pWalkToXY,2);
+ packet(0x0890,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a6,clif->pChangeDir,2,4);
+ packet(0x08a7,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0917,clif->pDropItem,2,4);
+ packet(0x0930,clif->pTickSend,2);
+ packet(0x0932,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0936,clif->pMoveFromKafra,2,4);
+ packet(0x0942,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0944,clif->pGetCharNameRequest,2);
+ packet(0x0945,clif->pSolveCharName,2);
+ packet(0x094f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0951,clif->pUseSkillToId,2,4,6);
+ packet(0x0953,clif->pFriendsListAdd,2);
+ packet(0x095b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0962,clif->pTakeItem,2);
+ packet(0x096a,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2013-06-26_3bRagexeRE, 2013-06-26aRagexeRE
#if PACKETVER == 20130626
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0894,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0895,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a5,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ab,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0921,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0930,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0952,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0960,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pReqCloseBuyingStore,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pMoveFromKafra,2,4);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pTakeItem,2);
+ packet(0x088c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088f,clif->pDull/*,XXX*/);
+ packet(0x0894,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0895,clif->pPartyInvite2,2);
+ packet(0x08a5,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ab,clif->pFriendsListAdd,2);
+ packet(0x0921,clif->pMoveToKafra,2,4);
+ packet(0x0930,clif->pStoragePassword,0);
+ packet(0x094d,clif->pChangeDir,2,4);
+ packet(0x0952,clif->pDropItem,2,4);
+ packet(0x0960,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-07-03bRagexeRE
#if PACKETVER == 20130703
- packet(0x0202,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0873,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0930,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pReqClickBuyingStore,2);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pFriendsListAdd,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0873,clif->pStoragePassword,0);
+ packet(0x0930,clif->pChangeDir,2,4);
+ packet(0x094a,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-07-10aRagexeRE, 2013-07-10bRagexeRE, 2013-07-10cRagexeRE, 2013-07-10dRagexeRE, 2013-07-10eRagexeRE
#if PACKETVER == 20130710
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0880,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0880,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-07-17cRagexeRE, 2013-07-17dRagexeRE, 2013-07-17eRagexeRE
#if PACKETVER == 20130717
- packet(0x02c4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0863,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x086b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0882,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x088a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0897,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0898,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a9,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0917,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0918,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0956,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0958,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0960,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0967,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x096a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x02c4,clif->pTickSend,2);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pWalkToXY,2);
+ packet(0x0862,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0863,clif->pFriendsListAdd,2);
+ packet(0x086b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x0882,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x088a,clif->pHomMenu,2,4);
+ packet(0x088c,clif->pChangeDir,2,4);
+ packet(0x0897,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0898,clif->pReqClickBuyingStore,2);
+ packet(0x089b,clif->pMoveToKafra,2,4);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08a9,clif->pTakeItem,2);
+ packet(0x08aa,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0917,clif->pDropItem,2,4);
+ packet(0x0918,clif->pActionRequest,2,6);
+ packet(0x091d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091e,clif->pUseSkillToId,2,4,6);
+ packet(0x092f,clif->pPartyInvite2,2);
+ packet(0x093b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0956,clif->pMoveFromKafra,2,4);
+ packet(0x0958,clif->pGetCharNameRequest,2);
+ packet(0x095b,clif->pStoragePassword,0);
+ packet(0x0960,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0967,clif->pSolveCharName,2);
+ packet(0x096a,clif->pReqCloseBuyingStore,0);
#endif
// 2013-07-24eRagexeRE, 2013-07-24fRagexeRE
#if PACKETVER == 20130724
- packet(0x023b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0437,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x085a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0860,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0867,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0874,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0876,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0890,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0891,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0893,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0924,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0953,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0954,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0956,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0958,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0966,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x023b,clif->pReqCloseBuyingStore,0);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0437,clif->pDull/*,XXX*/);
+ packet(0x085a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085e,clif->pMoveFromKafra,2,4);
+ packet(0x0860,clif->pStoragePassword,0);
+ packet(0x0867,clif->pGetCharNameRequest,2);
+ packet(0x086a,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0874,clif->pHomMenu,2,4);
+ packet(0x0876,clif->pActionRequest,2,6);
+ packet(0x0890,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0891,clif->pDropItem,2,4);
+ packet(0x0893,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0924,clif->pReqClickBuyingStore,2);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x092b,clif->pFriendsListAdd,2);
+ packet(0x092e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094a,clif->pTakeItem,2);
+ packet(0x0953,clif->pWalkToXY,2);
+ packet(0x0954,clif->pSolveCharName,2);
+ packet(0x0956,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0958,clif->pUseSkillToId,2,4,6);
+ packet(0x095c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095d,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0966,clif->pChangeDir,2,4);
#endif
// 2013-07-31cRagexeRE
#if PACKETVER == 20130731
- packet(0x022d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0366,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0865,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0878,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x087e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0884,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0889,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0894,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0923,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0925,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x092b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0935,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x094c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0956,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0957,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0958,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0962,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x022d,clif->pFriendsListAdd,2);
+ packet(0x0366,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pChangeDir,2,4);
+ packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x0865,clif->pUseSkillToId,2,4,6);
+ packet(0x0878,clif->pActionRequest,2,6);
+ packet(0x087e,clif->pReqCloseBuyingStore,0);
+ packet(0x0884,clif->pStoragePassword,0);
+ packet(0x0889,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pGetCharNameRequest,2);
+ packet(0x0894,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0923,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0925,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x092b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0935,clif->pTakeItem,2);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x094c,clif->pMoveFromKafra,2,4);
+ packet(0x0956,clif->pPartyInvite2,2);
+ packet(0x0957,clif->pSolveCharName,2);
+ packet(0x0958,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095f,clif->pTickSend,2);
+ packet(0x0962,clif->pDropItem,2,4);
#endif
// 2013-08-07aRagexeRE
#if PACKETVER == 20130807
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0887,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0887,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-08-14aRagexeRE
#if PACKETVER == 20130814
- packet(0x0202,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0281,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0368,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0815,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0868,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0873,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0874,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0885,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0887,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0895,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0896,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0923,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0926,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0936,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0937,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x093a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0941,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0947,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0958,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0959,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0962,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x0202,clif->pMoveToKafra,2,4);
+ packet(0x0281,clif->pFriendsListAdd,2);
+ packet(0x0368,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0815,clif->pDull/*,XXX*/);
+ packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0868,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0873,clif->pMoveFromKafra,2,4);
+ packet(0x0874,clif->pActionRequest,2,6);
+ packet(0x0885,clif->pStoragePassword,0);
+ packet(0x0887,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088a,clif->pTickSend,2);
+ packet(0x088c,clif->pChangeDir,2,4);
+ packet(0x0895,clif->pReqClickBuyingStore,2);
+ packet(0x0896,clif->pDull/*,XXX*/);
+ packet(0x08a4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0923,clif->pSolveCharName,2);
+ packet(0x0926,clif->pTakeItem,2);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x0936,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0937,clif->pGetCharNameRequest,2);
+ packet(0x093a,clif->pWalkToXY,2);
+ packet(0x0941,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0947,clif->pUseSkillToId,2,4,6);
+ packet(0x094e,clif->pReqCloseBuyingStore,0);
+ packet(0x0958,clif->pHomMenu,2,4);
+ packet(0x0959,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095f,clif->pDropItem,2,4);
+ packet(0x0962,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2013-08-21dRagexeRE
#if PACKETVER == 20130821
- packet(0x0202,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0437,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0438,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x07ec,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0815,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0863,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0879,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0881,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x088d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0892,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a6,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0923,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x093e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0947,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0954,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0964,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0967,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0969,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
+ packet(0x0202,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0437,clif->pMoveToKafra,2,4);
+ packet(0x0438,clif->pDull/*,XXX*/);
+ packet(0x07ec,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0815,clif->pWalkToXY,2);
+ packet(0x0862,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0863,clif->pActionRequest,2,6);
+ packet(0x086e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0879,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0881,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088d,clif->pTickSend,2);
+ packet(0x088f,clif->pFriendsListAdd,2);
+ packet(0x0892,clif->pReqClickBuyingStore,2);
+ packet(0x08a6,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pDull/*,XXX*/);
+ packet(0x091d,clif->pChangeDir,2,4);
+ packet(0x0923,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092d,clif->pGetCharNameRequest,2);
+ packet(0x093e,clif->pMoveFromKafra,2,4);
+ packet(0x0947,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0954,clif->pUseSkillToId,2,4,6);
+ packet(0x095e,clif->pSolveCharName,2);
+ packet(0x0962,clif->pTakeItem,2);
+ packet(0x0964,clif->pDropItem,2,4);
+ packet(0x0967,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0969,clif->pPartyInvite2,2);
#endif
// 2013-08-28bRagexeRE, 2013-08-28cRagexeRE
#if PACKETVER == 20130828
- packet(0x023b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0364,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0817,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0873,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0889,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0893,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a3,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ac,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0917,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0919,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0923,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0924,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0930,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0944,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0946,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x094f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x095d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x023b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0364,clif->pDull/*,XXX*/);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0817,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0873,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087e,clif->pDropItem,2,4);
+ packet(0x0889,clif->pHomMenu,2,4);
+ packet(0x0893,clif->pStoragePassword,0);
+ packet(0x089e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089f,clif->pChangeDir,2,4);
+ packet(0x08a3,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ac,clif->pGetCharNameRequest,2);
+ packet(0x0917,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0919,clif->pReqCloseBuyingStore,0);
+ packet(0x091e,clif->pTakeItem,2);
+ packet(0x0923,clif->pUseSkillToId,2,4,6);
+ packet(0x0924,clif->pTickSend,2);
+ packet(0x0928,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x0930,clif->pSolveCharName,2);
+ packet(0x0944,clif->pFriendsListAdd,2);
+ packet(0x0946,clif->pDull/*,XXX*/);
+ packet(0x094a,clif->pPartyInvite2,2);
+ packet(0x094c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x094f,clif->pActionRequest,2,6);
+ packet(0x095d,clif->pWalkToXY,2);
+ packet(0x0966,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2013-09-04bRagexeRE
#if PACKETVER == 20130904
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0838,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0937,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0956,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pChangeDir,2,4);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0838,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0937,clif->pFriendsListAdd,2);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0956,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-09-11aRagexeRE, 2013-09-11bRagexeRE
#if PACKETVER == 20130911
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0868,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0889,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0891,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0948,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0967,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pGetCharNameRequest,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pPartyInvite2,2);
+ packet(0x0868,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086b,clif->pStoragePassword,0);
+ packet(0x086d,clif->pMoveFromKafra,2,4);
+ packet(0x087b,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pTakeItem,2);
+ packet(0x0891,clif->pHomMenu,2,4);
+ packet(0x08a4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091e,clif->pChangeDir,2,4);
+ packet(0x093a,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x0948,clif->pFriendsListAdd,2);
+ packet(0x0967,clif->pDropItem,2,4);
+ packet(0x096a,clif->pMoveToKafra,2,4);
#endif
// 2013-09-17aRagexeRE
#if PACKETVER == 20130917
- packet(0x035f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0811,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0838,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x083c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0863,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0868,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x087a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0895,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x089d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a0,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a8,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0918,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0921,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0923,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0934,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x094c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0959,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x096a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
+ packet(0x035f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0811,clif->pActionRequest,2,6);
+ packet(0x0838,clif->pReqClickBuyingStore,2);
+ packet(0x083c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0863,clif->pMoveFromKafra,2,4);
+ packet(0x0868,clif->pPartyInvite2,2);
+ packet(0x086e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086f,clif->pTickSend,2);
+ packet(0x087a,clif->pTakeItem,2);
+ packet(0x087e,clif->pUseSkillToId,2,4,6);
+ packet(0x088a,clif->pStoragePassword,0);
+ packet(0x0895,clif->pSolveCharName,2);
+ packet(0x089b,clif->pReqCloseBuyingStore,0);
+ packet(0x089d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a0,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a8,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0918,clif->pChangeDir,2,4);
+ packet(0x091c,clif->pDropItem,2,4);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x0921,clif->pGetCharNameRequest,2);
+ packet(0x0923,clif->pHomMenu,2,4);
+ packet(0x0934,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x094c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0959,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095b,clif->pWalkToXY,2);
+ packet(0x096a,clif->pFriendsListAdd,2);
#endif
// 2013-09-25aRagexeRE, 2013-09-25bRagexeRE
#if PACKETVER == 20130925
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0875,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0876,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0885,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0887,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0890,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0940,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0969,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086d,clif->pStoragePassword,0);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x0875,clif->pHomMenu,2,4);
+ packet(0x0876,clif->pMoveFromKafra,2,4);
+ packet(0x087d,clif->pDropItem,2,4);
+ packet(0x0885,clif->pChangeDir,2,4);
+ packet(0x0887,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088f,clif->pFriendsListAdd,2);
+ packet(0x0890,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0958,clif->pTakeItem,2);
+ packet(0x095a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095c,clif->pMoveToKafra,2,4);
+ packet(0x0969,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-10-02aRagexeRE
#if PACKETVER == 20131002
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pStoragePassword,0);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pTickSend,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pWalkToXY,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-10-08bRagexeRE
#if PACKETVER == 20131008
- packet(0x0202,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0362,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x07e4,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x083c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x085e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0863,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0883,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a9,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0917,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0923,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0927,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0932,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0934,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0936,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0947,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0952,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0956,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0202,clif->pGetCharNameRequest,2);
+ packet(0x0362,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x07e4,clif->pActionRequest,2,6);
+ packet(0x083c,clif->pReqCloseBuyingStore,0);
+ packet(0x085d,clif->pDull/*,XXX*/);
+ packet(0x085e,clif->pWalkToXY,2);
+ packet(0x0863,clif->pPartyInvite2,2);
+ packet(0x086c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086d,clif->pSolveCharName,2);
+ packet(0x0883,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089c,clif->pChangeDir,2,4);
+ packet(0x08a9,clif->pUseSkillToId,2,4,6);
+ packet(0x0917,clif->pMoveFromKafra,2,4);
+ packet(0x091c,clif->pTakeItem,2);
+ packet(0x0923,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0927,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0932,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0934,clif->pTickSend,2);
+ packet(0x0936,clif->pReqClickBuyingStore,2);
+ packet(0x093c,clif->pHomMenu,2,4);
+ packet(0x0947,clif->pStoragePassword,0);
+ packet(0x0952,clif->pDropItem,2,4);
+ packet(0x0954,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0956,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095d,clif->pFriendsListAdd,2);
+ packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2013-10-16aRagexeRE, 2013-10-16bRagexeRE
#if PACKETVER == 20131016
- packet(0x022d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0281,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0364,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x07ec,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x085d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0863,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0864,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0867,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0870,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0875,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0887,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0888,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0890,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0894,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x091e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0927,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0946,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0962,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0966,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x022d,clif->pMoveToKafra,2,4);
+ packet(0x0281,clif->pPartyInvite2,2);
+ packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0364,clif->pDropItem,2,4);
+ packet(0x0366,clif->pReqClickBuyingStore,2);
+ packet(0x07ec,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x085a,clif->pDull/*,XXX*/);
+ packet(0x085d,clif->pGetCharNameRequest,2);
+ packet(0x0863,clif->pUseSkillToId,2,4,6);
+ packet(0x0864,clif->pStoragePassword,0);
+ packet(0x0867,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0870,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0875,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0887,clif->pTakeItem,2);
+ packet(0x0888,clif->pHomMenu,2,4);
+ packet(0x088b,clif->pFriendsListAdd,2);
+ packet(0x0890,clif->pSolveCharName,2);
+ packet(0x0894,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x091e,clif->pMoveFromKafra,2,4);
+ packet(0x091f,clif->pWalkToXY,2);
+ packet(0x0927,clif->pTickSend,2);
+ packet(0x0946,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094e,clif->pReqCloseBuyingStore,0);
+ packet(0x095e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0962,clif->pActionRequest,2,6);
+ packet(0x0966,clif->pChangeDir,2,4);
#endif
// 2013-10-23aRagexeRE
#if PACKETVER == 20131023
- packet(0x0366,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0438,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0819,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0835,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0872,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0876,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0885,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a7,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ab,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ac,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0919,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0923,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0924,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0935,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0937,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0944,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x094a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0951,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0954,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
+ packet(0x0366,clif->pReqCloseBuyingStore,0);
+ packet(0x0438,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0819,clif->pDropItem,2,4);
+ packet(0x0835,clif->pDull/*,XXX*/);
+ packet(0x085b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x086e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0872,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0876,clif->pUseSkillToId,2,4,6);
+ packet(0x087f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0885,clif->pStoragePassword,0);
+ packet(0x088a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088b,clif->pTakeItem,2);
+ packet(0x088f,clif->pMoveToKafra,2,4);
+ packet(0x08a7,clif->pHomMenu,2,4);
+ packet(0x08ab,clif->pChangeDir,2,4);
+ packet(0x08ac,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0919,clif->pSolveCharName,2);
+ packet(0x091d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0923,clif->pActionRequest,2,6);
+ packet(0x0924,clif->pTickSend,2);
+ packet(0x0935,clif->pReqClickBuyingStore,2);
+ packet(0x0937,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0944,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x094a,clif->pFriendsListAdd,2);
+ packet(0x0951,clif->pGetCharNameRequest,2);
+ packet(0x0954,clif->pMoveFromKafra,2,4);
+ packet(0x095b,clif->pWalkToXY,2);
#endif
// 2013-10-30aRagexeRE
#if PACKETVER == 20131030
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0887,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0925,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pHomMenu,2,4);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087d,clif->pFriendsListAdd,2);
+ packet(0x0887,clif->pStoragePassword,0);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x0925,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-11-06aRagexeRE
#if PACKETVER == 20131106
- packet(0x0281,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0363,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0369,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0436,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0802,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0817,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0866,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0867,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0870,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0875,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0887,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0891,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0893,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0894,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a2,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0919,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0935,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0942,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0946,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0947,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0948,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0950,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0954,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0962,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0967,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x0281,clif->pGetCharNameRequest,2);
+ packet(0x0363,clif->pUseSkillToId,2,4,6);
+ packet(0x0369,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0436,clif->pStoragePassword,0);
+ packet(0x0802,clif->pChangeDir,2,4);
+ packet(0x0817,clif->pDull/*,XXX*/);
+ packet(0x0866,clif->pWalkToXY,2);
+ packet(0x0867,clif->pMoveToKafra,2,4);
+ packet(0x0870,clif->pReqCloseBuyingStore,0);
+ packet(0x0875,clif->pDropItem,2,4);
+ packet(0x0887,clif->pTickSend,2);
+ packet(0x0891,clif->pSolveCharName,2);
+ packet(0x0893,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0894,clif->pHomMenu,2,4);
+ packet(0x08a2,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0919,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x0935,clif->pFriendsListAdd,2);
+ packet(0x093b,clif->pTakeItem,2);
+ packet(0x0942,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0946,clif->pReqClickBuyingStore,2);
+ packet(0x0947,clif->pActionRequest,2,6);
+ packet(0x0948,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0954,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095d,clif->pPartyInvite2,2);
+ packet(0x0962,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0967,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2013-11-13aRagexeRE
#if PACKETVER == 20131113
- packet(0x0364,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0879,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x088f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a8,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0920,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0926,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0928,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0929,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x092b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x092f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0934,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0936,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0949,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0950,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x095f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0960,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0964,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0969,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x0364,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086d,clif->pReqCloseBuyingStore,0);
+ packet(0x0879,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088f,clif->pDropItem,2,4);
+ packet(0x089a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a8,clif->pDull/*,XXX*/);
+ packet(0x091c,clif->pMoveFromKafra,2,4);
+ packet(0x0920,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0926,clif->pHomMenu,2,4);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x0928,clif->pStoragePassword,0);
+ packet(0x0929,clif->pTickSend,2);
+ packet(0x092b,clif->pTakeItem,2);
+ packet(0x092c,clif->pFriendsListAdd,2);
+ packet(0x092d,clif->pReqClickBuyingStore,2);
+ packet(0x092e,clif->pGetCharNameRequest,2);
+ packet(0x092f,clif->pSolveCharName,2);
+ packet(0x0934,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0936,clif->pWalkToXY,2);
+ packet(0x093c,clif->pChangeDir,2,4);
+ packet(0x0949,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0950,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095d,clif->pActionRequest,2,6);
+ packet(0x095f,clif->pUseSkillToId,2,4,6);
+ packet(0x0960,clif->pMoveToKafra,2,4);
+ packet(0x0964,clif->pDull/*,XXX*/);
+ packet(0x0969,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2013-11-20eRagexeRE
#if PACKETVER == 20131120
- packet(0x0361,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0368,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0802,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0811,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0817,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x085f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0862,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0884,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a1,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a8,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0917,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0926,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0927,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x092d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0940,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0950,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0953,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0955,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0956,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0361,clif->pSolveCharName,2);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0368,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0802,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0811,clif->pDull/*,XXX*/);
+ packet(0x0817,clif->pTickSend,2);
+ packet(0x085a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x085f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0862,clif->pReqCloseBuyingStore,0);
+ packet(0x0884,clif->pUseSkillToId,2,4,6);
+ packet(0x088c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088d,clif->pFriendsListAdd,2);
+ packet(0x089e,clif->pTakeItem,2);
+ packet(0x08a1,clif->pHomMenu,2,4);
+ packet(0x08a4,clif->pStoragePassword,0);
+ packet(0x08a8,clif->pActionRequest,2,6);
+ packet(0x0917,clif->pDropItem,2,4);
+ packet(0x0926,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0927,clif->pMoveToKafra,2,4);
+ packet(0x092b,clif->pWalkToXY,2);
+ packet(0x092d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0940,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pGetCharNameRequest,2);
+ packet(0x0953,clif->pPartyInvite2,2);
+ packet(0x0955,clif->pReqClickBuyingStore,2);
+ packet(0x0956,clif->pChangeDir,2,4);
+ packet(0x095e,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2013-11-27aRagexeRE, 2013-11-27bRagexeRE
#if PACKETVER == 20131127
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0365,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0366,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0881,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0884,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0894,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0930,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x093a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x095c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0967,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pGetCharNameRequest,2);
+ packet(0x0365,clif->pWalkToXY,2);
+ packet(0x0366,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pMoveFromKafra,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0881,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pHomMenu,2,4);
+ packet(0x088d,clif->pChangeDir,2,4);
+ packet(0x0894,clif->pStoragePassword,0);
+ packet(0x089e,clif->pDull/*,XXX*/);
+ packet(0x0930,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x093a,clif->pFriendsListAdd,2);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x094c,clif->pTakeItem,2);
+ packet(0x094f,clif->pDropItem,2,4);
+ packet(0x095c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0967,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pMoveToKafra,2,4);
#endif
// 2013-12-04dRagexeRE, 2013-12-04eRagexeRE
#if PACKETVER == 20131204
- packet(0x0365,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0366,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0862,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0869,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0877,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0879,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0882,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a0,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a4,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a7,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08ad,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0928,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x092d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0932,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0951,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0958,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0959,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0961,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0967,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
+ packet(0x0365,clif->pReqCloseBuyingStore,0);
+ packet(0x0366,clif->pTickSend,2);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x085a,clif->pPartyInvite2,2);
+ packet(0x0862,clif->pChangeDir,2,4);
+ packet(0x0869,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0877,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0879,clif->pSolveCharName,2);
+ packet(0x087f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0882,clif->pFriendsListAdd,2);
+ packet(0x08a0,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a4,clif->pDropItem,2,4);
+ packet(0x08a7,clif->pTakeItem,2);
+ packet(0x08ad,clif->pGetCharNameRequest,2);
+ packet(0x091f,clif->pHomMenu,2,4);
+ packet(0x0928,clif->pActionRequest,2,6);
+ packet(0x092d,clif->pUseSkillToId,2,4,6);
+ packet(0x092f,clif->pWalkToXY,2);
+ packet(0x0932,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093b,clif->pDull/*,XXX*/);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x0951,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0958,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0959,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0961,clif->pDull/*,XXX*/);
+ packet(0x0967,clif->pMoveFromKafra,2,4);
#endif
// 2013-12-11cRagexeRE, 2013-12-11eRagexeRE
#if PACKETVER == 20131211
- packet(0x0202,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0366,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0865,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0873,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0886,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0892,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a3,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ab,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x092b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0931,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pUseSkillToId,2,4,6);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0366,clif->pTakeItem,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pFriendsListAdd,2);
+ packet(0x0865,clif->pPartyInvite2,2);
+ packet(0x086e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0873,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pDull/*,XXX*/);
+ packet(0x0886,clif->pHomMenu,2,4);
+ packet(0x0892,clif->pMoveToKafra,2,4);
+ packet(0x08a3,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a4,clif->pChangeDir,2,4);
+ packet(0x08ab,clif->pDropItem,2,4);
+ packet(0x092b,clif->pStoragePassword,0);
+ packet(0x0931,clif->pMoveFromKafra,2,4);
+ packet(0x094c,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-12-18aRagexeRE
#if PACKETVER == 20131218
- packet(0x022d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x087b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ab,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0947,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pHomMenu,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pStoragePassword,0);
+ packet(0x087b,clif->pDull/*,XXX*/);
+ packet(0x08ab,clif->pFriendsListAdd,2);
+ packet(0x092f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0947,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-12-23bRagexeRE, 2013-12-23xRagexeRE
#if PACKETVER == 20131223
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x08a4,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2013-12-30aRagexeRE
#if PACKETVER == 20131230
- packet(0x022d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x02c4,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0365,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0369,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0860,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0871,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x087b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0895,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0898,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a9,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x091f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0926,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x092a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0943,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0949,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0968,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0969,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x096a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x022d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x02c4,clif->pUseSkillToId,2,4,6);
+ packet(0x035f,clif->pWalkToXY,2);
+ packet(0x0365,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0369,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x0860,clif->pDropItem,2,4);
+ packet(0x0871,clif->pActionRequest,2,6);
+ packet(0x087b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087e,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0895,clif->pMoveFromKafra,2,4);
+ packet(0x0898,clif->pSolveCharName,2);
+ packet(0x089c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a9,clif->pPartyInvite2,2);
+ packet(0x091d,clif->pStoragePassword,0);
+ packet(0x091e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x091f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0926,clif->pGetCharNameRequest,2);
+ packet(0x092a,clif->pTakeItem,2);
+ packet(0x093d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x0943,clif->pFriendsListAdd,2);
+ packet(0x0949,clif->pHomMenu,2,4);
+ packet(0x094a,clif->pChangeDir,2,4);
+ packet(0x094c,clif->pReqCloseBuyingStore,0);
+ packet(0x0968,clif->pMoveToKafra,2,4);
+ packet(0x0969,clif->pReqClickBuyingStore,2);
+ packet(0x096a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2014-01-08bRagexeRE, 2014-01-08cRagexeRE
#if PACKETVER == 20140108
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0936,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0936,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-01-15cRagexeRE, 2014-01-15dRagexeRE, 2014-01-15eRagexeRE
#if PACKETVER == 20140115
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0865,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a7,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0965,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0966,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pDropItem,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pMoveFromKafra,2,4);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pGetCharNameRequest,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0865,clif->pStoragePassword,0);
+ packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088a,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pMoveToKafra,2,4);
+ packet(0x089b,clif->pFriendsListAdd,2);
+ packet(0x08a7,clif->pChangeDir,2,4);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pTakeItem,2);
+ packet(0x095b,clif->pDull/*,XXX*/);
+ packet(0x095d,clif->pPartyInvite2,2);
+ packet(0x0965,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0966,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2014-01-22aRagexeRE
#if PACKETVER == 20140122
- packet(0x0360,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0811,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0863,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0870,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0871,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0872,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0893,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0899,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08aa,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0917,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0925,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x092f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0940,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0942,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x094c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0950,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0952,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0955,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0360,clif->pActionRequest,2,6);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0811,clif->pReqCloseBuyingStore,0);
+ packet(0x0863,clif->pHomMenu,2,4);
+ packet(0x0870,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0871,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0872,clif->pPartyInvite2,2);
+ packet(0x088c,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0893,clif->pFriendsListAdd,2);
+ packet(0x0899,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089d,clif->pGetCharNameRequest,2);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x08aa,clif->pDropItem,2,4);
+ packet(0x0917,clif->pTickSend,2);
+ packet(0x091a,clif->pChangeDir,2,4);
+ packet(0x0925,clif->pWalkToXY,2);
+ packet(0x092f,clif->pMoveToKafra,2,4);
+ packet(0x0940,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pSolveCharName,2);
+ packet(0x0942,clif->pTakeItem,2);
+ packet(0x094b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x094c,clif->pMoveFromKafra,2,4);
+ packet(0x0950,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0952,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0955,clif->pStoragePassword,0);
+ packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095f,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2014-01-29bRagexeRE
#if PACKETVER == 20140129
- packet(0x0281,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0802,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0884,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0885,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0889,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0921,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0924,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x092c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0958,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0961,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pUseSkillToId,2,4,6);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pDull/*,XXX*/);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pDropItem,2,4);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pChangeDir,2,4);
+ packet(0x0802,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pHomMenu,2,4);
+ packet(0x0885,clif->pTakeItem,2);
+ packet(0x0889,clif->pMoveFromKafra,2,4);
+ packet(0x0921,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0924,clif->pItemListWindowSelected,2,4,8);
+ packet(0x092c,clif->pStoragePassword,0);
+ packet(0x094d,clif->pMoveToKafra,2,4);
+ packet(0x0958,clif->pPartyInvite2,2);
+ packet(0x0961,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-02-05bRagexeRE
#if PACKETVER == 20140205
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0938,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0938,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-02-12aRagexeRE
#if PACKETVER == 20140212
- packet(0x02c4,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0369,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0874,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0877,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0878,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0888,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a0,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a1,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a7,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08ad,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0919,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0928,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0930,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0934,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0936,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0944,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0952,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0953,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0960,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x02c4,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0369,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0438,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086e,clif->pUseSkillToId,2,4,6);
+ packet(0x0874,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0877,clif->pReqClickBuyingStore,2);
+ packet(0x0878,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087e,clif->pWalkToXY,2);
+ packet(0x0888,clif->pMoveFromKafra,2,4);
+ packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a0,clif->pStoragePassword,0);
+ packet(0x08a1,clif->pPartyInvite2,2);
+ packet(0x08a7,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x08ad,clif->pDropItem,2,4);
+ packet(0x0919,clif->pChangeDir,2,4);
+ packet(0x091b,clif->pFriendsListAdd,2);
+ packet(0x0928,clif->pSolveCharName,2);
+ packet(0x0930,clif->pTickSend,2);
+ packet(0x0934,clif->pActionRequest,2,6);
+ packet(0x0936,clif->pDull/*,XXX*/);
+ packet(0x093d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0944,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0952,clif->pGetCharNameRequest,2);
+ packet(0x0953,clif->pTakeItem,2);
+ packet(0x0960,clif->pReqCloseBuyingStore,0);
#endif
// 2014-02-19aRagexeRE, 2014-02-19bRagexeRE
#if PACKETVER == 20140219
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0360,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0364,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0802,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x085d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0860,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0868,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a6,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08ac,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0921,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0927,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0939,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0946,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0949,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0953,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x095a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0961,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
+ packet(0x0202,clif->pFriendsListAdd,2);
+ packet(0x0360,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pSolveCharName,2);
+ packet(0x0802,clif->pTakeItem,2);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0838,clif->pUseSkillToId,2,4,6);
+ packet(0x085b,clif->pReqClickBuyingStore,2);
+ packet(0x085c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x085d,clif->pWalkToXY,2);
+ packet(0x085f,clif->pGetCharNameRequest,2);
+ packet(0x0860,clif->pHomMenu,2,4);
+ packet(0x0868,clif->pStoragePassword,0);
+ packet(0x086f,clif->pPartyInvite2,2);
+ packet(0x087c,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089f,clif->pDropItem,2,4);
+ packet(0x08a6,clif->pChangeDir,2,4);
+ packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08ac,clif->pMoveFromKafra,2,4);
+ packet(0x0921,clif->pActionRequest,2,6);
+ packet(0x0927,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0939,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0946,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0949,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0953,clif->pSearchStoreInfoNextPage,0);
+ packet(0x095a,clif->pReqCloseBuyingStore,0);
+ packet(0x0961,clif->pTickSend,2);
#endif
// 2014-02-26aRagexeRE, 2014-02-26bRagexeRE
#if PACKETVER == 20140226
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0362,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0887,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0894,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0895,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0921,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0931,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0941,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0964,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0362,clif->pFriendsListAdd,2);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pChangeDir,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0887,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0894,clif->pDropItem,2,4);
+ packet(0x0895,clif->pMoveFromKafra,2,4);
+ packet(0x091a,clif->pMoveToKafra,2,4);
+ packet(0x0921,clif->pPartyInvite2,2);
+ packet(0x0931,clif->pDull/*,XXX*/);
+ packet(0x0941,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0962,clif->pDull/*,XXX*/);
+ packet(0x0964,clif->pTakeItem,2);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-03-05aRagexeRE, 2014-03-05bRagexeRE
#if PACKETVER == 20140305
- packet(0x0202,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x07e4,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0934,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pTakeItem,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x07e4,clif->pFriendsListAdd,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pChangeDir,2,4);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x0934,clif->pHomMenu,2,4);
+ packet(0x095e,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-03-12bRagexeRE
#if PACKETVER == 20140312
- packet(0x0202,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x023b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0889,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x088d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0891,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0894,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x089b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x089e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a9,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ad,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0948,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x094c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0957,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x0202,clif->pUseSkillToId,2,4,6);
+ packet(0x023b,clif->pDull/*,XXX*/);
+ packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085e,clif->pReqClickBuyingStore,2);
+ packet(0x086f,clif->pTickSend,2);
+ packet(0x0889,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x088d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088e,clif->pActionRequest,2,6);
+ packet(0x0891,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0894,clif->pWalkToXY,2);
+ packet(0x089b,clif->pGetCharNameRequest,2);
+ packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x089e,clif->pDropItem,2,4);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08a9,clif->pFriendsListAdd,2);
+ packet(0x08ad,clif->pSolveCharName,2);
+ packet(0x091b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091c,clif->pPartyInvite2,2);
+ packet(0x091e,clif->pHomMenu,2,4);
+ packet(0x092a,clif->pTakeItem,2);
+ packet(0x0948,clif->pReqCloseBuyingStore,0);
+ packet(0x094a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x094c,clif->pChangeDir,2,4);
+ packet(0x0957,clif->pMoveFromKafra,2,4);
+ packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095e,clif->pStoragePassword,0);
+ packet(0x0966,clif->pMoveToKafra,2,4);
#endif
// 2014-03-19aRagexeRE
#if PACKETVER == 20140319
- packet(0x02c4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07e4,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0802,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0811,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0815,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x085a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0864,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0866,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0872,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0883,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0893,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a2,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0923,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0933,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0942,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0944,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0947,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0954,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0955,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0964,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x096a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x02c4,clif->pTakeItem,2);
+ packet(0x07e4,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0802,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0811,clif->pReqClickBuyingStore,2);
+ packet(0x0815,clif->pHomMenu,2,4);
+ packet(0x085a,clif->pWalkToXY,2);
+ packet(0x0864,clif->pActionRequest,2,6);
+ packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0866,clif->pChangeDir,2,4);
+ packet(0x086e,clif->pDull/*,XXX*/);
+ packet(0x0872,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0883,clif->pDropItem,2,4);
+ packet(0x088e,clif->pPartyInvite2,2);
+ packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0893,clif->pDull/*,XXX*/);
+ packet(0x089f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a2,clif->pMoveToKafra,2,4);
+ packet(0x091f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0923,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0933,clif->pReqCloseBuyingStore,0);
+ packet(0x0942,clif->pStoragePassword,0);
+ packet(0x0944,clif->pUseSkillToId,2,4,6);
+ packet(0x0947,clif->pMoveFromKafra,2,4);
+ packet(0x094c,clif->pGetCharNameRequest,2);
+ packet(0x0954,clif->pFriendsListAdd,2);
+ packet(0x0955,clif->pTickSend,2);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0964,clif->pSolveCharName,2);
+ packet(0x096a,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2014-03-26cRagexeRE
#if PACKETVER == 20140326
- packet(0x0362,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0365,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x07ec,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x083c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0865,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0867,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0869,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0887,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0898,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08aa,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ac,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08ad,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0918,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0928,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0942,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0945,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0946,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0956,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0959,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0969,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x0362,clif->pGetCharNameRequest,2);
+ packet(0x0365,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x07ec,clif->pTakeItem,2);
+ packet(0x083c,clif->pReqClickBuyingStore,2);
+ packet(0x085b,clif->pReqCloseBuyingStore,0);
+ packet(0x0865,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0867,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0869,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086b,clif->pMoveFromKafra,2,4);
+ packet(0x087c,clif->pWalkToXY,2);
+ packet(0x087e,clif->pFriendsListAdd,2);
+ packet(0x087f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0887,clif->pDull/*,XXX*/);
+ packet(0x0898,clif->pDropItem,2,4);
+ packet(0x08aa,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08ad,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0918,clif->pTickSend,2);
+ packet(0x0928,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092a,clif->pStoragePassword,0);
+ packet(0x093d,clif->pActionRequest,2,6);
+ packet(0x0942,clif->pHomMenu,2,4);
+ packet(0x0945,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0946,clif->pPartyInvite2,2);
+ packet(0x0956,clif->pChangeDir,2,4);
+ packet(0x0959,clif->pMoveToKafra,2,4);
+ packet(0x095a,clif->pSolveCharName,2);
+ packet(0x095c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0969,clif->pUseSkillToId,2,4,6);
#endif
// 2014-04-02eRagexeRE, 2014-04-02fRagexeRE
#if PACKETVER == 20140402
- packet(0x023b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0360,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0364,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x085b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x085d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0867,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0868,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0882,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0883,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0890,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0896,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ac,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0920,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0926,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0933,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x093f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0944,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0946,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x094c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0950,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x023b,clif->pReqClickBuyingStore,2);
+ packet(0x0360,clif->pChangeDir,2,4);
+ packet(0x0364,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pSolveCharName,2);
+ packet(0x085b,clif->pMoveFromKafra,2,4);
+ packet(0x085d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0867,clif->pReqCloseBuyingStore,0);
+ packet(0x0868,clif->pUseSkillToId,2,4,6);
+ packet(0x0882,clif->pDropItem,2,4);
+ packet(0x0883,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088a,clif->pGetCharNameRequest,2);
+ packet(0x088c,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pPartyInvite2,2);
+ packet(0x0896,clif->pHomMenu,2,4);
+ packet(0x089a,clif->pFriendsListAdd,2);
+ packet(0x08ac,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0920,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0926,clif->pStoragePassword,0);
+ packet(0x092d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0933,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x093f,clif->pWalkToXY,2);
+ packet(0x0944,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0946,clif->pActionRequest,2,6);
+ packet(0x094c,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pTickSend,2);
+ packet(0x0958,clif->pTakeItem,2);
+ packet(0x095c,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2014-04-09aRagexeRE
#if PACKETVER == 20140409
- packet(0x0819,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x085b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0868,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0873,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0875,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x087e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0883,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0884,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0893,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0896,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a6,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08a7,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a9,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0918,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x092e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0942,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0947,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x095e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x0819,clif->pMoveFromKafra,2,4);
+ packet(0x085b,clif->pSolveCharName,2);
+ packet(0x0868,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0873,clif->pReqCloseBuyingStore,0);
+ packet(0x0875,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x087e,clif->pTickSend,2);
+ packet(0x0883,clif->pWalkToXY,2);
+ packet(0x0884,clif->pGetCharNameRequest,2);
+ packet(0x088a,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pTakeItem,2);
+ packet(0x0893,clif->pActionRequest,2,6);
+ packet(0x0896,clif->pUseSkillToId,2,4,6);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x08a4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a6,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08a7,clif->pChangeDir,2,4);
+ packet(0x08a9,clif->pStoragePassword,0);
+ packet(0x0918,clif->pDropItem,2,4);
+ packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x092e,clif->pPartyInvite2,2);
+ packet(0x0942,clif->pMoveToKafra,2,4);
+ packet(0x0947,clif->pHomMenu,2,4);
+ packet(0x094c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095a,clif->pReqClickBuyingStore,2);
+ packet(0x095e,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2014-04-16aRagexeRE
#if PACKETVER == 20140416
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x095c,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-04-23aRagexeRE
#if PACKETVER == 20140423
- packet(0x022d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0436,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0811,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x083c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x085a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0866,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x086f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0873,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0890,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0895,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0896,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a8,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ad,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x091a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0920,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x022d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x0436,clif->pFriendsListAdd,2);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x0811,clif->pMoveFromKafra,2,4);
+ packet(0x083c,clif->pChangeDir,2,4);
+ packet(0x085a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085b,clif->pWalkToXY,2);
+ packet(0x0862,clif->pMoveToKafra,2,4);
+ packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0866,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086b,clif->pDropItem,2,4);
+ packet(0x086f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0873,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088b,clif->pSolveCharName,2);
+ packet(0x0890,clif->pUseSkillToId,2,4,6);
+ packet(0x0895,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0896,clif->pActionRequest,2,6);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089b,clif->pReqClickBuyingStore,2);
+ packet(0x089d,clif->pGetCharNameRequest,2);
+ packet(0x089f,clif->pReqCloseBuyingStore,0);
+ packet(0x08a8,clif->pHomMenu,2,4);
+ packet(0x08ad,clif->pDull/*,XXX*/);
+ packet(0x091a,clif->pTickSend,2);
+ packet(0x0920,clif->pPartyInvite2,2);
+ packet(0x094f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095e,clif->pDull/*,XXX*/);
#endif
// 2014-04-30aRagexeRE
#if PACKETVER == 20140430
- packet(0x023b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x035f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0860,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0870,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0871,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0875,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0884,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0899,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a1,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0940,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0953,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0956,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
+ packet(0x023b,clif->pTickSend,2);
+ packet(0x035f,clif->pStoragePassword,0);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pUseSkillToId,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pDropItem,2,4);
+ packet(0x0860,clif->pFriendsListAdd,2);
+ packet(0x0870,clif->pPartyInvite2,2);
+ packet(0x0871,clif->pHomMenu,2,4);
+ packet(0x0875,clif->pMoveFromKafra,2,4);
+ packet(0x087f,clif->pTakeItem,2);
+ packet(0x0884,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0899,clif->pChangeDir,2,4);
+ packet(0x08a1,clif->pDull/*,XXX*/);
+ packet(0x093b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0940,clif->pGetCharNameRequest,2);
+ packet(0x094b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0953,clif->pDull/*,XXX*/);
+ packet(0x0956,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pSolveCharName,2);
#endif
// 2014-05-08bRagexeRE
#if PACKETVER == 20140508
- packet(0x022d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0366,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0368,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0802,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0861,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0927,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0930,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0932,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0934,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x094e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x022d,clif->pSolveCharName,2);
+ packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pChangeDir,2,4);
+ packet(0x0366,clif->pPartyInvite2,2);
+ packet(0x0368,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pHomMenu,2,4);
+ packet(0x0802,clif->pGetCharNameRequest,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0861,clif->pTakeItem,2);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x089b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x0927,clif->pStoragePassword,0);
+ packet(0x0930,clif->pMoveFromKafra,2,4);
+ packet(0x0932,clif->pDropItem,2,4);
+ packet(0x0934,clif->pDull/*,XXX*/);
+ packet(0x094e,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2014-05-14bRagexeRE, 2014-05-14cRagexeRE
#if PACKETVER == 20140514
- packet(0x0437,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0817,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0865,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0868,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0876,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0877,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0885,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0886,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0895,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a5,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0918,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0921,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0925,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0958,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0962,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0965,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x096a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x0437,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0817,clif->pDull/*,XXX*/);
+ packet(0x0865,clif->pActionRequest,2,6);
+ packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0868,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0876,clif->pUseSkillToId,2,4,6);
+ packet(0x0877,clif->pDull/*,XXX*/);
+ packet(0x087d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0885,clif->pStoragePassword,0);
+ packet(0x0886,clif->pTickSend,2);
+ packet(0x088a,clif->pChangeDir,2,4);
+ packet(0x088b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0895,clif->pTakeItem,2);
+ packet(0x089a,clif->pSolveCharName,2);
+ packet(0x089c,clif->pFriendsListAdd,2);
+ packet(0x08a5,clif->pGetCharNameRequest,2);
+ packet(0x0918,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0921,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0925,clif->pReqClickBuyingStore,2);
+ packet(0x092c,clif->pMoveToKafra,2,4);
+ packet(0x092f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094d,clif->pReqCloseBuyingStore,0);
+ packet(0x094e,clif->pMoveFromKafra,2,4);
+ packet(0x0958,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pWalkToXY,2);
+ packet(0x0962,clif->pPartyInvite2,2);
+ packet(0x0965,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x096a,clif->pDropItem,2,4);
#endif
// 2014-05-21aRagexeRE
#if PACKETVER == 20140521
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x089c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ac,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0968,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pStoragePassword,0);
+ packet(0x088b,clif->pDull/*,XXX*/);
+ packet(0x088d,clif->pChangeDir,2,4);
+ packet(0x089c,clif->pFriendsListAdd,2);
+ packet(0x08ac,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0968,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-05-28aRagexeRE
#if PACKETVER == 20140528
- packet(0x0202,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0862,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0872,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0875,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0877,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0879,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x088f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0894,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0896,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a8,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0929,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0930,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0938,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x093f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x094b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0963,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0964,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0966,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x0202,clif->pWalkToXY,2);
+ packet(0x0360,clif->pStoragePassword,0);
+ packet(0x085f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0862,clif->pSolveCharName,2);
+ packet(0x0872,clif->pHomMenu,2,4);
+ packet(0x0875,clif->pDropItem,2,4);
+ packet(0x0877,clif->pTickSend,2);
+ packet(0x0879,clif->pMoveFromKafra,2,4);
+ packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x088f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0894,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089d,clif->pTakeItem,2);
+ packet(0x08a4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a8,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x091d,clif->pFriendsListAdd,2);
+ packet(0x0929,clif->pActionRequest,2,6);
+ packet(0x0930,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0938,clif->pReqCloseBuyingStore,0);
+ packet(0x093a,clif->pMoveToKafra,2,4);
+ packet(0x093f,clif->pPartyInvite2,2);
+ packet(0x094a,clif->pReqClickBuyingStore,2);
+ packet(0x094b,clif->pChangeDir,2,4);
+ packet(0x095f,clif->pGetCharNameRequest,2);
+ packet(0x0963,clif->pUseSkillToId,2,4,6);
+ packet(0x0964,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0966,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2014-06-05aRagexeRE
#if PACKETVER == 20140605
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0369,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0921,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0931,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pReqCloseBuyingStore,0);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pActionRequest,2,6);
+ packet(0x0369,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pChangeDir,2,4);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0921,clif->pStoragePassword,0);
+ packet(0x0931,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pSolveCharName,2);
+ packet(0x094c,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-06-11bRagexeRE
#if PACKETVER == 20140611
- packet(0x0364,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0438,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x07e4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0838,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0864,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0867,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0874,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0878,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0891,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0893,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0894,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a1,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0924,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0941,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0950,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0951,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0952,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0957,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0958,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0963,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0965,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0969,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x0364,clif->pReqCloseBuyingStore,0);
+ packet(0x0438,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x07e4,clif->pMoveToKafra,2,4);
+ packet(0x0838,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0864,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0867,clif->pTickSend,2);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x0874,clif->pPartyInvite2,2);
+ packet(0x0878,clif->pTakeItem,2);
+ packet(0x088c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0891,clif->pActionRequest,2,6);
+ packet(0x0893,clif->pWalkToXY,2);
+ packet(0x0894,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089b,clif->pFriendsListAdd,2);
+ packet(0x08a1,clif->pUseSkillToId,2,4,6);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x0924,clif->pGetCharNameRequest,2);
+ packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0941,clif->pStoragePassword,0);
+ packet(0x094a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094f,clif->pSolveCharName,2);
+ packet(0x0950,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0951,clif->pChangeDir,2,4);
+ packet(0x0952,clif->pMoveFromKafra,2,4);
+ packet(0x0957,clif->pReqClickBuyingStore,2);
+ packet(0x0958,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0963,clif->pDropItem,2,4);
+ packet(0x0965,clif->pHomMenu,2,4);
+ packet(0x0969,clif->pSearchStoreInfoNextPage,0);
#endif
// 2014-06-18cRagexeRE
#if PACKETVER == 20140618
- packet(0x085d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0860,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0861,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0878,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0884,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0885,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0886,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0890,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a7,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08ac,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0917,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x091f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0935,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0938,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0939,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0945,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0957,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0967,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x085d,clif->pMoveToKafra,2,4);
+ packet(0x085f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0860,clif->pTickSend,2);
+ packet(0x0861,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0878,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087d,clif->pSolveCharName,2);
+ packet(0x0884,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0885,clif->pMoveFromKafra,2,4);
+ packet(0x0886,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0890,clif->pChangeDir,2,4);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x08a6,clif->pReqClickBuyingStore,2);
+ packet(0x08a7,clif->pWalkToXY,2);
+ packet(0x08ac,clif->pDull/*,XXX*/);
+ packet(0x0917,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x091f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0935,clif->pTakeItem,2);
+ packet(0x0938,clif->pPartyInvite2,2);
+ packet(0x0939,clif->pReqCloseBuyingStore,0);
+ packet(0x093b,clif->pActionRequest,2,6);
+ packet(0x0945,clif->pDropItem,2,4);
+ packet(0x0954,clif->pFriendsListAdd,2);
+ packet(0x0957,clif->pStoragePassword,0);
+ packet(0x095d,clif->pGetCharNameRequest,2);
+ packet(0x095e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0962,clif->pDull/*,XXX*/);
+ packet(0x0967,clif->pHomMenu,2,4);
#endif
// 2014-06-25aRagexeRE
#if PACKETVER == 20140625
- packet(0x0202,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x023b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0815,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0817,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0861,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0875,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0885,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0886,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0888,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x088a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0897,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a1,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a2,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0923,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0928,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0946,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0959,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0960,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0968,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0969,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pMoveToKafra,2,4);
+ packet(0x023b,clif->pMoveFromKafra,2,4);
+ packet(0x0815,clif->pDull/*,XXX*/);
+ packet(0x0817,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pWalkToXY,2);
+ packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0861,clif->pUseSkillToId,2,4,6);
+ packet(0x086b,clif->pPartyInvite2,2);
+ packet(0x0875,clif->pSolveCharName,2);
+ packet(0x087b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0885,clif->pDropItem,2,4);
+ packet(0x0886,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0888,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x088a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0897,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a1,clif->pTickSend,2);
+ packet(0x08a2,clif->pChangeDir,2,4);
+ packet(0x091a,clif->pTakeItem,2);
+ packet(0x0923,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0928,clif->pReqCloseBuyingStore,0);
+ packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0946,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0959,clif->pActionRequest,2,6);
+ packet(0x0960,clif->pStoragePassword,0);
+ packet(0x0968,clif->pReqClickBuyingStore,2);
+ packet(0x0969,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-07-02aRagexeRE
#if PACKETVER == 20140702
- packet(0x022d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0438,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x07e4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x086c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0887,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0892,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a0,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a2,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0925,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0933,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0940,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pFriendsListAdd,2);
+ packet(0x0438,clif->pMoveToKafra,2,4);
+ packet(0x07e4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pStoragePassword,0);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pHomMenu,2,4);
+ packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pDropItem,2,4);
+ packet(0x086c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0887,clif->pWalkToXY,2);
+ packet(0x0892,clif->pMoveFromKafra,2,4);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x08a0,clif->pPartyInvite2,2);
+ packet(0x08a2,clif->pTakeItem,2);
+ packet(0x0925,clif->pChangeDir,2,4);
+ packet(0x092c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0933,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pSearchStoreInfoNextPage,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-07-09aRagexeRE
#if PACKETVER == 20140709
- packet(0x0364,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0860,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0866,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0869,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0875,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0877,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0879,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x087a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0887,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0888,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0894,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0897,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0898,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08ad,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0925,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x092f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0931,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0934,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0939,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0961,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x0364,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0860,clif->pStoragePassword,0);
+ packet(0x0866,clif->pDull/*,XXX*/);
+ packet(0x0869,clif->pChangeDir,2,4);
+ packet(0x0875,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0877,clif->pUseSkillToId,2,4,6);
+ packet(0x0879,clif->pGetCharNameRequest,2);
+ packet(0x087a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0887,clif->pMoveToKafra,2,4);
+ packet(0x0888,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pPartyInvite2,2);
+ packet(0x0894,clif->pReqCloseBuyingStore,0);
+ packet(0x0897,clif->pReqClickBuyingStore,2);
+ packet(0x0898,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08ad,clif->pDropItem,2,4);
+ packet(0x091a,clif->pWalkToXY,2);
+ packet(0x0925,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x092f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0931,clif->pSolveCharName,2);
+ packet(0x0934,clif->pTickSend,2);
+ packet(0x0939,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094d,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pMoveFromKafra,2,4);
+ packet(0x094f,clif->pFriendsListAdd,2);
+ packet(0x095f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0961,clif->pTakeItem,2);
#endif
// 2014-07-16aRagexeRE
#if PACKETVER == 20140716
- packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0811,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0868,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0871,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0881,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a2,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a4,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ac,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0918,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0926,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x092c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0938,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0947,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0952,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0959,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x0811,clif->pActionRequest,2,6);
+ packet(0x085c,clif->pGetCharNameRequest,2);
+ packet(0x085f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0868,clif->pPartyInvite2,2);
+ packet(0x0871,clif->pMoveToKafra,2,4);
+ packet(0x0881,clif->pUseSkillToId,2,4,6);
+ packet(0x088b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088d,clif->pDull/*,XXX*/);
+ packet(0x088f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089a,clif->pSolveCharName,2);
+ packet(0x089f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a2,clif->pReqCloseBuyingStore,0);
+ packet(0x08a4,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ac,clif->pHomMenu,2,4);
+ packet(0x0918,clif->pWalkToXY,2);
+ packet(0x091f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0926,clif->pDropItem,2,4);
+ packet(0x092c,clif->pFriendsListAdd,2);
+ packet(0x092f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0938,clif->pMoveFromKafra,2,4);
+ packet(0x093b,clif->pReqClickBuyingStore,2);
+ packet(0x0947,clif->pDull/*,XXX*/);
+ packet(0x0952,clif->pChangeDir,2,4);
+ packet(0x0958,clif->pTakeItem,2);
+ packet(0x0959,clif->pTickSend,2);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
#endif
// 2014-07-23aRagexeRE, 2014-07-23bRagexeRE
#if PACKETVER == 20140723
- packet(0x02c4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0436,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0819,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0838,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0869,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x087d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0888,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0891,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0896,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0898,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a2,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08ad,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0927,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0934,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0935,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0939,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x093d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0945,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0947,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0948,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0960,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x02c4,clif->pTickSend,2);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0368,clif->pGetCharNameRequest,2);
+ packet(0x0436,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0819,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0838,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085f,clif->pWalkToXY,2);
+ packet(0x0869,clif->pMoveToKafra,2,4);
+ packet(0x086d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x087d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0888,clif->pReqClickBuyingStore,2);
+ packet(0x0891,clif->pReqCloseBuyingStore,0);
+ packet(0x0896,clif->pDropItem,2,4);
+ packet(0x0898,clif->pDull/*,XXX*/);
+ packet(0x089e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a2,clif->pMoveFromKafra,2,4);
+ packet(0x08ad,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0927,clif->pSolveCharName,2);
+ packet(0x092f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0934,clif->pFriendsListAdd,2);
+ packet(0x0935,clif->pPartyInvite2,2);
+ packet(0x0939,clif->pItemListWindowSelected,2,4,8);
+ packet(0x093d,clif->pTakeItem,2);
+ packet(0x0945,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0947,clif->pActionRequest,2,6);
+ packet(0x0948,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pDull/*,XXX*/);
+ packet(0x0960,clif->pChangeDir,2,4);
#endif
// 2014-07-30bRagexeRE
#if PACKETVER == 20140730
- packet(0x022d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0364,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0366,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0367,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0437,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0815,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0817,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x087d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x087f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0889,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0892,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a0,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a7,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a9,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08ad,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0924,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0934,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0940,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0946,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x022d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0364,clif->pGetCharNameRequest,2);
+ packet(0x0366,clif->pUseSkillToId,2,4,6);
+ packet(0x0367,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0437,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x07ec,clif->pDull/*,XXX*/);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0815,clif->pFriendsListAdd,2);
+ packet(0x0817,clif->pActionRequest,2,6);
+ packet(0x085e,clif->pWalkToXY,2);
+ packet(0x085f,clif->pReqCloseBuyingStore,0);
+ packet(0x087d,clif->pMoveFromKafra,2,4);
+ packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x087f,clif->pDropItem,2,4);
+ packet(0x0889,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x088b,clif->pTickSend,2);
+ packet(0x088d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0892,clif->pMoveToKafra,2,4);
+ packet(0x08a0,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a6,clif->pReqClickBuyingStore,2);
+ packet(0x08a7,clif->pSolveCharName,2);
+ packet(0x08a9,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08ad,clif->pStoragePassword,0);
+ packet(0x091e,clif->pPartyInvite2,2);
+ packet(0x0924,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092a,clif->pTakeItem,2);
+ packet(0x0934,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0940,clif->pChangeDir,2,4);
+ packet(0x0946,clif->pHomMenu,2,4);
#endif
// 2014-08-06aRagexeRE
#if PACKETVER == 20140806
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0948,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0948,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-08-13aRagexeRE
#if PACKETVER == 20140813
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0802,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0868,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0878,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0882,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0895,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0897,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0899,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a3,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a7,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0967,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pStoragePassword,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0802,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0868,clif->pHomMenu,2,4);
+ packet(0x0878,clif->pChangeDir,2,4);
+ packet(0x087c,clif->pPartyInvite2,2);
+ packet(0x0882,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0895,clif->pMoveFromKafra,2,4);
+ packet(0x0897,clif->pFriendsListAdd,2);
+ packet(0x0899,clif->pDropItem,2,4);
+ packet(0x08a3,clif->pTakeItem,2);
+ packet(0x08a7,clif->pDull/*,XXX*/);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x0967,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-08-20aRagexeRE
#if PACKETVER == 20140820
- packet(0x035f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0835,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0861,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0864,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0869,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0872,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0876,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0891,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0899,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089a,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a3,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a7,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0937,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x093a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x094a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0951,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0952,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0956,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0958,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x035f,clif->pReqCloseBuyingStore,0);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0835,clif->pChangeDir,2,4);
+ packet(0x0861,clif->pTickSend,2);
+ packet(0x0864,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0869,clif->pDull/*,XXX*/);
+ packet(0x086c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x0872,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0876,clif->pDropItem,2,4);
+ packet(0x0891,clif->pGetCharNameRequest,2);
+ packet(0x0899,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089a,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089b,clif->pMoveFromKafra,2,4);
+ packet(0x08a3,clif->pWalkToXY,2);
+ packet(0x08a7,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091d,clif->pSolveCharName,2);
+ packet(0x092f,clif->pUseSkillToId,2,4,6);
+ packet(0x0936,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0937,clif->pHomMenu,2,4);
+ packet(0x093a,clif->pStoragePassword,0);
+ packet(0x093e,clif->pReqClickBuyingStore,2);
+ packet(0x094a,clif->pFriendsListAdd,2);
+ packet(0x0951,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0952,clif->pActionRequest,2,6);
+ packet(0x0956,clif->pMoveToKafra,2,4);
+ packet(0x0958,clif->pDull/*,XXX*/);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2014-08-27aRagexeRE
#if PACKETVER == 20140827
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0943,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0943,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-09-03aRagexeRE
#if PACKETVER == 20140903
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0931,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0941,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0943,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0945,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089b,clif->pFriendsListAdd,2);
+ packet(0x0931,clif->pHomMenu,2,4);
+ packet(0x0941,clif->pStoragePassword,0);
+ packet(0x0943,clif->pDull/*,XXX*/);
+ packet(0x0945,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-09-17cRagexeRE
#if PACKETVER == 20140917
- packet(0x022d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0364,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0365,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0367,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0864,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0889,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0895,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0897,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0898,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a8,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0919,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x091e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x092a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0930,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0949,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0951,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0956,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0957,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x095c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x095e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0966,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x022d,clif->pPartyInvite2,2);
+ packet(0x0364,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0365,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0367,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0864,clif->pTakeItem,2);
+ packet(0x086d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0889,clif->pActionRequest,2,6);
+ packet(0x0895,clif->pHomMenu,2,4);
+ packet(0x0897,clif->pTickSend,2);
+ packet(0x0898,clif->pGetCharNameRequest,2);
+ packet(0x089c,clif->pReqClickBuyingStore,2);
+ packet(0x08a8,clif->pStoragePassword,0);
+ packet(0x0919,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x091e,clif->pReqCloseBuyingStore,0);
+ packet(0x092a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0930,clif->pMoveFromKafra,2,4);
+ packet(0x0949,clif->pUseSkillToId,2,4,6);
+ packet(0x094f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0951,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0955,clif->pFriendsListAdd,2);
+ packet(0x0956,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0957,clif->pDull/*,XXX*/);
+ packet(0x095a,clif->pDropItem,2,4);
+ packet(0x095c,clif->pWalkToXY,2);
+ packet(0x095e,clif->pChangeDir,2,4);
+ packet(0x0966,clif->pDull/*,XXX*/);
#endif
// 2014-09-24bRagexeRE, 2014-09-24cRagexeRE
#if PACKETVER == 20140924
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0815,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0864,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x086b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0886,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0894,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0898,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a5,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a7,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0918,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0925,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0926,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0928,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0934,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0949,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0952,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
+ packet(0x0366,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0367,clif->pPartyInvite2,2);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0815,clif->pWalkToXY,2);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x0864,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x086b,clif->pReqCloseBuyingStore,0);
+ packet(0x086d,clif->pTakeItem,2);
+ packet(0x086e,clif->pHomMenu,2,4);
+ packet(0x0886,clif->pGetCharNameRequest,2);
+ packet(0x088b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0894,clif->pActionRequest,2,6);
+ packet(0x0898,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089c,clif->pMoveToKafra,2,4);
+ packet(0x08a5,clif->pSolveCharName,2);
+ packet(0x08a7,clif->pUseSkillToId,2,4,6);
+ packet(0x0918,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0925,clif->pDull/*,XXX*/);
+ packet(0x0926,clif->pTickSend,2);
+ packet(0x0928,clif->pMoveFromKafra,2,4);
+ packet(0x092b,clif->pReqClickBuyingStore,2);
+ packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0934,clif->pChangeDir,2,4);
+ packet(0x0949,clif->pDropItem,2,4);
+ packet(0x0952,clif->pFriendsListAdd,2);
#endif
// 2014-10-01bRagexeRE, 2014-10-01cRagexeRE
#if PACKETVER == 20141001
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0885,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ad,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0937,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0939,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0952,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pDropItem,2,4);
+ packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pMoveFromKafra,2,4);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087c,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pPartyInvite2,2);
+ packet(0x0885,clif->pGetCharNameRequest,2);
+ packet(0x089c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089d,clif->pFriendsListAdd,2);
+ packet(0x08ad,clif->pChangeDir,2,4);
+ packet(0x091c,clif->pDull/*,XXX*/);
+ packet(0x092a,clif->pStoragePassword,0);
+ packet(0x0937,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0939,clif->pDull/*,XXX*/);
+ packet(0x093f,clif->pTakeItem,2);
+ packet(0x094b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0952,clif->pHomMenu,2,4);
#endif
// 2014-10-08bRagexeRE, 2014-10-08cRagexeRE
#if PACKETVER == 20141008
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0942,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0942,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-10-15bRagexeRE, 2014-10-16aRagexeRE
#if PACKETVER == 20141015 || \
PACKETVER == 20141016
- packet(0x022d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0922,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0936,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0967,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pMoveFromKafra,2,4);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pHomMenu,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0922,clif->pDull/*,XXX*/);
+ packet(0x0936,clif->pStoragePassword,0);
+ packet(0x094b,clif->pFriendsListAdd,2);
+ packet(0x0967,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-10-22aRagexeRE
#if PACKETVER == 20141022
- packet(0x023b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0878,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0896,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0899,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08aa,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08ab,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ad,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x094e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0955,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pStoragePassword,0);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0878,clif->pMoveToKafra,2,4);
+ packet(0x087d,clif->pDropItem,2,4);
+ packet(0x0896,clif->pPartyInvite2,2);
+ packet(0x0899,clif->pHomMenu,2,4);
+ packet(0x08aa,clif->pMoveFromKafra,2,4);
+ packet(0x08ab,clif->pDull/*,XXX*/);
+ packet(0x08ad,clif->pChangeDir,2,4);
+ packet(0x091a,clif->pFriendsListAdd,2);
+ packet(0x092b,clif->pDull/*,XXX*/);
+ packet(0x093b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pSearchStoreInfoNextPage,0);
+ packet(0x094e,clif->pTakeItem,2);
+ packet(0x0955,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-10-29aRagexeRE
#if PACKETVER == 20141029
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pWalkToXY,2);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pStoragePassword,0);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pActionRequest,2,6);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-11-05aRagexeRE, 2014-11-05bRagexeRE
#if PACKETVER == 20141105
- packet(0x022d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x035f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x085c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0863,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0864,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0865,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0871,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0874,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0875,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0877,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0879,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0887,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0892,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0898,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a0,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a7,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0944,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0948,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0950,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0957,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x095f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0968,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x022d,clif->pDull/*,XXX*/);
+ packet(0x035f,clif->pUseSkillToId,2,4,6);
+ packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x085c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0863,clif->pGetCharNameRequest,2);
+ packet(0x0864,clif->pTickSend,2);
+ packet(0x0865,clif->pFriendsListAdd,2);
+ packet(0x0871,clif->pStoragePassword,0);
+ packet(0x0874,clif->pDull/*,XXX*/);
+ packet(0x0875,clif->pActionRequest,2,6);
+ packet(0x0877,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0879,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0887,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0892,clif->pDropItem,2,4);
+ packet(0x0898,clif->pMoveFromKafra,2,4);
+ packet(0x08a0,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pChangeDir,2,4);
+ packet(0x08a7,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pMoveToKafra,2,4);
+ packet(0x091d,clif->pSolveCharName,2);
+ packet(0x091e,clif->pReqClickBuyingStore,2);
+ packet(0x092b,clif->pTakeItem,2);
+ packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0944,clif->pHomMenu,2,4);
+ packet(0x0948,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0950,clif->pPartyInvite2,2);
+ packet(0x0957,clif->pWalkToXY,2);
+ packet(0x095f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0968,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2014-11-12aRagexeRE
#if PACKETVER == 20141112
- packet(0x0362,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0438,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x07e4,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0863,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0871,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0885,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0886,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0887,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08a0,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a1,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08ab,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0919,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0926,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0929,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0943,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0955,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0960,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0962,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x0362,clif->pFriendsListAdd,2);
+ packet(0x0438,clif->pSolveCharName,2);
+ packet(0x07e4,clif->pReqCloseBuyingStore,0);
+ packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0838,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pMoveToKafra,2,4);
+ packet(0x085f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0863,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pGetCharNameRequest,2);
+ packet(0x086c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0871,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0885,clif->pChangeDir,2,4);
+ packet(0x0886,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0887,clif->pPartyInvite2,2);
+ packet(0x088d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08a0,clif->pWalkToXY,2);
+ packet(0x08a1,clif->pReqClickBuyingStore,2);
+ packet(0x08ab,clif->pStoragePassword,0);
+ packet(0x0919,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0926,clif->pHomMenu,2,4);
+ packet(0x0929,clif->pActionRequest,2,6);
+ packet(0x0943,clif->pDropItem,2,4);
+ packet(0x094b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094c,clif->pDull/*,XXX*/);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0955,clif->pMoveFromKafra,2,4);
+ packet(0x095d,clif->pTickSend,2);
+ packet(0x0960,clif->pTakeItem,2);
+ packet(0x0962,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2014-11-19bRagexeRE
#if PACKETVER == 20141119
- packet(0x0202,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0861,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0865,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0866,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0872,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0873,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0875,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x087c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0887,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0888,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0895,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a8,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0918,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0920,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0921,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0933,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0938,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0940,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0942,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0948,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0963,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x0202,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085a,clif->pReqClickBuyingStore,2);
+ packet(0x0861,clif->pFriendsListAdd,2);
+ packet(0x0865,clif->pPartyInvite2,2);
+ packet(0x0866,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0872,clif->pActionRequest,2,6);
+ packet(0x0873,clif->pUseSkillToId,2,4,6);
+ packet(0x0875,clif->pGetCharNameRequest,2);
+ packet(0x087c,clif->pSolveCharName,2);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x0887,clif->pReqCloseBuyingStore,0);
+ packet(0x0888,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x088d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0895,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a8,clif->pTakeItem,2);
+ packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0918,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0920,clif->pChangeDir,2,4);
+ packet(0x0921,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x092f,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pStoragePassword,0);
+ packet(0x0938,clif->pTickSend,2);
+ packet(0x0940,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x0942,clif->pHomMenu,2,4);
+ packet(0x0948,clif->pWalkToXY,2);
+ packet(0x094c,clif->pDropItem,2,4);
+ packet(0x0963,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2014-11-26aRagexeRE, 2014-11-26bRagexeRE, 2014-11-26cRagexeRE, 2014-11-26dRagexeRE, 2014-11-26eRagexeRE
#if PACKETVER == 20141126
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0871,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0896,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ad,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0920,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0942,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pDull/*,XXX*/);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0871,clif->pMoveFromKafra,2,4);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a4,clif->pChangeDir,2,4);
+ packet(0x08ad,clif->pStoragePassword,0);
+ packet(0x0920,clif->pDropItem,2,4);
+ packet(0x0942,clif->pFriendsListAdd,2);
+ packet(0x095a,clif->pTakeItem,2);
+ packet(0x095b,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-12-03aRagexeRE
#if PACKETVER == 20141203
- packet(0x0202,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0281,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0367,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0368,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0861,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x086e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0880,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0889,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0898,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a5,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08aa,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0917,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0928,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x092a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0936,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0957,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0962,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x0202,clif->pSolveCharName,2);
+ packet(0x0281,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0367,clif->pGetCharNameRequest,2);
+ packet(0x0368,clif->pDull/*,XXX*/);
+ packet(0x0802,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0861,clif->pMoveToKafra,2,4);
+ packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086d,clif->pMoveFromKafra,2,4);
+ packet(0x086e,clif->pTakeItem,2);
+ packet(0x087b,clif->pWalkToXY,2);
+ packet(0x087e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0880,clif->pChangeDir,2,4);
+ packet(0x0889,clif->pFriendsListAdd,2);
+ packet(0x0898,clif->pStoragePassword,0);
+ packet(0x089c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a5,clif->pActionRequest,2,6);
+ packet(0x08aa,clif->pDropItem,2,4);
+ packet(0x0917,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091d,clif->pPartyInvite2,2);
+ packet(0x0928,clif->pTickSend,2);
+ packet(0x092a,clif->pDull/*,XXX*/);
+ packet(0x0936,clif->pHomMenu,2,4);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0957,clif->pReqCloseBuyingStore,0);
+ packet(0x095c,clif->pReqClickBuyingStore,2);
+ packet(0x0962,clif->pUseSkillToId,2,4,6);
#endif
// 2014-12-10cRagexeRE
#if PACKETVER == 20141210
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0885,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08ac,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0917,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0927,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x092b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0947,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0954,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0955,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0958,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0961,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0963,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0967,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pHomMenu,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pChangeDir,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087b,clif->pTakeItem,2);
+ packet(0x0885,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08ac,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0917,clif->pPartyInvite2,2);
+ packet(0x0927,clif->pDull/*,XXX*/);
+ packet(0x092b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0947,clif->pDull/*,XXX*/);
+ packet(0x0954,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0955,clif->pMoveFromKafra,2,4);
+ packet(0x0958,clif->pDropItem,2,4);
+ packet(0x0961,clif->pFriendsListAdd,2);
+ packet(0x0963,clif->pStoragePassword,0);
+ packet(0x0967,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2014-12-17aRagexeRE
#if PACKETVER == 20141217
- packet(0x0360,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0860,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0875,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0878,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0879,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0883,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0889,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x088e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a1,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a2,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a8,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08ab,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ac,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0919,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0924,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0930,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0932,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0933,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0936,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0939,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0940,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0944,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0945,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0948,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0960,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x0360,clif->pMoveToKafra,2,4);
+ packet(0x085b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0860,clif->pStoragePassword,0);
+ packet(0x086c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0875,clif->pMoveFromKafra,2,4);
+ packet(0x0878,clif->pWalkToXY,2);
+ packet(0x0879,clif->pHomMenu,2,4);
+ packet(0x0883,clif->pTakeItem,2);
+ packet(0x0889,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x088e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089f,clif->pDropItem,2,4);
+ packet(0x08a1,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a2,clif->pDull/*,XXX*/);
+ packet(0x08a8,clif->pPartyInvite2,2);
+ packet(0x08ab,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ac,clif->pTickSend,2);
+ packet(0x0919,clif->pChangeDir,2,4);
+ packet(0x091f,clif->pUseSkillToId,2,4,6);
+ packet(0x0924,clif->pActionRequest,2,6);
+ packet(0x0930,clif->pReqCloseBuyingStore,0);
+ packet(0x0932,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0933,clif->pFriendsListAdd,2);
+ packet(0x0936,clif->pGetCharNameRequest,2);
+ packet(0x0939,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0940,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0944,clif->pReqClickBuyingStore,2);
+ packet(0x0945,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0948,clif->pSolveCharName,2);
+ packet(0x0960,clif->pDull/*,XXX*/);
#endif
// 2014-12-23cRagexeRE
#if PACKETVER == 20141223
- packet(0x0361,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0438,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0835,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0865,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0870,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x089b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a3,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08ac,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0930,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0932,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0945,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0946,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0949,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x094f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0950,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0953,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0956,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x0361,clif->pMoveToKafra,2,4);
+ packet(0x0438,clif->pFriendsListAdd,2);
+ packet(0x0835,clif->pItemListWindowSelected,2,4,8);
+ packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085e,clif->pReqCloseBuyingStore,0);
+ packet(0x0865,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x086c,clif->pReqClickBuyingStore,2);
+ packet(0x0870,clif->pChangeDir,2,4);
+ packet(0x087a,clif->pTakeItem,2);
+ packet(0x087b,clif->pDull/*,XXX*/);
+ packet(0x089a,clif->pWalkToXY,2);
+ packet(0x089b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a3,clif->pPartyInvite2,2);
+ packet(0x08a4,clif->pStoragePassword,0);
+ packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08ac,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0930,clif->pDropItem,2,4);
+ packet(0x0932,clif->pDull/*,XXX*/);
+ packet(0x093a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0945,clif->pTickSend,2);
+ packet(0x0946,clif->pGetCharNameRequest,2);
+ packet(0x0949,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x094f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0950,clif->pSolveCharName,2);
+ packet(0x0953,clif->pMoveFromKafra,2,4);
+ packet(0x0956,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095b,clif->pUseSkillToId,2,4,6);
+ packet(0x095f,clif->pActionRequest,2,6);
#endif
// 2014-12-31aRagexeRE
#if PACKETVER == 20141231
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086d,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-01-07aRagexeRE
#if PACKETVER == 20150107
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0895,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0943,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0947,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087c,clif->pFriendsListAdd,2);
+ packet(0x0895,clif->pStoragePassword,0);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0943,clif->pChangeDir,2,4);
+ packet(0x0947,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-01-14aRagexeRE
#if PACKETVER == 20150114
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0868,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0899,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0946,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0955,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0957,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pUseSkillToId,2,4,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0868,clif->pFriendsListAdd,2);
+ packet(0x0899,clif->pHomMenu,2,4);
+ packet(0x0946,clif->pStoragePassword,0);
+ packet(0x0955,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-01-21aRagexeRE, 2015-01-21bRagexeRE
#if PACKETVER == 20150121
- packet(0x0281,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ab,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0918,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0919,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0955,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0959,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0963,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0967,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087c,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pFriendsListAdd,2);
+ packet(0x089d,clif->pHomMenu,2,4);
+ packet(0x089e,clif->pChangeDir,2,4);
+ packet(0x08ab,clif->pStoragePassword,0);
+ packet(0x0918,clif->pDull/*,XXX*/);
+ packet(0x0919,clif->pDropItem,2,4);
+ packet(0x091d,clif->pTakeItem,2);
+ packet(0x0955,clif->pMoveToKafra,2,4);
+ packet(0x0959,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0963,clif->pMoveFromKafra,2,4);
+ packet(0x0967,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-01-28aRagexeRE
#if PACKETVER == 20150128
- packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x023b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0368,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0838,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0864,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0870,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0874,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0875,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x087d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0888,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ab,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0929,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0938,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0944,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0963,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0968,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x023b,clif->pChangeDir,2,4);
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0368,clif->pDull/*,XXX*/);
+ packet(0x0838,clif->pActionRequest,2,6);
+ packet(0x085a,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0864,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086d,clif->pMoveToKafra,2,4);
+ packet(0x0870,clif->pWalkToXY,2);
+ packet(0x0874,clif->pGetCharNameRequest,2);
+ packet(0x0875,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x087d,clif->pSolveCharName,2);
+ packet(0x0888,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ab,clif->pTakeItem,2);
+ packet(0x091f,clif->pTickSend,2);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x0929,clif->pStoragePassword,0);
+ packet(0x092d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0938,clif->pDull/*,XXX*/);
+ packet(0x093a,clif->pUseSkillToId,2,4,6);
+ packet(0x0944,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094d,clif->pReqCloseBuyingStore,0);
+ packet(0x094e,clif->pMoveFromKafra,2,4);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0963,clif->pFriendsListAdd,2);
+ packet(0x0968,clif->pDropItem,2,4);
#endif
// 2015-02-04cRagexeRE
#if PACKETVER == 20150204
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0966,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0966,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-02-11aRagexeRE
#if PACKETVER == 20150211
- packet(0x023b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0368,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0369,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0436,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0437,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x07e4,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0817,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0819,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0835,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0862,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0863,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0873,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x087f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0882,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0883,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0885,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0886,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x089c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a0,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08aa,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0919,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0920,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0951,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0957,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0958,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x023b,clif->pDull/*,XXX*/);
+ packet(0x0368,clif->pHomMenu,2,4);
+ packet(0x0369,clif->pChangeDir,2,4);
+ packet(0x0436,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0437,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x07e4,clif->pDropItem,2,4);
+ packet(0x0817,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0819,clif->pReqCloseBuyingStore,0);
+ packet(0x0835,clif->pDull/*,XXX*/);
+ packet(0x0862,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0863,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pTakeItem,2);
+ packet(0x0873,clif->pWalkToXY,2);
+ packet(0x087b,clif->pGetCharNameRequest,2);
+ packet(0x087f,clif->pStoragePassword,0);
+ packet(0x0882,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0883,clif->pMoveFromKafra,2,4);
+ packet(0x0885,clif->pTickSend,2);
+ packet(0x0886,clif->pReqClickBuyingStore,2);
+ packet(0x089c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a0,clif->pFriendsListAdd,2);
+ packet(0x08a4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08aa,clif->pActionRequest,2,6);
+ packet(0x0919,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0920,clif->pSolveCharName,2);
+ packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0951,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0957,clif->pPartyInvite2,2);
+ packet(0x0958,clif->pMoveToKafra,2,4);
#endif
// 2015-02-17aRagexeRE
#if PACKETVER == 20150217
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085b,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-02-25aRagexeRE, 2015-02-25bRagexeRE, 2015-02-25cRagexeRE, 2015-02-25dRagexeRE, 2015-02-25eRagexeRE, 2015-02-26aRagexeRE
#if PACKETVER == 20150225 || \
PACKETVER == 20150226
- packet(0x02c4,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0362,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0896,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0948,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0952,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0955,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x02c4,clif->pReqClickBuyingStore,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pPartyInvite2,2);
+ packet(0x0362,clif->pReqCloseBuyingStore,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pGetCharNameRequest,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pTakeItem,2);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089b,clif->pDull/*,XXX*/);
+ packet(0x089c,clif->pMoveToKafra,2,4);
+ packet(0x08a4,clif->pStoragePassword,0);
+ packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x0948,clif->pDropItem,2,4);
+ packet(0x094f,clif->pHomMenu,2,4);
+ packet(0x0952,clif->pMoveFromKafra,2,4);
+ packet(0x0955,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2015-03-04aRagexeRE, 2015-03-04bRagexeRE
#if PACKETVER == 20150304
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x086d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0879,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0892,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0947,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0960,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0961,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pTakeItem,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pMoveFromKafra,2,4);
+ packet(0x086d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0879,clif->pChangeDir,2,4);
+ packet(0x087e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0892,clif->pStoragePassword,0);
+ packet(0x089a,clif->pPartyInvite2,2);
+ packet(0x093a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0947,clif->pMoveToKafra,2,4);
+ packet(0x095d,clif->pDull/*,XXX*/);
+ packet(0x0960,clif->pFriendsListAdd,2);
+ packet(0x0961,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-03-11aRagexeRE, 2015-03-11bRagexeRE
#if PACKETVER == 20150311
- packet(0x023b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0360,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0438,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0838,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x087b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0883,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0886,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0888,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0896,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a1,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a3,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a5,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a6,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0928,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x092e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0943,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0946,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0957,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0958,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0963,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0964,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x023b,clif->pHomMenu,2,4);
+ packet(0x0360,clif->pReqCloseBuyingStore,0);
+ packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0438,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0838,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086a,clif->pGetCharNameRequest,2);
+ packet(0x086c,clif->pStoragePassword,0);
+ packet(0x087b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0883,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0886,clif->pWalkToXY,2);
+ packet(0x0888,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0896,clif->pActionRequest,2,6);
+ packet(0x08a1,clif->pUseSkillToId,2,4,6);
+ packet(0x08a3,clif->pTakeItem,2);
+ packet(0x08a5,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a6,clif->pFriendsListAdd,2);
+ packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0928,clif->pChangeDir,2,4);
+ packet(0x092a,clif->pDull/*,XXX*/);
+ packet(0x092e,clif->pMoveFromKafra,2,4);
+ packet(0x093b,clif->pPartyInvite2,2);
+ packet(0x0943,clif->pSolveCharName,2);
+ packet(0x0946,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pReqClickBuyingStore,2);
+ packet(0x0958,clif->pTickSend,2);
+ packet(0x095b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0963,clif->pDropItem,2,4);
+ packet(0x0964,clif->pMoveToKafra,2,4);
#endif
// 2015-03-18aRagexeRE, 2015-03-18bRagexeRE, 2015-03-18cRagexeRE
#if PACKETVER == 20150318
- packet(0x0202,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x023b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x07e4,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0802,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0862,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0873,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0885,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0889,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x088c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x089c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a4,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x091d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0920,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0927,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0928,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0936,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0937,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0938,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0951,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0958,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0959,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0960,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0202,clif->pDull/*,XXX*/);
+ packet(0x023b,clif->pTickSend,2);
+ packet(0x0281,clif->pDull/*,XXX*/);
+ packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x07e4,clif->pFriendsListAdd,2);
+ packet(0x0802,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0862,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x0873,clif->pStoragePassword,0);
+ packet(0x0885,clif->pReqCloseBuyingStore,0);
+ packet(0x0889,clif->pActionRequest,2,6);
+ packet(0x088c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x089c,clif->pMoveToKafra,2,4);
+ packet(0x08a4,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x091d,clif->pMoveFromKafra,2,4);
+ packet(0x0920,clif->pDropItem,2,4);
+ packet(0x0927,clif->pChangeDir,2,4);
+ packet(0x0928,clif->pTakeItem,2);
+ packet(0x0936,clif->pUseSkillToId,2,4,6);
+ packet(0x0937,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0938,clif->pPartyInvite2,2);
+ packet(0x093a,clif->pWalkToXY,2);
+ packet(0x093c,clif->pSolveCharName,2);
+ packet(0x094c,clif->pHomMenu,2,4);
+ packet(0x0951,clif->pGetCharNameRequest,2);
+ packet(0x0958,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0959,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0960,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2015-03-25bRagexeRE, 2015-03-25cRagexeRE
#if PACKETVER == 20150325
- packet(0x0202,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0365,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0438,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0819,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0883,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0885,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0891,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0893,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0897,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0899,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a1,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a7,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0919,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0931,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0932,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0938,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0947,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0950,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0954,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0969,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
+ packet(0x0202,clif->pPartyInvite2,2);
+ packet(0x0363,clif->pDropItem,2,4);
+ packet(0x0365,clif->pUseSkillToId,2,4,6);
+ packet(0x0438,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0819,clif->pReqClickBuyingStore,2);
+ packet(0x085d,clif->pSolveCharName,2);
+ packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087c,clif->pMoveToKafra,2,4);
+ packet(0x087e,clif->pChangeDir,2,4);
+ packet(0x0883,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0885,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0891,clif->pGetCharNameRequest,2);
+ packet(0x0893,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0899,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a1,clif->pActionRequest,2,6);
+ packet(0x08a7,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0919,clif->pStoragePassword,0);
+ packet(0x092c,clif->pTakeItem,2);
+ packet(0x0931,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0932,clif->pWalkToXY,2);
+ packet(0x0938,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pFriendsListAdd,2);
+ packet(0x0947,clif->pReqCloseBuyingStore,0);
+ packet(0x094a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0950,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0954,clif->pTickSend,2);
+ packet(0x0969,clif->pMoveFromKafra,2,4);
#endif
// 2015-04-01bRagexeRE
#if PACKETVER == 20150401
- packet(0x0362,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0367,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0437,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x083c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0875,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0895,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0898,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a5,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0924,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0938,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0939,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x093b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0946,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0949,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0953,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0964,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x0362,clif->pActionRequest,2,6);
+ packet(0x0367,clif->pGetCharNameRequest,2);
+ packet(0x0437,clif->pReqClickBuyingStore,2);
+ packet(0x083c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086f,clif->pWalkToXY,2);
+ packet(0x0875,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087e,clif->pDull/*,XXX*/);
+ packet(0x088c,clif->pDropItem,2,4);
+ packet(0x088f,clif->pTickSend,2);
+ packet(0x0895,clif->pMoveFromKafra,2,4);
+ packet(0x0898,clif->pHomMenu,2,4);
+ packet(0x089c,clif->pStoragePassword,0);
+ packet(0x08a5,clif->pMoveToKafra,2,4);
+ packet(0x091b,clif->pPartyInvite2,2);
+ packet(0x091c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0924,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0938,clif->pReqCloseBuyingStore,0);
+ packet(0x0939,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x093b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0946,clif->pDull/*,XXX*/);
+ packet(0x0949,clif->pTakeItem,2);
+ packet(0x094b,clif->pUseSkillToId,2,4,6);
+ packet(0x0953,clif->pFriendsListAdd,2);
+ packet(0x095f,clif->pSolveCharName,2);
+ packet(0x0964,clif->pChangeDir,2,4);
#endif
// 2015-04-08aRagexeRE
#if PACKETVER == 20150408
- packet(0x0819,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x085a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0865,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0868,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x086b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0878,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x087f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0888,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0891,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0898,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a2,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a4,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0922,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0946,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0957,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0959,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0963,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x0819,clif->pMoveFromKafra,2,4);
+ packet(0x085a,clif->pTickSend,2);
+ packet(0x085c,clif->pUseSkillToId,2,4,6);
+ packet(0x085e,clif->pHomMenu,2,4);
+ packet(0x0865,clif->pActionRequest,2,6);
+ packet(0x0868,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x086b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0878,clif->pPartyInvite2,2);
+ packet(0x087e,clif->pGetCharNameRequest,2);
+ packet(0x087f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0888,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pStoragePassword,0);
+ packet(0x0891,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0898,clif->pDropItem,2,4);
+ packet(0x089c,clif->pWalkToXY,2);
+ packet(0x08a2,clif->pSolveCharName,2);
+ packet(0x08a4,clif->pFriendsListAdd,2);
+ packet(0x091b,clif->pDull/*,XXX*/);
+ packet(0x091e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0922,clif->pChangeDir,2,4);
+ packet(0x092a,clif->pDull/*,XXX*/);
+ packet(0x0946,clif->pReqCloseBuyingStore,0);
+ packet(0x094f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0955,clif->pReqClickBuyingStore,2);
+ packet(0x0957,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0959,clif->pTakeItem,2);
+ packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0963,clif->pSearchStoreInfoNextPage,0);
#endif
// 2015-04-15aRagexeRE
#if PACKETVER == 20150415
- packet(0x0361,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0364,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0366,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0368,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0802,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0817,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0835,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0867,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0868,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0869,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0880,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0891,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0898,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a0,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0922,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x093c,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0941,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0946,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0953,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0960,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0361,clif->pMoveToKafra,2,4);
+ packet(0x0364,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0366,clif->pWalkToXY,2);
+ packet(0x0368,clif->pReqClickBuyingStore,2);
+ packet(0x0802,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0817,clif->pTakeItem,2);
+ packet(0x0835,clif->pDropItem,2,4);
+ packet(0x085e,clif->pDull/*,XXX*/);
+ packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0867,clif->pPartyInvite2,2);
+ packet(0x0868,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0869,clif->pHomMenu,2,4);
+ packet(0x086c,clif->pActionRequest,2,6);
+ packet(0x0880,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x0891,clif->pGetCharNameRequest,2);
+ packet(0x0898,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a0,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0922,clif->pMoveFromKafra,2,4);
+ packet(0x092e,clif->pSolveCharName,2);
+ packet(0x093c,clif->pTickSend,2);
+ packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0941,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0946,clif->pReqCloseBuyingStore,0);
+ packet(0x094d,clif->pChangeDir,2,4);
+ packet(0x0953,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095c,clif->pFriendsListAdd,2);
+ packet(0x0960,clif->pStoragePassword,0);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2015-04-22aRagexeRE
#if PACKETVER == 20150422
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0955,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0955,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-04-29aRagexeRE
#if PACKETVER == 20150429
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0886,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0894,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0899,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a8,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ad,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0943,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pChangeDir,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pStoragePassword,0);
+ packet(0x086a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0886,clif->pPartyInvite2,2);
+ packet(0x088f,clif->pHomMenu,2,4);
+ packet(0x0894,clif->pDropItem,2,4);
+ packet(0x0899,clif->pMoveToKafra,2,4);
+ packet(0x089f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08a8,clif->pDull/*,XXX*/);
+ packet(0x08ad,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x093d,clif->pFriendsListAdd,2);
+ packet(0x0943,clif->pTakeItem,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-05-07bRagexeRE
#if PACKETVER == 20150507
- packet(0x023b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0864,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0887,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0889,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0924,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x093b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0941,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0942,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0953,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0955,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0958,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pHomMenu,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pReqCloseBuyingStore,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pTakeItem,2);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pMoveToKafra,2,4);
+ packet(0x0864,clif->pPartyInvite2,2);
+ packet(0x0887,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0924,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x093b,clif->pChangeDir,2,4);
+ packet(0x0941,clif->pMoveFromKafra,2,4);
+ packet(0x0942,clif->pDull/*,XXX*/);
+ packet(0x0953,clif->pStoragePassword,0);
+ packet(0x0955,clif->pDropItem,2,4);
+ packet(0x0958,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-05-13aRagexeRE
#if PACKETVER == 20150513
- packet(0x022d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x02c4,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0864,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0883,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a8,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0923,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0924,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0927,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0960,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pReqCloseBuyingStore,0);
+ packet(0x02c4,clif->pDull/*,XXX*/);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pHomMenu,2,4);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0864,clif->pMoveFromKafra,2,4);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x0883,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pDropItem,2,4);
+ packet(0x08a8,clif->pFriendsListAdd,2);
+ packet(0x0923,clif->pStoragePassword,0);
+ packet(0x0924,clif->pChangeDir,2,4);
+ packet(0x0927,clif->pDull/*,XXX*/);
+ packet(0x094a,clif->pPartyInvite2,2);
+ packet(0x0958,clif->pTakeItem,2);
+ packet(0x0960,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-05-20aRagexeRE
#if PACKETVER == 20150520
- packet(0x0202,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0865,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0868,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0880,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0882,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a2,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08ad,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0924,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0931,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0936,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x093d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0940,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0945,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0960,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0961,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x0202,clif->pTickSend,2);
+ packet(0x0361,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pReqCloseBuyingStore,0);
+ packet(0x085e,clif->pReqClickBuyingStore,2);
+ packet(0x0865,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0868,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0880,clif->pPartyInvite2,2);
+ packet(0x0882,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089c,clif->pStoragePassword,0);
+ packet(0x089e,clif->pDropItem,2,4);
+ packet(0x08a2,clif->pGetCharNameRequest,2);
+ packet(0x08ad,clif->pChangeDir,2,4);
+ packet(0x091c,clif->pTakeItem,2);
+ packet(0x091d,clif->pActionRequest,2,6);
+ packet(0x0924,clif->pMoveFromKafra,2,4);
+ packet(0x092b,clif->pWalkToXY,2);
+ packet(0x0931,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0936,clif->pUseSkillToId,2,4,6);
+ packet(0x093d,clif->pFriendsListAdd,2);
+ packet(0x0940,clif->pDull/*,XXX*/);
+ packet(0x0945,clif->pSolveCharName,2);
+ packet(0x094e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095b,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0960,clif->pDull/*,XXX*/);
+ packet(0x0961,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2015-05-27aRagexeRE
#if PACKETVER == 20150527
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x083c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0940,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pUseSkillToId,2,4,6);
+ packet(0x083c,clif->pStoragePassword,0);
+ packet(0x0940,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-06-03bRagexeRE
#if PACKETVER == 20150603
- packet(0x0361,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0437,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0811,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0819,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0860,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0864,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0867,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0873,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0877,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0881,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a1,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ad,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0922,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0956,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0960,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0969,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x096a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
+ packet(0x0361,clif->pPartyInvite2,2);
+ packet(0x0437,clif->pDull/*,XXX*/);
+ packet(0x0811,clif->pChangeDir,2,4);
+ packet(0x0819,clif->pReqClickBuyingStore,2);
+ packet(0x0860,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0864,clif->pFriendsListAdd,2);
+ packet(0x0867,clif->pMoveToKafra,2,4);
+ packet(0x086a,clif->pMoveFromKafra,2,4);
+ packet(0x0873,clif->pActionRequest,2,6);
+ packet(0x0877,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0881,clif->pGetCharNameRequest,2);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pDropItem,2,4);
+ packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089e,clif->pTickSend,2);
+ packet(0x08a1,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ad,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091b,clif->pSolveCharName,2);
+ packet(0x0922,clif->pStoragePassword,0);
+ packet(0x092d,clif->pTakeItem,2);
+ packet(0x093b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0955,clif->pHomMenu,2,4);
+ packet(0x0956,clif->pReqCloseBuyingStore,0);
+ packet(0x0960,clif->pUseSkillToId,2,4,6);
+ packet(0x0969,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x096a,clif->pWalkToXY,2);
#endif
// 2015-06-10aRagexeRE
#if PACKETVER == 20150610
- packet(0x022d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0438,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07e4,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0870,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0872,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0877,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0884,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0885,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0888,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x088d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0897,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a0,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08ac,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0925,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0932,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0940,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0946,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0949,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0957,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0964,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x022d,clif->pReqCloseBuyingStore,0);
+ packet(0x0438,clif->pItemListWindowSelected,2,4,8);
+ packet(0x07e4,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pDull/*,XXX*/);
+ packet(0x0870,clif->pPartyInvite2,2);
+ packet(0x0872,clif->pSolveCharName,2);
+ packet(0x0877,clif->pReqClickBuyingStore,2);
+ packet(0x087e,clif->pGetCharNameRequest,2);
+ packet(0x0884,clif->pMoveFromKafra,2,4);
+ packet(0x0885,clif->pHomMenu,2,4);
+ packet(0x0888,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088c,clif->pMoveToKafra,2,4);
+ packet(0x088d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x088f,clif->pWalkToXY,2);
+ packet(0x0897,clif->pFriendsListAdd,2);
+ packet(0x08a0,clif->pStoragePassword,0);
+ packet(0x08ac,clif->pDropItem,2,4);
+ packet(0x0925,clif->pTakeItem,2);
+ packet(0x092b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x0932,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093e,clif->pActionRequest,2,6);
+ packet(0x0940,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0946,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0949,clif->pUseSkillToId,2,4,6);
+ packet(0x0957,clif->pTickSend,2);
+ packet(0x095d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0964,clif->pChangeDir,2,4);
#endif
// 2015-06-17aRagexeRE, 2015-06-18aRagexeRE
#if PACKETVER == 20150617 || \
PACKETVER == 20150618
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0362,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0365,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0811,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x086a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0870,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0886,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0894,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pTakeItem,2);
+ packet(0x0362,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pStoragePassword,0);
+ packet(0x0365,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0811,clif->pDull/*,XXX*/);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pMoveFromKafra,2,4);
+ packet(0x086a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086b,clif->pChangeDir,2,4);
+ packet(0x0870,clif->pPartyInvite2,2);
+ packet(0x087a,clif->pMoveToKafra,2,4);
+ packet(0x0886,clif->pHomMenu,2,4);
+ packet(0x0894,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x094e,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-06-24aRagexeRE
#if PACKETVER == 20150624
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0365,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0940,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0966,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0365,clif->pHomMenu,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pStoragePassword,0);
+ packet(0x0940,clif->pMoveFromKafra,2,4);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x0966,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-07-01bRagexeRE
#if PACKETVER == 20150701
- packet(0x023b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x07e4,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0802,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x087d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x087e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0883,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0893,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a0,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a4,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a5,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a6,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08ad,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0919,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0923,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0928,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0946,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0954,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0956,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0958,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x095f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0960,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0968,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x023b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pSearchStoreInfoNextPage,0);
+ packet(0x07e4,clif->pMoveFromKafra,2,4);
+ packet(0x0802,clif->pGetCharNameRequest,2);
+ packet(0x086d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x087d,clif->pTickSend,2);
+ packet(0x087e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0883,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088e,clif->pReqCloseBuyingStore,0);
+ packet(0x0893,clif->pDull/*,XXX*/);
+ packet(0x08a0,clif->pDropItem,2,4);
+ packet(0x08a4,clif->pReqClickBuyingStore,2);
+ packet(0x08a5,clif->pPartyInvite2,2);
+ packet(0x08a6,clif->pUseSkillToId,2,4,6);
+ packet(0x08ad,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0919,clif->pStoragePassword,0);
+ packet(0x0923,clif->pDull/*,XXX*/);
+ packet(0x0928,clif->pMoveToKafra,2,4);
+ packet(0x092c,clif->pWalkToXY,2);
+ packet(0x093e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0946,clif->pTakeItem,2);
+ packet(0x094e,clif->pSolveCharName,2);
+ packet(0x0954,clif->pHomMenu,2,4);
+ packet(0x0956,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0958,clif->pActionRequest,2,6);
+ packet(0x095f,clif->pFriendsListAdd,2);
+ packet(0x0960,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0968,clif->pChangeDir,2,4);
#endif
// 2015-07-08bRagexeRE, 2015-07-08cRagexeRE, 2015-07-08dRagexeRE
#if PACKETVER == 20150708
- packet(0x022d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0368,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0872,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0884,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x089d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a5,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ad,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x092a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSolveCharName,2);
+ packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pPartyInvite2,2);
+ packet(0x0368,clif->pHomMenu,2,4);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085e,clif->pMoveToKafra,2,4);
+ packet(0x0872,clif->pTakeItem,2);
+ packet(0x087f,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pWalkToXY,2);
+ packet(0x089d,clif->pChangeDir,2,4);
+ packet(0x08a5,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ad,clif->pStoragePassword,0);
+ packet(0x091f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092a,clif->pMoveFromKafra,2,4);
+ packet(0x093c,clif->pFriendsListAdd,2);
+ packet(0x095b,clif->pDropItem,2,4);
+ packet(0x0962,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-07-15aRagexeRE
#if PACKETVER == 20150715
- packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0362,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0364,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0436,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0437,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0438,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x083c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0873,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0879,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x087f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0886,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0895,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0897,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0899,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x089a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08ac,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0917,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0944,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0950,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0956,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0961,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0965,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0362,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0364,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0436,clif->pSolveCharName,2);
+ packet(0x0437,clif->pUseSkillToId,2,4,6);
+ packet(0x0438,clif->pWalkToXY,2);
+ packet(0x0835,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x083c,clif->pActionRequest,2,6);
+ packet(0x085c,clif->pGetCharNameRequest,2);
+ packet(0x086f,clif->pMoveFromKafra,2,4);
+ packet(0x0873,clif->pTickSend,2);
+ packet(0x0879,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087c,clif->pDropItem,2,4);
+ packet(0x087f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0886,clif->pDull/*,XXX*/);
+ packet(0x0895,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0896,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0897,clif->pPartyInvite2,2);
+ packet(0x0899,clif->pReqCloseBuyingStore,0);
+ packet(0x089a,clif->pTakeItem,2);
+ packet(0x08a4,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pChangeDir,2,4);
+ packet(0x0917,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093e,clif->pHomMenu,2,4);
+ packet(0x0944,clif->pFriendsListAdd,2);
+ packet(0x0950,clif->pReqClickBuyingStore,2);
+ packet(0x0956,clif->pStoragePassword,0);
+ packet(0x0961,clif->pMoveToKafra,2,4);
+ packet(0x0965,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2015-07-22bRagexeRE
#if PACKETVER == 20150722
- packet(0x023b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0281,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0360,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0361,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0368,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0811,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0869,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0878,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x087d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0880,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0884,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0899,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a8,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0919,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0921,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0925,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x092e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x094c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0951,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0958,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x023b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0281,clif->pGetCharNameRequest,2);
+ packet(0x0360,clif->pActionRequest,2,6);
+ packet(0x0361,clif->pDropItem,2,4);
+ packet(0x0368,clif->pPartyInvite2,2);
+ packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0811,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0815,clif->pReqCloseBuyingStore,0);
+ packet(0x0817,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0869,clif->pTakeItem,2);
+ packet(0x0878,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x087d,clif->pWalkToXY,2);
+ packet(0x087e,clif->pSolveCharName,2);
+ packet(0x0880,clif->pReqClickBuyingStore,2);
+ packet(0x0884,clif->pHomMenu,2,4);
+ packet(0x088d,clif->pTickSend,2);
+ packet(0x0899,clif->pMoveFromKafra,2,4);
+ packet(0x08a8,clif->pChangeDir,2,4);
+ packet(0x0919,clif->pDull/*,XXX*/);
+ packet(0x0921,clif->pMoveToKafra,2,4);
+ packet(0x0925,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x092e,clif->pFriendsListAdd,2);
+ packet(0x093c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x094c,clif->pUseSkillToId,2,4,6);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0951,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0958,clif->pStoragePassword,0);
#endif
// 2015-07-29aRagexeRE
#if PACKETVER == 20150729
- packet(0x0437,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0438,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x085b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0860,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0870,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0880,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0881,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0886,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a3,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ac,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08ad,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0920,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x092f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x093a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0955,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0961,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x0437,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0438,clif->pHomMenu,2,4);
+ packet(0x085b,clif->pDull/*,XXX*/);
+ packet(0x0860,clif->pTakeItem,2);
+ packet(0x086c,clif->pMoveToKafra,2,4);
+ packet(0x086d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086e,clif->pWalkToXY,2);
+ packet(0x086f,clif->pMoveFromKafra,2,4);
+ packet(0x0870,clif->pGetCharNameRequest,2);
+ packet(0x0880,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0881,clif->pActionRequest,2,6);
+ packet(0x0886,clif->pSolveCharName,2);
+ packet(0x089a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089b,clif->pFriendsListAdd,2);
+ packet(0x08a3,clif->pDull/*,XXX*/);
+ packet(0x08a4,clif->pChangeDir,2,4);
+ packet(0x08ac,clif->pPartyInvite2,2);
+ packet(0x08ad,clif->pReqClickBuyingStore,2);
+ packet(0x0920,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x092f,clif->pUseSkillToId,2,4,6);
+ packet(0x093a,clif->pTickSend,2);
+ packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x094f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0955,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0961,clif->pStoragePassword,0);
+ packet(0x096a,clif->pReqCloseBuyingStore,0);
#endif
// 2015-08-05dRagexeRE
#if PACKETVER == 20150805
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x088a,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-08-12aRagexeRE
#if PACKETVER == 20150812
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087f,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-08-19aRagexeRE, 2015-08-19bRagexeRE
#if PACKETVER == 20150819
- packet(0x0202,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x022d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0281,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x085d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0865,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0871,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0888,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0919,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0927,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0961,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0967,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pItemListWindowSelected,2,4,8);
+ packet(0x022d,clif->pUseSkillToId,2,4,6);
+ packet(0x0281,clif->pTakeItem,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x085d,clif->pMoveFromKafra,2,4);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x0865,clif->pFriendsListAdd,2);
+ packet(0x0871,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0888,clif->pHomMenu,2,4);
+ packet(0x0919,clif->pMoveToKafra,2,4);
+ packet(0x091e,clif->pStoragePassword,0);
+ packet(0x0927,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x0961,clif->pPartyInvite2,2);
+ packet(0x0967,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-08-26aRagexeRE, 2015-08-26bRagexeRE
#if PACKETVER == 20150826
- packet(0x0362,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0436,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x07ec,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0819,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0861,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0865,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x087b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x088b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0890,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0891,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a0,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a1,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0924,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0928,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x092e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0945,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0951,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0959,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0964,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0968,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0969,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x0362,clif->pStoragePassword,0);
+ packet(0x0368,clif->pMoveFromKafra,2,4);
+ packet(0x0436,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x07ec,clif->pActionRequest,2,6);
+ packet(0x0819,clif->pReqClickBuyingStore,2);
+ packet(0x0861,clif->pDull/*,XXX*/);
+ packet(0x0865,clif->pWalkToXY,2);
+ packet(0x086b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x087b,clif->pSolveCharName,2);
+ packet(0x088b,clif->pPartyInvite2,2);
+ packet(0x088d,clif->pFriendsListAdd,2);
+ packet(0x0890,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0891,clif->pUseSkillToId,2,4,6);
+ packet(0x08a0,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a1,clif->pMoveToKafra,2,4);
+ packet(0x08a4,clif->pTakeItem,2);
+ packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0924,clif->pDropItem,2,4);
+ packet(0x0928,clif->pReqCloseBuyingStore,0);
+ packet(0x092e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093b,clif->pGetCharNameRequest,2);
+ packet(0x0945,clif->pHomMenu,2,4);
+ packet(0x094f,clif->pChangeDir,2,4);
+ packet(0x0951,clif->pTickSend,2);
+ packet(0x0959,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0964,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0968,clif->pDull/*,XXX*/);
+ packet(0x0969,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2015-09-02aRagexeRE
#if PACKETVER == 20150902
- packet(0x023b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0367,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0802,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x083c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0863,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0886,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0887,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0889,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x088d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0892,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0897,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0899,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a9,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0923,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0928,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0941,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0947,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x094f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0953,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0960,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x023b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0360,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0367,clif->pTickSend,2);
+ packet(0x0802,clif->pStoragePassword,0);
+ packet(0x083c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085b,clif->pActionRequest,2,6);
+ packet(0x085d,clif->pSolveCharName,2);
+ packet(0x0863,clif->pUseSkillToId,2,4,6);
+ packet(0x086f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087b,clif->pWalkToXY,2);
+ packet(0x087f,clif->pDull/*,XXX*/);
+ packet(0x0886,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0887,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pReqCloseBuyingStore,0);
+ packet(0x088d,clif->pMoveFromKafra,2,4);
+ packet(0x0892,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0897,clif->pMoveToKafra,2,4);
+ packet(0x0899,clif->pGetCharNameRequest,2);
+ packet(0x08a9,clif->pDropItem,2,4);
+ packet(0x0923,clif->pFriendsListAdd,2);
+ packet(0x0928,clif->pTakeItem,2);
+ packet(0x092a,clif->pHomMenu,2,4);
+ packet(0x092d,clif->pPartyInvite2,2);
+ packet(0x0941,clif->pChangeDir,2,4);
+ packet(0x0947,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x094f,clif->pReqClickBuyingStore,2);
+ packet(0x0953,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0960,clif->pSearchStoreInfoNextPage,0);
#endif
// 2015-09-09aRagexeRE
#if PACKETVER == 20150909
- packet(0x023b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0361,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0365,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0437,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0861,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0871,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0883,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0886,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0895,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0928,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0940,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0941,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0962,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x023b,clif->pActionRequest,2,6);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqCloseBuyingStore,0);
+ packet(0x0361,clif->pGetCharNameRequest,2);
+ packet(0x0365,clif->pWalkToXY,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pStoragePassword,0);
+ packet(0x0437,clif->pMoveFromKafra,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0861,clif->pDull/*,XXX*/);
+ packet(0x0871,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0883,clif->pTakeItem,2);
+ packet(0x0886,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088f,clif->pPartyInvite2,2);
+ packet(0x0895,clif->pFriendsListAdd,2);
+ packet(0x0928,clif->pDull/*,XXX*/);
+ packet(0x0940,clif->pReqClickBuyingStore,2);
+ packet(0x0941,clif->pHomMenu,2,4);
+ packet(0x095e,clif->pDropItem,2,4);
+ packet(0x0962,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pChangeDir,2,4);
#endif
// 2015-09-16cRagexeRE
#if PACKETVER == 20150916
- packet(0x022d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0817,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0835,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0869,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0873,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0877,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0881,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ac,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0920,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0924,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x092f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0934,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0936,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0938,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0942,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0948,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0960,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0961,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0969,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x022d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0817,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0835,clif->pReqClickBuyingStore,2);
+ packet(0x085e,clif->pMoveFromKafra,2,4);
+ packet(0x0869,clif->pActionRequest,2,6);
+ packet(0x0873,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0877,clif->pWalkToXY,2);
+ packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0881,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089c,clif->pTakeItem,2);
+ packet(0x089e,clif->pFriendsListAdd,2);
+ packet(0x08ac,clif->pTickSend,2);
+ packet(0x0920,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0924,clif->pPartyInvite2,2);
+ packet(0x092e,clif->pReqCloseBuyingStore,0);
+ packet(0x092f,clif->pDropItem,2,4);
+ packet(0x0934,clif->pMoveToKafra,2,4);
+ packet(0x0936,clif->pChangeDir,2,4);
+ packet(0x0938,clif->pDull/*,XXX*/);
+ packet(0x093e,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pStoragePassword,0);
+ packet(0x0942,clif->pSolveCharName,2);
+ packet(0x0948,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x095a,clif->pGetCharNameRequest,2);
+ packet(0x0960,clif->pHomMenu,2,4);
+ packet(0x0961,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0969,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2015-09-23bRagexeRE, 2015-09-23eRagexeRE, 2015-09-23fRagexeRE
#if PACKETVER == 20150923
- packet(0x0361,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0817,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x085c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x085d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0864,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0879,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0886,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x088e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0892,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a0,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a2,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a6,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x092b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0930,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0936,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0951,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0961,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x0361,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x0817,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x085c,clif->pSolveCharName,2);
+ packet(0x085d,clif->pFriendsListAdd,2);
+ packet(0x0864,clif->pHomMenu,2,4);
+ packet(0x086e,clif->pReqCloseBuyingStore,0);
+ packet(0x086f,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pChangeDir,2,4);
+ packet(0x0879,clif->pMoveFromKafra,2,4);
+ packet(0x087f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0886,clif->pWalkToXY,2);
+ packet(0x088e,clif->pReqClickBuyingStore,2);
+ packet(0x0892,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x089b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089f,clif->pMoveToKafra,2,4);
+ packet(0x08a0,clif->pTickSend,2);
+ packet(0x08a2,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pGetCharNameRequest,2);
+ packet(0x08a6,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x092b,clif->pTakeItem,2);
+ packet(0x0930,clif->pDropItem,2,4);
+ packet(0x0936,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093b,clif->pPartyInvite2,2);
+ packet(0x0951,clif->pActionRequest,2,6);
+ packet(0x0961,clif->pItemListWindowSelected,2,4,8);
#endif
// 2015-10-01bRagexeRE
#if PACKETVER == 20151001
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0960,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0960,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-10-07aRagexeRE
#if PACKETVER == 20151007
- packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0961,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0967,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pFriendsListAdd,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pDull/*,XXX*/);
+ packet(0x093f,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pChangeDir,2,4);
+ packet(0x0961,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0967,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-10-14bRagexeRE
#if PACKETVER == 20151014
- packet(0x0202,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0817,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0838,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0860,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0863,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0872,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0874,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0881,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0883,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0884,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0889,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x089f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08aa,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x091d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0930,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0934,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0944,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x094f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0956,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0961,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0964,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
+ packet(0x0202,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0817,clif->pFriendsListAdd,2);
+ packet(0x0838,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085a,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pActionRequest,2,6);
+ packet(0x0860,clif->pDropItem,2,4);
+ packet(0x0863,clif->pChangeDir,2,4);
+ packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0872,clif->pHomMenu,2,4);
+ packet(0x0874,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0881,clif->pMoveFromKafra,2,4);
+ packet(0x0883,clif->pTickSend,2);
+ packet(0x0884,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0889,clif->pReqClickBuyingStore,2);
+ packet(0x088e,clif->pDull/*,XXX*/);
+ packet(0x089a,clif->pDull/*,XXX*/);
+ packet(0x089b,clif->pReqCloseBuyingStore,0);
+ packet(0x089f,clif->pWalkToXY,2);
+ packet(0x08aa,clif->pTakeItem,2);
+ packet(0x091c,clif->pPartyInvite2,2);
+ packet(0x091d,clif->pStoragePassword,0);
+ packet(0x0930,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0934,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0944,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x094f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0956,clif->pSolveCharName,2);
+ packet(0x095e,clif->pMoveToKafra,2,4);
+ packet(0x0961,clif->pGetCharNameRequest,2);
+ packet(0x0964,clif->pWantToConnection,2,6,10,14,18);
#endif
// 2015-10-21aRagexeRE, 2015-10-22aRagexeRE
#if PACKETVER == 20151021 || \
PACKETVER == 20151022
- packet(0x023b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x02c4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x02c4,clif->pStoragePassword,0);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pMoveToKafra,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pChangeDir,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086a,clif->pFriendsListAdd,2);
+ packet(0x091d,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-10-28bRagexeRE, 2015-10-28bRagexeRE_2, 2015-10-28cRagexeRE, 2015-10-28dRagexeRE, 2015-10-29aRagexeRE
#if PACKETVER == 20151028 || \
PACKETVER == 20151029
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-11-04aRagexeRE
#if PACKETVER == 20151104
- packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0360,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0363,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0437,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0811,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0886,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0887,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x088d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a3,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a5,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0928,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0939,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093a,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0940,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0964,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x023b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0360,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0363,clif->pWalkToXY,2);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x0437,clif->pDropItem,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pFriendsListAdd,2);
+ packet(0x0811,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0886,clif->pTickSend,2);
+ packet(0x0887,clif->pGetCharNameRequest,2);
+ packet(0x088b,clif->pMoveToKafra,2,4);
+ packet(0x088d,clif->pHomMenu,2,4);
+ packet(0x08a3,clif->pDull/*,XXX*/);
+ packet(0x08a5,clif->pPartyInvite2,2);
+ packet(0x0928,clif->pChangeDir,2,4);
+ packet(0x0939,clif->pDull/*,XXX*/);
+ packet(0x093a,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x0940,clif->pStoragePassword,2,4,20);
+ packet(0x0964,clif->pTakeItem,2);
#endif
// 2015-11-11aRagexeRE
#if PACKETVER == 20151111
- packet(0x02c4,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0862,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0871,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0885,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0942,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0958,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0966,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0967,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0969,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x02c4,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pMoveToKafra,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pPartyInvite2,2);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x0862,clif->pDropItem,2,4);
+ packet(0x0871,clif->pFriendsListAdd,2);
+ packet(0x0885,clif->pActionRequest,2,6);
+ packet(0x089c,clif->pChangeDir,2,4);
+ packet(0x0942,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x094a,clif->pTakeItem,2);
+ packet(0x0958,clif->pDull/*,XXX*/);
+ packet(0x0966,clif->pMoveFromKafra,2,4);
+ packet(0x0967,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0969,clif->pStoragePassword,2,4,20);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-11-18aRagexeRE
#if PACKETVER == 20151118
- packet(0x022d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x035f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x088b,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08ab,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0921,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0925,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0943,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0946,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0957,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095c,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pTickSend,2);
+ packet(0x035f,clif->pHomMenu,2,4);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pPartyInvite2,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086b,clif->pMoveToKafra,2,4);
+ packet(0x088b,clif->pStoragePassword,2,4,20);
+ packet(0x08ab,clif->pMoveFromKafra,2,4);
+ packet(0x0921,clif->pFriendsListAdd,2);
+ packet(0x0925,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092e,clif->pChangeDir,2,4);
+ packet(0x092f,clif->pDull/*,XXX*/);
+ packet(0x093c,clif->pDropItem,2,4);
+ packet(0x0943,clif->pTakeItem,2);
+ packet(0x0946,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x0957,clif->pDull/*,XXX*/);
+ packet(0x095c,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-11-25bRagexeRE, 2015-11-25cRagexeRE, 2015-11-25dRagexeRE
#if PACKETVER == 20151125
- packet(0x0361,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0365,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0366,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0368,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0438,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0802,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0838,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0863,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0883,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0884,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088c,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a9,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0920,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0939,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0951,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0956,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0957,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0959,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x0361,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0365,clif->pWalkToXY,2);
+ packet(0x0366,clif->pMoveFromKafra,2,4);
+ packet(0x0368,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x0438,clif->pTakeItem,2);
+ packet(0x0802,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0838,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x085e,clif->pGetCharNameRequest,2);
+ packet(0x085f,clif->pMoveToKafra,2,4);
+ packet(0x0863,clif->pReqCloseBuyingStore,0);
+ packet(0x0883,clif->pChangeDir,2,4);
+ packet(0x0884,clif->pStoragePassword,2,4,20);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x088c,clif->pTickSend,2);
+ packet(0x088d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089c,clif->pActionRequest,2,6);
+ packet(0x089f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a9,clif->pDropItem,2,4);
+ packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0920,clif->pSolveCharName,2);
+ packet(0x092a,clif->pUseSkillToId,2,4,6);
+ packet(0x092e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0939,clif->pReqClickBuyingStore,2);
+ packet(0x093e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0951,clif->pHomMenu,2,4);
+ packet(0x0956,clif->pPartyInvite2,2);
+ packet(0x0957,clif->pDull/*,XXX*/);
+ packet(0x0959,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2015-12-02bRagexeRE
#if PACKETVER == 20151202
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pStoragePassword,2,4,20);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2015-12-09aRagexeRE
#if PACKETVER == 20151209
- packet(0x0365,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x07e4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x07ec,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0811,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0819,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085b,clif->pStoragePassword,2,4,20); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0861,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0866,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0894,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a1,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0920,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0930,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0932,clif->pItemListWindowSelected,2,4,8,12); // CZ_ITEMLISTWIN_RES // -1
- packet(0x093b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0948,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094a,clif->pPartyBookingRegisterReq,2,4,6); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0956,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0961,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0964,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
+ packet(0x0365,clif->pWalkToXY,2);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x07e4,clif->pPartyInvite2,2);
+ packet(0x07ec,clif->pTakeItem,2);
+ packet(0x0811,clif->pTickSend,2);
+ packet(0x0819,clif->pReqCloseBuyingStore,0);
+ packet(0x085b,clif->pStoragePassword,2,4,20);
+ packet(0x085d,clif->pGetCharNameRequest,2);
+ packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0861,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0866,clif->pChangeDir,2,4);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087f,clif->pReqClickBuyingStore,2);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pDull/*,XXX*/);
+ packet(0x0894,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a1,clif->pHomMenu,2,4);
+ packet(0x0920,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092d,clif->pMoveFromKafra,2,4);
+ packet(0x0930,clif->pDropItem,2,4);
+ packet(0x0932,clif->pItemListWindowSelected,2,4,8,12);
+ packet(0x093b,clif->pMoveToKafra,2,4);
+ packet(0x0948,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094a,clif->pPartyBookingRegisterReq,2,4,6);
+ packet(0x0956,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095c,clif->pDull/*,XXX*/);
+ packet(0x0961,clif->pActionRequest,2,6);
+ packet(0x0964,clif->pFriendsListAdd,2);
#endif
// 2015-12-16aRagexeRE
#if PACKETVER == 20151216
- packet(0x022d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0361,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0364,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0436,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0864,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0865,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0874,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0885,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a2,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a9,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0947,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0949,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0954,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0960,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0966,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0968,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x022d,clif->pChangeDir,2,4);
+ packet(0x0361,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0364,clif->pDull/*,XXX*/);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0436,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pReqCloseBuyingStore,0);
+ packet(0x085b,clif->pTickSend,2);
+ packet(0x0864,clif->pMoveFromKafra,2,4);
+ packet(0x0865,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086a,clif->pDull/*,XXX*/);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x0870,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0874,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0885,clif->pStoragePassword,0);
+ packet(0x088b,clif->pGetCharNameRequest,2);
+ packet(0x089d,clif->pActionRequest,2,6);
+ packet(0x089e,clif->pSolveCharName,2);
+ packet(0x08a2,clif->pWalkToXY,2);
+ packet(0x08a9,clif->pTakeItem,2);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x091d,clif->pFriendsListAdd,2);
+ packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0947,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0949,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0954,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0960,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0966,clif->pDropItem,2,4);
+ packet(0x0968,clif->pUseSkillToId,2,4,6);
#endif
// 2015-12-23bRagexeRE
#if PACKETVER == 20151223
- packet(0x02c4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0362,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0802,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0815,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0864,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0866,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0872,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0875,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0876,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0881,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0884,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0886,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08aa,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0918,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0920,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0923,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0924,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0965,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0967,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x02c4,clif->pMoveToKafra,2,4);
+ packet(0x0362,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pTakeItem,2);
+ packet(0x0802,clif->pDull/*,XXX*/);
+ packet(0x0815,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0864,clif->pGetCharNameRequest,2);
+ packet(0x0866,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0872,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0875,clif->pUseSkillToId,2,4,6);
+ packet(0x0876,clif->pDropItem,2,4);
+ packet(0x0881,clif->pActionRequest,2,6);
+ packet(0x0884,clif->pMoveFromKafra,2,4);
+ packet(0x0886,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088d,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08aa,clif->pPartyInvite2,2);
+ packet(0x0918,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091a,clif->pReqClickBuyingStore,2);
+ packet(0x091b,clif->pFriendsListAdd,2);
+ packet(0x0920,clif->pWalkToXY,2);
+ packet(0x0923,clif->pChangeDir,2,4);
+ packet(0x0924,clif->pTickSend,2);
+ packet(0x095e,clif->pSolveCharName,2);
+ packet(0x095f,clif->pReqCloseBuyingStore,0);
+ packet(0x0965,clif->pStoragePassword,0);
+ packet(0x0967,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2015-12-30aRagexeRE
#if PACKETVER == 20151230
- packet(0x02c4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x07ec,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0861,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0869,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0886,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x088e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0897,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0923,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0949,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x02c4,clif->pMoveToKafra,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pDull/*,XXX*/);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x07ec,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0861,clif->pPartyInvite2,2);
+ packet(0x0869,clif->pChangeDir,2,4);
+ packet(0x0886,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x088e,clif->pFriendsListAdd,2);
+ packet(0x0897,clif->pDropItem,2,4);
+ packet(0x091d,clif->pMoveFromKafra,2,4);
+ packet(0x0923,clif->pStoragePassword,0);
+ packet(0x093a,clif->pDull/*,XXX*/);
+ packet(0x0949,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pTakeItem,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-01-06aRagexeRE
#if PACKETVER == 20160106
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0861,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0878,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x087a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x087f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0885,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0891,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a0,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0940,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pHomMenu,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0861,clif->pTakeItem,2);
+ packet(0x086a,clif->pDropItem,2,4);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x0878,clif->pStoragePassword,0);
+ packet(0x087a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x087f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0885,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pChangeDir,2,4);
+ packet(0x088a,clif->pPartyInvite2,2);
+ packet(0x0891,clif->pMoveFromKafra,2,4);
+ packet(0x08a0,clif->pFriendsListAdd,2);
+ packet(0x091d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0940,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-01-13aRagexeRE, 2016-01-13bRagexeRE, 2016-01-13bRagexeRE_2, 2016-01-13cRagexeRE
#if PACKETVER == 20160113
- packet(0x022d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x023b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x035f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0815,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0864,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0873,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0888,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0893,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a0,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a6,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08aa,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0919,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0924,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0930,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0932,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x093c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0941,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0967,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x022d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x023b,clif->pWalkToXY,2);
+ packet(0x035f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0815,clif->pStoragePassword,0);
+ packet(0x085b,clif->pChangeDir,2,4);
+ packet(0x0864,clif->pReqClickBuyingStore,2);
+ packet(0x086d,clif->pHomMenu,2,4);
+ packet(0x0873,clif->pDull/*,XXX*/);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0888,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088b,clif->pPartyInvite2,2);
+ packet(0x088c,clif->pReqCloseBuyingStore,0);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x0893,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089a,clif->pActionRequest,2,6);
+ packet(0x08a0,clif->pTickSend,2);
+ packet(0x08a6,clif->pTakeItem,2);
+ packet(0x08aa,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0919,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091b,clif->pGetCharNameRequest,2);
+ packet(0x0924,clif->pDropItem,2,4);
+ packet(0x0930,clif->pSolveCharName,2);
+ packet(0x0932,clif->pMoveToKafra,2,4);
+ packet(0x093c,clif->pMoveFromKafra,2,4);
+ packet(0x0941,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0967,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2016-01-20aRagexeRE
#if PACKETVER == 20160120
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0865,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0865,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-01-27aRagexeRE, 2016-01-27aRagexeRE_2, 2016-01-27bRagexeRE
#if PACKETVER == 20160127
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0922,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0961,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085e,clif->pChangeDir,2,4);
+ packet(0x0922,clif->pHomMenu,2,4);
+ packet(0x095a,clif->pStoragePassword,0);
+ packet(0x0961,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-02-03aRagexeRE
#if PACKETVER == 20160203
- packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0437,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0811,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0835,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0872,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0873,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0918,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0940,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0947,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0954,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pFriendsListAdd,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0437,clif->pTickSend,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0811,clif->pChangeDir,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0835,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0872,clif->pHomMenu,2,4);
+ packet(0x0873,clif->pStoragePassword,0);
+ packet(0x088c,clif->pDull/*,XXX*/);
+ packet(0x0918,clif->pDull/*,XXX*/);
+ packet(0x093e,clif->pPartyInvite2,2);
+ packet(0x0940,clif->pWalkToXY,2);
+ packet(0x0947,clif->pDropItem,2,4);
+ packet(0x0954,clif->pMoveFromKafra,2,4);
+ packet(0x095a,clif->pTakeItem,2);
+ packet(0x095d,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-02-11aRagexeRE
#if PACKETVER == 20160211
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0870,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0886,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pStoragePassword,0);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086c,clif->pChangeDir,2,4);
+ packet(0x0870,clif->pFriendsListAdd,2);
+ packet(0x0886,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-02-17aRagexeRE, 2016-02-17bRagexeRE, 2016-02-17bRagexeRE_2, 2016-02-17cRagexeRE
#if PACKETVER == 20160217
- packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x023b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0362,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0864,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0870,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0873,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x087a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0888,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0899,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a0,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a9,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08ac,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ad,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x091d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0920,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0926,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0941,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0966,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0967,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0202,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x023b,clif->pReqCloseBuyingStore,0);
+ packet(0x0362,clif->pChangeDir,2,4);
+ packet(0x0365,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0864,clif->pMoveToKafra,2,4);
+ packet(0x0870,clif->pFriendsListAdd,2);
+ packet(0x0873,clif->pHomMenu,2,4);
+ packet(0x087a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0888,clif->pTickSend,2);
+ packet(0x088d,clif->pReqClickBuyingStore,2);
+ packet(0x088f,clif->pDropItem,2,4);
+ packet(0x0899,clif->pDull/*,XXX*/);
+ packet(0x08a0,clif->pMoveFromKafra,2,4);
+ packet(0x08a9,clif->pPartyInvite2,2);
+ packet(0x08ac,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ad,clif->pSearchStoreInfoNextPage,0);
+ packet(0x091d,clif->pWalkToXY,2);
+ packet(0x0920,clif->pActionRequest,2,6);
+ packet(0x0926,clif->pUseSkillToId,2,4,6);
+ packet(0x092e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0941,clif->pTakeItem,2);
+ packet(0x094a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x095e,clif->pStoragePassword,0);
+ packet(0x0966,clif->pGetCharNameRequest,2);
+ packet(0x0967,clif->pSolveCharName,2);
+ packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2016-02-24aRagexeRE, 2016-02-24bRagexeRE
#if PACKETVER == 20160224
- packet(0x022d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0364,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0436,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0861,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0884,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0885,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0888,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a9,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0920,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0929,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0936,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0938,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0961,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0364,clif->pUseSkillToId,2,4,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pMoveFromKafra,2,4);
+ packet(0x0436,clif->pDropItem,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pMoveToKafra,2,4);
+ packet(0x0861,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086b,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pActionRequest,2,6);
+ packet(0x0885,clif->pReqClickBuyingStore,2);
+ packet(0x0888,clif->pWalkToXY,2);
+ packet(0x08a9,clif->pFriendsListAdd,2);
+ packet(0x0920,clif->pDull/*,XXX*/);
+ packet(0x0929,clif->pChangeDir,2,4);
+ packet(0x092f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0936,clif->pStoragePassword,0);
+ packet(0x0938,clif->pTakeItem,2);
+ packet(0x094c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0961,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-03-02bRagexeRE
#if PACKETVER == 20160302
- packet(0x022d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0367,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0802,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0819,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0864,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0868,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0873,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0883,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a6,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a9,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0927,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0945,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094e,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0950,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0960,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0967,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0968,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x022d,clif->pChangeDir,2,4);
+ packet(0x0367,clif->pReqClickBuyingStore,2);
+ packet(0x0802,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0819,clif->pWalkToXY,2);
+ packet(0x085b,clif->pFriendsListAdd,2);
+ packet(0x0864,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0865,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0867,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0868,clif->pHomMenu,2,4);
+ packet(0x0873,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087d,clif->pPartyInvite2,2);
+ packet(0x0883,clif->pUseSkillToId,2,4,6);
+ packet(0x08a6,clif->pReqCloseBuyingStore,0);
+ packet(0x08a9,clif->pMoveFromKafra,2,4);
+ packet(0x091a,clif->pDropItem,2,4);
+ packet(0x0927,clif->pTakeItem,2);
+ packet(0x092d,clif->pDull/*,XXX*/);
+ packet(0x092f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0945,clif->pGetCharNameRequest,2);
+ packet(0x094e,clif->pStoragePassword,0);
+ packet(0x0950,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095a,clif->pTickSend,2);
+ packet(0x0960,clif->pMoveToKafra,2,4);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0967,clif->pSolveCharName,2);
+ packet(0x0968,clif->pActionRequest,2,6);
#endif
// 2016-03-09aRagexeRE
#if PACKETVER == 20160309
- packet(0x023b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0281,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0819,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0838,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x083c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x085a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0866,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0873,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a7,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0920,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0929,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092a,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0932,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0956,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x096a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x023b,clif->pDropItem,2,4);
+ packet(0x0281,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pFriendsListAdd,2);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0819,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0838,clif->pWalkToXY,2);
+ packet(0x083c,clif->pPartyInvite2,2);
+ packet(0x085a,clif->pMoveToKafra,2,4);
+ packet(0x085f,clif->pUseSkillToId,2,4,6);
+ packet(0x0866,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0873,clif->pDull/*,XXX*/);
+ packet(0x087c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089d,clif->pChangeDir,2,4);
+ packet(0x08a7,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091d,clif->pGetCharNameRequest,2);
+ packet(0x0920,clif->pMoveFromKafra,2,4);
+ packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0929,clif->pDull/*,XXX*/);
+ packet(0x092a,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092e,clif->pReqCloseBuyingStore,0);
+ packet(0x0932,clif->pHomMenu,2,4);
+ packet(0x094f,clif->pActionRequest,2,6);
+ packet(0x0956,clif->pTickSend,2);
+ packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x096a,clif->pTakeItem,2);
#endif
// 2016-03-16aRagexeRE
#if PACKETVER == 20160316
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0922,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0922,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-03-23aRagexeRE, 2016-03-23bRagexeRE
#if PACKETVER == 20160323
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0869,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0872,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0878,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0883,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0896,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x091b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0926,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0927,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0933,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pFriendsListAdd,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pDull/*,XXX*/);
+ packet(0x0869,clif->pTakeItem,2);
+ packet(0x086a,clif->pMoveFromKafra,2,4);
+ packet(0x0872,clif->pStoragePassword,0);
+ packet(0x0878,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0883,clif->pPartyInvite2,2);
+ packet(0x0896,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089a,clif->pHomMenu,2,4);
+ packet(0x091b,clif->pDull/*,XXX*/);
+ packet(0x0926,clif->pMoveToKafra,2,4);
+ packet(0x0927,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0933,clif->pChangeDir,2,4);
+ packet(0x093c,clif->pDropItem,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-03-30aRagexeRE
#if PACKETVER == 20160330
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0365,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0889,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0918,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0925,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x092c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0930,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0939,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x093b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0365,clif->pStoragePassword,0);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pPartyInvite2,2);
+ packet(0x086d,clif->pTakeItem,2);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pMoveFromKafra,2,4);
+ packet(0x0889,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088b,clif->pHomMenu,2,4);
+ packet(0x088d,clif->pDull/*,XXX*/);
+ packet(0x0918,clif->pMoveToKafra,2,4);
+ packet(0x0925,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x092c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0930,clif->pChangeDir,2,4);
+ packet(0x0939,clif->pDropItem,2,4);
+ packet(0x093b,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-04-06aRagexeRE
#if PACKETVER == 20160406
- packet(0x0364,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x07e4,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0869,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0877,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0878,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0879,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0884,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0892,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0895,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0898,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a1,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a9,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ac,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0927,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0933,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0934,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0949,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0953,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x0364,clif->pSolveCharName,2);
+ packet(0x07e4,clif->pDropItem,2,4);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0869,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0877,clif->pTakeItem,2);
+ packet(0x0878,clif->pFriendsListAdd,2);
+ packet(0x0879,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0884,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0892,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0895,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0898,clif->pPartyInvite2,2);
+ packet(0x089b,clif->pGetCharNameRequest,2);
+ packet(0x089e,clif->pMoveFromKafra,2,4);
+ packet(0x08a1,clif->pActionRequest,2,6);
+ packet(0x08a9,clif->pReqCloseBuyingStore,0);
+ packet(0x08ac,clif->pDull/*,XXX*/);
+ packet(0x0927,clif->pMoveToKafra,2,4);
+ packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0933,clif->pChangeDir,2,4);
+ packet(0x0934,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x0949,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094d,clif->pReqClickBuyingStore,2);
+ packet(0x0953,clif->pStoragePassword,0);
+ packet(0x095d,clif->pHomMenu,2,4);
+ packet(0x095f,clif->pWalkToXY,2);
+ packet(0x0962,clif->pDull/*,XXX*/);
#endif
// 2016-04-14aRagexeRE, 2016-04-14bRagexeRE
#if PACKETVER == 20160414
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0363,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0880,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0918,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0922,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0927,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0931,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0934,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0945,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0953,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0363,clif->pTakeItem,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x0880,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pMoveFromKafra,2,4);
+ packet(0x089e,clif->pPartyInvite2,2);
+ packet(0x0918,clif->pDull/*,XXX*/);
+ packet(0x0922,clif->pChangeDir,2,4);
+ packet(0x0927,clif->pStoragePassword,0);
+ packet(0x0931,clif->pDropItem,2,4);
+ packet(0x0934,clif->pHomMenu,2,4);
+ packet(0x0945,clif->pFriendsListAdd,2);
+ packet(0x0953,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-04-20aRagexeRE
#if PACKETVER == 20160420
- packet(0x022d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x02c4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x035f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0864,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0870,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0872,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0874,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0888,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a5,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0935,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x094e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x02c4,clif->pTickSend,2);
+ packet(0x035f,clif->pPartyInvite2,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pHomMenu,2,4);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0864,clif->pTakeItem,2);
+ packet(0x0870,clif->pDull/*,XXX*/);
+ packet(0x0872,clif->pChangeDir,2,4);
+ packet(0x0874,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pDropItem,2,4);
+ packet(0x0888,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088b,clif->pMoveFromKafra,2,4);
+ packet(0x08a5,clif->pStoragePassword,0);
+ packet(0x092f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0935,clif->pFriendsListAdd,2);
+ packet(0x094e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095c,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-04-27aRagexeRE
#if PACKETVER == 20160427
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0835,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0835,clif->pStoragePassword,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-05-04aRagexeRE
#if PACKETVER == 20160504
- packet(0x0202,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0363,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0365,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x083c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x087f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0884,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0887,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0890,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0893,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0898,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08ad,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0918,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0922,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0924,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0940,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0941,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0948,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0952,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0969,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x0202,clif->pHomMenu,2,4);
+ packet(0x0363,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0365,clif->pDull/*,XXX*/);
+ packet(0x083c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085f,clif->pActionRequest,2,6);
+ packet(0x086b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x087f,clif->pReqCloseBuyingStore,0);
+ packet(0x0884,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x0887,clif->pPartyInvite2,2);
+ packet(0x088a,clif->pTakeItem,2);
+ packet(0x088d,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0890,clif->pDropItem,2,4);
+ packet(0x0893,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0898,clif->pDull/*,XXX*/);
+ packet(0x089d,clif->pSolveCharName,2);
+ packet(0x08ad,clif->pChangeDir,2,4);
+ packet(0x0918,clif->pTickSend,2);
+ packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0922,clif->pGetCharNameRequest,2);
+ packet(0x0924,clif->pWalkToXY,2);
+ packet(0x093e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0940,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0941,clif->pMoveFromKafra,2,4);
+ packet(0x0948,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0952,clif->pFriendsListAdd,2);
+ packet(0x095b,clif->pReqClickBuyingStore,2);
+ packet(0x0969,clif->pStoragePassword,0);
#endif
// 2016-05-11aRagexeRE, 2016-05-11bRagexeRE
#if PACKETVER == 20160511
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0894,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0918,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0920,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085e,clif->pChangeDir,2,4);
+ packet(0x0894,clif->pFriendsListAdd,2);
+ packet(0x089b,clif->pDull/*,XXX*/);
+ packet(0x0918,clif->pHomMenu,2,4);
+ packet(0x0920,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-05-18aRagexeRE
#if PACKETVER == 20160518
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0874,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a9,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0928,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086c,clif->pChangeDir,2,4);
+ packet(0x0874,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x08a9,clif->pFriendsListAdd,2);
+ packet(0x0928,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-05-25aRagexeRE
#if PACKETVER == 20160525
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0867,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0899,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x092c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0937,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0945,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0951,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0956,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pDull/*,XXX*/);
+ packet(0x085e,clif->pDropItem,2,4);
+ packet(0x0867,clif->pHomMenu,2,4);
+ packet(0x086a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0899,clif->pTakeItem,2);
+ packet(0x089c,clif->pChangeDir,2,4);
+ packet(0x091d,clif->pStoragePassword,0);
+ packet(0x092c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0937,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0945,clif->pPartyInvite2,2);
+ packet(0x094a,clif->pMoveToKafra,2,4);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0951,clif->pFriendsListAdd,2);
+ packet(0x0956,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-06-01aRagexeRE
#if PACKETVER == 20160601
- packet(0x0202,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0863,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0870,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x088f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0895,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a7,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ac,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0924,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0961,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pReqCloseBuyingStore,0);
+ packet(0x02c4,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pFriendsListAdd,2);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0863,clif->pTakeItem,2);
+ packet(0x0870,clif->pMoveFromKafra,2,4);
+ packet(0x087d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088d,clif->pDropItem,2,4);
+ packet(0x088f,clif->pMoveToKafra,2,4);
+ packet(0x0895,clif->pHomMenu,2,4);
+ packet(0x08a7,clif->pDull/*,XXX*/);
+ packet(0x08ac,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0924,clif->pDull/*,XXX*/);
+ packet(0x095b,clif->pChangeDir,2,4);
+ packet(0x095f,clif->pStoragePassword,0);
+ packet(0x0961,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-06-08aRagexeRE, 2016-06-08bRagexeRE
#if PACKETVER == 20160608
- packet(0x022d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x02c4,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x035f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0437,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07ec,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0802,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0889,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0899,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a6,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0958,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0969,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x02c4,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x035f,clif->pPartyInvite2,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pWalkToXY,2);
+ packet(0x0437,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07ec,clif->pChangeDir,2,4);
+ packet(0x0802,clif->pTickSend,2);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pDull/*,XXX*/);
+ packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0889,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0899,clif->pTakeItem,2);
+ packet(0x089b,clif->pHomMenu,2,4);
+ packet(0x08a6,clif->pMoveFromKafra,2,4);
+ packet(0x093b,clif->pDull/*,XXX*/);
+ packet(0x094d,clif->pDropItem,2,4);
+ packet(0x0958,clif->pStoragePassword,0);
+ packet(0x095b,clif->pMoveToKafra,2,4);
+ packet(0x0969,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-06-15aRagexeRE
#if PACKETVER == 20160615
- packet(0x0281,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0363,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0369,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x083c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0866,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0870,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0888,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x088d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0898,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x092f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0947,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0948,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x094a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x094b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0954,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0957,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0958,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0961,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x0281,clif->pFriendsListAdd,2);
+ packet(0x0363,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x0369,clif->pHomMenu,2,4);
+ packet(0x083c,clif->pGetCharNameRequest,2);
+ packet(0x0866,clif->pWalkToXY,2);
+ packet(0x0870,clif->pDull/*,XXX*/);
+ packet(0x087d,clif->pSolveCharName,2);
+ packet(0x087e,clif->pTakeItem,2);
+ packet(0x087f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0887,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0888,clif->pUseSkillToId,2,4,6);
+ packet(0x088a,clif->pTickSend,2);
+ packet(0x088d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0898,clif->pDropItem,2,4);
+ packet(0x092f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093e,clif->pPartyInvite2,2);
+ packet(0x0947,clif->pReqCloseBuyingStore,0);
+ packet(0x0948,clif->pActionRequest,2,6);
+ packet(0x094a,clif->pReqClickBuyingStore,2);
+ packet(0x094b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0954,clif->pChangeDir,2,4);
+ packet(0x0957,clif->pMoveToKafra,2,4);
+ packet(0x0958,clif->pMoveFromKafra,2,4);
+ packet(0x095c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0961,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2016-06-22aRagexeRE
#if PACKETVER == 20160622
- packet(0x023b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x035f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0361,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x07e4,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0865,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0867,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0880,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0887,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0890,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0891,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0892,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x089a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a2,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a8,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x092f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0936,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0946,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0959,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0965,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0969,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
+ packet(0x023b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x035f,clif->pMoveFromKafra,2,4);
+ packet(0x0361,clif->pPartyInvite2,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x07e4,clif->pHomMenu,2,4);
+ packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0865,clif->pDull/*,XXX*/);
+ packet(0x0867,clif->pDull/*,XXX*/);
+ packet(0x0880,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0887,clif->pReqCloseBuyingStore,0);
+ packet(0x0890,clif->pFriendsListAdd,2);
+ packet(0x0891,clif->pReqClickBuyingStore,2);
+ packet(0x0892,clif->pSearchStoreInfoNextPage,0);
+ packet(0x089a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089e,clif->pActionRequest,2,6);
+ packet(0x08a2,clif->pSolveCharName,2);
+ packet(0x08a8,clif->pStoragePassword,0);
+ packet(0x091c,clif->pTakeItem,2);
+ packet(0x092d,clif->pTickSend,2);
+ packet(0x092f,clif->pUseSkillToId,2,4,6);
+ packet(0x0936,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093b,clif->pMoveToKafra,2,4);
+ packet(0x093f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0946,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0959,clif->pGetCharNameRequest,2);
+ packet(0x0965,clif->pChangeDir,2,4);
+ packet(0x0969,clif->pDropItem,2,4);
#endif
// 2016-06-29aRagexeRE, 2016-06-30aRagexeRE
#if PACKETVER == 20160629 || \
PACKETVER == 20160630
- packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x022d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x035f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0363,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x085c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x085e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0860,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0861,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0863,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0867,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x086b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0881,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0885,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0893,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0922,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0925,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0926,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0946,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0948,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0957,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0968,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0969,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x022d,clif->pWalkToXY,2);
+ packet(0x035f,clif->pDull/*,XXX*/);
+ packet(0x0363,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pItemListWindowSelected,2,4,8);
+ packet(0x085c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x085e,clif->pDull/*,XXX*/);
+ packet(0x0860,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0861,clif->pDropItem,2,4);
+ packet(0x0863,clif->pSolveCharName,2);
+ packet(0x0867,clif->pStoragePassword,0);
+ packet(0x086b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0881,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0885,clif->pHomMenu,2,4);
+ packet(0x088e,clif->pGetCharNameRequest,2);
+ packet(0x0893,clif->pTickSend,2);
+ packet(0x091e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0922,clif->pMoveFromKafra,2,4);
+ packet(0x0925,clif->pUseSkillToId,2,4,6);
+ packet(0x0926,clif->pPartyInvite2,2);
+ packet(0x093e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0946,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0948,clif->pChangeDir,2,4);
+ packet(0x094a,clif->pFriendsListAdd,2);
+ packet(0x0957,clif->pReqCloseBuyingStore,0);
+ packet(0x095a,clif->pActionRequest,2,6);
+ packet(0x0968,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0969,clif->pTakeItem,2);
+ packet(0x096a,clif->pMoveToKafra,2,4);
#endif
// 2016-07-06cRagexeRE
#if PACKETVER == 20160706
- packet(0x0362,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x085f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0860,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0869,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x086b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0884,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0886,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0892,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0899,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a4,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a5,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a8,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0918,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x091b,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0924,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0926,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0927,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0929,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0939,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x093d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0944,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0945,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0952,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0958,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x0362,clif->pSolveCharName,2);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x085f,clif->pPartyInvite2,2);
+ packet(0x0860,clif->pActionRequest,2,6);
+ packet(0x0869,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x086b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0884,clif->pFriendsListAdd,2);
+ packet(0x0886,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0892,clif->pHomMenu,2,4);
+ packet(0x0899,clif->pUseSkillToId,2,4,6);
+ packet(0x08a4,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a5,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a8,clif->pTickSend,2);
+ packet(0x0918,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x091b,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0924,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0926,clif->pChangeDir,2,4);
+ packet(0x0927,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0929,clif->pMoveFromKafra,2,4);
+ packet(0x092d,clif->pWalkToXY,2);
+ packet(0x0939,clif->pMoveToKafra,2,4);
+ packet(0x093d,clif->pDropItem,2,4);
+ packet(0x0944,clif->pDull/*,XXX*/);
+ packet(0x0945,clif->pGetCharNameRequest,2);
+ packet(0x094c,clif->pStoragePassword,0);
+ packet(0x0952,clif->pReqCloseBuyingStore,0);
+ packet(0x0957,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0958,clif->pTakeItem,2);
#endif
// 2016-07-13aRagexeRE, 2016-07-13bRagexeRE
#if PACKETVER == 20160713
- packet(0x022d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0363,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0364,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0838,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0860,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0865,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0877,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0883,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0892,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x089a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a2,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0922,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0931,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0939,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0944,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0945,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0947,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0957,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x095b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x022d,clif->pStoragePassword,0);
+ packet(0x0363,clif->pChangeDir,2,4);
+ packet(0x0364,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0838,clif->pTakeItem,2);
+ packet(0x0860,clif->pReqClickBuyingStore,2);
+ packet(0x0865,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0869,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0877,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087b,clif->pTickSend,2);
+ packet(0x0883,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0892,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x089a,clif->pPartyInvite2,2);
+ packet(0x089f,clif->pDull/*,XXX*/);
+ packet(0x08a2,clif->pMoveFromKafra,2,4);
+ packet(0x08a4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091c,clif->pWalkToXY,2);
+ packet(0x091d,clif->pSolveCharName,2);
+ packet(0x0921,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0922,clif->pHomMenu,2,4);
+ packet(0x092c,clif->pGetCharNameRequest,2);
+ packet(0x0931,clif->pUseSkillToId,2,4,6);
+ packet(0x0939,clif->pFriendsListAdd,2);
+ packet(0x0944,clif->pReqCloseBuyingStore,0);
+ packet(0x0945,clif->pActionRequest,2,6);
+ packet(0x0947,clif->pMoveToKafra,2,4);
+ packet(0x0957,clif->pDropItem,2,4);
+ packet(0x095b,clif->pDull/*,XXX*/);
#endif
// 2016-07-20aRagexeRE, 2016-07-20bRagexeRE
#if PACKETVER == 20160720
- packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0363,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0365,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x07e4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0838,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x085b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0883,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0887,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a0,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08aa,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0917,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x091c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093b,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0946,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0953,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0960,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0969,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
+ packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0363,clif->pUseSkillToId,2,4,6);
+ packet(0x0365,clif->pActionRequest,2,6);
+ packet(0x07e4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0838,clif->pWalkToXY,2);
+ packet(0x085b,clif->pReqCloseBuyingStore,0);
+ packet(0x086a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086d,clif->pReqClickBuyingStore,2);
+ packet(0x087f,clif->pDropItem,2,4);
+ packet(0x0883,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0887,clif->pGetCharNameRequest,2);
+ packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x089c,clif->pHomMenu,2,4);
+ packet(0x089e,clif->pMoveFromKafra,2,4);
+ packet(0x08a0,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08aa,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0917,clif->pDull/*,XXX*/);
+ packet(0x091c,clif->pTakeItem,2);
+ packet(0x092a,clif->pFriendsListAdd,2);
+ packet(0x093b,clif->pChangeDir,2,4);
+ packet(0x093e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0946,clif->pTickSend,2);
+ packet(0x094d,clif->pSolveCharName,2);
+ packet(0x0953,clif->pDull/*,XXX*/);
+ packet(0x095b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0960,clif->pMoveToKafra,2,4);
+ packet(0x0969,clif->pPartyInvite2,2);
#endif
// 2016-07-27aRagexeRE, 2016-07-27bRagexeRE
#if PACKETVER == 20160727
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x023b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0363,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0436,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x07ec,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0866,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0868,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0869,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0874,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0877,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0883,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0887,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a4,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a7,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0936,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0941,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0946,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0949,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0951,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0966,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x023b,clif->pDull/*,XXX*/);
+ packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0363,clif->pFriendsListAdd,2);
+ packet(0x0436,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x07ec,clif->pDropItem,2,4);
+ packet(0x0866,clif->pDull/*,XXX*/);
+ packet(0x0868,clif->pPartyInvite2,2);
+ packet(0x0869,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0874,clif->pReqClickBuyingStore,2);
+ packet(0x0877,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0883,clif->pActionRequest,2,6);
+ packet(0x0887,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x0891,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x08a4,clif->pSolveCharName,2);
+ packet(0x08a7,clif->pTakeItem,2);
+ packet(0x092e,clif->pWalkToXY,2);
+ packet(0x0936,clif->pHomMenu,2,4);
+ packet(0x0941,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0946,clif->pGetCharNameRequest,2);
+ packet(0x0949,clif->pMoveFromKafra,2,4);
+ packet(0x0951,clif->pMoveToKafra,2,4);
+ packet(0x095f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0966,clif->pReqCloseBuyingStore,0);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
#endif
// 2016-08-03bRagexeRE
#if PACKETVER == 20160803
- packet(0x0364,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x085d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0881,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0886,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0887,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0888,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0891,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0895,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08a1,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0929,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0930,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0932,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0934,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0937,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x093a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x093e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0952,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0955,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0956,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0959,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x0364,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x085d,clif->pReqClickBuyingStore,2);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pWalkToXY,2);
+ packet(0x0881,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0886,clif->pMoveToKafra,2,4);
+ packet(0x0887,clif->pGetCharNameRequest,2);
+ packet(0x0888,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088b,clif->pReqCloseBuyingStore,0);
+ packet(0x0891,clif->pChangeDir,2,4);
+ packet(0x0895,clif->pFriendsListAdd,2);
+ packet(0x089c,clif->pDropItem,2,4);
+ packet(0x089e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08a1,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091b,clif->pTakeItem,2);
+ packet(0x0929,clif->pStoragePassword,0);
+ packet(0x0930,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0932,clif->pUseSkillToId,2,4,6);
+ packet(0x0934,clif->pActionRequest,2,6);
+ packet(0x0937,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x093a,clif->pDull/*,XXX*/);
+ packet(0x093e,clif->pTickSend,2);
+ packet(0x093f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0952,clif->pHomMenu,2,4);
+ packet(0x0955,clif->pMoveFromKafra,2,4);
+ packet(0x0956,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0959,clif->pSolveCharName,2);
+ packet(0x095a,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2016-08-10aRagexeRE
#if PACKETVER == 20160810
- packet(0x0361,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0819,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0838,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x085d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x085e,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0860,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0875,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0879,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0885,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0888,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0890,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x089f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a9,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0926,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0935,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0943,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0959,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0967,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x0361,clif->pStoragePassword,0);
+ packet(0x0819,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0838,clif->pPartyInvite2,2);
+ packet(0x085d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x085e,clif->pDropItem,2,4);
+ packet(0x085f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0860,clif->pSolveCharName,2);
+ packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0875,clif->pHomMenu,2,4);
+ packet(0x0879,clif->pReqClickBuyingStore,2);
+ packet(0x087a,clif->pWalkToXY,2);
+ packet(0x0885,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0888,clif->pFriendsListAdd,2);
+ packet(0x0890,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089d,clif->pChangeDir,2,4);
+ packet(0x089f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a9,clif->pMoveToKafra,2,4);
+ packet(0x091a,clif->pTakeItem,2);
+ packet(0x091b,clif->pGetCharNameRequest,2);
+ packet(0x091c,clif->pUseSkillToId,2,4,6);
+ packet(0x0926,clif->pDull/*,XXX*/);
+ packet(0x092b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092d,clif->pMoveFromKafra,2,4);
+ packet(0x0935,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0943,clif->pTickSend,2);
+ packet(0x094b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0959,clif->pReqCloseBuyingStore,0);
+ packet(0x095b,clif->pActionRequest,2,6);
+ packet(0x0967,clif->pDull/*,XXX*/);
#endif
// 2016-08-17aRagexeRE
#if PACKETVER == 20160817
- packet(0x0364,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0437,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x07e4,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0811,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0819,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x083c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x085c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0867,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0875,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0886,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0891,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a5,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a9,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08ab,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ac,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08ad,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0929,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0930,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0939,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0960,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0963,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x0364,clif->pReqClickBuyingStore,2);
+ packet(0x0437,clif->pFriendsListAdd,2);
+ packet(0x07e4,clif->pGetCharNameRequest,2);
+ packet(0x0811,clif->pDull/*,XXX*/);
+ packet(0x0819,clif->pTickSend,2);
+ packet(0x083c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x085c,clif->pTakeItem,2);
+ packet(0x0867,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086b,clif->pSolveCharName,2);
+ packet(0x0875,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087f,clif->pDropItem,2,4);
+ packet(0x0886,clif->pActionRequest,2,6);
+ packet(0x0891,clif->pUseSkillToId,2,4,6);
+ packet(0x089c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a5,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pPartyInvite2,2);
+ packet(0x08a9,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08ab,clif->pHomMenu,2,4);
+ packet(0x08ac,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08ad,clif->pMoveToKafra,2,4);
+ packet(0x091b,clif->pReqCloseBuyingStore,0);
+ packet(0x0929,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0930,clif->pWalkToXY,2);
+ packet(0x0939,clif->pMoveFromKafra,2,4);
+ packet(0x093c,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0960,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0963,clif->pChangeDir,2,4);
#endif
// 2016-08-24aRagexeRE
#if PACKETVER == 20160824
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0934,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0934,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-08-31aRagexeRE, 2016-08-31bRagexeRE
#if PACKETVER == 20160831
- packet(0x022d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0366,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0835,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0865,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0870,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0874,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0876,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0878,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x087c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a9,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0917,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0938,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0946,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x094a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0950,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0954,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0957,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0960,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0964,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0967,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x022d,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0366,clif->pDropItem,2,4);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0835,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0865,clif->pWalkToXY,2);
+ packet(0x086d,clif->pReqCloseBuyingStore,0);
+ packet(0x0870,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0874,clif->pPartyInvite2,2);
+ packet(0x0876,clif->pDull/*,XXX*/);
+ packet(0x0878,clif->pActionRequest,2,6);
+ packet(0x087c,clif->pGetCharNameRequest,2);
+ packet(0x08a8,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a9,clif->pTickSend,2);
+ packet(0x0917,clif->pStoragePassword,0);
+ packet(0x091b,clif->pDull/*,XXX*/);
+ packet(0x092c,clif->pFriendsListAdd,2);
+ packet(0x092e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0938,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x0946,clif->pSolveCharName,2);
+ packet(0x094a,clif->pChangeDir,2,4);
+ packet(0x094f,clif->pMoveToKafra,2,4);
+ packet(0x0950,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0954,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0957,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095e,clif->pMoveFromKafra,2,4);
+ packet(0x0960,clif->pTakeItem,2);
+ packet(0x0964,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0967,clif->pUseSkillToId,2,4,6);
#endif
// 2016-09-07aRagexeRE
#if PACKETVER == 20160907
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x091c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x091c,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-09-13aRagexeRE
#if PACKETVER == 20160913
- packet(0x0361,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0817,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0865,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0874,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0875,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0879,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0887,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0889,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x088e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0891,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0892,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x089b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a5,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0928,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0935,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0949,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0950,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0952,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0954,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0962,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0963,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0968,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
+ packet(0x0361,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0817,clif->pMoveToKafra,2,4);
+ packet(0x085b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0865,clif->pGetCharNameRequest,2);
+ packet(0x0874,clif->pReqClickBuyingStore,2);
+ packet(0x0875,clif->pTickSend,2);
+ packet(0x0879,clif->pDropItem,2,4);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x087b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0887,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0889,clif->pTakeItem,2);
+ packet(0x088e,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0891,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0892,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x089b,clif->pMoveFromKafra,2,4);
+ packet(0x089c,clif->pStoragePassword,0);
+ packet(0x08a5,clif->pChangeDir,2,4);
+ packet(0x0928,clif->pFriendsListAdd,2);
+ packet(0x0935,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093a,clif->pHomMenu,2,4);
+ packet(0x0949,clif->pPartyInvite2,2);
+ packet(0x094a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0950,clif->pActionRequest,2,6);
+ packet(0x0952,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0954,clif->pWalkToXY,2);
+ packet(0x0962,clif->pDull/*,XXX*/);
+ packet(0x0963,clif->pSolveCharName,2);
+ packet(0x0968,clif->pReqCloseBuyingStore,0);
#endif
// 2016-09-21bRagexeRE
#if PACKETVER == 20160921
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x094a,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-09-28cRagexeRE, 2016-09-28dRagexeRE
#if PACKETVER == 20160928
- packet(0x0202,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0366,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0811,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0838,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0864,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0866,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0872,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0878,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0889,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x088e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0897,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x089a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a9,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0919,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0927,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0944,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0953,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0955,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0957,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
+ packet(0x0202,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pGetCharNameRequest,2);
+ packet(0x0366,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x0811,clif->pDull/*,XXX*/);
+ packet(0x0838,clif->pPartyInvite2,2);
+ packet(0x0864,clif->pMoveFromKafra,2,4);
+ packet(0x0866,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086d,clif->pDropItem,2,4);
+ packet(0x0872,clif->pHomMenu,2,4);
+ packet(0x0878,clif->pSolveCharName,2);
+ packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0889,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x088e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0897,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x089a,clif->pActionRequest,2,6);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x08a9,clif->pMoveToKafra,2,4);
+ packet(0x0919,clif->pWalkToXY,2);
+ packet(0x091e,clif->pTickSend,2);
+ packet(0x0927,clif->pUseSkillToId,2,4,6);
+ packet(0x092d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0944,clif->pChangeDir,2,4);
+ packet(0x094d,clif->pReqCloseBuyingStore,0);
+ packet(0x094e,clif->pFriendsListAdd,2);
+ packet(0x0953,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0955,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0957,clif->pTakeItem,2);
+ packet(0x095a,clif->pDull/*,XXX*/);
#endif
// 2016-10-05aRagexeRE
#if PACKETVER == 20161005
- packet(0x0202,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0838,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0863,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0886,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0891,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0892,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a0,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08ac,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0918,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0919,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x092b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0931,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0932,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0942,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0945,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0952,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x095b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0967,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x0202,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pActionRequest,2,6);
+ packet(0x0838,clif->pStoragePassword,0);
+ packet(0x0863,clif->pGetCharNameRequest,2);
+ packet(0x0886,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088e,clif->pMoveFromKafra,2,4);
+ packet(0x0891,clif->pChangeDir,2,4);
+ packet(0x0892,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089b,clif->pPartyInvite2,2);
+ packet(0x089c,clif->pTakeItem,2);
+ packet(0x08a0,clif->pMoveToKafra,2,4);
+ packet(0x08ac,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0918,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0919,clif->pSolveCharName,2);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x092b,clif->pTickSend,2);
+ packet(0x0931,clif->pFriendsListAdd,2);
+ packet(0x0932,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0942,clif->pDropItem,2,4);
+ packet(0x0944,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0945,clif->pWalkToXY,2);
+ packet(0x094a,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094d,clif->pHomMenu,2,4);
+ packet(0x0952,clif->pDull/*,XXX*/);
+ packet(0x095a,clif->pReqClickBuyingStore,2);
+ packet(0x095b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0967,clif->pUseSkillToId,2,4,6);
#endif
// 2016-10-12aRagexeRE
#if PACKETVER == 20161012
- packet(0x023b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0365,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0369,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x07ec,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0819,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x085b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x085e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0863,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0868,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0872,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0875,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0880,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0893,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a0,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0936,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0937,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0939,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0943,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0944,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0951,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0962,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0966,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0967,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x023b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0364,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0365,clif->pTickSend,2);
+ packet(0x0369,clif->pPartyInvite2,2);
+ packet(0x07ec,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0819,clif->pFriendsListAdd,2);
+ packet(0x085b,clif->pDull/*,XXX*/);
+ packet(0x085e,clif->pReqCloseBuyingStore,0);
+ packet(0x0863,clif->pActionRequest,2,6);
+ packet(0x0868,clif->pTakeItem,2);
+ packet(0x086d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0872,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0875,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0880,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0893,clif->pMoveToKafra,2,4);
+ packet(0x08a0,clif->pChangeDir,2,4);
+ packet(0x092d,clif->pSolveCharName,2);
+ packet(0x0936,clif->pGetCharNameRequest,2);
+ packet(0x0937,clif->pReqClickBuyingStore,2);
+ packet(0x0939,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0943,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0944,clif->pMoveFromKafra,2,4);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0951,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095c,clif->pHomMenu,2,4);
+ packet(0x0962,clif->pUseSkillToId,2,4,6);
+ packet(0x0966,clif->pWalkToXY,2);
+ packet(0x0967,clif->pStoragePassword,0);
#endif
// 2016-10-19aRagexeRE
#if PACKETVER == 20161019
- packet(0x022d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0361,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0889,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0892,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0946,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0963,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pReqClickBuyingStore,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pHomMenu,2,4);
+ packet(0x0361,clif->pWalkToXY,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pChangeDir,2,4);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0889,clif->pStoragePassword,0);
+ packet(0x0892,clif->pDull/*,XXX*/);
+ packet(0x0946,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0963,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-10-26bRagexeRE, 2016-10-26cRagexeRE
#if PACKETVER == 20161026
- packet(0x0363,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0438,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085f,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0862,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x086a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x087c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0886,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0891,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0894,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0898,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0926,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x092e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0930,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0953,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x095c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x095e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0962,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x0363,clif->pStoragePassword,0);
+ packet(0x0438,clif->pWalkToXY,2);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085a,clif->pMoveToKafra,2,4);
+ packet(0x085f,clif->pActionRequest,2,6);
+ packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0862,clif->pTickSend,2);
+ packet(0x086a,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086e,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x087c,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0886,clif->pDropItem,2,4);
+ packet(0x0891,clif->pReqClickBuyingStore,2);
+ packet(0x0894,clif->pUseSkillToId,2,4,6);
+ packet(0x0898,clif->pFriendsListAdd,2);
+ packet(0x091a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091b,clif->pTakeItem,2);
+ packet(0x0926,clif->pSolveCharName,2);
+ packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x092e,clif->pHomMenu,2,4);
+ packet(0x092f,clif->pReqCloseBuyingStore,0);
+ packet(0x0930,clif->pGetCharNameRequest,2);
+ packet(0x094b,clif->pMoveFromKafra,2,4);
+ packet(0x0953,clif->pPartyInvite2,2);
+ packet(0x095c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x095e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0962,clif->pChangeDir,2,4);
#endif
// 2016-11-02aRagexeRE, 2016-11-03aRagexeRE
#if PACKETVER == 20161102 || \
PACKETVER == 20161103
- packet(0x0361,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0367,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0436,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0802,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x083c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0869,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0874,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0886,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a2,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08aa,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0922,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0925,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0928,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0936,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0946,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0949,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0964,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0965,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0966,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
+ packet(0x0361,clif->pMoveFromKafra,2,4);
+ packet(0x0367,clif->pDull/*,XXX*/);
+ packet(0x0436,clif->pActionRequest,2,6);
+ packet(0x0802,clif->pTakeItem,2);
+ packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x083c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085f,clif->pUseSkillToId,2,4,6);
+ packet(0x0869,clif->pMoveToKafra,2,4);
+ packet(0x086c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086f,clif->pDull/*,XXX*/);
+ packet(0x0874,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0886,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088f,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pDropItem,2,4);
+ packet(0x089f,clif->pPartyInvite2,2);
+ packet(0x08a2,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08aa,clif->pWalkToXY,2);
+ packet(0x091b,clif->pStoragePassword,0);
+ packet(0x0922,clif->pReqClickBuyingStore,2);
+ packet(0x0925,clif->pSolveCharName,2);
+ packet(0x0928,clif->pFriendsListAdd,2);
+ packet(0x092f,clif->pGetCharNameRequest,2);
+ packet(0x0936,clif->pReqCloseBuyingStore,0);
+ packet(0x0946,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0949,clif->pChangeDir,2,4);
+ packet(0x095e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0964,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0965,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0966,clif->pTickSend,2);
#endif
// 2016-11-09aRagexeRE, 2016-11-09bRagexeRE, 2016-11-09cRagexeRE, 2016-11-09dRagexeRE
#if PACKETVER == 20161109
- packet(0x02c4,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0361,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0362,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x085d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0865,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0870,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0876,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0881,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x088e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0898,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a7,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0927,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0937,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0954,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0956,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x02c4,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0361,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0362,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pTickSend,2);
+ packet(0x0366,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSolveCharName,2);
+ packet(0x085d,clif->pReqCloseBuyingStore,0);
+ packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0865,clif->pWalkToXY,2);
+ packet(0x086a,clif->pActionRequest,2,6);
+ packet(0x086d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0870,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0876,clif->pReqClickBuyingStore,2);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x0881,clif->pMoveToKafra,2,4);
+ packet(0x088e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0898,clif->pTakeItem,2);
+ packet(0x089a,clif->pDropItem,2,4);
+ packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089f,clif->pDull/*,XXX*/);
+ packet(0x08a7,clif->pHomMenu,2,4);
+ packet(0x08ad,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0927,clif->pPartyInvite2,2);
+ packet(0x0937,clif->pFriendsListAdd,2);
+ packet(0x093c,clif->pStoragePassword,0);
+ packet(0x093f,clif->pGetCharNameRequest,2);
+ packet(0x0954,clif->pUseSkillToId,2,4,6);
+ packet(0x0956,clif->pChangeDir,2,4);
#endif
// 2016-11-16bRagexeRE, 2016-11-16cRagexeRE
#if PACKETVER == 20161116
- packet(0x0368,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0369,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0835,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x085f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0864,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0885,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x088d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0890,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0892,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0893,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a1,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a2,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08ac,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0920,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0925,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x092a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0931,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x094a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0952,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0957,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x095b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0967,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
+ packet(0x0368,clif->pTickSend,2);
+ packet(0x0369,clif->pMoveToKafra,2,4);
+ packet(0x0835,clif->pFriendsListAdd,2);
+ packet(0x085f,clif->pDropItem,2,4);
+ packet(0x0864,clif->pPartyInvite2,2);
+ packet(0x086f,clif->pTakeItem,2);
+ packet(0x0885,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088b,clif->pHomMenu,2,4);
+ packet(0x088d,clif->pReqClickBuyingStore,2);
+ packet(0x088f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0890,clif->pWalkToXY,2);
+ packet(0x0892,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0893,clif->pActionRequest,2,6);
+ packet(0x08a1,clif->pChangeDir,2,4);
+ packet(0x08a2,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08ac,clif->pMoveFromKafra,2,4);
+ packet(0x0920,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0925,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x092a,clif->pUseSkillToId,2,4,6);
+ packet(0x0931,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x094a,clif->pGetCharNameRequest,2);
+ packet(0x0952,clif->pReqCloseBuyingStore,0);
+ packet(0x0957,clif->pSolveCharName,2);
+ packet(0x095b,clif->pStoragePassword,0);
+ packet(0x095d,clif->pDull/*,XXX*/);
+ packet(0x095f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0967,clif->pDull/*,XXX*/);
#endif
// 2016-11-23aRagexeRE
#if PACKETVER == 20161123
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0437,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0861,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0866,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x086f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0871,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0880,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0882,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a9,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0926,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0930,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x094d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x095a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0962,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0362,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0437,clif->pTickSend,2);
+ packet(0x085c,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0861,clif->pWalkToXY,2);
+ packet(0x0862,clif->pReqCloseBuyingStore,0);
+ packet(0x0866,clif->pSearchStoreInfoNextPage,0);
+ packet(0x086f,clif->pDropItem,2,4);
+ packet(0x0871,clif->pDull/*,XXX*/);
+ packet(0x087f,clif->pPartyInvite2,2);
+ packet(0x0880,clif->pStoragePassword,0);
+ packet(0x0882,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088b,clif->pGetCharNameRequest,2);
+ packet(0x089c,clif->pChangeDir,2,4);
+ packet(0x08a9,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08aa,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091a,clif->pMoveToKafra,2,4);
+ packet(0x0926,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092a,clif->pReqClickBuyingStore,2);
+ packet(0x092f,clif->pTakeItem,2);
+ packet(0x0930,clif->pHomMenu,2,4);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x094d,clif->pUseSkillToId,2,4,6);
+ packet(0x094f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x095a,clif->pDull/*,XXX*/);
+ packet(0x095b,clif->pActionRequest,2,6);
+ packet(0x0962,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pSolveCharName,2);
#endif
// 2016-11-30aRagexeRE, 2016-11-30bRagexeRE
#if PACKETVER == 20161130
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0931,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0943,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0954,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0959,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pChangeDir,2,4);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pTickSend,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x088f,clif->pDull/*,XXX*/);
+ packet(0x0931,clif->pHomMenu,2,4);
+ packet(0x0943,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0954,clif->pStoragePassword,0);
+ packet(0x0959,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-12-07cRagexeRE, 2016-12-07dRagexeRE, 2016-12-07eRagexeRE
#if PACKETVER == 20161207
- packet(0x023b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0875,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0886,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a1,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a2,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08ad,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0918,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0943,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0965,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pHomMenu,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pFriendsListAdd,2);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x0875,clif->pMoveToKafra,2,4);
+ packet(0x087e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0886,clif->pActionRequest,2,6);
+ packet(0x08a1,clif->pChangeDir,2,4);
+ packet(0x08a2,clif->pTakeItem,2);
+ packet(0x08ad,clif->pDropItem,2,4);
+ packet(0x0918,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091d,clif->pMoveFromKafra,2,4);
+ packet(0x0943,clif->pDull/*,XXX*/);
+ packet(0x095d,clif->pStoragePassword,0);
+ packet(0x0965,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-12-14bRagexeRE, 2016-12-14cRagexeRE
#if PACKETVER == 20161214
- packet(0x022d,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0281,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x02c4,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0436,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0862,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x086d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0887,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0899,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x092e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pReqClickBuyingStore,2);
+ packet(0x0281,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x02c4,clif->pMoveFromKafra,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pHomMenu,2,4);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0436,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pDull/*,XXX*/);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0862,clif->pFriendsListAdd,2);
+ packet(0x086d,clif->pPartyInvite2,2);
+ packet(0x0887,clif->pDropItem,2,4);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x0899,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092e,clif->pTakeItem,2);
+ packet(0x093d,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2016-12-21aRagexeRE, 2016-12-21bRagexeRE, 2016-12-21cRagexeRE, 2016-12-21dRagexeRE
#if PACKETVER == 20161221
- packet(0x035f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0438,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0817,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x085b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0866,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0876,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0881,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0885,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0890,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0899,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08aa,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0926,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0928,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x092e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0930,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0943,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0946,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x095a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0964,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0965,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x035f,clif->pTakeItem,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0366,clif->pSolveCharName,2);
+ packet(0x0438,clif->pWalkToXY,2);
+ packet(0x0817,clif->pMoveToKafra,2,4);
+ packet(0x085b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0866,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0876,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0881,clif->pGetCharNameRequest,2);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0885,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0890,clif->pStoragePassword,0);
+ packet(0x0899,clif->pDull/*,XXX*/);
+ packet(0x089a,clif->pMoveFromKafra,2,4);
+ packet(0x089b,clif->pActionRequest,2,6);
+ packet(0x08aa,clif->pTickSend,2);
+ packet(0x091e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0926,clif->pPartyInvite2,2);
+ packet(0x0928,clif->pFriendsListAdd,2);
+ packet(0x092c,clif->pReqCloseBuyingStore,0);
+ packet(0x092e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0930,clif->pHomMenu,2,4);
+ packet(0x0943,clif->pUseSkillToId,2,4,6);
+ packet(0x0946,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x095a,clif->pReqClickBuyingStore,2);
+ packet(0x0964,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0965,clif->pChangeDir,2,4);
#endif
// 2016-12-28aRagexeRE
#if PACKETVER == 20161228
- packet(0x0362,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x085a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0865,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x086a,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0870,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0871,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0875,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0886,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0889,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0893,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a3,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a5,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ab,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08ac,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08ad,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0929,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x092c,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0934,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0935,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0938,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x093d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0944,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
+ packet(0x0362,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x085a,clif->pGetCharNameRequest,2);
+ packet(0x085e,clif->pHomMenu,2,4);
+ packet(0x0865,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x086a,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086c,clif->pTakeItem,2);
+ packet(0x086d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0870,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0871,clif->pChangeDir,2,4);
+ packet(0x0875,clif->pReqCloseBuyingStore,0);
+ packet(0x087f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0886,clif->pWalkToXY,2);
+ packet(0x0889,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0893,clif->pDropItem,2,4);
+ packet(0x089f,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pUseSkillToId,2,4,6);
+ packet(0x08a3,clif->pReqClickBuyingStore,2);
+ packet(0x08a5,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ab,clif->pMoveFromKafra,2,4);
+ packet(0x08ac,clif->pSolveCharName,2);
+ packet(0x08ad,clif->pStoragePassword,0);
+ packet(0x091c,clif->pFriendsListAdd,2);
+ packet(0x0929,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x092c,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0934,clif->pPartyInvite2,2);
+ packet(0x0935,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pDull/*,XXX*/);
+ packet(0x093d,clif->pActionRequest,2,6);
+ packet(0x0944,clif->pTickSend,2);
#endif
// 2017-01-04bRagexeRE
#if PACKETVER == 20170104
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x085a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0896,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x085a,clif->pFriendsListAdd,2);
+ packet(0x087f,clif->pStoragePassword,0);
+ packet(0x0896,clif->pChangeDir,2,4);
+ packet(0x091b,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pUseSkillToId,2,4,6);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-01-11aRagexeRE
#if PACKETVER == 20170111
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a1,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a3,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a6,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0961,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0969,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pFriendsListAdd,2);
+ packet(0x087f,clif->pDull/*,XXX*/);
+ packet(0x088a,clif->pMoveToKafra,2,4);
+ packet(0x08a1,clif->pChangeDir,2,4);
+ packet(0x08a3,clif->pTakeItem,2);
+ packet(0x08a6,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091a,clif->pStoragePassword,0);
+ packet(0x091b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x094c,clif->pMoveFromKafra,2,4);
+ packet(0x0961,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0969,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-01-18aRagexeRE
#if PACKETVER == 20170118
- packet(0x022d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0364,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0865,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086f,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0873,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08ad,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0927,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0933,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0958,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0962,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x022d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0364,clif->pGetCharNameRequest,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pHomMenu,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pMoveFromKafra,2,4);
+ packet(0x0865,clif->pChangeDir,2,4);
+ packet(0x086f,clif->pTakeItem,2);
+ packet(0x0873,clif->pDull/*,XXX*/);
+ packet(0x089e,clif->pPartyInvite2,2);
+ packet(0x08ad,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0927,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pDropItem,2,4);
+ packet(0x0958,clif->pStoragePassword,0);
+ packet(0x0962,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pMoveToKafra,2,4);
#endif
// 2017-01-25aRagexeRE
#if PACKETVER == 20170125
- packet(0x0438,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0877,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0879,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0881,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0893,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0894,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0895,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0898,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0920,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x092b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0930,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0943,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0944,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0965,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0968,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x0438,clif->pActionRequest,2,6);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x0877,clif->pDropItem,2,4);
+ packet(0x0879,clif->pUseSkillToId,2,4,6);
+ packet(0x087b,clif->pTakeItem,2);
+ packet(0x087d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0881,clif->pChangeDir,2,4);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0893,clif->pStoragePassword,0);
+ packet(0x0894,clif->pDull/*,XXX*/);
+ packet(0x0895,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0898,clif->pSolveCharName,2);
+ packet(0x089b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091b,clif->pReqClickBuyingStore,2);
+ packet(0x091c,clif->pMoveToKafra,2,4);
+ packet(0x091d,clif->pReqCloseBuyingStore,0);
+ packet(0x0920,clif->pFriendsListAdd,2);
+ packet(0x0929,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x092b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0930,clif->pWalkToXY,2);
+ packet(0x093c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0943,clif->pTickSend,2);
+ packet(0x0944,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095c,clif->pMoveFromKafra,2,4);
+ packet(0x0965,clif->pGetCharNameRequest,2);
+ packet(0x0968,clif->pSearchStoreInfoNextPage,0);
#endif
// 2017-02-01aRagexeRE
#if PACKETVER == 20170201
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0875,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0879,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0881,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0884,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0886,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a4,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0919,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0920,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0938,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x094c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0966,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0969,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0815,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085e,clif->pChangeDir,2,4);
+ packet(0x0875,clif->pTakeItem,2);
+ packet(0x0879,clif->pDull/*,XXX*/);
+ packet(0x0881,clif->pMoveToKafra,2,4);
+ packet(0x0884,clif->pWalkToXY,2);
+ packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0886,clif->pStoragePassword,0);
+ packet(0x088b,clif->pDropItem,2,4);
+ packet(0x08a4,clif->pDull/*,XXX*/);
+ packet(0x0919,clif->pFriendsListAdd,2);
+ packet(0x0920,clif->pPartyInvite2,2);
+ packet(0x0938,clif->pHomMenu,2,4);
+ packet(0x0940,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x094c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0966,clif->pMoveFromKafra,2,4);
+ packet(0x0969,clif->pItemListWindowSelected,2,4,8);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-02-08aRagexeRE, 2017-02-08bRagexeRE
#if PACKETVER == 20170208
- packet(0x02c4,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0860,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0892,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a1,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ac,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0921,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0923,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0932,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0937,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x02c4,clif->pDull/*,XXX*/);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085c,clif->pPartyInvite2,2);
+ packet(0x0860,clif->pChangeDir,2,4);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x088c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0892,clif->pFriendsListAdd,2);
+ packet(0x08a1,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ac,clif->pMoveToKafra,2,4);
+ packet(0x0921,clif->pDropItem,2,4);
+ packet(0x0923,clif->pTakeItem,2);
+ packet(0x092d,clif->pHomMenu,2,4);
+ packet(0x0932,clif->pMoveFromKafra,2,4);
+ packet(0x0937,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-02-15aRagexeRE
#if PACKETVER == 20170215
- packet(0x02c4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x035f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x083c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0876,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087c,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087e,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0883,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x088b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0890,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0896,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a8,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0925,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x092d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0942,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0962,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0969,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
+ packet(0x02c4,clif->pStoragePassword,0);
+ packet(0x035f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0360,clif->pTickSend,2);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x083c,clif->pActionRequest,2,6);
+ packet(0x085c,clif->pDropItem,2,4);
+ packet(0x0876,clif->pFriendsListAdd,2);
+ packet(0x087c,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087d,clif->pChangeDir,2,4);
+ packet(0x087e,clif->pUseSkillToId,2,4,6);
+ packet(0x0883,clif->pSolveCharName,2);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x088a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x088b,clif->pPartyInvite2,2);
+ packet(0x088c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0890,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0896,clif->pDull/*,XXX*/);
+ packet(0x089b,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a8,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091c,clif->pReqCloseBuyingStore,0);
+ packet(0x0925,clif->pMoveFromKafra,2,4);
+ packet(0x092b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x092d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0942,clif->pTakeItem,2);
+ packet(0x094e,clif->pGetCharNameRequest,2);
+ packet(0x095f,clif->pReqClickBuyingStore,2);
+ packet(0x0962,clif->pHomMenu,2,4);
+ packet(0x0969,clif->pWalkToXY,2);
#endif
// 2017-02-22aRagexeRE
#if PACKETVER == 20170222
- packet(0x0202,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0866,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0870,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0871,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0877,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0894,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a3,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a8,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0937,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0939,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0943,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0962,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pHomMenu,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pFriendsListAdd,2);
+ packet(0x0866,clif->pDropItem,2,4);
+ packet(0x0870,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0871,clif->pDull/*,XXX*/);
+ packet(0x0877,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0894,clif->pTakeItem,2);
+ packet(0x08a3,clif->pChangeDir,2,4);
+ packet(0x08a8,clif->pPartyInvite2,2);
+ packet(0x0937,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0939,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0943,clif->pStoragePassword,0);
+ packet(0x095d,clif->pMoveToKafra,2,4);
+ packet(0x0962,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-02-28aRagexeRE
#if PACKETVER == 20170228
- packet(0x022d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0360,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0819,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0863,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086b,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0873,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0874,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0876,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0883,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0884,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0889,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0893,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x089e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a0,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a7,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091f,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0937,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0944,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0947,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0948,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0952,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0955,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x022d,clif->pDropItem,2,4);
+ packet(0x0360,clif->pActionRequest,2,6);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0819,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x085e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0863,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086b,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0873,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0874,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0876,clif->pReqCloseBuyingStore,0);
+ packet(0x0883,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0884,clif->pWalkToXY,2);
+ packet(0x0889,clif->pChangeDir,2,4);
+ packet(0x0893,clif->pGetCharNameRequest,2);
+ packet(0x089e,clif->pMoveToKafra,2,4);
+ packet(0x08a0,clif->pFriendsListAdd,2);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08a7,clif->pReqClickBuyingStore,2);
+ packet(0x091f,clif->pUseSkillToId,2,4,6);
+ packet(0x092a,clif->pTakeItem,2);
+ packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0937,clif->pTickSend,2);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x0944,clif->pMoveFromKafra,2,4);
+ packet(0x0947,clif->pSolveCharName,2);
+ packet(0x0948,clif->pPartyInvite2,2);
+ packet(0x0952,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0955,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2017-03-08bRagexeRE
#if PACKETVER == 20170308
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087d,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-03-15cRagexeRE
#if PACKETVER == 20170315
- packet(0x02c4,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x035f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0360,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0366,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0436,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x07ec,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0863,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x086a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0872,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0884,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x088b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x088d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08aa,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x091d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0920,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0922,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0944,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x094a,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x094e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0950,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0952,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x02c4,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x035f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0360,clif->pChangeDir,2,4);
+ packet(0x0366,clif->pTakeItem,2);
+ packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0436,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x07ec,clif->pTickSend,2);
+ packet(0x085c,clif->pDull/*,XXX*/);
+ packet(0x0863,clif->pHomMenu,2,4);
+ packet(0x086a,clif->pMoveFromKafra,2,4);
+ packet(0x0872,clif->pFriendsListAdd,2);
+ packet(0x087b,clif->pPartyInvite2,2);
+ packet(0x0884,clif->pActionRequest,2,6);
+ packet(0x088b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x088d,clif->pDull/*,XXX*/);
+ packet(0x088f,clif->pWalkToXY,2);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x089c,clif->pReqCloseBuyingStore,0);
+ packet(0x08aa,clif->pMoveToKafra,2,4);
+ packet(0x091a,clif->pDropItem,2,4);
+ packet(0x091b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x091d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0920,clif->pSolveCharName,2);
+ packet(0x0922,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0944,clif->pGetCharNameRequest,2);
+ packet(0x094a,clif->pReqClickBuyingStore,2);
+ packet(0x094e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0950,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0952,clif->pStoragePassword,0);
#endif
// 2017-03-22aRagexeRE, 2017-03-22bRagexeRE
#if PACKETVER == 20170322
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x091a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x091a,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-03-29cRagexeRE, 2017-03-29dRagexeRE
#if PACKETVER == 20170329
- packet(0x0281,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0363,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x087a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0888,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a8,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0917,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0926,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0929,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x092e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0937,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0939,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0949,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0363,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pStoragePassword,0);
+ packet(0x087a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0888,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a8,clif->pDropItem,2,4);
+ packet(0x0917,clif->pDull/*,XXX*/);
+ packet(0x0926,clif->pChangeDir,2,4);
+ packet(0x0929,clif->pTakeItem,2);
+ packet(0x092e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0937,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0939,clif->pFriendsListAdd,2);
+ packet(0x0949,clif->pMoveFromKafra,2,4);
+ packet(0x095f,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-04-05bRagexeRE, 2017-04-05cRagexeRE
#if PACKETVER == 20170405
- packet(0x022d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0281,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0860,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0864,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0865,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0893,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a5,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094c,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0964,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0281,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pActionRequest,2,6);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pTakeItem,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pHomMenu,2,4);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pMoveToKafra,2,4);
+ packet(0x0860,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0864,clif->pPartyInvite2,2);
+ packet(0x0865,clif->pChangeDir,2,4);
+ packet(0x086f,clif->pFriendsListAdd,2);
+ packet(0x0893,clif->pMoveFromKafra,2,4);
+ packet(0x08a5,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094c,clif->pStoragePassword,0);
+ packet(0x094f,clif->pDull/*,XXX*/);
+ packet(0x0964,clif->pDropItem,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-04-12aRagexeRE
#if PACKETVER == 20170412
- packet(0x023b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0365,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0869,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0878,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0879,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0890,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0893,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0898,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x089a,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08a1,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x091e,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0929,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0938,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0942,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0945,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0949,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x094f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0952,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0959,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x095d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x023b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0365,clif->pReqClickBuyingStore,2);
+ packet(0x0863,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0869,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086d,clif->pMoveFromKafra,2,4);
+ packet(0x0878,clif->pWalkToXY,2);
+ packet(0x0879,clif->pDull/*,XXX*/);
+ packet(0x087b,clif->pUseSkillToId,2,4,6);
+ packet(0x088b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0890,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0893,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0898,clif->pSolveCharName,2);
+ packet(0x089a,clif->pHomMenu,2,4);
+ packet(0x089c,clif->pDropItem,2,4);
+ packet(0x08a1,clif->pActionRequest,2,6);
+ packet(0x091a,clif->pChangeDir,2,4);
+ packet(0x091e,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0929,clif->pTickSend,2);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0942,clif->pFriendsListAdd,2);
+ packet(0x0945,clif->pMoveToKafra,2,4);
+ packet(0x0949,clif->pSearchStoreInfoNextPage,0);
+ packet(0x094f,clif->pPartyInvite2,2);
+ packet(0x0952,clif->pReqCloseBuyingStore,0);
+ packet(0x0959,clif->pTakeItem,2);
+ packet(0x095b,clif->pGetCharNameRequest,2);
+ packet(0x095c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x095d,clif->pStoragePassword,0);
#endif
// 2017-04-19bRagexeRE
#if PACKETVER == 20170419
- packet(0x0811,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0819,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0838,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0862,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0868,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0872,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0881,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0897,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0898,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08aa,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0920,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0922,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0930,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0931,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0935,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0942,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x095c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0963,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0965,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
+ packet(0x0811,clif->pChangeDir,2,4);
+ packet(0x0819,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0838,clif->pGetCharNameRequest,2);
+ packet(0x085a,clif->pActionRequest,2,6);
+ packet(0x085e,clif->pWalkToXY,2);
+ packet(0x0862,clif->pPartyInvite2,2);
+ packet(0x0868,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0872,clif->pDull/*,XXX*/);
+ packet(0x0881,clif->pStoragePassword,0);
+ packet(0x088d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088f,clif->pHomMenu,2,4);
+ packet(0x0897,clif->pDropItem,2,4);
+ packet(0x0898,clif->pTickSend,2);
+ packet(0x089d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08aa,clif->pMoveToKafra,2,4);
+ packet(0x091b,clif->pSolveCharName,2);
+ packet(0x0920,clif->pUseSkillToId,2,4,6);
+ packet(0x0922,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0930,clif->pMoveFromKafra,2,4);
+ packet(0x0931,clif->pReqCloseBuyingStore,0);
+ packet(0x0935,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093a,clif->pFriendsListAdd,2);
+ packet(0x093f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0942,clif->pSearchStoreInfoNextPage,0);
+ packet(0x095c,clif->pTakeItem,2);
+ packet(0x095d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0963,clif->pDull/*,XXX*/);
+ packet(0x0965,clif->pReqClickBuyingStore,2);
#endif
// 2017-04-26dRagexeRE
#if PACKETVER == 20170426
- packet(0x0281,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0866,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0887,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0899,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a2,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0927,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0940,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0958,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0963,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pStoragePassword,0);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0866,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086f,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0887,clif->pSolveCharName,2);
+ packet(0x0899,clif->pMoveFromKafra,2,4);
+ packet(0x089c,clif->pHomMenu,2,4);
+ packet(0x08a2,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a4,clif->pTakeItem,2);
+ packet(0x091f,clif->pDull/*,XXX*/);
+ packet(0x0927,clif->pChangeDir,2,4);
+ packet(0x0940,clif->pDropItem,2,4);
+ packet(0x0958,clif->pFriendsListAdd,2);
+ packet(0x0963,clif->pMoveToKafra,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-05-02dRagexeRE
#if PACKETVER == 20170502
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0875,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0894,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x089c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093c,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0950,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0875,clif->pStoragePassword,0);
+ packet(0x0894,clif->pChangeDir,2,4);
+ packet(0x089c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093c,clif->pFriendsListAdd,2);
+ packet(0x0950,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-05-17aRagexeRE, 2017-05-17bRagexeRE
#if PACKETVER == 20170517
- packet(0x0364,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0367,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0815,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0817,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0868,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0875,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087b,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x088d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0894,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0896,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0899,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x089f,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a2,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a8,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08aa,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x091b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0923,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x093b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0945,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0946,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0947,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0958,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0960,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0964,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x0364,clif->pDull/*,XXX*/);
+ packet(0x0367,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0815,clif->pUseSkillToId,2,4,6);
+ packet(0x0817,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0868,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0875,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087b,clif->pSolveCharName,2);
+ packet(0x087d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088c,clif->pMoveFromKafra,2,4);
+ packet(0x088d,clif->pChangeDir,2,4);
+ packet(0x0894,clif->pGetCharNameRequest,2);
+ packet(0x0896,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0899,clif->pPartyInvite2,2);
+ packet(0x089e,clif->pDull/*,XXX*/);
+ packet(0x089f,clif->pReqCloseBuyingStore,0);
+ packet(0x08a2,clif->pTickSend,2);
+ packet(0x08a8,clif->pWalkToXY,2);
+ packet(0x08aa,clif->pMoveToKafra,2,4);
+ packet(0x091b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0923,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x093b,clif->pDropItem,2,4);
+ packet(0x0945,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0946,clif->pReqClickBuyingStore,2);
+ packet(0x0947,clif->pStoragePassword,0);
+ packet(0x0958,clif->pHomMenu,2,4);
+ packet(0x0960,clif->pFriendsListAdd,2);
+ packet(0x0964,clif->pTakeItem,2);
#endif
// 2017-05-24aRagexeRE
#if PACKETVER == 20170524
- packet(0x0364,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0368,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0802,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0860,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0864,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0866,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0868,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x086d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0873,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0874,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0882,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0894,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089c,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a1,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0923,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0925,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0934,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0946,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0958,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x095b,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0964,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0967,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0968,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
+ packet(0x0364,clif->pPartyInvite2,2);
+ packet(0x0368,clif->pStoragePassword,0);
+ packet(0x0802,clif->pDropItem,2,4);
+ packet(0x085e,clif->pActionRequest,2,6);
+ packet(0x085f,clif->pReqClickBuyingStore,2);
+ packet(0x0860,clif->pTickSend,2);
+ packet(0x0864,clif->pTakeItem,2);
+ packet(0x0866,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0868,clif->pMoveToKafra,2,4);
+ packet(0x086d,clif->pHomMenu,2,4);
+ packet(0x0873,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0874,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0882,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088d,clif->pUseSkillToId,2,4,6);
+ packet(0x0894,clif->pMoveFromKafra,2,4);
+ packet(0x089c,clif->pWalkToXY,2);
+ packet(0x08a1,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x0923,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0925,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0934,clif->pChangeDir,2,4);
+ packet(0x0946,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0958,clif->pDull/*,XXX*/);
+ packet(0x095a,clif->pGetCharNameRequest,2);
+ packet(0x095b,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0964,clif->pReqCloseBuyingStore,0);
+ packet(0x0967,clif->pFriendsListAdd,2);
+ packet(0x0968,clif->pSolveCharName,2);
#endif
// 2017-05-31aRagexeRE
#if PACKETVER == 20170531
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0369,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x07ec,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0819,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x085f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0861,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0873,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0875,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0878,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0885,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x088d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0894,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a2,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08ac,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08ad,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0933,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0940,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0945,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0963,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0968,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x0361,clif->pChangeDir,2,4);
+ packet(0x0369,clif->pUseSkillToId,2,4,6);
+ packet(0x07e4,clif->pWalkToXY,2);
+ packet(0x07ec,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0819,clif->pTickSend,2);
+ packet(0x085b,clif->pDull/*,XXX*/);
+ packet(0x085f,clif->pSolveCharName,2);
+ packet(0x0861,clif->pFriendsListAdd,2);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x0873,clif->pReqCloseBuyingStore,0);
+ packet(0x0875,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0878,clif->pPartyInvite2,2);
+ packet(0x087b,clif->pActionRequest,2,6);
+ packet(0x0885,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088d,clif->pDropItem,2,4);
+ packet(0x0894,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x089c,clif->pHomMenu,2,4);
+ packet(0x08a2,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08ac,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08ad,clif->pMoveToKafra,2,4);
+ packet(0x092d,clif->pGetCharNameRequest,2);
+ packet(0x0933,clif->pMoveFromKafra,2,4);
+ packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0940,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0945,clif->pReqClickBuyingStore,2);
+ packet(0x0963,clif->pTakeItem,2);
+ packet(0x0968,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2017-06-07bRagexeRE, 2017-06-07cRagexeRE
#if PACKETVER == 20170607
- packet(0x0361,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0364,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x07e4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x085e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0862,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0864,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0871,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0873,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0875,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0885,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x088a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0897,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x089d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a9,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08ab,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0917,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0918,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0919,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0925,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0927,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0931,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0934,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0938,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x093d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0942,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0944,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0949,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0361,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0364,clif->pStoragePassword,0);
+ packet(0x07e4,clif->pTickSend,2);
+ packet(0x085a,clif->pChangeDir,2,4);
+ packet(0x085e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0862,clif->pGetCharNameRequest,2);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x0864,clif->pDropItem,2,4);
+ packet(0x0871,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0873,clif->pDull/*,XXX*/);
+ packet(0x0875,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0885,clif->pFriendsListAdd,2);
+ packet(0x088a,clif->pMoveFromKafra,2,4);
+ packet(0x0897,clif->pTakeItem,2);
+ packet(0x089d,clif->pMoveToKafra,2,4);
+ packet(0x08a9,clif->pUseSkillToId,2,4,6);
+ packet(0x08ab,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0917,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0918,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0919,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0925,clif->pPartyInvite2,2);
+ packet(0x0927,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0931,clif->pDull/*,XXX*/);
+ packet(0x0934,clif->pWalkToXY,2);
+ packet(0x0938,clif->pActionRequest,2,6);
+ packet(0x093d,clif->pReqCloseBuyingStore,0);
+ packet(0x0942,clif->pHomMenu,2,4);
+ packet(0x0944,clif->pSolveCharName,2);
+ packet(0x0949,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2017-06-14bRagexeRE
#if PACKETVER == 20170614
- packet(0x023b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0361,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0364,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0367,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0437,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0838,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x083c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0860,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0865,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0866,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0867,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x086b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0877,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x087e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0889,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0899,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ad,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0928,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0936,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0944,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0957,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0963,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x023b,clif->pMoveFromKafra,2,4);
+ packet(0x0361,clif->pWalkToXY,2);
+ packet(0x0364,clif->pHomMenu,2,4);
+ packet(0x0367,clif->pDropItem,2,4);
+ packet(0x0437,clif->pStoragePassword,0);
+ packet(0x0838,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x083c,clif->pActionRequest,2,6);
+ packet(0x0860,clif->pReqClickBuyingStore,2);
+ packet(0x0865,clif->pDull/*,XXX*/);
+ packet(0x0866,clif->pTickSend,2);
+ packet(0x0867,clif->pFriendsListAdd,2);
+ packet(0x086b,clif->pReqCloseBuyingStore,0);
+ packet(0x086c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0877,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x087d,clif->pSolveCharName,2);
+ packet(0x087e,clif->pChangeDir,2,4);
+ packet(0x0889,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0899,clif->pPartyInvite2,2);
+ packet(0x089d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a2,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ad,clif->pTakeItem,2);
+ packet(0x091b,clif->pUseSkillToId,2,4,6);
+ packet(0x0928,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0936,clif->pGetCharNameRequest,2);
+ packet(0x0944,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0957,clif->pDull/*,XXX*/);
+ packet(0x0963,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2017-06-21aRagexeRE
#if PACKETVER == 20170621
- packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0365,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0366,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0802,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0885,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0889,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a8,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0956,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0957,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x095c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0961,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pTakeItem,2);
+ packet(0x0365,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0366,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pFriendsListAdd,2);
+ packet(0x0802,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085d,clif->pChangeDir,2,4);
+ packet(0x087d,clif->pDropItem,2,4);
+ packet(0x0885,clif->pPartyInvite2,2);
+ packet(0x0889,clif->pMoveFromKafra,2,4);
+ packet(0x08a8,clif->pHomMenu,2,4);
+ packet(0x0956,clif->pDull/*,XXX*/);
+ packet(0x0957,clif->pStoragePassword,0);
+ packet(0x095b,clif->pDull/*,XXX*/);
+ packet(0x095c,clif->pMoveToKafra,2,4);
+ packet(0x0961,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-06-28bRagexeRE
#if PACKETVER == 20170628
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0863,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0863,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-07-05aRagexeRE
#if PACKETVER == 20170705
- packet(0x0202,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x02c4,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0886,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x088d,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x092f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0930,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0932,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0934,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x094c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pStoragePassword,0);
+ packet(0x02c4,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x0886,clif->pFriendsListAdd,2);
+ packet(0x088d,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pPartyInvite2,2);
+ packet(0x089a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089d,clif->pDropItem,2,4);
+ packet(0x091a,clif->pChangeDir,2,4);
+ packet(0x092f,clif->pDull/*,XXX*/);
+ packet(0x0930,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0932,clif->pTakeItem,2);
+ packet(0x0934,clif->pMoveFromKafra,2,4);
+ packet(0x094c,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-07-12bRagexeRE
#if PACKETVER == 20170712
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0944,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0944,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-07-19aRagexeRE
#if PACKETVER == 20170719
- packet(0x022d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0367,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0368,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0369,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x07e4,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085a,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x087d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0881,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0882,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0885,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0891,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0898,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089d,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a6,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a8,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091b,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x092c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x092e,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x092f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x093d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0944,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0966,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
+ packet(0x022d,clif->pActionRequest,2,6);
+ packet(0x0367,clif->pReqCloseBuyingStore,0);
+ packet(0x0368,clif->pDull/*,XXX*/);
+ packet(0x0369,clif->pHomMenu,2,4);
+ packet(0x07e4,clif->pGetCharNameRequest,2);
+ packet(0x085a,clif->pTickSend,2);
+ packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x086e,clif->pPartyInvite2,2);
+ packet(0x087d,clif->pTakeItem,2);
+ packet(0x0881,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0882,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0885,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0891,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0898,clif->pUseSkillToId,2,4,6);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x089d,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a6,clif->pMoveFromKafra,2,4);
+ packet(0x08a8,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091b,clif->pDropItem,2,4);
+ packet(0x091f,clif->pSolveCharName,2);
+ packet(0x092c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x092e,clif->pSearchStoreInfoNextPage,0);
+ packet(0x092f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x093d,clif->pWalkToXY,2);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x0944,clif->pChangeDir,2,4);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x0966,clif->pMoveToKafra,2,4);
#endif
// 2017-07-26cRagexeRE
#if PACKETVER == 20170726
- packet(0x0363,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0369,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0438,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0838,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0873,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0874,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0878,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0881,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0888,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a3,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a7,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08aa,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08ab,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08ac,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x091e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0921,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0923,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0943,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x094f,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0950,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0952,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0954,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0963,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x0363,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0369,clif->pUseSkillToId,2,4,6);
+ packet(0x0438,clif->pPartyInvite2,2);
+ packet(0x0838,clif->pReqCloseBuyingStore,0);
+ packet(0x0873,clif->pReqClickBuyingStore,2);
+ packet(0x0874,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0878,clif->pActionRequest,2,6);
+ packet(0x0881,clif->pDull/*,XXX*/);
+ packet(0x0888,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088e,clif->pWalkToXY,2);
+ packet(0x08a3,clif->pDull/*,XXX*/);
+ packet(0x08a7,clif->pStoragePassword,0);
+ packet(0x08aa,clif->pGetCharNameRequest,2);
+ packet(0x08ab,clif->pTakeItem,2);
+ packet(0x08ac,clif->pTickSend,2);
+ packet(0x091d,clif->pFriendsListAdd,2);
+ packet(0x091e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091f,clif->pHomMenu,2,4);
+ packet(0x0921,clif->pSolveCharName,2);
+ packet(0x0923,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0943,clif->pDropItem,2,4);
+ packet(0x094f,clif->pMoveFromKafra,2,4);
+ packet(0x0950,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0952,clif->pChangeDir,2,4);
+ packet(0x0954,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0963,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2017-08-01aRagexeRE
#if PACKETVER == 20170801
- packet(0x022d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0281,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0362,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095a,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pDropItem,2,4);
+ packet(0x0281,clif->pChangeDir,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0362,clif->pHomMenu,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087d,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x094f,clif->pFriendsListAdd,2);
+ packet(0x095a,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-08-09cRagexeRE
#if PACKETVER == 20170809
- packet(0x022d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0281,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0364,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0366,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0367,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x07e4,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0802,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0835,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0868,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x086e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086f,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0876,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0880,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0890,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0892,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0895,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0899,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a3,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a6,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0918,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0921,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x092b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0931,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0939,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0940,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x022d,clif->pDull/*,XXX*/);
+ packet(0x0281,clif->pMoveFromKafra,2,4);
+ packet(0x0364,clif->pPartyInvite2,2);
+ packet(0x0366,clif->pFriendsListAdd,2);
+ packet(0x0367,clif->pReqCloseBuyingStore,0);
+ packet(0x07e4,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0802,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0835,clif->pDropItem,2,4);
+ packet(0x0868,clif->pActionRequest,2,6);
+ packet(0x086e,clif->pChangeDir,2,4);
+ packet(0x086f,clif->pHomMenu,2,4);
+ packet(0x0876,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0880,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088c,clif->pUseSkillToId,2,4,6);
+ packet(0x0890,clif->pStoragePassword,0);
+ packet(0x0892,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0895,clif->pWalkToXY,2);
+ packet(0x0899,clif->pDull/*,XXX*/);
+ packet(0x08a3,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a6,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0918,clif->pTakeItem,2);
+ packet(0x0921,clif->pMoveToKafra,2,4);
+ packet(0x092a,clif->pGetCharNameRequest,2);
+ packet(0x092b,clif->pTickSend,2);
+ packet(0x0931,clif->pSolveCharName,2);
+ packet(0x0939,clif->pReqClickBuyingStore,2);
+ packet(0x093b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0940,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2017-08-16cRagexeRE, 2017-08-16dRagexeRE
#if PACKETVER == 20170816
- packet(0x022d,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x035f,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0361,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0438,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x085a,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0862,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0864,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x087e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0881,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0882,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0884,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0888,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0889,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x08a3,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a7,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a9,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08ac,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x091c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0921,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0925,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x093a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0940,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0950,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0959,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0960,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
+ packet(0x022d,clif->pGetCharNameRequest,2);
+ packet(0x035f,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0361,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0362,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0438,clif->pActionRequest,2,6);
+ packet(0x085a,clif->pSolveCharName,2);
+ packet(0x0862,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0864,clif->pReqCloseBuyingStore,0);
+ packet(0x087e,clif->pTakeItem,2);
+ packet(0x0881,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0882,clif->pStoragePassword,0);
+ packet(0x0884,clif->pDull/*,XXX*/);
+ packet(0x0888,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0889,clif->pTickSend,2);
+ packet(0x08a3,clif->pFriendsListAdd,2);
+ packet(0x08a7,clif->pDull/*,XXX*/);
+ packet(0x08a9,clif->pWalkToXY,2);
+ packet(0x08ac,clif->pHomMenu,2,4);
+ packet(0x091c,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0921,clif->pReqClickBuyingStore,2);
+ packet(0x0925,clif->pMoveFromKafra,2,4);
+ packet(0x092c,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x093a,clif->pPartyInvite2,2);
+ packet(0x093d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0940,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pDropItem,2,4);
+ packet(0x0950,clif->pChangeDir,2,4);
+ packet(0x0959,clif->pMoveToKafra,2,4);
+ packet(0x0960,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
#endif
// 2017-08-23aRagexeRE
#if PACKETVER == 20170823
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x086d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08ac,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pPartyInvite2,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pChangeDir,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x086d,clif->pStoragePassword,0);
+ packet(0x08ac,clif->pFriendsListAdd,2);
+ packet(0x095b,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-08-30aRagexeRE, 2017-08-30bRagexeRE
#if PACKETVER == 20170830
- packet(0x0281,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x02c4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0364,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0860,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0865,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x086a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0875,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0884,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0888,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0899,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089e,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a8,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0921,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0925,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x092e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0939,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x093e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0940,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0942,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0943,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0947,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0951,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0959,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x0281,clif->pChangeDir,2,4);
+ packet(0x02c4,clif->pTakeItem,2);
+ packet(0x0363,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0364,clif->pDull/*,XXX*/);
+ packet(0x0860,clif->pReqCloseBuyingStore,0);
+ packet(0x0865,clif->pWalkToXY,2);
+ packet(0x086a,clif->pPartyInvite2,2);
+ packet(0x0875,clif->pDull/*,XXX*/);
+ packet(0x0884,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0888,clif->pUseSkillToId,2,4,6);
+ packet(0x0897,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0899,clif->pDropItem,2,4);
+ packet(0x089a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089e,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x08a8,clif->pMoveFromKafra,2,4);
+ packet(0x091e,clif->pTickSend,2);
+ packet(0x0921,clif->pHomMenu,2,4);
+ packet(0x0925,clif->pReqClickBuyingStore,2);
+ packet(0x092e,clif->pGetCharNameRequest,2);
+ packet(0x0939,clif->pFriendsListAdd,2);
+ packet(0x093e,clif->pActionRequest,2,6);
+ packet(0x0940,clif->pSolveCharName,2);
+ packet(0x0942,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0943,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0947,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0951,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0959,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-09-06cRagexeRE
#if PACKETVER == 20170906
- packet(0x0202,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0281,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0866,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a2,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a3,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a7,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x091a,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0953,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pDull/*,XXX*/);
+ packet(0x0281,clif->pStoragePassword,0);
+ packet(0x02c4,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pPartyInvite2,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pChangeDir,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pDropItem,2,4);
+ packet(0x0866,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086c,clif->pDull/*,XXX*/);
+ packet(0x087b,clif->pMoveToKafra,2,4);
+ packet(0x08a2,clif->pMoveFromKafra,2,4);
+ packet(0x08a3,clif->pFriendsListAdd,2);
+ packet(0x08a7,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x091a,clif->pTakeItem,2);
+ packet(0x091e,clif->pHomMenu,2,4);
+ packet(0x0953,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-09-13bRagexeRE
#if PACKETVER == 20170913
- packet(0x0281,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x035f,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0437,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x07e4,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0817,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0835,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x085a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0860,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0865,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0866,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x088c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0891,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0892,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a6,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a7,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08aa,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08ab,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08ac,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ad,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0920,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0923,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0925,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0927,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x095a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095c,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
+ packet(0x0281,clif->pGetCharNameRequest,2);
+ packet(0x035f,clif->pFriendsListAdd,2);
+ packet(0x0437,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x07e4,clif->pMoveFromKafra,2,4);
+ packet(0x0817,clif->pActionRequest,2,6);
+ packet(0x0835,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x085a,clif->pReqCloseBuyingStore,0);
+ packet(0x0860,clif->pTakeItem,2);
+ packet(0x0865,clif->pPartyInvite2,2);
+ packet(0x0866,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x088c,clif->pHomMenu,2,4);
+ packet(0x0890,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0891,clif->pMoveToKafra,2,4);
+ packet(0x0892,clif->pStoragePassword,0);
+ packet(0x08a6,clif->pReqClickBuyingStore,2);
+ packet(0x08a7,clif->pDull/*,XXX*/);
+ packet(0x08aa,clif->pUseSkillToId,2,4,6);
+ packet(0x08ab,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08ac,clif->pChangeDir,2,4);
+ packet(0x08ad,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091b,clif->pTickSend,2);
+ packet(0x091d,clif->pDropItem,2,4);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x0920,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0923,clif->pWalkToXY,2);
+ packet(0x0925,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0927,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x095a,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095c,clif->pSolveCharName,2);
#endif
// 2017-09-20bRagexeRE
#if PACKETVER == 20170920
- packet(0x0369,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0436,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x085a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0861,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0862,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0864,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0865,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x086c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0874,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0875,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0889,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x088e,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x089b,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0919,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x091e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0921,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0923,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0926,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0939,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0945,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x094c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0961,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0966,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x096a,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
+ packet(0x0369,clif->pTakeItem,2);
+ packet(0x0436,clif->pItemListWindowSelected,2,4,8);
+ packet(0x07ec,clif->pMoveFromKafra,2,4);
+ packet(0x085a,clif->pWalkToXY,2);
+ packet(0x0861,clif->pFriendsListAdd,2);
+ packet(0x0862,clif->pUseSkillToId,2,4,6);
+ packet(0x0864,clif->pStoragePassword,0);
+ packet(0x0865,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086a,clif->pPartyInvite2,2);
+ packet(0x086c,clif->pDropItem,2,4);
+ packet(0x0874,clif->pReqCloseBuyingStore,0);
+ packet(0x0875,clif->pDull/*,XXX*/);
+ packet(0x0889,clif->pGetCharNameRequest,2);
+ packet(0x088e,clif->pTickSend,2);
+ packet(0x089b,clif->pActionRequest,2,6);
+ packet(0x0919,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x091e,clif->pDull/*,XXX*/);
+ packet(0x0921,clif->pSolveCharName,2);
+ packet(0x0923,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0926,clif->pMoveToKafra,2,4);
+ packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0937,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0939,clif->pChangeDir,2,4);
+ packet(0x0945,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x094c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095d,clif->pHomMenu,2,4);
+ packet(0x0961,clif->pReqClickBuyingStore,2);
+ packet(0x0966,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x096a,clif->pSearchStoreInfoNextPage,0);
#endif
// 2017-09-27bRagexeRE, 2017-09-27dRagexeRE
#if PACKETVER == 20170927
- packet(0x02c4,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x035f,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0361,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0366,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x085c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0873,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0875,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x087e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x088b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0899,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x089a,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08a3,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a5,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a6,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08ad,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x091e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0922,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0923,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0927,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x093b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0942,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0945,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x094d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0959,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x02c4,clif->pHomMenu,2,4);
+ packet(0x035f,clif->pGetCharNameRequest,2);
+ packet(0x0361,clif->pDull/*,XXX*/);
+ packet(0x0362,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0366,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x085c,clif->pUseSkillToId,2,4,6);
+ packet(0x0873,clif->pSolveCharName,2);
+ packet(0x0875,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x087e,clif->pChangeDir,2,4);
+ packet(0x088b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0899,clif->pActionRequest,2,6);
+ packet(0x089a,clif->pStoragePassword,0);
+ packet(0x089b,clif->pMoveFromKafra,2,4);
+ packet(0x08a3,clif->pReqCloseBuyingStore,0);
+ packet(0x08a5,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a6,clif->pDull/*,XXX*/);
+ packet(0x08ad,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x091e,clif->pReqClickBuyingStore,2);
+ packet(0x0922,clif->pPartyInvite2,2);
+ packet(0x0923,clif->pDropItem,2,4);
+ packet(0x0927,clif->pWalkToXY,2);
+ packet(0x093b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0942,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0945,clif->pTickSend,2);
+ packet(0x094b,clif->pFriendsListAdd,2);
+ packet(0x094d,clif->pTakeItem,2);
+ packet(0x0959,clif->pMoveToKafra,2,4);
+ packet(0x095a,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-10-02cRagexeRE
#if PACKETVER == 20171002
- packet(0x022d,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0885,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0897,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0928,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x092d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0934,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093b,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x093e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0943,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x095f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x022d,clif->pDropItem,2,4);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pHomMenu,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0885,clif->pMoveToKafra,2,4);
+ packet(0x0897,clif->pChangeDir,2,4);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0928,clif->pItemListWindowSelected,2,4,8);
+ packet(0x092d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0934,clif->pStoragePassword,0);
+ packet(0x093b,clif->pMoveFromKafra,2,4);
+ packet(0x093d,clif->pTakeItem,2);
+ packet(0x093e,clif->pDull/*,XXX*/);
+ packet(0x0943,clif->pPartyInvite2,2);
+ packet(0x095f,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-10-11aRagexeRE, 2017-10-11bRagexeRE
#if PACKETVER == 20171011
- packet(0x023b,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0882,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0950,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0954,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x023b,clif->pWalkToXY,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pStoragePassword,0);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087b,clif->pFriendsListAdd,2);
+ packet(0x0882,clif->pHomMenu,2,4);
+ packet(0x0950,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0954,clif->pChangeDir,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-10-18aRagexeRE
#if PACKETVER == 20171018
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0363,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x087a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0889,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089a,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a6,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0938,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0944,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x094a,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x094f,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0363,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pTakeItem,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086a,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pDull/*,XXX*/);
+ packet(0x087e,clif->pHomMenu,2,4);
+ packet(0x0889,clif->pMoveFromKafra,2,4);
+ packet(0x089a,clif->pDropItem,2,4);
+ packet(0x089f,clif->pPartyInvite2,2);
+ packet(0x08a6,clif->pChangeDir,2,4);
+ packet(0x0938,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0944,clif->pStoragePassword,0);
+ packet(0x094a,clif->pFriendsListAdd,2);
+ packet(0x094f,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-10-25bRagexeRE, 2017-10-25cRagexeRE, 2017-10-25dRagexeRE, 2017-10-25eRagexeRE
#if PACKETVER == 20171025
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a2,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x08a2,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-11-01bRagexeRE
#if PACKETVER == 20171101
- packet(0x022d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0369,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0438,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0835,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x085b,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0860,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0872,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0876,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0886,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0890,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0895,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0899,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x089b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x089c,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a0,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x08ab,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08ad,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x091b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0939,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094a,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x094d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0957,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x095a,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0962,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0966,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x022d,clif->pStoragePassword,0);
+ packet(0x0368,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0369,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0438,clif->pTickSend,2);
+ packet(0x0835,clif->pDropItem,2,4);
+ packet(0x085b,clif->pHomMenu,2,4);
+ packet(0x0860,clif->pGetCharNameRequest,2);
+ packet(0x086c,clif->pUseSkillToId,2,4,6);
+ packet(0x0872,clif->pFriendsListAdd,2);
+ packet(0x0876,clif->pChangeDir,2,4);
+ packet(0x0886,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pReqClickBuyingStore,2);
+ packet(0x0890,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0895,clif->pDull/*,XXX*/);
+ packet(0x0899,clif->pPartyInvite2,2);
+ packet(0x089b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x089c,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a0,clif->pMoveFromKafra,2,4);
+ packet(0x08ab,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08ad,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x091b,clif->pMoveToKafra,2,4);
+ packet(0x0939,clif->pWalkToXY,2);
+ packet(0x094a,clif->pReqCloseBuyingStore,0);
+ packet(0x094d,clif->pSolveCharName,2);
+ packet(0x0952,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0957,clif->pActionRequest,2,6);
+ packet(0x095a,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0962,clif->pTakeItem,2);
+ packet(0x0966,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-11-08bRagexeRE
#if PACKETVER == 20171108
- packet(0x0202,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x07e4,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0815,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0819,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x085d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0863,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0878,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x087e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0884,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0896,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x08a2,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x08a9,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08ad,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0940,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0941,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0945,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0947,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0949,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x094e,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0958,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x095a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0963,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0965,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0967,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x0202,clif->pTickSend,2);
+ packet(0x0361,clif->pSearchStoreInfoNextPage,0);
+ packet(0x07e4,clif->pSolveCharName,2);
+ packet(0x0815,clif->pStoragePassword,0);
+ packet(0x0819,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0838,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x085d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0863,clif->pWalkToXY,2);
+ packet(0x0878,clif->pFriendsListAdd,2);
+ packet(0x087e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0884,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0896,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x08a2,clif->pUseSkillToId,2,4,6);
+ packet(0x08a9,clif->pHomMenu,2,4);
+ packet(0x08ad,clif->pGetCharNameRequest,2);
+ packet(0x091d,clif->pReqCloseBuyingStore,0);
+ packet(0x091f,clif->pChangeDir,2,4);
+ packet(0x0940,clif->pReqClickBuyingStore,2);
+ packet(0x0941,clif->pMoveToKafra,2,4);
+ packet(0x0945,clif->pTakeItem,2);
+ packet(0x0947,clif->pDull/*,XXX*/);
+ packet(0x0949,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x094e,clif->pPartyInvite2,2);
+ packet(0x0958,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x095a,clif->pMoveFromKafra,2,4);
+ packet(0x0963,clif->pActionRequest,2,6);
+ packet(0x0965,clif->pDropItem,2,4);
+ packet(0x0967,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-11-15aRagexeRE
#if PACKETVER == 20171115
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0365,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x086d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x086f,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x087e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0883,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0890,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0898,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0926,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0958,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x095a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0365,clif->pDropItem,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pFriendsListAdd,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x086d,clif->pDull/*,XXX*/);
+ packet(0x086f,clif->pItemListWindowSelected,2,4,8);
+ packet(0x087e,clif->pMoveFromKafra,2,4);
+ packet(0x0883,clif->pDull/*,XXX*/);
+ packet(0x088b,clif->pMoveToKafra,2,4);
+ packet(0x0890,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0898,clif->pStoragePassword,0);
+ packet(0x08a4,clif->pChangeDir,2,4);
+ packet(0x0926,clif->pTakeItem,2);
+ packet(0x0958,clif->pHomMenu,2,4);
+ packet(0x095a,clif->pPartyInvite2,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-11-22bRagexeRE
#if PACKETVER == 20171122
- packet(0x0281,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x02c4,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x035f,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0838,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x083c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x085b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0862,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0867,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0877,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0885,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0890,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0891,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0893,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0897,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0898,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x089a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x089e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x08a6,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x08a9,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0920,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0923,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0934,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0945,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0947,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0962,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0968,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
+ packet(0x0281,clif->pSolveCharName,2);
+ packet(0x02c4,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x035f,clif->pDull/*,XXX*/);
+ packet(0x0838,clif->pMoveToKafra,2,4);
+ packet(0x083c,clif->pHomMenu,2,4);
+ packet(0x085b,clif->pGetCharNameRequest,2);
+ packet(0x0862,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0867,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0877,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0885,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pTickSend,2);
+ packet(0x0891,clif->pTakeItem,2);
+ packet(0x0893,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0897,clif->pChangeDir,2,4);
+ packet(0x0898,clif->pDropItem,2,4);
+ packet(0x089a,clif->pMoveFromKafra,2,4);
+ packet(0x089e,clif->pActionRequest,2,6);
+ packet(0x08a6,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x08a9,clif->pReqClickBuyingStore,2);
+ packet(0x091e,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0920,clif->pReqCloseBuyingStore,0);
+ packet(0x0923,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0934,clif->pStoragePassword,0);
+ packet(0x093b,clif->pUseSkillToId,2,4,6);
+ packet(0x0945,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x0947,clif->pWalkToXY,2);
+ packet(0x0962,clif->pPartyInvite2,2);
+ packet(0x0968,clif->pReqOpenBuyingStore,2,4,8,9,89);
#endif
// 2017-11-29aRagexeRE
#if PACKETVER == 20171129
- packet(0x02c4,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0363,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0365,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0862,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x086d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0876,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0878,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x08a5,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x094b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0953,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0966,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x02c4,clif->pChangeDir,2,4);
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0363,clif->pFriendsListAdd,2);
+ packet(0x0365,clif->pDropItem,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pPartyInvite2,2);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0862,clif->pTakeItem,2);
+ packet(0x086d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0876,clif->pDull/*,XXX*/);
+ packet(0x0878,clif->pStoragePassword,0);
+ packet(0x088a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089c,clif->pHomMenu,2,4);
+ packet(0x08a5,clif->pMoveToKafra,2,4);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x094b,clif->pDull/*,XXX*/);
+ packet(0x0953,clif->pMoveFromKafra,2,4);
+ packet(0x0966,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-12-06aRagexeRE
#if PACKETVER == 20171206
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0867,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x086a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x086e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0885,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0888,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0897,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x089d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08a2,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x08a4,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0923,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0936,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0942,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0958,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0961,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0867,clif->pDropItem,2,4);
+ packet(0x086a,clif->pDull/*,XXX*/);
+ packet(0x086e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0885,clif->pTickSend,2);
+ packet(0x0888,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0897,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x089d,clif->pStoragePassword,0);
+ packet(0x08a2,clif->pPartyInvite2,2);
+ packet(0x08a4,clif->pMoveFromKafra,2,4);
+ packet(0x091d,clif->pFriendsListAdd,2);
+ packet(0x0923,clif->pMoveToKafra,2,4);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x0936,clif->pChangeDir,2,4);
+ packet(0x0942,clif->pHomMenu,2,4);
+ packet(0x0958,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0961,clif->pTakeItem,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-12-13bRagexeRE
#if PACKETVER == 20171213
- packet(0x0202,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0890,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0957,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pPartyInvite2,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pFriendsListAdd,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pDull/*,XXX*/);
+ packet(0x0890,clif->pStoragePassword,0);
+ packet(0x091a,clif->pChangeDir,2,4);
+ packet(0x0957,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-12-20aRagexeRE
#if PACKETVER == 20171220
- packet(0x0281,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0366,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0369,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0436,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0437,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0872,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0873,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0880,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0882,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0885,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0899,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x089e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a7,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x091b,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091e,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0924,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0929,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0933,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x093e,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0941,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0946,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x094e,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0951,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0957,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0964,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
+ packet(0x0281,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0366,clif->pMoveFromKafra,2,4);
+ packet(0x0369,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0436,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0437,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x085e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0861,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0872,clif->pUseSkillToId,2,4,6);
+ packet(0x0873,clif->pGetCharNameRequest,2);
+ packet(0x0880,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0882,clif->pTickSend,2);
+ packet(0x0885,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0899,clif->pStoragePassword,0);
+ packet(0x089e,clif->pWalkToXY,2);
+ packet(0x08a7,clif->pReqCloseBuyingStore,0);
+ packet(0x091b,clif->pTakeItem,2);
+ packet(0x091e,clif->pSolveCharName,2);
+ packet(0x0924,clif->pMoveToKafra,2,4);
+ packet(0x0929,clif->pDropItem,2,4);
+ packet(0x0933,clif->pChangeDir,2,4);
+ packet(0x093e,clif->pActionRequest,2,6);
+ packet(0x0941,clif->pReqClickBuyingStore,2);
+ packet(0x0946,clif->pDull/*,XXX*/);
+ packet(0x094e,clif->pDull/*,XXX*/);
+ packet(0x0951,clif->pHomMenu,2,4);
+ packet(0x0957,clif->pFriendsListAdd,2);
+ packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0964,clif->pPartyInvite2,2);
#endif
// 2017-12-27aRagexeRE
#if PACKETVER == 20171227
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x087d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0888,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x088a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a0,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a5,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092c,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x092e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0938,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0945,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0969,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pActionRequest,2,6);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pChangeDir,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pGetCharNameRequest,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x087d,clif->pStoragePassword,0);
+ packet(0x0888,clif->pMoveFromKafra,2,4);
+ packet(0x088a,clif->pDull/*,XXX*/);
+ packet(0x088d,clif->pTakeItem,2);
+ packet(0x08a0,clif->pMoveToKafra,2,4);
+ packet(0x08a5,clif->pHomMenu,2,4);
+ packet(0x092c,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x092e,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pPartyInvite2,2);
+ packet(0x0945,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x0969,clif->pDropItem,2,4);
+ packet(0x096a,clif->pPartyBookingRegisterReq,2,4);
#endif
// 2018-01-03aRagexeRE, 2018-01-03bRagexeRE
#if PACKETVER == 20180103
- packet(0x02c4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0363,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0865,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x086b,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0872,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0876,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0879,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088e,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x089f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x08a9,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ab,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x08ac,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091d,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0922,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0926,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0927,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x092c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0935,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0938,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0941,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0946,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0948,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094e,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x095d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x095f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
+ packet(0x02c4,clif->pMoveToKafra,2,4);
+ packet(0x0363,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0865,clif->pDull/*,XXX*/);
+ packet(0x086b,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0872,clif->pReqClickBuyingStore,2);
+ packet(0x0876,clif->pTickSend,2);
+ packet(0x0879,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088e,clif->pReqCloseBuyingStore,0);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x089f,clif->pSolveCharName,2);
+ packet(0x08a9,clif->pChangeDir,2,4);
+ packet(0x08ab,clif->pGetCharNameRequest,2);
+ packet(0x08ac,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091d,clif->pActionRequest,2,6);
+ packet(0x0922,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0926,clif->pDull/*,XXX*/);
+ packet(0x0927,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092c,clif->pMoveFromKafra,2,4);
+ packet(0x0935,clif->pTakeItem,2);
+ packet(0x0938,clif->pUseSkillToId,2,4,6);
+ packet(0x0941,clif->pWalkToXY,2);
+ packet(0x0946,clif->pStoragePassword,0);
+ packet(0x0948,clif->pHomMenu,2,4);
+ packet(0x094e,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x095d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x095f,clif->pDropItem,2,4);
+ packet(0x0960,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
#endif
// 2018-01-17aRagexeRE
#if PACKETVER == 20180117
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0875,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0875,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-01-24bRagexeRE
#if PACKETVER == 20180124
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0802,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0868,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x086a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x086f,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x087a,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0888,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0890,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0919,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0946,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x094d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0958,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0961,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pMoveToKafra,2,4);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0802,clif->pDropItem,2,4);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pStoragePassword,0);
+ packet(0x0868,clif->pDull/*,XXX*/);
+ packet(0x086a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x086f,clif->pDull/*,XXX*/);
+ packet(0x087a,clif->pPartyInvite2,2);
+ packet(0x0888,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0890,clif->pMoveFromKafra,2,4);
+ packet(0x0919,clif->pFriendsListAdd,2);
+ packet(0x0940,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0946,clif->pItemListWindowSelected,2,4,8);
+ packet(0x094d,clif->pTakeItem,2);
+ packet(0x0958,clif->pChangeDir,2,4);
+ packet(0x0961,clif->pHomMenu,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-02-07bRagexeRE
#if PACKETVER == 20180207
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0360,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0870,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0940,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0950,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pReqClickBuyingStore,2);
+ packet(0x0360,clif->pDull/*,XXX*/);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0870,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pFriendsListAdd,2);
+ packet(0x092c,clif->pHomMenu,2,4);
+ packet(0x092e,clif->pChangeDir,2,4);
+ packet(0x0940,clif->pTickSend,2);
+ packet(0x0950,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-02-13aRagexeRE
#if PACKETVER == 20180213
- packet(0x0369,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0802,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0817,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x085a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x086f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0874,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0875,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0878,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x087b,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0882,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x088c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0892,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0898,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x089c,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x08a3,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08a9,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08ad,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0917,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0922,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0924,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0926,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0933,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0936,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x093c,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0943,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0955,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0962,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x0369,clif->pStoragePassword,0);
+ packet(0x0802,clif->pDropItem,2,4);
+ packet(0x0817,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x085a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x086f,clif->pPartyInvite2,2);
+ packet(0x0874,clif->pTickSend,2);
+ packet(0x0875,clif->pMoveFromKafra,2,4);
+ packet(0x0878,clif->pChangeDir,2,4);
+ packet(0x087b,clif->pReqClickBuyingStore,2);
+ packet(0x0882,clif->pUseSkillToId,2,4,6);
+ packet(0x088c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0892,clif->pTakeItem,2);
+ packet(0x0898,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x089c,clif->pDull/*,XXX*/);
+ packet(0x08a3,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x08a5,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08a9,clif->pReqCloseBuyingStore,0);
+ packet(0x08ad,clif->pSolveCharName,2);
+ packet(0x0917,clif->pFriendsListAdd,2);
+ packet(0x0922,clif->pWalkToXY,2);
+ packet(0x0924,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0926,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pActionRequest,2,6);
+ packet(0x0936,clif->pSearchStoreInfoNextPage,0);
+ packet(0x093c,clif->pGetCharNameRequest,2);
+ packet(0x0943,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0955,clif->pMoveToKafra,2,4);
+ packet(0x095a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0962,clif->pHomMenu,2,4);
#endif
// 2018-02-21aRagexeRE, 2018-02-21bRagexeRE
#if PACKETVER == 20180221
- packet(0x0202,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0366,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0436,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0838,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0867,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086c,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0871,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0876,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0879,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x087d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0880,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0881,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0883,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x088f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0891,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0897,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0899,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x089d,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0917,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x091e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0929,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x093d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x094b,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x094e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0957,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0964,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x096a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
+ packet(0x0202,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0366,clif->pDull/*,XXX*/);
+ packet(0x0436,clif->pFriendsListAdd,2);
+ packet(0x0838,clif->pChangeDir,2,4);
+ packet(0x0867,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086c,clif->pReqClickBuyingStore,2);
+ packet(0x086f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0871,clif->pDropItem,2,4);
+ packet(0x0876,clif->pHomMenu,2,4);
+ packet(0x0879,clif->pMoveToKafra,2,4);
+ packet(0x087d,clif->pWalkToXY,2);
+ packet(0x0880,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0881,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0883,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x088f,clif->pSolveCharName,2);
+ packet(0x0891,clif->pDull/*,XXX*/);
+ packet(0x0897,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0899,clif->pSearchStoreInfoNextPage,0);
+ packet(0x089d,clif->pTickSend,2);
+ packet(0x0917,clif->pStoragePassword,0);
+ packet(0x091e,clif->pMoveFromKafra,2,4);
+ packet(0x0929,clif->pReqCloseBuyingStore,0);
+ packet(0x093d,clif->pPartyInvite2,2);
+ packet(0x094b,clif->pUseSkillToId,2,4,6);
+ packet(0x094d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x094e,clif->pTakeItem,2);
+ packet(0x0957,clif->pGetCharNameRequest,2);
+ packet(0x0964,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x096a,clif->pActionRequest,2,6);
#endif
// 2018-03-07bRagexeRE
#if PACKETVER == 20180307
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x035f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0437,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x07e4,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0861,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0862,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0864,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x086c,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0870,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0872,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0877,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x088d,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0893,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a6,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x08aa,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08ab,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0917,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0920,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0937,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0939,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x093d,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0941,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0944,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0948,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0951,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0954,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0957,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0969,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
-#endif
-
-// 2018-03-21aRagexeRE, 2018-03-28bRagexeRE, 2018-04-04cRagexeRE, 2018-04-18bRagexeRE, 2018-04-25cRagexeRE, 2018-05-02bRagexeRE, 2018-05-02dRagexeRE, 2018-05-16cRagexeRE, 2018-05-23aRagexeRE, 2018-05-30bRagexeRE, 2018-05-30cRagexeRE, 2018-06-05bRagexeRE, 2018-06-12aRagexeRE, 2018-06-12bRagexeRE, 2018-06-20dRagexeRE, 2018-06-20eRagexeRE, 2018-06-21aRagexeRE
+ packet(0x0281,clif->pDull/*,XXX*/);
+ packet(0x035f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0437,clif->pDropItem,2,4);
+ packet(0x07e4,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0861,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0862,clif->pReqClickBuyingStore,2);
+ packet(0x0864,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x086c,clif->pTickSend,2);
+ packet(0x0870,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0872,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0877,clif->pWalkToXY,2);
+ packet(0x088d,clif->pMoveFromKafra,2,4);
+ packet(0x0893,clif->pUseSkillToId,2,4,6);
+ packet(0x089b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a6,clif->pSearchStoreInfoNextPage,0);
+ packet(0x08aa,clif->pFriendsListAdd,2);
+ packet(0x08ab,clif->pChangeDir,2,4);
+ packet(0x0917,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0920,clif->pMoveToKafra,2,4);
+ packet(0x0937,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0939,clif->pStoragePassword,0);
+ packet(0x093d,clif->pReqCloseBuyingStore,0);
+ packet(0x0941,clif->pGetCharNameRequest,2);
+ packet(0x0944,clif->pHomMenu,2,4);
+ packet(0x0948,clif->pPartyInvite2,2);
+ packet(0x0951,clif->pDull/*,XXX*/);
+ packet(0x0954,clif->pTakeItem,2);
+ packet(0x0957,clif->pSolveCharName,2);
+ packet(0x0969,clif->pActionRequest,2,6);
+#endif
+
+// 2018-03-21aRagexeRE, 2018-03-28bRagexeRE, 2018-04-04cRagexeRE, 2018-04-18bRagexeRE, 2018-04-25cRagexeRE, 2018-05-02bRagexeRE, 2018-05-02dRagexeRE, 2018-05-16cRagexeRE, 2018-05-23aRagexeRE, 2018-05-30bRagexeRE, 2018-05-30cRagexeRE, 2018-06-05bRagexeRE, 2018-06-12aRagexeRE, 2018-06-12bRagexeRE, 2018-06-20dRagexeRE, 2018-06-20eRagexeRE, 2018-06-21aRagexeRE, 2018-07-04aRagexeRE, 2018-07-11aRagexeRE, 2018-07-18bRagexeRE, 2018-07-18bRagexeRE1, 2018-07-18cRagexeRE, 2018-08-01cRagexeRE, 2018-08-08bRagexeRE, 2018-08-22cRagexeRE, 2018-08-29aRagexeRE, 2018-08-29bRagexeRE, 2018-09-12dRagexeRE, 2018-09-19aRagexeRE, 2018-10-02aRagexeRE, 2018-10-02bRagexeRE, 2018-10-17_02aRagexeRE, 2018-10-17_03aRagexeRE, 2018-10-17bRagexeRE, 2018-10-31cRagexeRE, 2018-11-07aRagexeRE, 2018-11-14cRagexeRE, 2018-11-14dRagexeRE, 2018-11-21cRagexeRE, 2018-11-28aRagexeRE, 2018-12-05bRagexeRE, 2018-12-12aRagexeRE, 2018-12-12bRagexeRE, 2018-12-19bRagexeRE, 2018-12-26aRagexeRE, 2019-01-09bRagexeRE, 2019-01-16bRagexeRE, 2019-01-16cRagexeRE, 2019-01-23dRagexeRE, 2019-02-13IRagexeRE, 2019-02-20aRagexeRE, 2019-02-27bRagexeRE, 2019-02-28aRagexeRE, 2019-03-06bRagexeRE, 2019-03-06cRagexeRE, 2019-03-20aRagexeRE, 2019-03-22aRagexeRE, 2019-03-27bRagexeRE, 2019-04-03bRagexeRE, 2019-04-03cRagexeRE, 2019-04-17cRagexeRE, 2019-04-18aRagexeRE, 2019-05-08dRagexeRE, 2019-05-08eRagexeRE, 2019-05-22bRagexeRE, 2019-05-22cRagexeRE, 2019-05-29bRagexeRE, 2019-05-29cRagexeRE, 2019-05-30aRagexeRE, 2019-06-05hRagexeRE, 2019-06-05JRagexeRE, 2019-06-05LRagexeRE, 2019-06-19cRagexeRE, 2019-06-26bRagexeRE, 2019-07-03bRagexeRE, 2019-07-17cRagexeRE, 2019-07-17dRagexeRE, 2019-07-24bRagexeRE, 2019-07-31bRagexeRE, 2019-08-02aRagexeRE, 2019-08-07dRagexeRE, 2019-08-21cRagexeRE, 2019-08-21dRagexeRE, 2019-08-28aRagexeRE, 2019-09-04bRagexeRE, 2019-09-18cRagexeRE, 2019-09-25aRagexeRE, 2019-09-25bRagexeRE, 2019-10-02bRagexeRE, 2019-10-02dRagexeRE, 2019-10-02dRagexeRE_2, 2019-10-16fRagexeRE, 2019-10-16gRagexeRE, 2019-10-23aRagexeRE, 2019-10-30bRagexeRE, 2019-11-06bRagexeRE, 2019-11-07aRagexeRE, 2019-11-13eRagexeRE, 2019-11-20cRagexeRE, 2019-11-27aRagexeRE, 2019-12-04aRagexeRE, 2019-12-04bRagexeRE, 2019-12-04cRagexeRE, 2019-12-11fRagexeRE, 2019-12-18bRagexeRE, 2019-12-24aRagexeRE, 2019-12-24bRagexeRE, 2020-01-08bRagexeRE, 2020-01-22cRagexeRE, 2020-02-05aRagexeRE, 2020-02-12aRagexeRE, 2020-02-19eRagexeRE, 2020-03-04aRagexeRE
#if PACKETVER == 20180321 || \
PACKETVER == 20180328 || \
PACKETVER == 20180404 || \
@@ -9631,40 +9631,8 @@
PACKETVER == 20180605 || \
PACKETVER == 20180612 || \
PACKETVER == 20180620 || \
- PACKETVER == 20180621
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
-#endif
-
-// 2018-07-04aRagexeRE, 2018-07-11aRagexeRE, 2018-07-18bRagexeRE, 2018-07-18bRagexeRE1, 2018-07-18cRagexeRE, 2018-08-01cRagexeRE, 2018-08-08bRagexeRE, 2018-08-22cRagexeRE, 2018-08-29aRagexeRE, 2018-08-29bRagexeRE, 2018-09-12dRagexeRE, 2018-09-19aRagexeRE, 2018-10-02aRagexeRE, 2018-10-02bRagexeRE, 2018-10-17_02aRagexeRE, 2018-10-17_03aRagexeRE, 2018-10-17bRagexeRE, 2018-10-31cRagexeRE, 2018-11-07aRagexeRE, 2018-11-14cRagexeRE, 2018-11-14dRagexeRE, 2018-11-21cRagexeRE, 2018-11-28aRagexeRE, 2018-12-05bRagexeRE, 2018-12-12aRagexeRE, 2018-12-12bRagexeRE, 2018-12-19bRagexeRE, 2018-12-26aRagexeRE, 2019-01-09bRagexeRE, 2019-01-16bRagexeRE, 2019-01-16cRagexeRE, 2019-01-23dRagexeRE, 2019-02-13IRagexeRE, 2019-02-20aRagexeRE, 2019-02-27bRagexeRE, 2019-02-28aRagexeRE, 2019-03-06bRagexeRE, 2019-03-06cRagexeRE, 2019-03-20aRagexeRE, 2019-03-22aRagexeRE, 2019-03-27bRagexeRE, 2019-04-03bRagexeRE, 2019-04-03cRagexeRE, 2019-04-17cRagexeRE, 2019-04-18aRagexeRE, 2019-05-08dRagexeRE, 2019-05-08eRagexeRE, 2019-05-22bRagexeRE, 2019-05-22cRagexeRE, 2019-05-29bRagexeRE, 2019-05-29cRagexeRE, 2019-05-30aRagexeRE, 2019-06-05hRagexeRE, 2019-06-05JRagexeRE, 2019-06-05LRagexeRE, 2019-06-19cRagexeRE, 2019-06-26bRagexeRE, 2019-07-03bRagexeRE, 2019-07-17cRagexeRE, 2019-07-17dRagexeRE, 2019-07-24bRagexeRE, 2019-07-31bRagexeRE, 2019-08-02aRagexeRE, 2019-08-07dRagexeRE, 2019-08-21cRagexeRE, 2019-08-21dRagexeRE, 2019-08-28aRagexeRE
-#if PACKETVER == 20180704 || \
+ PACKETVER == 20180621 || \
+ PACKETVER == 20180704 || \
PACKETVER == 20180711 || \
PACKETVER == 20180718 || \
PACKETVER == 20180801 || \
@@ -9712,40 +9680,8 @@
PACKETVER == 20190802 || \
PACKETVER == 20190807 || \
PACKETVER == 20190821 || \
- PACKETVER >= 20190828
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 14
-#endif
-
-// 2019-09-04bRagexeRE, 2019-09-18cRagexeRE, 2019-09-25aRagexeRE, 2019-09-25bRagexeRE, 2019-10-02bRagexeRE, 2019-10-02dRagexeRE, 2019-10-02dRagexeRE_2, 2019-10-16fRagexeRE, 2019-10-16gRagexeRE, 2019-10-23aRagexeRE, 2019-10-30bRagexeRE, 2019-11-06bRagexeRE, 2019-11-07aRagexeRE, 2019-11-13eRagexeRE, 2019-11-20cRagexeRE, 2019-11-27aRagexeRE, 2019-12-04aRagexeRE, 2019-12-04bRagexeRE, 2019-12-04cRagexeRE, 2019-12-11fRagexeRE, 2019-12-18bRagexeRE, 2019-12-24aRagexeRE, 2019-12-24bRagexeRE, 2020-01-08bRagexeRE, 2020-01-22cRagexeRE, 2020-02-05aRagexeRE, 2020-02-12aRagexeRE, 2020-02-19eRagexeRE, 2020-03-04aRagexeRE
-#if PACKETVER == 20190904 || \
+ PACKETVER == 20190828 || \
+ PACKETVER == 20190904 || \
PACKETVER == 20190918 || \
PACKETVER == 20190925 || \
PACKETVER == 20191002 || \
@@ -9766,36 +9702,36 @@
PACKETVER == 20200205 || \
PACKETVER == 20200212 || \
PACKETVER == 20200219 || \
- PACKETVER == 20200304
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 31
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 14
+ PACKETVER >= 20200304
+ packet(0x0202,clif->pFriendsListAdd,2);
+ packet(0x022d,clif->pHomMenu,2,4);
+ packet(0x023b,clif->pStoragePassword,0);
+ packet(0x0281,clif->pDull/*,XXX*/);
+ packet(0x02c4,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pWalkToXY,2);
+ packet(0x0360,clif->pTickSend,2);
+ packet(0x0361,clif->pChangeDir,2,4);
+ packet(0x0362,clif->pTakeItem,2);
+ packet(0x0363,clif->pDropItem,2,4);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0365,clif->pMoveFromKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pGetCharNameRequest,2);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x0436,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0438,clif->pUseSkillToId,2,4,6);
+ packet(0x07e4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x07ec,clif->pDull/*,XXX*/);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0815,clif->pReqCloseBuyingStore,0);
+ packet(0x0817,clif->pReqClickBuyingStore,2);
+ packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0838,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
diff --git a/src/map/packets_shuffle_zero.h b/src/map/packets_shuffle_zero.h
index b7c26dbe7..42459bb87 100644
--- a/src/map/packets_shuffle_zero.h
+++ b/src/map/packets_shuffle_zero.h
@@ -37,7 +37,7 @@
/* This file is autogenerated, please do not commit manual changes */
-// 2017-10-18aRagexe_zero, 2017-10-19aRagexe_zero, 2017-10-23aRagexe_zero, 2017-10-23bRagexe_zero, 2017-10-23cRagexe_zero, 2017-10-24aRagexe_2_zero, 2017-10-24aRagexe_zero, 2017-10-25bRagexe_zero, 2017-10-27aRagexe_zero, 2017-10-27bRagexe_zero, 2017-10-30aRagexe_zero, 2017-10-31aRagexe_zero, 2017-11-09aRagexe_zero, 2017-11-13aRagexe_zero, 2017-11-13bRagexe_zero, 2018-03-15aRagexe_zero, 2018-03-21aRagexe_zero, 2018-03-21bRagexe_zero, 2018-03-28_1aRagexe_zero, 2018-03-28cRagexe_zero, 2018-04-11aRagexe_zero, 2018-04-25_3aRagexe_zero, 2018-05-09_3aRagexe_zero, 2018-05-23aRagexe_zero, 2018-06-05bRagexe_zero, 2018-06-05cRagexe_zero, 2018-06-27aRagexe_zero, 2018-07-03aRagexe_zero, 2018-07-11_2aRagexe_zero, 2018-07-25_2aRagexe_zero, 2018-08-01aRagexe_zero, 2018-08-08_2aRagexe_zero, 2018-08-22aRagexe_zero, 2018-08-29aRagexe_zero, 2018-09-05aRagexe_zero, 2018-09-12aRagexe_zero, 2018-09-19aRagexe_zero, 2018-09-28aRagexe_zero, 2018-10-10_2aRagexe_zero, 2018-10-24_2aRagexe_zero
+// 2017-10-18aRagexe_zero, 2017-10-19aRagexe_zero, 2017-10-23aRagexe_zero, 2017-10-23bRagexe_zero, 2017-10-23cRagexe_zero, 2017-10-24aRagexe_2_zero, 2017-10-24aRagexe_zero, 2017-10-25bRagexe_zero, 2017-10-27aRagexe_zero, 2017-10-27bRagexe_zero, 2017-10-30aRagexe_zero, 2017-10-31aRagexe_zero, 2017-11-09aRagexe_zero, 2017-11-13aRagexe_zero, 2017-11-13bRagexe_zero, 2018-03-15aRagexe_zero, 2018-03-21aRagexe_zero, 2018-03-21bRagexe_zero, 2018-03-28_1aRagexe_zero, 2018-03-28cRagexe_zero, 2018-04-11aRagexe_zero, 2018-04-25_3aRagexe_zero, 2018-05-09_3aRagexe_zero, 2018-05-23aRagexe_zero, 2018-06-05bRagexe_zero, 2018-06-05cRagexe_zero, 2018-06-27aRagexe_zero, 2018-07-03aRagexe_zero, 2018-07-11_2aRagexe_zero, 2018-07-25_2aRagexe_zero, 2018-08-01aRagexe_zero, 2018-08-08_2aRagexe_zero, 2018-08-22aRagexe_zero, 2018-08-29aRagexe_zero, 2018-09-05aRagexe_zero, 2018-09-12aRagexe_zero, 2018-09-19aRagexe_zero, 2018-09-28aRagexe_zero, 2018-10-10_2aRagexe_zero, 2018-10-24_2aRagexe_zero, 2018-11-14aRagexe_zero, 2018-11-20aRagexe_zero, 2018-11-28aRagexe_zero, 2018-12-12aRagexe_zero, 2018-12-19aRagexe_zero, 2018-12-26_2aRagexe_zero, 2019-01-16_2aRagexe_zero, 2019-01-17_1aRagexe_zero, 2019-01-30_2aRagexe_zero, 2019-02-13aRagexe_zero, 2019-02-20aRagexe_zero, 2019-02-27aRagexe_zero, 2019-03-13aRagexe_zero, 2019-03-27_2aRagexe_zero, 2019-03-27_3aRagexe_zero, 2019-04-03aRagexe_zero, 2019-04-10bRagexe_zero, 2019-04-24aRagexe_zero, 2019-05-02aRagexe_zero, 2019-05-08_2aRagexe_zero, 2019-05-08aRagexe_zero, 2019-05-15aRagexe_zero, 2019-05-29aRagexe_zero, 2019-05-30aRagexe_zero, 2019-06-05_2aRagexe_zero, 2019-06-26_2aRagexe_zero, 2019-06-26_3aRagexe_zero, 2019-07-09aRagexe_zero, 2019-07-10_3aRagexe_zero, 2019-07-17aRagexe_zero, 2019-07-24aRagexe_zero, 2019-08-14_3aRagexe_zero, 2019-08-28_2aRagexe_zero, 2019-08-28_3aRagexe_zero, 2019-09-11aRagexe_zero, 2019-09-18_2aRagexe_zero, 2019-09-18aRagexe_zero, 2019-09-25_3aRagexe_zero, 2019-09-25_5aRagexe_zero, 2019-10-08_2aRagexe_zero, 2019-10-23_2aRagexe_zero, 2019-11-06aRagexe_zero, 2019-11-13aRagexe_zero, 2019-11-27_2aRagexe_zero, 2019-11-27aRagexe_zero, 2019-12-04aRagexe_zero, 2019-12-11_2aRagexe_zero, 2019-12-24_4aRagexe_zero, 2019-12-24_5aRagexe_zero, 2020-01-15_2aRagexe_zero, 2020-01-15aRagexe_zero, 2020-01-29_2aRagexe_zero, 2020-01-29aRagexe_zero, 2020-02-12aRagexe_zero, 2020-02-26aRagexe_zero, 2020-02-26bRagexe_zero, 2020-03-04aRagexe_zero, 2020-03-18_2aRagexe_zero, 2020-04-01_2aRagexe_zero, 2020-04-14bRagexe_zero, 2020-05-06aRagexe_zero, 2020-05-20_5aRagexe_zero
#if PACKETVER == 20171018 || \
PACKETVER == 20171019 || \
PACKETVER == 20171023 || \
@@ -69,238 +69,289 @@
PACKETVER == 20180919 || \
PACKETVER == 20180928 || \
PACKETVER == 20181010 || \
- PACKETVER == 20181024
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ PACKETVER == 20181024 || \
+ PACKETVER == 20181114 || \
+ PACKETVER == 20181120 || \
+ PACKETVER == 20181128 || \
+ PACKETVER == 20181212 || \
+ PACKETVER == 20181219 || \
+ PACKETVER == 20181226 || \
+ PACKETVER == 20190116 || \
+ PACKETVER == 20190117 || \
+ PACKETVER == 20190130 || \
+ PACKETVER == 20190213 || \
+ PACKETVER == 20190220 || \
+ PACKETVER == 20190227 || \
+ PACKETVER == 20190313 || \
+ PACKETVER == 20190327 || \
+ PACKETVER == 20190403 || \
+ PACKETVER == 20190410 || \
+ PACKETVER == 20190424 || \
+ PACKETVER == 20190502 || \
+ PACKETVER == 20190508 || \
+ PACKETVER == 20190515 || \
+ PACKETVER == 20190529 || \
+ PACKETVER == 20190530 || \
+ PACKETVER == 20190605 || \
+ PACKETVER == 20190626 || \
+ PACKETVER == 20190709 || \
+ PACKETVER == 20190710 || \
+ PACKETVER == 20190717 || \
+ PACKETVER == 20190724 || \
+ PACKETVER == 20190814 || \
+ PACKETVER == 20190828 || \
+ PACKETVER == 20190911 || \
+ PACKETVER == 20190918 || \
+ PACKETVER == 20190925 || \
+ PACKETVER == 20191008 || \
+ PACKETVER == 20191023 || \
+ PACKETVER == 20191106 || \
+ PACKETVER == 20191113 || \
+ PACKETVER == 20191127 || \
+ PACKETVER == 20191204 || \
+ PACKETVER == 20191211 || \
+ PACKETVER == 20191224 || \
+ PACKETVER == 20200115 || \
+ PACKETVER == 20200129 || \
+ PACKETVER == 20200212 || \
+ PACKETVER == 20200226 || \
+ PACKETVER == 20200304 || \
+ PACKETVER == 20200318 || \
+ PACKETVER == 20200401 || \
+ PACKETVER == 20200414 || \
+ PACKETVER == 20200506 || \
+ PACKETVER >= 20200520
+ packet(0x0202,clif->pFriendsListAdd,2);
+ packet(0x022d,clif->pHomMenu,2,4);
+ packet(0x023b,clif->pStoragePassword,0);
+ packet(0x0281,clif->pDull/*,XXX*/);
+ packet(0x02c4,clif->pPartyInvite2,2);
+ packet(0x035f,clif->pWalkToXY,2);
+ packet(0x0360,clif->pTickSend,2);
+ packet(0x0361,clif->pChangeDir,2,4);
+ packet(0x0362,clif->pTakeItem,2);
+ packet(0x0363,clif->pDropItem,2,4);
+ packet(0x0364,clif->pMoveToKafra,2,4);
+ packet(0x0365,clif->pMoveFromKafra,2,4);
+ packet(0x0366,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pGetCharNameRequest,2);
+ packet(0x0369,clif->pSolveCharName,2);
+ packet(0x0436,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0437,clif->pActionRequest,2,6);
+ packet(0x0438,clif->pUseSkillToId,2,4,6);
+ packet(0x07e4,clif->pItemListWindowSelected,2,4,8);
+ packet(0x07ec,clif->pDull/*,XXX*/);
+ packet(0x0802,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0815,clif->pReqCloseBuyingStore,0);
+ packet(0x0817,clif->pReqClickBuyingStore,2);
+ packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0838,clif->pSearchStoreInfoNextPage,0);
+ packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2017-11-15aRagexe_zero, 2017-11-15bRagexe_zero, 2017-11-16aRagexe_zero, 2017-11-17aRagexe_zero
#if PACKETVER == 20171115 || \
PACKETVER == 20171116 || \
PACKETVER == 20171117
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0860,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0881,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0922,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0959,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0966,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0860,clif->pDull/*,XXX*/);
+ packet(0x0881,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091c,clif->pHomMenu,2,4);
+ packet(0x0922,clif->pStoragePassword,0);
+ packet(0x0959,clif->pChangeDir,2,4);
+ packet(0x0966,clif->pFriendsListAdd,2);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-11-21aRagexe_zero, 2017-11-22aRagexe_zero
#if PACKETVER == 20171121 || \
PACKETVER == 20171122
- packet(0x0202,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x022d,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0866,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0889,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0892,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08ad,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0918,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x091f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0928,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0943,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0950,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pStoragePassword,0);
+ packet(0x022d,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pHomMenu,2,4);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0866,clif->pMoveToKafra,2,4);
+ packet(0x0889,clif->pMoveFromKafra,2,4);
+ packet(0x0892,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089e,clif->pChangeDir,2,4);
+ packet(0x08ad,clif->pPartyInvite2,2);
+ packet(0x0918,clif->pTakeItem,2);
+ packet(0x091f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0928,clif->pFriendsListAdd,2);
+ packet(0x0943,clif->pDull/*,XXX*/);
+ packet(0x0950,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-11-23dRagexe_zero
#if PACKETVER == 20171123
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0367,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0860,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0876,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0882,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x088c,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0896,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x089e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x08a8,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x092b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0930,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0935,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0947,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0960,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0367,clif->pHomMenu,2,4);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085f,clif->pDropItem,2,4);
+ packet(0x0860,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0876,clif->pDull/*,XXX*/);
+ packet(0x0882,clif->pItemListWindowSelected,2,4,8);
+ packet(0x088c,clif->pPartyInvite2,2);
+ packet(0x0896,clif->pChangeDir,2,4);
+ packet(0x089e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x08a8,clif->pFriendsListAdd,2);
+ packet(0x092b,clif->pMoveToKafra,2,4);
+ packet(0x0930,clif->pTakeItem,2);
+ packet(0x0935,clif->pMoveFromKafra,2,4);
+ packet(0x0947,clif->pStoragePassword,0);
+ packet(0x0960,clif->pDull/*,XXX*/);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-11-27aRagexe_zero, 2017-11-27cRagexe_zero, 2017-11-28aRagexe_zero
#if PACKETVER == 20171127 || \
PACKETVER == 20171128
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0893,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0893,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-11-30bRagexe_zero
#if PACKETVER == 20171130
- packet(0x0361,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0864,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x086f,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0871,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0872,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0875,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0878,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0881,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0884,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0886,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0887,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x088b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0894,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0899,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x08a0,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x08a7,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0925,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0928,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0930,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0931,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0935,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093a,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0947,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x094c,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x095b,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x095f,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0960,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0965,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
+ packet(0x0361,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0864,clif->pGetCharNameRequest,2);
+ packet(0x086f,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0871,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0872,clif->pReqClickBuyingStore,2);
+ packet(0x0875,clif->pTakeItem,2);
+ packet(0x0878,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0881,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0884,clif->pDropItem,2,4);
+ packet(0x0886,clif->pReqCloseBuyingStore,0);
+ packet(0x0887,clif->pStoragePassword,0);
+ packet(0x088b,clif->pMoveToKafra,2,4);
+ packet(0x0894,clif->pWalkToXY,2);
+ packet(0x0899,clif->pDull/*,XXX*/);
+ packet(0x08a0,clif->pChangeDir,2,4);
+ packet(0x08a7,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0925,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0928,clif->pDull/*,XXX*/);
+ packet(0x0930,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0931,clif->pFriendsListAdd,2);
+ packet(0x0935,clif->pMoveFromKafra,2,4);
+ packet(0x093a,clif->pActionRequest,2,6);
+ packet(0x0947,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x094c,clif->pHomMenu,2,4);
+ packet(0x094f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x095b,clif->pTickSend,2);
+ packet(0x095f,clif->pPartyInvite2,2);
+ packet(0x0960,clif->pSolveCharName,2);
+ packet(0x0965,clif->pUseSkillToId,2,4,6);
#endif
// 2017-12-04bRagexe_zero
#if PACKETVER == 20171204
- packet(0x0281,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x085b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086f,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x087d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0887,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0892,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0896,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x08aa,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0917,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0921,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0924,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0937,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0960,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0281,clif->pTakeItem,2);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x085b,clif->pDull/*,XXX*/);
+ packet(0x086f,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x087d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0885,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0887,clif->pChangeDir,2,4);
+ packet(0x0892,clif->pDull/*,XXX*/);
+ packet(0x0896,clif->pStoragePassword,0);
+ packet(0x08aa,clif->pPartyInvite2,2);
+ packet(0x0917,clif->pMoveFromKafra,2,4);
+ packet(0x091b,clif->pFriendsListAdd,2);
+ packet(0x0921,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0924,clif->pHomMenu,2,4);
+ packet(0x0937,clif->pMoveToKafra,2,4);
+ packet(0x0960,clif->pDropItem,2,4);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2017-12-06aRagexe_zero, 2017-12-06bRagexe_zero, 2017-12-06cRagexe_zero, 2017-12-06dRagexe_zero, 2017-12-08aRagexe_zero, 2017-12-08cRagexe_zero, 2017-12-08dRagexe_zero, 2017-12-09bRagexe_zero, 2017-12-09cRagexe_zero, 2017-12-10aRagexe_zero, 2017-12-11bRagexe_zero, 2017-12-12aRagexe_zero, 2017-12-13aRagexe_zero, 2017-12-13bRagexe_zero, 2017-12-13cRagexe_zero
@@ -311,545 +362,435 @@
PACKETVER == 20171211 || \
PACKETVER == 20171212 || \
PACKETVER == 20171213
- packet(0x0281,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0366,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0436,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0835,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x083c,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0860,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0862,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0864,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0870,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0878,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x087a,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x087b,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0885,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x088d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0893,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0897,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x089e,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a4,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x08ac,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0920,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0934,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0936,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x093a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0940,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0941,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0959,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x095c,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x095f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
+ packet(0x0281,clif->pUseSkillToId,2,4,6);
+ packet(0x0366,clif->pDropItem,2,4);
+ packet(0x0436,clif->pReqClickBuyingStore,2);
+ packet(0x0835,clif->pTakeItem,2);
+ packet(0x083c,clif->pDull/*,XXX*/);
+ packet(0x0860,clif->pDull/*,XXX*/);
+ packet(0x0862,clif->pChangeDir,2,4);
+ packet(0x0864,clif->pWalkToXY,2);
+ packet(0x0870,clif->pMoveToKafra,2,4);
+ packet(0x0878,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x087a,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x087b,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0885,clif->pSolveCharName,2);
+ packet(0x088d,clif->pPartyInvite2,2);
+ packet(0x0893,clif->pFriendsListAdd,2);
+ packet(0x0897,clif->pHomMenu,2,4);
+ packet(0x089e,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a4,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x08ac,clif->pActionRequest,2,6);
+ packet(0x0920,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0934,clif->pReqCloseBuyingStore,0);
+ packet(0x0936,clif->pMoveFromKafra,2,4);
+ packet(0x093a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0940,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0941,clif->pGetCharNameRequest,2);
+ packet(0x0959,clif->pStoragePassword,0);
+ packet(0x095b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x095c,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x095f,clif->pTickSend,2);
#endif
// 2017-12-14cRagexe_zero
#if PACKETVER == 20171214
- packet(0x023b,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x02c4,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0438,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x085b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x085e,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0862,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0864,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x086a,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0871,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0873,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0886,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x088b,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088c,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0892,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0894,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0897,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x08a3,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x08a5,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x08ac,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0933,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x094a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x094f,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0951,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x095a,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x095b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0960,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x096a,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
+ packet(0x023b,clif->pSearchStoreInfoNextPage,0);
+ packet(0x02c4,clif->pDropItem,2,4);
+ packet(0x0438,clif->pGetCharNameRequest,2);
+ packet(0x085b,clif->pStoragePassword,0);
+ packet(0x085e,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0862,clif->pSolveCharName,2);
+ packet(0x0864,clif->pDull/*,XXX*/);
+ packet(0x086a,clif->pWalkToXY,2);
+ packet(0x0871,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0873,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0886,clif->pReqClickBuyingStore,2);
+ packet(0x088b,clif->pDull/*,XXX*/);
+ packet(0x088c,clif->pMoveToKafra,2,4);
+ packet(0x0892,clif->pUseSkillToId,2,4,6);
+ packet(0x0894,clif->pTakeItem,2);
+ packet(0x0897,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x08a3,clif->pFriendsListAdd,2);
+ packet(0x08a5,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x08ac,clif->pReqCloseBuyingStore,0);
+ packet(0x0933,clif->pActionRequest,2,6);
+ packet(0x094a,clif->pChangeDir,2,4);
+ packet(0x094d,clif->pHomMenu,2,4);
+ packet(0x094f,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0951,clif->pPartyInvite2,2);
+ packet(0x095a,clif->pMoveFromKafra,2,4);
+ packet(0x095b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0960,clif->pTickSend,2);
+ packet(0x0969,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x096a,clif->pUseSkillToPos,2,4,6,8);
#endif
// 2017-12-20aRagexe_zero, 2017-12-21aRagexe_zero, 2017-12-21bRagexe_zero
#if PACKETVER == 20171220 || \
PACKETVER == 20171221
- packet(0x022d,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0281,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0438,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x07ec,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x085f,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0867,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x086c,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0872,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x087e,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0899,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x089b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x089c,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a3,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a5,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x08ad,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x091f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0921,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092d,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x092e,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0932,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0934,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0937,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x094d,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x095b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
+ packet(0x022d,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0281,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0438,clif->pGetCharNameRequest,2);
+ packet(0x07ec,clif->pReqClickBuyingStore,2);
+ packet(0x0819,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0838,clif->pTickSend,2);
+ packet(0x085f,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0867,clif->pSolveCharName,2);
+ packet(0x086c,clif->pTakeItem,2);
+ packet(0x0872,clif->pMoveFromKafra,2,4);
+ packet(0x087a,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x087e,clif->pDull/*,XXX*/);
+ packet(0x0899,clif->pWalkToXY,2);
+ packet(0x089b,clif->pDull/*,XXX*/);
+ packet(0x089c,clif->pReqCloseBuyingStore,0);
+ packet(0x08a3,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a5,clif->pDropItem,2,4);
+ packet(0x08ad,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x091f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0921,clif->pHomMenu,2,4);
+ packet(0x092d,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092e,clif->pFriendsListAdd,2);
+ packet(0x0932,clif->pPartyInvite2,2);
+ packet(0x0934,clif->pMoveToKafra,2,4);
+ packet(0x0937,clif->pActionRequest,2,6);
+ packet(0x094d,clif->pUseSkillToId,2,4,6);
+ packet(0x095b,clif->pStoragePassword,0);
+ packet(0x096a,clif->pChangeDir,2,4);
#endif
// 2017-12-27bRagexe_zero, 2017-12-29aRagexe_zero
#if PACKETVER == 20171227 || \
PACKETVER == 20171229
- packet(0x02c4,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0860,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x086c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0871,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0872,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0874,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0876,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0877,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0878,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x087b,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0885,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x088b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0894,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x089f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x091c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0920,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0925,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0930,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0939,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x093e,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0941,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0945,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0946,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x094b,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x095e,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0967,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0968,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
+ packet(0x02c4,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0860,clif->pChangeDir,2,4);
+ packet(0x086c,clif->pActionRequest,2,6);
+ packet(0x0871,clif->pSolveCharName,2);
+ packet(0x0872,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0874,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0876,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0877,clif->pDull/*,XXX*/);
+ packet(0x0878,clif->pTakeItem,2);
+ packet(0x087b,clif->pMoveToKafra,2,4);
+ packet(0x0885,clif->pMoveFromKafra,2,4);
+ packet(0x0889,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x088b,clif->pReqCloseBuyingStore,0);
+ packet(0x0894,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x089f,clif->pReqClickBuyingStore,2);
+ packet(0x091c,clif->pDropItem,2,4);
+ packet(0x0920,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0925,clif->pDull/*,XXX*/);
+ packet(0x092d,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0930,clif->pStoragePassword,0);
+ packet(0x0939,clif->pTickSend,2);
+ packet(0x093e,clif->pGetCharNameRequest,2);
+ packet(0x0941,clif->pFriendsListAdd,2);
+ packet(0x0945,clif->pPartyInvite2,2);
+ packet(0x0946,clif->pWalkToXY,2);
+ packet(0x094b,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x095e,clif->pHomMenu,2,4);
+ packet(0x0967,clif->pUseSkillToId,2,4,6);
+ packet(0x0968,clif->pItemListWindowSelected,2,4,8);
#endif
// 2018-01-03aRagexe_zero
#if PACKETVER == 20180103
- packet(0x035f,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0360,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x07e4,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x083c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0860,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0866,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x086d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0871,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0872,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0874,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x087b,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0885,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0888,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0890,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0896,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x089d,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x08a6,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x091e,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0924,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0938,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x093b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0956,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0958,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x095b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x095d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0964,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0966,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x096a,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
+ packet(0x035f,clif->pChangeDir,2,4);
+ packet(0x0360,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x07e4,clif->pWalkToXY,2);
+ packet(0x083c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0860,clif->pHomMenu,2,4);
+ packet(0x0866,clif->pItemListWindowSelected,2,4,8);
+ packet(0x086d,clif->pFriendsListAdd,2);
+ packet(0x0871,clif->pTickSend,2);
+ packet(0x0872,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0874,clif->pSearchStoreInfoNextPage,0);
+ packet(0x087b,clif->pDull/*,XXX*/);
+ packet(0x0885,clif->pReqCloseBuyingStore,0);
+ packet(0x0888,clif->pActionRequest,2,6);
+ packet(0x0890,clif->pDropItem,2,4);
+ packet(0x0896,clif->pUseSkillToId,2,4,6);
+ packet(0x089d,clif->pMoveToKafra,2,4);
+ packet(0x08a6,clif->pGetCharNameRequest,2);
+ packet(0x091e,clif->pTakeItem,2);
+ packet(0x0924,clif->pDull/*,XXX*/);
+ packet(0x0938,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x093b,clif->pPartyInvite2,2);
+ packet(0x0956,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0958,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x095b,clif->pStoragePassword,0);
+ packet(0x095d,clif->pSolveCharName,2);
+ packet(0x0964,clif->pReqClickBuyingStore,2);
+ packet(0x0966,clif->pMoveFromKafra,2,4);
+ packet(0x096a,clif->pSearchStoreInfoListItemClick,2,6,10);
#endif
// 2018-01-17aRagexe_zero
#if PACKETVER == 20180117
- packet(0x0361,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0364,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0438,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x07e4,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x083c,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0866,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x086e,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086f,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x087d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0881,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0884,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0886,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0890,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0891,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0893,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0899,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x089d,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x089e,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0919,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x091c,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x091f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0921,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0928,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0929,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x092d,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0933,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0946,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x095e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0963,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
+ packet(0x0361,clif->pPartyInvite2,2);
+ packet(0x0364,clif->pSolveCharName,2);
+ packet(0x0438,clif->pDull/*,XXX*/);
+ packet(0x07e4,clif->pStoragePassword,0);
+ packet(0x083c,clif->pDropItem,2,4);
+ packet(0x0866,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x086e,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086f,clif->pReqClickBuyingStore,2);
+ packet(0x087d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0881,clif->pUseSkillToId,2,4,6);
+ packet(0x0884,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0886,clif->pTakeItem,2);
+ packet(0x0890,clif->pMoveToKafra,2,4);
+ packet(0x0891,clif->pGetCharNameRequest,2);
+ packet(0x0893,clif->pActionRequest,2,6);
+ packet(0x0899,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x089d,clif->pItemListWindowSelected,2,4,8);
+ packet(0x089e,clif->pChangeDir,2,4);
+ packet(0x0919,clif->pTickSend,2);
+ packet(0x091c,clif->pMoveFromKafra,2,4);
+ packet(0x091f,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0921,clif->pWalkToXY,2);
+ packet(0x0928,clif->pReqCloseBuyingStore,0);
+ packet(0x0929,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x092d,clif->pDull/*,XXX*/);
+ packet(0x0933,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0946,clif->pFriendsListAdd,2);
+ packet(0x095e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0963,clif->pHomMenu,2,4);
#endif
// 2018-01-31dRagexe_zero
#if PACKETVER == 20180131
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0367,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0940,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0367,clif->pStoragePassword,0);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0940,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-02-07bRagexe_zero
#if PACKETVER == 20180207
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0967,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0967,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-02-13aRagexe_zero
#if PACKETVER == 20180213
- packet(0x022d,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x02c4,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x035f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0361,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0802,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0815,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0868,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x087b,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0882,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0887,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0888,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x088a,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x088e,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0899,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0917,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091d,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0930,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0941,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0942,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0947,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x094d,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0958,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x095b,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x095c,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0967,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
+ packet(0x022d,clif->pChangeDir,2,4);
+ packet(0x02c4,clif->pMoveToKafra,2,4);
+ packet(0x035f,clif->pDropItem,2,4);
+ packet(0x0361,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0802,clif->pTickSend,2);
+ packet(0x0815,clif->pUseSkillToId,2,4,6);
+ packet(0x0838,clif->pSearchStoreInfoNextPage,0);
+ packet(0x085a,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085d,clif->pHomMenu,2,4);
+ packet(0x0868,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x087b,clif->pGetCharNameRequest,2);
+ packet(0x0882,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0887,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0888,clif->pSolveCharName,2);
+ packet(0x088a,clif->pDull/*,XXX*/);
+ packet(0x088e,clif->pReqClickBuyingStore,2);
+ packet(0x0899,clif->pFriendsListAdd,2);
+ packet(0x0917,clif->pActionRequest,2,6);
+ packet(0x091d,clif->pWalkToXY,2);
+ packet(0x0922,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0930,clif->pDull/*,XXX*/);
+ packet(0x0941,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0942,clif->pMoveFromKafra,2,4);
+ packet(0x0947,clif->pTakeItem,2);
+ packet(0x094d,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0958,clif->pPartyInvite2,2);
+ packet(0x095b,clif->pReqCloseBuyingStore,0);
+ packet(0x095c,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0967,clif->pStoragePassword,0);
#endif
// 2018-02-21aRagexe_zero
#if PACKETVER == 20180221
- packet(0x02c4,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0362,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0364,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0438,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x0817,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x085b,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x086a,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0878,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0880,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0884,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x088d,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0892,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0895,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x08a1,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x08a3,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x091b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0921,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0923,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x092d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0932,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x093b,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x093d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x093e,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0942,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0951,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0952,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0958,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0959,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x095d,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
+ packet(0x02c4,clif->pTickSend,2);
+ packet(0x0362,clif->pGetCharNameRequest,2);
+ packet(0x0364,clif->pChangeDir,2,4);
+ packet(0x0438,clif->pItemListWindowSelected,2,4,8);
+ packet(0x0817,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x085b,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x086a,clif->pDull/*,XXX*/);
+ packet(0x0878,clif->pReqCloseBuyingStore,0);
+ packet(0x0880,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0884,clif->pSearchStoreInfoNextPage,0);
+ packet(0x088d,clif->pSolveCharName,2);
+ packet(0x0892,clif->pDropItem,2,4);
+ packet(0x0895,clif->pReqClickBuyingStore,2);
+ packet(0x08a1,clif->pWalkToXY,2);
+ packet(0x08a3,clif->pUseSkillToId,2,4,6);
+ packet(0x091b,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0921,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0923,clif->pHomMenu,2,4);
+ packet(0x092d,clif->pFriendsListAdd,2);
+ packet(0x0932,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x093b,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x093d,clif->pPartyInvite2,2);
+ packet(0x093e,clif->pMoveFromKafra,2,4);
+ packet(0x0942,clif->pStoragePassword,0);
+ packet(0x0951,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0952,clif->pDull/*,XXX*/);
+ packet(0x0958,clif->pActionRequest,2,6);
+ packet(0x0959,clif->pMoveToKafra,2,4);
+ packet(0x095d,clif->pTakeItem,2);
#endif
// 2018-02-28bRagexe_zero, 2018-03-07aRagexe_zero, 2018-03-09aRagexe_zero
#if PACKETVER == 20180228 || \
PACKETVER == 20180307 || \
PACKETVER == 20180309
- packet(0x0202,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x022d,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x023b,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0281,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x035f,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0360,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0361,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0362,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0363,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0364,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0365,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0369,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0436,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0437,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0438,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x07e4,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x07ec,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0802,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0835,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x083c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x0930,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x096a,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
+ packet(0x0202,clif->pChangeDir,2,4);
+ packet(0x022d,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x023b,clif->pFriendsListAdd,2);
+ packet(0x0281,clif->pItemListWindowSelected,2,4,8);
+ packet(0x035f,clif->pTickSend,2);
+ packet(0x0360,clif->pReqClickBuyingStore,2);
+ packet(0x0361,clif->pHomMenu,2,4);
+ packet(0x0362,clif->pDropItem,2,4);
+ packet(0x0363,clif->pDull/*,XXX*/);
+ packet(0x0364,clif->pMoveFromKafra,2,4);
+ packet(0x0365,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0366,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0368,clif->pSolveCharName,2);
+ packet(0x0369,clif->pActionRequest,2,6);
+ packet(0x0436,clif->pDull/*,XXX*/);
+ packet(0x0437,clif->pWalkToXY,2);
+ packet(0x0438,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x07e4,clif->pTakeItem,2);
+ packet(0x07ec,clif->pMoveToKafra,2,4);
+ packet(0x0802,clif->pPartyInvite2,2);
+ packet(0x0811,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0815,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x0819,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0835,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0838,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x083c,clif->pUseSkillToId,2,4,6);
+ packet(0x0930,clif->pStoragePassword,0);
+ packet(0x096a,clif->pGetCharNameRequest,2);
#endif
// 2018-03-14nRagexe_zero
#if PACKETVER == 20180314
- packet(0x023b,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x0438,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x07ec,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0817,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x083c,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x085d,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x085f,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0866,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0878,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x088d,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0891,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0897,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0899,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x089e,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x08a1,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x0917,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0918,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x091f,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0920,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0923,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x0930,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0931,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x093f,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0946,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x094a,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x094e,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0954,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0956,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0958,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
+ packet(0x023b,clif->pPartyInvite2,2);
+ packet(0x0438,clif->pSearchStoreInfoNextPage,0);
+ packet(0x07ec,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0817,clif->pReqCloseBuyingStore,0);
+ packet(0x083c,clif->pChangeDir,2,4);
+ packet(0x085d,clif->pFriendsListAdd,2);
+ packet(0x085f,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0866,clif->pHomMenu,2,4);
+ packet(0x0878,clif->pDull/*,XXX*/);
+ packet(0x088d,clif->pStoragePassword,0);
+ packet(0x0891,clif->pMoveFromKafra,2,4);
+ packet(0x0897,clif->pTakeItem,2);
+ packet(0x0899,clif->pMoveToKafra,2,4);
+ packet(0x089e,clif->pItemListWindowSelected,2,4,8);
+ packet(0x08a1,clif->pDull/*,XXX*/);
+ packet(0x0917,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0918,clif->pActionRequest,2,6);
+ packet(0x091f,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0920,clif->pTickSend,2);
+ packet(0x0923,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x0930,clif->pDropItem,2,4);
+ packet(0x0931,clif->pReqClickBuyingStore,2);
+ packet(0x093f,clif->pSolveCharName,2);
+ packet(0x0946,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x094a,clif->pUseSkillToId,2,4,6);
+ packet(0x094e,clif->pWalkToXY,2);
+ packet(0x0954,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0956,clif->pGetCharNameRequest,2);
+ packet(0x0958,clif->pReqTradeBuyingStore,2,4,8,12);
#endif
// 2018-05-11aRagexe_zero, 2018-05-11bRagexe_zero
#if PACKETVER == 20180511
- packet(0x0817,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x085f,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0863,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x086c,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0877,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0880,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0889,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0893,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0896,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0899,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 12
- packet(0x08a2,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x08a4,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x08a5,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0919,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x091a,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x091d,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0920,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x092c,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x092d,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0941,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x0942,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x094a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0955,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x0956,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x095c,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0961,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x0968,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
-#endif
-
-// 2018-11-14aRagexe_zero, 2018-11-20aRagexe_zero, 2018-11-28aRagexe_zero, 2018-12-12aRagexe_zero, 2018-12-19aRagexe_zero, 2018-12-26_2aRagexe_zero, 2019-01-16_2aRagexe_zero, 2019-01-17_1aRagexe_zero, 2019-01-30_2aRagexe_zero, 2019-02-13aRagexe_zero, 2019-02-20aRagexe_zero, 2019-02-27aRagexe_zero, 2019-03-13aRagexe_zero, 2019-03-27_2aRagexe_zero, 2019-03-27_3aRagexe_zero, 2019-04-03aRagexe_zero, 2019-04-10bRagexe_zero, 2019-04-24aRagexe_zero, 2019-05-02aRagexe_zero, 2019-05-08_2aRagexe_zero, 2019-05-08aRagexe_zero, 2019-05-15aRagexe_zero, 2019-05-29aRagexe_zero, 2019-05-30aRagexe_zero, 2019-06-05_2aRagexe_zero, 2019-06-26_2aRagexe_zero, 2019-06-26_3aRagexe_zero, 2019-07-09aRagexe_zero, 2019-07-10_3aRagexe_zero, 2019-07-17aRagexe_zero, 2019-07-24aRagexe_zero, 2019-08-14_3aRagexe_zero
-#if PACKETVER == 20181114 || \
- PACKETVER == 20181120 || \
- PACKETVER == 20181128 || \
- PACKETVER == 20181212 || \
- PACKETVER == 20181219 || \
- PACKETVER == 20181226 || \
- PACKETVER == 20190116 || \
- PACKETVER == 20190117 || \
- PACKETVER == 20190130 || \
- PACKETVER == 20190213 || \
- PACKETVER == 20190220 || \
- PACKETVER == 20190227 || \
- PACKETVER == 20190313 || \
- PACKETVER == 20190327 || \
- PACKETVER == 20190403 || \
- PACKETVER == 20190410 || \
- PACKETVER == 20190424 || \
- PACKETVER == 20190502 || \
- PACKETVER == 20190508 || \
- PACKETVER == 20190515 || \
- PACKETVER == 20190529 || \
- PACKETVER == 20190530 || \
- PACKETVER == 20190605 || \
- PACKETVER == 20190626 || \
- PACKETVER == 20190709 || \
- PACKETVER == 20190710 || \
- PACKETVER == 20190717 || \
- PACKETVER == 20190724 || \
- PACKETVER >= 20190814
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 90
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 14
-#endif
-
-// 2019-08-28_2aRagexe_zero, 2019-08-28_3aRagexe_zero, 2019-09-11aRagexe_zero, 2019-09-18_2aRagexe_zero, 2019-09-18aRagexe_zero, 2019-09-25_3aRagexe_zero, 2019-09-25_5aRagexe_zero, 2019-10-08_2aRagexe_zero, 2019-10-23_2aRagexe_zero, 2019-11-06aRagexe_zero, 2019-11-13aRagexe_zero, 2019-11-27_2aRagexe_zero, 2019-11-27aRagexe_zero, 2019-12-04aRagexe_zero, 2019-12-11_2aRagexe_zero, 2019-12-24_4aRagexe_zero, 2019-12-24_5aRagexe_zero, 2020-01-15_2aRagexe_zero, 2020-01-15aRagexe_zero, 2020-01-29_2aRagexe_zero, 2020-01-29aRagexe_zero, 2020-02-12aRagexe_zero, 2020-02-26aRagexe_zero, 2020-02-26bRagexe_zero, 2020-03-04aRagexe_zero
-#if PACKETVER == 20190828 || \
- PACKETVER == 20190911 || \
- PACKETVER == 20190918 || \
- PACKETVER == 20190925 || \
- PACKETVER == 20191008 || \
- PACKETVER == 20191023 || \
- PACKETVER == 20191106 || \
- PACKETVER == 20191113 || \
- PACKETVER == 20191127 || \
- PACKETVER == 20191204 || \
- PACKETVER == 20191211 || \
- PACKETVER == 20191224 || \
- PACKETVER == 20200115 || \
- PACKETVER == 20200129 || \
- PACKETVER == 20200212 || \
- PACKETVER == 20200226 || \
- PACKETVER == 20200304
- packet(0x0202,clif->pFriendsListAdd,2); // CZ_ADD_FRIENDS // 26
- packet(0x022d,clif->pHomMenu,2,4); // CZ_COMMAND_MER // 5
- packet(0x023b,clif->pStoragePassword,0); // CZ_ACK_STORE_PASSWORD // 36
- packet(0x0281,clif->pDull/*,XXX*/); // CZ_GANGSI_RANK // 4
- packet(0x02c4,clif->pPartyInvite2,2); // CZ_PARTY_JOIN_REQ // 26
- packet(0x035f,clif->pWalkToXY,2); // CZ_REQUEST_MOVE // 5
- packet(0x0360,clif->pTickSend,2); // CZ_REQUEST_TIME // 6
- packet(0x0361,clif->pChangeDir,2,4); // CZ_CHANGE_DIRECTION // 5
- packet(0x0362,clif->pTakeItem,2); // CZ_ITEM_PICKUP // 6
- packet(0x0363,clif->pDropItem,2,4); // CZ_ITEM_THROW // 6
- packet(0x0364,clif->pMoveToKafra,2,4); // CZ_MOVE_ITEM_FROM_BODY_TO_STORE // 8
- packet(0x0365,clif->pMoveFromKafra,2,4); // CZ_MOVE_ITEM_FROM_STORE_TO_BODY // 8
- packet(0x0366,clif->pUseSkillToPos,2,4,6,8); // CZ_USE_SKILL_TOGROUND // 10
- packet(0x0367,clif->pUseSkillToPosMoreInfo,2,4,6,8,10); // CZ_USE_SKILL_TOGROUND_WITHTALKBOX // 31
- packet(0x0368,clif->pGetCharNameRequest,2); // CZ_REQNAME // 6
- packet(0x0369,clif->pSolveCharName,2); // CZ_REQNAME_BYGID // 6
- packet(0x0436,clif->pWantToConnection,2,6,10,14,18); // CZ_ENTER // 19
- packet(0x0437,clif->pActionRequest,2,6); // CZ_REQUEST_ACT // 7
- packet(0x0438,clif->pUseSkillToId,2,4,6); // CZ_USE_SKILL // 10
- packet(0x07e4,clif->pItemListWindowSelected,2,4,8); // CZ_ITEMLISTWIN_RES // -1
- packet(0x07ec,clif->pDull/*,XXX*/); // CZ_JOIN_BATTLE_FIELD // 8
- packet(0x0802,clif->pPartyBookingRegisterReq,2,4); // CZ_PARTY_BOOKING_REQ_REGISTER // 18
- packet(0x0811,clif->pReqOpenBuyingStore,2,4,8,9,89); // CZ_REQ_OPEN_BUYING_STORE // -1
- packet(0x0815,clif->pReqCloseBuyingStore,0); // CZ_REQ_CLOSE_BUYING_STORE // 2
- packet(0x0817,clif->pReqClickBuyingStore,2); // CZ_REQ_CLICK_TO_BUYING_STORE // 6
- packet(0x0819,clif->pReqTradeBuyingStore,2,4,8,12); // CZ_REQ_TRADE_BUYING_STORE // -1
- packet(0x0835,clif->pSearchStoreInfo,2,4,5,9,13,14,15); // CZ_SEARCH_STORE_INFO // -1
- packet(0x0838,clif->pSearchStoreInfoNextPage,0); // CZ_SEARCH_STORE_INFO_NEXT_PAGE // 2
- packet(0x083c,clif->pSearchStoreInfoListItemClick,2,6,10); // CZ_SSILIST_ITEM_CLICK // 14
+ packet(0x0817,clif->pSolveCharName,2);
+ packet(0x085f,clif->pDropItem,2,4);
+ packet(0x0863,clif->pReqClickBuyingStore,2);
+ packet(0x086c,clif->pActionRequest,2,6);
+ packet(0x0877,clif->pMoveFromKafra,2,4);
+ packet(0x087e,clif->pSearchStoreInfo,2,4,5,9,13,14,15);
+ packet(0x0880,clif->pGetCharNameRequest,2);
+ packet(0x0889,clif->pMoveToKafra,2,4);
+ packet(0x0893,clif->pPartyBookingRegisterReq,2,4);
+ packet(0x0896,clif->pWantToConnection,2,6,10,14,18);
+ packet(0x0899,clif->pSearchStoreInfoListItemClick,2,6,10);
+ packet(0x08a2,clif->pTakeItem,2);
+ packet(0x08a4,clif->pReqCloseBuyingStore,0);
+ packet(0x08a5,clif->pTickSend,2);
+ packet(0x0919,clif->pWalkToXY,2);
+ packet(0x091a,clif->pItemListWindowSelected,2,4,8);
+ packet(0x091d,clif->pReqOpenBuyingStore,2,4,8,9,89);
+ packet(0x0920,clif->pDull/*,XXX*/);
+ packet(0x092c,clif->pUseSkillToId,2,4,6);
+ packet(0x092d,clif->pPartyInvite2,2);
+ packet(0x092e,clif->pReqTradeBuyingStore,2,4,8,12);
+ packet(0x0941,clif->pSearchStoreInfoNextPage,0);
+ packet(0x0942,clif->pChangeDir,2,4);
+ packet(0x094a,clif->pUseSkillToPosMoreInfo,2,4,6,8,10);
+ packet(0x0955,clif->pFriendsListAdd,2);
+ packet(0x0956,clif->pDull/*,XXX*/);
+ packet(0x095c,clif->pUseSkillToPos,2,4,6,8);
+ packet(0x0961,clif->pHomMenu,2,4);
+ packet(0x0968,clif->pStoragePassword,0);
#endif
diff --git a/src/map/packets_struct.h b/src/map/packets_struct.h
index 71f986a90..3129a05d9 100644
--- a/src/map/packets_struct.h
+++ b/src/map/packets_struct.h
@@ -3779,7 +3779,7 @@ struct PACKET_ZC_SE_CASHSHOP_OPEN {
} __attribute__((packed));
DEFINE_PACKET_HEADER(ZC_SE_CASHSHOP_OPEN, 0x0b6e);
// for ragexeRE in some version this packet unused [4144]
-#elif PACKETVER_MAIN_NUM >= 20101123 || PACKETVER_RE_NUM >= 20120328 || PACKETVER_ZERO_NUM >= defined(PACKETVER_ZERO)
+#elif PACKETVER_MAIN_NUM >= 20101123 || PACKETVER_RE_NUM >= 20120328 || defined(PACKETVER_ZERO)
struct PACKET_ZC_SE_CASHSHOP_OPEN {
int16 packetType;
uint32 cashPoints;
@@ -3891,6 +3891,42 @@ struct PACKET_ZC_AUTORUN_SKILL {
} __attribute__((packed));
DEFINE_PACKET_HEADER(ZC_AUTORUN_SKILL, 0x0147);
+#if PACKETVER_MAIN_NUM >= 20170726 || PACKETVER_RE_NUM >= 20170621 || defined(PACKETVER_ZERO)
+struct PACKET_ZC_LAPINEUPGRADE_OPEN {
+ int16 packetType;
+#if PACKETVER_MAIN_NUM >= 20181121 || PACKETVER_RE_NUM >= 20180704 || PACKETVER_ZERO_NUM >= 20181114
+ uint32 itemId;
+#else
+ uint16 itemId;
+#endif
+} __attribute__((packed));
+DEFINE_PACKET_HEADER(ZC_LAPINEUPGRADE_OPEN, 0x0ab4);
+
+struct PACKET_ZC_LAPINEUPGRADE_RESULT {
+ int16 packetType;
+ uint16 result;
+} __attribute__((packed));
+DEFINE_PACKET_HEADER(ZC_LAPINEUPGRADE_RESULT, 0x0ab7);
+#endif // PACKETVER_MAIN_NUM >= 20170726 || PACKETVER_RE_NUM >= 20170621 || defined(PACKETVER_ZERO)
+
+#if PACKETVER_MAIN_NUM >= 20170111 || PACKETVER_RE_NUM >= 20170111 || defined(PACKETVER_ZERO)
+struct PACKET_CZ_LAPINEUPGRADE_CLOSE {
+ int16 packetType;
+} __attribute__((packed));
+DEFINE_PACKET_HEADER(CZ_LAPINEUPGRADE_CLOSE, 0x0ab5);
+
+struct PACKET_CZ_LAPINEUPGRADE_MAKE_ITEM {
+ int16 packetType;
+#if PACKETVER_MAIN_NUM >= 20181121 || PACKETVER_RE_NUM >= 20180704 || PACKETVER_ZERO_NUM >= 20181114
+ uint32 itemId;
+#else
+ uint16 itemId;
+#endif
+ uint16 index;
+} __attribute__((packed));
+DEFINE_PACKET_HEADER(CZ_LAPINEUPGRADE_MAKE_ITEM, 0x0ab6);
+#endif // PACKETVER_MAIN_NUM >= 20170111 || PACKETVER_RE_NUM >= 20170111 || defined(PACKETVER_ZERO)
+
#if !defined(sun) && (!defined(__NETBSD__) || __NetBSD_Version__ >= 600000000) // NetBSD 5 and Solaris don't like pragma pack but accept the packed attribute
#pragma pack(pop)
#endif // not NetBSD < 6 / Solaris
diff --git a/src/map/party.c b/src/map/party.c
index 7d7f69620..8eeae2215 100644
--- a/src/map/party.c
+++ b/src/map/party.c
@@ -677,17 +677,18 @@ static int party_member_withdraw(int party_id, int account_id, int char_id)
/// Invoked (from char-server) when a party is disbanded.
static int party_broken(int party_id)
{
- struct party_data* p;
- int i, j;
+ int i;
- p = party->search(party_id);
- if( p == NULL )
+ struct party_data *p = party->search(party_id);
+ if (p == NULL)
return 0;
- for( j = 0; j < p->instances; j++ ) {
- if( p->instance[j] >= 0 ) {
- instance->destroy( p->instance[j] );
- instance->list[p->instance[j]].owner_id = 0;
+ for (int j = 0; j < p->instances; j++) {
+ const short instance_id = p->instance[j];
+ if (instance_id >= 0) {
+ instance->destroy(instance_id);
+ if (instance_id < instance->instances)
+ instance->list[instance_id].owner_id = 0;
}
}
diff --git a/src/map/pc.c b/src/map/pc.c
index c604e16dc..4497ef54f 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -1279,6 +1279,7 @@ static bool pc_authok(struct map_session_data *sd, int login_id2, time_t expirat
sd->bg_queue.client_has_bg_data = 0;
sd->bg_queue.type = 0;
+ VECTOR_INIT(sd->auto_cast); // Initialize auto-cast vector.
VECTOR_INIT(sd->channels);
VECTOR_INIT(sd->script_queues);
VECTOR_INIT(sd->achievement); // Achievements [Smokexyz/Hercules]
@@ -1605,58 +1606,56 @@ static void pc_calc_skilltree_clear(struct map_session_data *sd)
*------------------------------------------*/
static int pc_calc_skilltree(struct map_session_data *sd)
{
- int i,id=0,flag;
- int class = 0, classidx = 0;
-
nullpo_ret(sd);
- i = pc->calc_skilltree_normalize_job(sd);
- class = pc->mapid2jobid(i, sd->status.sex);
+ uint32 job = pc->calc_skilltree_normalize_job(sd);
+ int class = pc->mapid2jobid(job, sd->status.sex);
if (class == -1) {
//Unable to normalize job??
- ShowError("pc_calc_skilltree: Unable to normalize job %d for character %s (%d:%d)\n", i, sd->status.name, sd->status.account_id, sd->status.char_id);
+ ShowError("pc_calc_skilltree: Unable to normalize job %u for character %s (%d:%d)\n", job, sd->status.name, sd->status.account_id, sd->status.char_id);
return 1;
}
- classidx = pc->class2idx(class);
+ int classidx = pc->class2idx(class);
pc->calc_skilltree_clear(sd);
- for (i = 0; i < MAX_SKILL_DB; i++) {
- if( sd->status.skill[i].flag != SKILL_FLAG_PERMANENT && sd->status.skill[i].flag != SKILL_FLAG_PERM_GRANTED && sd->status.skill[i].flag != SKILL_FLAG_PLAGIARIZED )
- { // Restore original level of skills after deleting earned skills.
+ for (int i = 0; i < MAX_SKILL_DB; i++) {
+ if (sd->status.skill[i].flag == SKILL_FLAG_TEMPORARY || sd->status.skill[i].flag >= SKILL_FLAG_REPLACED_LV_0) {
+ // Restore original level of skills after deleting earned skills.
sd->status.skill[i].lv = (sd->status.skill[i].flag == SKILL_FLAG_TEMPORARY) ? 0 : sd->status.skill[i].flag - SKILL_FLAG_REPLACED_LV_0;
sd->status.skill[i].flag = SKILL_FLAG_PERMANENT;
}
- if( sd->sc.count && sd->sc.data[SC_SOULLINK] && sd->sc.data[SC_SOULLINK]->val2 == SL_BARDDANCER && skill->dbs->db[i].nameid >= DC_HUMMING && skill->dbs->db[i].nameid <= DC_SERVICEFORYOU )
- { //Enable Bard/Dancer spirit linked skills.
- if (sd->status.sex) {
- // Link dancer skills to bard.
- if (i < 8) {
- Assert_report(i >= 8);
- continue;
- }
- if (sd->status.skill[i-8].lv < 10)
- continue;
- sd->status.skill[i].id = skill->dbs->db[i].nameid;
- sd->status.skill[i].lv = sd->status.skill[i-8].lv; // Set the level to the same as the linking skill
- sd->status.skill[i].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
+ if (sd->sc.count && sd->sc.data[SC_SOULLINK] && sd->sc.data[SC_SOULLINK]->val2 == SL_BARDDANCER
+ && ((skill->dbs->db[i].nameid >= BA_WHISTLE && skill->dbs->db[i].nameid <= BA_APPLEIDUN)
+ || (skill->dbs->db[i].nameid >= DC_HUMMING && skill->dbs->db[i].nameid <= DC_SERVICEFORYOU))
+ ) {
+ //Enable Bard/Dancer spirit linked skills.
+ int linked_nameid = skill->get_linked_song_dance_id(skill->dbs->db[i].nameid);
+ if (linked_nameid == 0) {
+ Assert_report("Linked bard/dance skill not found");
+ continue;
+ }
+ int copy_from_index;
+ int copy_to_index;
+ if (sd->status.sex == SEX_MALE && skill->dbs->db[i].nameid >= BA_WHISTLE && skill->dbs->db[i].nameid <= BA_APPLEIDUN) {
+ copy_from_index = i;
+ copy_to_index = skill->get_index(linked_nameid);
} else {
- // Link bard skills to dancer.
- if (i < 8) {
- Assert_report(i >= 8);
- continue;
- }
- if (sd->status.skill[i].lv < 10)
- continue;
- sd->status.skill[i-8].id = skill->dbs->db[i-8].nameid;
- sd->status.skill[i-8].lv = sd->status.skill[i].lv; // Set the level to the same as the linking skill
- sd->status.skill[i-8].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
+ copy_from_index = skill->get_index(linked_nameid);
+ copy_to_index = i;
}
+ if (copy_from_index < copy_to_index)
+ continue; // Copy only after the source skill has been filled into the tree
+ if (sd->status.skill[copy_from_index].lv < 10)
+ continue; // Copy only if the linked skill has been mastered
+ sd->status.skill[copy_to_index].id = skill->dbs->db[copy_to_index].nameid;
+ sd->status.skill[copy_to_index].lv = sd->status.skill[copy_from_index].lv; // Set the level to the same as the linking skill
+ sd->status.skill[copy_to_index].flag = SKILL_FLAG_TEMPORARY; // Tag it as a non-savable, non-uppable, bonus skill
}
}
if( pc_has_permission(sd, PC_PERM_ALL_SKILL) ) {
- for (i = 0; i < MAX_SKILL_DB; i++) {
+ for (int i = 0; i < MAX_SKILL_DB; i++) {
switch(skill->dbs->db[i].nameid) {
/**
* Dummy skills must be added here otherwise they'll be displayed in the,
@@ -1688,9 +1687,11 @@ static int pc_calc_skilltree(struct map_session_data *sd)
return 0;
}
+ bool changed = false;
do {
- flag = 0;
- for (i = 0; i < MAX_SKILL_TREE && (id = pc->skill_tree[classidx][i].id) > 0; i++) {
+ changed = false;
+ int id;
+ for (int i = 0; i < MAX_SKILL_TREE && (id = pc->skill_tree[classidx][i].id) > 0; i++) {
int idx = pc->skill_tree[classidx][i].idx;
bool satisfied = true;
if (sd->status.skill[idx].id > 0)
@@ -1740,10 +1741,10 @@ static int pc_calc_skilltree(struct map_session_data *sd)
sd->status.skill[idx].lv = 1; // need to manually specify a skill level
sd->status.skill[idx].flag = SKILL_FLAG_TEMPORARY; //So it is not saved, and tagged as a "bonus" skill.
}
- flag = 1; // skill list has changed, perform another pass
+ changed = true; // skill list has changed, perform another pass
}
}
- } while(flag);
+ } while (changed);
pc->calc_skilltree_bonus(sd, classidx);
@@ -4206,7 +4207,7 @@ static int pc_skill(struct map_session_data *sd, int id, int level, int flag)
if( sd->status.skill[index].id == id ) {
if( sd->status.skill[index].lv >= level )
return 0;
- if( sd->status.skill[index].flag == SKILL_FLAG_PERMANENT ) //Non-granted skill, store it's level.
+ if (sd->status.skill[index].flag == SKILL_FLAG_PERMANENT) // Non-granted skill, store its level.
sd->status.skill[index].flag = SKILL_FLAG_REPLACED_LV_0 + sd->status.skill[index].lv;
} else {
sd->status.skill[index].id = id;
@@ -5295,10 +5296,6 @@ static int pc_useitem(struct map_session_data *sd, int n)
if(sd->catch_target_class != -1) //Abort pet catching.
sd->catch_target_class = -1;
- // Removes abracadabra/randomize spell flag for delayed consume items or item doesn't get consumed
- if (sd->inventory_data[n]->flag.delay_consume)
- sd->state.abra_flag = 0;
-
amount = sd->status.inventory[n].amount;
//Check if the item is to be consumed immediately [Skotlex]
if (sd->inventory_data[n]->flag.delay_consume || sd->inventory_data[n]->flag.keepafteruse)
@@ -5337,23 +5334,79 @@ static int pc_useitem(struct map_session_data *sd, int n)
}
/**
- * Sets state flags and helper variables, used by itemskill() script command, to 0.
+ * Unsets a character's currently processed auto-cast skill data.
*
- * @param sd The character's session data.
- * @return 0 if parameter sd is NULL, otherwise 1.
- */
-static int pc_itemskill_clear(struct map_session_data *sd)
+ * @param sd The character.
+ *
+ **/
+static void pc_autocast_clear_current(struct map_session_data *sd)
{
- nullpo_ret(sd);
+ nullpo_retv(sd);
- sd->itemskill_id = 0;
- sd->itemskill_lv = 0;
- sd->state.itemskill_conditions_checked = 0;
- sd->state.itemskill_check_conditions = 0;
- sd->state.itemskill_no_casttime = 0;
- sd->state.itemskill_castonself = 0;
+ sd->auto_cast_current.type = AUTOCAST_NONE;
+ sd->auto_cast_current.skill_id = 0;
+ sd->auto_cast_current.skill_lv = 0;
+ sd->auto_cast_current.itemskill_conditions_checked = false;
+ sd->auto_cast_current.itemskill_check_conditions = true;
+ sd->auto_cast_current.itemskill_instant_cast = false;
+ sd->auto_cast_current.itemskill_cast_on_self = false;
+}
- return 1;
+/**
+ * Unsets a character's auto-cast related data.
+ *
+ * @param sd The character.
+ *
+ **/
+static void pc_autocast_clear(struct map_session_data *sd)
+{
+ nullpo_retv(sd);
+
+ pc->autocast_clear_current(sd);
+ VECTOR_TRUNCATE(sd->auto_cast); // Truncate auto-cast vector.
+}
+
+/**
+ * Sets a character's currently processed auto-cast skill data by comparing the skill ID.
+ *
+ * @param sd The character.
+ * @param skill_id The skill ID to compare.
+ *
+ **/
+static void pc_autocast_set_current(struct map_session_data *sd, int skill_id)
+{
+ nullpo_retv(sd);
+
+ pc->autocast_clear_current(sd);
+
+ for (int i = 0; i < VECTOR_LENGTH(sd->auto_cast); i++) {
+ if (VECTOR_INDEX(sd->auto_cast, i).skill_id == skill_id) {
+ sd->auto_cast_current = VECTOR_INDEX(sd->auto_cast, i);
+ break;
+ }
+ }
+}
+
+/**
+ * Removes a specific entry from a character's auto-cast vector.
+ *
+ * @param sd The character.
+ * @param type The entry's auto-cast type.
+ * @param skill_id The entry's skill ID.
+ * @param skill_lv The entry's skill level.
+ *
+ **/
+static void pc_autocast_remove(struct map_session_data *sd, enum autocast_type type, int skill_id, int skill_lv)
+{
+ nullpo_retv(sd);
+
+ for (int i = 0; i < VECTOR_LENGTH(sd->auto_cast); i++) {
+ if (VECTOR_INDEX(sd->auto_cast, i).type == type && VECTOR_INDEX(sd->auto_cast, i).skill_id == skill_id
+ && VECTOR_INDEX(sd->auto_cast, i).skill_lv == skill_lv) {
+ VECTOR_ERASE(sd->auto_cast, i);
+ break;
+ }
+ }
}
/*==========================================
@@ -5703,7 +5756,7 @@ static int pc_steal_coin(struct map_session_data *sd, struct block_list *target,
return 0;
}
- /**
+/**
* Sets a character's position.
*
* @param sd The related character.
@@ -5720,233 +5773,278 @@ static int pc_steal_coin(struct map_session_data *sd, struct block_list *target,
**/
static int pc_setpos(struct map_session_data *sd, unsigned short map_index, int x, int y, enum clr_type clrtype)
{
- int16 m;
-
nullpo_retr(3, sd);
- if( !map_index || !mapindex_id2name(map_index) || ( m = map->mapindex2mapid(map_index) ) == -1 ) {
- ShowDebug("pc_setpos: Passed mapindex(%d) is invalid!\n", map_index);
+ int map_id = map->mapindex2mapid(map_index);
+
+ if (map_index == 0 || !mapindex_id2name(map_index) || map_id == INDEX_NOT_FOUND) {
+ ShowDebug("pc_setpos: Passed mapindex %d is invalid!\n", map_index);
return 1;
}
- if( pc_isdead(sd) ) { //Revive dead people before warping them
+ if (pc_isdead(sd)) { // Revive dead character before warping.
pc->setstand(sd);
- pc->setrestartvalue(sd,1);
+ pc->setrestartvalue(sd, 1);
}
- if( map->list[m].flag.src4instance ) {
- struct party_data *p;
+ if (map->list[map_id].flag.src4instance != 0) {
bool stop = false;
- int i = 0, j = 0;
- if( sd->instances ) {
- for( i = 0; i < sd->instances; i++ ) {
- if( sd->instance[i] >= 0 ) {
- ARR_FIND(0, instance->list[sd->instance[i]].num_map, j, map->list[instance->list[sd->instance[i]].map[j]].instance_src_map == m && !map->list[instance->list[sd->instance[i]].map[j]].custom_name);
- if( j != instance->list[sd->instance[i]].num_map )
+ if (sd->instances != 0) {
+ int i, j = 0;
+
+ for (i = 0; i < sd->instances; i++) {
+ if (sd->instance[i] >= 0) {
+ ARR_FIND(0, instance->list[sd->instance[i]].num_map, j,
+ map->list[instance->list[sd->instance[i]].map[j]].instance_src_map == map_id
+ && !map->list[instance->list[sd->instance[i]].map[j]].custom_name);
+
+ if (j != instance->list[sd->instance[i]].num_map)
break;
}
}
- if( i != sd->instances ) {
- m = instance->list[sd->instance[i]].map[j];
- map_index = map_id2index(m);
+
+ if (i != sd->instances) {
+ map_id = instance->list[sd->instance[i]].map[j];
+ map_index = map_id2index(map_id);
stop = true;
}
}
- if ( !stop && sd->status.party_id && (p = party->search(sd->status.party_id)) != NULL && p->instances ) {
- for( i = 0; i < p->instances; i++ ) {
- if( p->instance[i] >= 0 ) {
- ARR_FIND(0, instance->list[p->instance[i]].num_map, j, map->list[instance->list[p->instance[i]].map[j]].instance_src_map == m && !map->list[instance->list[p->instance[i]].map[j]].custom_name);
- if( j != instance->list[p->instance[i]].num_map )
+
+ struct party_data *p = party->search(sd->status.party_id);
+
+ if (!stop && sd->status.party_id != 0 && p != NULL && p->instances != 0) {
+ int i, j = 0;
+
+ for (i = 0; i < p->instances; i++) {
+ if (p->instance[i] >= 0) {
+ ARR_FIND(0, instance->list[p->instance[i]].num_map, j,
+ map->list[instance->list[p->instance[i]].map[j]].instance_src_map == map_id
+ && !map->list[instance->list[p->instance[i]].map[j]].custom_name);
+
+ if (j != instance->list[p->instance[i]].num_map)
break;
}
}
- if( i != p->instances ) {
- m = instance->list[p->instance[i]].map[j];
- map_index = map_id2index(m);
+
+ if (i != p->instances) {
+ map_id = instance->list[p->instance[i]].map[j];
+ map_index = map_id2index(map_id);
stop = true;
}
}
- if ( !stop && sd->status.guild_id && sd->guild && sd->guild->instances ) {
- for( i = 0; i < sd->guild->instances; i++ ) {
- if( sd->guild->instance[i] >= 0 ) {
- ARR_FIND(0, instance->list[sd->guild->instance[i]].num_map, j, map->list[instance->list[sd->guild->instance[i]].map[j]].instance_src_map == m && !map->list[instance->list[sd->guild->instance[i]].map[j]].custom_name);
- if( j != instance->list[sd->guild->instance[i]].num_map )
+
+ if (!stop && sd->status.guild_id != 0 && sd->guild != NULL && sd->guild->instances != 0) {
+ int i, j = 0;
+
+ for (i = 0; i < sd->guild->instances; i++) {
+ if (sd->guild->instance[i] >= 0) {
+ ARR_FIND(0, instance->list[sd->guild->instance[i]].num_map, j,
+ map->list[instance->list[sd->guild->instance[i]].map[j]].instance_src_map == map_id
+ && !map->list[instance->list[sd->guild->instance[i]].map[j]].custom_name);
+
+ if (j != instance->list[sd->guild->instance[i]].num_map)
break;
}
}
- if( i != sd->guild->instances ) {
- m = instance->list[sd->guild->instance[i]].map[j];
- map_index = map_id2index(m);
- //stop = true; Uncomment if adding new checks
+
+ if (i != sd->guild->instances) {
+ map_id = instance->list[sd->guild->instance[i]].map[j];
+ map_index = map_id2index(map_id);
+ //stop = true; Uncomment when adding new checks.
}
}
- /* we hit a instance, if empty we populate the spawn data */
- if( map->list[m].instance_id >= 0 && instance->list[map->list[m].instance_id].respawn.map == 0 &&
- instance->list[map->list[m].instance_id].respawn.x == 0 &&
- instance->list[map->list[m].instance_id].respawn.y == 0) {
- instance->list[map->list[m].instance_id].respawn.map = map_index;
- instance->list[map->list[m].instance_id].respawn.x = x;
- instance->list[map->list[m].instance_id].respawn.y = y;
+ // We hit an instance. If empty we populate the spawn data.
+ if (map->list[map_id].instance_id >= 0 && instance->list[map->list[map_id].instance_id].respawn.map == 0
+ && instance->list[map->list[map_id].instance_id].respawn.x == 0
+ && instance->list[map->list[map_id].instance_id].respawn.y == 0) {
+ instance->list[map->list[map_id].instance_id].respawn.map = map_index;
+ instance->list[map->list[map_id].instance_id].respawn.x = x;
+ instance->list[map->list[map_id].instance_id].respawn.y = y;
}
}
- sd->state.changemap = (sd->mapindex != map_index);
+ sd->state.changemap = (sd->mapindex != map_index) ? 1 : 0;
sd->state.warping = 1;
sd->state.workinprogress = 0;
- if( sd->state.changemap ) { // Misc map-changing settings
- int i;
+
+ if (sd->state.changemap != 0) { // Miscellaneous map-changing settings.
sd->state.pmap = sd->bl.m;
- for (i = 0; i < VECTOR_LENGTH(sd->script_queues); i++) {
+ for (int i = 0; i < VECTOR_LENGTH(sd->script_queues); i++) {
struct script_queue *queue = script->queue(VECTOR_INDEX(sd->script_queues, i));
- if (queue && queue->event_mapchange[0] != '\0') {
- pc->setregstr(sd, script->add_variable("@Queue_Destination_Map$"), map->list[m].name);
+
+ if (queue != NULL && queue->event_mapchange[0] != '\0') {
+ pc->setregstr(sd, script->add_variable("@Queue_Destination_Map$"), map->list[map_id].name);
npc->event(sd, queue->event_mapchange, 0);
}
}
- if( map->list[m].cell == (struct mapcell *)0xdeadbeaf )
- map->cellfromcache(&map->list[m]);
- if (sd->sc.count) { // Cancel some map related stuff.
- if (sd->sc.data[SC_JAILED])
- return 4; //You may not get out!
+ if (map->list[map_id].cell == (struct mapcell *)0xdeadbeaf)
+ map->cellfromcache(&map->list[map_id]);
+
+ if (sd->sc.count != 0) { // Cancel some map related stuff.
+ if (sd->sc.data[SC_JAILED] != NULL)
+ return 4; // You may not get out!
+
status_change_end(&sd->bl, SC_CASH_BOSS_ALARM, INVALID_TIMER);
status_change_end(&sd->bl, SC_WARM, INVALID_TIMER);
status_change_end(&sd->bl, SC_SUN_COMFORT, INVALID_TIMER);
status_change_end(&sd->bl, SC_MOON_COMFORT, INVALID_TIMER);
status_change_end(&sd->bl, SC_STAR_COMFORT, INVALID_TIMER);
status_change_end(&sd->bl, SC_MIRACLE, INVALID_TIMER);
- status_change_end(&sd->bl, SC_NEUTRALBARRIER_MASTER, INVALID_TIMER);//Will later check if this is needed. [Rytech]
+ status_change_end(&sd->bl, SC_NEUTRALBARRIER_MASTER, INVALID_TIMER); // Will later check if this is needed. [Rytech]
status_change_end(&sd->bl, SC_NEUTRALBARRIER, INVALID_TIMER);
status_change_end(&sd->bl, SC_STEALTHFIELD_MASTER, INVALID_TIMER);
status_change_end(&sd->bl, SC_STEALTHFIELD, INVALID_TIMER);
- if (sd->sc.data[SC_KNOWLEDGE]) {
+
+ if (sd->sc.data[SC_KNOWLEDGE] != NULL) {
struct status_change_entry *sce = sd->sc.data[SC_KNOWLEDGE];
+
if (sce->timer != INVALID_TIMER)
timer->delete(sce->timer, status->change_timer);
- sce->timer = timer->add(timer->gettick() + skill->get_time(SG_KNOWLEDGE, sce->val1), status->change_timer, sd->bl.id, SC_KNOWLEDGE);
+
+ sce->timer = timer->add(timer->gettick() + skill->get_time(SG_KNOWLEDGE, sce->val1),
+ status->change_timer, sd->bl.id, SC_KNOWLEDGE);
}
+
status_change_end(&sd->bl, SC_PROPERTYWALK, INVALID_TIMER);
status_change_end(&sd->bl, SC_CLOAKING, INVALID_TIMER);
status_change_end(&sd->bl, SC_CLOAKINGEXCEED, INVALID_TIMER);
}
- for( i = 0; i < EQI_MAX; i++ ) {
- if( sd->equip_index[ i ] >= 0 )
- if( !pc->isequip( sd , sd->equip_index[ i ] ) )
- pc->unequipitem(sd, sd->equip_index[i], PCUNEQUIPITEM_FORCE);
+
+ for (int i = 0; i < EQI_MAX; i++) {
+ if (sd->equip_index[i] >= 0 && pc->isequip(sd , sd->equip_index[i]) == 0)
+ pc->unequipitem(sd, sd->equip_index[i], PCUNEQUIPITEM_FORCE);
}
- if (battle_config.clear_unit_onwarp&BL_PC)
+
+ if ((battle_config.clear_unit_onwarp & BL_PC) != 0)
skill->clear_unitgroup(&sd->bl);
- party->send_dot_remove(sd); //minimap dot fix [Kevin]
+
+ party->send_dot_remove(sd); // Minimap dot fix. [Kevin]
guild->send_dot_remove(sd);
bg->send_dot_remove(sd);
- if (sd->regen.state.gc)
+
+ if (sd->regen.state.gc != 0)
sd->regen.state.gc = 0;
- // make sure vending is allowed here
- if (sd->state.vending && map->list[m].flag.novending) {
- clif->message (sd->fd, msg_sd(sd,276)); // "You can't open a shop on this map"
+
+ // Make sure that vending is allowed here.
+ if (sd->state.vending != 0 && map->list[map_id].flag.novending != 0) {
+ clif->message(sd->fd, msg_sd(sd, 276)); // "You can't open a shop on this map"
vending->close(sd);
}
- if (sd->mapindex != 0) {
- // Only if the character is already on a map
- if (map->list[sd->bl.m].channel) {
- channel->leave(map->list[sd->bl.m].channel,sd);
- }
- }
+ if (sd->mapindex != 0 && map->list[sd->bl.m].channel != NULL) // Only if the character is already on a map.
+ channel->leave(map->list[sd->bl.m].channel, sd);
}
- if( m < 0 ) {
+ if (map_id < 0) {
uint32 ip;
uint16 port;
- //if can't find any map-servers, just abort setting position.
- if(!sd->mapindex || map->mapname2ipport(map_index,&ip,&port))
+
+ // If can't find any map-servers, just abort setting position.
+ if (sd->mapindex == 0 || map->mapname2ipport(map_index, &ip, &port) != 0)
return 2;
- if (sd->npc_id)
+ if (sd->npc_id != 0)
npc->event_dequeue(sd);
+
npc->script_event(sd, NPCE_LOGOUT);
- //remove from map, THEN change x/y coordinates
- unit->remove_map_pc(sd,clrtype);
+
+ // Remove from map, THEN change x/y coordinates.
+ unit->remove_map_pc(sd, clrtype);
+
if (battle_config.player_warp_keep_direction == 0)
- sd->ud.dir = 0; // makes character face north
+ sd->ud.dir = 0; /// Make character facing north.
+
sd->mapindex = map_index;
- sd->bl.x=x;
- sd->bl.y=y;
+ sd->bl.x= x;
+ sd->bl.y= y;
pc->clean_skilltree(sd);
- chrif->save(sd,2);
- chrif->changemapserver(sd, ip, (short)port);
+ chrif->save(sd, 2);
+ chrif->changemapserver(sd, ip, port);
- //Free session data from this map server [Kevin]
+ // Free session data from this map server. [Kevin]
unit->free_pc(sd);
return 0;
}
- if( x < 0 || x >= map->list[m].xs || y < 0 || y >= map->list[m].ys ) {
- ShowError("pc_setpos: attempt to place player %s (%d:%d) on invalid coordinates (%s-%d,%d)\n", sd->status.name, sd->status.account_id, sd->status.char_id, mapindex_id2name(map_index),x,y);
- x = y = 0; // make it random
+ if (x < 0 || x >= map->list[map_id].xs || y < 0 || y >= map->list[map_id].ys) { // Invalid coordinates. Randomize them.
+ ShowError("pc_setpos: Attempt to place player %s (%d:%d) on invalid coordinates (%s-%d,%d)!\n",
+ sd->status.name, sd->status.account_id, sd->status.char_id,
+ mapindex_id2name(map_index), x, y);
+ x = 0;
+ y = 0;
}
- if( x == 0 && y == 0 ) {// pick a random walkable cell
+ if (x == 0 && y == 0) { // Pick a random walkable cell.
do {
- x=rnd()%(map->list[m].xs-2)+1;
- y=rnd()%(map->list[m].ys-2)+1;
- } while(map->getcell(m, &sd->bl, x, y, CELL_CHKNOPASS));
+ x = rnd() % (map->list[map_id].xs - 2) + 1;
+ y = rnd() % (map->list[map_id].ys - 2) + 1;
+ } while(map->getcell(map_id, &sd->bl, x, y, CELL_CHKNOPASS) != 0);
}
- if (sd->state.vending && map->getcell(m, &sd->bl, x, y, CELL_CHKNOVENDING)) {
- clif->message (sd->fd, msg_sd(sd,204)); // "You can't open a shop on this cell."
+ if (sd->state.vending != 0 && map->getcell(map_id, &sd->bl, x, y, CELL_CHKNOVENDING) != 0) {
+ clif->message(sd->fd, msg_sd(sd, 204)); // "You can't open a shop on this cell."
vending->close(sd);
}
if (battle_config.player_warp_keep_direction == 0)
- sd->ud.dir = 0; // makes character face north
+ sd->ud.dir = 0; // Make character facing north.
- if(sd->bl.prev != NULL){
- unit->remove_map_pc(sd,clrtype);
- clif->changemap(sd,m,x,y); // [MouseJstr]
- } else if(sd->state.active)
- //Tag player for rewarping after map-loading is done. [Skotlex]
- sd->state.rewarp = 1;
+ if (sd->bl.prev != NULL) {
+ unit->remove_map_pc(sd, clrtype);
+ clif->changemap(sd, map_id, x, y); // [MouseJstr]
+ } else if (sd->state.active != 0) {
+ sd->state.rewarp = 1; // Tag character for re-warping after map-loading is done. [Skotlex]
+ }
sd->mapindex = map_index;
- sd->bl.m = m;
- sd->bl.x = sd->ud.to_x = x;
- sd->bl.y = sd->ud.to_y = y;
+ sd->bl.m = map_id;
+ sd->bl.x = x;
+ sd->bl.y = y;
+ sd->ud.to_x = x;
+ sd->ud.to_y = y;
- if( sd->status.guild_id > 0 && map->list[m].flag.gvg_castle ) { // Increased guild castle regen [Valaris]
+ if (sd->status.guild_id > 0 && map->list[map_id].flag.gvg_castle != 0) { // Double regeneration in guild castle. [Valaris]
struct guild_castle *gc = guild->mapindex2gc(sd->mapindex);
- if(gc && gc->guild_id == sd->status.guild_id)
+
+ if (gc != NULL && gc->guild_id == sd->status.guild_id)
sd->regen.state.gc = 1;
}
- if( sd->status.pet_id > 0 && sd->pd && sd->pd->pet.intimate > 0 ) {
- sd->pd->bl.m = m;
- sd->pd->bl.x = sd->pd->ud.to_x = x;
- sd->pd->bl.y = sd->pd->ud.to_y = y;
+ if (sd->status.pet_id > 0 && sd->pd != NULL && sd->pd->pet.intimate > PET_INTIMACY_NONE) {
+ sd->pd->bl.m = map_id;
+ sd->pd->bl.x = x;
+ sd->pd->bl.y = y;
+ sd->pd->ud.to_x = x;
+ sd->pd->ud.to_y = y;
sd->pd->ud.dir = sd->ud.dir;
}
- if( homun_alive(sd->hd) ) {
- sd->hd->bl.m = m;
- sd->hd->bl.x = sd->hd->ud.to_x = x;
- sd->hd->bl.y = sd->hd->ud.to_y = y;
+ if (homun_alive(sd->hd)) {
+ sd->hd->bl.m = map_id;
+ sd->hd->bl.x = x;
+ sd->hd->bl.y = y;
+ sd->hd->ud.to_x = x;
+ sd->hd->ud.to_y = y;
sd->hd->ud.dir = sd->ud.dir;
}
- if( sd->md ) {
- sd->md->bl.m = m;
- sd->md->bl.x = sd->md->ud.to_x = x;
- sd->md->bl.y = sd->md->ud.to_y = y;
+ if (sd->md != NULL) {
+ sd->md->bl.m = map_id;
+ sd->md->bl.x = x;
+ sd->md->bl.y = y;
+ sd->md->ud.to_x = x;
+ sd->md->ud.to_y = y;
sd->md->ud.dir = sd->ud.dir;
}
- /* given autotrades have no clients you have to trigger this manually otherwise they get stuck in memory limbo bugreport:7495 */
- if( sd->state.autotrade )
- clif->pLoadEndAck(0,sd);
+ // Given autotrades have no clients. You have to trigger this manually, otherwise they get stuck in memory limbo. (bugreport:7495)
+ if (sd->state.autotrade != 0)
+ clif->pLoadEndAck(0, sd);
return 0;
}
@@ -7526,7 +7624,7 @@ static int pc_allskillup(struct map_session_data *sd)
nullpo_ret(sd);
for (i = 0; i < MAX_SKILL_DB; i++) {
- if (sd->status.skill[i].flag != SKILL_FLAG_PERMANENT && sd->status.skill[i].flag != SKILL_FLAG_PERM_GRANTED && sd->status.skill[i].flag != SKILL_FLAG_PLAGIARIZED) {
+ if (sd->status.skill[i].flag == SKILL_FLAG_TEMPORARY || sd->status.skill[i].flag >= SKILL_FLAG_REPLACED_LV_0) {
sd->status.skill[i].lv = (sd->status.skill[i].flag == SKILL_FLAG_TEMPORARY) ? 0 : sd->status.skill[i].flag - SKILL_FLAG_REPLACED_LV_0;
sd->status.skill[i].flag = SKILL_FLAG_PERMANENT;
if (sd->status.skill[i].lv == 0)
@@ -8026,163 +8124,177 @@ static void pc_damage(struct map_session_data *sd, struct block_list *src, unsig
}
}
-/*==========================================
- * Invoked when a player has negative current hp
- *------------------------------------------*/
+/**
+ * Invoked when a character died.
+ *
+ * @param sd The died character.
+ * @param src The unit which caused the death.
+ * @retval 0 Death canceled.
+ * @retval 1 Standard death.
+ * @retval 9 Died in PVP/GVG/BG.
+ *
+ **/
static int pc_dead(struct map_session_data *sd, struct block_list *src)
{
- int i=0,j=0;
- int64 tick = timer->gettick();
+ nullpo_ret(sd);
- nullpo_retr(0, sd);
+ for (int i = 0; i < MAX_PC_DEVOTION; i++) {
+ if (sd->devotion[i] != 0) {
+ struct map_session_data *devsd = map->id2sd(sd->devotion[i]);
- for (j = 0; j < MAX_PC_DEVOTION; j++) {
- if (sd->devotion[j]) {
- struct map_session_data *devsd = map->id2sd(sd->devotion[j]);
- if (devsd)
+ if (devsd != NULL)
status_change_end(&devsd->bl, SC_DEVOTION, INVALID_TIMER);
- sd->devotion[j] = 0;
+
+ sd->devotion[i] = 0;
}
}
- if(sd->status.pet_id > 0 && sd->pd) {
+ if (sd->status.pet_id > 0 && sd->pd != NULL) {
struct pet_data *pd = sd->pd;
- if( !map->list[sd->bl.m].flag.noexppenalty ) {
+
+ if (map->list[sd->bl.m].flag.noexppenalty == 0) {
pet->set_intimate(pd, pd->pet.intimate - pd->petDB->die);
- if( pd->pet.intimate < 0 )
- pd->pet.intimate = 0;
- clif->send_petdata(sd,sd->pd,1,pd->pet.intimate);
+ clif->send_petdata(sd, sd->pd, 1, pd->pet.intimate);
}
- if( sd->pd->target_id ) // Unlock all targets...
+
+ if (sd->pd->target_id != 0) // Unlock all targets.
pet->unlocktarget(sd->pd);
}
- if (sd->status.hom_id > 0){
- if(battle_config.homunculus_auto_vapor && sd->hd)
- homun->vaporize(sd, HOM_ST_REST, true);
- }
+ if (sd->status.hom_id > 0 && sd->hd != NULL && battle_config.homunculus_auto_vapor != 0)
+ homun->vaporize(sd, HOM_ST_REST, true);
- if( sd->md )
- mercenary->delete(sd->md, 3); // Your mercenary soldier has ran away.
+ if (sd->md != NULL)
+ mercenary->delete(sd->md, 3); // Your mercenary soldier ran away.
- if( sd->ed )
+ if (sd->ed != NULL)
elemental->delete(sd->ed, 0);
- // Leave duel if you die [LuzZza]
- if(battle_config.duel_autoleave_when_die) {
- if(sd->duel_group > 0)
+ if (battle_config.duel_autoleave_when_die != 0) { // Leave duel if character died. [LuzZza]
+ if (sd->duel_group > 0)
duel->leave(sd->duel_group, sd);
- if(sd->duel_invite > 0)
+ if (sd->duel_invite > 0)
duel->reject(sd->duel_invite, sd);
}
- if (sd->npc_id && sd->st && sd->st->state != RUN)
+ if (sd->npc_id != 0 && sd->st != NULL && sd->st->state != RUN)
npc->event_dequeue(sd);
- pc_setglobalreg(sd,script->add_variable("PC_DIE_COUNTER"),sd->die_counter+1);
- pc->setparam(sd, SP_KILLERRID, src?src->id:0);
+ pc_setglobalreg(sd, script->add_variable("PC_DIE_COUNTER"), sd->die_counter + 1);
+ pc->setparam(sd, SP_KILLERRID, (src != NULL) ? src->id : 0);
- if( sd->bg_id ) {/* TODO: purge when bgqueue is deemed ok */
- struct battleground_data *bgd;
- if( (bgd = bg->team_search(sd->bg_id)) != NULL && bgd->die_event[0] )
+ if (sd->bg_id != 0) { //TODO: Purge when bgqueue is deemed ok.
+ struct battleground_data *bgd = bg->team_search(sd->bg_id);
+
+ if (bgd != NULL && bgd->die_event[0] != '\0')
npc->event(sd, bgd->die_event, 0);
}
- for (i = 0; i < VECTOR_LENGTH(sd->script_queues); i++ ) {
+ for (int i = 0; i < VECTOR_LENGTH(sd->script_queues); i++) {
struct script_queue *queue = script->queue(VECTOR_INDEX(sd->script_queues, i));
- if (queue && queue->event_death[0] != '\0')
+
+ if (queue != NULL && queue->event_death[0] != '\0')
npc->event(sd, queue->event_death, 0);
}
- npc->script_event(sd,NPCE_DIE);
+ npc->script_event(sd, NPCE_DIE);
- // Clear anything NPC-related when you die and was interacting with one.
- if ( (sd->npc_id || sd->npc_shopid) && sd->state.dialog) {
- if (sd->state.using_fake_npc) {
+ // Clear anything NPC-related if character died while interacting with one.
+ if ((sd->npc_id != 0 || sd->npc_shopid != 0) && sd->state.dialog != 0) {
+ if (sd->state.using_fake_npc != 0) {
clif->clearunit_single(sd->npc_id, CLR_OUTSIGHT, sd->fd);
sd->state.using_fake_npc = 0;
}
- if (sd->state.menu_or_input)
+
+ if (sd->state.menu_or_input != 0)
sd->state.menu_or_input = 0;
- if (sd->npc_menu)
+
+ if (sd->npc_menu != 0)
sd->npc_menu = 0;
sd->npc_id = 0;
sd->npc_shopid = 0;
- if (sd->st && sd->st->state != END)
+
+ if (sd->st != NULL && sd->st->state != END)
sd->st->state = END;
}
- /* e.g. not killed through pc->damage */
- if( pc_issit(sd) ) {
+ // E.g. not killed through pc->damage().
+ if (pc_issit(sd))
clif->sc_end(&sd->bl, sd->bl.id, SELF, status->get_sc_icon(SC_SIT));
- }
pc_setdead(sd);
-
clif->party_dead_notification(sd);
- //Reset menu skills/item skills
- if (sd->skillitem)
- sd->skillitem = sd->skillitemlv = 0;
- if (sd->menuskill_id)
- sd->menuskill_id = sd->menuskill_val = 0;
- //Reset ticks.
- sd->hp_loss.tick = sd->sp_loss.tick = sd->hp_regen.tick = sd->sp_regen.tick = 0;
+ pc->autocast_clear(sd); // Unset auto-cast data.
+
+ if (sd->menuskill_id != 0) { // Reset menu skills.
+ sd->menuskill_id = 0;
+ sd->menuskill_val = 0;
+ }
- if ( sd->spiritball )
+ // Reset ticks.
+ sd->hp_loss.tick = 0;
+ sd->sp_loss.tick = 0;
+ sd->hp_regen.tick = 0;
+ sd->sp_regen.tick = 0;
+
+ if (sd->spiritball != 0)
pc->delspiritball(sd, sd->spiritball, 0);
+
if (sd->charm_type != CHARM_TYPE_NONE && sd->charm_count > 0)
pc->del_charm(sd, sd->charm_count, sd->charm_type);
+ int64 tick = timer->gettick();
+
if (src != NULL) {
switch (src->type) {
- case BL_MOB:
- {
- struct mob_data *md = BL_UCAST(BL_MOB, src);
- if (md->target_id==sd->bl.id)
- mob->unlocktarget(md,tick);
- if (battle_config.mobs_level_up && md->status.hp
- && md->level < pc->maxbaselv(sd)
- && !md->guardian_data && md->special_state.ai == AI_NONE// Guardians/summons should not level. [Skotlex]
- ) {
- // monster level up [Valaris]
- clif->misceffect(&md->bl,0);
- md->level++;
- status_calc_mob(md, SCO_NONE);
- status_percent_heal(src,10,0);
-
- if( battle_config.show_mob_info&4 )
- {// update name with new level
- clif->blname_ack(0, &md->bl);
- }
- }
- src = battle->get_master(src); // Maybe Player Summon
+ case BL_MOB: {
+ struct mob_data *md = BL_UCAST(BL_MOB, src);
+
+ if (md->target_id == sd->bl.id)
+ mob->unlocktarget(md, tick);
+
+ if (battle_config.mobs_level_up != 0 && md->status.hp != 0 && md->level < pc->maxbaselv(sd)
+ && md->guardian_data == NULL && md->special_state.ai == AI_NONE) { // Guardians/summons should not level up. [Skotlex]
+ /// Monster level up. [Valaris]
+ clif->misceffect(&md->bl, 0);
+ md->level++;
+ status_calc_mob(md, SCO_NONE);
+ status_percent_heal(src, 10, 0);
+
+ if ((battle_config.show_mob_info & 4) != 0)
+ clif->blname_ack(0, &md->bl); // Update name with new level.
}
+
+ src = battle->get_master(src); // Maybe character summon.
break;
- case BL_PET: //Pass on to master...
- src = &BL_UCAST(BL_PET, src)->msd->bl;
+ }
+ case BL_PET:
+ src = &BL_UCAST(BL_PET, src)->msd->bl; // Pass on to master.
break;
- case BL_HOM:
- src = &BL_UCAST(BL_HOM, src)->master->bl;
+ case BL_HOM:
+ src = &BL_UCAST(BL_HOM, src)->master->bl; // Pass on to master.
break;
- case BL_MER:
- src = &BL_UCAST(BL_MER, src)->master->bl;
+ case BL_MER:
+ src = &BL_UCAST(BL_MER, src)->master->bl; // Pass on to master.
break;
}
}
if (src != NULL && src->type == BL_PC) {
struct map_session_data *ssd = BL_UCAST(BL_PC, src);
+
pc->setparam(ssd, SP_KILLEDRID, sd->bl.id);
npc->script_event(ssd, NPCE_KILLPC);
+ achievement->validate_pc_kill(ssd, sd);
- achievement->validate_pc_kill(ssd, sd); // Achievements [Smokexyz/Hercules]
-
- if (battle_config.pk_mode&2) {
+ if ((battle_config.pk_mode & 2) != 0) {
ssd->status.manner -= 5;
- if(ssd->status.manner < 0)
- sc_start(NULL,src,SC_NOCHAT,100,0,0);
+
+ if (ssd->status.manner < 0)
+ sc_start(NULL, src, SC_NOCHAT, 100, 0, 0);
+
#if 0
// PK/Karma system code (not enabled yet) [celest]
// originally from Kade Online, so i don't know if any of these is correct ^^;
@@ -8194,14 +8306,15 @@ static int pc_dead(struct map_session_data *sd, struct block_list *src)
// If player killed was more evil
sd->status.karma--;
ssd->status.karma--;
- }
- else if (sd->status.karma < ssd->status.karma) // If player killed was more good
+ } else if (sd->status.karma < ssd->status.karma) { // If player killed was more good
ssd->status.karma++;
+ }
// or the PK System way...
if (sd->status.karma > 0) // player killed is dishonourable?
ssd->status.karma--; // honour points earned
+
sd->status.karma++; // honour points lost
// To-do: Receive exp on certain occasions
@@ -8209,137 +8322,156 @@ static int pc_dead(struct map_session_data *sd, struct block_list *src)
}
}
- if( battle_config.bone_drop==2
- || (battle_config.bone_drop==1 && map->list[sd->bl.m].flag.pvp)
- ) {
+ if (battle_config.bone_drop == 2 || (battle_config.bone_drop == 1 && map->list[sd->bl.m].flag.pvp != 0)) {
struct item item_tmp;
- memset(&item_tmp,0,sizeof(item_tmp));
- item_tmp.nameid=ITEMID_SKULL_;
- item_tmp.identify=1;
- item_tmp.card[0]=CARD0_CREATE;
- item_tmp.card[1]=0;
- item_tmp.card[2]=GetWord(sd->status.char_id,0); // CharId
- item_tmp.card[3]=GetWord(sd->status.char_id,1);
+
+ memset(&item_tmp, 0, sizeof(item_tmp));
+ item_tmp.nameid = ITEMID_SKULL_;
+ item_tmp.identify = 1;
+ item_tmp.card[0] = CARD0_CREATE;
+ item_tmp.card[1] = 0;
+ item_tmp.card[2] = GetWord(sd->status.char_id, 0);
+ item_tmp.card[3] = GetWord(sd->status.char_id, 1);
map->addflooritem(&sd->bl, &item_tmp, 1, sd->bl.m, sd->bl.x, sd->bl.y, 0, 0, 0, 0, false);
}
- // activate Steel body if a super novice dies at 99+% exp [celest]
- if ((sd->job & MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && !sd->state.snovice_dead_flag) {
+ // Activate Steel Body if a Super Novice dies at 99+% EXP. [celest]
+ if ((sd->job & MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && sd->state.snovice_dead_flag == 0) {
uint64 next = pc->nextbaseexp(sd);
- if( next == 0 ) next = pc->thisbaseexp(sd);
+
+ if (next == 0)
+ next = pc->thisbaseexp(sd);
+
if (get_percentage64(sd->status.base_exp, next) >= 99) {
sd->state.snovice_dead_flag = 1;
pc->setstand(sd);
status_percent_heal(&sd->bl, 100, 100);
clif->resurrection(&sd->bl, 1);
- if(battle_config.pc_invincible_time)
+
+ if (battle_config.pc_invincible_time != 0)
pc->setinvincibletimer(sd, battle_config.pc_invincible_time);
- sc_start(NULL,&sd->bl,status->skill2sc(MO_STEELBODY),100,1,skill->get_time(MO_STEELBODY,1));
- if(map_flag_gvg2(sd->bl.m))
+
+ sc_start(NULL, &sd->bl, status->skill2sc(MO_STEELBODY), 100, 1, skill->get_time(MO_STEELBODY, 1));
+
+ if (map_flag_gvg2(sd->bl.m))
pc->respawn_timer(INVALID_TIMER, timer->gettick(), sd->bl.id, 0);
+
return 0;
}
}
- // changed penalty options, added death by player if pk_mode [Valaris]
- if (battle_config.death_penalty_type
- && pc->isDeathPenaltyJob(sd->job)
- && !map->list[sd->bl.m].flag.noexppenalty && !map_flag_gvg2(sd->bl.m)
- && !sd->sc.data[SC_BABY] && !sd->sc.data[SC_CASH_DEATHPENALTY]
- && !pc->auto_exp_insurance(sd)
- ) {
+ if (battle_config.death_penalty_type != 0 && pc->isDeathPenaltyJob(sd->job) && !map_flag_gvg2(sd->bl.m)
+ && map->list[sd->bl.m].flag.noexppenalty == 0 && sd->sc.data[SC_BABY] == NULL
+ && sd->sc.data[SC_CASH_DEATHPENALTY] == NULL && !pc->auto_exp_insurance(sd)) {
if (battle_config.death_penalty_base > 0) {
unsigned int base_penalty = 0;
+ int rate = battle_config.death_penalty_base;
+
switch (battle_config.death_penalty_type) {
- case 1:
- base_penalty = (unsigned int) apply_percentrate64(pc->nextbaseexp(sd), battle_config.death_penalty_base, 10000);
- break;
- case 2:
- base_penalty = (unsigned int) apply_percentrate64(sd->status.base_exp, battle_config.death_penalty_base, 10000);
- break;
+ case 1:
+ base_penalty = (unsigned int)apply_percentrate64(pc->nextbaseexp(sd), rate, 10000);
+ break;
+ case 2:
+ base_penalty = (unsigned int)apply_percentrate64(sd->status.base_exp, rate, 10000);
+ break;
}
if (base_penalty != 0) {
- if (battle_config.pk_mode && src && src->type==BL_PC)
- base_penalty*=2;
- if( sd->status.mod_death != 100 )
+ if (battle_config.pk_mode != 0 && src != NULL && src->type == BL_PC)
+ base_penalty *= 2;
+
+ if (sd->status.mod_death != 100)
base_penalty = base_penalty * sd->status.mod_death / 100;
+
sd->status.base_exp -= min(sd->status.base_exp, base_penalty);
- clif->updatestatus(sd,SP_BASEEXP);
+ clif->updatestatus(sd, SP_BASEEXP);
}
}
- if(battle_config.death_penalty_job > 0) {
+ if (battle_config.death_penalty_job > 0) {
unsigned int job_penalty = 0;
+ int rate = battle_config.death_penalty_job;
switch (battle_config.death_penalty_type) {
- case 1:
- job_penalty = (unsigned int) apply_percentrate64(pc->nextjobexp(sd), battle_config.death_penalty_job, 10000);
- break;
- case 2:
- job_penalty = (unsigned int) apply_percentrate64(sd->status.job_exp, battle_config.death_penalty_job, 10000);
- break;
+ case 1:
+ job_penalty = (unsigned int)apply_percentrate64(pc->nextjobexp(sd), rate, 10000);
+ break;
+ case 2:
+ job_penalty = (unsigned int)apply_percentrate64(sd->status.job_exp, rate, 10000);
+ break;
}
if (job_penalty != 0) {
- if (battle_config.pk_mode && src && src->type==BL_PC)
- job_penalty*=2;
- if( sd->status.mod_death != 100 )
+ if (battle_config.pk_mode != 0 && src != NULL && src->type == BL_PC)
+ job_penalty *= 2;
+
+ if (sd->status.mod_death != 100)
job_penalty = job_penalty * sd->status.mod_death / 100;
+
sd->status.job_exp -= min(sd->status.job_exp, job_penalty);
- clif->updatestatus(sd,SP_JOBEXP);
+ clif->updatestatus(sd, SP_JOBEXP);
}
}
- if (battle_config.zeny_penalty > 0 && !map->list[sd->bl.m].flag.nozenypenalty) {
+ if (battle_config.zeny_penalty > 0 && map->list[sd->bl.m].flag.nozenypenalty == 0) {
int zeny_penalty = apply_percentrate(sd->status.zeny, battle_config.zeny_penalty, 10000);
+
if (zeny_penalty != 0)
pc->payzeny(sd, zeny_penalty, LOG_TYPE_PICKDROP_PLAYER, NULL);
}
}
- if(map->list[sd->bl.m].flag.pvp_nightmaredrop) {
- // Moved this outside so it works when PVP isn't enabled and during pk mode [Ancyker]
- for(j=0;j<map->list[sd->bl.m].drop_list_count;j++){
- int id = map->list[sd->bl.m].drop_list[j].drop_id;
- int type = map->list[sd->bl.m].drop_list[j].drop_type;
- int per = map->list[sd->bl.m].drop_list[j].drop_per;
- if(id == 0)
+ if (map->list[sd->bl.m].flag.pvp_nightmaredrop != 0) {
+ // Moved this outside so it works when PVP isn't enabled and during pk mode. [Ancyker]
+ for (int i = 0; i < map->list[sd->bl.m].drop_list_count; i++) {
+ int id = map->list[sd->bl.m].drop_list[i].drop_id;
+ int type = map->list[sd->bl.m].drop_list[i].drop_type;
+ int per = map->list[sd->bl.m].drop_list[i].drop_per;
+
+ if (id == 0)
continue;
- if(id == -1){
- int eq_num = 0, eq_n[MAX_INVENTORY], k;
- memset(eq_n,0,sizeof(eq_n));
- for(i = 0; i < sd->status.inventorySize; i++) {
- if( (type == 1 && !sd->status.inventory[i].equip)
- || (type == 2 && sd->status.inventory[i].equip)
- || type == 3)
- {
+
+ if (id == -1) {
+ int eq_num = 0;
+ int eq_n[MAX_INVENTORY];
+
+ memset(eq_n, 0, sizeof(eq_n));
+
+ for (int j = 0; j < sd->status.inventorySize; j++) {
+ bool is_equipped = (sd->status.inventory[j].equip != 0);
+
+ if ((type == 1 && !is_equipped) || (type == 2 && is_equipped) || type == 3) {
+ int k;
+
ARR_FIND(0, sd->status.inventorySize, k, eq_n[k] <= 0);
+
if (k < sd->status.inventorySize)
- eq_n[k] = i;
+ eq_n[k] = j;
eq_num++;
}
}
- if(eq_num > 0){
- int n = eq_n[rnd()%eq_num];
- if(rnd()%10000 < per){
- if(sd->status.inventory[n].equip)
+
+ if (eq_num > 0) {
+ int n = eq_n[rnd() % eq_num];
+
+ if (rnd() % 10000 < per) {
+ if (sd->status.inventory[n].equip != 0)
pc->unequipitem(sd, n, PCUNEQUIPITEM_RECALC|PCUNEQUIPITEM_FORCE);
- pc->dropitem(sd,n,1);
+
+ pc->dropitem(sd, n, 1);
}
}
- }
- else if(id > 0){
- for( i = 0; i < sd->status.inventorySize; i++) {
- if(sd->status.inventory[i].nameid == id
- && rnd()%10000 < per
- && ((type == 1 && !sd->status.inventory[i].equip)
- || (type == 2 && sd->status.inventory[i].equip)
- || type == 3) ){
- if(sd->status.inventory[i].equip)
- pc->unequipitem(sd, i, PCUNEQUIPITEM_RECALC|PCUNEQUIPITEM_FORCE);
- pc->dropitem(sd,i,1);
+ } else if (id > 0) {
+ for (int j = 0; j < sd->status.inventorySize; j++) {
+ bool is_equipped = (sd->status.inventory[j].equip != 0);
+
+ if (((type == 1 && !is_equipped) || (type == 2 && is_equipped) || type == 3)
+ && sd->status.inventory[j].nameid == id && rnd() % 10000 < per) {
+ if (is_equipped)
+ pc->unequipitem(sd, j, PCUNEQUIPITEM_RECALC|PCUNEQUIPITEM_FORCE);
+
+ pc->dropitem(sd, j, 1);
break;
}
}
@@ -8347,46 +8479,51 @@ static int pc_dead(struct map_session_data *sd, struct block_list *src)
}
}
- // Remove autotrade to prevent autotrading from save point
- if( (sd->state.standalone || sd->state.autotrade)
- && (map->list[sd->bl.m].flag.pvp || map->list[sd->bl.m].flag.gvg)
- ) {
+ // Remove autotrade to prevent autotrading from save point.
+ if ((map->list[sd->bl.m].flag.pvp != 0 || map->list[sd->bl.m].flag.gvg != 0)
+ && (sd->state.standalone != 0 || sd->state.autotrade != 0)) {
sd->state.autotrade = 0;
sd->state.standalone = 0;
- pc->autotrade_update(sd,PAUC_REMOVE);
+ pc->autotrade_update(sd, PAUC_REMOVE);
map->quit(sd);
}
- // pvp
- // disable certain pvp functions on pk_mode [Valaris]
- if( map->list[sd->bl.m].flag.pvp && !battle_config.pk_mode && !map->list[sd->bl.m].flag.pvp_nocalcrank ) {
+ // Disable certain PVP functions on pk_mode. [Valaris]
+ if (map->list[sd->bl.m].flag.pvp != 0 && battle_config.pk_mode == 0
+ && map->list[sd->bl.m].flag.pvp_nocalcrank == 0) {
sd->pvp_point -= 5;
sd->pvp_lost++;
+
if (src != NULL && src->type == BL_PC) {
struct map_session_data *ssd = BL_UCAST(BL_PC, src);
+
ssd->pvp_point++;
ssd->pvp_won++;
}
- if( sd->pvp_point < 0 )
- {
- timer->add(tick+1, pc->respawn_timer,sd->bl.id,0);
+
+ if (sd->pvp_point < 0) {
+ timer->add(tick + 1, pc->respawn_timer, sd->bl.id, 0);
return 1|8;
}
}
- //GvG
- if( map_flag_gvg2(sd->bl.m) ) {
- timer->add(tick+1, pc->respawn_timer, sd->bl.id, 0);
+
+ // GVG
+ if (map_flag_gvg2(sd->bl.m)) {
+ timer->add(tick + 1, pc->respawn_timer, sd->bl.id, 0);
return 1|8;
- } else if( sd->bg_id ) {
+ }
+
+ if (sd->bg_id != 0) {
struct battleground_data *bgd = bg->team_search(sd->bg_id);
- if( bgd && bgd->mapindex > 0 ) { // Respawn by BG
- timer->add(tick+1000, pc->respawn_timer, sd->bl.id, 0);
+
+ if (bgd != NULL && bgd->mapindex > 0) { // Respawn by BG.
+ timer->add(tick + 1000, pc->respawn_timer, sd->bl.id, 0);
return 1|8;
}
}
- //Reset "can log out" tick.
- if( battle_config.prevent_logout )
+ // Reset "can log out" tick.
+ if (battle_config.prevent_logout != 0)
sd->canlog_tick = timer->gettick() - battle_config.prevent_logout;
return 1;
@@ -8809,6 +8946,10 @@ static int pc_itemheal(struct map_session_data *sd, int itemid, int hp, int sp)
// 2014 Halloween Event : Pumpkin Bonus
if ( sd->sc.data[SC_MTF_PUMPKIN] && itemid == ITEMID_PUMPKIN )
hp += (int)(hp * sd->sc.data[SC_MTF_PUMPKIN]->val1/100);
+
+ // Activation Potion
+ if (sd->sc.data[SC_VITALIZE_POTION] != NULL)
+ hp += hp * sd->sc.data[SC_VITALIZE_POTION]->val3 / 100;
}
if(sp) {
bonus = 100 + (sd->battle_status.int_<<1)
@@ -9203,6 +9344,72 @@ static int pc_changelook(struct map_session_data *sd, int type, int val)
return 0;
}
+/**
+ * Hides a character.
+ *
+ * @param sd The character to hide.
+ * @param show_msg Whether to show message to the character or not.
+ *
+ **/
+static void pc_hide(struct map_session_data *sd, bool show_msg)
+{
+ nullpo_retv(sd);
+
+ clif->clearunit_area(&sd->bl, CLR_OUTSIGHT);
+ sd->sc.option |= OPTION_INVISIBLE;
+ sd->vd.class = INVISIBLE_CLASS;
+
+ if (show_msg)
+ clif->message(sd->fd, atcommand->msgsd(sd, 11)); // Invisible: On
+
+ // Decrement the number of pvp players on the map.
+ map->list[sd->bl.m].users_pvp--;
+
+ if (map->list[sd->bl.m].flag.pvp != 0 && map->list[sd->bl.m].flag.pvp_nocalcrank == 0
+ && sd->pvp_timer != INVALID_TIMER) { // Unregister the player for ranking.
+ timer->delete(sd->pvp_timer, pc->calc_pvprank_timer);
+ sd->pvp_timer = INVALID_TIMER;
+ }
+
+ clif->changeoption(&sd->bl);
+}
+
+/**
+ * Unhides a character.
+ *
+ * @param sd The character to unhide.
+ * @param show_msg Whether to show message to the character or not.
+ *
+ **/
+static void pc_unhide(struct map_session_data *sd, bool show_msg)
+{
+ nullpo_retv(sd);
+
+ sd->sc.option &= ~OPTION_INVISIBLE;
+
+ if (sd->disguise != -1)
+ status->set_viewdata(&sd->bl, sd->disguise);
+ else
+ status->set_viewdata(&sd->bl, sd->status.class);
+
+ if (show_msg)
+ clif->message(sd->fd, atcommand->msgsd(sd, 10)); // Invisible: Off
+
+ // Increment the number of pvp players on the map.
+ map->list[sd->bl.m].users_pvp++;
+
+ if (map->list[sd->bl.m].flag.pvp != 0 && map->list[sd->bl.m].flag.pvp_nocalcrank == 0) // Register the player for ranking.
+ sd->pvp_timer = timer->add(timer->gettick() + 200, pc->calc_pvprank_timer, sd->bl.id, 0);
+
+ // bugreport:2266
+ map->foreachinmovearea(clif->insight, &sd->bl, AREA_SIZE, sd->bl.x, sd->bl.y, BL_ALL, &sd->bl);
+
+ if (sd->disguise != -1)
+ clif->spawn_unit(&sd->bl, AREA_WOS);
+
+ clif->changeoption(&sd->bl);
+}
+
/*==========================================
* Give an option (type) to player (sd) and display it to client
*------------------------------------------*/
@@ -9214,7 +9421,13 @@ static int pc_setoption(struct map_session_data *sd, int type)
//Option has to be changed client-side before the class sprite or it won't always work (eg: Wedding sprite) [Skotlex]
sd->sc.option=type;
- clif->changeoption(&sd->bl);
+
+ if ((p_type & OPTION_INVISIBLE) != 0 && (type & OPTION_INVISIBLE) == 0) // Unhide character.
+ pc->unhide(sd, false);
+ else if ((p_type & OPTION_INVISIBLE) == 0 && (type & OPTION_INVISIBLE) != 0) // Hide character.
+ pc->hide(sd, false);
+ else
+ clif->changeoption(&sd->bl);
if( (type&OPTION_RIDING && !(p_type&OPTION_RIDING)) || (type&OPTION_DRAGON && !(p_type&OPTION_DRAGON) && pc->checkskill(sd,RK_DRAGONTRAINING) > 0) ) {
// Mounting
@@ -11171,7 +11384,7 @@ static int pc_charm_timer(int tid, int64 tick, int id, intptr_t data)
* @param max Maximum amount of charms to add.
* @param type Charm type (@see spirit_charm_types)
*/
-static void pc_add_charm(struct map_session_data *sd, int interval, int max, int type)
+static void pc_add_charm(struct map_session_data *sd, int interval, int max, enum spirit_charm_types type)
{
int tid, i;
@@ -11213,7 +11426,7 @@ static void pc_add_charm(struct map_session_data *sd, int interval, int max, int
* @param count Amount of charms to remove.
* @param type Type of charm to remove.
*/
-static void pc_del_charm(struct map_session_data *sd, int count, int type)
+static void pc_del_charm(struct map_session_data *sd, int count, enum spirit_charm_types type)
{
int i;
@@ -12726,7 +12939,10 @@ void pc_defaults(void)
pc->unequipitem_pos = pc_unequipitem_pos;
pc->checkitem = pc_checkitem;
pc->useitem = pc_useitem;
- pc->itemskill_clear = pc_itemskill_clear;
+ pc->autocast_clear_current = pc_autocast_clear_current;
+ pc->autocast_clear = pc_autocast_clear;
+ pc->autocast_set_current = pc_autocast_set_current;
+ pc->autocast_remove = pc_autocast_remove;
pc->skillatk_bonus = pc_skillatk_bonus;
pc->skillheal_bonus = pc_skillheal_bonus;
@@ -12739,6 +12955,8 @@ void pc_defaults(void)
pc->itemheal = pc_itemheal;
pc->percentheal = pc_percentheal;
pc->jobchange = pc_jobchange;
+ pc->hide = pc_hide;
+ pc->unhide = pc_unhide;
pc->setoption = pc_setoption;
pc->setcart = pc_setcart;
pc->setfalcon = pc_setfalcon;
diff --git a/src/map/pc.h b/src/map/pc.h
index 8d1ae3607..dfc1f886e 100644
--- a/src/map/pc.h
+++ b/src/map/pc.h
@@ -173,6 +173,17 @@ struct pc_combos {
int id; /* this combo id */
};
+/** Auto-cast related data. **/
+struct autocast_data {
+ enum autocast_type type; // The auto-cast type.
+ int skill_id; // The auto-cast skill ID.
+ int skill_lv; // The auto-cast skill level.
+ bool itemskill_conditions_checked; // Used by itemskill() script command, to prevent second check of conditions after target was selected.
+ bool itemskill_check_conditions; // Used by itemskill() script command, to check skill conditions and consume them.
+ bool itemskill_instant_cast; // Used by itemskill() script command, to cast skill instantaneously.
+ bool itemskill_cast_on_self; // Used by itemskill() script command, to forcefully cast skill on invoking character.
+};
+
struct map_session_data {
struct block_list bl;
struct unit_data ud;
@@ -181,6 +192,8 @@ struct map_session_data {
struct status_change sc;
struct regen_data regen;
struct regen_data_sub sregen, ssregen;
+ struct autocast_data auto_cast_current; // Currently processed auto-cast skill.
+ VECTOR_DECL(struct autocast_data) auto_cast; // Auto-cast vector.
//NOTE: When deciding to add a flag to state or special_state, take into consideration that state is preserved in
//status_calc_pc, while special_state is recalculated in each call. [Skotlex]
struct {
@@ -194,8 +207,6 @@ struct map_session_data {
unsigned int rest : 1;
unsigned int storage_flag : 2; // @see enum storage_flag
unsigned int snovice_dead_flag : 1; //Explosion spirits on death: 0 off, 1 used.
- unsigned int abra_flag : 2; // Abracadabra bugfix by Aru
- unsigned int autocast : 1; // Autospell flag [Inkfish]
unsigned int autotrade : 2; //By Fantik
unsigned int showdelay :1;
unsigned int showexp :1;
@@ -240,10 +251,6 @@ struct map_session_data {
unsigned int refine_ui : 1;
unsigned int npc_unloaded : 1; ///< The player is talking with an unloaded NPCs (respawned tombstones)
unsigned int lapine_ui : 1;
- unsigned int itemskill_conditions_checked : 1; // Used by itemskill() script command, to prevent second check of conditions after target was selected.
- unsigned int itemskill_check_conditions : 1; // Used by itemskill() script command, to check skill conditions and consume them.
- unsigned int itemskill_no_casttime : 1; // Used by itemskill() script command, to cast skill instantaneously.
- unsigned int itemskill_castonself : 1; // Used by itemskill() script command, to forcefully cast skill on invoking character.
} state;
struct {
unsigned char no_weapon_damage, no_magic_damage, no_misc_damage;
@@ -298,7 +305,6 @@ struct map_session_data {
int followtimer; // [MouseJstr]
int followtarget;
time_t emotionlasttime; // to limit flood with emotion packets
- int skillitem,skillitemlv;
uint16 skill_id_old,skill_lv_old;
uint16 skill_id_dance,skill_lv_dance;
short cook_mastery; // range: [0,1999] [Inkfish]
@@ -434,7 +440,7 @@ END_ZEROED_BLOCK;
int spiritball, spiritball_old;
int spirit_timer[MAX_SPIRITBALL];
int charm_count;
- int charm_type;
+ enum spirit_charm_types charm_type;
int charm_timer[MAX_SPIRITCHARM];
unsigned char potion_success_counter; //Potion successes in row counter
unsigned char mission_count; //Stores the bounty kill count for TK_MISSION
@@ -492,6 +498,7 @@ END_ZEROED_BLOCK;
int change_level_3rd; // job level when changing from 2nd to 3rd class [jobchange_level_3rd in global_reg_value]
char fakename[NAME_LENGTH]; // fake names [Valaris]
+ int fakename_options; // Fake name display options.
int duel_group; // duel vars [LuzZza]
int duel_invite;
@@ -623,10 +630,6 @@ END_ZEROED_BLOCK;
uint8 lang_id;
- // temporary debugging of bug #3504
- const char* delunit_prevfile;
- int delunit_prevline;
-
// HatEffect
VECTOR_DECL(int) hatEffectId;
@@ -647,15 +650,6 @@ END_ZEROED_BLOCK;
bool achievements_received;
// Title
VECTOR_DECL(int) title_ids;
-
- /*
- * itemskill_conditions_checked/itemskill_no_conditions/itemskill_no_casttime/itemskill_castonself abuse prevention.
- * If a skill, casted by itemskill() script command, is aborted while target selection,
- * the map server gets no notification where these states could be unset.
- * Thus we need this helper variables to prevent abusing these states for next skill cast.
- */
- int itemskill_id;
- int itemskill_lv;
};
#define EQP_WEAPON EQP_HAND_R
@@ -681,6 +675,7 @@ END_ZEROED_BLOCK;
#define pc_isidle(sd) ( (sd)->chat_id != 0 || (sd)->state.vending || (sd)->state.buyingstore || DIFF_TICK(sockt->last_tick, (sd)->idletime) >= battle->bc->idle_no_share )
#define pc_istrading(sd) ( (sd)->npc_id || (sd)->state.vending || (sd)->state.buyingstore || (sd)->state.trading )
#define pc_cant_act(sd) ( (sd)->npc_id || (sd)->state.vending || (sd)->state.buyingstore || (sd)->chat_id != 0 || ((sd)->sc.opt1 && (sd)->sc.opt1 != OPT1_BURNING) || (sd)->state.trading || (sd)->state.storage_flag || (sd)->state.prevend || (sd)->state.refine_ui == 1 || (sd)->state.lapine_ui == 1)
+#define pc_cant_act_except_lapine(sd) ((sd)->npc_id || (sd)->state.vending || (sd)->state.buyingstore || (sd)->chat_id != 0 || ((sd)->sc.opt1 && (sd)->sc.opt1 != OPT1_BURNING) || (sd)->state.trading || (sd)->state.storage_flag || (sd)->state.prevend || (sd)->state.refine_ui == 1)
/* equals pc_cant_act except it doesn't check for chat rooms */
#define pc_cant_act2(sd) ( (sd)->npc_id || (sd)->state.buyingstore || ((sd)->sc.opt1 && (sd)->sc.opt1 != OPT1_BURNING) || (sd)->state.trading || (sd)->state.storage_flag || (sd)->state.prevend || (sd)->state.refine_ui == 1 || (sd)->state.lapine_ui == 1)
@@ -690,7 +685,7 @@ END_ZEROED_BLOCK;
#define pc_ishiding(sd) ( (sd)->sc.option&(OPTION_HIDE|OPTION_CLOAK|OPTION_CHASEWALK) )
#define pc_iscloaking(sd) ( !((sd)->sc.option&OPTION_CHASEWALK) && ((sd)->sc.option&OPTION_CLOAK) )
#define pc_ischasewalk(sd) ( (sd)->sc.option&OPTION_CHASEWALK )
-#define pc_ismuted(sc,type) ( (sc)->data[SC_NOCHAT] && (sc)->data[SC_NOCHAT]->val1&(type) )
+#define pc_ismuted(sc, type) ( (sc)->data[SC_NOCHAT] != NULL && (battle_config.manner_system & (type)) != 0 )
#define pc_isvending(sd) ((sd)->state.vending || (sd)->state.prevend || (sd)->state.buyingstore)
#ifdef NEW_CARTS
@@ -1034,7 +1029,10 @@ END_ZEROED_BLOCK; /* End */
void (*unequipitem_pos) (struct map_session_data *sd, int n, int pos);
int (*checkitem) (struct map_session_data *sd);
int (*useitem) (struct map_session_data *sd,int n);
- int (*itemskill_clear) (struct map_session_data *sd);
+ void (*autocast_clear_current) (struct map_session_data *sd);
+ void (*autocast_clear) (struct map_session_data *sd);
+ void (*autocast_set_current) (struct map_session_data *sd, int skill_id);
+ void (*autocast_remove) (struct map_session_data *sd, enum autocast_type type, int skill_id, int skill_lv);
int (*skillatk_bonus) (struct map_session_data *sd, uint16 skill_id);
int (*skillheal_bonus) (struct map_session_data *sd, uint16 skill_id);
@@ -1047,6 +1045,8 @@ END_ZEROED_BLOCK; /* End */
int (*itemheal) (struct map_session_data *sd,int itemid, int hp,int sp);
int (*percentheal) (struct map_session_data *sd,int hp,int sp);
int (*jobchange) (struct map_session_data *sd, int class, int upper);
+ void (*hide) (struct map_session_data *sd, bool show_msg);
+ void (*unhide) (struct map_session_data *sd, bool show_msg);
int (*setoption) (struct map_session_data *sd,int type);
int (*setcart) (struct map_session_data* sd, int type);
void (*setfalcon) (struct map_session_data *sd, bool flag);
@@ -1130,8 +1130,8 @@ END_ZEROED_BLOCK; /* End */
int (*load_combo) (struct map_session_data *sd);
- void (*add_charm) (struct map_session_data *sd, int interval, int max, int type);
- void (*del_charm) (struct map_session_data *sd, int count, int type);
+ void (*add_charm) (struct map_session_data *sd, int interval, int max, enum spirit_charm_types type);
+ void (*del_charm) (struct map_session_data *sd, int count, enum spirit_charm_types type);
void (*baselevelchanged) (struct map_session_data *sd);
int (*level_penalty_mod) (int diff, unsigned char race, uint32 mode, int type);
diff --git a/src/map/pet.c b/src/map/pet.c
index aeb372c05..299de42c7 100644
--- a/src/map/pet.c
+++ b/src/map/pet.c
@@ -60,62 +60,101 @@ struct pet_interface *pet;
#define MIN_PETTHINKTIME 100
+/**
+ * Gets a pet's hunger value, depending it's hunger level.
+ * This value is only used in clif_parse_LoadEndAck() when calling clif_pet_emotion().
+ *
+ * @param pd The pet.
+ * @return The pet's hunger value.
+ *
+ **/
static int pet_hungry_val(struct pet_data *pd)
{
nullpo_ret(pd);
- if(pd->pet.hungry > 90)
+ if (pd->pet.hungry > PET_HUNGER_SATISFIED)
return 4;
- else if(pd->pet.hungry > 75)
+ else if (pd->pet.hungry > PET_HUNGER_NEUTRAL)
return 3;
- else if(pd->pet.hungry > 25)
+ else if (pd->pet.hungry > PET_HUNGER_HUNGRY)
return 2;
- else if(pd->pet.hungry > 10)
+ else if (pd->pet.hungry > PET_HUNGER_VERY_HUNGRY)
return 1;
else
return 0;
}
-static void pet_set_intimate(struct pet_data *pd, int value)
+/**
+ * Sets a pet's hunger value.
+ *
+ * @param pd The pet.
+ * @param value The pet's new hunger value.
+ *
+ **/
+static void pet_set_hunger(struct pet_data *pd, int value)
{
- int intimate;
- struct map_session_data *sd;
+ nullpo_retv(pd);
+ pd->pet.hungry = cap_value(value, PET_HUNGER_STARVING, PET_HUNGER_STUFFED);
+}
+
+/**
+ * Sets a pet's intimacy value.
+ * Deletes the pet if its intimacy value reaches PET_INTIMACY_NONE (0).
+ *
+ * @param pd The pet.
+ * @param value The pet's new intimacy value.
+ *
+ **/
+static void pet_set_intimate(struct pet_data *pd, int value)
+{
nullpo_retv(pd);
- intimate = pd->pet.intimate;
- sd = pd->msd;
+ nullpo_retv(pd->msd);
+
+ pd->pet.intimate = cap_value(value, PET_INTIMACY_NONE, PET_INTIMACY_MAX);
- pd->pet.intimate = value;
+ struct map_session_data *sd = pd->msd;
- if( (intimate >= battle_config.pet_equip_min_friendly && pd->pet.intimate < battle_config.pet_equip_min_friendly) || (intimate < battle_config.pet_equip_min_friendly && pd->pet.intimate >= battle_config.pet_equip_min_friendly) )
- status_calc_pc(sd,SCO_NONE);
+ status_calc_pc(sd, SCO_NONE);
- /* Pet is lost, delete the egg */
- if (value <= 0) {
+ if (pd->pet.intimate == PET_INTIMACY_NONE) { /// Pet is lost. Delete the egg.
int i;
- ARR_FIND(0, sd->status.inventorySize, i, sd->status.inventory[i].card[0] == CARD0_PET &&
- pd->pet.pet_id == MakeDWord(sd->status.inventory[i].card[1], sd->status.inventory[i].card[2]));
+ ARR_FIND(0, sd->status.inventorySize, i, sd->status.inventory[i].card[0] == CARD0_PET
+ && pd->pet.pet_id == MakeDWord(sd->status.inventory[i].card[1],
+ sd->status.inventory[i].card[2]));
- if (i != sd->status.inventorySize) {
+ if (i != sd->status.inventorySize)
pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_EGG);
- }
}
}
+/**
+ * Creates a pet egg.
+ *
+ * @param sd The character who tries to create the pet egg.
+ * @param item_id The pet egg's item ID.
+ * @return 0 on failure, 1 on success.
+ *
+ **/
static int pet_create_egg(struct map_session_data *sd, int item_id)
{
- int pet_id = pet->search_petDB_index(item_id, PET_EGG);
nullpo_ret(sd);
- if (pet_id < 0) return 0; //No pet egg here.
- if (!pc->inventoryblank(sd)) return 0; // Inventory full
+
+ int pet_id = pet->search_petDB_index(item_id, PET_EGG);
+
+ if (pet_id == INDEX_NOT_FOUND) // No pet egg here.
+ return 0;
+
+ if (pc->inventoryblank(sd) == 0) // Inventory full.
+ return 0;
+
sd->catch_target_class = pet->db[pet_id].class_;
- intif->create_pet(sd->status.account_id, sd->status.char_id,
- pet->db[pet_id].class_,
- mob->db(pet->db[pet_id].class_)->lv,
- pet->db[pet_id].EggID, 0,
- (short)pet->db[pet_id].intimate,
- 100, 0, 1, pet->db[pet_id].jname);
+ intif->create_pet(sd->status.account_id, sd->status.char_id, pet->db[pet_id].class_,
+ mob->db(pet->db[pet_id].class_)->lv, pet->db[pet_id].EggID, 0,
+ (short)pet->db[pet_id].intimate, PET_HUNGER_STUFFED,
+ 0, 1, pet->db[pet_id].jname);
+
return 1;
}
@@ -162,48 +201,42 @@ static int pet_attackskill(struct pet_data *pd, int target_id)
return 0;
}
+/**
+ * Checks if a pet can attack a target.
+ *
+ * @param sd The pet's master.
+ * @param bl The pet's target.
+ * @param type 0 - Support master when attacking. Not 0 - Support master when being attacked.
+ * @return 0 on failure, 1 on success.
+ *
+ **/
static int pet_target_check(struct map_session_data *sd, struct block_list *bl, int type)
{
- struct pet_data *pd;
- int rate;
-
nullpo_ret(sd);
- pd = sd->pd;
+ nullpo_ret(sd->pd);
+ nullpo_ret(bl);
+ Assert_ret(sd->pd->msd == NULL || sd->pd->msd->pd == sd->pd);
- Assert_ret(pd->msd == 0 || pd->msd->pd == pd);
+ struct pet_data *pd = sd->pd;
- if( bl == NULL || bl->type != BL_MOB || bl->prev == NULL
- || pd->pet.intimate < battle_config.pet_support_min_friendly
- || pd->pet.hungry < 1
- || pd->pet.class_ == status->get_class(bl))
- return 0;
+ if ((type == 0 && pd->petDB->attack_rate == 0) || (type != 0 && pd->petDB->defence_attack_rate == 0))
+ return 0; // If base rate is 0, there's nothing to do.
- if( pd->bl.m != bl->m
- || !check_distance_bl(&pd->bl, bl, pd->db->range2))
+ if (bl->type != BL_MOB || bl->prev == NULL || pd->pet.intimate < battle_config.pet_support_min_friendly
+ || pd->pet.hungry <= PET_HUNGER_STARVING || pd->pet.class_ == status->get_class(bl)
+ || pd->bl.m != bl->m || !check_distance_bl(&pd->bl, bl, pd->db->range2)
+ || status->check_skilluse(&pd->bl, bl, 0, 0) == 0) {
return 0;
+ }
- if (!status->check_skilluse(&pd->bl, bl, 0, 0))
- return 0;
+ int rate = ((type == 0) ? pd->petDB->attack_rate : pd->petDB->defence_attack_rate) * pd->rate_fix / 1000;
- if(!type) {
- rate = pd->petDB->attack_rate;
- rate = rate * pd->rate_fix/1000;
- if(pd->petDB->attack_rate > 0 && rate <= 0)
- rate = 1;
- } else {
- rate = pd->petDB->defence_attack_rate;
- rate = rate * pd->rate_fix/1000;
- if(pd->petDB->defence_attack_rate > 0 && rate <= 0)
- rate = 1;
- }
- if(rnd()%10000 < rate)
- {
- if(pd->target_id == 0 || rnd()%10000 < pd->petDB->change_target_rate)
- pd->target_id = bl->id;
- }
+ if (rnd() % 10000 < max(rate, 1) && (pd->target_id == 0 || rnd() % 10000 < pd->petDB->change_target_rate))
+ pd->target_id = bl->id;
return 0;
}
+
/*==========================================
* Pet SC Check [Skotlex]
*------------------------------------------*/
@@ -226,59 +259,72 @@ static int pet_sc_check(struct map_session_data *sd, int type)
return 0;
}
+/**
+ * Updates a pet's hunger value and timer and updates the pet's intimacy value if starving.
+ *
+ * @param tid The timer ID.
+ * @param tick The base amount of ticks to add to the pet's hunger timer. (The timer's current ticks when calling this fuction.)
+ * @param id The pet master's account ID.
+ * @param data Unused.
+ * @return 1 on failure, 0 on success.
+ *
+ **/
static int pet_hungry(int tid, int64 tick, int id, intptr_t data)
{
- struct map_session_data *sd;
- struct pet_data *pd;
- int interval;
+ struct map_session_data *sd = map->id2sd(id);
- sd=map->id2sd(id);
- if(!sd)
+ if (sd == NULL || sd->status.pet_id == 0 || sd->pd == NULL)
return 1;
- if(!sd->status.pet_id || !sd->pd)
- return 1;
+ struct pet_data *pd = sd->pd;
- pd = sd->pd;
- if(pd->pet_hungry_timer != tid){
- ShowError("pet_hungry_timer %d != %d\n",pd->pet_hungry_timer,tid);
+ /**
+ * If HungerDelay is 0, there's nothing to do.
+ * Actually this shouldn't happen, since the timer wasn't added in pet_data_init(), but just to be sure...
+ *
+ **/
+ if (pd->petDB->hungry_delay == 0) {
+ pet->hungry_timer_delete(pd);
return 0;
}
+
+ if (pd->pet_hungry_timer != tid) {
+ ShowError("pet_hungry: pet_hungry_timer %d != %d\n", pd->pet_hungry_timer, tid);
+ return 1;
+ }
+
pd->pet_hungry_timer = INVALID_TIMER;
- if (pd->pet.intimate <= 0)
- return 1; //You lost the pet already, the rest is irrelevant.
+ if (pd->pet.intimate <= PET_INTIMACY_NONE)
+ return 1; // You lost the pet already, the rest is irrelevant.
+
+ pet->set_hunger(pd, pd->pet.hungry - pd->petDB->hunger_decrement);
- pd->pet.hungry--;
- /* Pet Autofeed */
- if (battle_config.feature_enable_pet_autofeed != 0) {
- if (pd->petDB->autofeed == 1 && pd->pet.autofeed == 1 && pd->pet.hungry <= 25) {
+ // Pet auto-feed.
+ if (battle_config.feature_enable_pet_autofeed == 1) {
+ if (pd->petDB->autofeed == 1 && pd->pet.autofeed == 1 && pd->pet.hungry <= PET_HUNGER_HUNGRY)
pet->food(sd, pd);
- }
}
- if( pd->pet.hungry < 0 )
- {
+ int interval = pd->petDB->hungry_delay;
+
+ if (pd->pet.hungry == PET_HUNGER_STARVING) {
pet_stop_attack(pd);
- pd->pet.hungry = 0;
- pet->set_intimate(pd, pd->pet.intimate - battle_config.pet_hungry_friendly_decrease);
- if( pd->pet.intimate <= 0 )
- {
- pd->pet.intimate = 0;
+ pet->set_intimate(pd, pd->pet.intimate - pd->petDB->starving_decrement);
+
+ if (pd->pet.intimate == PET_INTIMACY_NONE)
pd->status.speed = pd->db->status.speed;
- }
+
status_calc_pet(pd, SCO_NONE);
- clif->send_petdata(sd,pd,1,pd->pet.intimate);
+ clif->send_petdata(sd, pd, 1, pd->pet.intimate);
+
+ if (pd->petDB->starving_delay > 0)
+ interval = pd->petDB->starving_delay;
}
- clif->send_petdata(sd,pd,2,pd->pet.hungry);
- if(battle_config.pet_hungry_delay_rate != 100)
- interval = (pd->petDB->hungry_delay*battle_config.pet_hungry_delay_rate)/100;
- else
- interval = pd->petDB->hungry_delay;
- if(interval <= 0)
- interval = 1;
- pd->pet_hungry_timer = timer->add(tick+interval,pet->hungry,sd->bl.id,0);
+ clif->send_petdata(sd, pd, 2, pd->pet.hungry);
+ interval = interval * battle_config.pet_hungry_delay_rate / 100;
+ pd->pet_hungry_timer = timer->add(tick + max(interval, 1), pet->hungry, sd->bl.id, 0);
return 0;
}
@@ -315,21 +361,31 @@ static int pet_hungry_timer_delete(struct pet_data *pd)
return 1;
}
+/**
+ * Makes a pet start performing/dancing.
+ *
+ * @param sd Unused.
+ * @param pd The pet.
+ * @return 0 on failure, 1 on success.
+ *
+ **/
static int pet_performance(struct map_session_data *sd, struct pet_data *pd)
{
+ nullpo_ret(pd);
+
int val;
- nullpo_retr(1, pd);
- if (pd->pet.intimate > 900)
- val = (pd->petDB->s_perfor > 0)? 4:3;
- else if(pd->pet.intimate > 750) //TODO: this is way too high
+ if (pd->pet.intimate > PET_INTIMACY_LOYAL)
+ val = (pd->petDB->s_perfor > 0) ? 4 : 3;
+ else if (pd->pet.intimate > PET_INTIMACY_CORDIAL) //TODO: This is way too high.
val = 2;
else
val = 1;
- pet_stop_walking(pd,STOPWALKING_FLAG_NONE | (2000<<8)); // Stop walking for 2000ms
- clif->send_petdata(NULL, pd, 4, rnd()%val + 1);
- pet->lootitem_drop(pd,NULL);
+ pet_stop_walking(pd, STOPWALKING_FLAG_NONE | (2000 << 8)); // Stop walking for 2 seconds.
+ clif->send_petdata(NULL, pd, 4, rnd() % val + 1);
+ pet->lootitem_drop(pd, NULL);
+
return 1;
}
@@ -377,78 +433,80 @@ static int pet_return_egg(struct map_session_data *sd, struct pet_data *pd)
return 1;
}
+/**
+ * Initializes a pet.
+ *
+ * @param sd The pet's master.
+ * @param petinfo The pet's status data.
+ * @return 1 on failure, 0 on success.
+ *
+ **/
static int pet_data_init(struct map_session_data *sd, struct s_pet *petinfo)
{
- struct pet_data *pd;
- int i=0,interval=0;
-
nullpo_retr(1, sd);
nullpo_retr(1, petinfo);
- Assert_retr(1, sd->status.pet_id == 0 || sd->pd == 0 || sd->pd->msd == sd);
+ Assert_retr(1, sd->status.pet_id == 0 || sd->pd == NULL || sd->pd->msd == sd);
- if(sd->status.account_id != petinfo->account_id || sd->status.char_id != petinfo->char_id) {
+ if (sd->status.account_id != petinfo->account_id || sd->status.char_id != petinfo->char_id) {
sd->status.pet_id = 0;
return 1;
}
+
if (sd->status.pet_id != petinfo->pet_id) {
- if (sd->status.pet_id) {
- //Wrong pet?? Set incubate to no and send it back for saving.
+ if (sd->status.pet_id != 0) { // Wrong pet? Set incubate to no and send it back for saving.
petinfo->incubate = 1;
- intif->save_petdata(sd->status.account_id,petinfo);
+ intif->save_petdata(sd->status.account_id, petinfo);
sd->status.pet_id = 0;
return 1;
}
- //The pet_id value was lost? odd... restore it.
- sd->status.pet_id = petinfo->pet_id;
+
+ sd->status.pet_id = petinfo->pet_id; // The pet_id value was lost? Odd... Restore it.
}
- i = pet->search_petDB_index(petinfo->class_,PET_CLASS);
- if(i < 0) {
+ int i = pet->search_petDB_index(petinfo->class_, PET_CLASS);
+
+ if (i == INDEX_NOT_FOUND) {
sd->status.pet_id = 0;
return 1;
}
+
+ struct pet_data *pd;
+
CREATE(pd, struct pet_data, 1);
- pd->bl.type = BL_PET;
- pd->bl.id = npc->get_new_npc_id();
+ memcpy(&pd->pet, petinfo, sizeof(struct s_pet));
sd->pd = pd;
-
pd->msd = sd;
pd->petDB = &pet->db[i];
- pd->db = mob->db(petinfo->class_);
- memcpy(&pd->pet, petinfo, sizeof(struct s_pet));
- status->set_viewdata(&pd->bl, petinfo->class_);
+ pd->db = mob->db(pd->petDB->class_);
+ pd->bl.type = BL_PET;
+ pd->bl.id = npc->get_new_npc_id();
+ status->set_viewdata(&pd->bl, pd->petDB->class_);
unit->dataset(&pd->bl);
pd->ud.dir = sd->ud.dir;
-
pd->bl.m = sd->bl.m;
pd->bl.x = sd->bl.x;
pd->bl.y = sd->bl.y;
unit->calc_pos(&pd->bl, sd->bl.x, sd->bl.y, sd->ud.dir);
pd->bl.x = pd->ud.to_x;
pd->bl.y = pd->ud.to_y;
-
map->addiddb(&pd->bl);
- status_calc_pet(pd,SCO_FIRST);
-
+ status_calc_pet(pd, SCO_FIRST);
pd->last_thinktime = timer->gettick();
pd->state.skillbonus = 0;
- if( battle_config.pet_status_support )
- script->run_pet(pet->db[i].pet_script,0,sd->bl.id,0);
+ if (pd->petDB->pet_script != NULL && battle_config.pet_status_support == 1)
+ script->run_pet(pd->petDB->pet_script, 0, sd->bl.id, 0);
- if( pd->petDB ) {
- if( pd->petDB->equip_script )
- status_calc_pc(sd,SCO_NONE);
+ if (pd->petDB->equip_script != NULL)
+ status_calc_pc(sd, SCO_NONE);
- if( battle_config.pet_hungry_delay_rate != 100 )
- interval = (pd->petDB->hungry_delay*battle_config.pet_hungry_delay_rate)/100;
- else
- interval = pd->petDB->hungry_delay;
+ pd->pet_hungry_timer = INVALID_TIMER;
+
+ if (pd->petDB->hungry_delay > 0) {
+ int interval = pd->petDB->hungry_delay * battle_config.pet_hungry_delay_rate / 100;
+ pd->pet_hungry_timer = timer->add(timer->gettick() + max(interval, 1), pet->hungry, sd->bl.id, 0);
}
- if( interval <= 0 )
- interval = 1;
- pd->pet_hungry_timer = timer->add(timer->gettick() + interval, pet->hungry, sd->bl.id, 0);
return 0;
}
@@ -563,57 +621,66 @@ static int pet_catch_process1(struct map_session_data *sd, int target_class)
return 0;
}
+/**
+ * Begins the actual process of catching a monster.
+ *
+ * @param sd The character who tries to catch the monster.
+ * @param target_id The monster ID of the pet, which the character tries to catch.
+ * @return 1 on failure, 0 on success.
+ *
+ **/
static int pet_catch_process2(struct map_session_data *sd, int target_id)
{
- struct mob_data *md = NULL;
- struct block_list *bl = NULL;
- int i = 0, pet_catch_rate = 0;
-
nullpo_retr(1, sd);
- bl = map->id2bl(target_id); // TODO: Why does this not use map->id2md?
- md = BL_CAST(BL_MOB, bl);
- if (md == NULL || md->bl.prev == NULL) {
- // Invalid inputs/state, abort capture.
- clif->pet_roulette(sd,0);
+ struct mob_data *md = BL_CAST(BL_MOB, map->id2bl(target_id)); //TODO: Why does this not use map->id2md?
+
+ if (md == NULL || md->bl.prev == NULL) { // Invalid inputs/state, abort capture.
+ clif->pet_roulette(sd, 0);
sd->catch_target_class = -1;
sd->itemid = -1;
sd->itemindex = -1;
return 1;
}
- //FIXME: delete taming item here, if this was an item-invoked capture and the item was flagged as delay-consume [ultramage]
+ //FIXME: Delete taming item here, if this was an item-invoked capture and the item was flagged as delay-consume. [ultramage]
- i = pet->search_petDB_index(md->class_,PET_CLASS);
- //catch_target_class == 0 is used for universal lures (except bosses for now). [Skotlex]
- if (sd->catch_target_class == 0 && !(md->status.mode&MD_BOSS))
+ // catch_target_class == 0 is used for universal lures (except bosses for now). [Skotlex]
+ if (sd->catch_target_class == 0 && (md->status.mode & MD_BOSS) == 0)
sd->catch_target_class = md->class_;
- if(i < 0 || sd->catch_target_class != md->class_) {
- clif->emotion(&md->bl, E_AG); //mob will do /ag if wrong lure is used on them.
- clif->pet_roulette(sd,0);
+
+ int i = pet->search_petDB_index(md->class_, PET_CLASS);
+
+ if (i == INDEX_NOT_FOUND || sd->catch_target_class != md->class_) {
+ clif->emotion(&md->bl, E_AG); // Mob will do /ag if wrong lure is used on it.
+ clif->pet_roulette(sd, 0);
sd->catch_target_class = -1;
return 1;
}
- pet_catch_rate = (pet->db[i].capture + (sd->status.base_level - md->level)*30 + sd->battle_status.luk*20)*(200 - get_percentage(md->status.hp, md->status.max_hp))/100;
+ int pet_catch_rate;
+ int capture = pet->db[i].capture;
+ int mob_hp_perc = get_percentage(md->status.hp, md->status.max_hp);
- if(pet_catch_rate < 1) pet_catch_rate = 1;
- if(battle->bc->pet_catch_rate != 100)
- pet_catch_rate = (pet_catch_rate*battle->bc->pet_catch_rate)/100;
+ if (battle_config.pet_catch_rate_official_formula == 1) {
+ pet_catch_rate = capture * (100 - mob_hp_perc) / 100 + capture;
+ } else {
+ int lvl_diff_mod = (sd->status.base_level - md->level) * 30;
+ int char_luk_mod = sd->battle_status.luk * 20;
+ pet_catch_rate = (capture + lvl_diff_mod + char_luk_mod) * (200 - mob_hp_perc) / 100;
+ }
- if(rnd()%10000 < pet_catch_rate)
- {
- unit->remove_map(&md->bl,CLR_OUTSIGHT,ALC_MARK);
- status_kill(&md->bl);
- clif->pet_roulette(sd,1);
- intif->create_pet(sd->status.account_id,sd->status.char_id,pet->db[i].class_,mob->db(pet->db[i].class_)->lv,
- pet->db[i].EggID,0,pet->db[i].intimate,100,0,1,pet->db[i].jname);
+ pet_catch_rate = cap_value(pet_catch_rate, 1, 10000) * battle_config.pet_catch_rate / 100;
+ if (rnd() % 10000 < pet_catch_rate) {
+ unit->remove_map(&md->bl, CLR_OUTSIGHT, ALC_MARK);
+ status_kill(&md->bl);
+ clif->pet_roulette(sd, 1);
+ intif->create_pet(sd->status.account_id, sd->status.char_id, pet->db[i].class_, mob->db(pet->db[i].class_)->lv,
+ pet->db[i].EggID, 0, pet->db[i].intimate, PET_HUNGER_STUFFED, 0, 1, pet->db[i].jname);
achievement->validate_taming(sd, pet->db[i].class_);
- }
- else
- {
- clif->pet_roulette(sd,0);
+ } else {
+ clif->pet_roulette(sd, 0);
sd->catch_target_class = -1;
}
@@ -670,42 +737,52 @@ static bool pet_get_egg(int account_id, int pet_class, int pet_id)
return true;
}
+/**
+ * Performs selected pet menu option.
+ *
+ * @param sd The pet's master.
+ * @param menunum The selected menu option.
+ * @return 1 on failure, 0 on success.
+ *
+ **/
static int pet_menu(struct map_session_data *sd, int menunum)
{
- struct item_data *egg_id;
- nullpo_ret(sd);
- if (sd->pd == NULL)
- return 1;
+ nullpo_retr(1, sd);
+ nullpo_retr(1, sd->pd);
- //You lost the pet already.
- if(!sd->status.pet_id || sd->pd->pet.intimate <= 0 || sd->pd->pet.incubate)
- return 1;
+ if (sd->status.pet_id == 0 || sd->pd->pet.intimate <= PET_INTIMACY_NONE || sd->pd->pet.incubate != 0)
+ return 1; // You lost the pet already.
+
+ struct item_data *egg_id = itemdb->exists(sd->pd->petDB->EggID);
- egg_id = itemdb->exists(sd->pd->petDB->EggID);
- if (egg_id) {
- if ((egg_id->flag.trade_restriction&ITR_NODROP) && !pc->inventoryblank(sd)) {
- clif->message(sd->fd, msg_sd(sd,451)); // You can't return your pet because your inventory is full.
+ if (egg_id != NULL) {
+ if ((egg_id->flag.trade_restriction & ITR_NODROP) != 0 && pc->inventoryblank(sd) == 0) {
+ clif->message(sd->fd, msg_sd(sd, 451)); // You can't return your pet because your inventory is full.
return 1;
}
}
- switch(menunum) {
- case 0:
- clif->send_petstatus(sd);
- break;
- case 1:
- pet->food(sd, sd->pd);
- break;
- case 2:
- pet->performance(sd, sd->pd);
- break;
- case 3:
- pet->return_egg(sd, sd->pd);
- break;
- case 4:
- pet->unequipitem(sd, sd->pd);
- break;
+ switch (menunum) {
+ case 0:
+ clif->send_petstatus(sd);
+ break;
+ case 1:
+ pet->food(sd, sd->pd);
+ break;
+ case 2:
+ pet->performance(sd, sd->pd);
+ break;
+ case 3:
+ pet->return_egg(sd, sd->pd);
+ break;
+ case 4:
+ pet->unequipitem(sd, sd->pd);
+ break;
+ default: ;
+ ShowError("pet_menu: Unexpected menu option: %d\n", menunum);
+ return 1;
}
+
return 0;
}
@@ -830,49 +907,56 @@ static int pet_unequipitem(struct map_session_data *sd, struct pet_data *pd)
return 0;
}
+/**
+ * Feeds a pet and updates its intimacy value.
+ *
+ * @param sd The pet's master.
+ * @param pd The pet.
+ * @return 1 on failure, 0 on success.
+ *
+ **/
static int pet_food(struct map_session_data *sd, struct pet_data *pd)
{
- int i, food_id;
-
+ nullpo_retr(1, sd);
nullpo_retr(1, pd);
- food_id = pd->petDB->FoodID;
- i = pc->search_inventory(sd, food_id);
- if(i == INDEX_NOT_FOUND) {
- clif->pet_food(sd, food_id, 0);
+
+ int i = pc->search_inventory(sd, pd->petDB->FoodID);
+
+ if (i == INDEX_NOT_FOUND) {
+ clif->pet_food(sd, pd->petDB->FoodID, 0);
return 1;
}
+
pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_CONSUME);
- if (pd->pet.hungry > 90) {
- pet->set_intimate(pd, pd->pet.intimate - pd->petDB->r_full);
- } else {
- int add_intimate = 0;
- if (battle_config.pet_friendly_rate != 100)
- add_intimate = (pd->petDB->r_hungry * battle_config.pet_friendly_rate)/100;
- else
- add_intimate = pd->petDB->r_hungry;
- if (pd->pet.hungry > 75) {
- add_intimate = add_intimate >> 1;
- if (add_intimate <= 0)
- add_intimate = 1;
- }
- pet->set_intimate(pd, pd->pet.intimate + add_intimate);
- }
- if (pd->pet.intimate <= 0) {
- pd->pet.intimate = 0;
+ int intimacy = 0;
+
+ if (pd->pet.hungry >= PET_HUNGER_STUFFED)
+ intimacy -= pd->petDB->r_full; // Decrease intimacy by OverFeedDecrement.
+ else if (pd->pet.hungry > PET_HUNGER_SATISFIED)
+ intimacy -= pd->petDB->r_full / 2; // Decrease intimacy by 50% of OverFeedDecrement.
+ else if (pd->pet.hungry > PET_HUNGER_NEUTRAL)
+ intimacy -= pd->petDB->r_full * 5 / 100; // Decrease intimacy by 5% of OverFeedDecrement.
+ else if (pd->pet.hungry > PET_HUNGER_HUNGRY)
+ intimacy += pd->petDB->r_hungry * 75 / 100; // Increase intimacy by 75% of FeedIncrement.
+ else if (pd->pet.hungry > PET_HUNGER_VERY_HUNGRY)
+ intimacy += pd->petDB->r_hungry; // Increase intimacy by FeedIncrement.
+ else
+ intimacy += pd->petDB->r_hungry / 2; // Increase intimacy by 50% of FeedIncrement.
+
+ intimacy = intimacy * battle_config.pet_friendly_rate / 100;
+ pet->set_intimate(pd, pd->pet.intimate + intimacy);
+
+ if (pd->pet.intimate == PET_INTIMACY_NONE) {
pet_stop_attack(pd);
pd->status.speed = pd->db->status.speed;
- } else if (pd->pet.intimate > 1000) {
- pd->pet.intimate = 1000;
}
- status_calc_pet(pd, SCO_NONE);
- pd->pet.hungry += pd->petDB->fullness;
- if( pd->pet.hungry > 100 )
- pd->pet.hungry = 100;
- clif->send_petdata(sd,pd,2,pd->pet.hungry);
- clif->send_petdata(sd,pd,1,pd->pet.intimate);
- clif->pet_food(sd,pd->petDB->FoodID,1);
+ status_calc_pet(pd, SCO_NONE);
+ pet->set_hunger(pd, pd->pet.hungry + pd->petDB->fullness);
+ clif->send_petdata(sd, pd, 2, pd->pet.hungry);
+ clif->send_petdata(sd, pd, 1, pd->pet.intimate);
+ clif->pet_food(sd, pd->petDB->FoodID, 1);
return 0;
}
@@ -919,126 +1003,147 @@ static int pet_randomwalk(struct pet_data *pd, int64 tick)
return 0;
}
+/**
+ * Performs pet's AI actions. (Moving, attacking, etc.)
+ *
+ * @param pd The pet.
+ * @param sd The pet's master.
+ * @param tick Timestamp of last support.
+ * @return Always 0.
+ *
+ **/
static int pet_ai_sub_hard(struct pet_data *pd, struct map_session_data *sd, int64 tick)
{
- struct block_list *target = NULL;
nullpo_ret(pd);
+ nullpo_ret(pd->bl.prev);
+ nullpo_ret(sd);
+ nullpo_ret(sd->bl.prev);
- if(pd->bl.prev == NULL || sd == NULL || sd->bl.prev == NULL)
+ if (DIFF_TICK(tick, pd->last_thinktime) < MIN_PETTHINKTIME)
return 0;
- if(DIFF_TICK(tick,pd->last_thinktime) < MIN_PETTHINKTIME)
- return 0;
- pd->last_thinktime=tick;
+ pd->last_thinktime = tick;
- if(pd->ud.attacktimer != INVALID_TIMER || pd->ud.skilltimer != INVALID_TIMER || pd->bl.m != sd->bl.m)
+ if (pd->ud.attacktimer != INVALID_TIMER || pd->ud.skilltimer != INVALID_TIMER || pd->bl.m != sd->bl.m)
return 0;
- if(pd->ud.walktimer != INVALID_TIMER && pd->ud.walkpath.path_pos <= 2)
- return 0; //No thinking when you just started to walk.
+ if (pd->ud.walktimer != INVALID_TIMER && pd->ud.walkpath.path_pos <= 2)
+ return 0; // No thinking when you just started to walk.
- if(pd->pet.intimate <= 0) {
- //Pet should just... well, random walk.
- pet->randomwalk(pd,tick);
+ if (pd->pet.intimate <= PET_INTIMACY_NONE) {
+ pet->randomwalk(pd, tick); // Pet should just... well, random walk.
return 0;
}
- if (!check_distance_bl(&sd->bl, &pd->bl, pd->db->range3)) {
- //Master too far, chase.
- if(pd->target_id)
+ if (!check_distance_bl(&sd->bl, &pd->bl, pd->db->range3)) { // Master too far away. Chase him.
+ if (pd->target_id != 0)
pet->unlocktarget(pd);
- if(pd->ud.walktimer != INVALID_TIMER && pd->ud.target == sd->bl.id)
- return 0; //Already walking to him
+
+ if (pd->ud.walktimer != INVALID_TIMER && pd->ud.target == sd->bl.id)
+ return 0; // Already walking to him.
+
if (DIFF_TICK(tick, pd->ud.canmove_tick) < 0)
- return 0; //Can't move yet.
- pd->status.speed = (sd->battle_status.speed>>1);
- if(pd->status.speed <= 0)
- pd->status.speed = 1;
- if (!unit->walktobl(&pd->bl, &sd->bl, 3, 0))
- pet->randomwalk(pd,tick);
+ return 0; // Can't move yet.
+
+ pd->status.speed = max(sd->battle_status.speed / 2, MIN_WALK_SPEED);
+
+ if (unit->walktobl(&pd->bl, &sd->bl, 3, 0) == 0)
+ pet->randomwalk(pd, tick);
+
return 0;
}
- //Return speed to normal.
- if (pd->status.speed != pd->petDB->speed) {
+ if (pd->status.speed != pd->petDB->speed) { // Reset speed to normal.
if (pd->ud.walktimer != INVALID_TIMER)
- return 0; //Wait until the pet finishes walking back to master.
+ return 0; // Wait until the pet finishes walking back to master.
+
pd->status.speed = pd->petDB->speed;
- pd->ud.state.change_walk_target = pd->ud.state.speed_changed = 1;
+ pd->ud.state.speed_changed = 1;
+ pd->ud.state.change_walk_target = 1;
}
- if (pd->target_id) {
- target= map->id2bl(pd->target_id);
- if (!target || pd->bl.m != target->m || status->isdead(target)
- || !check_distance_bl(&pd->bl, target, pd->db->range3)
- ) {
+ struct block_list *target = NULL;
+
+ if (pd->target_id != 0) {
+ target = map->id2bl(pd->target_id);
+
+ if (target == NULL || pd->bl.m != target->m || status->isdead(target) == 1
+ || !check_distance_bl(&pd->bl, target, pd->db->range3)) {
target = NULL;
pet->unlocktarget(pd);
}
}
- if(!target && pd->loot && pd->msd && pc_has_permission(pd->msd, PC_PERM_TRADE) && pd->loot->count < pd->loot->max && DIFF_TICK(tick,pd->ud.canact_tick)>0) {
- //Use half the pet's range of sight.
- map->foreachinrange(pet->ai_sub_hard_lootsearch,&pd->bl,
- pd->db->range2/2, BL_ITEM,pd,&target);
+ if (target == NULL && pd->loot != NULL && pd->msd != NULL && pc_has_permission(pd->msd, PC_PERM_TRADE)
+ && pd->loot->count < pd->loot->max && DIFF_TICK(tick, pd->ud.canact_tick) > 0) { // Use half the pet's range of sight.
+ map->foreachinrange(pet->ai_sub_hard_lootsearch, &pd->bl, pd->db->range2 / 2, BL_ITEM, pd, &target);
}
- if (!target) {
- //Just walk around.
+ if (target == NULL) { // Just walk around.
if (check_distance_bl(&sd->bl, &pd->bl, 3))
- return 0; //Already next to master.
+ return 0; // Already next to master.
- if(pd->ud.walktimer != INVALID_TIMER && check_distance_blxy(&sd->bl, pd->ud.to_x,pd->ud.to_y, 3))
- return 0; //Already walking to him
+ if (pd->ud.walktimer != INVALID_TIMER && check_distance_blxy(&sd->bl, pd->ud.to_x, pd->ud.to_y, 3))
+ return 0; // Already walking to him.
unit->calc_pos(&pd->bl, sd->bl.x, sd->bl.y, sd->ud.dir);
+
if (unit->walk_toxy(&pd->bl, pd->ud.to_x, pd->ud.to_y, 0) != 0)
- pet->randomwalk(pd,tick);
+ pet->randomwalk(pd, tick);
return 0;
}
- if(pd->ud.target == target->id &&
- (pd->ud.attacktimer != INVALID_TIMER || pd->ud.walktimer != INVALID_TIMER))
- return 0; //Target already locked.
+ if (pd->ud.target == target->id && (pd->ud.attacktimer != INVALID_TIMER || pd->ud.walktimer != INVALID_TIMER))
+ return 0; // Target already locked.
+
+ if (target->type != BL_ITEM) { // Target is enemy. Chase or attack it.
+ if (!battle->check_range(&pd->bl, target, pd->status.rhw.range)) { // Chase enemy.
+ if (unit->walktobl(&pd->bl, target, pd->status.rhw.range, 2) == 0) // Enemy is unreachable.
+ pet->unlocktarget(pd);
- if (target->type != BL_ITEM)
- { //enemy targetted
- if(!battle->check_range(&pd->bl,target,pd->status.rhw.range)) {
- //Chase
- if(!unit->walktobl(&pd->bl, target, pd->status.rhw.range, 2))
- pet->unlocktarget(pd); //Unreachable target.
return 0;
}
- //Continuous attack.
- unit->attack(&pd->bl, pd->target_id, 1);
- } else {
- //Item Targeted, attempt loot
- if (!check_distance_bl(&pd->bl, target, 1)) {
- //Out of range
- if(!unit->walktobl(&pd->bl, target, 1, 1)) //Unreachable target.
+
+ unit->attack(&pd->bl, pd->target_id, 1); // Start/continue attacking.
+ } else { // Target is item. Attempt looting.
+ if (!check_distance_bl(&pd->bl, target, 1)) { // Item is out of range.
+ if (unit->walktobl(&pd->bl, target, 1, 1) == 0) // Item is unreachable.
pet->unlocktarget(pd);
+
return 0;
- } else{
+ }
+
+ if (pd->loot->count < pd->loot->max) {
struct flooritem_data *fitem = BL_UCAST(BL_ITEM, target);
- if(pd->loot->count < pd->loot->max){
- memcpy(&pd->loot->item[pd->loot->count++],&fitem->item_data,sizeof(pd->loot->item[0]));
- pd->loot->weight += itemdb_weight(fitem->item_data.nameid)*fitem->item_data.amount;
- map->clearflooritem(target);
- }
- //Target is unlocked regardless of whether it was picked or not.
- pet->unlocktarget(pd);
+
+ memcpy(&pd->loot->item[pd->loot->count++], &fitem->item_data, sizeof(pd->loot->item[0]));
+ pd->loot->weight += itemdb_weight(fitem->item_data.nameid) * fitem->item_data.amount;
+ map->clearflooritem(target);
}
+
+ pet->unlocktarget(pd); // Target is unlocked regardless of whether the item was picked or not.
}
+
return 0;
}
+/**
+ * Calls pet_ai_sub_hard() for a character's pet if conditions are fulfilled.
+ *
+ * @param sd The character.
+ * @param ap Additional arguments. In this case only the time stamp of pet AI timer execution.
+ * @return Always 0.
+ *
+ **/
static int pet_ai_sub_foreachclient(struct map_session_data *sd, va_list ap)
{
- int64 tick = va_arg(ap,int64);
nullpo_ret(sd);
- if(sd->status.pet_id && sd->pd)
- pet->ai_sub_hard(sd->pd,sd,tick);
+
+ int64 tick = va_arg(ap, int64);
+
+ if (sd->bl.prev != NULL && sd->status.pet_id != 0 && sd->pd != NULL && sd->pd->bl.prev != NULL)
+ pet->ai_sub_hard(sd->pd, sd, tick);
return 0;
}
@@ -1143,45 +1248,54 @@ static int pet_lootitem_drop(struct pet_data *pd, struct map_session_data *sd)
return 1;
}
-/*==========================================
- * pet bonus giving skills [Valaris] / Rewritten by [Skotlex]
- *------------------------------------------*/
+/**
+ * Applies pet's stat bonuses to its master. (See petskillbonus() script command.)
+ *
+ * @param tid The timer ID
+ * @param tick The base amount of ticks to add to the pet's bonus timer. (The timer's current ticks when calling this fuction.)
+ * @param id The pet's master's account ID.
+ * @param data Unused.
+ * @return 1 on failure, 0 on success.
+ *
+ **/
static int pet_skill_bonus_timer(int tid, int64 tick, int id, intptr_t data)
{
- struct map_session_data *sd=map->id2sd(id);
- struct pet_data *pd;
- int bonus;
- int duration = 0;
+ struct map_session_data *sd = map->id2sd(id);
- if(sd == NULL || sd->pd==NULL || sd->pd->bonus == NULL)
+ if (sd == NULL || sd->pd == NULL || sd->pd->bonus == NULL)
return 1;
- pd=sd->pd;
+ struct pet_data *pd = sd->pd;
- if(pd->bonus->timer != tid) {
- ShowError("pet_skill_bonus_timer %d != %d\n",pd->bonus->timer,tid);
+ if (pd->bonus->timer != tid) {
+ ShowError("pet_skill_bonus_timer %d != %d\n", pd->bonus->timer, tid);
pd->bonus->timer = INVALID_TIMER;
- return 0;
+ return 1;
}
- // determine the time for the next timer
- if (pd->state.skillbonus && pd->bonus->delay > 0) {
+ int bonus;
+ int duration;
+
+ // Determine the time for the next timer.
+ if (pd->state.skillbonus == 1 && pd->bonus->delay > 0) {
bonus = 0;
- duration = pd->bonus->delay*1000; // the duration until pet bonuses will be reactivated again
- } else if (pd->pet.intimate) {
+ duration = pd->bonus->delay * 1000; // The duration until pet bonuses will be reactivated again.
+ } else if (pd->pet.intimate > PET_INTIMACY_NONE) {
bonus = 1;
- duration = pd->bonus->duration*1000; // the duration for pet bonuses to be in effect
- } else { //Lost pet...
+ duration = pd->bonus->duration * 1000; // The duration for pet bonuses to be in effect.
+ } else { // Lost pet...
pd->bonus->timer = INVALID_TIMER;
- return 0;
+ return 1;
}
if (pd->state.skillbonus != bonus) {
pd->state.skillbonus = bonus;
status_calc_pc(sd, SCO_NONE);
}
- // wait for the next timer
- pd->bonus->timer=timer->add(tick+duration,pet->skill_bonus_timer,sd->bl.id,0);
+
+ // Wait for the next timer.
+ pd->bonus->timer = timer->add(tick + duration, pet->skill_bonus_timer, sd->bl.id, 0);
+
return 0;
}
@@ -1327,115 +1441,155 @@ static int pet_read_db_libconfig(const char *filename, bool ignore_missing)
return count;
}
+/**
+ * Reads a single pet from DB.
+ *
+ * @param it The libconfig settings block, which contains the pet's data.
+ * @param n The pet's index in pet->db[].
+ * @param source The pet DB's file name.
+ * @return 0 on failure, the pet's ID on success.
+ *
+ **/
static int pet_read_db_sub(struct config_setting_t *it, int n, const char *source)
{
- struct config_setting_t *t = NULL;
- struct item_data *data = NULL;
- const char *str = NULL;
- int i32 = 0;
-
nullpo_ret(it);
nullpo_ret(source);
Assert_ret(n >= 0 && n < MAX_PET_DB);
- if (!libconfig->setting_lookup_int(it, "Id", &i32)) {
+ int i32 = 0;
+
+ if (libconfig->setting_lookup_int(it, "Id", &i32) == CONFIG_FALSE) {
ShowWarning("pet_read_db_sub: Missing Id in \"%s\", entry #%d, skipping.\n", source, n);
return 0;
}
- pet->db[n].class_ = i32;
- if (!libconfig->setting_lookup_string(it, "SpriteName", &str) || !*str ) {
- ShowWarning("pet_read_db_sub: Missing SpriteName in pet %d of \"%s\", skipping.\n", pet->db[n].class_, source);
+ if (mob->db_checkid(i32) == 0) {
+ ShowWarning("pet_read_db_sub: Invalid Id in \"%s\", entry #%d, skipping.\n", source, n);
return 0;
}
- safestrncpy(pet->db[n].name, str, sizeof(pet->db[n].name));
- if (!libconfig->setting_lookup_string(it, "Name", &str) || !*str) {
- ShowWarning("pet_read_db_sub: Missing Name in pet %d of \"%s\", skipping.\n", pet->db[n].class_, source);
+ pet->db[n].class_ = i32;
+ safestrncpy(pet->db[n].name, mob->db(i32)->sprite, sizeof(pet->db[n].name));
+
+ const char *str;
+
+ if (libconfig->setting_lookup_string(it, "Name", &str) == CONFIG_FALSE || *str == '\0') {
+ ShowWarning("pet_read_db_sub: Missing Name in pet %d of \"%s\", skipping.\n",
+ pet->db[n].class_, source);
return 0;
}
+
safestrncpy(pet->db[n].jname, str, sizeof(pet->db[n].jname));
- if (libconfig->setting_lookup_string(it, "TamingItem", &str)) {
- if (!(data = itemdb->name2id(str))) {
- ShowWarning("pet_read_db_sub: Invalid item '%s' in pet %d of \"%s\", defaulting to 0.\n", str, pet->db[n].class_, source);
- } else {
- pet->db[n].itemID = data->nameid;
- }
+ if (libconfig->setting_lookup_string(it, "EggItem", &str) == CONFIG_FALSE || *str == '\0') {
+ ShowWarning("pet_read_db_sub: Missing EggItem in pet %d of \"%s\", skipping.\n",
+ pet->db[n].class_, source);
+ return 0;
}
- if (libconfig->setting_lookup_string(it, "EggItem", &str)) {
- if (!(data = itemdb->name2id(str))) {
- ShowWarning("pet_read_db_sub: Invalid item '%s' in pet %d of \"%s\", defaulting to 0.\n", str, pet->db[n].class_, source);
- } else {
- pet->db[n].EggID = data->nameid;
- }
+ struct item_data *data;
+
+ if ((data = itemdb->name2id(str)) == NULL) {
+ ShowWarning("pet_read_db_sub: Invalid EggItem '%s' in pet %d of \"%s\", skipping.\n",
+ str, pet->db[n].class_, source);
+ return 0;
}
- if (libconfig->setting_lookup_string(it, "AccessoryItem", &str)) {
- if (!(data = itemdb->name2id(str))) {
- ShowWarning("pet_read_db_sub: Invalid item '%s' in pet %d of \"%s\", defaulting to 0.\n", str, pet->db[n].class_, source);
- } else {
- pet->db[n].AcceID = data->nameid;
- }
+ pet->db[n].EggID = data->nameid;
+
+ if (libconfig->setting_lookup_string(it, "TamingItem", &str) == CONFIG_TRUE) {
+ if ((data = itemdb->name2id(str)) == NULL)
+ ShowWarning("pet_read_db_sub: Invalid TamingItem '%s' in pet %d of \"%s\", defaulting to 0.\n",
+ str, pet->db[n].class_, source);
+ else
+ pet->db[n].itemID = data->nameid;
}
- if (libconfig->setting_lookup_string(it, "FoodItem", &str)) {
- if (!(data = itemdb->name2id(str))) {
- ShowWarning("pet_read_db_sub: Invalid item '%s' in pet %d of \"%s\", defaulting to 0.\n", str, pet->db[n].class_, source);
- } else {
+ pet->db[n].FoodID = 537;
+
+ if (libconfig->setting_lookup_string(it, "FoodItem", &str) == CONFIG_TRUE) {
+ if ((data = itemdb->name2id(str)) == NULL)
+ ShowWarning("pet_read_db_sub: Invalid FoodItem '%s' in pet %d of \"%s\", defaulting to Pet_Food (ID=537).\n",
+ str, pet->db[n].class_, source);
+ else
pet->db[n].FoodID = data->nameid;
- }
}
- if (libconfig->setting_lookup_int(it, "FoodEffectiveness", &i32))
- pet->db[n].fullness = i32;
+ if (libconfig->setting_lookup_string(it, "AccessoryItem", &str) == CONFIG_TRUE) {
+ if ((data = itemdb->name2id(str)) == NULL)
+ ShowWarning("pet_read_db_sub: Invalid AccessoryItem '%s' in pet %d of \"%s\", defaulting to 0.\n",
+ str, pet->db[n].class_, source);
+ else
+ pet->db[n].AcceID = data->nameid;
+ }
- if (libconfig->setting_lookup_int(it, "HungerDelay", &i32))
- pet->db[n].hungry_delay = i32 * 1000;
+ int ret = libconfig->setting_lookup_int(it, "FoodEffectiveness", &i32);
+ pet->db[n].fullness = (ret == CONFIG_FALSE) ? 80 : cap_value(i32, 1, PET_HUNGER_STUFFED);
- if ((t = libconfig->setting_get_member(it, "Intimacy"))) {
- if (config_setting_is_group(t)) {
- pet->read_db_sub_intimacy(n, t);
- }
- }
- if (pet->db[n].r_hungry <= 0)
- pet->db[n].r_hungry = 1;
+ ret = libconfig->setting_lookup_int(it, "HungerDelay", &i32);
+ pet->db[n].hungry_delay = (ret == CONFIG_FALSE) ? 60000 : cap_value(1000 * i32, 0, INT_MAX);
- if (libconfig->setting_lookup_int(it, "CaptureRate", &i32))
- pet->db[n].capture = i32;
+ ret = libconfig->setting_lookup_int(it, "HungerDecrement", &i32);
+ pet->db[n].hunger_decrement = (ret == CONFIG_FALSE) ? 1 : cap_value(i32, PET_HUNGER_STARVING, PET_HUNGER_STUFFED - 1);
- if (libconfig->setting_lookup_int(it, "Speed", &i32))
- pet->db[n].speed = i32;
+ if (pet->db[n].hunger_decrement == PET_HUNGER_STARVING)
+ pet->db[n].hungry_delay = 0;
- if ((t = libconfig->setting_get_member(it, "SpecialPerformance")) && (i32 = libconfig->setting_get_bool(t)))
- pet->db[n].s_perfor = (char)i32;
+ /**
+ * Preventively set default intimacy values here, just in case that 'Intimacy' block is not defined,
+ * or pet_read_db_sub_intimacy() fails execution.
+ *
+ **/
+ pet->db[n].intimate = PET_INTIMACY_NEUTRAL;
+ pet->db[n].r_hungry = 10;
+ pet->db[n].r_full = 100;
+ pet->db[n].die = 20;
+ pet->db[n].starving_delay = min(20000, pet->db[n].hungry_delay);
+ pet->db[n].starving_decrement = 20;
- if ((t = libconfig->setting_get_member(it, "TalkWithEmotes")) && (i32 = libconfig->setting_get_bool(t)))
- pet->db[n].talk_convert_class = i32;
+ struct config_setting_t *t;
- if (libconfig->setting_lookup_int(it, "AttackRate", &i32))
- pet->db[n].attack_rate = i32;
+ if ((t = libconfig->setting_get_member(it, "Intimacy")) != NULL && config_setting_is_group(t))
+ pet->read_db_sub_intimacy(n, t);
- if (libconfig->setting_lookup_int(it, "DefendRate", &i32))
- pet->db[n].defence_attack_rate = i32;
+ ret = libconfig->setting_lookup_int(it, "CaptureRate", &i32);
+ pet->db[n].capture = (ret == CONFIG_FALSE) ? 1000 : cap_value(i32, 1, 10000);
- if (libconfig->setting_lookup_int(it, "ChangeTargetRate", &i32))
- pet->db[n].change_target_rate = i32;
+ ret = libconfig->setting_lookup_int(it, "Speed", &i32);
+ pet->db[n].speed = (ret == CONFIG_FALSE) ? DEFAULT_WALK_SPEED : cap_value(i32, MIN_WALK_SPEED, MAX_WALK_SPEED);
- // Pet Evolution
- if ((t = libconfig->setting_get_member(it, "Evolve")) && config_setting_is_group(t)) {
- pet->read_db_sub_evolution(t, n);
+ if ((t = libconfig->setting_get_member(it, "SpecialPerformance")) != NULL
+ && (i32 = libconfig->setting_get_bool(t)) != 0) {
+ pet->db[n].s_perfor = (char)i32;
}
- if ((t = libconfig->setting_get_member(it, "AutoFeed")) && (i32 = libconfig->setting_get_bool(t)))
+ if ((t = libconfig->setting_get_member(it, "TalkWithEmotes")) != NULL
+ && (i32 = libconfig->setting_get_bool(t)) != 0) {
+ pet->db[n].talk_convert_class = i32;
+ }
+
+ ret = libconfig->setting_lookup_int(it, "AttackRate", &i32);
+ pet->db[n].attack_rate = (ret == CONFIG_FALSE) ? 300 : cap_value(i32, 0, 10000);
+
+ ret = libconfig->setting_lookup_int(it, "DefendRate", &i32);
+ pet->db[n].defence_attack_rate = (ret == CONFIG_FALSE) ? 300 : cap_value(i32, 0, 10000);
+
+ ret = libconfig->setting_lookup_int(it, "ChangeTargetRate", &i32);
+ pet->db[n].change_target_rate = (ret == CONFIG_FALSE) ? 800 : cap_value(i32, 0, 10000);
+
+ if ((t = libconfig->setting_get_member(it, "AutoFeed")) != NULL && (i32 = libconfig->setting_get_bool(t)) != 0)
pet->db[n].autofeed = i32;
- if (libconfig->setting_lookup_string(it, "PetScript", &str))
- pet->db[n].pet_script = *str ? script->parse(str, source, -pet->db[n].class_, SCRIPT_IGNORE_EXTERNAL_BRACKETS, NULL) : NULL;
+ pet->db[n].pet_script = NULL;
+ if (libconfig->setting_lookup_string(it, "PetScript", &str) == CONFIG_TRUE && *str != '\0')
+ pet->db[n].pet_script = script->parse(str, source, -pet->db[n].class_, SCRIPT_IGNORE_EXTERNAL_BRACKETS, NULL);
+
+ pet->db[n].equip_script = NULL;
+ if (libconfig->setting_lookup_string(it, "EquipScript", &str) == CONFIG_TRUE && *str != '\0')
+ pet->db[n].equip_script = script->parse(str, source, -pet->db[n].class_, SCRIPT_IGNORE_EXTERNAL_BRACKETS, NULL);
- if (libconfig->setting_lookup_string(it, "EquipScript", &str))
- pet->db[n].equip_script = *str ? script->parse(str, source, -pet->db[n].class_, SCRIPT_IGNORE_EXTERNAL_BRACKETS, NULL) : NULL;
+ if ((t = libconfig->setting_get_member(it, "Evolve")) != NULL && config_setting_is_group(t))
+ pet->read_db_sub_evolution(t, n);
return pet->db[n].class_;
}
@@ -1515,24 +1669,41 @@ static void pet_read_db_sub_evolution(struct config_setting_t *t, int n)
}
}
+/**
+ * Reads a pet's intimacy data from DB.
+ *
+ * @param idx The pet's index in pet->db[].
+ * @param t The libconfig settings block, which contains the pet's intimacy data.
+ * @return false on failure, true on success.
+ *
+ **/
static bool pet_read_db_sub_intimacy(int idx, struct config_setting_t *t)
{
+ nullpo_retr(false, t);
+ Assert_retr(false, idx >= 0 && idx < MAX_PET_DB);
+
int i32 = 0;
- nullpo_retr(false, t);
- Assert_ret(idx >= 0 && idx < MAX_PET_DB);
+ if (libconfig->setting_lookup_int(t, "Initial", &i32) == CONFIG_TRUE)
+ pet->db[idx].intimate = cap_value(i32, PET_INTIMACY_AWKWARD, PET_INTIMACY_MAX);
+
+ if (libconfig->setting_lookup_int(t, "FeedIncrement", &i32) == CONFIG_TRUE)
+ pet->db[idx].r_hungry = cap_value(i32, PET_INTIMACY_AWKWARD, PET_INTIMACY_MAX);
+
+ if (libconfig->setting_lookup_int(t, "OverFeedDecrement", &i32) == CONFIG_TRUE)
+ pet->db[idx].r_full = cap_value(i32, PET_INTIMACY_NONE, PET_INTIMACY_MAX);
- if (libconfig->setting_lookup_int(t, "Initial", &i32))
- pet->db[idx].intimate = i32;
+ if (libconfig->setting_lookup_int(t, "OwnerDeathDecrement", &i32) == CONFIG_TRUE)
+ pet->db[idx].die = cap_value(i32, PET_INTIMACY_NONE, PET_INTIMACY_MAX);
- if (libconfig->setting_lookup_int(t, "FeedIncrement", &i32))
- pet->db[idx].r_hungry = i32;
+ if (libconfig->setting_lookup_int(t, "StarvingDelay", &i32) == CONFIG_TRUE)
+ pet->db[idx].starving_delay = cap_value(1000 * i32, 0, pet->db[idx].hungry_delay);
- if (libconfig->setting_lookup_int(t, "OverFeedDecrement", &i32))
- pet->db[idx].r_full = i32;
+ if (libconfig->setting_lookup_int(t, "StarvingDecrement", &i32) == CONFIG_TRUE)
+ pet->db[idx].starving_decrement = cap_value(i32, PET_INTIMACY_NONE, PET_INTIMACY_MAX);
- if (libconfig->setting_lookup_int(t, "OwnerDeathDecrement", &i32))
- pet->db[idx].die = i32;
+ if (pet->db[idx].starving_decrement == PET_INTIMACY_NONE)
+ pet->db[idx].starving_delay = 0;
return true;
}
@@ -1626,6 +1797,7 @@ void pet_defaults(void)
pet->final = do_final_pet;
pet->hungry_val = pet_hungry_val;
+ pet->set_hunger = pet_set_hunger;
pet->set_intimate = pet_set_intimate;
pet->create_egg = pet_create_egg;
pet->unlocktarget = pet_unlocktarget;
diff --git a/src/map/pet.h b/src/map/pet.h
index e0a5529a6..fa37e896a 100644
--- a/src/map/pet.h
+++ b/src/map/pet.h
@@ -57,6 +57,9 @@ struct s_pet_db {
int defence_attack_rate;
int change_target_rate;
int autofeed;
+ int hunger_decrement;
+ int starving_delay;
+ int starving_decrement;
struct script_code *equip_script;
struct script_code *pet_script;
@@ -143,6 +146,7 @@ struct pet_interface {
int (*final) (void);
/* */
int (*hungry_val) (struct pet_data *pd);
+ void (*set_hunger) (struct pet_data *pd, int value);
void (*set_intimate) (struct pet_data *pd, int value);
int (*create_egg) (struct map_session_data *sd, int item_id);
int (*unlocktarget) (struct pet_data *pd);
diff --git a/src/map/quest.c b/src/map/quest.c
index 10ea668a6..217acfa19 100644
--- a/src/map/quest.c
+++ b/src/map/quest.c
@@ -675,7 +675,7 @@ static void quest_questinfo_refresh(struct map_session_data *sd)
nullpo_retv(sd);
for (int i = 0; i < VECTOR_LENGTH(map->list[sd->bl.m].qi_list); i++) {
- struct npc_data *nd = &VECTOR_INDEX(map->list[sd->bl.m].qi_list, i);
+ struct npc_data *nd = VECTOR_INDEX(map->list[sd->bl.m].qi_list, i);
int j;
ARR_FIND(0, VECTOR_LENGTH(nd->qi_data), j, quest->questinfo_validate(sd, &VECTOR_INDEX(nd->qi_data, j)) == true);
diff --git a/src/map/script.c b/src/map/script.c
index d85f064b7..0d04ea31b 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -848,79 +848,134 @@ static const char *parse_callfunc(const char *p, int require_paren, int is_custo
nullpo_retr(NULL, p);
// is need add check for arg null pointer below?
- func = script->add_word(p);
- if (script->str_data[func].type == C_FUNC) {
- script->syntax.nested_call++;
- if (script->syntax.last_func != -1) {
- if (script->str_data[func].val == script->buildin_lang_macro_offset) {
- script->syntax.lang_macro_active = true;
- macro = true;
- } else if (script->str_data[func].val == script->buildin_lang_macro_fmtstring_offset) {
- script->syntax.lang_macro_fmtstring_active = true;
- macro = true;
- }
+
+ if (*p == '"') {
+ p2 = ++p; // jump to the start of the word
+
+ // find the closing quote
+ while (*p2 != '"') {
+ ++p2;
}
- if( !macro ) {
- // buildin function
+ if (p2[1] == ':' && p2[2] == ':') {
+ func = script->add_str("callfunctionofnpc");
+ arg = "*"; // we already take care of the "vs" part of "vs*"
+
+ script->syntax.nested_call++;
script->syntax.last_func = script->str_data[func].val;
script->addl(func);
script->addc(C_ARG);
- }
- arg = script->buildin[script->str_data[func].val];
- if (script->str_data[func].deprecated)
- DeprecationWarning(p);
- if( !arg ) arg = &null_arg; // Use a dummy, null string
- } else if( script->str_data[func].type == C_USERFUNC || script->str_data[func].type == C_USERFUNC_POS ) {
- // script defined function
- script->addl(script->buildin_callsub_ref);
- script->addc(C_ARG);
- script->addl(func);
- arg = script->buildin[script->str_data[script->buildin_callsub_ref].val];
- if( *arg == 0 )
- disp_error_message("parse_callfunc: callsub has no arguments, please review its definition",p);
- if( *arg != '*' )
- ++arg; // count func as argument
+ script->addc(C_STR);
+ do {
+ script->addb(*p++); // npc name
+ } while (p < p2);
+ script->addb(0);
+
+ p = p2 + 3; // skip to start of func name
+ p2 = script->skip_word(p);
+
+ script->addc(C_STR);
+ do {
+ script->addb(*p++); // func name
+ } while (p < p2);
+ script->addb(0);
+
+ p = p2; // skip to just before the ()
+ } else {
+ disp_error_message("script:parse_callfunc: invalid public function call syntax!", p2 + 1);
+ }
} else {
+ func = script->add_word(p);
+ if (script->str_data[func].type == C_FUNC) {
+ script->syntax.nested_call++;
+
+ if (script->syntax.last_func != -1) {
+ if (script->str_data[func].val == script->buildin_lang_macro_offset) {
+ script->syntax.lang_macro_active = true;
+ macro = true;
+ } else if (script->str_data[func].val == script->buildin_lang_macro_fmtstring_offset) {
+ script->syntax.lang_macro_fmtstring_active = true;
+ macro = true;
+ }
+ }
+
+ if (!macro) {
+ // buildin function
+ script->syntax.last_func = script->str_data[func].val;
+ script->addl(func);
+ script->addc(C_ARG);
+ }
+
+ arg = script->buildin[script->str_data[func].val];
+
+ if (script->str_data[func].deprecated == 1) {
+ DeprecationWarning(p);
+ }
+
+ if (arg == NULL) {
+ arg = &null_arg; // Use a dummy, null string
+ }
+ } else if (script->str_data[func].type == C_USERFUNC || script->str_data[func].type == C_USERFUNC_POS) {
+ // script defined function
+ script->addl(script->buildin_callsub_ref);
+ script->addc(C_ARG);
+ script->addl(func);
+ arg = script->buildin[script->str_data[script->buildin_callsub_ref].val];
+
+ if (*arg == 0) {
+ disp_error_message("script:parse_callfunc: callsub has no arguments, please review its definition", p);
+ }
+
+ if (*arg != '*') {
+ ++arg; // count func as argument
+ }
+ } else {
#ifdef SCRIPT_CALLFUNC_CHECK
- const char* name = script->get_str(func);
- if( !is_custom && strdb_get(script->userfunc_db, name) == NULL ) {
+ const char *name = script->get_str(func);
+ if (is_custom == 0 && strdb_get(script->userfunc_db, name) == NULL) {
#endif
- disp_error_message("parse_line: expect command, missing function name or calling undeclared function",p);
+ disp_error_message("script:parse_callfunc: expect command, missing function name or calling undeclared function", p);
#ifdef SCRIPT_CALLFUNC_CHECK
- } else {;
- script->addl(script->buildin_callfunc_ref);
- script->addc(C_ARG);
- script->addc(C_STR);
- while( *name ) script->addb(*name ++);
- script->addb(0);
- arg = script->buildin[script->str_data[script->buildin_callfunc_ref].val];
- if( *arg != '*' ) ++ arg;
- }
+ } else {
+ script->addl(script->buildin_callfunc_ref);
+ script->addc(C_ARG);
+ script->addc(C_STR);
+
+ while (*name != '\0') {
+ script->addb(*name++);
+ }
+
+ script->addb(0);
+ arg = script->buildin[script->str_data[script->buildin_callfunc_ref].val];
+
+ if (*arg != '*') {
+ ++ arg;
+ }
+ }
#endif
+ }
}
p = script->skip_word(p);
p = script->skip_space(p);
script->syntax.curly[script->syntax.curly_count].type = TYPE_ARGLIST;
script->syntax.curly[script->syntax.curly_count].count = 0;
- if( *p == ';' )
- {// <func name> ';'
+
+ if (*p == ';') {
+ // <func name> ';'
script->syntax.curly[script->syntax.curly_count].flag = ARGLIST_NO_PAREN;
- } else if( *p == '(' && *(p2=script->skip_space(p+1)) == ')' )
- {// <func name> '(' ')'
+ } else if (*p == '(' && *(p2 = script->skip_space(p + 1)) == ')') {
+ // <func name> '(' ')'
script->syntax.curly[script->syntax.curly_count].flag = ARGLIST_PAREN;
p = p2;
- /*
- } else if( 0 && require_paren && *p != '(' )
- {// <func name>
- script->syntax.curly[script->syntax.curly_count].flag = ARGLIST_NO_PAREN;
- */
- } else {// <func name> <arg list>
- if( require_paren ) {
- if( *p != '(' )
- disp_error_message("need '('",p);
+ } else {
+ // <func name> <arg list>
+ if (require_paren == 1) {
+ if (*p != '(') {
+ disp_error_message("script:parse_callfunc: need '('", p);
+ }
+
++p; // skip '('
script->syntax.curly[script->syntax.curly_count].flag = ARGLIST_PAREN;
} else if( *p == '(' ) {
@@ -928,41 +983,65 @@ static const char *parse_callfunc(const char *p, int require_paren, int is_custo
} else {
script->syntax.curly[script->syntax.curly_count].flag = ARGLIST_NO_PAREN;
}
+
++script->syntax.curly_count;
- while( *arg ) {
- p2=script->parse_subexpr(p,-1);
- if( p == p2 )
- break; // not an argument
- if( *arg != '*' )
- ++arg; // next argument
- p=script->skip_space(p2);
- if( *arg == 0 || *p != ',' )
- break; // no more arguments
+ while (*arg != '\0') {
+ p2 = script->parse_subexpr(p, -1);
+
+ if (p == p2) {
+ // not an argument
+ break;
+ }
+
+ if (*arg != '*') {
+ // next argument
+ ++arg;
+ }
+
+ p = script->skip_space(p2);
+
+ if (*arg == 0 || *p != ',') {
+ // no more arguments
+ break;
+ }
+
++p; // skip comma
}
+
--script->syntax.curly_count;
}
- if( arg && *arg && *arg != '?' && *arg != '*' )
- disp_error_message2("parse_callfunc: not enough arguments, expected ','", p, script->config.warn_func_mismatch_paramnum);
- if( script->syntax.curly[script->syntax.curly_count].type != TYPE_ARGLIST )
- disp_error_message("parse_callfunc: DEBUG last curly is not an argument list",p);
- if( script->syntax.curly[script->syntax.curly_count].flag == ARGLIST_PAREN ) {
- if( *p != ')' )
- disp_error_message("parse_callfunc: expected ')' to close argument list",p);
+
+ if (arg != NULL && *arg != '\0' && *arg != '?' && *arg != '*') {
+ disp_error_message2("script:parse_callfunc: not enough arguments, expected ','", p, script->config.warn_func_mismatch_paramnum);
+ }
+
+ if (script->syntax.curly[script->syntax.curly_count].type != TYPE_ARGLIST) {
+ disp_error_message("parse_callfunc: DEBUG last curly is not an argument list", p);
+ }
+
+ if (script->syntax.curly[script->syntax.curly_count].flag == ARGLIST_PAREN) {
+ if (*p != ')') {
+ disp_error_message("script:parse_callfunc: expected ')' to close argument list", p);
+ }
+
++p;
- if (script->str_data[func].val == script->buildin_lang_macro_offset)
+ if (script->str_data[func].val == script->buildin_lang_macro_offset) {
script->syntax.lang_macro_active = false;
- else if (script->str_data[func].val == script->buildin_lang_macro_fmtstring_offset)
+ } else if (script->str_data[func].val == script->buildin_lang_macro_fmtstring_offset) {
script->syntax.lang_macro_fmtstring_active = false;
+ }
}
if (!macro) {
- if (0 == --script->syntax.nested_call)
+ if (0 == --script->syntax.nested_call) {
script->syntax.last_func = -1;
+ }
+
script->addc(C_FUNC);
}
+
return p;
}
@@ -1324,16 +1403,29 @@ static int script_string_dup(char *str)
*------------------------------------------*/
static const char *parse_simpleexpr(const char *p)
{
- p=script->skip_space(p);
+ p = script->skip_space(p);
nullpo_retr(NULL, p);
- if (*p == ';' || *p == ',')
- disp_error_message("parse_simpleexpr: unexpected end of expression",p);
+
+ if (*p == ';' || *p == ',') {
+ disp_error_message("script:parse_simpleexpr: unexpected end of expression", p);
+ }
+
if (*p == '(') {
return script->parse_simpleexpr_paren(p);
} else if (is_number(p)) {
return script->parse_simpleexpr_number(p);
} else if(*p == '"') {
+ const char *p2 = p + 1;
+
+ while (*p2 != '"') {
+ ++p2;
+ }
+
+ if (p2[1] == ':' && p2[2] == ':') {
+ return script->parse_callfunc(p, 1, 0); // XXX: why does callfunc use int for booleans?
+ }
+
return script->parse_simpleexpr_string(p);
} else {
return script->parse_simpleexpr_name(p);
@@ -1659,6 +1751,85 @@ static const char *parse_line(const char *p)
return p;
}
+/**
+ * parses a local function expression
+ *
+ * expects these formats:
+ * function <name>;
+ * function <name> { <script> }
+ *
+ * this is invoked by script->parse_syntax() after checking whether the function
+ * is public or not
+ *
+ * @param p - a pointer to the start of the function expression
+ * @param is_public - whether this function should be accessible from outside the NPC scope
+ */
+static const char *parse_syntax_function (const char *p, bool is_public)
+{
+ const char *func_name = script->skip_space(p); // the name of the local function
+ p = script->skip_word(func_name);
+
+ if (p == func_name) {
+ disp_error_message("script:parse_syntax_function: function name is missing or invalid", p);
+ }
+
+ const char *p2 = script->skip_space(p);
+
+ if (*p2 == ';') {
+ // function <name> ;
+ // function declaration - just register the name
+ int l = script->add_word(func_name);
+
+ if (script->str_data[l].type == C_NOP) {
+ // register only, if the name was not used by something else
+ script->str_data[l].type = C_USERFUNC;
+ } else if (script->str_data[l].type != C_USERFUNC) {
+ disp_error_message("script:parse_syntax_function: function name is already in use", func_name);
+ }
+
+ // Close condition of if, for, while
+ p = script->parse_syntax_close(p2 + 1);
+ return p;
+ } else if (*p2 == '{') {
+ // function <name> <line/block of code>
+ script->syntax.curly[script->syntax.curly_count].type = TYPE_USERFUNC;
+ script->syntax.curly[script->syntax.curly_count].count = 1;
+ script->syntax.curly[script->syntax.curly_count].index = script->syntax.index++;
+ script->syntax.curly[script->syntax.curly_count].flag = 0;
+ ++script->syntax.curly_count;
+
+ // Jump over the function code
+ char label[256];
+ sprintf(label, "goto __FN%x_FIN;", (unsigned int)script->syntax.curly[script->syntax.curly_count - 1].index);
+ script->syntax.curly[script->syntax.curly_count].type = TYPE_NULL;
+ ++script->syntax.curly_count;
+ script->parse_line(label);
+ --script->syntax.curly_count;
+
+ // Set the position of the function (label)
+ int l = script->add_word(func_name);
+
+ if (script->str_data[l].type == C_NOP || script->str_data[l].type == C_USERFUNC) {
+ // register only, if the name was not used by something else
+ script->str_data[l].type = C_USERFUNC;
+ script->set_label(l, VECTOR_LENGTH(script->buf), p);
+
+ if ((script->parse_options & SCRIPT_USE_LABEL_DB) != 0) {
+ script->label_add(l, VECTOR_LENGTH(script->buf),
+ LABEL_IS_USERFUNC | (is_public ? LABEL_IS_EXTERN : 0));
+ }
+ } else {
+ disp_error_message("script:parse_syntax_function: function name is already in use", func_name);
+ }
+
+ return script->skip_space(p);
+ } else {
+ disp_error_message("script:parse_syntax_function: expected ';' or '{' at function syntax", p);
+ }
+
+ return p;
+}
+
// { ... } Closing process
static const char *parse_curly_close(const char *p)
{
@@ -2002,65 +2173,11 @@ static const char *parse_syntax(const char *p)
script->set_label(l, VECTOR_LENGTH(script->buf), p);
return p;
} else if( p2 - p == 8 && strncmp(p, "function", 8) == 0 ) {
- // internal script function
- const char *func_name;
-
- func_name = script->skip_space(p2);
- p = script->skip_word(func_name);
- if( p == func_name )
- disp_error_message("parse_syntax:function: function name is missing or invalid", p);
- p2 = script->skip_space(p);
- if( *p2 == ';' )
- {// function <name> ;
- // function declaration - just register the name
- int l;
- l = script->add_word(func_name);
- if( script->str_data[l].type == C_NOP )// register only, if the name was not used by something else
- script->str_data[l].type = C_USERFUNC;
- else if( script->str_data[l].type == C_USERFUNC )
- ; // already registered
- else
- disp_error_message("parse_syntax:function: function name is invalid", func_name);
-
- // Close condition of if, for, while
- p = script->parse_syntax_close(p2 + 1);
- return p;
- }
- else if(*p2 == '{')
- {// function <name> <line/block of code>
- char label[256];
- int l;
-
- script->syntax.curly[script->syntax.curly_count].type = TYPE_USERFUNC;
- script->syntax.curly[script->syntax.curly_count].count = 1;
- script->syntax.curly[script->syntax.curly_count].index = script->syntax.index++;
- script->syntax.curly[script->syntax.curly_count].flag = 0;
- ++script->syntax.curly_count;
-
- // Jump over the function code
- sprintf(label, "goto __FN%x_FIN;", (unsigned int)script->syntax.curly[script->syntax.curly_count-1].index);
- script->syntax.curly[script->syntax.curly_count].type = TYPE_NULL;
- ++script->syntax.curly_count;
- script->parse_line(label);
- --script->syntax.curly_count;
-
- // Set the position of the function (label)
- l=script->add_word(func_name);
- if( script->str_data[l].type == C_NOP || script->str_data[l].type == C_USERFUNC )// register only, if the name was not used by something else
- {
- script->str_data[l].type = C_USERFUNC;
- script->set_label(l, VECTOR_LENGTH(script->buf), p);
- if( script->parse_options&SCRIPT_USE_LABEL_DB )
- script->label_add(l, VECTOR_LENGTH(script->buf));
- }
- else
- disp_error_message("parse_syntax:function: function name is invalid", func_name);
-
- return script->skip_space(p);
- }
- else
- {
- disp_error_message("expect ';' or '{' at function syntax",p);
+ // local function not marked as public or private
+ if (script->config.functions_private_by_default) {
+ return script->parse_syntax_function(p2, false);
+ } else {
+ return script->parse_syntax_function(p2, true);
}
}
break;
@@ -2088,6 +2205,26 @@ static const char *parse_syntax(const char *p)
return p;
}
break;
+ case 'p':
+ case 'P':
+ if (p2 - p == 6 && strncmp(p, "public", 6) == 0) {
+ p2 = script->skip_space(p2);
+ const char *p3 = script->skip_word(p2);
+
+ if (p3 - p2 == 8 && strncmp(p2, "function", 8) == 0) {
+ // local function explicitly marked as public
+ return script->parse_syntax_function(p3, true);
+ }
+ } else if (p2 - p == 7 && strncmp(p, "private", 7) == 0) {
+ p2 = script->skip_space(p2);
+ const char *p3 = script->skip_word(p2);
+
+ if (p3 - p2 == 8 && strncmp(p2, "function", 8) == 0) {
+ // local function explicitly marked as private
+ return script->parse_syntax_function(p3, false);
+ }
+ }
+ break;
case 's':
case 'S':
if( p2 - p == 6 && strncmp(p, "switch", 6) == 0 ) {
@@ -2750,25 +2887,32 @@ static struct script_code *parse_script(const char *src, const char *file, int l
}
}
- while( script->syntax.curly_count != 0 || *p != end )
- {
- if( *p == '\0' )
- disp_error_message("unexpected end of script",p);
+ while (script->syntax.curly_count != 0 || *p != end) {
+ if (*p == '\0') {
+ disp_error_message("script:parse_script: unexpected end of script", p);
+ }
+
// Special handling only label
- tmpp=script->skip_space(script->skip_word(p));
- if(*tmpp==':' && !(strncmp(p,"default:",8) == 0 && p + 7 == tmpp)) {
- i=script->add_word(p);
+ tmpp = script->skip_space(script->skip_word(p));
+
+ if (*tmpp == ':' && !(strncmp(p, "default:", 8) == 0 && p + 7 == tmpp)
+ && !(strncmp(p, "function", 8) == 0 && script->skip_space(p + 8) == tmpp)) {
+ i = script->add_word(p);
script->set_label(i, VECTOR_LENGTH(script->buf), p);
- if( script->parse_options&SCRIPT_USE_LABEL_DB )
- script->label_add(i, VECTOR_LENGTH(script->buf));
- p=tmpp+1;
- p=script->skip_space(p);
+
+ if ((script->parse_options & SCRIPT_USE_LABEL_DB) != 0) {
+ bool is_extern = ((p[0] == 'O' || p[0] == 'o') && (p[1] == 'N' || p[1] == 'n'));
+ script->label_add(i, VECTOR_LENGTH(script->buf), is_extern ? LABEL_IS_EXTERN : 0);
+ }
+
+ p = tmpp + 1;
+ p = script->skip_space(p);
continue;
}
// All other lumped
- p=script->parse_line(p);
- p=script->skip_space(p);
+ p = script->parse_line(p);
+ p = script->skip_space(p);
script->parse_nextline(false, p);
}
@@ -3477,6 +3621,32 @@ static void set_reg_instance_num(struct script_state *st, int64 num, const char
}
/**
+ * Validates if a variable is permanent (stored in database) by passed variable name.
+ *
+ * @param name The variable name to validate.
+ * @return True if variable is permanent, otherwise false.
+ *
+ **/
+static bool script_is_permanent_variable(const char *name)
+{
+ nullpo_retr(false, name);
+
+ if (strlen(name) == 0)
+ return false;
+
+ if (ISALNUM(name[0]) != 0)
+ return true; // Permanent characater variable.
+
+ if (name[0] == '#')
+ return true; // Permanent (global) account variable.
+
+ if (strlen(name) > 1 && name[0] == '$' && ISALNUM(name[1]) != 0)
+ return true; // Permanent server variable.
+
+ return false;
+}
+
+/**
* Stores the value of a script variable
*
* @param st current script state.
@@ -3521,6 +3691,18 @@ static int set_reg(struct script_state *st, struct map_session_data *sd, int64 n
if (is_string_variable(name)) {// string variable
const char *str = (const char*)value;
+ if (script->is_permanent_variable(name) && strlen(str) > SCRIPT_STRING_VAR_LENGTH) {
+ ShowError("script:set_reg: Value of variable %s is too long: %lu! Maximum is %d. Skipping...\n",
+ name, strlen(str), SCRIPT_STRING_VAR_LENGTH);
+
+ if (st != NULL) {
+ script->reportsrc(st);
+ st->state = END;
+ }
+
+ return 0;
+ }
+
switch (prefix) {
case '@':
if (ref) {
@@ -4910,6 +5092,8 @@ static bool script_config_read(const char *filename, bool imported)
libconfig->setting_lookup_bool_real(setting, "warn_func_mismatch_paramnum", &script->config.warn_func_mismatch_paramnum);
libconfig->setting_lookup_bool_real(setting, "warn_func_mismatch_argtypes", &script->config.warn_func_mismatch_argtypes);
+ libconfig->setting_lookup_bool_real(setting, "functions_private_by_default", &script->config.functions_private_by_default);
+ libconfig->setting_lookup_bool_real(setting, "functions_as_events", &script->config.functions_as_events);
libconfig->setting_lookup_int(setting, "check_cmdcount", &script->config.check_cmdcount);
libconfig->setting_lookup_int(setting, "check_gotocount", &script->config.check_gotocount);
libconfig->setting_lookup_int(setting, "input_min_value", &script->config.input_min_value);
@@ -6479,6 +6663,111 @@ static BUILDIN(callfunc)
return true;
}
+
+/**
+ * Calls a local function within a NPC as if it was part of the current scope.
+ * Resumes execution in the previous scope once the NPC function returns. This
+ * is essentially a clone of buildin_callsub that can run in arbitrary NPCs.
+ *
+ * Usage:
+ * callfunctionofnpc("<npc name>", "<function name>"{, <arg>...})
+ * callfunctionofnpc(<npc id>, "<function name>"{, <arg>...})
+ *
+ * This buildin is also used internally by this syntax:
+ * "<npc name>"::<function name>({<arg>...})
+ */
+static BUILDIN(callfunctionofnpc) {
+ struct npc_data *nd = NULL;
+
+ if (script_isstring(st, 2)) {
+ nd = npc->name2id(script_getstr(st, 2));
+ } else {
+ nd = map->id2nd(script_getnum(st, 2));
+ }
+
+ if (nd == NULL) {
+ ShowError("script:callfunctionofnpc: NPC not found.\n");
+ st->state = END;
+ return false;
+ }
+
+ const char *function_name = script_getstr(st, 3);
+ int pos = -1;
+
+ // find the function label within the label list of the NPC
+ for (int i = 0; i < nd->u.scr.label_list_num; ++i) {
+ if (strcmp(nd->u.scr.label_list[i].name, function_name) == 0) {
+ if ((nd->u.scr.label_list[i].flags & LABEL_IS_EXTERN) != 0
+ && (nd->u.scr.label_list[i].flags & LABEL_IS_USERFUNC) != 0) {
+ // function label found: set the start location
+ pos = nd->u.scr.label_list[i].pos;
+ } else if ((nd->u.scr.label_list[i].flags & LABEL_IS_USERFUNC) != 0) {
+ ShowError("script:callfunctionofnpc: function '%s' is not marked as public in NPC '%s'.\n", function_name, nd->name);
+ st->state = END;
+ return false;
+ }
+ break;
+ }
+ }
+
+ if (pos < 0) {
+ ShowError("script:callfunctionofnpc: function '%s' not found in NPC '%s'!\n", function_name, nd->name);
+ st->state = END;
+ return false;
+ }
+
+ // alloc a reg_db reference of the current scope for the new scope
+ struct reg_db *ref = (struct reg_db *)aCalloc(sizeof(struct reg_db), 2);
+ // scope variables (.@var)
+ ref[0].vars = st->stack->scope.vars;
+ ref[0].arrays = st->stack->scope.arrays;
+ // npc variables (.var)
+ ref[1].vars = st->script->local.vars;
+ ref[1].arrays = st->script->local.arrays;
+
+ int i = 0;
+
+ // make sure the arguments we push retain their current reg_db references:
+ // this allows to do things like set(getarg(0), ...)
+ for (i = st->start + 4; i < st->end; i++) {
+ struct script_data *data = script->push_copy(st->stack, i);
+
+ if (data_isreference(data) && data->ref == NULL) {
+ const char *name = reference_getname(data);
+
+ if (name[0] == '.') {
+ data->ref = (name[1] == '@' ? &ref[0] : &ref[1]);
+ }
+ }
+ }
+
+ // save the previous scope
+ struct script_retinfo *ri = NULL;
+ CREATE(ri, struct script_retinfo, 1);
+ ri->script = st->script; // script code
+ ri->scope.vars = st->stack->scope.vars; // scope variables
+ ri->scope.arrays = st->stack->scope.arrays; // scope arrays
+ ri->pos = st->pos; // script location
+ ri->nargs = i - st->start - 4; // argument count
+ ri->defsp = st->stack->defsp; // default stack pointer
+ script->push_retinfo(st->stack, ri, ref);
+
+ // change the current scope to the scope of the function
+ st->pos = pos;
+ st->script = nd->u.scr.script;
+ st->stack->defsp = st->stack->sp;
+ st->state = GOTO;
+ st->stack->scope.vars = i64db_alloc(DB_OPT_RELEASE_DATA);
+ st->stack->scope.arrays = idb_alloc(DB_OPT_BASE);
+
+ // make sure local reg_db of the other NPC is initialized
+ if (st->script->local.vars == NULL) {
+ st->script->local.vars = i64db_alloc(DB_OPT_RELEASE_DATA);
+ }
+
+ return true;
+}
+
/*==========================================
* subroutine call
*------------------------------------------*/
@@ -11080,36 +11369,33 @@ static BUILDIN(itemskill)
{
struct map_session_data *sd = script->rid2sd(st);
- if (sd == NULL || sd->ud.skilltimer != INVALID_TIMER)
+ if (sd == NULL)
return true;
- pc->itemskill_clear(sd);
- sd->skillitem = script_isstringtype(st, 2) ? skill->name2id(script_getstr(st, 2)) : script_getnum(st, 2);
- sd->skillitemlv = script_getnum(st, 3);
- sd->state.itemskill_conditions_checked = 0; // Skill casting items will check the conditions prior to the target selection in AEGIS. Thus we need a flag to prevent checking them twice.
+ sd->auto_cast_current.type = AUTOCAST_ITEM;
+ sd->auto_cast_current.skill_id = script_isstringtype(st, 2) ? skill->name2id(script_getstr(st, 2)) : script_getnum(st, 2);
+ sd->auto_cast_current.skill_lv = script_getnum(st, 3);
int flag = script_hasdata(st, 4) ? script_getnum(st, 4) : ISF_NONE;
- sd->state.itemskill_check_conditions = ((flag & ISF_CHECKCONDITIONS) == ISF_CHECKCONDITIONS) ? 1 : 0; // Unset in pc_itemskill_clear().
+ sd->auto_cast_current.itemskill_check_conditions = ((flag & ISF_CHECKCONDITIONS) == ISF_CHECKCONDITIONS);
- if (sd->state.itemskill_check_conditions == 1) {
- if (skill->check_condition_castbegin(sd, sd->skillitem, sd->skillitemlv) == 0
- || skill->check_condition_castend(sd, sd->skillitem, sd->skillitemlv) == 0) {
- pc->itemskill_clear(sd);
+ if (sd->auto_cast_current.itemskill_check_conditions) {
+ if (skill->check_condition_castbegin(sd, sd->auto_cast_current.skill_id, sd->auto_cast_current.skill_lv) == 0
+ || skill->check_condition_castend(sd, sd->auto_cast_current.skill_id, sd->auto_cast_current.skill_lv) == 0) {
return true;
}
- sd->state.itemskill_conditions_checked = 1; // Unset in pc_itemskill_clear().
+ sd->auto_cast_current.itemskill_conditions_checked = true;
}
- sd->state.itemskill_no_casttime = ((flag & ISF_INSTANTCAST) == ISF_INSTANTCAST) ? 1 : 0; // Unset in pc_itemskill_clear().
- sd->state.itemskill_castonself = ((flag & ISF_CASTONSELF) == ISF_CASTONSELF) ? 1 : 0; // Unset in pc_itemskill_clear().
+ sd->auto_cast_current.itemskill_instant_cast = ((flag & ISF_INSTANTCAST) == ISF_INSTANTCAST);
+ sd->auto_cast_current.itemskill_cast_on_self = ((flag & ISF_CASTONSELF) == ISF_CASTONSELF);
- // itemskill_conditions_checked/itemskill_no_conditions/itemskill_no_casttime/itemskill_castonself abuse prevention. Unset in pc_itemskill_clear().
- sd->itemskill_id = sd->skillitem;
- sd->itemskill_lv = sd->skillitemlv;
+ VECTOR_ENSURE(sd->auto_cast, 1, 1);
+ VECTOR_PUSH(sd->auto_cast, sd->auto_cast_current);
- clif->item_skill(sd, sd->skillitem, sd->skillitemlv);
+ clif->item_skill(sd, sd->auto_cast_current.skill_id, sd->auto_cast_current.skill_lv);
return true;
}
@@ -15034,10 +15320,10 @@ static BUILDIN(getiteminfo)
script_pushint(st, it->nameid);
break;
case ITEMINFO_AEGISNAME:
- script_pushstr(st, it->name);
+ script_pushstrcopy(st, it->name);
break;
case ITEMINFO_NAME:
- script_pushstr(st, it->jname);
+ script_pushstrcopy(st, it->jname);
break;
default:
ShowError("buildin_getiteminfo: Invalid item info type %d.\n", type);
@@ -16197,7 +16483,6 @@ static BUILDIN(atcommand)
struct map_session_data *sd, *dummy_sd = NULL;
int fd;
const char* cmd;
- bool ret = true;
cmd = script_getstr(st,2);
@@ -16220,11 +16505,12 @@ static BUILDIN(atcommand)
if (!atcommand->exec(fd, sd, cmd, false)) {
ShowWarning("script: buildin_atcommand: failed to execute command '%s'\n", cmd);
- script->reportsrc(st);
- ret = false;
+ if (dummy_sd != NULL)
+ aFree(dummy_sd);
+ return false;
}
if (dummy_sd) aFree(dummy_sd);
- return ret;
+ return true;
}
/**
@@ -18948,7 +19234,14 @@ static BUILDIN(npcshopdelitem)
size--;
}
- RECREATE(nd->u.shop.shop_item, struct npc_item_list, size);
+ int alloc_size = size;
+ if (size < 0) {
+ size = 0;
+ alloc_size = 1;
+ } else if (size < 1) {
+ alloc_size = 1;
+ }
+ RECREATE(nd->u.shop.shop_item, struct npc_item_list, alloc_size);
nd->u.shop.count = size;
script_pushint(st,1);
@@ -19349,12 +19642,14 @@ static BUILDIN(pcblockmove)
static BUILDIN(setpcblock)
{
- struct map_session_data *sd = script->rid2sd(st);
+ struct map_session_data *sd = script_hasdata(st, 4) ? script->id2sd(st, script_getnum(st, 4)) : script->rid2sd(st);
enum pcblock_action_flag type = script_getnum(st, 2);
int state = (script_getnum(st, 3) > 0) ? 1 : 0;
- if (sd == NULL)
+ if (sd == NULL) {
+ script_pushint(st, 0);
return true;
+ }
if ((type & PCBLOCK_MOVE) != 0)
sd->block_action.move = state;
@@ -19383,12 +19678,13 @@ static BUILDIN(setpcblock)
if ((type & PCBLOCK_NPC) != 0)
sd->block_action.npc = state;
+ script_pushint(st, 1);
return true;
}
static BUILDIN(checkpcblock)
{
- struct map_session_data *sd = script->rid2sd(st);
+ struct map_session_data *sd = script_hasdata(st, 2) ? script->id2sd(st, script_getnum(st, 2)) : script->rid2sd(st);
int retval = PCBLOCK_NONE;
if (sd == NULL) {
@@ -19497,26 +19793,25 @@ static BUILDIN(getunittype)
/**
* Sets real-time unit data for a game object.
- * Setunitdata <GUID>,<DataType>,<Val1>{,<Val2>,<Val3>}
+ *
+ * @code{.herc}
+ * setunitdata <GUID>, <DataType>, <Val1>{, <Val2>, <Val3>}
+ * @endcode
+ *
* @param1 GUID GID of the unit.
* @param2 DataType Type of Data to be set for the unit.
* @param3 Value#1 Value to be passed as change in data.
* @param4 Value#2 Optional int value to be passed for certain data types.
* @param5 Value#3 Optional int value to be passed for certain data types.
* @return 1 on success, 0 on failure.
-
- Note: Please make this script command only modify ONE INTEGER value.
- If need to modify string type data, or having multiple arguments, please
- introduce a new script command.
- */
+ *
+ * Note: Please make this script command only modify ONE INTEGER value.
+ * If need to modify string type data, or having multiple arguments, please introduce a new script command.
+ *
+ **/
static BUILDIN(setunitdata)
{
- struct block_list *bl = NULL;
- const char *mapname = NULL, *udtype = NULL;
- int type = 0, val = 0, val2 = 0, val3 = 0;
- struct map_session_data *tsd = NULL;
-
- bl = map->id2bl(script_getnum(st, 2));
+ struct block_list *bl = map->id2bl(script_getnum(st, 2));
if (bl == NULL) {
ShowWarning("buildin_setunitdata: Error in finding object with given GID %d!\n", script_getnum(st, 2));
@@ -19524,22 +19819,26 @@ static BUILDIN(setunitdata)
return false;
}
- type = script_getnum(st, 3);
+ int type = script_getnum(st, 3);
- /* type bounds */
+ // Type bounds.
if (type < UDT_SIZE || type >= UDT_MAX) { // Note: UDT_TYPE is not valid here
ShowError("buildin_setunitdata: Invalid unit data type %d provided.\n", type);
script_pushint(st, 0);
return false;
}
- /* Mandatory Argument 3. Subject to deprecate. */
+ const char *mapname = NULL;
+ int val = 0;
+
+ // Mandatory argument #3. Subject to deprecate.
if (type == UDT_MAPIDXY) {
if (!script_isstringtype(st, 4)) {
ShowError("buildin_setunitdata: Invalid data type for argument #3.\n");
script_pushint(st, 0);
return false;
}
+
mapname = script_getstr(st, 4);
} else {
if (script_isstringtype(st, 4)) {
@@ -19547,68 +19846,87 @@ static BUILDIN(setunitdata)
script_pushint(st, 0);
return false;
}
+
val = script_getnum(st, 4);
}
-/* checks if value is out of bounds. */
+
+/****************************************************************************************************
+ * Define temporary macros. [BEGIN]
+ ****************************************************************************************************/
+
+// Checks if value is out of bounds.
#define setunitdata_check_bounds(arg, min, max) \
do { \
if (script_getnum(st, (arg)) < (min) || script_getnum(st, (arg)) > (max)) { \
- ShowError("buildin_setunitdata: Invalid value %d for argument #%d. (min: %d, max: %d)\n", script_getnum(st, (arg)), (arg)-1, (min), (max)); \
+ ShowError("buildin_setunitdata: Invalid value %d for argument #%d. (min: %d, max: %d)\n", \
+ script_getnum(st, (arg)), (arg) - 1, (min), (max)); \
script_pushint(st, 0); \
return false; \
} \
} while(0);
-/* checks if value is out of bounds. */
+
+// Checks if value is too low.
#define setunitdata_check_min(arg, min) \
do { \
if (script_getnum(st, (arg)) < (min)) { \
- ShowError("buildin_setunitdata: Invalid value %d for argument #%d. (min: %d)\n", script_getnum(st, (arg)), (arg)-1, (min)); \
+ ShowError("buildin_setunitdata: Invalid value %d for argument #%d. (min: %d)\n", \
+ script_getnum(st, (arg)), (arg) - 1, (min)); \
script_pushint(st, 0); \
return false; \
} \
} while(0);
-/* checks if the argument doesn't exist, if required.
- * also checks if the argument exists, if not required. */
+
+// Checks if the argument doesn't exist, if required. Also checks if the argument exists, if not required.
#define setunitdata_assert_arg(arg, required) \
do { \
if (required && !script_hasdata(st, (arg))) { \
- ShowError("buildin_setunitdata: Type %d reqires argument #%d.\n", type, (arg)-1); \
+ ShowError("buildin_setunitdata: Type %d reqires argument #%d.\n", type, (arg) - 1); \
script_pushint(st, 0); \
return false; \
} else if (!required && script_hasdata(st, arg)) { \
- ShowError("buildin_setunitdata: Argument %d is not required for type %d.\n", (arg)-1, type); \
+ ShowError("buildin_setunitdata: Argument %d is not required for type %d.\n", (arg) - 1, type); \
script_pushint(st, 0); \
return false; \
} \
} while (0);
-/* checks if the data is an integer. */
+
+// Checks if the data is an integer.
#define setunitdata_check_int(arg) \
do { \
setunitdata_assert_arg((arg), true); \
if (script_isstringtype(st, (arg))) { \
- ShowError("buildin_setunitdata: Argument #%d expects integer, string given.\n", (arg)-1); \
+ ShowError("buildin_setunitdata: Argument #%d expects integer, string given.\n", (arg) - 1); \
script_pushint(st, 0); \
return false; \
} \
} while(0);
-/* checks if the data is a string. */
+
+// Checks if the data is a string.
#define setunitdata_check_string(arg) \
do { \
setunitdata_assert_arg((arg), true); \
if (script_isinttype(st, (arg))) { \
- ShowError("buildin_setunitdata: Argument #%d expects string, integer given.\n", (arg)-1); \
+ ShowError("buildin_setunitdata: Argument #%d expects string, integer given.\n", (arg) - 1); \
script_pushint(st, 0); \
return false; \
} \
} while(0);
+/****************************************************************************************************
+ * Define temporary macros. [END]
+ ****************************************************************************************************/
+
if (type != UDT_MAPIDXY && type != UDT_WALKTOXY) {
setunitdata_assert_arg(5, false);
setunitdata_assert_arg(6, false);
}
- switch (type)
- {
+ int val2 = 0;
+ int val3 = 0;
+
+ struct map_session_data *tsd = NULL;
+
+ switch (type) {
case UDT_SIZE:
setunitdata_check_bounds(4, SZ_SMALL, SZ_BIG);
break;
@@ -19634,30 +19952,36 @@ static BUILDIN(setunitdata)
case UDT_MASTERAID:
setunitdata_check_min(4, 0);
tsd = map->id2sd(val);
+
if (tsd == NULL) {
- ShowWarning("buildin_setunitdata: Account ID %d not found for master change!\n",val);
+ ShowWarning("buildin_setunitdata: Account ID %d not found for master change!\n", val);
script_pushint(st, 0);
return false;
}
+
break;
case UDT_MASTERCID:
setunitdata_check_min(4, 0);
tsd = map->charid2sd(val);
+
if (tsd == NULL) {
- ShowWarning("buildin_setunitdata: Character ID %d not found for master change!\n",val);
+ ShowWarning("buildin_setunitdata: Character ID %d not found for master change!\n", val);
script_pushint(st, 0);
return false;
}
+
break;
case UDT_MAPIDXY:
- if ((val = map->mapname2mapid(mapname)) == -1) {
+ if ((val = map->mapname2mapid(mapname)) == INDEX_NOT_FOUND) {
ShowError("buildin_setunitdata: Non-existent map %s provided.\n", mapname);
+ script_pushint(st, 0);
return false;
}
+
setunitdata_check_int(5);
setunitdata_check_int(6);
- setunitdata_check_bounds(5, 0, MAX_MAP_SIZE/2);
- setunitdata_check_bounds(6, 0, MAX_MAP_SIZE/2);
+ setunitdata_check_bounds(5, 0, MAX_MAP_SIZE / 2);
+ setunitdata_check_bounds(6, 0, MAX_MAP_SIZE / 2);
val2 = script_getnum(st, 5);
val3 = script_getnum(st, 6);
break;
@@ -19665,8 +19989,8 @@ static BUILDIN(setunitdata)
setunitdata_assert_arg(6, false);
setunitdata_check_int(5);
val2 = script_getnum(st, 5);
- setunitdata_check_bounds(4, 0, MAX_MAP_SIZE/2);
- setunitdata_check_bounds(5, 0, MAX_MAP_SIZE/2);
+ setunitdata_check_bounds(4, 0, MAX_MAP_SIZE / 2);
+ setunitdata_check_bounds(5, 0, MAX_MAP_SIZE / 2);
break;
case UDT_SPEED:
setunitdata_check_bounds(4, 0, MAX_WALK_SPEED);
@@ -19721,7 +20045,7 @@ static BUILDIN(setunitdata)
setunitdata_check_bounds(4, 0, SHRT_MAX);
break;
case UDT_HUNGER:
- setunitdata_check_bounds(4, 0, 99);
+ setunitdata_check_bounds(4, PET_HUNGER_STARVING, PET_HUNGER_STUFFED); // Pets and Homunculi have the same hunger value bounds.
break;
case UDT_RACE:
case UDT_ELETYPE:
@@ -19729,19 +20053,20 @@ static BUILDIN(setunitdata)
setunitdata_check_bounds(4, 0, CHAR_MAX);
break;
case UDT_GROUP:
- {
setunitdata_check_bounds(4, 0, INT_MAX);
+
struct unit_data *ud = unit->bl2ud2(bl);
+
if (ud == NULL) {
ShowError("buildin_setunitdata: ud is NULL!\n");
script_pushint(st, 0);
return false;
}
+
ud->groupId = script_getnum(st, 4);
clif->blname_ack(0, bl); // Send update to client.
script_pushint(st, 1);
return true;
- }
case UDT_DAMAGE_TAKEN_RATE:
setunitdata_check_bounds(4, 1, INT_MAX);
break;
@@ -19749,67 +20074,81 @@ static BUILDIN(setunitdata)
break;
}
+/****************************************************************************************************
+ * Undefine temporary macros. [BEGIN]
+ ****************************************************************************************************/
+
#undef setunitdata_check_bounds
+#undef setunitdata_check_min
#undef setunitdata_assert_arg
#undef setunitdata_check_int
#undef setunitdata_check_string
- /* Set the values */
+/****************************************************************************************************
+ * Undefine temporary macros. [END]
+ ****************************************************************************************************/
+
+ // Set the values.
switch (bl->type) {
- case BL_MOB:
- {
+ case BL_MOB: {
struct mob_data *md = BL_UCAST(BL_MOB, bl);
- nullpo_retr(false, md);
- switch (type)
- {
+ if (md == NULL) {
+ ShowError("buildin_setunitdata: Can't find monster for GID %d!\n", script_getnum(st, 2));
+ script_pushint(st, 0);
+ return false;
+ }
+
+ switch (type) {
case UDT_SIZE:
- md->status.size = (unsigned char) val;
+ md->status.size = (unsigned char)val;
break;
case UDT_LEVEL:
md->level = val;
- if (battle_config.show_mob_info & 4)
+
+ if ((battle_config.show_mob_info & 4) != 0)
clif->blname_ack(0, &md->bl);
+
break;
case UDT_HP:
- status->set_hp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_hp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
clif->blname_ack(0, &md->bl);
break;
case UDT_MAXHP:
- md->status.max_hp = (unsigned int) val;
+ md->status.max_hp = (unsigned int)val;
clif->blname_ack(0, &md->bl);
break;
case UDT_SP:
- status->set_sp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_sp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXSP:
- md->status.max_sp = (unsigned int) val;
+ md->status.max_sp = (unsigned int)val;
break;
case UDT_MASTERAID:
md->master_id = val;
break;
case UDT_MAPIDXY:
- unit->warp(bl, (short) val, (short) val2, (short) val3, CLR_TELEPORT);
+ unit->warp(bl, (short)val, (short)val2, (short)val3, CLR_TELEPORT);
break;
case UDT_WALKTOXY:
if (unit->walk_toxy(bl, (short)val, (short)val2, 2) != 0)
- unit->movepos(bl, (short) val, (short) val2, 0, 0);
+ unit->movepos(bl, (short)val, (short)val2, 0, 0);
break;
case UDT_SPEED:
- md->status.speed = (unsigned short) val;
+ md->status.speed = (unsigned short)val;
status->calc_misc(bl, &md->status, md->level);
break;
case UDT_MODE:
- md->status.mode = (enum e_mode) val;
+ md->status.mode = (enum e_mode)val;
break;
case UDT_AI:
- md->special_state.ai = (enum ai) val;
+ md->special_state.ai = (enum ai)val;
break;
case UDT_SCOPTION:
- md->sc.option = (unsigned int) val;
+ md->sc.option = (unsigned int)val;
break;
case UDT_SEX:
- md->vd->sex = (char) val;
+ md->vd->sex = (char)val;
break;
case UDT_CLASS:
mob->class_change(md, val);
@@ -19845,112 +20184,115 @@ static BUILDIN(setunitdata)
md->ud.canmove_tick = val;
break;
case UDT_STR:
- md->status.str = (unsigned short) val;
+ md->status.str = (unsigned short)val;
status->calc_misc(bl, &md->status, md->level);
break;
case UDT_AGI:
- md->status.agi = (unsigned short) val;
+ md->status.agi = (unsigned short)val;
status->calc_misc(bl, &md->status, md->level);
break;
case UDT_VIT:
- md->status.vit = (unsigned short) val;
+ md->status.vit = (unsigned short)val;
status->calc_misc(bl, &md->status, md->level);
break;
case UDT_INT:
- md->status.int_ = (unsigned short) val;
+ md->status.int_ = (unsigned short)val;
status->calc_misc(bl, &md->status, md->level);
break;
case UDT_DEX:
- md->status.dex = (unsigned short) val;
+ md->status.dex = (unsigned short)val;
status->calc_misc(bl, &md->status, md->level);
break;
case UDT_LUK:
- md->status.luk = (unsigned short) val;
+ md->status.luk = (unsigned short)val;
status->calc_misc(bl, &md->status, md->level);
break;
case UDT_ATKRANGE:
- md->status.rhw.range = (unsigned short) val;
+ md->status.rhw.range = (unsigned short)val;
break;
case UDT_ATKMIN:
- md->status.rhw.atk = (unsigned short) val;
+ md->status.rhw.atk = (unsigned short)val;
break;
case UDT_ATKMAX:
- md->status.rhw.atk2 = (unsigned short) val;
+ md->status.rhw.atk2 = (unsigned short)val;
break;
case UDT_MATKMIN:
- md->status.matk_min = (unsigned short) val;
+ md->status.matk_min = (unsigned short)val;
break;
case UDT_MATKMAX:
- md->status.matk_max = (unsigned short) val;
+ md->status.matk_max = (unsigned short)val;
break;
case UDT_DEF:
- md->status.def = (defType) val;
+ md->status.def = (defType)val;
break;
case UDT_MDEF:
- md->status.mdef = (defType) val;
+ md->status.mdef = (defType)val;
break;
case UDT_HIT:
- md->status.hit = (short) val;
+ md->status.hit = (short)val;
break;
case UDT_FLEE:
- md->status.flee = (short) val;
+ md->status.flee = (short)val;
break;
case UDT_PDODGE:
- md->status.flee2 = (short) val;
+ md->status.flee2 = (short)val;
break;
case UDT_CRIT:
- md->status.cri = (short) val;
+ md->status.cri = (short)val;
break;
case UDT_RACE:
- md->status.race = (unsigned char) val;
+ md->status.race = (unsigned char)val;
break;
case UDT_ELETYPE:
- md->status.def_ele = (unsigned char) val;
+ md->status.def_ele = (unsigned char)val;
break;
case UDT_ELELEVEL:
- md->status.ele_lv = (unsigned char) val;
+ md->status.ele_lv = (unsigned char)val;
break;
case UDT_AMOTION:
- md->status.amotion = (unsigned short) val;
+ md->status.amotion = (unsigned short)val;
break;
case UDT_ADELAY:
- md->status.adelay = (unsigned short) val;
+ md->status.adelay = (unsigned short)val;
break;
case UDT_DMOTION:
- md->status.dmotion = (unsigned short) val;
+ md->status.dmotion = (unsigned short)val;
break;
case UDT_DAMAGE_TAKEN_RATE:
- md->dmg_taken_rate = (int) val;
+ md->dmg_taken_rate = (int)val;
break;
default:
- ShowWarning("buildin_setunitdata: Invalid data type '%s' for mob unit.\n", udtype);
+ ShowWarning("buildin_setunitdata: Invalid data type '%d' for mob unit.\n", type);
script_pushint(st, 0);
return false;
}
- }
+
break;
- case BL_HOM:
- {
+ }
+ case BL_HOM: {
struct homun_data *hd = BL_UCAST(BL_HOM, bl);
- nullpo_retr(false, hd);
+ if (hd == NULL) {
+ ShowError("buildin_setunitdata: Can't find Homunculus for GID %d!\n", script_getnum(st, 2));
+ script_pushint(st, 0);
+ return false;
+ }
- switch (type)
- {
+ switch (type) {
case UDT_SIZE:
- hd->base_status.size = (unsigned char) val;
+ hd->base_status.size = (unsigned char)val;
break;
case UDT_LEVEL:
- hd->homunculus.level = (short) val;
+ hd->homunculus.level = (short)val;
break;
case UDT_HP:
- status->set_hp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_hp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXHP:
hd->homunculus.max_hp = val;
break;
case UDT_SP:
- status->set_sp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_sp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXSP:
hd->homunculus.max_sp = val;
@@ -19960,14 +20302,14 @@ static BUILDIN(setunitdata)
hd->master = tsd;
break;
case UDT_MAPIDXY:
- unit->warp(bl, (short) val, (short) val2, (short) val3, CLR_TELEPORT);
+ unit->warp(bl, (short)val, (short)val2, (short)val3, CLR_TELEPORT);
break;
case UDT_WALKTOXY:
if (unit->walk_toxy(bl, (short)val, (short)val2, 2) != 0)
- unit->movepos(bl, (short) val, (short) val2, 0, 0);
+ unit->movepos(bl, (short)val, (short)val2, 0, 0);
break;
case UDT_SPEED:
- hd->base_status.speed = (unsigned short) val;
+ hd->base_status.speed = (unsigned short)val;
status->calc_misc(bl, &hd->base_status, hd->homunculus.level);
break;
case UDT_LOOKDIR:
@@ -19977,136 +20319,138 @@ static BUILDIN(setunitdata)
hd->ud.canmove_tick = val;
break;
case UDT_STR:
- hd->base_status.str = (unsigned short) val;
+ hd->base_status.str = (unsigned short)val;
status->calc_misc(bl, &hd->base_status, hd->homunculus.level);
break;
case UDT_AGI:
- hd->base_status.agi = (unsigned short) val;
+ hd->base_status.agi = (unsigned short)val;
status->calc_misc(bl, &hd->base_status, hd->homunculus.level);
break;
case UDT_VIT:
- hd->base_status.vit = (unsigned short) val;
+ hd->base_status.vit = (unsigned short)val;
status->calc_misc(bl, &hd->base_status, hd->homunculus.level);
break;
case UDT_INT:
- hd->base_status.int_ = (unsigned short) val;
+ hd->base_status.int_ = (unsigned short)val;
status->calc_misc(bl, &hd->base_status, hd->homunculus.level);
break;
case UDT_DEX:
- hd->base_status.dex = (unsigned short) val;
+ hd->base_status.dex = (unsigned short)val;
status->calc_misc(bl, &hd->base_status, hd->homunculus.level);
break;
case UDT_LUK:
- hd->base_status.luk = (unsigned short) val;
+ hd->base_status.luk = (unsigned short)val;
status->calc_misc(bl, &hd->base_status, hd->homunculus.level);
break;
case UDT_ATKRANGE:
- hd->base_status.rhw.range = (unsigned short) val;
+ hd->base_status.rhw.range = (unsigned short)val;
break;
case UDT_ATKMIN:
- hd->base_status.rhw.atk = (unsigned short) val;
+ hd->base_status.rhw.atk = (unsigned short)val;
break;
case UDT_ATKMAX:
- hd->base_status.rhw.atk2 = (unsigned short) val;
+ hd->base_status.rhw.atk2 = (unsigned short)val;
break;
case UDT_MATKMIN:
- hd->base_status.matk_min = (unsigned short) val;
+ hd->base_status.matk_min = (unsigned short)val;
break;
case UDT_MATKMAX:
- hd->base_status.matk_max = (unsigned short) val;
+ hd->base_status.matk_max = (unsigned short)val;
break;
case UDT_DEF:
- hd->base_status.def = (defType) val;
+ hd->base_status.def = (defType)val;
break;
case UDT_MDEF:
- hd->base_status.mdef = (defType) val;
+ hd->base_status.mdef = (defType)val;
break;
case UDT_HIT:
- hd->base_status.hit = (short) val;
+ hd->base_status.hit = (short)val;
break;
case UDT_FLEE:
- hd->base_status.flee = (short) val;
+ hd->base_status.flee = (short)val;
break;
case UDT_PDODGE:
- hd->base_status.flee2 = (short) val;
+ hd->base_status.flee2 = (short)val;
break;
case UDT_CRIT:
- hd->base_status.cri = (short) val;
+ hd->base_status.cri = (short)val;
break;
case UDT_RACE:
- hd->base_status.race = (unsigned char) val;
+ hd->base_status.race = (unsigned char)val;
break;
case UDT_ELETYPE:
- hd->base_status.def_ele = (unsigned char) val;
+ hd->base_status.def_ele = (unsigned char)val;
break;
case UDT_ELELEVEL:
- hd->base_status.ele_lv = (unsigned char) val;
+ hd->base_status.ele_lv = (unsigned char)val;
break;
case UDT_AMOTION:
- hd->base_status.amotion = (unsigned short) val;
+ hd->base_status.amotion = (unsigned short)val;
break;
case UDT_ADELAY:
- hd->base_status.adelay = (unsigned short) val;
+ hd->base_status.adelay = (unsigned short)val;
break;
case UDT_DMOTION:
- hd->base_status.dmotion = (unsigned short) val;
+ hd->base_status.dmotion = (unsigned short)val;
break;
case UDT_HUNGER:
- hd->homunculus.hunger = (short) val;
+ hd->homunculus.hunger = (short)val;
clif->send_homdata(hd->master, SP_HUNGRY, hd->homunculus.hunger);
break;
case UDT_INTIMACY:
- homun->add_intimacy(hd, (unsigned int) val);
+ homun->add_intimacy(hd, (unsigned int)val);
clif->send_homdata(hd->master, SP_INTIMATE, hd->homunculus.intimacy / 100);
break;
default:
- ShowWarning("buildin_setunitdata: Invalid data type '%s' for homunculus unit.\n", udtype);
+ ShowWarning("buildin_setunitdata: Invalid data type '%d' for homunculus unit.\n", type);
script_pushint(st, 0);
return false;
}
- clif->send_homdata(hd->master, SP_ACK, 0); // send homun data
- }
+ clif->send_homdata(hd->master, SP_ACK, 0); // Send Homunculus data.
break;
- case BL_PET:
- {
+ }
+ case BL_PET: {
struct pet_data *pd = BL_UCAST(BL_PET, bl);
- nullpo_retr(false, pd);
+ if (pd == NULL) {
+ ShowError("buildin_setunitdata: Can't find pet for GID %d!\n", script_getnum(st, 2));
+ script_pushint(st, 0);
+ return false;
+ }
- switch (type)
- {
+ switch (type) {
case UDT_SIZE:
- pd->status.size = (unsigned char) val;
+ pd->status.size = (unsigned char)val;
break;
case UDT_LEVEL:
- pd->pet.level = (short) val;
+ pd->pet.level = (short)val;
break;
case UDT_HP:
- status->set_hp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_hp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXHP:
- pd->status.max_hp = (unsigned int) val;
+ pd->status.max_hp = (unsigned int)val;
break;
case UDT_SP:
- status->set_sp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_sp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXSP:
- pd->status.max_sp = (unsigned int) val;
+ pd->status.max_sp = (unsigned int)val;
break;
case UDT_MASTERAID:
pd->pet.account_id = val;
pd->msd = tsd;
break;
case UDT_MAPIDXY:
- unit->warp(bl, (short) val, (short) val2, (short) val3, CLR_TELEPORT);
+ unit->warp(bl, (short)val, (short)val2, (short)val3, CLR_TELEPORT);
break;
case UDT_WALKTOXY:
if (unit->walk_toxy(bl, (short)val, (short)val2, 2) != 0)
- unit->movepos(bl, (short) val, (short) val2, 0, 0);
+ unit->movepos(bl, (short)val, (short)val2, 0, 0);
break;
case UDT_SPEED:
- pd->status.speed = (unsigned short) val;
+ pd->status.speed = (unsigned short)val;
status->calc_misc(bl, &pd->status, pd->pet.level);
break;
case UDT_LOOKDIR:
@@ -20116,130 +20460,133 @@ static BUILDIN(setunitdata)
pd->ud.canmove_tick = val;
break;
case UDT_STR:
- pd->status.str = (unsigned short) val;
+ pd->status.str = (unsigned short)val;
status->calc_misc(bl, &pd->status, pd->pet.level);
break;
case UDT_AGI:
- pd->status.agi = (unsigned short) val;
+ pd->status.agi = (unsigned short)val;
status->calc_misc(bl, &pd->status, pd->pet.level);
break;
case UDT_VIT:
- pd->status.vit = (unsigned short) val;
+ pd->status.vit = (unsigned short)val;
status->calc_misc(bl, &pd->status, pd->pet.level);
break;
case UDT_INT:
- pd->status.int_ = (unsigned short) val;
+ pd->status.int_ = (unsigned short)val;
status->calc_misc(bl, &pd->status, pd->pet.level);
break;
case UDT_DEX:
- pd->status.dex = (unsigned short) val;
+ pd->status.dex = (unsigned short)val;
status->calc_misc(bl, &pd->status, pd->pet.level);
break;
case UDT_LUK:
- pd->status.luk = (unsigned short) val;
+ pd->status.luk = (unsigned short)val;
status->calc_misc(bl, &pd->status, pd->pet.level);
break;
case UDT_ATKRANGE:
- pd->status.rhw.range = (unsigned short) val;
+ pd->status.rhw.range = (unsigned short)val;
break;
case UDT_ATKMIN:
- pd->status.rhw.atk = (unsigned short) val;
+ pd->status.rhw.atk = (unsigned short)val;
break;
case UDT_ATKMAX:
- pd->status.rhw.atk2 = (unsigned short) val;
+ pd->status.rhw.atk2 = (unsigned short)val;
break;
case UDT_MATKMIN:
- pd->status.matk_min = (unsigned short) val;
+ pd->status.matk_min = (unsigned short)val;
break;
case UDT_MATKMAX:
- pd->status.matk_max = (unsigned short) val;
+ pd->status.matk_max = (unsigned short)val;
break;
case UDT_DEF:
- pd->status.def = (defType) val;
+ pd->status.def = (defType)val;
break;
case UDT_MDEF:
- pd->status.mdef = (defType) val;
+ pd->status.mdef = (defType)val;
break;
case UDT_HIT:
- pd->status.hit = (short) val;
+ pd->status.hit = (short)val;
break;
case UDT_FLEE:
- pd->status.flee = (short) val;
+ pd->status.flee = (short)val;
break;
case UDT_PDODGE:
- pd->status.flee2 = (short) val;
+ pd->status.flee2 = (short)val;
break;
case UDT_CRIT:
- pd->status.cri = (short) val;
+ pd->status.cri = (short)val;
break;
case UDT_RACE:
- pd->status.race = (unsigned char) val;
+ pd->status.race = (unsigned char)val;
break;
case UDT_ELETYPE:
- pd->status.def_ele = (unsigned char) val;
+ pd->status.def_ele = (unsigned char)val;
break;
case UDT_ELELEVEL:
- pd->status.ele_lv = (unsigned char) val;
+ pd->status.ele_lv = (unsigned char)val;
break;
case UDT_AMOTION:
- pd->status.amotion = (unsigned short) val;
+ pd->status.amotion = (unsigned short)val;
break;
case UDT_ADELAY:
- pd->status.adelay = (unsigned short) val;
+ pd->status.adelay = (unsigned short)val;
break;
case UDT_DMOTION:
- pd->status.dmotion = (unsigned short) val;
+ pd->status.dmotion = (unsigned short)val;
break;
case UDT_INTIMACY:
pet->set_intimate(pd, val);
clif->send_petdata(pd->msd, pd, 1, pd->pet.intimate);
break;
case UDT_HUNGER:
- pd->pet.hungry = (short) val;
+ pet->set_hunger(pd, val);
break;
default:
- ShowWarning("buildin_setunitdata: Invalid data type '%s' for pet unit.\n", udtype);
+ ShowWarning("buildin_setunitdata: Invalid data type '%d' for pet unit.\n", type);
script_pushint(st, 0);
return false;
}
- clif->send_petstatus(pd->msd); // send pet data
- }
+
+ clif->send_petstatus(pd->msd); // Send pet data.
break;
- case BL_MER:
- {
+ }
+ case BL_MER: {
struct mercenary_data *mc = BL_UCAST(BL_MER, bl);
- nullpo_retr(false, mc);
+ if (mc == NULL) {
+ ShowError("buildin_setunitdata: Can't find mercenary for GID %d!\n", script_getnum(st, 2));
+ script_pushint(st, 0);
+ return false;
+ }
- switch (type)
- {
+ switch (type) {
case UDT_SIZE:
- mc->base_status.size = (unsigned char) val;
+ mc->base_status.size = (unsigned char)val;
break;
case UDT_HP:
- status->set_hp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_hp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXHP:
- mc->base_status.max_hp = (unsigned int) val;
+ mc->base_status.max_hp = (unsigned int)val;
break;
case UDT_SP:
- status->set_sp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_sp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXSP:
- mc->base_status.max_sp = (unsigned int) val;
+ mc->base_status.max_sp = (unsigned int)val;
break;
case UDT_MASTERCID:
mc->mercenary.char_id = val;
break;
case UDT_MAPIDXY:
- unit->warp(bl, (short) val, (short) val2, (short) val3, CLR_TELEPORT);
+ unit->warp(bl, (short)val, (short)val2, (short)val3, CLR_TELEPORT);
break;
case UDT_WALKTOXY:
if (unit->walk_toxy(bl, (short)val, (short)val2, 2) != 0)
- unit->movepos(bl, (short) val, (short) val2, 0, 0);
+ unit->movepos(bl, (short)val, (short)val2, 0, 0);
break;
case UDT_SPEED:
- mc->base_status.size = (unsigned char) val;
+ mc->base_status.size = (unsigned char)val;
status->calc_misc(bl, &mc->base_status, mc->db->lv);
break;
case UDT_LOOKDIR:
@@ -20249,131 +20596,134 @@ static BUILDIN(setunitdata)
mc->ud.canmove_tick = val;
break;
case UDT_STR:
- mc->base_status.str = (unsigned short) val;
+ mc->base_status.str = (unsigned short)val;
status->calc_misc(bl, &mc->base_status, mc->db->lv);
break;
case UDT_AGI:
- mc->base_status.agi = (unsigned short) val;
+ mc->base_status.agi = (unsigned short)val;
status->calc_misc(bl, &mc->base_status, mc->db->lv);
break;
case UDT_VIT:
- mc->base_status.vit = (unsigned short) val;
+ mc->base_status.vit = (unsigned short)val;
status->calc_misc(bl, &mc->base_status, mc->db->lv);
break;
case UDT_INT:
- mc->base_status.int_ = (unsigned short) val;
+ mc->base_status.int_ = (unsigned short)val;
status->calc_misc(bl, &mc->base_status, mc->db->lv);
break;
case UDT_DEX:
- mc->base_status.dex = (unsigned short) val;
+ mc->base_status.dex = (unsigned short)val;
status->calc_misc(bl, &mc->base_status, mc->db->lv);
break;
case UDT_LUK:
- mc->base_status.luk = (unsigned short) val;
+ mc->base_status.luk = (unsigned short)val;
status->calc_misc(bl, &mc->base_status, mc->db->lv);
break;
case UDT_ATKRANGE:
- mc->base_status.rhw.range = (unsigned short) val;
+ mc->base_status.rhw.range = (unsigned short)val;
break;
case UDT_ATKMIN:
- mc->base_status.rhw.atk = (unsigned short) val;
+ mc->base_status.rhw.atk = (unsigned short)val;
break;
case UDT_ATKMAX:
- mc->base_status.rhw.atk2 = (unsigned short) val;
+ mc->base_status.rhw.atk2 = (unsigned short)val;
break;
case UDT_MATKMIN:
- mc->base_status.matk_min = (unsigned short) val;
+ mc->base_status.matk_min = (unsigned short)val;
break;
case UDT_MATKMAX:
- mc->base_status.matk_max = (unsigned short) val;
+ mc->base_status.matk_max = (unsigned short)val;
break;
case UDT_DEF:
- mc->base_status.def = (defType) val;
+ mc->base_status.def = (defType)val;
break;
case UDT_MDEF:
- mc->base_status.mdef = (defType) val;
+ mc->base_status.mdef = (defType)val;
break;
case UDT_HIT:
- mc->base_status.hit = (short) val;
+ mc->base_status.hit = (short)val;
break;
case UDT_FLEE:
- mc->base_status.flee = (short) val;
+ mc->base_status.flee = (short)val;
break;
case UDT_PDODGE:
- mc->base_status.flee2 = (short) val;
+ mc->base_status.flee2 = (short)val;
break;
case UDT_CRIT:
- mc->base_status.cri = (short) val;
+ mc->base_status.cri = (short)val;
break;
case UDT_RACE:
- mc->base_status.race = (unsigned char) val;
+ mc->base_status.race = (unsigned char)val;
break;
case UDT_ELETYPE:
- mc->base_status.def_ele = (unsigned char) val;
+ mc->base_status.def_ele = (unsigned char)val;
break;
case UDT_ELELEVEL:
- mc->base_status.ele_lv = (unsigned char) val;
+ mc->base_status.ele_lv = (unsigned char)val;
break;
case UDT_AMOTION:
- mc->base_status.amotion = (unsigned short) val;
+ mc->base_status.amotion = (unsigned short)val;
break;
case UDT_ADELAY:
- mc->base_status.adelay = (unsigned short) val;
+ mc->base_status.adelay = (unsigned short)val;
break;
case UDT_DMOTION:
- mc->base_status.dmotion = (unsigned short) val;
+ mc->base_status.dmotion = (unsigned short)val;
break;
case UDT_MERC_KILLCOUNT:
- mc->mercenary.kill_count = (unsigned int) val;
+ mc->mercenary.kill_count = (unsigned int)val;
break;
case UDT_LIFETIME:
- mc->mercenary.life_time = (unsigned int) val;
+ mc->mercenary.life_time = (unsigned int)val;
break;
default:
- ShowWarning("buildin_setunitdata: Invalid data type '%s' for mercenary unit.\n", udtype);
+ ShowWarning("buildin_setunitdata: Invalid data type '%d' for mercenary unit.\n", type);
script_pushint(st, 0);
return false;
}
+ // Send mercenary data.
clif->mercenary_info(map->charid2sd(mc->mercenary.char_id));
clif->mercenary_skillblock(map->charid2sd(mc->mercenary.char_id));
- }
break;
- case BL_ELEM:
- {
+ }
+ case BL_ELEM: {
struct elemental_data *ed = BL_UCAST(BL_ELEM, bl);
- nullpo_retr(false, ed);
+ if (ed == NULL) {
+ ShowError("buildin_setunitdata: Can't find Elemental for GID %d!\n", script_getnum(st, 2));
+ script_pushint(st, 0);
+ return false;
+ }
- switch (type)
- {
+ switch (type) {
case UDT_SIZE:
- ed->base_status.size = (unsigned char) val;
+ ed->base_status.size = (unsigned char)val;
break;
case UDT_HP:
- status->set_hp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_hp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXHP:
- ed->base_status.max_hp = (unsigned int) val;
+ ed->base_status.max_hp = (unsigned int)val;
break;
case UDT_SP:
- status->set_sp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_sp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXSP:
- ed->base_status.max_sp = (unsigned int) val;
+ ed->base_status.max_sp = (unsigned int)val;
break;
case UDT_MASTERCID:
ed->elemental.char_id = val;
break;
case UDT_MAPIDXY:
- unit->warp(bl, (short) val, (short) val2, (short) val3, CLR_TELEPORT);
+ unit->warp(bl, (short)val, (short)val2, (short)val3, CLR_TELEPORT);
break;
case UDT_WALKTOXY:
if (unit->walk_toxy(bl, (short)val, (short)val2, 2) != 0)
- unit->movepos(bl, (short) val, (short) val2, 0, 0);
+ unit->movepos(bl, (short)val, (short)val2, 0, 0);
break;
case UDT_SPEED:
- ed->base_status.speed = (unsigned short) val;
+ ed->base_status.speed = (unsigned short)val;
status->calc_misc(bl, &ed->base_status, ed->db->lv);
break;
case UDT_LOOKDIR:
@@ -20383,211 +20733,214 @@ static BUILDIN(setunitdata)
ed->ud.canmove_tick = val;
break;
case UDT_STR:
- ed->base_status.str = (unsigned short) val;
+ ed->base_status.str = (unsigned short)val;
status->calc_misc(bl, &ed->base_status, ed->db->lv);
break;
case UDT_AGI:
- ed->base_status.agi = (unsigned short) val;
+ ed->base_status.agi = (unsigned short)val;
status->calc_misc(bl, &ed->base_status, ed->db->lv);
break;
case UDT_VIT:
- ed->base_status.vit = (unsigned short) val;
+ ed->base_status.vit = (unsigned short)val;
status->calc_misc(bl, &ed->base_status, ed->db->lv);
break;
case UDT_INT:
- ed->base_status.int_ = (unsigned short) val;
+ ed->base_status.int_ = (unsigned short)val;
status->calc_misc(bl, &ed->base_status, ed->db->lv);
break;
case UDT_DEX:
- ed->base_status.dex = (unsigned short) val;
+ ed->base_status.dex = (unsigned short)val;
status->calc_misc(bl, &ed->base_status, ed->db->lv);
break;
case UDT_LUK:
- ed->base_status.luk = (unsigned short) val;
+ ed->base_status.luk = (unsigned short)val;
status->calc_misc(bl, &ed->base_status, ed->db->lv);
break;
case UDT_ATKRANGE:
- ed->base_status.rhw.range = (unsigned short) val;
+ ed->base_status.rhw.range = (unsigned short)val;
break;
case UDT_ATKMIN:
- ed->base_status.rhw.atk = (unsigned short) val;
+ ed->base_status.rhw.atk = (unsigned short)val;
break;
case UDT_ATKMAX:
- ed->base_status.rhw.atk2 = (unsigned short) val;
+ ed->base_status.rhw.atk2 = (unsigned short)val;
break;
case UDT_MATKMIN:
- ed->base_status.matk_min = (unsigned short) val;
+ ed->base_status.matk_min = (unsigned short)val;
break;
case UDT_MATKMAX:
- ed->base_status.matk_max = (unsigned short) val;
+ ed->base_status.matk_max = (unsigned short)val;
break;
case UDT_DEF:
- ed->base_status.def = (defType) val;
+ ed->base_status.def = (defType)val;
break;
case UDT_MDEF:
- ed->base_status.mdef = (defType) val;
+ ed->base_status.mdef = (defType)val;
break;
case UDT_HIT:
- ed->base_status.hit = (short) val;
+ ed->base_status.hit = (short)val;
break;
case UDT_FLEE:
- ed->base_status.flee = (short) val;
+ ed->base_status.flee = (short)val;
break;
case UDT_PDODGE:
- ed->base_status.flee2 = (short) val;
+ ed->base_status.flee2 = (short)val;
break;
case UDT_CRIT:
- ed->base_status.cri = (short) val;
+ ed->base_status.cri = (short)val;
break;
case UDT_RACE:
- ed->base_status.race = (unsigned char) val;
+ ed->base_status.race = (unsigned char)val;
break;
case UDT_ELETYPE:
- ed->base_status.def_ele = (unsigned char) val;
+ ed->base_status.def_ele = (unsigned char)val;
break;
case UDT_ELELEVEL:
- ed->base_status.ele_lv = (unsigned char) val;
+ ed->base_status.ele_lv = (unsigned char)val;
break;
case UDT_AMOTION:
- ed->base_status.amotion = (unsigned short) val;
+ ed->base_status.amotion = (unsigned short)val;
break;
case UDT_ADELAY:
- ed->base_status.adelay = (unsigned short) val;
+ ed->base_status.adelay = (unsigned short)val;
break;
case UDT_DMOTION:
- ed->base_status.dmotion = (unsigned short) val;
+ ed->base_status.dmotion = (unsigned short)val;
break;
case UDT_LIFETIME:
ed->elemental.life_time = val;
break;
default:
- ShowWarning("buildin_setunitdata: Invalid data type '%s' for elemental unit.\n", udtype);
+ ShowWarning("buildin_setunitdata: Invalid data type '%d' for elemental unit.\n", type);
script_pushint(st, 0);
return false;
}
- clif->elemental_info(ed->master);
- }
+
+ clif->elemental_info(ed->master); // Send Elemental data.
break;
- case BL_NPC:
- {
+ }
+ case BL_NPC: {
struct npc_data *nd = BL_UCAST(BL_NPC, bl);
- nullpo_retr(false, nd);
+ if (nd == NULL) {
+ ShowError("buildin_setunitdata: Can't find NPC for GID %d!\n", script_getnum(st, 2));
+ script_pushint(st, 0);
+ return false;
+ }
- switch (type)
- {
+ switch (type) {
case UDT_SIZE:
- nd->status.size = (unsigned char) val;
+ nd->status.size = (unsigned char)val;
break;
case UDT_LEVEL:
- nd->level = (unsigned short) val;
+ nd->level = (unsigned short)val;
break;
case UDT_HP:
- status->set_hp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_hp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXHP:
- nd->status.max_hp = (unsigned int) val;
+ nd->status.max_hp = (unsigned int)val;
break;
case UDT_SP:
- status->set_sp(bl, (unsigned int) val, STATUS_HEAL_DEFAULT);
+ status->set_sp(bl, (unsigned int)val, STATUS_HEAL_DEFAULT);
break;
case UDT_MAXSP:
- nd->status.max_sp = (unsigned int) val;
+ nd->status.max_sp = (unsigned int)val;
break;
case UDT_MAPIDXY:
- unit->warp(bl, (short) val, (short) val2, (short) val3, CLR_TELEPORT);
+ unit->warp(bl, (short)val, (short)val2, (short)val3, CLR_TELEPORT);
break;
case UDT_WALKTOXY:
if (unit->walk_toxy(bl, (short)val, (short)val2, 2) != 0)
- unit->movepos(bl, (short) val, (short) val2, 0, 0);
+ unit->movepos(bl, (short)val, (short)val2, 0, 0);
break;
case UDT_CLASS:
- npc->setclass(nd, (short) val);
+ npc->setclass(nd, (short)val);
break;
case UDT_SPEED:
- nd->speed = (short) val;
+ nd->speed = (short)val;
status->calc_misc(bl, &nd->status, nd->level);
break;
case UDT_LOOKDIR:
unit->set_dir(bl, (enum unit_dir)val);
break;
case UDT_STR:
- nd->status.str = (unsigned short) val;
+ nd->status.str = (unsigned short)val;
status->calc_misc(bl, &nd->status, nd->level);
break;
case UDT_AGI:
- nd->status.agi = (unsigned short) val;
+ nd->status.agi = (unsigned short)val;
status->calc_misc(bl, &nd->status, nd->level);
break;
case UDT_VIT:
- nd->status.vit = (unsigned short) val;
+ nd->status.vit = (unsigned short)val;
status->calc_misc(bl, &nd->status, nd->level);
break;
case UDT_INT:
- nd->status.int_ = (unsigned short) val;
+ nd->status.int_ = (unsigned short)val;
status->calc_misc(bl, &nd->status, nd->level);
break;
case UDT_DEX:
- nd->status.dex = (unsigned short) val;
+ nd->status.dex = (unsigned short)val;
status->calc_misc(bl, &nd->status, nd->level);
break;
case UDT_LUK:
- nd->status.luk = (unsigned short) val;
+ nd->status.luk = (unsigned short)val;
status->calc_misc(bl, &nd->status, nd->level);
break;
case UDT_STATPOINT:
- nd->stat_point = (unsigned short) val;
+ nd->stat_point = (unsigned short)val;
break;
case UDT_ATKRANGE:
- nd->status.rhw.range = (unsigned short) val;
+ nd->status.rhw.range = (unsigned short)val;
break;
case UDT_ATKMIN:
- nd->status.rhw.atk = (unsigned short) val;
+ nd->status.rhw.atk = (unsigned short)val;
break;
case UDT_ATKMAX:
- nd->status.rhw.atk2 = (unsigned short) val;
+ nd->status.rhw.atk2 = (unsigned short)val;
break;
case UDT_MATKMIN:
- nd->status.matk_min = (unsigned short) val;
+ nd->status.matk_min = (unsigned short)val;
break;
case UDT_MATKMAX:
- nd->status.matk_max = (unsigned short) val;
+ nd->status.matk_max = (unsigned short)val;
break;
case UDT_DEF:
- nd->status.def = (defType) val;
+ nd->status.def = (defType)val;
break;
case UDT_MDEF:
- nd->status.mdef = (defType) val;
+ nd->status.mdef = (defType)val;
break;
case UDT_HIT:
- nd->status.hit = (short) val;
+ nd->status.hit = (short)val;
break;
case UDT_FLEE:
- nd->status.flee = (short) val;
+ nd->status.flee = (short)val;
break;
case UDT_PDODGE:
- nd->status.flee2 = (short) val;
+ nd->status.flee2 = (short)val;
break;
case UDT_CRIT:
- nd->status.cri = (short) val;
+ nd->status.cri = (short)val;
break;
case UDT_RACE:
- nd->status.race = (unsigned char) val;
+ nd->status.race = (unsigned char)val;
break;
case UDT_ELETYPE:
- nd->status.def_ele = (unsigned char) val;
+ nd->status.def_ele = (unsigned char)val;
break;
case UDT_ELELEVEL:
- nd->status.ele_lv = (unsigned char) val;
+ nd->status.ele_lv = (unsigned char)val;
break;
case UDT_AMOTION:
- nd->status.amotion = (unsigned short) val;
+ nd->status.amotion = (unsigned short)val;
break;
case UDT_ADELAY:
- nd->status.adelay = (unsigned short) val;
+ nd->status.adelay = (unsigned short)val;
break;
case UDT_DMOTION:
- nd->status.dmotion = (unsigned short) val;
+ nd->status.dmotion = (unsigned short)val;
break;
case UDT_SEX:
nd->vd.sex = (char)val;
@@ -20624,19 +20977,21 @@ static BUILDIN(setunitdata)
clif->changelook(bl, LOOK_BODY2, val);
break;
default:
- ShowWarning("buildin_setunitdata: Invalid data type '%s' for NPC unit.\n", udtype);
+ ShowWarning("buildin_setunitdata: Invalid data type '%d' for NPC unit.\n", type);
script_pushint(st, 0);
return false;
}
- }
+
break;
+ }
default:
ShowError("buildin_setunitdata: Unknown object!\n");
script_pushint(st, 0);
return false;
- } // end of bl->type switch
+ } // End of bl->type switch.
script_pushint(st, 1);
+
return true;
}
@@ -21511,7 +21866,10 @@ static BUILDIN(unitskilluseid)
} else {
status_calc_npc(nd, SCO_NONE);
}
+ } else if (bl->type == BL_PC) {
+ pc->autocast_clear(BL_UCAST(BL_PC, bl));
}
+
unit->skilluse_id(bl, target_id, skill_id, skill_lv);
}
@@ -21547,7 +21905,10 @@ static BUILDIN(unitskillusepos)
} else {
status_calc_npc(nd, SCO_NONE);
}
+ } else if (bl->type == BL_PC) {
+ pc->autocast_clear(BL_UCAST(BL_PC, bl));
}
+
unit->skilluse_pos(bl, skill_x, skill_y, skill_id, skill_lv);
}
@@ -22103,12 +22464,13 @@ static BUILDIN(setquestinfo)
return false;
}
- qi = &VECTOR_LAST(nd->qi_data);
- if (qi == NULL) {
+ if (VECTOR_LENGTH(nd->qi_data) == 0) {
ShowWarning("buildin_setquestinfo: no valide questinfo data has been found for this npc.\n");
return false;
}
+ qi = &VECTOR_LAST(nd->qi_data);
+
switch (type) {
case QINFO_JOB:
{
@@ -27167,8 +27529,8 @@ static void script_parse_builtin(void)
BUILDIN_DEF(pcfollow,"ii"),
BUILDIN_DEF(pcstopfollow,"i"),
BUILDIN_DEF_DEPRECATED(pcblockmove,"ii"), // Deprecated 2018-05-04
- BUILDIN_DEF(setpcblock, "ii"),
- BUILDIN_DEF(checkpcblock, ""),
+ BUILDIN_DEF(setpcblock, "ii?"),
+ BUILDIN_DEF(checkpcblock, "?"),
// <--- [zBuffer] List of player cont commands
// [zBuffer] List of mob control commands --->
BUILDIN_DEF(getunittype,"i"),
@@ -27407,6 +27769,8 @@ static void script_parse_builtin(void)
BUILDIN_DEF(identify, "i"),
BUILDIN_DEF(identifyidx, "i"),
BUILDIN_DEF(openlapineddukddakboxui, "i"),
+
+ BUILDIN_DEF(callfunctionofnpc, "vs*"),
};
int i, len = ARRAYLENGTH(BUILDIN);
RECREATE(script->buildin, char *, script->buildin_count + len); // Pre-alloc to speed up
@@ -27418,7 +27782,7 @@ static void script_parse_builtin(void)
#undef BUILDIN_DEF
#undef BUILDIN_DEF2
-static void script_label_add(int key, int pos)
+static void script_label_add(int key, int pos, enum script_label_flags flags)
{
int idx = script->label_count;
@@ -27429,6 +27793,7 @@ static void script_label_add(int key, int pos)
script->labels[idx].key = key;
script->labels[idx].pos = pos;
+ script->labels[idx].flags = flags;
script->label_count++;
}
@@ -27793,6 +28158,23 @@ static void script_hardcoded_constants(void)
script->set_constant("PETINFO_EVO_EGGID", PETINFO_EVO_EGGID, false, false);
script->set_constant("PETINFO_AUTOFEED", PETINFO_AUTOFEED, false, false);
+ script->constdb_comment("Pet hunger levels");
+ script->set_constant("PET_HUNGER_STARVING", PET_HUNGER_STARVING, false, false);
+ script->set_constant("PET_HUNGER_VERY_HUNGRY", PET_HUNGER_VERY_HUNGRY, false, false);
+ script->set_constant("PET_HUNGER_HUNGRY", PET_HUNGER_HUNGRY, false, false);
+ script->set_constant("PET_HUNGER_NEUTRAL", PET_HUNGER_NEUTRAL, false, false);
+ script->set_constant("PET_HUNGER_SATISFIED", PET_HUNGER_SATISFIED, false, false);
+ script->set_constant("PET_HUNGER_STUFFED", PET_HUNGER_STUFFED, false, false);
+
+ script->constdb_comment("Pet intimacy levels");
+ script->set_constant("PET_INTIMACY_NONE", PET_INTIMACY_NONE, false, false);
+ script->set_constant("PET_INTIMACY_AWKWARD", PET_INTIMACY_AWKWARD, false, false);
+ script->set_constant("PET_INTIMACY_SHY", PET_INTIMACY_SHY, false, false);
+ script->set_constant("PET_INTIMACY_NEUTRAL", PET_INTIMACY_NEUTRAL, false, false);
+ script->set_constant("PET_INTIMACY_CORDIAL", PET_INTIMACY_CORDIAL, false, false);
+ script->set_constant("PET_INTIMACY_LOYAL", PET_INTIMACY_LOYAL, false, false);
+ script->set_constant("PET_INTIMACY_MAX", PET_INTIMACY_MAX, false, false);
+
script->constdb_comment("monster skill states");
script->set_constant("MSS_ANY", MSS_ANY, false, false);
script->set_constant("MSS_IDLE", MSS_IDLE, false, false);
@@ -27830,6 +28212,7 @@ static void script_hardcoded_constants(void)
script->set_constant("MSC_MASTERATTACKED", MSC_MASTERATTACKED, false, false);
script->set_constant("MSC_ALCHEMIST", MSC_ALCHEMIST, false, false);
script->set_constant("MSC_SPAWN", MSC_SPAWN, false, false);
+ script->set_constant("MSC_MAGICATTACKED", MSC_MAGICATTACKED, false, false);
script->constdb_comment("monster skill targets");
script->set_constant("MST_TARGET", MST_TARGET, false, false);
@@ -27847,6 +28230,11 @@ static void script_hardcoded_constants(void)
script->set_constant("MST_AROUND4", MST_AROUND4, false, false);
script->set_constant("MST_AROUND", MST_AROUND , false, false);
+ script->constdb_comment("Monster group constants");
+ script->set_constant("ALL_MOBS_NONBOSS", ALL_MOBS_NONBOSS, false, false);
+ script->set_constant("ALL_MOBS_BOSS", ALL_MOBS_BOSS, false, false);
+ script->set_constant("ALL_MOBS", ALL_MOBS, false, false);
+
script->constdb_comment("pc block constants, use with *setpcblock* and *checkpcblock*");
script->set_constant("PCBLOCK_NONE", PCBLOCK_NONE, false, false);
script->set_constant("PCBLOCK_MOVE", PCBLOCK_MOVE, false, false);
@@ -28218,6 +28606,7 @@ void script_defaults(void)
script->parse_syntax_close = parse_syntax_close;
script->parse_syntax_close_sub = parse_syntax_close_sub;
script->parse_syntax = parse_syntax;
+ script->parse_syntax_function = parse_syntax_function;
script->get_com = get_com;
script->get_num = get_num;
script->op2name = script_op2name;
@@ -28250,6 +28639,7 @@ void script_defaults(void)
script->load_parameters = script_load_parameters;
script->print_line = script_print_line;
script->errorwarning_sub = script_errorwarning_sub;
+ script->is_permanent_variable = script_is_permanent_variable;
script->set_reg = set_reg;
script->set_reg_ref_str = set_reg_npcscope_str;
script->set_reg_pc_ref_str = set_reg_pc_ref_str;
@@ -28321,6 +28711,8 @@ void script_defaults(void)
script->config.ontouch_name = "OnTouch_"; //ontouch_name (runs on first visible char to enter area, picks another char if the first char leaves)
script->config.ontouch2_name = "OnTouch"; //ontouch2_name (run whenever a char walks into the OnTouch area)
script->config.onuntouch_name = "OnUnTouch"; //onuntouch_name (run whenever a char walks from the OnTouch area)
+ script->config.functions_private_by_default = true;
+ script->config.functions_as_events = false;
// for ENABLE_CASE_CHECK
script->calc_hash_ci = calc_hash_ci;
diff --git a/src/map/script.h b/src/map/script.h
index 511497a66..df5297ac0 100644
--- a/src/map/script.h
+++ b/src/map/script.h
@@ -584,6 +584,8 @@ enum itemskill_flag {
struct Script_Config {
bool warn_func_mismatch_argtypes;
bool warn_func_mismatch_paramnum;
+ bool functions_private_by_default;
+ bool functions_as_events;
int check_cmdcount;
int check_gotocount;
int input_min_value;
@@ -725,8 +727,14 @@ struct str_data_struct {
uint8 deprecated : 1;
};
+/** a label within a script (does not use the label db) */
struct script_label_entry {
- int key,pos;
+ /** label name (held within str_data) */
+ int key;
+ /** position within the script */
+ int pos;
+ /** optional flags for the label */
+ enum script_label_flags flags;
};
struct script_syntax_data {
@@ -917,7 +925,7 @@ struct script_interface {
void (*set_constant) (const char *name, int value, bool is_parameter, bool is_deprecated);
void (*set_constant2) (const char *name, int value, bool is_parameter, bool is_deprecated);
bool (*get_constant) (const char* name, int* value);
- void (*label_add)(int key, int pos);
+ void (*label_add)(int key, int pos, enum script_label_flags flags);
void (*run) (struct script_code *rootscript, int pos, int rid, int oid);
void (*run_npc) (struct script_code *rootscript, int pos, int rid, int oid);
void (*run_pet) (struct script_code *rootscript, int pos, int rid, int oid);
@@ -948,10 +956,11 @@ struct script_interface {
int (*queue_create) (void);
bool (*queue_clear) (int idx);
/* */
- const char * (*parse_curly_close) (const char *p);
- const char * (*parse_syntax_close) (const char *p);
- const char * (*parse_syntax_close_sub) (const char *p, int *flag);
- const char * (*parse_syntax) (const char *p);
+ const char *(*parse_curly_close) (const char *p);
+ const char *(*parse_syntax_close) (const char *p);
+ const char *(*parse_syntax_close_sub) (const char *p, int *flag);
+ const char *(*parse_syntax) (const char *p);
+ const char *(*parse_syntax_function) (const char *p, bool is_public);
c_op (*get_com) (const struct script_buf *scriptbuf, int *pos);
int (*get_num) (const struct script_buf *scriptbuf, int *pos);
const char* (*op2name) (int op);
@@ -984,6 +993,7 @@ struct script_interface {
void (*load_parameters) (void);
const char* (*print_line) (StringBuf *buf, const char *p, const char *mark, int line);
void (*errorwarning_sub) (StringBuf *buf, const char *src, const char *file, int start_line, const char *error_msg, const char *error_pos);
+ bool (*is_permanent_variable) (const char *name);
int (*set_reg) (struct script_state *st, struct map_session_data *sd, int64 num, const char *name, const void *value, struct reg_db *ref);
void (*set_reg_ref_str) (struct script_state* st, struct reg_db *n, int64 num, const char* name, const char *str);
void (*set_reg_pc_ref_str) (struct script_state* st, struct reg_db *n, int64 num, const char* name, const char *str);
diff --git a/src/map/skill.c b/src/map/skill.c
index a1a22f74f..1b27fc2ad 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -72,6 +72,34 @@ static struct s_skill_dbs skilldbs;
struct skill_interface *skill;
+static const struct {
+ int start;
+ int end;
+} skill_idx_ranges[] = {
+ { NV_BASIC, NPC_LEX_AETERNA },
+ { KN_CHARGEATK, SA_ELEMENTWIND },
+ { RK_ENCHANTBLADE, AB_SILENTIUM },
+ { WL_WHITEIMPRISON, SC_FEINTBOMB },
+ { LG_CANNONSPEAR, SR_GENTLETOUCH_REVITALIZE },
+ { WA_SWING_DANCE, WA_MOONLIT_SERENADE },
+ { MI_RUSH_WINDMILL, MI_HARMONIZE },
+ { WM_LESSON, WM_UNLIMITED_HUMMING_VOICE },
+ { SO_FIREWALK, SO_EARTH_INSIGNIA },
+ { GN_TRAINING_SWORD, GN_SLINGITEM_RANGEMELEEATK },
+ { AB_SECRAMENT, LG_OVERBRAND_PLUSATK },
+ { ALL_ODINS_RECALL, ALL_LIGHTGUARD },
+ { RL_GLITTERING_GREED, RL_GLITTERING_GREED_ATK },
+ { KO_YAMIKUMO, OB_AKAITSUKI },
+ { ECL_SNOWFLIP, ALL_THANATOS_RECALL },
+ { GC_DARKCROW, NC_MAGMA_ERUPTION_DOTDAMAGE },
+ { SU_BASIC_SKILL, SU_SPIRITOFSEA },
+ { HLIF_HEAL, MH_VOLCANIC_ASH },
+ { MS_BASH, MER_INVINCIBLEOFF2 },
+ { EL_CIRCLE_OF_FIRE, EL_STONE_RAIN },
+ { GD_APPROVAL, GD_DEVELOPMENT },
+ CUSTOM_SKILL_RANGES
+};
+
//Since only mob-casted splash skills can hit ice-walls
static int skill_splash_target(struct block_list *bl)
{
@@ -96,51 +124,37 @@ static int skill_name2id(const char *name)
/// Returns the skill's array index, or 0 (Unknown Skill).
static int skill_get_index(int skill_id)
{
- int skillRange[] = { NV_BASIC, NPC_LEX_AETERNA,
- KN_CHARGEATK, SA_ELEMENTWIND,
- RK_ENCHANTBLADE, AB_SILENTIUM,
- WL_WHITEIMPRISON, SC_FEINTBOMB,
- LG_CANNONSPEAR, SR_GENTLETOUCH_REVITALIZE,
- WA_SWING_DANCE, WA_MOONLIT_SERENADE,
- MI_RUSH_WINDMILL, MI_HARMONIZE,
- WM_LESSON, WM_UNLIMITED_HUMMING_VOICE,
- SO_FIREWALK, SO_EARTH_INSIGNIA,
- GN_TRAINING_SWORD, GN_SLINGITEM_RANGEMELEEATK,
- AB_SECRAMENT, LG_OVERBRAND_PLUSATK,
- ALL_ODINS_RECALL, ALL_LIGHTGUARD,
- RL_GLITTERING_GREED, RL_GLITTERING_GREED_ATK,
- KO_YAMIKUMO, OB_AKAITSUKI,
- ECL_SNOWFLIP, ALL_THANATOS_RECALL,
- GC_DARKCROW, NC_MAGMA_ERUPTION_DOTDAMAGE,
- SU_BASIC_SKILL, SU_SPIRITOFSEA,
- HLIF_HEAL, MH_VOLCANIC_ASH,
- MS_BASH, MER_INVINCIBLEOFF2,
- EL_CIRCLE_OF_FIRE, EL_STONE_RAIN,
- GD_APPROVAL, GD_DEVELOPMENT
- CUSTOM_SKILL_RANGES};
- int length = sizeof(skillRange) / sizeof(int);
- STATIC_ASSERT(sizeof(skillRange) / sizeof(int) % 2 == 0, "skill_get_index: skillRange should be multiple of 2");
-
-
- if (skill_id < skillRange[0] || skill_id > skillRange[length - 1]) {
+ int length = ARRAYLENGTH(skill_idx_ranges);
+
+
+ if (skill_id < skill_idx_ranges[0].start || skill_id > skill_idx_ranges[length - 1].end) {
ShowWarning("skill_get_index: skill id '%d' is not being handled!\n", skill_id);
+ Assert_report(0);
return 0;
}
int skill_idx = 0;
+ bool found = false;
// Map Skill ID to Skill Indexes (in reverse order)
- for (int i = 0; i < length; i += 2) {
+ for (int i = 0; i < length; i++) {
// Check if SkillID belongs to this range.
- if (skill_id <= skillRange[i + 1] && skill_id >= skillRange[i]) {
- skill_idx += (skillRange[i + 1] - skill_id);
+ if (skill_id <= skill_idx_ranges[i].end && skill_id >= skill_idx_ranges[i].start) {
+ skill_idx += (skill_idx_ranges[i].end - skill_id);
+ found = true;
break;
}
// Add the difference of current range
- skill_idx += (skillRange[i + 1] - skillRange[i] + 1);
+ skill_idx += (skill_idx_ranges[i].end - skill_idx_ranges[i].start + 1);
}
+ if (!found) {
+ ShowWarning("skill_get_index: skill id '%d' (idx: %d) is not handled as it lies outside the defined ranges!\n", skill_id, skill_idx);
+ Assert_report(0);
+ return 0;
+ }
if (skill_idx >= MAX_SKILL_DB) {
ShowWarning("skill_get_index: skill id '%d'(idx: %d) is not being handled as it exceeds MAX_SKILL_DB!\n", skill_id, skill_idx);
+ Assert_report(0);
return 0;
}
@@ -162,14 +176,26 @@ static const char *skill_get_desc(int skill_id)
// Skill DB
-static int skill_get_hit(int skill_id)
+/**
+ * Gets a skill's hit type by its ID and level. (See enum battle_dmg_type.)
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's hit type corresponding to the passed level. Defaults to BDT_NORMAL (0) in case of error.
+ *
+ **/
+static int skill_get_hit(int skill_id, int skill_lv)
{
- int idx;
if (skill_id == 0)
- return 0;
- idx = skill->get_index(skill_id);
- Assert_ret(idx != 0);
- return skill->dbs->db[idx].hit;
+ return BDT_NORMAL;
+
+ Assert_retr(BDT_NORMAL, skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
+ Assert_retr(BDT_NORMAL, idx != 0);
+
+ return skill->dbs->db[idx].hit[skill_get_lvl_idx(skill_lv)];
}
static int skill_get_inf(int skill_id)
@@ -306,14 +332,26 @@ static int skill_get_sp_rate(int skill_id, int skill_lv)
return skill->dbs->db[idx].sp_rate[skill_get_lvl_idx(skill_lv)];
}
-static int skill_get_state(int skill_id)
+/**
+ * Gets a skill's required state by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's required state corresponding to the passed level. Defaults to ST_NONE (0) in case of error.
+ *
+ **/
+static int skill_get_state(int skill_id, int skill_lv)
{
- int idx;
if (skill_id == 0)
return ST_NONE;
- idx = skill->get_index(skill_id);
+
+ Assert_retr(ST_NONE, skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
Assert_retr(ST_NONE, idx != 0);
- return skill->dbs->db[idx].state;
+
+ return skill->dbs->db[idx].state[skill_get_lvl_idx(skill_lv)];
}
static int skill_get_spiritball(int skill_id, int skill_lv)
@@ -331,26 +369,140 @@ static int skill_get_spiritball(int skill_id, int skill_lv)
return skill->dbs->db[idx].spiritball[skill_get_lvl_idx(skill_lv)];
}
+/**
+ * Gets a skill's required item's ID by the skill's ID and the item's index.
+ *
+ * @param skill_id The skill's ID.
+ * @param item_idx The item's index.
+ * @return The skill's required item's ID corresponding to the passed index. Defaults to 0 in case of error.
+ *
+ **/
static int skill_get_itemid(int skill_id, int item_idx)
{
- int idx;
if (skill_id == 0)
return 0;
- idx = skill->get_index(skill_id);
+
+ Assert_ret(item_idx >= 0 && item_idx < MAX_SKILL_ITEM_REQUIRE);
+
+ int idx = skill->get_index(skill_id);
+
Assert_ret(idx != 0);
+
+ return skill->dbs->db[idx].req_items.item[item_idx].id;
+}
+
+/**
+ * Gets a skill's required item's amount by the skill's ID and level and the item's index.
+ *
+ * @param skill_id The skill's ID.
+ * @param item_idx The item's index.
+ * @param skill_lv The skill's level.
+ * @return The skill's required item's amount corresponding to the passed index and level. Defaults to 0 in case of error.
+ *
+ **/
+static int skill_get_itemqty(int skill_id, int item_idx, int skill_lv)
+{
+ if (skill_id == 0)
+ return 0;
+
Assert_ret(item_idx >= 0 && item_idx < MAX_SKILL_ITEM_REQUIRE);
- return skill->dbs->db[idx].itemid[item_idx];
+ Assert_ret(skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
+ Assert_ret(idx != 0);
+
+ return skill->dbs->db[idx].req_items.item[item_idx].amount[skill_get_lvl_idx(skill_lv)];
+}
+
+/**
+ * Gets a skill's required items any-flag by the skill's ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's required items any-flag corresponding to the passed level. Defaults to false in case of error.
+ *
+ **/
+static bool skill_get_item_any_flag(int skill_id, int skill_lv)
+{
+ if (skill_id == 0)
+ return false;
+
+ Assert_retr(false, skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
+ Assert_retr(false, idx != 0);
+
+ return skill->dbs->db[idx].req_items.any[skill_get_lvl_idx(skill_lv)];
}
-static int skill_get_itemqty(int skill_id, int item_idx)
+/**
+ * Gets a skill's required equipment's ID by the skill's ID and the equipment item's index.
+ *
+ * @param skill_id The skill's ID.
+ * @param item_idx The equipment item's index.
+ * @return The skill's required equipment's ID corresponding to the passed index. Defaults to 0 in case of error.
+ *
+ **/
+static int skill_get_equip_id(int skill_id, int item_idx)
{
- int idx;
if (skill_id == 0)
return 0;
- idx = skill->get_index(skill_id);
+
+ Assert_ret(item_idx >= 0 && item_idx < MAX_SKILL_ITEM_REQUIRE);
+
+ int idx = skill->get_index(skill_id);
+
Assert_ret(idx != 0);
+
+ return skill->dbs->db[idx].req_equip.item[item_idx].id;
+}
+
+/**
+ * Gets a skill's required equipment's amount by the skill's ID and level and the equipment item's index.
+ *
+ * @param skill_id The skill's ID.
+ * @param item_idx The equipment item's index.
+ * @param skill_lv The skill's level.
+ * @return The skill's required equipment item's amount corresponding to the passed index and level. Defaults to 0 in case of error.
+ *
+ **/
+static int skill_get_equip_amount(int skill_id, int item_idx, int skill_lv)
+{
+ if (skill_id == 0)
+ return 0;
+
Assert_ret(item_idx >= 0 && item_idx < MAX_SKILL_ITEM_REQUIRE);
- return skill->dbs->db[idx].amount[item_idx];
+ Assert_ret(skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
+ Assert_ret(idx != 0);
+
+ return skill->dbs->db[idx].req_equip.item[item_idx].amount[skill_get_lvl_idx(skill_lv)];
+}
+
+/**
+ * Gets a skill's required equipment any-flag by the skill's ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's required equipment's any-flag corresponding to the passed level. Defaults to false in case of error.
+ *
+ **/
+static bool skill_get_equip_any_flag(int skill_id, int skill_lv)
+{
+ if (skill_id == 0)
+ return false;
+
+ Assert_retr(false, skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
+ Assert_retr(false, idx != 0);
+
+ return skill->dbs->db[idx].req_equip.any[skill_get_lvl_idx(skill_lv)];
}
static int skill_get_zeny(int skill_id, int skill_lv)
@@ -458,14 +610,26 @@ static int skill_get_time2(int skill_id, int skill_lv)
return skill->dbs->db[idx].upkeep_time2[skill_get_lvl_idx(skill_lv)];
}
-static int skill_get_castdef(int skill_id)
+/**
+ * Gets a skill's cast defence rate by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's cast defence rate corresponding to the passed level. Defaults to 0 in case of error.
+ *
+ **/
+static int skill_get_castdef(int skill_id, int skill_lv)
{
- int idx;
if (skill_id == 0)
return 0;
- idx = skill->get_index(skill_id);
+
+ Assert_ret(skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
Assert_ret(idx != 0);
- return skill->dbs->db[idx].cast_def_rate;
+
+ return skill->dbs->db[idx].cast_def_rate[skill_get_lvl_idx(skill_lv)];
}
static int skill_get_weapontype(int skill_id)
@@ -513,14 +677,26 @@ static int skill_get_inf2(int skill_id)
return skill->dbs->db[idx].inf2;
}
-static int skill_get_castcancel(int skill_id)
+/**
+ * Gets a skill's cast interruptibility by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's cast interruptibility corresponding to the passed level. Defaults to 0 in case of error.
+ *
+ **/
+static int skill_get_castcancel(int skill_id, int skill_lv)
{
- int idx;
if (skill_id == 0)
return 0;
- idx = skill->get_index(skill_id);
+
+ Assert_ret(skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
Assert_ret(idx != 0);
- return skill->dbs->db[idx].castcancel;
+
+ return skill->dbs->db[idx].castcancel[skill_get_lvl_idx(skill_lv)];
}
static int skill_get_maxcount(int skill_id, int skill_lv)
@@ -568,6 +744,28 @@ static int skill_get_mhp(int skill_id, int skill_lv)
return skill->dbs->db[idx].mhp[skill_get_lvl_idx(skill_lv)];
}
+/**
+ * Gets a skill's maximum SP trigger by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's maximum SP trigger corresponding to the passed level. Defaults to 0 in case of error.
+ *
+ **/
+static int skill_get_msp(int skill_id, int skill_lv)
+{
+ if (skill_id == 0)
+ return 0;
+
+ Assert_ret(skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
+ Assert_ret(idx != 0);
+
+ return skill->dbs->db[idx].msp[skill_get_lvl_idx(skill_lv)];
+}
+
static int skill_get_castnodex(int skill_id, int skill_lv)
{
int idx;
@@ -598,35 +796,72 @@ static int skill_get_delaynodex(int skill_id, int skill_lv)
return skill->dbs->db[idx].delaynodex[skill_get_lvl_idx(skill_lv)];
}
-static int skill_get_type(int skill_id)
+/**
+ * Gets a skill's attack type by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's attack type corresponding to the passed level. Defaults to BF_NONE (0) in case of error.
+ *
+ **/
+static int skill_get_type(int skill_id, int skill_lv)
{
- int idx;
if (skill_id == 0)
return BF_NONE;
- idx = skill->get_index(skill_id);
+
+ Assert_retr(BF_NONE, skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
Assert_retr(BF_NONE, idx != 0);
- return skill->dbs->db[idx].skill_type;
+
+ return skill->dbs->db[idx].skill_type[skill_get_lvl_idx(skill_lv)];
}
-static int skill_get_unit_id(int skill_id, int flag)
+/**
+ * Gets a skill's unit ID by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @param flag
+ * @return The skill's unit ID corresponding to the passed level. Defaults to 0 in case of error.
+ *
+ **/
+static int skill_get_unit_id(int skill_id, int skill_lv, int flag)
{
- int idx;
if (skill_id == 0)
return 0;
- idx = skill->get_index(skill_id);
+
+ Assert_ret(skill_lv > 0);
+ Assert_ret(flag >= 0 && flag < ARRAYLENGTH(skill->dbs->db[0].unit_id[0]));
+
+ int idx = skill->get_index(skill_id);
+
Assert_ret(idx != 0);
- Assert_ret(flag >= 0 && flag < ARRAYLENGTH(skill->dbs->db[0].unit_id));
- return skill->dbs->db[idx].unit_id[flag];
+
+ return skill->dbs->db[idx].unit_id[skill_get_lvl_idx(skill_lv)][flag];
}
-static int skill_get_unit_interval(int skill_id)
+/**
+ * Gets a skill's unit interval by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's unit interval corresponding to the passed level. Defaults to 0 in case of error.
+ *
+ **/
+static int skill_get_unit_interval(int skill_id, int skill_lv)
{
- int idx;
if (skill_id == 0)
return 0;
- idx = skill->get_index(skill_id);
+
+ Assert_ret(skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
Assert_ret(idx != 0);
- return skill->dbs->db[idx].unit_interval;
+
+ return skill->dbs->db[idx].unit_interval[skill_get_lvl_idx(skill_lv)];
}
static int skill_get_unit_range(int skill_id, int skill_lv)
@@ -644,24 +879,48 @@ static int skill_get_unit_range(int skill_id, int skill_lv)
return skill->dbs->db[idx].unit_range[skill_get_lvl_idx(skill_lv)];
}
-static int skill_get_unit_target(int skill_id)
+/**
+ * Gets a skill's unit target by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's unit target corresponding to the passed level. Defaults to BCT_NOONE (0) in case of error.
+ *
+ **/
+static int skill_get_unit_target(int skill_id, int skill_lv)
{
- int idx;
if (skill_id == 0)
return BCT_NOONE;
- idx = skill->get_index(skill_id);
+
+ Assert_retr(BCT_NOONE, skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
Assert_retr(BCT_NOONE, idx != 0);
- return skill->dbs->db[idx].unit_target & BCT_ALL;
+
+ return (skill->dbs->db[idx].unit_target[skill_get_lvl_idx(skill_lv)] & BCT_ALL);
}
-static int skill_get_unit_bl_target(int skill_id)
+/**
+ * Gets a skill's unit target as bl type by its ID and level.
+ *
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return The skill's unit target as bl type corresponding to the passed level. Defaults to BL_NUL (0) in case of error.
+ *
+ **/
+static int skill_get_unit_bl_target(int skill_id, int skill_lv)
{
- int idx;
if (skill_id == 0)
return BL_NUL;
- idx = skill->get_index(skill_id);
- Assert_retr(BL_NUL, idx != 0);
- return skill->dbs->db[idx].unit_target & BL_ALL;
+
+ Assert_retr(BCT_NOONE, skill_lv > 0);
+
+ int idx = skill->get_index(skill_id);
+
+ Assert_retr(BCT_NOONE, idx != 0);
+
+ return (skill->dbs->db[idx].unit_target[skill_get_lvl_idx(skill_lv)] & BL_ALL);
}
static int skill_get_unit_flag(int skill_id)
@@ -935,6 +1194,8 @@ static int skill_calc_heal(struct block_list *src, struct block_list *target, ui
hp -= hp * 20/100;
if(sc->data[SC_HEALPLUS] && skill_id != NPC_EVILLAND && skill_id != BA_APPLEIDUN)
hp += hp * sc->data[SC_HEALPLUS]->val1/100; // Only affects Heal, Sanctuary and PotionPitcher.(like bHealPower) [Inkfish]
+ if (sc->data[SC_VITALIZE_POTION] != NULL && skill_id != NPC_EVILLAND && skill_id != BA_APPLEIDUN)
+ hp += hp * sc->data[SC_VITALIZE_POTION]->val3 / 100;
if(sc->data[SC_WATER_INSIGNIA] && sc->data[SC_WATER_INSIGNIA]->val1 == 2)
hp += hp / 10;
if (sc->data[SC_VITALITYACTIVATION])
@@ -1010,14 +1271,17 @@ static int skillnotok(uint16 skill_id, struct map_session_data *sd)
if (pc_has_permission(sd, PC_PERM_SKILL_UNCONDITIONAL))
return 0; // can do any damn thing they want
- if( skill_id == AL_TELEPORT && sd->skillitem == skill_id && sd->skillitemlv > 2 )
- return 0; // Teleport lv 3 bypasses this check.[Inkfish]
+ if (map->getcell(sd->bl.m, &sd->bl, sd->bl.x, sd->bl.y, CELL_CHKNOSKILL))
+ return 1; // block usage on 'noskill' cells [Wolfie]
+
+ if (skill_id == AL_TELEPORT && sd->auto_cast_current.type == AUTOCAST_ITEM && sd->auto_cast_current.skill_lv > 2)
+ return 0; // Teleport level 3 and higher bypasses this check if cast by itemskill() script commands.
// Epoque:
// This code will compare the player's attack motion value which is influenced by ASPD before
// allowing a skill to be cast. This is to prevent no-delay ACT files from spamming skills such as
// AC_DOUBLE which do not have a skill delay and are not regarded in terms of attack motion.
- if( !sd->state.autocast && sd->skillitem != skill_id && sd->canskill_tick &&
+ if (sd->auto_cast_current.type == AUTOCAST_NONE && sd->canskill_tick != 0 &&
DIFF_TICK(timer->gettick(), sd->canskill_tick) < (sd->battle_status.amotion * (battle_config.skill_amotion_leniency) / 100) )
{// attempted to cast a skill before the attack motion has finished
return 1;
@@ -1032,7 +1296,7 @@ static int skillnotok(uint16 skill_id, struct map_session_data *sd)
* It has been confirmed on a official server (thanks to Yommy) that item-cast skills bypass all the restrictions below
* Also, without this check, an exploit where an item casting + healing (or any other kind buff) isn't deleted after used on a restricted map
**/
- if( sd->skillitem == skill_id )
+ if (sd->auto_cast_current.type == AUTOCAST_ITEM)
return 0;
if( sd->sc.data[SC_ALL_RIDING] )
@@ -1177,6 +1441,33 @@ static int skillnotok_mercenary(uint16 skill_id, struct mercenary_data *md)
return skill->not_ok(skill_id, md->master);
}
+/**
+ * Validates the plausibility of auto-cast related data and calls pc_autocast_clear() if necessary.
+ *
+ * @param sd The character who cast the skill.
+ * @param skill_id The cast skill's ID.
+ * @param skill_lv The cast skill's level. (clif_parse_UseSkillMap() passes 0.)
+ *
+ **/
+static void skill_validate_autocast_data(struct map_session_data *sd, int skill_id, int skill_lv)
+{
+ nullpo_retv(sd);
+
+ // Determine if called by clif_parse_UseSkillMap().
+ bool use_skill_map = (skill_lv == 0 && (skill_id == AL_WARP || skill_id == AL_TELEPORT));
+
+ struct autocast_data *auto_cast = &sd->auto_cast_current;
+
+ if (auto_cast->type == AUTOCAST_NONE)
+ pc->autocast_clear(sd); // No auto-cast type set. Preventively unset all auto-cast related data.
+ else if (auto_cast->type == AUTOCAST_TEMP)
+ pc->autocast_clear(sd); // AUTOCAST_TEMP should have been unset straight after usage.
+ else if (auto_cast->skill_id == 0 || skill_id == 0 || auto_cast->skill_id != skill_id)
+ pc->autocast_remove(sd, auto_cast->type, auto_cast->skill_id, auto_cast->skill_lv); // Implausible skill ID.
+ else if (auto_cast->skill_lv == 0 || (!use_skill_map && (skill_lv == 0 || auto_cast->skill_lv != skill_lv)))
+ pc->autocast_remove(sd, auto_cast->type, auto_cast->skill_id, auto_cast->skill_lv); // Implausible skill level.
+}
+
static struct s_skill_unit_layout *skill_get_unit_layout(uint16 skill_id, uint16 skill_lv, struct block_list *src, int x, int y)
{
int pos = skill->get_unit_layout_type(skill_id,skill_lv);
@@ -2065,9 +2356,9 @@ static int skill_additional_effect(struct block_list *src, struct block_list *bl
temp = (sd->autospell[i].id > 0) ? sd->autospell[i].id : -sd->autospell[i].id;
- sd->state.autocast = 1;
+ sd->auto_cast_current.type = AUTOCAST_TEMP;
notok = skill->not_ok(temp, sd);
- sd->state.autocast = 0;
+ sd->auto_cast_current.type = AUTOCAST_NONE;
if ( notok )
continue;
@@ -2118,11 +2409,12 @@ static int skill_additional_effect(struct block_list *src, struct block_list *bl
else if (temp == PF_SPIDERWEB) //Special case, due to its nature of coding.
type = CAST_GROUND;
- sd->state.autocast = 1;
+ sd->auto_cast_current.type = AUTOCAST_TEMP;
skill->consume_requirement(sd,temp,auto_skill_lv,1);
- skill->toggle_magicpower(src, temp);
+ skill->toggle_magicpower(src, temp, auto_skill_lv);
skill->castend_type(type, src, tbl, temp, auto_skill_lv, tick, 0);
- sd->state.autocast = 0;
+ sd->auto_cast_current.type = AUTOCAST_NONE;
+
//Set canact delay. [Skotlex]
ud = unit->bl2ud(src);
if (ud) {
@@ -2191,6 +2483,9 @@ static int skill_onskillusage(struct map_session_data *sd, struct block_list *bl
if( sd == NULL || !skill_id )
return 0;
+ // Preserve auto-cast type if bAutoSpellOnSkill was triggered by a skill which was cast by Abracadabra, Improvised Song or an item.
+ enum autocast_type ac_type = sd->auto_cast_current.type;
+
for( i = 0; i < ARRAYLENGTH(sd->autospell3) && sd->autospell3[i].flag; i++ ) {
if( sd->autospell3[i].flag != skill_id )
continue;
@@ -2200,9 +2495,9 @@ static int skill_onskillusage(struct map_session_data *sd, struct block_list *bl
temp = (sd->autospell3[i].id > 0) ? sd->autospell3[i].id : -sd->autospell3[i].id;
- sd->state.autocast = 1;
+ sd->auto_cast_current.type = AUTOCAST_TEMP;
notok = skill->not_ok(temp, sd);
- sd->state.autocast = 0;
+ sd->auto_cast_current.type = AUTOCAST_NONE;
if ( notok )
continue;
@@ -2248,14 +2543,16 @@ static int skill_onskillusage(struct map_session_data *sd, struct block_list *bl
!battle->check_range(&sd->bl, tbl, skill->get_range2(&sd->bl, temp,skill_lv) + (temp == RG_CLOSECONFINE?0:1)) )
continue;
- sd->state.autocast = 1;
sd->autospell3[i].lock = true;
+ sd->auto_cast_current.type = AUTOCAST_TEMP;
skill->consume_requirement(sd,temp,skill_lv,1);
skill->castend_type(type, &sd->bl, tbl, temp, skill_lv, tick, 0);
+ sd->auto_cast_current.type = AUTOCAST_NONE;
sd->autospell3[i].lock = false;
- sd->state.autocast = 0;
}
+ sd->auto_cast_current.type = ac_type;
+
if (sd->autobonus3[0].rate) {
for( i = 0; i < ARRAYLENGTH(sd->autobonus3); i++ ) {
if( rnd()%1000 >= sd->autobonus3[i].rate )
@@ -2402,6 +2699,9 @@ static int skill_counter_additional_effect(struct block_list *src, struct block_
struct unit_data *ud;
int i, auto_skill_id, auto_skill_lv, type, notok;
+ // Preserve auto-cast type if bAutoSpellWhenHit was triggered during cast of a skill which was cast by Abracadabra, Improvised Song or an item.
+ enum autocast_type ac_type = dstsd->auto_cast_current.type;
+
for (i = 0; i < ARRAYLENGTH(dstsd->autospell2) && dstsd->autospell2[i].id; i++) {
if(!(dstsd->autospell2[i].flag&attack_type&BF_WEAPONMASK &&
@@ -2417,9 +2717,9 @@ static int skill_counter_additional_effect(struct block_list *src, struct block_
if (attack_type&BF_LONG)
rate>>=1;
- dstsd->state.autocast = 1;
+ dstsd->auto_cast_current.type = AUTOCAST_TEMP;
notok = skill->not_ok(auto_skill_id, dstsd);
- dstsd->state.autocast = 0;
+ dstsd->auto_cast_current.type = AUTOCAST_NONE;
if ( notok )
continue;
@@ -2460,10 +2760,11 @@ static int skill_counter_additional_effect(struct block_list *src, struct block_
if( !battle->check_range(src, tbl, skill->get_range2(src, auto_skill_id,auto_skill_lv) + (auto_skill_id == RG_CLOSECONFINE?0:1)) && battle_config.autospell_check_range )
continue;
- dstsd->state.autocast = 1;
+ dstsd->auto_cast_current.type = AUTOCAST_TEMP;
skill->consume_requirement(dstsd,auto_skill_id,auto_skill_lv,1);
skill->castend_type(type, bl, tbl, auto_skill_id, auto_skill_lv, tick, 0);
- dstsd->state.autocast = 0;
+ dstsd->auto_cast_current.type = AUTOCAST_NONE;
+
// Set canact delay. [Skotlex]
ud = unit->bl2ud(bl);
if (ud) {
@@ -2475,6 +2776,8 @@ static int skill_counter_additional_effect(struct block_list *src, struct block_
}
}
}
+
+ dstsd->auto_cast_current.type = ac_type;
}
//Autobonus when attacked
@@ -2935,7 +3238,7 @@ static int skill_attack(int attack_type, struct block_list *src, struct block_li
}
//Skill hit type
- type=(skill_id==0)?BDT_SPLASH:skill->get_hit(skill_id);
+ type = (skill_id == 0) ? BDT_SPLASH : skill->get_hit(skill_id, skill_lv);
if(damage < dmg.div_
//Only skills that knockback even when they miss. [Skotlex]
@@ -3715,9 +4018,9 @@ static int skill_check_condition_mercenary(struct block_list *bl, int skill_id,
{
struct status_data *st;
struct map_session_data *sd = NULL;
- int i, hp, sp, hp_rate, sp_rate, state, mhp;
+ int hp, sp, hp_rate, sp_rate, state;
int idx;
- int itemid[MAX_SKILL_ITEM_REQUIRE], amount[MAX_SKILL_ITEM_REQUIRE], index[MAX_SKILL_ITEM_REQUIRE];
+ int itemid[MAX_SKILL_ITEM_REQUIRE], amount[MAX_SKILL_ITEM_REQUIRE];
if( lv < 1 || lv > MAX_SKILL_LEVEL )
return 0;
@@ -3733,17 +4036,16 @@ static int skill_check_condition_mercenary(struct block_list *bl, int skill_id,
return 0;
// Requirements
- for (i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
- itemid[i] = skill->dbs->db[idx].itemid[i];
- amount[i] = skill->dbs->db[idx].amount[i];
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ itemid[i] = skill->get_itemid(skill_id, i);
+ amount[i] = skill->get_itemqty(skill_id, i, lv);
}
hp = skill->dbs->db[idx].hp[lv-1];
sp = skill->dbs->db[idx].sp[lv-1];
hp_rate = skill->dbs->db[idx].hp_rate[lv-1];
sp_rate = skill->dbs->db[idx].sp_rate[lv-1];
- state = skill->dbs->db[idx].state;
- if( (mhp = skill->dbs->db[idx].mhp[lv-1]) > 0 )
- hp += (st->max_hp * mhp) / 100;
+ state = skill->dbs->db[idx].state[lv - 1];
+
if( hp_rate > 0 )
hp += (st->hp * hp_rate) / 100;
else
@@ -3776,6 +4078,20 @@ static int skill_check_condition_mercenary(struct block_list *bl, int skill_id,
clif->skill_fail(sd, skill_id, USESKILL_FAIL_SP_INSUFFICIENT, 0, 0);
return 0;
}
+
+ int mhp = skill->get_mhp(skill_id, lv);
+
+ if (mhp > 0 && get_percentage(st->hp, st->max_hp) > mhp) {
+ clif->skill_fail(sd, skill_id, USESKILL_FAIL_HP_INSUFFICIENT, 0, 0);
+ return 0;
+ }
+
+ int msp = skill->get_msp(skill_id, lv);
+
+ if (msp > 0 && get_percentage(st->sp, st->max_sp) > msp) {
+ clif->skill_fail(sd, skill_id, USESKILL_FAIL_SP_INSUFFICIENT, 0, 0);
+ return 0;
+ }
}
if( !type )
@@ -3790,23 +4106,32 @@ static int skill_check_condition_mercenary(struct block_list *bl, int skill_id,
if( !(type&1) )
return 1;
- // Check item existences
- for (i = 0; i < ARRAYLENGTH(itemid); i++) {
- index[i] = INDEX_NOT_FOUND;
- if (itemid[i] < 1) continue; // No item
- index[i] = pc->search_inventory(sd, itemid[i]);
- if (index[i] == INDEX_NOT_FOUND || sd->status.inventory[index[i]].amount < amount[i]) {
- clif->skill_fail(sd, skill_id, USESKILL_FAIL_NEED_ITEM, amount[i], itemid[i]);
- return 0;
- }
- }
+ bool items_required = skill->items_required(sd, skill_id, lv);
+
+ if (items_required && skill->check_condition_required_items(sd, skill_id, lv) != 0)
+ return 0;
- // Consume items
- for (i = 0; i < ARRAYLENGTH(itemid); i++) {
- if (index[i] != INDEX_NOT_FOUND)
- pc->delitem(sd, index[i], amount[i], 0, DELITEM_SKILLUSE, LOG_TYPE_CONSUME);
+ int any_item_index = INDEX_NOT_FOUND;
+
+ if (items_required)
+ any_item_index = skill->get_any_item_index(sd, skill_id, lv);
+
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE && items_required; i++) {
+ if (itemid[i] == 0)
+ continue;
+
+ if (any_item_index != INDEX_NOT_FOUND && any_item_index != i)
+ continue;
+
+ int inventory_index = pc->search_inventory(sd, itemid[i]);
+
+ if (inventory_index != INDEX_NOT_FOUND)
+ pc->delitem(sd, inventory_index, amount[i], 0, DELITEM_SKILLUSE, LOG_TYPE_CONSUME);
}
+ if (skill->check_condition_required_equip(sd, skill_id, lv) != 0)
+ return 0;
+
if( type&2 )
return 1;
@@ -3894,7 +4219,7 @@ static int skill_timerskill(int tid, int64 tick, int id, intptr_t data)
clif->skill_nodamage(src,target,skl->skill_id,skl->skill_lv,1);
break;
case WZ_WATERBALL:
- skill->toggle_magicpower(src, skl->skill_id); // only the first hit will be amplify
+ skill->toggle_magicpower(src, skl->skill_id, skl->skill_lv); // only the first hit will be amplify
if (!status->isdead(target))
skill->attack(BF_MAGIC,src,src,target,skl->skill_id,skl->skill_lv,tick,skl->flag);
if (skl->type>1 && !status->isdead(target) && !status->isdead(src)) {
@@ -3914,7 +4239,7 @@ static int skill_timerskill(int tid, int64 tick, int id, intptr_t data)
**/
case WL_CHAINLIGHTNING_ATK:
skill->attack(BF_MAGIC, src, src, target, skl->skill_id, skl->skill_lv, tick, (9-skl->type)); // Hit a Lightning on the current Target
- skill->toggle_magicpower(src, skl->skill_id); // only the first hit will be amplify
+ skill->toggle_magicpower(src, skl->skill_id, skl->skill_lv); // only the first hit will be amplify
if (skl->type < (4 + skl->skill_lv - 1) && skl->x < 3) {
// Remaining Chains Hit
@@ -3934,7 +4259,7 @@ static int skill_timerskill(int tid, int64 tick, int id, intptr_t data)
case WL_TETRAVORTEX_GROUND:
clif->skill_nodamage(src, target, skl->skill_id, skl->skill_lv, 1);
skill->attack(BF_MAGIC, src, src, target, skl->skill_id, skl->skill_lv, tick, skl->flag);
- skill->toggle_magicpower(src, skl->skill_id); // only the first hit will be amplify
+ skill->toggle_magicpower(src, skl->skill_id, skl->skill_lv); // only the first hit will be amplify
if( skl->type == 4 ){
const enum sc_type scs[] = { SC_BURNING, SC_BLOODING, SC_FROSTMISTY, SC_STUN }; // status inflicts are depend on what summoned element is used.
int rate = skl->y, index = skl->x-1;
@@ -3943,7 +4268,7 @@ static int skill_timerskill(int tid, int64 tick, int id, intptr_t data)
break;
case WM_REVERBERATION_MELEE:
case WM_REVERBERATION_MAGIC:
- skill->attack(skill->get_type(skl->skill_id),src, src, target, skl->skill_id, skl->skill_lv, 0, SD_LEVEL);
+ skill->attack(skill->get_type(skl->skill_id, skl->skill_lv), src, src, target, skl->skill_id, skl->skill_lv, 0, SD_LEVEL);
break;
case SC_FATALMENACE:
if( src == target ) // Casters Part
@@ -4048,7 +4373,7 @@ static int skill_timerskill(int tid, int64 tick, int id, intptr_t data)
case LG_OVERBRAND_BRANDISH:
skill->area_temp[1] = 0;
map->foreachinpath(skill->attack_area,src->m,src->x,src->y,skl->x,skl->y,4,2,BL_CHAR,
- skill->get_type(skl->skill_id),src,src,skl->skill_id,skl->skill_lv,tick,skl->flag,BCT_ENEMY);
+ skill->get_type(skl->skill_id, skl->skill_lv), src, src, skl->skill_id, skl->skill_lv, tick, skl->flag, BCT_ENEMY);
break;
default:
skill->timerskill_notarget_unknown(tid, tick, src, ud, skl);
@@ -4197,11 +4522,6 @@ static void skill_castend_type(int type, struct block_list *src, struct block_li
skill->castend_damage_id(src, bl, skill_id, skill_lv, tick, flag);
break;
}
-
- struct map_session_data *sd = BL_CAST(BL_PC, src);
-
- if (sd != NULL)
- pc->itemskill_clear(sd);
}
/*==========================================
@@ -4230,12 +4550,12 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
if (status->isdead(bl))
return 1;
- if (skill_id && skill->get_type(skill_id) == BF_MAGIC && status->isimmune(bl) == 100) {
+ if (skill_id != 0 && skill->get_type(skill_id, skill_lv) == BF_MAGIC && status->isimmune(bl) == 100) {
//GTB makes all targeted magic display miss with a single bolt.
sc_type sct = status->skill2sc(skill_id);
if(sct != SC_NONE)
status_change_end(bl, sct, INVALID_TIMER);
- clif->skill_damage(src, bl, tick, status_get_amotion(src), status_get_dmotion(bl), 0, 1, skill_id, skill_lv, skill->get_hit(skill_id));
+ clif->skill_damage(src, bl, tick, status_get_amotion(src), status_get_dmotion(bl), 0, 1, skill_id, skill_lv, skill->get_hit(skill_id, skill_lv));
return 1;
}
@@ -4443,7 +4763,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
skill->area_temp[1] = bl->id;
map->foreachinpath(skill->attack_area,src->m,src->x,src->y,bl->x,bl->y,
skill->get_splash(skill_id, skill_lv),skill->get_maxcount(skill_id,skill_lv), skill->splash_target(src),
- skill->get_type(skill_id),src,src,skill_id,skill_lv,tick,flag,BCT_ENEMY);
+ skill->get_type(skill_id, skill_lv), src, src, skill_id, skill_lv, tick, flag, BCT_ENEMY);
break;
case NPC_ACIDBREATH:
@@ -4454,7 +4774,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
skill->area_temp[1] = bl->id;
map->foreachinpath(skill->attack_area,src->m,src->x,src->y,bl->x,bl->y,
skill->get_splash(skill_id, skill_lv),skill->get_maxcount(skill_id,skill_lv), skill->splash_target(src),
- skill->get_type(skill_id),src,src,skill_id,skill_lv,tick,flag,BCT_ENEMY);
+ skill->get_type(skill_id, skill_lv), src, src, skill_id, skill_lv, tick, flag, BCT_ENEMY);
break;
case MO_INVESTIGATE:
@@ -4626,7 +4946,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
if ( tsc && tsc->data[SC_HOVERING] && ( skill_id == SR_WINDMILL || skill_id == LG_MOONSLASHER ) )
break;
- heal = skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, sflag);
+ heal = skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, sflag);
if (skill_id == NPC_VAMPIRE_GIFT && heal > 0) {
clif->skill_nodamage(NULL, src, AL_HEAL, heal, 1);
status->heal(src, heal, 0, STATUS_HEAL_DEFAULT);
@@ -4701,7 +5021,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
case MS_MAGNUM:
if( flag&1 ) {
//Damage depends on distance, so add it to flag if it is > 1
- skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag|SD_ANIMATION|distance_bl(src, bl));
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag|SD_ANIMATION|distance_bl(src, bl));
}
break;
@@ -4709,9 +5029,9 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
case ML_BRANDISH:
//Coded apart for it needs the flag passed to the damage calculation.
if (skill->area_temp[1] != bl->id)
- skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag|SD_ANIMATION);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag|SD_ANIMATION);
else
- skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
break;
case KN_BOWLINGBASH:
@@ -4971,7 +5291,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
if( (tsc = status->get_sc(bl)) && (tsc->data[SC_HIDING] )) {
clif->skill_nodamage(src,src,skill_id,skill_lv,1);
} else
- skill->attack(BF_MISC,src,src,bl,skill_id,skill_lv,tick,flag);
+ skill->attack(BF_WEAPON,src,src,bl,skill_id,skill_lv,tick,flag);
}
break;
case NPC_SELFDESTRUCTION: {
@@ -5106,7 +5426,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
break;
case WL_DRAINLIFE:
{
- int heal = skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag);
+ int heal = skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
int rate = 70 + 5 * skill_lv;
heal = heal * (5 + 5 * skill_lv) / 100;
@@ -5152,7 +5472,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
if (sd) {
int i;
clif->skill_nodamage(src, bl, skill_id, skill_lv, 1);
- skill->toggle_magicpower(src, skill_id);
+ skill->toggle_magicpower(src, skill_id, skill_lv);
// Priority is to release SpellBook
if (sc && sc->data[SC_READING_SB]) {
// SpellBook
@@ -5396,7 +5716,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
{
struct status_change *tsc = status->get_sc(bl);
if( tsc && tsc->data[SC_POISON] ) {
- skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
status_change_end(bl, SC_POISON, INVALID_TIMER);
} else if( sd )
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
@@ -5418,7 +5738,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
case EL_HURRICANE:
case EL_TYPOON_MIS:
if( flag&1 )
- skill->attack(skill->get_type(skill_id+1),src,src,bl,skill_id+1,skill_lv,tick,flag);
+ skill->attack(skill->get_type(skill_id + 1, skill_lv), src, src, bl, skill_id + 1, skill_lv, tick, flag);
else {
int i = skill->get_splash(skill_id,skill_lv);
clif->skill_nodamage(src,battle->get_master(src),skill_id,skill_lv,1);
@@ -5426,7 +5746,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
if( rnd()%100 < 30 )
map->foreachinrange(skill->area_sub,bl,i,BL_CHAR,src,skill_id,skill_lv,tick,flag|BCT_ENEMY|1,skill->castend_damage_id);
else
- skill->attack(skill->get_type(skill_id),src,src,bl,skill_id,skill_lv,tick,flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
}
break;
@@ -5441,7 +5761,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
case EL_STONE_RAIN:
if( flag&1 )
- skill->attack(skill->get_type(skill_id),src,src,bl,skill_id,skill_lv,tick,flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
else {
int i = skill->get_splash(skill_id,skill_lv);
clif->skill_nodamage(src,battle->get_master(src),skill_id,skill_lv,1);
@@ -5449,7 +5769,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
if( rnd()%100 < 30 )
map->foreachinrange(skill->area_sub,bl,i,BL_CHAR,src,skill_id,skill_lv,tick,flag|BCT_ENEMY|1,skill->castend_damage_id);
else
- skill->attack(skill->get_type(skill_id),src,src,bl,skill_id,skill_lv,tick,flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
}
break;
@@ -5459,7 +5779,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
case EL_STONE_HAMMER:
clif->skill_nodamage(src,battle->get_master(src),skill_id,skill_lv,1);
clif->skill_damage(src, bl, tick, status_get_amotion(src), 0, -30000, 1, skill_id, skill_lv, BDT_SKILL);
- skill->attack(skill->get_type(skill_id),src,src,bl,skill_id,skill_lv,tick,flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
break;
case EL_TIDAL_WEAPON:
@@ -5476,7 +5796,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
elemental->clean_single_effect(ele, skill_id);
}
if( rnd()%100 < 50 )
- skill->attack(skill->get_type(skill_id),src,src,bl,skill_id,skill_lv,tick,flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
else {
sc_start(src, src,type2,100,skill_lv,skill->get_time(skill_id,skill_lv));
sc_start(src, battle->get_master(src),type,100,ele->bl.id,skill->get_time(skill_id,skill_lv));
@@ -5489,7 +5809,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
case MH_MAGMA_FLOW:
case MH_HEILIGE_STANGE:
if(flag & 1)
- skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
else {
map->foreachinrange(skill->area_sub, bl, skill->get_splash(skill_id, skill_lv), skill->splash_target(src), src, skill_id, skill_lv, tick, flag | BCT_ENEMY | SD_SPLASH | 1, skill->castend_damage_id);
}
@@ -5513,7 +5833,7 @@ static int skill_castend_damage_id(struct block_list *src, struct block_list *bl
break;
case SU_SV_STEMSPEAR:
- skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag);
+ skill->attack(skill->get_type(skill_id, skill_lv), src, src, bl, skill_id, skill_lv, tick, flag);
if (status->get_lv(src) >= 30 && (rnd() % 100 < (int)(status->get_lv(src) / 30) + 10)) // TODO: Need activation chance.
skill->addtimerskill(src, tick + skill->get_delay(skill_id, skill_lv), bl->id, 0, 0, skill_id, skill_lv, (skill_id == SU_SV_STEMSPEAR) ? BF_MAGIC : BF_WEAPON, flag);
break;
@@ -5573,7 +5893,7 @@ static bool skill_castend_damage_id_unknown(struct block_list *src, struct block
ShowWarning("skill_castend_damage_id: Unknown skill used:%d\n", *skill_id);
clif->skill_damage(src, bl, *tick, status_get_amotion(src), tstatus->dmotion,
0, abs(skill->get_num(*skill_id, *skill_lv)),
- *skill_id, *skill_lv, skill->get_hit(*skill_id));
+ *skill_id, *skill_lv, skill->get_hit(*skill_id, *skill_lv));
map->freeblock_unlock();
return true;
}
@@ -5792,7 +6112,7 @@ static int skill_castend_id(int tid, int64 tick, int id, intptr_t data)
if (ud->walktimer != INVALID_TIMER && ud->skill_id != TK_RUN && ud->skill_id != RA_WUGDASH)
unit->stop_walking(src, STOPWALKING_FLAG_FIXPOS);
- if( !sd || sd->skillitem != ud->skill_id || skill->get_delay(ud->skill_id,ud->skill_lv) )
+ if (sd == NULL || sd->auto_cast_current.skill_id != ud->skill_id || skill->get_delay(ud->skill_id, ud->skill_lv) != 0)
ud->canact_tick = tick + skill->delay_fix(src, ud->skill_id, ud->skill_lv); // Tests show wings don't overwrite the delay but skill scrolls do. [Inkfish]
if (sd) { // Cooldown application
int i, cooldown = skill->get_cooldown(ud->skill_id, ud->skill_lv);
@@ -5825,7 +6145,7 @@ static int skill_castend_id(int tid, int64 tick, int id, intptr_t data)
break;
}
}
- if (skill->get_state(ud->skill_id) != ST_MOVE_ENABLE)
+ if (skill->get_state(ud->skill_id, ud->skill_lv) != ST_MOVE_ENABLE)
unit->set_walkdelay(src, tick, battle_config.default_walk_delay+skill->get_walkdelay(ud->skill_id, ud->skill_lv), 1);
if(battle_config.skill_log && battle_config.skill_log&src->type)
@@ -5835,7 +6155,7 @@ static int skill_castend_id(int tid, int64 tick, int id, intptr_t data)
map->freeblock_lock();
// SC_MAGICPOWER needs to switch states before any damage is actually dealt
- skill->toggle_magicpower(src, ud->skill_id);
+ skill->toggle_magicpower(src, ud->skill_id, ud->skill_lv);
#if 0 // On aegis damage skills are also increase by camouflage. Need confirmation on kRO.
if( ud->skill_id != RA_CAMOUFLAGE ) // only normal attack and auto cast skills benefit from its bonuses
@@ -5860,8 +6180,10 @@ static int skill_castend_id(int tid, int64 tick, int id, intptr_t data)
skill->blockpc_start(sd,BD_ADAPTATION,3000);
}
- if( sd && ud->skill_id != SA_ABRACADABRA && ud->skill_id != WM_RANDOMIZESPELL ) // they just set the data so leave it as it is.[Inkfish]
- sd->skillitem = sd->skillitemlv = 0;
+ if (sd != NULL && ud->skill_id != SA_ABRACADABRA && ud->skill_id != WM_RANDOMIZESPELL
+ && ud->skill_id == sd->auto_cast_current.skill_id) { // they just set the data so leave it as it is.[Inkfish]
+ pc->autocast_remove(sd, sd->auto_cast_current.type, ud->skill_id, ud->skill_lv);
+ }
if (ud->skilltimer == INVALID_TIMER) {
if(md) md->skill_idx = -1;
@@ -5910,16 +6232,20 @@ static int skill_castend_id(int tid, int64 tick, int id, intptr_t data)
}
}
- if( !sd || sd->skillitem != ud->skill_id || skill->get_delay(ud->skill_id,ud->skill_lv) )
+ if (sd == NULL || sd->auto_cast_current.skill_id != ud->skill_id || skill->get_delay(ud->skill_id, ud->skill_lv) != 0)
ud->canact_tick = tick;
- ud->skill_id = ud->skill_lv = ud->skilltarget = 0;
//You can't place a skill failed packet here because it would be
//sent in ALL cases, even cases where skill_check_condition fails
//which would lead to double 'skill failed' messages u.u [Skotlex]
- if(sd)
- sd->skillitem = sd->skillitemlv = 0;
+ if (sd != NULL && ud->skill_id == sd->auto_cast_current.skill_id)
+ pc->autocast_remove(sd, sd->auto_cast_current.type, ud->skill_id, ud->skill_lv);
else if(md)
md->skill_idx = -1;
+
+ ud->skill_id = 0;
+ ud->skill_lv = 0;
+ ud->skilltarget = 0;
+
return 0;
}
@@ -6101,7 +6427,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
if (skill->castend_nodamage_id_undead_unknown(src, bl, &skill_id, &skill_lv, &tick, &flag))
{
//Skill is actually ground placed.
- if (src == bl && skill->get_unit_id(skill_id,0))
+ if (src == bl && skill->get_unit_id(skill_id, skill_lv, 0) != 0)
return skill->castend_pos2(src,bl->x,bl->y,skill_id,skill_lv,tick,0);
}
break;
@@ -6299,9 +6625,12 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
if (sd) {
// player-casted
- sd->state.abra_flag = 1;
- sd->skillitem = abra_skill_id;
- sd->skillitemlv = abra_skill_lv;
+ pc->autocast_clear(sd);
+ sd->auto_cast_current.type = AUTOCAST_ABRA;
+ sd->auto_cast_current.skill_id = abra_skill_id;
+ sd->auto_cast_current.skill_lv = abra_skill_lv;
+ VECTOR_ENSURE(sd->auto_cast, 1, 1);
+ VECTOR_PUSH(sd->auto_cast, sd->auto_cast_current);
clif->item_skill(sd, abra_skill_id, abra_skill_lv);
} else {
// mob-casted
@@ -7349,7 +7678,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
int rate = 100 * (100 - (tstatus->int_ / 2 + tstatus->vit / 3 + tstatus->luk / 10));
int duration = skill->get_time2(skill_id, skill_lv);
- duration *= (100 - (tstatus->int_ + tstatus->vit) / 2) / 100;
+ duration = duration * (100 - (tstatus->int_ + tstatus->vit) / 2) / 100;
status->change_start(src, bl, SC_BLIND, rate, 1, 0, 0, 0, duration, SCFLAG_NONE);
}
@@ -7430,7 +7759,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
map->freeblock_unlock();
return 1;
}
- if( sd->skillitem != skill_id )
+ if (sd->auto_cast_current.type == AUTOCAST_NONE)
status_zap(src, 0, skill->get_sp(skill_id, skill_lv)); // consume sp only if succeeded
}
break;
@@ -7467,7 +7796,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
break;
}
- if( sd->state.autocast || ( (sd->skillitem == AL_TELEPORT || battle_config.skip_teleport_lv1_menu) && skill_lv == 1 ) || skill_lv == 3 )
+ if (sd->auto_cast_current.type == AUTOCAST_TEMP || ((sd->auto_cast_current.skill_id == AL_TELEPORT || battle_config.skip_teleport_lv1_menu) && skill_lv == 1) || skill_lv == 3)
{
if( skill_lv == 1 )
pc->randomwarp(sd,CLR_TELEPORT);
@@ -7616,7 +7945,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
map->freeblock_unlock();
return 1;
}
- if (sd->inventory_data[inventory_idx] == NULL || sd->status.inventory[inventory_idx].amount < skill->get_itemqty(skill_id, item_idx)) {
+ if (sd->inventory_data[inventory_idx] == NULL || sd->status.inventory[inventory_idx].amount < skill->get_itemqty(skill_id, item_idx, skill_lv)) {
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
map->freeblock_unlock();
return 1;
@@ -8244,7 +8573,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
if (nameid > 0) {
int success;
struct item item_tmp = { 0 };
- int amount = skill->get_itemqty(su->group->skill_id, i);
+ int amount = skill->get_itemqty(su->group->skill_id, i, skill_lv);
item_tmp.nameid = nameid;
item_tmp.identify = 1;
if ((success = pc->additem(sd, &item_tmp, amount, LOG_TYPE_SKILL)) != 0) {
@@ -10041,9 +10370,12 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
clif->skill_nodamage (src, bl, skill_id, skill_lv, 1);
if (sd != NULL) {
- sd->state.abra_flag = 2;
- sd->skillitem = improv_skill_id;
- sd->skillitemlv = improv_skill_lv;
+ pc->autocast_clear(sd);
+ sd->auto_cast_current.type = AUTOCAST_IMPROVISE;
+ sd->auto_cast_current.skill_id = improv_skill_id;
+ sd->auto_cast_current.skill_lv = improv_skill_lv;
+ VECTOR_ENSURE(sd->auto_cast, 1, 1);
+ VECTOR_PUSH(sd->auto_cast, sd->auto_cast_current);
clif->item_skill(sd, improv_skill_id, improv_skill_lv);
} else {
struct unit_data *ud = unit->bl2ud(src);
@@ -10436,7 +10768,7 @@ static int skill_castend_nodamage_id(struct block_list *src, struct block_list *
case KO_KAZEHU_SEIRAN:
case KO_DOHU_KOUKAI:
if(sd) {
- int ttype = skill->get_ele(skill_id, skill_lv);
+ enum spirit_charm_types ttype = skill->get_ele(skill_id, skill_lv);
clif->skill_nodamage(src, bl, skill_id, skill_lv, 1);
pc->add_charm(sd, skill->get_time(skill_id, skill_lv), MAX_SPIRITCHARM, ttype); // replace existing charms of other type
}
@@ -10812,7 +11144,7 @@ static int skill_castend_pos(int tid, int64 tick, int id, intptr_t data)
if (ud->walktimer != INVALID_TIMER)
unit->stop_walking(src, STOPWALKING_FLAG_FIXPOS);
- if( !sd || sd->skillitem != ud->skill_id || skill->get_delay(ud->skill_id,ud->skill_lv) )
+ if (sd == NULL || sd->auto_cast_current.skill_id != ud->skill_id || skill->get_delay(ud->skill_id, ud->skill_lv) != 0)
ud->canact_tick = tick + skill->delay_fix(src, ud->skill_id, ud->skill_lv);
if (sd) { //Cooldown application
int i, cooldown = skill->get_cooldown(ud->skill_id, ud->skill_lv);
@@ -10841,8 +11173,8 @@ static int skill_castend_pos(int tid, int64 tick, int id, intptr_t data)
map->freeblock_lock();
skill->castend_pos2(src,ud->skillx,ud->skilly,ud->skill_id,ud->skill_lv,tick,0);
- if( sd && sd->skillitem != AL_WARP ) // Warp-Portal thru items will clear data in skill_castend_map. [Inkfish]
- sd->skillitem = sd->skillitemlv = 0;
+ if (sd != NULL && ud->skill_id != AL_WARP && ud->skill_id == sd->auto_cast_current.skill_id) // Warp-Portal thru items will clear data in skill_castend_map. [Inkfish]
+ pc->autocast_remove(sd, sd->auto_cast_current.type, ud->skill_id, ud->skill_lv);
unit->set_dir(src, map->calc_dir(src, ud->skillx, ud->skilly));
@@ -10856,13 +11188,17 @@ static int skill_castend_pos(int tid, int64 tick, int id, intptr_t data)
return 1;
} while(0);
- if( !sd || sd->skillitem != ud->skill_id || skill->get_delay(ud->skill_id,ud->skill_lv) )
+ if (sd == NULL || sd->auto_cast_current.skill_id != ud->skill_id || skill->get_delay(ud->skill_id, ud->skill_lv) != 0)
ud->canact_tick = tick;
- ud->skill_id = ud->skill_lv = 0;
- if(sd)
- sd->skillitem = sd->skillitemlv = 0;
+
+ if (sd != NULL && ud->skill_id == sd->auto_cast_current.skill_id)
+ pc->autocast_remove(sd, sd->auto_cast_current.type, ud->skill_id, ud->skill_lv);
else if(md)
md->skill_idx = -1;
+
+ ud->skill_id = 0;
+ ud->skill_lv = 0;
+
return 0;
}
@@ -10893,6 +11229,37 @@ static int skill_count_wos(struct block_list *bl, va_list ap)
return 0;
}
+/**
+ * Returns the linked song/dance skill ID, if any (for the Bard/Dancer Soul Link).
+ *
+ * @param skill_id The skill ID to look up
+ *
+ * @return The linked song or dance's skill ID if any
+ * @retval 0 if the given skill_id doesn't have a linked skill ID
+ */
+static int skill_get_linked_song_dance_id(int skill_id)
+{
+ switch (skill_id) {
+ case BA_WHISTLE:
+ return DC_HUMMING;
+ case BA_ASSASSINCROSS:
+ return DC_DONTFORGETME;
+ case BA_POEMBRAGI:
+ return DC_FORTUNEKISS;
+ case BA_APPLEIDUN:
+ return DC_SERVICEFORYOU;
+ case DC_HUMMING:
+ return BA_WHISTLE;
+ case DC_DONTFORGETME:
+ return BA_ASSASSINCROSS;
+ case DC_FORTUNEKISS:
+ return BA_POEMBRAGI;
+ case DC_SERVICEFORYOU:
+ return BA_APPLEIDUN;
+ }
+ return 0;
+}
+
/*==========================================
*
*------------------------------------------*/
@@ -10990,7 +11357,7 @@ static int skill_castend_map(struct map_session_data *sd, uint16 skill_id, const
}
}
- lv = sd->skillitem==skill_id?sd->skillitemlv:pc->checkskill(sd,skill_id);
+ lv = (sd->auto_cast_current.type > AUTOCAST_TEMP) ? sd->auto_cast_current.skill_lv : pc->checkskill(sd, skill_id);
wx = sd->menuskill_val>>16;
wy = sd->menuskill_val&0xffff;
@@ -11013,7 +11380,10 @@ static int skill_castend_map(struct map_session_data *sd, uint16 skill_id, const
}
skill->consume_requirement(sd,sd->menuskill_id,lv,2);
- sd->skillitem = sd->skillitemlv = 0; // Clear data that's skipped in 'skill_castend_pos' [Inkfish]
+
+ // Clear data which was skipped in skill_castend_pos().
+ pc->autocast_remove(sd, sd->auto_cast_current.type, sd->auto_cast_current.skill_id,
+ sd->auto_cast_current.skill_lv);
if((group=skill->unitsetting(&sd->bl,skill_id,lv,wx,wy,0))==NULL) {
skill_failed(sd);
@@ -11074,7 +11444,7 @@ static int skill_castend_pos2(struct block_list *src, int x, int y, uint16 skill
}
// SC_MAGICPOWER needs to switch states before any damage is actually dealt
- skill->toggle_magicpower(src, skill_id);
+ skill->toggle_magicpower(src, skill_id, skill_lv);
switch(skill_id) {
case PR_BENEDICTIO:
@@ -11262,7 +11632,7 @@ static int skill_castend_pos2(struct block_list *src, int x, int y, uint16 skill
FALLTHROUGH
case GS_GROUNDDRIFT: //Ammo should be deleted right away.
if ( skill_id == WM_SEVERE_RAINSTORM )
- sc_start(src,src,SC_NO_SWITCH_EQUIP,100,0,skill->get_time(skill_id,skill_lv));
+ sc_start(src, src, type, 100, 0, skill->get_time(skill_id, skill_lv));
skill->unitsetting(src,skill_id,skill_lv,x,y,0);
break;
case WZ_ICEWALL:
@@ -11433,7 +11803,7 @@ static int skill_castend_pos2(struct block_list *src, int x, int y, uint16 skill
int bonus;
if (inventory_idx == INDEX_NOT_FOUND || item_id <= 0
|| sd->inventory_data[inventory_idx] == NULL
- || sd->status.inventory[inventory_idx].amount < skill->get_itemqty(skill_id, item_idx)
+ || sd->status.inventory[inventory_idx].amount < skill->get_itemqty(skill_id, item_idx, skill_lv)
) {
clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
return 1;
@@ -11679,7 +12049,7 @@ static int skill_castend_pos2(struct block_list *src, int x, int y, uint16 skill
skill->unitsetting(src, skill_id, skill_lv, x, y, 0); // Set bomb on current Position
clif->skill_nodamage(src, src, skill_id, skill_lv, 1);
if( skill->blown(src, src, 3 * skill_lv, unit->getdir(src), 0) && sc) {
- sc_start(src, src, SC__FEINTBOMB_MASTER, 100, 0, skill->get_unit_interval(SC_FEINTBOMB));
+ sc_start(src, src, SC__FEINTBOMB_MASTER, 100, 0, skill->get_unit_interval(SC_FEINTBOMB, skill_lv));
}
break;
@@ -11692,7 +12062,7 @@ static int skill_castend_pos2(struct block_list *src, int x, int y, uint16 skill
case LG_OVERBRAND:
skill->area_temp[1] = 0;
map->foreachinpath(skill->attack_area,src->m,src->x,src->y,x,y,1,5,BL_CHAR,
- skill->get_type(skill_id),src,src,skill_id,skill_lv,tick,flag,BCT_ENEMY);
+ skill->get_type(skill_id, skill_lv), src, src, skill_id, skill_lv, tick, flag, BCT_ENEMY);
skill->addtimerskill(src,timer->gettick() + status_get_amotion(src), 0, x, y, LG_OVERBRAND_BRANDISH, skill_lv, 0, flag);
break;
@@ -11926,10 +12296,10 @@ static bool skill_dance_switch(struct skill_unit *su, int flag)
// replace
group->skill_id = skill_id;
group->skill_lv = 1;
- group->unit_id = skill->get_unit_id(skill_id,0);
- group->target_flag = skill->get_unit_target(skill_id);
- group->bl_flag = skill->get_unit_bl_target(skill_id);
- group->interval = skill->get_unit_interval(skill_id);
+ group->unit_id = skill->get_unit_id(skill_id, 1, 0);
+ group->target_flag = skill->get_unit_target(skill_id, 1);
+ group->bl_flag = skill->get_unit_bl_target(skill_id, 1);
+ group->interval = skill->get_unit_interval(skill_id, 1);
} else {
//Restore
group->skill_id = backup.skill_id;
@@ -11962,8 +12332,8 @@ static struct skill_unit_group *skill_unitsetting(struct block_list *src, uint16
limit = skill->get_time(skill_id,skill_lv);
range = skill->get_unit_range(skill_id,skill_lv);
- interval = skill->get_unit_interval(skill_id);
- target = skill->get_unit_target(skill_id);
+ interval = skill->get_unit_interval(skill_id, skill_lv);
+ target = skill->get_unit_target(skill_id, skill_lv);
unit_flag = skill->get_unit_flag(skill_id);
layout = skill->get_unit_layout(skill_id,skill_lv,src,x,y);
@@ -12327,12 +12697,12 @@ static struct skill_unit_group *skill_unitsetting(struct block_list *src, uint16
}
nullpo_retr(NULL, layout);
- nullpo_retr(NULL, group=skill->init_unitgroup(src,layout->count,skill_id,skill_lv,skill->get_unit_id(skill_id,flag&1)+subunt, limit, interval));
+ nullpo_retr(NULL, group = skill->init_unitgroup(src, layout->count, skill_id, skill_lv, skill->get_unit_id(skill_id, skill_lv, flag & 1) + subunt, limit, interval));
group->val1=val1;
group->val2=val2;
group->val3=val3;
group->target_flag=target;
- group->bl_flag= skill->get_unit_bl_target(skill_id);
+ group->bl_flag= skill->get_unit_bl_target(skill_id, skill_lv);
group->state.ammo_consume = (sd && sd->state.arrow_atk && skill_id != GS_GROUNDDRIFT); //Store if this skill needs to consume ammo.
group->state.song_dance = ((unit_flag&(UF_DANCE|UF_SONG)) ? 1 : 0)|((unit_flag&UF_ENSEMBLE) ? 2 : 0); //Signals if this is a song/dance/duet
group->state.guildaura = ( skill_id >= GD_LEADERSHIP && skill_id <= GD_HAWKEYES )?1:0;
@@ -12453,7 +12823,7 @@ static struct skill_unit_group *skill_unitsetting(struct block_list *src, uint16
if (!group->alive_count) {
//No cells? Something that was blocked completely by Land Protector?
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
return NULL;
}
@@ -12501,7 +12871,7 @@ static int skill_unit_onplace(struct skill_unit *src, struct block_list *bl, int
nullpo_ret(sg=src->group);
nullpo_ret(ss=map->id2bl(sg->src_id));
- if (skill->get_type(sg->skill_id) == BF_MAGIC && map->getcell(src->bl.m, &src->bl, src->bl.x, src->bl.y, CELL_CHKLANDPROTECTOR) && sg->skill_id != SA_LANDPROTECTOR)
+ if (skill->get_type(sg->skill_id, sg->skill_lv) == BF_MAGIC && map->getcell(src->bl.m, &src->bl, src->bl.x, src->bl.y, CELL_CHKLANDPROTECTOR) != 0 && sg->skill_id != SA_LANDPROTECTOR)
return 0; //AoE skills are ineffective. [Skotlex]
sc = status->get_sc(bl);
@@ -12569,7 +12939,7 @@ static int skill_unit_onplace(struct skill_unit *src, struct block_list *bl, int
unsigned short m = sg->val3;
if( --count <= 0 )
- skill->del_unitgroup(sg,ALC_MARK);
+ skill->del_unitgroup(sg);
if ( map->mapindex2mapid(sg->val3) == sd->bl.m && x == sd->bl.x && y == sd->bl.y )
working = 1;/* we break it because officials break it, lovely stuff. */
@@ -12700,7 +13070,7 @@ static int skill_unit_onplace(struct skill_unit *src, struct block_list *bl, int
if( status_get_mode(bl)&MD_BOSS )
break; // iRO Wiki says that this skill don't affect to Boss monsters.
if( map_flag_vs(bl->m) || bl->id == src->bl.id || battle->check_target(&src->bl,bl, BCT_ENEMY) == 1 )
- skill->attack(skill->get_type(sg->skill_id), ss, &src->bl, bl, sg->skill_id, sg->skill_lv, tick, 0);
+ skill->attack(skill->get_type(sg->skill_id, sg->skill_lv), ss, &src->bl, bl, sg->skill_id, sg->skill_lv, tick, 0);
break;
case UNT_REVERBERATION:
@@ -12875,7 +13245,7 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
sg->val1--;
}
if (sg->val1 <= 0)
- skill->del_unitgroup(sg, ALC_MARK);
+ skill->del_unitgroup(sg);
break;
case UNT_EVILLAND:
@@ -12936,7 +13306,7 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
case WZ_STORMGUST: //SG counter does not reset per stormgust. IE: One hit from a SG and two hits from another will freeze you.
if (tsc)
tsc->sg_counter++; //SG hit counter.
- if (skill->attack(skill->get_type(sg->skill_id),ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0) <= 0 && tsc)
+ if (skill->attack(skill->get_type(sg->skill_id, sg->skill_lv), ss, &src->bl, bl, sg->skill_id, sg->skill_lv, tick, 0) <= 0 && tsc != NULL)
tsc->sg_counter=0; //Attack absorbed.
break;
#endif
@@ -12945,7 +13315,7 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
skill->attack(BF_WEAPON,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
break;
default:
- skill->attack(skill->get_type(sg->skill_id),ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
+ skill->attack(skill->get_type(sg->skill_id, sg->skill_lv), ss, &src->bl, bl, sg->skill_id, sg->skill_lv, tick, 0);
}
break;
@@ -13266,7 +13636,7 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
case UNT_PSYCHIC_WAVE:
case UNT_MAGMA_ERUPTION:
case UNT_MAKIBISHI:
- skill->attack(skill->get_type(sg->skill_id),ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
+ skill->attack(skill->get_type(sg->skill_id, sg->skill_lv), ss, &src->bl, bl, sg->skill_id, sg->skill_lv, tick, 0);
break;
case UNT_GROUNDDRIFT_WIND:
@@ -13367,7 +13737,7 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
sec = 3000; // Couldn't trap it?
sg->limit = DIFF_TICK32(tick, sg->tick) + sec;
} else if( tsc->data[SC_THORNS_TRAP] && bl->id == sg->val2 )
- skill->attack(skill->get_type(GN_THORNS_TRAP), ss, ss, bl, sg->skill_id, sg->skill_lv, tick, SD_LEVEL|SD_ANIMATION);
+ skill->attack(skill->get_type(GN_THORNS_TRAP, sg->skill_lv), ss, ss, bl, sg->skill_id, sg->skill_lv, tick, SD_LEVEL|SD_ANIMATION);
}
break;
@@ -13379,11 +13749,11 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
default:
sc_start4(ss, bl, SC_BURNING, 4 + 4 * sg->skill_lv, sg->skill_lv, 0, ss->id, 0,
skill->get_time2(sg->skill_id, sg->skill_lv));
- skill->attack(skill->get_type(sg->skill_id), ss, &src->bl, bl,
+ skill->attack(skill->get_type(sg->skill_id, sg->skill_lv), ss, &src->bl, bl,
sg->skill_id, sg->skill_lv + 10 * sg->val2, tick, 0);
break;
case 3:
- skill->attack(skill->get_type(CR_ACIDDEMONSTRATION), ss, &src->bl, bl,
+ skill->attack(skill->get_type(CR_ACIDDEMONSTRATION, sg->skill_lv), ss, &src->bl, bl,
CR_ACIDDEMONSTRATION, sd ? pc->checkskill(sd, CR_ACIDDEMONSTRATION) : sg->skill_lv, tick, 0);
break;
@@ -13401,7 +13771,7 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
case UNT_HELLS_PLANT:
if( battle->check_target(&src->bl,bl,BCT_ENEMY) > 0 )
- skill->attack(skill->get_type(GN_HELLS_PLANT_ATK), ss, &src->bl, bl, GN_HELLS_PLANT_ATK, sg->skill_lv, tick, 0);
+ skill->attack(skill->get_type(GN_HELLS_PLANT_ATK, sg->skill_lv), ss, &src->bl, bl, GN_HELLS_PLANT_ATK, sg->skill_lv, tick, 0);
if( ss != bl) //The caster is the only one who can step on the Plants, without destroying them
sg->limit = DIFF_TICK32(tick, sg->tick) + 100;
break;
@@ -13409,7 +13779,7 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
case UNT_CLOUD_KILL:
if(tsc && !tsc->data[type])
status->change_start(ss,bl,type,10000,sg->skill_lv,sg->group_id,0,0,skill->get_time2(sg->skill_id,sg->skill_lv),SCFLAG_FIXEDRATE);
- skill->attack(skill->get_type(sg->skill_id),ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick,0);
+ skill->attack(skill->get_type(sg->skill_id, sg->skill_lv), ss, &src->bl, bl, sg->skill_id, sg->skill_lv, tick, 0);
break;
case UNT_WARMER:
@@ -13534,7 +13904,7 @@ static int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *b
}
sg->limit = DIFF_TICK32(tick, sg->tick) + sec;
} else if (tsc->data[type] && bl->id == sg->val2) {
- skill->attack(skill->get_type(SU_SV_ROOTTWIST_ATK), ss, &src->bl, bl, SU_SV_ROOTTWIST_ATK, sg->skill_lv, tick, SD_LEVEL|SD_ANIMATION);
+ skill->attack(skill->get_type(SU_SV_ROOTTWIST_ATK, sg->skill_lv), ss, &src->bl, bl, SU_SV_ROOTTWIST_ATK, sg->skill_lv, tick, SD_LEVEL|SD_ANIMATION);
}
}
break;
@@ -13988,16 +14358,16 @@ static int skill_check_condition_mob_master_sub(struct block_list *bl, va_list a
* Determines if a given skill should be made to consume ammo
* when used by the player. [Skotlex]
*------------------------------------------*/
-static int skill_isammotype(struct map_session_data *sd, int skill_id)
+static int skill_isammotype(struct map_session_data *sd, int skill_id, int skill_lv)
{
nullpo_ret(sd);
return (
battle_config.arrow_decrement==2 &&
(sd->weapontype == W_BOW || (sd->weapontype >= W_REVOLVER && sd->weapontype <= W_GRENADE)) &&
skill_id != HT_PHANTASMIC &&
- skill->get_type(skill_id) == BF_WEAPON &&
+ skill->get_type(skill_id, skill_lv) == BF_WEAPON &&
!(skill->get_nk(skill_id)&NK_NO_DAMAGE) &&
- !skill->get_spiritball(skill_id,1) //Assume spirit spheres are used as ammo instead.
+ !skill->get_spiritball(skill_id, skill_lv) //Assume spirit spheres are used as ammo instead.
);
}
@@ -14013,19 +14383,87 @@ static bool skill_is_combo(int skill_id)
}
/**
- * Checks if a skill is casted by an item (itemskill() script command).
+ * Checks if a skill's equipment requirements are fulfilled.
*
- * @param sd The charcater's session data.
+ * @param sd The character who casts the skill.
* @param skill_id The skill's ID.
* @param skill_lv The skill's level.
- * @return true if skill is casted by an item, otherwise false.
- */
-static bool skill_is_item_skill(struct map_session_data *sd, int skill_id, int skill_lv)
+ * @return 0 on success or 1 in case of error.
+ *
+ **/
+static int skill_check_condition_required_equip(struct map_session_data *sd, int skill_id, int skill_lv)
{
- nullpo_retr(false, sd);
+ nullpo_retr(1, sd);
+
+ struct skill_condition req = skill->get_requirement(sd, skill_id, skill_lv);
+ bool any_equip_flag = skill->get_equip_any_flag(skill_id, skill_lv);
+ bool any_equip_found = false;
+ int fail_id = 0;
+ int fail_amount = 0;
+
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ if (req.equip_id[i] == 0)
+ continue;
+
+ int req_id = req.equip_id[i];
+ int req_amount = req.equip_amount[i];
+ int found_amount = 0;
+
+ for (int j = 0; j < EQI_MAX; j++) {
+ int inv_idx = sd->equip_index[j];
+
+ if (inv_idx == INDEX_NOT_FOUND || sd->inventory_data[inv_idx] == NULL)
+ continue;
+
+ if ((j == EQI_HAND_R && sd->equip_index[EQI_HAND_L] == inv_idx)
+ || (j == EQI_HEAD_MID && sd->equip_index[EQI_HEAD_LOW] == inv_idx)
+ || (j == EQI_HEAD_TOP && sd->equip_index[EQI_HEAD_MID] == inv_idx)
+ || (j == EQI_HEAD_TOP && sd->equip_index[EQI_HEAD_LOW] == inv_idx)
+ || (j == EQI_COSTUME_MID && sd->equip_index[EQI_COSTUME_LOW] == inv_idx)
+ || (j == EQI_COSTUME_TOP && sd->equip_index[EQI_COSTUME_MID] == inv_idx)
+ || (j == EQI_COSTUME_TOP && sd->equip_index[EQI_COSTUME_LOW] == inv_idx)) {
+ continue; // Equipment uses more than one slot; only process it once!
+ }
+
+ if (itemdb_type(req_id) != IT_CARD) {
+ if (sd->inventory_data[inv_idx]->nameid != req_id)
+ continue;
+
+ if (itemdb_type(req_id) == IT_AMMO)
+ found_amount += sd->status.inventory[inv_idx].amount;
+ else
+ found_amount++;
+ } else {
+ if (itemdb_isspecial(sd->status.inventory[inv_idx].card[0]))
+ continue;
+
+ for (int k = 0; k < sd->inventory_data[inv_idx]->slot; k++) {
+ if (sd->status.inventory[inv_idx].card[k] == req_id)
+ found_amount++;
+ }
+ }
+ }
+
+ if (any_equip_flag) {
+ if (found_amount >= req_amount) {
+ any_equip_found = true;
+ break;
+ } else if (fail_id == 0) { // Save ID/amount of first missing equipment for skill fail message.
+ fail_id = req_id;
+ fail_amount = req_amount;
+ }
+ } else if (found_amount < req_amount) {
+ clif->skill_fail(sd, skill_id, USESKILL_FAIL_NEED_EQUIPMENT, req_amount, req_id);
+ return 1;
+ }
+ }
- return (sd->skillitem == skill_id && sd->skillitemlv == skill_lv
- && sd->itemskill_id == skill_id && sd->itemskill_lv == skill_lv);
+ if (any_equip_flag && !any_equip_found) {
+ clif->skill_fail(sd, skill_id, USESKILL_FAIL_NEED_EQUIPMENT, fail_amount, fail_id);
+ return 1;
+ }
+
+ return 0;
}
static int skill_check_condition_castbegin(struct map_session_data *sd, uint16 skill_id, uint16 skill_lv)
@@ -14042,13 +14480,13 @@ static int skill_check_condition_castbegin(struct map_session_data *sd, uint16 s
if (sd->chat_id != 0)
return 0;
- if ((sd->state.itemskill_conditions_checked == 1 || sd->state.itemskill_check_conditions == 0)
- && skill->is_item_skill(sd, skill_id, skill_lv)) {
+ if (((sd->auto_cast_current.itemskill_conditions_checked || !sd->auto_cast_current.itemskill_check_conditions)
+ && sd->auto_cast_current.type == AUTOCAST_ITEM) || sd->auto_cast_current.type == AUTOCAST_IMPROVISE) {
return 1;
}
- if (pc_has_permission(sd, PC_PERM_SKILL_UNCONDITIONAL) && sd->skillitem != skill_id) {
- //GMs don't override the skillItem check, otherwise they can use items without them being consumed! [Skotlex]
+ if (pc_has_permission(sd, PC_PERM_SKILL_UNCONDITIONAL) && sd->auto_cast_current.type != AUTOCAST_ITEM) {
+ // GMs don't override the AUTOCAST_ITEM check, otherwise they can use items without them being consumed!
sd->state.arrow_atk = skill->get_ammotype(skill_id)?1:0; //Need to do arrow state check.
sd->spiritball_old = sd->spiritball; //Need to do Spiritball check.
return 1;
@@ -14079,30 +14517,7 @@ static int skill_check_condition_castbegin(struct map_session_data *sd, uint16 s
if( !sc->count )
sc = NULL;
- if( sd->skillitem == skill_id ) {
- if( sd->state.abra_flag ) // Hocus-Pocus was used. [Inkfish]
- sd->state.abra_flag = 0;
- else {
- int i;
- // When a target was selected, consume items that were skipped in pc_use_item [Skotlex]
- if( (i = sd->itemindex) == -1 ||
- sd->status.inventory[i].nameid != sd->itemid ||
- sd->inventory_data[i] == NULL ||
- sd->status.inventory[i].amount < 1
- ) {
- //Something went wrong, item exploit?
- sd->itemid = sd->itemindex = -1;
- return 0;
- }
-
- //Consume
- sd->itemid = sd->itemindex = -1;
- if (sd->status.inventory[i].expire_time == 0 && sd->inventory_data[i]->flag.delay_consume == 1) // Rental usable items are not consumed until expiration
- pc->delitem(sd, i, 1, 0, DELITEM_NORMAL, LOG_TYPE_CONSUME);
- }
- }
-
- if (pc_is90overweight(sd) && sd->skillitem != skill_id) { /// Skill casting items ignore the overweight restriction. [Kenpachi]
+ if (pc_is90overweight(sd) && sd->auto_cast_current.type != AUTOCAST_ITEM) { // Skill casting items ignore the overweight restriction.
clif->skill_fail(sd, skill_id, USESKILL_FAIL_WEIGHTOVER, 0, 0);
return 0;
}
@@ -14750,22 +15165,6 @@ static int skill_check_condition_castbegin(struct map_session_data *sd, uint16 s
require.sp -= require.sp * 20 * count / 100; // -20% each W/M in the party.
}
break;
- case NC_PILEBUNKER:
- if (sd->equip_index[EQI_HAND_R] < 0
- || !itemid_is_pilebunker(sd->status.inventory[sd->equip_index[EQI_HAND_R]].nameid)
- ) {
- clif->skill_fail(sd, skill_id, USESKILL_FAIL_THIS_WEAPON, 0, 0);
- return 0;
- }
- break;
- case NC_HOVERING:
- if (( sd->equip_index[EQI_ACC_L] >= 0 && sd->status.inventory[sd->equip_index[EQI_ACC_L]].nameid == ITEMID_HOVERING_BOOSTER ) ||
- ( sd->equip_index[EQI_ACC_R] >= 0 && sd->status.inventory[sd->equip_index[EQI_ACC_R]].nameid == ITEMID_HOVERING_BOOSTER ));
- else {
- clif->skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0, 0);
- return 0;
- }
- break;
case SO_FIREWALK:
case SO_ELECTRICWALK: // Can't be casted until you've walked all cells.
if( sc && sc->data[SC_PROPERTYWALK] &&
@@ -14968,12 +15367,20 @@ static int skill_check_condition_castbegin(struct map_session_data *sd, uint16 s
return 0;
}
+ if (require.msp > 0 && get_percentage(st->sp, st->max_sp) > require.msp) {
+ clif->skill_fail(sd, skill_id, USESKILL_FAIL_SP_INSUFFICIENT, 0, 0);
+ return 0;
+ }
+
if( require.weapon && !pc_check_weapontype(sd,require.weapon) ) {
clif->skill_fail(sd, skill_id, USESKILL_FAIL_THIS_WEAPON, 0, 0);
return 0;
}
- if (require.sp > 0 && st->sp < (unsigned int)require.sp && sd->skillitem != skill_id) { /// Skill casting items and Hocus-Pocus skills don't consume SP. [Kenpachi]
+ if (skill->check_condition_required_equip(sd, skill_id, skill_lv) != 0)
+ return 0;
+
+ if (require.sp > 0 && st->sp < (unsigned int)require.sp && sd->auto_cast_current.type == AUTOCAST_NONE) { // Auto-cast skills don't consume SP.
clif->skill_fail(sd, skill_id, USESKILL_FAIL_SP_INSUFFICIENT, 0, 0);
return 0;
}
@@ -15019,25 +15426,140 @@ static int skill_check_condition_castbegin_unknown(struct status_change *sc, uin
return -1;
}
+/**
+ * Checks if a skill's item requirements are fulfilled.
+ *
+ * @param sd The character who casts the skill.
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return 0 on success or 1 in case of error.
+ *
+ **/
+static int skill_check_condition_required_items(struct map_session_data *sd, int skill_id, int skill_lv)
+{
+ nullpo_retr(1, sd);
+
+ struct skill_condition req = skill->get_requirement(sd, skill_id, skill_lv);
+
+ if (skill->get_item_any_flag(skill_id, skill_lv)) {
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ if (req.itemid[i] == 0)
+ continue;
+
+ int inv_idx = pc->search_inventory(sd, req.itemid[i]);
+
+ if (inv_idx == INDEX_NOT_FOUND)
+ continue;
+
+ if ((req.amount[i] > 0 && sd->status.inventory[inv_idx].amount >= req.amount[i])
+ || (req.amount[i] == 0 && sd->status.inventory[inv_idx].amount > 0)) {
+ return 0;
+ }
+ }
+ }
+
+ /**
+ * Find first missing item and show skill failed message if item any-flag is false
+ * or item any-flag check didn't find an item with sufficient amount.
+ *
+ **/
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ if (req.itemid[i] == 0)
+ continue;
+
+ int inv_idx = pc->search_inventory(sd, req.itemid[i]);
+
+ if (inv_idx == INDEX_NOT_FOUND || sd->status.inventory[inv_idx].amount < req.amount[i]) {
+ useskill_fail_cause cause = USESKILL_FAIL_NEED_ITEM;
+
+ switch (skill_id) {
+ case NC_SILVERSNIPER:
+ case NC_MAGICDECOY:
+ cause = USESKILL_FAIL_STUFF_INSUFFICIENT;
+ break;
+ default:
+ switch (req.itemid[i]) {
+ case ITEMID_RED_GEMSTONE:
+ cause = USESKILL_FAIL_REDJAMSTONE;
+ break;
+ case ITEMID_BLUE_GEMSTONE:
+ cause = USESKILL_FAIL_BLUEJAMSTONE;
+ break;
+ case ITEMID_HOLY_WATER:
+ cause = USESKILL_FAIL_HOLYWATER;
+ break;
+ case ITEMID_ANSILA:
+ cause = USESKILL_FAIL_ANCILLA;
+ break;
+ case ITEMID_ACCELERATOR:
+ case ITEMID_HOVERING_BOOSTER:
+ case ITEMID_SUICIDAL_DEVICE:
+ case ITEMID_SHAPE_SHIFTER:
+ case ITEMID_COOLING_DEVICE:
+ case ITEMID_MAGNETIC_FIELD_GENERATOR:
+ case ITEMID_BARRIER_BUILDER:
+ case ITEMID_CAMOUFLAGE_GENERATOR:
+ case ITEMID_REPAIR_KIT:
+ case ITEMID_MONKEY_SPANNER:
+ cause = USESKILL_FAIL_NEED_EQUIPMENT;
+ FALLTHROUGH
+ default:
+ clif->skill_fail(sd, skill_id, cause, max(1, req.amount[i]), req.itemid[i]);
+ return 1;
+ }
+
+ break;
+ }
+
+ clif->skill_fail(sd, skill_id, cause, 0, 0);
+ return 1;
+ }
+ }
+
+ return 0;
+}
+
+/**
+ * Checks if a skill has item requirements.
+ *
+ * @param sd The character who casts the skill.
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return True if skill has item requirements, otherwise false.
+ *
+ **/
+static bool skill_items_required(struct map_session_data *sd, int skill_id, int skill_lv)
+{
+ nullpo_retr(false, sd);
+
+ struct skill_condition req = skill->get_requirement(sd, skill_id, skill_lv);
+
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ if (req.itemid[i] != 0)
+ return true;
+ }
+
+ return false;
+}
+
static int skill_check_condition_castend(struct map_session_data *sd, uint16 skill_id, uint16 skill_lv)
{
struct skill_condition require;
struct status_data *st;
int i;
- int index[MAX_SKILL_ITEM_REQUIRE];
nullpo_ret(sd);
if (sd->chat_id != 0)
return 0;
- if ((sd->state.itemskill_conditions_checked == 1 || sd->state.itemskill_check_conditions == 0)
- && skill->is_item_skill(sd, skill_id, skill_lv)) {
+ if (((sd->auto_cast_current.itemskill_conditions_checked || !sd->auto_cast_current.itemskill_check_conditions)
+ && sd->auto_cast_current.type == AUTOCAST_ITEM) || sd->auto_cast_current.type == AUTOCAST_IMPROVISE) {
return 1;
}
- if( pc_has_permission(sd, PC_PERM_SKILL_UNCONDITIONAL) && sd->skillitem != skill_id ) {
- //GMs don't override the skillItem check, otherwise they can use items without them being consumed! [Skotlex]
+ if (pc_has_permission(sd, PC_PERM_SKILL_UNCONDITIONAL) && sd->auto_cast_current.type != AUTOCAST_ITEM) {
+ // GMs don't override the AUTOCAST_ITEM check, otherwise they can use items without them being consumed!
sd->state.arrow_atk = skill->get_ammotype(skill_id)?1:0; //Need to do arrow state check.
sd->spiritball_old = sd->spiritball; //Need to do Spiritball check.
return 1;
@@ -15064,7 +15586,7 @@ static int skill_check_condition_castend(struct map_session_data *sd, uint16 ski
break;
}
- if (pc_is90overweight(sd) && sd->skillitem != skill_id) { /// Skill casting items ignore the overweight restriction. [Kenpachi]
+ if (pc_is90overweight(sd) && sd->auto_cast_current.type != AUTOCAST_ITEM) { // Skill casting items ignore the overweight restriction.
clif->skill_fail(sd, skill_id, USESKILL_FAIL_WEIGHTOVER, 0, 0);
return 0;
}
@@ -15170,56 +15692,16 @@ static int skill_check_condition_castend(struct map_session_data *sd, uint16 ski
clif->messagecolor_self(sd->fd, COLOR_RED, e_msg);
return 0;
}
- if (!(require.ammo&1<<sd->inventory_data[i]->subtype)) { //Ammo type check. Send the "wrong weapon type" message
- //which is the closest we have to wrong ammo type. [Skotlex]
- clif->arrow_fail(sd,0); //Haplo suggested we just send the equip-arrows message instead. [Skotlex]
- //clif->skill_fail(sd, skill_id, USESKILL_FAIL_THIS_WEAPON, 0, 0);
+ if ((require.ammo & (1 << sd->inventory_data[i]->subtype)) == 0 || !battle->check_arrows(sd)) { // Ammo type check.
+ clif->arrow_fail(sd, 0); // "Please equip the proper ammunition first."
return 0;
}
}
- for( i = 0; i < MAX_SKILL_ITEM_REQUIRE; ++i ) {
- if( !require.itemid[i] )
- continue;
- index[i] = pc->search_inventory(sd,require.itemid[i]);
- if (index[i] == INDEX_NOT_FOUND || sd->status.inventory[index[i]].amount < require.amount[i]) {
- useskill_fail_cause cause = USESKILL_FAIL_NEED_ITEM;
- switch( skill_id ){
- case NC_SILVERSNIPER:
- case NC_MAGICDECOY:
- cause = USESKILL_FAIL_STUFF_INSUFFICIENT;
- break;
- default:
- switch(require.itemid[i]){
- case ITEMID_RED_GEMSTONE:
- cause = USESKILL_FAIL_REDJAMSTONE; break;
- case ITEMID_BLUE_GEMSTONE:
- cause = USESKILL_FAIL_BLUEJAMSTONE; break;
- case ITEMID_HOLY_WATER:
- cause = USESKILL_FAIL_HOLYWATER; break;
- case ITEMID_ANSILA:
- cause = USESKILL_FAIL_ANCILLA; break;
- case ITEMID_ACCELERATOR:
- case ITEMID_HOVERING_BOOSTER:
- case ITEMID_SUICIDAL_DEVICE:
- case ITEMID_SHAPE_SHIFTER:
- case ITEMID_COOLING_DEVICE:
- case ITEMID_MAGNETIC_FIELD_GENERATOR:
- case ITEMID_BARRIER_BUILDER:
- case ITEMID_CAMOUFLAGE_GENERATOR:
- case ITEMID_REPAIR_KIT:
- case ITEMID_MONKEY_SPANNER:
- cause = USESKILL_FAIL_NEED_EQUIPMENT;
- /* Fall through */
- default:
- clif->skill_fail(sd, skill_id, cause, max(1, require.amount[i]), require.itemid[i]);
- return 0;
- }
- }
- clif->skill_fail(sd, skill_id, cause, 0, 0);
- return 0;
- }
- }
+ bool items_required = skill->items_required(sd, skill_id, skill_lv);
+
+ if (items_required && skill->check_condition_required_items(sd, skill_id, skill_lv) != 0)
+ return 0;
return 1;
}
@@ -15229,6 +15711,43 @@ static bool skill_check_condition_castend_unknown(struct map_session_data *sd, u
return false;
}
+/**
+ * Gets the array index of the first required item with sufficient amount.
+ *
+ * @param sd The character who casts the skill.
+ * @param skill_id The skill's ID.
+ * @param skill_lv The skill's level.
+ * @return A number greater than or equal to 0 on success, otherwise INDEX_NOT_FOUND (-1).
+ *
+ **/
+static int skill_get_any_item_index(struct map_session_data *sd, int skill_id, int skill_lv)
+{
+ nullpo_retr(INDEX_NOT_FOUND, sd);
+
+ int any_item_index = INDEX_NOT_FOUND;
+
+ if (skill->get_item_any_flag(skill_id, skill_lv)) {
+ struct skill_condition req = skill->get_requirement(sd, skill_id, skill_lv);
+
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ if (req.itemid[i] == 0)
+ continue;
+
+ int inv_idx = pc->search_inventory(sd, req.itemid[i]);
+
+ if (inv_idx == INDEX_NOT_FOUND)
+ continue;
+
+ if (req.amount[i] == 0 || sd->status.inventory[inv_idx].amount >= req.amount[i]) {
+ any_item_index = i;
+ break;
+ }
+ }
+ }
+
+ return any_item_index;
+}
+
// type&2: consume items (after skill was used)
// type&1: consume the others (before skill was used)
static int skill_consume_requirement(struct map_session_data *sd, uint16 skill_id, uint16 skill_lv, short type)
@@ -15237,8 +15756,10 @@ static int skill_consume_requirement(struct map_session_data *sd, uint16 skill_i
nullpo_ret(sd);
- if (sd->state.itemskill_check_conditions == 0 && skill->is_item_skill(sd, skill_id, skill_lv))
+ if ((!sd->auto_cast_current.itemskill_check_conditions && sd->auto_cast_current.type == AUTOCAST_ITEM)
+ || sd->auto_cast_current.type == AUTOCAST_IMPROVISE) {
return 1;
+ }
req = skill->get_requirement(sd,skill_id,skill_lv);
@@ -15254,7 +15775,7 @@ static int skill_consume_requirement(struct map_session_data *sd, uint16 skill_i
break;
default:
- if (sd->state.autocast == 1 || sd->skillitem == skill_id) /// Skill casting items and Hocus-Pocus skills don't consume SP. [Kenpachi]
+ if (sd->auto_cast_current.type != AUTOCAST_NONE) // Auto-cast skills don't consume SP.
req.sp = 0;
break;
@@ -15279,16 +15800,24 @@ static int skill_consume_requirement(struct map_session_data *sd, uint16 skill_i
if( type&2 )
{
struct status_change *sc = &sd->sc;
- int n,i;
+ int n;
if( !sc->count )
sc = NULL;
- for( i = 0; i < MAX_SKILL_ITEM_REQUIRE; ++i )
- {
+ bool items_required = skill->items_required(sd, skill_id, skill_lv);
+ int any_item_index = INDEX_NOT_FOUND;
+
+ if (items_required)
+ any_item_index = skill->get_any_item_index(sd, skill_id, skill_lv);
+
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE && items_required; i++) {
if( !req.itemid[i] )
continue;
+ if (any_item_index != INDEX_NOT_FOUND && any_item_index != i)
+ continue;
+
if( itemid_isgemstone(req.itemid[i]) && skill_id != HW_GANBANTEIN && sc && sc->data[SC_SOULLINK] && sc->data[SC_SOULLINK]->val2 == SL_WIZARD )
continue; //Gemstones are checked, but not subtracted from inventory.
@@ -15426,61 +15955,36 @@ static struct skill_condition skill_get_requirement(struct map_session_data *sd,
req.spiritball = skill->dbs->db[idx].spiritball[skill_lv-1];
- req.state = skill->dbs->db[idx].state;
+ req.state = skill->dbs->db[idx].state[skill_lv - 1];
req.mhp = skill->dbs->db[idx].mhp[skill_lv-1];
+ req.msp = skill->get_msp(skill_id, skill_lv);
+
req.weapon = skill->dbs->db[idx].weapon;
req.ammo_qty = skill->dbs->db[idx].ammo_qty[skill_lv-1];
if (req.ammo_qty)
req.ammo = skill->dbs->db[idx].ammo;
- if (!req.ammo && skill_id && skill->isammotype(sd, skill_id)) {
+ if (req.ammo == 0 && skill_id != 0 && skill->isammotype(sd, skill_id, skill_lv)) {
//Assume this skill is using the weapon, therefore it requires arrows.
req.ammo = 0xFFFFFFFF; //Enable use on all ammo types.
req.ammo_qty = 1;
}
for( i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++ ) {
- int item_idx = (skill_lv - 1) % MAX_SKILL_ITEM_REQUIRE;
- if ((skill_id == AM_POTIONPITCHER || skill_id == CR_SLIMPITCHER || skill_id == CR_CULTIVATION) && i != item_idx)
- continue;
-
switch( skill_id ) {
case AM_CALLHOMUN:
if (sd->status.hom_id) //Don't delete items when hom is already out.
continue;
break;
- case NC_SHAPESHIFT:
- if( i < 4 )
- continue;
- break;
- case WZ_FIREPILLAR: // celest
- if (skill_lv <= 5) // no gems required at level 1-5
- continue;
- break;
case AB_ADORAMUS:
- if( itemid_isgemstone(skill->dbs->db[idx].itemid[i]) && skill->check_pc_partner(sd,skill_id,&skill_lv, 1, 2) )
+ if (itemid_isgemstone(skill->get_itemid(skill_id, i)) && skill->check_pc_partner(sd, skill_id, &skill_lv, 1, 2) != 0)
continue;
break;
case WL_COMET:
- if( itemid_isgemstone(skill->dbs->db[idx].itemid[i]) && skill->check_pc_partner(sd,skill_id,&skill_lv, 1, 0) )
- continue;
- break;
- case GN_FIRE_EXPANSION:
- if( i < 5 )
- continue;
- break;
- case SO_SUMMON_AGNI:
- case SO_SUMMON_AQUA:
- case SO_SUMMON_VENTUS:
- case SO_SUMMON_TERA:
- case SO_WATER_INSIGNIA:
- case SO_FIRE_INSIGNIA:
- case SO_WIND_INSIGNIA:
- case SO_EARTH_INSIGNIA:
- if( i < 3 )
+ if (itemid_isgemstone(skill->get_itemid(skill_id, i)) && skill->check_pc_partner(sd, skill_id, &skill_lv, 1, 0) != 0)
continue;
break;
default:
@@ -15491,8 +15995,17 @@ static struct skill_condition skill_get_requirement(struct map_session_data *sd,
}
}
- req.itemid[i] = skill->dbs->db[idx].itemid[i];
- req.amount[i] = skill->dbs->db[idx].amount[i];
+ int amount;
+
+ if ((amount = skill->get_itemqty(skill_id, i, skill_lv)) >= 0) {
+ req.itemid[i] = skill->get_itemid(skill_id, i);
+ req.amount[i] = amount;
+ }
+
+ if ((amount = skill->get_equip_amount(skill_id, i, skill_lv)) > 0) {
+ req.equip_id[i] = skill->get_equip_id(skill_id, i);
+ req.equip_amount[i] = amount;
+ }
if (itemid_isgemstone(req.itemid[i]) && skill_id != HW_GANBANTEIN) {
if (sd->special_state.no_gemstone) {
@@ -15524,39 +16037,6 @@ static struct skill_condition skill_get_requirement(struct map_session_data *sd,
}
}
- /* requirements are level-dependent */
- switch( skill_id ) {
- case NC_SHAPESHIFT:
- case GN_FIRE_EXPANSION:
- case SO_SUMMON_AGNI:
- case SO_SUMMON_AQUA:
- case SO_SUMMON_VENTUS:
- case SO_SUMMON_TERA:
- case SO_WATER_INSIGNIA:
- case SO_FIRE_INSIGNIA:
- case SO_WIND_INSIGNIA:
- case SO_EARTH_INSIGNIA:
- req.itemid[skill_lv-1] = skill->dbs->db[idx].itemid[skill_lv-1];
- req.amount[skill_lv-1] = skill->dbs->db[idx].amount[skill_lv-1];
- break;
- }
- if (skill_id == NC_REPAIR) {
- switch(skill_lv) {
- case 1:
- case 2:
- req.itemid[1] = ITEMID_REPAIRA;
- break;
- case 3:
- case 4:
- req.itemid[1] = ITEMID_REPAIRB;
- break;
- case 5:
- req.itemid[1] = ITEMID_REPAIRC;
- break;
- }
- req.amount[1] = 1;
- }
-
// Check for cost reductions due to skills & SCs
switch(skill_id) {
case MC_MAMMONITE:
@@ -15742,6 +16222,8 @@ static int skill_castfix_sc(struct block_list *bl, int time)
}
if (sc->data[SC_POEMBRAGI])
time -= time * sc->data[SC_POEMBRAGI]->val2 / 100;
+ if (sc->data[SC_SKF_CAST] != NULL)
+ time -= time * sc->data[SC_SKF_CAST]->val1 / 100;
if (sc->data[SC_IZAYOI])
time -= time * 50 / 100;
}
@@ -15843,6 +16325,8 @@ static int skill_vfcastfix(struct block_list *bl, double time, uint16 skill_id,
}
if (sc->data[SC_MYSTICSCROLL])
VARCAST_REDUCTION(sc->data[SC_MYSTICSCROLL]->val1);
+ if (sc->data[SC_SKF_CAST] != NULL)
+ VARCAST_REDUCTION(sc->data[SC_SKF_CAST]->val1);
// Fixed cast reduction bonuses
if( sc->data[SC__LAZINESS] )
@@ -16597,7 +17081,7 @@ static int skill_clear_group(struct block_list *bl, int flag)
}
for (i=0;i<count;i++)
- skill->del_unitgroup(group[i],ALC_MARK);
+ skill->del_unitgroup(group[i]);
return count;
}
@@ -16956,7 +17440,7 @@ static int skill_trap_splash(struct block_list *bl, va_list ap)
}
/* Fall through */
default:
- skill->attack(skill->get_type(sg->skill_id), ss, src, bl, sg->skill_id, sg->skill_lv, tick, enemy_count);
+ skill->attack(skill->get_type(sg->skill_id, sg->skill_lv), ss, src, bl, sg->skill_id, sg->skill_lv, tick, enemy_count);
break;
}
return 1;
@@ -17245,7 +17729,7 @@ static int skill_delunit(struct skill_unit *su)
map->deliddb(&su->bl);
idb_remove(skill->unit_db, su->bl.id);
if(--group->alive_count==0)
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
return 0;
}
@@ -17304,7 +17788,7 @@ static struct skill_unit_group *skill_initunitgroup(struct block_list *src, int
j = i;
}
}
- skill->del_unitgroup(ud->skillunit[j],ALC_MARK);
+ skill->del_unitgroup(ud->skillunit[j]);
//Since elements must have shifted, we use the last slot.
i = MAX_SKILLUNITGROUP-1;
}
@@ -17343,18 +17827,13 @@ static struct skill_unit_group *skill_initunitgroup(struct block_list *src, int
/*==========================================
*
*------------------------------------------*/
-static int skill_delunitgroup(struct skill_unit_group *group, const char *file, int line, const char *func)
+static int skill_delunitgroup(struct skill_unit_group *group)
{
struct block_list* src;
struct unit_data *ud;
int i,j;
struct map_session_data *sd = NULL;
- if( group == NULL ) {
- ShowDebug("skill_delunitgroup: group is NULL (source=%s:%d, %s)! Please report this! (#3504)\n", file, line, func);
- return 0;
- }
-
src = map->id2bl(group->src_id);
ud = unit->bl2ud(src);
sd = BL_CAST(BL_PC, src);
@@ -17486,7 +17965,7 @@ static int skill_clear_unitgroup(struct block_list *src)
nullpo_ret(ud);
while (ud->skillunit[0])
- skill->del_unitgroup(ud->skillunit[0],ALC_MARK);
+ skill->del_unitgroup(ud->skillunit[0]);
return 1;
}
@@ -17645,7 +18124,7 @@ static int skill_unit_timer_sub(union DBKey key, struct DBData *data, va_list ap
case UNT_WARP_ACTIVE:
// warp portal opens (morph to a UNT_WARP_WAITING cell)
- group->unit_id = skill->get_unit_id(group->skill_id, 1); // UNT_WARP_WAITING
+ group->unit_id = skill->get_unit_id(group->skill_id, group->skill_lv, 1); // UNT_WARP_WAITING
clif->changelook(&su->bl, LOOK_BASE, group->unit_id);
// restart timers
group->limit = skill->get_time(group->skill_id,group->skill_lv);
@@ -18772,12 +19251,12 @@ static int skill_poisoningweapon(struct map_session_data *sd, int nameid)
return 0;
}
-static void skill_toggle_magicpower(struct block_list *bl, uint16 skill_id)
+static void skill_toggle_magicpower(struct block_list *bl, uint16 skill_id, int skill_lv)
{
struct status_change *sc = status->get_sc(bl);
// non-offensive and non-magic skills do not affect the status
- if (skill->get_nk(skill_id)&NK_NO_DAMAGE || !(skill->get_type(skill_id)&BF_MAGIC))
+ if ((skill->get_nk(skill_id) & NK_NO_DAMAGE) != 0 || (skill->get_type(skill_id, skill_lv) & BF_MAGIC) == 0)
return;
if (sc && sc->count && sc->data[SC_MAGICPOWER]) {
@@ -18911,14 +19390,20 @@ static int skill_select_menu(struct map_session_data *sd, uint16 skill_id)
idx = skill->get_index(skill_id);
- if( skill_id >= GS_GLITTERING || skill->get_type(skill_id) != BF_MAGIC ||
- (id = sd->status.skill[idx].id) == 0 || sd->status.skill[idx].flag != SKILL_FLAG_PLAGIARIZED ) {
+ if (skill_id >= GS_GLITTERING || (id = sd->status.skill[idx].id) == 0
+ || sd->status.skill[idx].flag != SKILL_FLAG_PLAGIARIZED) {
clif->skill_fail(sd, SC_AUTOSHADOWSPELL, 0, 0, 0);
return 0;
}
lv = (aslvl + 1) / 2; // The level the skill will be autocasted
- lv = min(lv,sd->status.skill[idx].lv);
+ lv = min(lv, sd->status.skill[idx].lv);
+
+ if (skill->get_type(skill_id, lv) != BF_MAGIC) {
+ clif->skill_fail(sd, SC_AUTOSHADOWSPELL, 0, 0, 0);
+ return 0;
+ }
+
prob = (aslvl == 10) ? 15 : (32 - 2 * aslvl); // Probability at level 10 was increased to 15.
sc_start4(&sd->bl,&sd->bl,SC__AUTOSHADOWSPELL,100,id,lv,prob,0,skill->get_time(SC_AUTOSHADOWSPELL,aslvl));
return 0;
@@ -20059,9 +20544,6 @@ static bool skill_parse_row_changematerialdb(char *split[], int columns, int cur
return true;
}
-#define skilldb_duplicate_warning(name, setting, skill) (ShowError("skill_read_skilldb: Duplicate entry '%s' in setting '%s' for Skill Id %d in '%s', skipping...\n", name, setting, skill, "db/"DBPATH"skill_db.conf"))
-#define skilldb_invalid_error(name, setting, skill) (ShowError("skill_read_skilldb: Invalid entry '%s' in setting '%s' for Skill Id %d in '%s', skipping...\n", name, setting, skill, "db/"DBPATH"skill_db.conf"))
-
/**
* Sets Level based configuration for skill groups from skill_db.conf [ Smokexyz/Hercules ]
* @param *conf pointer to config setting.
@@ -20106,295 +20588,549 @@ static void skill_level_set_value(int *arr, int value)
}
}
-static void skill_validate_hittype(struct config_setting_t *conf, struct s_skill_db *sk)
+/**
+ * Validates a skill's ID when reading the skill DB.
+ * If validating fails, the ID is set to 0.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the ID should be set it.
+ * @param conf_index The 1-based index of the currently processed libconfig settings block.
+ *
+ **/
+static void skill_validate_id(struct config_setting_t *conf, struct s_skill_db *sk, int conf_index)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ sk->nameid = 0;
+
+ int id;
+
+ if (libconfig->setting_lookup_int(conf, "Id", &id) == CONFIG_FALSE)
+ ShowError("%s: No skill ID specified in entry %d in %s! Skipping skill...\n",
+ __func__, conf_index, conf->file);
+ else if (id <= 0)
+ ShowError("%s: Invalid skill ID %d specified in entry %d in %s! Skipping skill...\n",
+ __func__, id, conf_index, conf->file);
+ else if(skill->get_index(id) == 0)
+ ShowError("%s: Skill ID %d in entry %d in %s is out of range, or within a reserved range (for guild, homunculus, mercenary or elemental skills)! Skipping skill...\n",
+ __func__, id, conf_index, conf->file);
+ else if (*skill->get_name(id) != '\0')
+ ShowError("%s: Duplicate skill ID %d in entry %d in %s! Skipping skill...\n",
+ __func__, id, conf_index, conf->file);
+ else
+ sk->nameid = id;
+}
+
+/**
+ * Validates if a skill's name contains invalid characters when reading the skill DB.
+ *
+ * @param name The name to validate.
+ * @return True if the passed name is a NULL pointer or contains at least one invalid character, otherwise false.
+ *
+ **/
+static bool skill_name_contains_invalid_character(const char *name)
{
- const char *type = NULL;
+ nullpo_retr(true, name);
+
+ for (int i = 0; i < MAX_SKILL_NAME_LENGTH && name[i] != '\0'; i++) {
+ if (ISALNUM(name[i]) == 0 && name[i] != '_')
+ return true;
+ }
+ return false;
+}
+
+/**
+ * Validates a skill's name when reading the skill DB.
+ * If validating fails, the name is set to an enpty string.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the name should be set it.
+ *
+ **/
+static void skill_validate_name(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
nullpo_retv(sk);
- if (libconfig->setting_lookup_string(conf, "Hit", &type)) {
- if (strcmpi(type, "BDT_SKILL") == 0) {
- sk->hit = BDT_SKILL;
- } else if (strcmpi(type, "BDT_MULTIHIT") == 0) {
- sk->hit = BDT_MULTIHIT;
- } else if (strcmpi(type, "BDT_NORMAL") == 0) {
- sk->hit = BDT_NORMAL;
- } else {
- skilldb_invalid_error(type, "Hit", sk->nameid);
+
+ *sk->name = '\0';
+
+ const char *name;
+
+ if (libconfig->setting_lookup_string(conf, "Name", &name) == CONFIG_FALSE || *name == '\0')
+ ShowError("%s: No name specified for skill ID %d in %s! Skipping skill...\n",
+ __func__, sk->nameid, conf->file);
+ else if (strlen(name) >= sizeof(sk->name))
+ ShowError("%s: Specified name %s for skill ID %d in %s is too long: %lu! Maximum is %lu. Skipping skill...\n",
+ __func__, name, sk->nameid, conf->file, strlen(name), sizeof(sk->name) - 1);
+ else if (skill->name_contains_invalid_character(name))
+ ShowError("%s: Specified name %s for skill ID %d in %s contains invalid characters! Allowed characters are letters, numbers and underscores. Skipping skill...\n",
+ __func__, name, sk->nameid, conf->file);
+ else if (skill->name2id(name) != 0)
+ ShowError("%s: Duplicate name %s for skill ID %d in %s! Skipping skill...\n",
+ __func__, name, sk->nameid, conf->file);
+ else
+ safestrncpy(sk->name, name, sizeof(sk->name));
+}
+
+/**
+ * Validates a skill's maximum level when reading the skill DB.
+ * If validating fails, the maximum level is set to 0.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the maximum level should be set it.
+ *
+ **/
+static void skill_validate_max_level(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ sk->max = 0;
+
+ int max_level;
+
+ if (libconfig->setting_lookup_int(conf, "MaxLevel", &max_level) == CONFIG_FALSE)
+ ShowError("%s: No maximum level specified for skill ID %d in %s! Skipping skill...\n",
+ __func__, sk->nameid, conf->file);
+ else if (max_level < 1 || max_level > MAX_SKILL_LEVEL)
+ ShowError("%s: Invalid maximum level %d specified for skill ID %d in %s! Minimum is 1, maximum is %d. Skipping skill...\n",
+ __func__, max_level, sk->nameid, conf->file, MAX_SKILL_LEVEL);
+ else
+ sk->max = max_level;
+}
+
+/**
+ * Validates a skill's description when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the description should be set it.
+ *
+ **/
+static void skill_validate_description(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ *sk->desc = '\0';
+
+ const char *description;
+
+ if (libconfig->setting_lookup_string(conf, "Description", &description) == CONFIG_TRUE && *description != '\0') {
+ if (strlen(description) >= sizeof(sk->desc))
+ ShowWarning("%s: Specified description '%s' for skill ID %d in %s is too long: %lu! Maximum is %lu. Trimming...\n",
+ __func__, description, sk->nameid, conf->file, strlen(description), sizeof(sk->desc) - 1);
+
+ safestrncpy(sk->desc, description, sizeof(sk->desc));
+ }
+}
+
+/**
+ * Validates a skill's range when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the range should be set it.
+ *
+ **/
+static void skill_validate_range(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->range, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Range");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int range;
+
+ if (libconfig->setting_lookup_int(t, lv, &range) == CONFIG_TRUE) {
+ if (range >= SHRT_MIN && range <= SHRT_MAX)
+ sk->range[i] = range;
+ else
+ ShowWarning("%s: Invalid range %d specified in level %d for skill ID %d in %s! Minimum is %d, maximum is %d. Defaulting to 0...\n",
+ __func__, range, i + 1, sk->nameid, conf->file, SHRT_MIN, SHRT_MAX);
+ }
+ }
+
+ return;
+ }
+
+ int range;
+
+ if (libconfig->setting_lookup_int(conf, "Range", &range) == CONFIG_TRUE) {
+ if (range >= SHRT_MIN && range <= SHRT_MAX)
+ skill->level_set_value(sk->range, range);
+ else
+ ShowWarning("%s: Invalid range %d specified for skill ID %d in %s! Minimum is %d, maximum is %d. Defaulting to 0...\n",
+ __func__, range, sk->nameid, conf->file, SHRT_MIN, SHRT_MAX);
+ }
+}
+
+/**
+ * Validates a skill's hit type when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the hit type should be set it.
+ *
+ **/
+static void skill_validate_hittype(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->hit, BDT_NORMAL);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Hit");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ const char *hit_type;
+
+ if (libconfig->setting_lookup_string(t, lv, &hit_type) == CONFIG_TRUE) {
+ if (strcmpi(hit_type, "BDT_SKILL") == 0)
+ sk->hit[i] = BDT_SKILL;
+ else if (strcmpi(hit_type, "BDT_MULTIHIT") == 0)
+ sk->hit[i] = BDT_MULTIHIT;
+ else if (strcmpi(hit_type, "BDT_NORMAL") != 0)
+ ShowWarning("%s: Invalid hit type %s specified in level %d for skill ID %d in %s! Defaulting to BDT_NORMAL...\n",
+ __func__, hit_type, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ const char *hit_type;
+
+ if (libconfig->setting_lookup_string(conf, "Hit", &hit_type) == CONFIG_TRUE) {
+ int hit = BDT_NORMAL;
+
+ if (strcmpi(hit_type, "BDT_SKILL") == 0) {
+ hit = BDT_SKILL;
+ } else if (strcmpi(hit_type, "BDT_MULTIHIT") == 0) {
+ hit = BDT_MULTIHIT;
+ } else if (strcmpi(hit_type, "BDT_NORMAL") != 0) {
+ ShowWarning("%s: Invalid hit type %s specified for skill ID %d in %s! Defaulting to BDT_NORMAL...\n",
+ __func__, hit_type, sk->nameid, conf->file);
return;
}
+
+ skill->level_set_value(sk->hit, hit);
}
}
/**
- * Validates "SkillType" when reading skill_db.conf
- * @param conf struct, pointer to skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return (void)
- */
+ * Validates a skill's types when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the types should be set it.
+ *
+ **/
static void skill_validate_skilltype(struct config_setting_t *conf, struct s_skill_db *sk)
{
- struct config_setting_t *t = NULL, *tt = NULL;
-
+ nullpo_retv(conf);
nullpo_retv(sk);
- if((t=libconfig->setting_get_member(conf, "SkillType")) && config_setting_is_group(t)) {
- int j=0;
- while ((tt = libconfig->setting_get_elem(t, j++))) {
- const char *type = config_setting_name(tt);
+
+ sk->inf = INF_NONE;
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SkillType");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ struct config_setting_t *tt;
+ int i = 0;
+
+ while ((tt = libconfig->setting_get_elem(t, i++)) != NULL) {
+ const char *skill_type = config_setting_name(tt);
bool on = libconfig->setting_get_bool_real(tt);
- if (strcmpi(type, "Enemy") == 0) {
- if (on) {
+ if (strcmpi(skill_type, "Enemy") == 0) {
+ if (on)
sk->inf |= INF_ATTACK_SKILL;
- } else {
+ else
sk->inf &= ~INF_ATTACK_SKILL;
- }
- } else if (strcmpi(type, "Place") == 0) {
- if (on) {
+ } else if (strcmpi(skill_type, "Place") == 0) {
+ if (on)
sk->inf |= INF_GROUND_SKILL;
- } else {
+ else
sk->inf &= ~INF_GROUND_SKILL;
- }
- } else if (strcmpi(type, "Self") == 0) {
- if (on) {
+ } else if (strcmpi(skill_type, "Self") == 0) {
+ if (on)
sk->inf |= INF_SELF_SKILL;
- } else {
+ else
sk->inf &= ~INF_SELF_SKILL;
- }
- } else if (strcmpi(type, "Friend") == 0) {
- if (on) {
+ } else if (strcmpi(skill_type, "Friend") == 0) {
+ if (on)
sk->inf |= INF_SUPPORT_SKILL;
- } else {
+ else
sk->inf &= ~INF_SUPPORT_SKILL;
- }
- } else if (strcmpi(type, "Trap") == 0) {
- if (on) {
+ } else if (strcmpi(skill_type, "Trap") == 0) {
+ if (on)
sk->inf |= INF_TARGET_TRAP;
- } else {
+ else
sk->inf &= ~INF_TARGET_TRAP;
- }
- } else if (strcmpi(type, "Passive") != 0) {
- skilldb_invalid_error(type, config_setting_name(t), sk->nameid);
+ } else if (strcmpi(skill_type, "Passive") != 0) {
+ ShowWarning("%s: Invalid skill type %s specified for skill ID %d in %s! Skipping type...\n",
+ __func__, skill_type, sk->nameid, conf->file);
}
}
}
}
/**
- * Validates "SkillInfo" when reading skill_db.conf
- * @param conf struct, pointer to skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return (void)
- */
+ * Validates a skill's sub-types when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the sub-types should be set it.
+ *
+ **/
static void skill_validate_skillinfo(struct config_setting_t *conf, struct s_skill_db *sk)
{
- struct config_setting_t *t = NULL, *tt = NULL;
-
+ nullpo_retv(conf);
nullpo_retv(sk);
- if ((t=libconfig->setting_get_member(conf, "SkillInfo")) && config_setting_is_group(t)) {
- int j=0;
- while ((tt = libconfig->setting_get_elem(t, j++))) {
- const char *type = config_setting_name(tt);
+
+ sk->inf2 = INF2_NONE;
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SkillInfo");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ struct config_setting_t *tt;
+ int i = 0;
+
+ while ((tt = libconfig->setting_get_elem(t, i++)) != NULL) {
+ const char *skill_info = config_setting_name(tt);
bool on = libconfig->setting_get_bool_real(tt);
- if (strcmpi(type, "Quest") == 0) {
- if (on) {
+ if (strcmpi(skill_info, "Quest") == 0) {
+ if (on)
sk->inf2 |= INF2_QUEST_SKILL;
- } else {
+ else
sk->inf2 &= ~INF2_QUEST_SKILL;
- }
- } else if (strcmpi(type, "NPC") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "NPC") == 0) {
+ if (on)
sk->inf2 |= INF2_NPC_SKILL;
- } else {
+ else
sk->inf2 &= ~INF2_NPC_SKILL;
- }
- } else if (strcmpi(type, "Wedding") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "Wedding") == 0) {
+ if (on)
sk->inf2 |= INF2_WEDDING_SKILL;
- } else {
+ else
sk->inf2 &= ~INF2_WEDDING_SKILL;
- }
- } else if (strcmpi(type, "Spirit") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "Spirit") == 0) {
+ if (on)
sk->inf2 |= INF2_SPIRIT_SKILL;
- } else {
+ else
sk->inf2 &= ~INF2_SPIRIT_SKILL;
- }
- } else if (strcmpi(type, "Guild") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "Guild") == 0) {
+ if (on)
sk->inf2 |= INF2_GUILD_SKILL;
- } else {
+ else
sk->inf2 &= ~INF2_GUILD_SKILL;
- }
- } else if (strcmpi(type, "Song") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "Song") == 0) {
+ if (on)
sk->inf2 |= INF2_SONG_DANCE;
- } else {
+ else
sk->inf2 &= ~INF2_SONG_DANCE;
- }
- } else if (strcmpi(type, "Ensemble") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "Ensemble") == 0) {
+ if (on)
sk->inf2 |= INF2_ENSEMBLE_SKILL;
- } else {
+ else
sk->inf2 &= ~INF2_ENSEMBLE_SKILL;
- }
- } else if (strcmpi(type, "Trap") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "Trap") == 0) {
+ if (on)
sk->inf2 |= INF2_TRAP;
- } else {
+ else
sk->inf2 &= ~INF2_TRAP;
- }
- } else if (strcmpi(type, "TargetSelf") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "TargetSelf") == 0) {
+ if (on)
sk->inf2 |= INF2_TARGET_SELF;
- } else {
+ else
sk->inf2 &= ~INF2_TARGET_SELF;
- }
- } else if (strcmpi(type, "NoCastSelf") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "NoCastSelf") == 0) {
+ if (on)
sk->inf2 |= INF2_NO_TARGET_SELF;
- } else {
+ else
sk->inf2 &= ~INF2_NO_TARGET_SELF;
- }
- } else if (strcmpi(type, "PartyOnly") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "PartyOnly") == 0) {
+ if (on)
sk->inf2 |= INF2_PARTY_ONLY;
- } else {
+ else
sk->inf2 &= ~INF2_PARTY_ONLY;
- }
- } else if (strcmpi(type, "GuildOnly") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "GuildOnly") == 0) {
+ if (on)
sk->inf2 |= INF2_GUILD_ONLY;
- } else {
+ else
sk->inf2 &= ~INF2_GUILD_ONLY;
- }
- } else if (strcmpi(type, "NoEnemy") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "NoEnemy") == 0) {
+ if (on)
sk->inf2 |= INF2_NO_ENEMY;
- } else {
+ else
sk->inf2 &= ~INF2_NO_ENEMY;
- }
- } else if (strcmpi(type, "IgnoreLandProtector") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "IgnoreLandProtector") == 0) {
+ if (on)
sk->inf2 |= INF2_NOLP;
- } else {
+ else
sk->inf2 &= ~INF2_NOLP;
- }
- } else if (strcmpi(type, "Chorus") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "Chorus") == 0) {
+ if (on)
sk->inf2 |= INF2_CHORUS_SKILL;
- } else {
+ else
sk->inf2 &= ~INF2_CHORUS_SKILL;
- }
- } else if (strcmpi(type, "FreeCastNormal") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "FreeCastNormal") == 0) {
+ if (on)
sk->inf2 |= INF2_FREE_CAST_NORMAL;
- } else {
+ else
sk->inf2 &= ~INF2_FREE_CAST_NORMAL;
- }
- } else if (strcmpi(type, "FreeCastReduced") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "FreeCastReduced") == 0) {
+ if (on)
sk->inf2 |= INF2_FREE_CAST_REDUCED;
- } else {
+ else
sk->inf2 &= ~INF2_FREE_CAST_REDUCED;
- }
- } else if (strcmpi(type, "ShowSkillScale") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "ShowSkillScale") == 0) {
+ if (on)
sk->inf2 |= INF2_SHOW_SKILL_SCALE;
- } else {
+ else
sk->inf2 &= ~INF2_SHOW_SKILL_SCALE;
- }
- } else if (strcmpi(type, "AllowReproduce") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "AllowReproduce") == 0) {
+ if (on)
sk->inf2 |= INF2_ALLOW_REPRODUCE;
- } else {
+ else
sk->inf2 &= ~INF2_ALLOW_REPRODUCE;
- }
- } else if (strcmpi(type, "HiddenTrap") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "HiddenTrap") == 0) {
+ if (on)
sk->inf2 |= INF2_HIDDEN_TRAP;
- } else {
+ else
sk->inf2 &= ~INF2_HIDDEN_TRAP;
- }
- } else if (strcmpi(type, "IsCombo") == 0) {
- if (on) {
+ } else if (strcmpi(skill_info, "IsCombo") == 0) {
+ if (on)
sk->inf2 |= INF2_IS_COMBO_SKILL;
- } else {
+ else
sk->inf2 &= ~INF2_IS_COMBO_SKILL;
- }
- } else if (strcmpi(type, "None") != 0) {
- skilldb_invalid_error(type, config_setting_name(t), sk->nameid);
+ } else if (strcmpi(skill_info, "None") != 0) {
+ ShowWarning("%s: Invalid sub-type %s specified for skill ID %d in %s! Skipping sub-type...\n",
+ __func__, skill_info, sk->nameid, conf->file);
}
}
}
}
/**
- * Validates "AttackType" when reading skill_db.conf
- * @param conf struct, pointer to skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return (void)
- */
+ * Validates a skill's attack type when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the attack type should be set it.
+ *
+ **/
static void skill_validate_attacktype(struct config_setting_t *conf, struct s_skill_db *sk)
{
- const char *type = NULL;
-
+ nullpo_retv(conf);
nullpo_retv(sk);
- if (libconfig->setting_lookup_string(conf, "AttackType", &type)) {
- if (!strcmpi(type, "Weapon")) {
- sk->skill_type = BF_WEAPON;
- } else if (!strcmpi(type, "Magic")) {
- sk->skill_type = BF_MAGIC;
- } else if (!strcmpi(type, "Misc")) {
- sk->skill_type = BF_MISC;
- } else {
- skilldb_invalid_error(type, "AttackType", sk->nameid);
+
+ skill->level_set_value(sk->skill_type, BF_NONE);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "AttackType");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ const char *attack_type;
+
+ if (libconfig->setting_lookup_string(t, lv, &attack_type) == CONFIG_TRUE) {
+ if (strcmpi(attack_type, "Weapon") == 0)
+ sk->skill_type[i] = BF_WEAPON;
+ else if (strcmpi(attack_type, "Magic") == 0)
+ sk->skill_type[i] = BF_MAGIC;
+ else if (strcmpi(attack_type, "Misc") == 0)
+ sk->skill_type[i] = BF_MISC;
+ else if (strcmpi(attack_type, "None") != 0)
+ ShowWarning("%s: Invalid attack type %s specified in level %d for skill ID %d in %s! Defaulting to None...\n",
+ __func__, attack_type, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ const char *attack_type;
+
+ if (libconfig->setting_lookup_string(conf, "AttackType", &attack_type) == CONFIG_TRUE) {
+ int attack = BF_NONE;
+
+ if (strcmpi(attack_type, "Weapon") == 0) {
+ attack = BF_WEAPON;
+ } else if (strcmpi(attack_type, "Magic") == 0) {
+ attack = BF_MAGIC;
+ } else if (strcmpi(attack_type, "Misc") == 0) {
+ attack = BF_MISC;
+ } else if (strcmpi(attack_type, "None") != 0) {
+ ShowWarning("%s: Invalid attack type %s specified for skill ID %d in %s! Defaulting to None...\n",
+ __func__, attack_type, sk->nameid, conf->file);
return;
}
+
+ skill->level_set_value(sk->skill_type, attack);
}
}
/**
- * Validates "Element" when reading skill_db.conf
- * @param ele_t struct, pointer to skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return (void)
- */
+ * Validates a skill's element when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the element should be set it.
+ *
+ **/
static void skill_validate_element(struct config_setting_t *conf, struct s_skill_db *sk)
{
- const char *type = NULL;
- struct config_setting_t *t = NULL;
-
+ nullpo_retv(conf);
nullpo_retv(sk);
- if ((t=libconfig->setting_get_member(conf, "Element")) && config_setting_is_group(t)) {
- int j = 0;
- char lv[6]; // enough to contain "Lv100" in case of custom MAX_SKILL_LEVEL
- for (j=0; j < MAX_SKILL_LEVEL; j++) {
- sprintf(lv, "Lv%d",j+1);
- if (libconfig->setting_lookup_string(t, lv, &type)) {
- if (strcmpi(type,"Ele_Weapon") == 0)
- sk->element[j] = -1;
- else if (strcmpi(type,"Ele_Endowed") == 0)
- sk->element[j] = -2;
- else if (strcmpi(type,"Ele_Random") == 0)
- sk->element[j] = -3;
- else if (!script->get_constant(type,&sk->element[j]))
- skilldb_invalid_error(type, config_setting_name(conf), sk->nameid);
+ skill->level_set_value(sk->element, ELE_NEUTRAL);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Element");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ const char *element;
+
+ if (libconfig->setting_lookup_string(t, lv, &element) == CONFIG_TRUE) {
+ if (strcmpi(element, "Ele_Weapon") == 0)
+ sk->element[i] = -1;
+ else if (strcmpi(element, "Ele_Endowed") == 0)
+ sk->element[i] = -2;
+ else if (strcmpi(element, "Ele_Random") == 0)
+ sk->element[i] = -3;
+ else if (!script->get_constant(element, &sk->element[i]))
+ ShowWarning("%s: Invalid element %s specified in level %d for skill ID %d in %s! Defaulting to Ele_Neutral...\n",
+ __func__, element, i + 1, sk->nameid, conf->file);
}
}
- } else if (libconfig->setting_lookup_string(conf, "Element", &type)) {
- int ele = 0;
+ return;
+ }
+
+ const char *element;
- if (strcmpi(type,"Ele_Weapon") == 0)
+ if (libconfig->setting_lookup_string(conf, "Element", &element) == CONFIG_TRUE) {
+ int ele = ELE_NEUTRAL;
+
+ if (strcmpi(element, "Ele_Weapon") == 0) {
ele = -1;
- else if (strcmpi(type,"Ele_Endowed") == 0)
+ } else if (strcmpi(element, "Ele_Endowed") == 0) {
ele = -2;
- else if (strcmpi(type,"Ele_Random") == 0)
+ } else if (strcmpi(element, "Ele_Random") == 0) {
ele = -3;
- else if (!script->get_constant(type, &ele)) {
- skilldb_invalid_error(type, config_setting_name(conf), sk->nameid);
+ } else if (!script->get_constant(element, &ele)) {
+ ShowWarning("%s: Invalid element %s specified for skill ID %d in %s! Defaulting to Ele_Neutral...\n",
+ __func__, element, sk->nameid, conf->file);
return;
}
@@ -20403,696 +21139,2516 @@ static void skill_validate_element(struct config_setting_t *conf, struct s_skill
}
/**
- * Validates "DamageType" when reading skill_db.conf
- * @param conf struct, pointer to skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return (void)
- */
+ * Validates a skill's damage types when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the damage types should be set it.
+ *
+ **/
static void skill_validate_damagetype(struct config_setting_t *conf, struct s_skill_db *sk)
{
- struct config_setting_t *t = NULL, *tt = NULL;
-
+ nullpo_retv(conf);
nullpo_retv(sk);
- if ((t=libconfig->setting_get_member(conf, "DamageType")) && config_setting_is_group(t)) {
- int j=0;
- while ((tt = libconfig->setting_get_elem(t, j++))) {
- const char *type = config_setting_name(tt);
+
+ sk->nk = NK_NONE;
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "DamageType");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ struct config_setting_t *tt;
+ int i = 0;
+
+ while ((tt = libconfig->setting_get_elem(t, i++)) != NULL) {
+ const char *damage_type = config_setting_name(tt);
bool on = libconfig->setting_get_bool_real(tt);
- if (strcmpi(type, "NoDamage") == 0) {
- if (on) {
+ if (strcmpi(damage_type, "NoDamage") == 0) {
+ if (on)
sk->nk |= NK_NO_DAMAGE;
- } else {
+ else
sk->nk &= ~NK_NO_DAMAGE;
- }
- } else if (strcmpi(type, "SplashArea") == 0) {
- if (on) {
+ } else if (strcmpi(damage_type, "SplashArea") == 0) {
+ if (on)
sk->nk |= NK_SPLASH_ONLY;
- } else {
+ else
sk->nk &= ~NK_SPLASH_ONLY;
- }
- } else if (strcmpi(type, "SplitDamage") == 0) {
- if (on) {
+ } else if (strcmpi(damage_type, "SplitDamage") == 0) {
+ if (on)
sk->nk |= NK_SPLASHSPLIT;
- } else {
+ else
sk->nk &= ~NK_SPLASHSPLIT;
- }
- } else if (strcmpi(type, "IgnoreCards") == 0) {
- if (on) {
+ } else if (strcmpi(damage_type, "IgnoreCards") == 0) {
+ if (on)
sk->nk |= NK_NO_CARDFIX_ATK;
- } else {
+ else
sk->nk &= ~NK_NO_CARDFIX_ATK;
- }
- } else if (strcmpi(type, "IgnoreElement") == 0) {
- if (on) {
+ } else if (strcmpi(damage_type, "IgnoreElement") == 0) {
+ if (on)
sk->nk |= NK_NO_ELEFIX;
- } else {
+ else
sk->nk &= ~NK_NO_ELEFIX;
- }
- } else if (strcmpi(type, "IgnoreDefense") == 0) {
- if (on) {
+ } else if (strcmpi(damage_type, "IgnoreDefense") == 0) {
+ if (on)
sk->nk |= NK_IGNORE_DEF;
- } else {
+ else
sk->nk &= ~NK_IGNORE_DEF;
- }
- } else if (strcmpi(type, "IgnoreFlee") == 0) {
- if (on) {
+ } else if (strcmpi(damage_type, "IgnoreFlee") == 0) {
+ if (on)
sk->nk |= NK_IGNORE_FLEE;
- } else {
+ else
sk->nk &= ~NK_IGNORE_FLEE;
- }
- } else if (strcmpi(type, "IgnoreDefCards") == 0) {
- if (on) {
+ } else if (strcmpi(damage_type, "IgnoreDefCards") == 0) {
+ if (on)
sk->nk |= NK_NO_CARDFIX_DEF;
- } else {
+ else
sk->nk &= ~NK_NO_CARDFIX_DEF;
- }
} else {
- skilldb_invalid_error(type, config_setting_name(t), sk->nameid);
+ ShowWarning("%s: Invalid damage type %s specified for skill ID %d in %s! Skipping damage type...\n",
+ __func__, damage_type, sk->nameid, conf->file);
}
}
}
+
+ if (sk->nk == NK_NONE)
+ sk->nk = NK_NO_DAMAGE;
}
/**
- * Validates "SkillCast/DelayOptions" when reading skill_db.conf
- * @param conf struct, pointer to skill configuration
- * @param sk struct, pointer to s_skill_db
- * @param delay boolean, switch for cast/delay setting
- * @return (void)
- */
-static void skill_validate_castnodex(struct config_setting_t *conf, struct s_skill_db *sk, bool delay)
+ * Validates a skill's splash range when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the splash range should be set it.
+ *
+ **/
+static void skill_validate_splash_range(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->splash, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SplashRange");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int splash_range;
+
+ if (libconfig->setting_lookup_int(t, lv, &splash_range) == CONFIG_TRUE) {
+ if (splash_range >= SHRT_MIN && splash_range <= SHRT_MAX)
+ sk->splash[i] = splash_range;
+ else
+ ShowWarning("%s: Invalid splash range %d specified in level %d for skill ID %d in %s! Minimum is %d, maximum is %d. Defaulting to 0...\n",
+ __func__, splash_range, i + 1, sk->nameid, conf->file, SHRT_MIN, SHRT_MAX);
+ }
+ }
+
+ return;
+ }
+
+ int splash_range;
+
+ if (libconfig->setting_lookup_int(conf, "SplashRange", &splash_range) == CONFIG_TRUE) {
+ if (splash_range >= SHRT_MIN && splash_range <= SHRT_MAX)
+ skill->level_set_value(sk->splash, splash_range);
+ else
+ ShowWarning("%s: Invalid splash range %d specified for skill ID %d in %s! Minimum is %d, maximum is %d. Defaulting to 0...\n",
+ __func__, splash_range, sk->nameid, conf->file, SHRT_MIN, SHRT_MAX);
+ }
+}
+
+/**
+ * Validates a skill's number of hits when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the number of hits should be set it.
+ *
+ **/
+static void skill_validate_number_of_hits(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->num, 1);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "NumberOfHits");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int number_of_hits;
+
+ if (libconfig->setting_lookup_int(t, lv, &number_of_hits) == CONFIG_TRUE) {
+ if (number_of_hits >= SHRT_MIN && number_of_hits <= SHRT_MAX)
+ sk->num[i] = number_of_hits;
+ else
+ ShowWarning("%s: Invalid number of hits %d specified in level %d for skill ID %d in %s! Minimum is %d, maximum is %d. Defaulting to 1...\n",
+ __func__, number_of_hits, i + 1, sk->nameid, conf->file, SHRT_MIN, SHRT_MAX);
+ }
+ }
+
+ return;
+ }
+
+ int number_of_hits;
+
+ if (libconfig->setting_lookup_int(conf, "NumberOfHits", &number_of_hits) == CONFIG_TRUE) {
+ if (number_of_hits >= SHRT_MIN && number_of_hits <= SHRT_MAX)
+ skill->level_set_value(sk->num, number_of_hits);
+ else
+ ShowWarning("%s: Invalid number of hits %d specified for skill ID %d in %s! Minimum is %d, maximum is %d. Defaulting to 1...\n",
+ __func__, number_of_hits, sk->nameid, conf->file, SHRT_MIN, SHRT_MAX);
+ }
+}
+
+/**
+ * Validates a skill's cast interruptibility when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the cast interruptibility should be set it.
+ *
+ **/
+static void skill_validate_interrupt_cast(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->castcancel, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "InterruptCast");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int interrupt_cast;
+
+ if (libconfig->setting_lookup_bool(t, lv, &interrupt_cast) == CONFIG_TRUE)
+ sk->castcancel[i] = (interrupt_cast != 0) ? 1 : 0;
+ }
+
+ return;
+ }
+
+ int interrupt_cast;
+
+ if (libconfig->setting_lookup_bool(conf, "InterruptCast", &interrupt_cast) == CONFIG_TRUE) {
+ if (interrupt_cast != 0)
+ skill->level_set_value(sk->castcancel, 1);
+ }
+}
+
+/**
+ * Validates a skill's cast defence rate when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the cast defence rate should be set it.
+ *
+ **/
+static void skill_validate_cast_def_rate(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->cast_def_rate, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "CastDefRate");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int cast_def_rate;
+
+ if (libconfig->setting_lookup_int(t, lv, &cast_def_rate) == CONFIG_TRUE) {
+ if (cast_def_rate >= SHRT_MIN && cast_def_rate <= SHRT_MAX)
+ sk->cast_def_rate[i] = cast_def_rate;
+ else
+ ShowWarning("%s: Invalid cast defence rate %d specified in level %d for skill ID %d in %s! Minimum is %d, maximum is %d. Defaulting to 0...\n",
+ __func__, cast_def_rate, i + 1, sk->nameid, conf->file, SHRT_MIN, SHRT_MAX);
+ }
+ }
+
+ return;
+ }
+
+ int cast_def_rate;
+
+ if (libconfig->setting_lookup_int(conf, "CastDefRate", &cast_def_rate) == CONFIG_TRUE) {
+ if (cast_def_rate >= SHRT_MIN && cast_def_rate <= SHRT_MAX)
+ skill->level_set_value(sk->cast_def_rate, cast_def_rate);
+ else
+ ShowWarning("%s: Invalid cast defence rate %d specified for skill ID %d in %s! Minimum is %d, maximum is %d. Defaulting to 0...\n",
+ __func__, cast_def_rate, sk->nameid, conf->file, SHRT_MIN, SHRT_MAX);
+ }
+}
+
+/**
+ * Validates a skill's number of instances when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the number of instances should be set it.
+ *
+ **/
+static void skill_validate_number_of_instances(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->maxcount, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SkillInstances");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int number_of_instances;
+
+ if (libconfig->setting_lookup_int(t, lv, &number_of_instances) == CONFIG_TRUE) {
+ if (number_of_instances >= 0 && number_of_instances <= MAX_SKILLUNITGROUP)
+ sk->maxcount[i] = number_of_instances;
+ else
+ ShowWarning("%s: Invalid number of instances %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, number_of_instances, i + 1, sk->nameid, conf->file, MAX_SKILLUNITGROUP);
+ }
+ }
+
+ return;
+ }
+
+ int number_of_instances;
+
+ if (libconfig->setting_lookup_int(conf, "SkillInstances", &number_of_instances) == CONFIG_TRUE) {
+ if (number_of_instances >= 0 && number_of_instances <= MAX_SKILLUNITGROUP)
+ skill->level_set_value(sk->maxcount, number_of_instances);
+ else
+ ShowWarning("%s: Invalid number of instances %d specified for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, number_of_instances, sk->nameid, conf->file, MAX_SKILLUNITGROUP);
+ }
+}
+
+/**
+ * Validates a skill's number of knock back tiles when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the number of knock back tiles should be set it.
+ *
+ **/
+static void skill_validate_knock_back_tiles(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->blewcount, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "KnockBackTiles");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int knock_back_tiles;
+
+ if (libconfig->setting_lookup_int(t, lv, &knock_back_tiles) == CONFIG_TRUE) {
+ if (knock_back_tiles >= 0)
+ sk->blewcount[i] = knock_back_tiles;
+ else
+ ShowWarning("%s: Invalid number of knock back tiles %d specified in level %d for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, knock_back_tiles, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int knock_back_tiles;
+
+ if (libconfig->setting_lookup_int(conf, "KnockBackTiles", &knock_back_tiles) == CONFIG_TRUE) {
+ if (knock_back_tiles >= 0)
+ skill->level_set_value(sk->blewcount, knock_back_tiles);
+ else
+ ShowWarning("%s: Invalid number of knock back tiles %d specified for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, knock_back_tiles, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's cast time when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the cast time should be set it.
+ *
+ **/
+static void skill_validate_cast_time(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->cast, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "CastTime");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int cast_time;
+
+ if (libconfig->setting_lookup_int(t, lv, &cast_time) == CONFIG_TRUE) {
+ if (cast_time >= 0)
+ sk->cast[i] = cast_time;
+ else
+ ShowWarning("%s: Invalid cast time %d specified in level %d for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, cast_time, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int cast_time;
+
+ if (libconfig->setting_lookup_int(conf, "CastTime", &cast_time) == CONFIG_TRUE) {
+ if (cast_time >= 0)
+ skill->level_set_value(sk->cast, cast_time);
+ else
+ ShowWarning("%s: Invalid cast time %d specified for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, cast_time, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's after cast act delay when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the after cast act delay should be set it.
+ *
+ **/
+static void skill_validate_act_delay(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->delay, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "AfterCastActDelay");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int act_delay;
+
+ if (libconfig->setting_lookup_int(t, lv, &act_delay) == CONFIG_TRUE) {
+ if (act_delay >= 0)
+ sk->delay[i] = act_delay;
+ else
+ ShowWarning("%s: Invalid after cast act delay %d specified in level %d for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, act_delay, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int act_delay;
+
+ if (libconfig->setting_lookup_int(conf, "AfterCastActDelay", &act_delay) == CONFIG_TRUE) {
+ if (act_delay >= 0)
+ skill->level_set_value(sk->delay, act_delay);
+ else
+ ShowWarning("%s: Invalid after cast act delay %d specified for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, act_delay, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's after cast walk delay when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the after cast walk delay should be set it.
+ *
+ **/
+static void skill_validate_walk_delay(struct config_setting_t *conf, struct s_skill_db *sk)
{
- struct config_setting_t *t = NULL, *tt = NULL;
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->walkdelay, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "AfterCastWalkDelay");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int walk_delay;
+ if (libconfig->setting_lookup_int(t, lv, &walk_delay) == CONFIG_TRUE) {
+ if (walk_delay >= 0)
+ sk->walkdelay[i] = walk_delay;
+ else
+ ShowWarning("%s: Invalid after cast walk delay %d specified in level %d for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, walk_delay, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int walk_delay;
+
+ if (libconfig->setting_lookup_int(conf, "AfterCastWalkDelay", &walk_delay) == CONFIG_TRUE) {
+ if (walk_delay >= 0)
+ skill->level_set_value(sk->walkdelay, walk_delay);
+ else
+ ShowWarning("%s: Invalid after cast walk delay %d specified for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, walk_delay, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's stay duration when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the stay duration should be set it.
+ *
+ **/
+static void skill_validate_skill_data1(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
nullpo_retv(sk);
- if ((t=libconfig->setting_get_member(conf, delay?"SkillDelayOptions":"CastTimeOptions")) && config_setting_is_group(t)) {
- int j = 0, tmpopt = 0;
- while ((tt = libconfig->setting_get_elem(t, j++)) && j < 4) {
- const char *type = config_setting_name(tt);
+
+ skill->level_set_value(sk->upkeep_time, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SkillData1");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int skill_data1;
+
+ if (libconfig->setting_lookup_int(t, lv, &skill_data1) == CONFIG_TRUE) {
+ if (skill_data1 >= INFINITE_DURATION)
+ sk->upkeep_time[i] = skill_data1;
+ else
+ ShowWarning("%s: Invalid stay duration %d specified in level %d for skill ID %d in %s! Must be greater than or equal to %d. Defaulting to 0...\n",
+ __func__, skill_data1, i + 1, sk->nameid, conf->file, INFINITE_DURATION);
+ }
+ }
+
+ return;
+ }
+
+ int skill_data1;
+
+ if (libconfig->setting_lookup_int(conf, "SkillData1", &skill_data1) == CONFIG_TRUE) {
+ if (skill_data1 >= INFINITE_DURATION)
+ skill->level_set_value(sk->upkeep_time, skill_data1);
+ else
+ ShowWarning("%s: Invalid stay duration %d specified for skill ID %d in %s! Must be greater than or equal to %d. Defaulting to 0...\n",
+ __func__, skill_data1, sk->nameid, conf->file, INFINITE_DURATION);
+ }
+}
+
+/**
+ * Validates a skill's effect duration when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the effect duration should be set it.
+ *
+ **/
+static void skill_validate_skill_data2(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->upkeep_time2, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SkillData2");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int skill_data2;
+
+ if (libconfig->setting_lookup_int(t, lv, &skill_data2) == CONFIG_TRUE) {
+ if (skill_data2 >= INFINITE_DURATION)
+ sk->upkeep_time2[i] = skill_data2;
+ else
+ ShowWarning("%s: Invalid effect duration %d specified in level %d for skill ID %d in %s! Must be greater than or equal to %d. Defaulting to 0...\n",
+ __func__, skill_data2, i + 1, sk->nameid, conf->file, INFINITE_DURATION);
+ }
+ }
+
+ return;
+ }
+
+ int skill_data2;
+
+ if (libconfig->setting_lookup_int(conf, "SkillData2", &skill_data2) == CONFIG_TRUE) {
+ if (skill_data2 >= INFINITE_DURATION)
+ skill->level_set_value(sk->upkeep_time2, skill_data2);
+ else
+ ShowWarning("%s: Invalid effect duration %d specified for skill ID %d in %s! Must be greater than or equal to %d. Defaulting to 0...\n",
+ __func__, skill_data2, sk->nameid, conf->file, INFINITE_DURATION);
+ }
+}
+
+/**
+ * Validates a skill's cooldown when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the cooldown should be set it.
+ *
+ **/
+static void skill_validate_cooldown(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->cooldown, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "CoolDown");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int cooldown;
+
+ if (libconfig->setting_lookup_int(t, lv, &cooldown) == CONFIG_TRUE) {
+ if (cooldown >= 0)
+ sk->cooldown[i] = cooldown;
+ else
+ ShowWarning("%s: Invalid cooldown %d specified in level %d for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, cooldown, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int cooldown;
+
+ if (libconfig->setting_lookup_int(conf, "CoolDown", &cooldown) == CONFIG_TRUE) {
+ if (cooldown >= 0)
+ skill->level_set_value(sk->cooldown, cooldown);
+ else
+ ShowWarning("%s: Invalid cooldown %d specified for skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, cooldown, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's fixed cast time when reading the skill DB.
+ * If RENEWAL_CAST is not defined, nothing is done.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the fixed cast time should be set it.
+ *
+ **/
+static void skill_validate_fixed_cast_time(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+#ifdef RENEWAL_CAST
+ skill->level_set_value(sk->fixed_cast, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "FixedCastTime");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int fixed_cast_time;
+
+ if (libconfig->setting_lookup_int(t, lv, &fixed_cast_time) == CONFIG_TRUE) {
+ if (fixed_cast_time >= INFINITE_DURATION)
+ sk->fixed_cast[i] = fixed_cast_time;
+ else
+ ShowWarning("%s: Invalid fixed cast time %d specified in level %d for skill ID %d in %s! Must be greater than or equal to %d. Defaulting to 0...\n",
+ __func__, fixed_cast_time, i + 1, sk->nameid, conf->file, INFINITE_DURATION);
+ }
+ }
+
+ return;
+ }
+
+ int fixed_cast_time;
+
+ if (libconfig->setting_lookup_int(conf, "FixedCastTime", &fixed_cast_time) == CONFIG_TRUE) {
+ if (fixed_cast_time >= INFINITE_DURATION)
+ skill->level_set_value(sk->fixed_cast, fixed_cast_time);
+ else
+ ShowWarning("%s: Invalid fixed cast time %d specified for skill ID %d in %s! Must be greater than or equal to %d. Defaulting to 0...\n",
+ __func__, fixed_cast_time, sk->nameid, conf->file, INFINITE_DURATION);
+ }
+#else
+#ifndef RENEWAL /** Check pre-RE skill DB for FixedCastTime. **/
+ if (libconfig->setting_get_member(conf, "FixedCastTime") != NULL)
+ ShowWarning("%s: Fixed cast time was specified for skill ID %d in %s without RENEWAL_CAST being defined! Skipping...\n", __func__, sk->nameid, conf->file);
+#endif /** RENEWAL **/
+#endif /** RENEWAL_CAST **/
+}
+
+/**
+ * Validates a skill's cast time or delay options when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the cast time or delay options should be set it.
+ * @param delay If true, the skill's delay options are validated, otherwise its cast time options.
+ *
+ **/
+static void skill_validate_castnodex(struct config_setting_t *conf, struct s_skill_db *sk, bool delay)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(delay ? sk->delaynodex : sk->castnodex, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, delay ? "SkillDelayOptions" : "CastTimeOptions");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ struct config_setting_t *tt;
+ int i = 0;
+ int options = 0;
+
+ while ((tt = libconfig->setting_get_elem(t, i++)) != NULL) {
+ const char *value = config_setting_name(tt);
bool on = libconfig->setting_get_bool_real(tt);
- if (strcmpi(type, "IgnoreDex") == 0) {
- if (on) {
- tmpopt |= 1<<0;
- } else {
- tmpopt &= ~(1<<0);
- }
- } else if (strcmpi(type, "IgnoreStatusEffect") == 0) {
- if (on) {
- tmpopt |= 1<<1;
- } else {
- tmpopt &= ~(1<<1);
- }
- } else if (strcmpi(type, "IgnoreItemBonus") == 0) {
- if (on) {
- tmpopt |= 1<<2;
- } else {
- tmpopt &= ~(1<<2);
- }
+ if (strcmpi(value, "IgnoreDex") == 0) {
+ if (on)
+ options |= 1;
+ else
+ options &= ~1;
+ } else if (strcmpi(value, "IgnoreStatusEffect") == 0) {
+ if (on)
+ options |= 2;
+ else
+ options &= ~2;
+ } else if (strcmpi(value, "IgnoreItemBonus") == 0) {
+ if (on)
+ options |= 4;
+ else
+ options &= ~4;
} else {
- skilldb_invalid_error(type, config_setting_name(t), sk->nameid);
- return;
+ const char *option_string = delay ? "skill delay" : "cast time";
+ ShowWarning("%s: Invalid %s option %s specified for skill ID %d in %s! Skipping option...\n",
+ __func__, option_string, value, sk->nameid, conf->file);
}
+ }
+
+ skill->level_set_value(delay ? sk->delaynodex : sk->castnodex, options);
+ }
+}
+/**
+ * Validates a skill's HP cost when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the HP cost should be set it.
+ *
+ **/
+static void skill_validate_hp_cost(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->hp, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "HPCost");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int hp_cost;
+
+ if (libconfig->setting_lookup_int(t, lv, &hp_cost) == CONFIG_TRUE) {
+ if (hp_cost >= 0 && hp_cost <= battle_config.max_hp)
+ sk->hp[i] = hp_cost;
+ else
+ ShowWarning("%s: Invalid HP cost %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, hp_cost, i + 1, sk->nameid, conf->file, battle_config.max_hp);
+ }
}
- skill->level_set_value(delay?sk->delaynodex:sk->castnodex, tmpopt);
+
+ return;
+ }
+
+ int hp_cost;
+
+ if (libconfig->setting_lookup_int(conf, "HPCost", &hp_cost) == CONFIG_TRUE) {
+ if (hp_cost >= 0 && hp_cost <= battle_config.max_hp)
+ skill->level_set_value(sk->hp, hp_cost);
+ else
+ ShowWarning("%s: Invalid HP cost %d specified for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, hp_cost, sk->nameid, conf->file, battle_config.max_hp);
}
}
/**
- * Validates the "WeaponTypes" flag
- * when parsing skill_db.conf
- * @param *type const char, weapon type flag
- * @param on boolean, switch for the flag
- * @param *sk struct, pointer to s_skill_db
- * @return void
- */
+ * Validates a skill's SP cost when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the SP cost should be set it.
+ *
+ **/
+static void skill_validate_sp_cost(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->sp, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SPCost");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int sp_cost;
+
+ if (libconfig->setting_lookup_int(t, lv, &sp_cost) == CONFIG_TRUE) {
+ if (sp_cost >= 0 && sp_cost <= battle_config.max_sp)
+ sk->sp[i] = sp_cost;
+ else
+ ShowWarning("%s: Invalid SP cost %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, sp_cost, i + 1, sk->nameid, conf->file, battle_config.max_sp);
+ }
+ }
+
+ return;
+ }
+
+ int sp_cost;
+
+ if (libconfig->setting_lookup_int(conf, "SPCost", &sp_cost) == CONFIG_TRUE) {
+ if (sp_cost >= 0 && sp_cost <= battle_config.max_sp)
+ skill->level_set_value(sk->sp, sp_cost);
+ else
+ ShowWarning("%s: Invalid SP cost %d specified for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, sp_cost, sk->nameid, conf->file, battle_config.max_sp);
+ }
+}
+
+/**
+ * Validates a skill's HP rate cost when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the HP rate cost should be set it.
+ *
+ **/
+static void skill_validate_hp_rate_cost(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->hp_rate, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "HPRateCost");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int hp_rate_cost;
+
+ if (libconfig->setting_lookup_int(t, lv, &hp_rate_cost) == CONFIG_TRUE) {
+ if (hp_rate_cost >= -100 && hp_rate_cost <= 100)
+ sk->hp_rate[i] = hp_rate_cost;
+ else
+ ShowWarning("%s: Invalid HP rate cost %d specified in level %d for skill ID %d in %s! Minimum is -100, maximum is 100. Defaulting to 0...\n",
+ __func__, hp_rate_cost, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int hp_rate_cost;
+
+ if (libconfig->setting_lookup_int(conf, "HPRateCost", &hp_rate_cost) == CONFIG_TRUE) {
+ if (hp_rate_cost >= -100 && hp_rate_cost <= 100)
+ skill->level_set_value(sk->hp_rate, hp_rate_cost);
+ else
+ ShowWarning("%s: Invalid HP rate cost %d specified for skill ID %d in %s! Minimum is -100, maximum is 100. Defaulting to 0...\n",
+ __func__, hp_rate_cost, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's SP rate cost when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the SP rate cost should be set it.
+ *
+ **/
+static void skill_validate_sp_rate_cost(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->sp_rate, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SPRateCost");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int sp_rate_cost;
+
+ if (libconfig->setting_lookup_int(t, lv, &sp_rate_cost) == CONFIG_TRUE) {
+ if (sp_rate_cost >= -100 && sp_rate_cost <= 100)
+ sk->sp_rate[i] = sp_rate_cost;
+ else
+ ShowWarning("%s: Invalid SP rate cost %d specified in level %d for skill ID %d in %s! Minimum is -100, maximum is 100. Defaulting to 0...\n",
+ __func__, sp_rate_cost, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int sp_rate_cost;
+
+ if (libconfig->setting_lookup_int(conf, "SPRateCost", &sp_rate_cost) == CONFIG_TRUE) {
+ if (sp_rate_cost >= -100 && sp_rate_cost <= 100)
+ skill->level_set_value(sk->sp_rate, sp_rate_cost);
+ else
+ ShowWarning("%s: Invalid SP rate cost %d specified for skill ID %d in %s! Minimum is -100, maximum is 100. Defaulting to 0...\n",
+ __func__, sp_rate_cost, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's maximum HP trigger when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the maximum HP trigger should be set it.
+ *
+ **/
+static void skill_validate_max_hp_trigger(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->mhp, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "MaxHPTrigger");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int max_hp_trigger;
+
+ if (libconfig->setting_lookup_int(t, lv, &max_hp_trigger) == CONFIG_TRUE) {
+ if (max_hp_trigger >= 0 && max_hp_trigger <= 100)
+ sk->mhp[i] = max_hp_trigger;
+ else
+ ShowWarning("%s: Invalid maximum HP trigger %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is 100. Defaulting to 0...\n",
+ __func__, max_hp_trigger, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int max_hp_trigger;
+
+ if (libconfig->setting_lookup_int(conf, "MaxHPTrigger", &max_hp_trigger) == CONFIG_TRUE) {
+ if (max_hp_trigger >= 0 && max_hp_trigger <= 100)
+ skill->level_set_value(sk->mhp, max_hp_trigger);
+ else
+ ShowWarning("%s: Invalid maximum HP trigger %d specified for skill ID %d in %s! Minimum is 0, maximum is 100. Defaulting to 0...\n",
+ __func__, max_hp_trigger, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's maximum SP trigger when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the maximum SP trigger should be set it.
+ *
+ **/
+static void skill_validate_max_sp_trigger(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->msp, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "MaxSPTrigger");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int max_sp_trigger;
+
+ if (libconfig->setting_lookup_int(t, lv, &max_sp_trigger) == CONFIG_TRUE) {
+ if (max_sp_trigger >= 0 && max_sp_trigger <= 100)
+ sk->msp[i] = max_sp_trigger;
+ else
+ ShowWarning("%s: Invalid maximum SP trigger %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is 100. Defaulting to 0...\n",
+ __func__, max_sp_trigger, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ int max_sp_trigger;
+
+ if (libconfig->setting_lookup_int(conf, "MaxSPTrigger", &max_sp_trigger) == CONFIG_TRUE) {
+ if (max_sp_trigger >= 0 && max_sp_trigger <= 100)
+ skill->level_set_value(sk->msp, max_sp_trigger);
+ else
+ ShowWarning("%s: Invalid maximum SP trigger %d specified for skill ID %d in %s! Minimum is 0, maximum is 100. Defaulting to 0...\n",
+ __func__, max_sp_trigger, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's Zeny cost when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the Zeny cost should be set it.
+ *
+ **/
+static void skill_validate_zeny_cost(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->zeny, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "ZenyCost");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int zeny_cost;
+
+ if (libconfig->setting_lookup_int(t, lv, &zeny_cost) == CONFIG_TRUE) {
+ if (zeny_cost >= 0 && zeny_cost <= MAX_ZENY)
+ sk->zeny[i] = zeny_cost;
+ else
+ ShowWarning("%s: Invalid Zeny cost %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, zeny_cost, i + 1, sk->nameid, conf->file, MAX_ZENY);
+ }
+ }
+
+ return;
+ }
+
+ int zeny_cost;
+
+ if (libconfig->setting_lookup_int(conf, "ZenyCost", &zeny_cost) == CONFIG_TRUE) {
+ if (zeny_cost >= 0 && zeny_cost <= MAX_ZENY)
+ skill->level_set_value(sk->zeny, zeny_cost);
+ else
+ ShowWarning("%s: Invalid Zeny cost %d specified for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, zeny_cost, sk->nameid, conf->file, MAX_ZENY);
+ }
+}
+
+/**
+ * Validates a single weapon type when reading the skill DB.
+ *
+ * @param type The weapon type to validate.
+ * @param on Whether the weapon type is required for the skill.
+ * @param sk The s_skill_db struct where the weapon type should be set it.
+ * @return 0 if the passed weapon type is valid, otherwise 1.
+ *
+ **/
static int skill_validate_weapontype_sub(const char *type, bool on, struct s_skill_db *sk)
{
- nullpo_ret(sk);
+ nullpo_retr(1, type);
+ nullpo_retr(1, sk);
+
if (strcmpi(type, "NoWeapon") == 0) {
- if (on) {
- sk->weapon |= 1<<W_FIST;
- } else {
- sk->weapon &= ~(1<<W_FIST);
- }
+ if (on)
+ sk->weapon |= (1 << W_FIST);
+ else
+ sk->weapon &= ~(1 << W_FIST);
} else if (strcmpi(type, "Daggers") == 0) {
- if (on) {
- sk->weapon |= 1<<W_DAGGER;
- } else {
- sk->weapon &= ~(1<<W_DAGGER);
- }
+ if (on)
+ sk->weapon |= (1 << W_DAGGER);
+ else
+ sk->weapon &= ~(1 << W_DAGGER);
} else if (strcmpi(type, "1HSwords") == 0) {
- if (on) {
- sk->weapon |= 1<<W_1HSWORD;
- } else {
- sk->weapon &= ~(1<<W_1HSWORD);
- }
+ if (on)
+ sk->weapon |= (1 << W_1HSWORD);
+ else
+ sk->weapon &= ~(1 << W_1HSWORD);
} else if (strcmpi(type, "2HSwords") == 0) {
- if (on) {
- sk->weapon |= 1<<W_2HSWORD;
- } else {
- sk->weapon &= ~(1<<W_2HSWORD);
- }
+ if (on)
+ sk->weapon |= (1 << W_2HSWORD);
+ else
+ sk->weapon &= ~(1 << W_2HSWORD);
} else if (strcmpi(type, "1HSpears") == 0) {
- if (on) {
- sk->weapon |= 1<<W_1HSPEAR;
- } else {
- sk->weapon &= ~(1<<W_1HSPEAR);
- }
+ if (on)
+ sk->weapon |= (1 << W_1HSPEAR);
+ else
+ sk->weapon &= ~(1 << W_1HSPEAR);
} else if (strcmpi(type, "2HSpears") == 0) {
- if (on) {
- sk->weapon |= 1<<W_2HSPEAR;
- } else {
- sk->weapon &= ~(1<<W_2HSPEAR);
- }
+ if (on)
+ sk->weapon |= (1 << W_2HSPEAR);
+ else
+ sk->weapon &= ~(1 << W_2HSPEAR);
} else if (strcmpi(type, "1HAxes") == 0) {
- if (on) {
- sk->weapon |= 1<<W_1HAXE;
- } else {
- sk->weapon &= ~(1<<W_1HAXE);
- }
+ if (on)
+ sk->weapon |= (1 << W_1HAXE);
+ else
+ sk->weapon &= ~(1 << W_1HAXE);
} else if (strcmpi(type, "2HAxes") == 0) {
- if (on) {
- sk->weapon |= 1<<W_2HAXE;
- } else {
- sk->weapon &= ~(1<<W_2HAXE);
- }
+ if (on)
+ sk->weapon |= (1 << W_2HAXE);
+ else
+ sk->weapon &= ~(1 << W_2HAXE);
} else if (strcmpi(type, "Maces") == 0) {
- if (on) {
- sk->weapon |= 1<<W_MACE;
- } else {
- sk->weapon &= ~(1<<W_MACE);
- }
+ if (on)
+ sk->weapon |= (1 << W_MACE);
+ else
+ sk->weapon &= ~(1 << W_MACE);
} else if (strcmpi(type, "2HMaces") == 0) {
- if (on) {
- sk->weapon |= 1<<W_2HMACE;
- } else {
- sk->weapon &= ~(1<<W_2HMACE);
- }
+ if (on)
+ sk->weapon |= (1 << W_2HMACE);
+ else
+ sk->weapon &= ~(1 << W_2HMACE);
} else if (strcmpi(type, "Staves") == 0) {
- if (on) {
- sk->weapon |= 1<<W_STAFF;
- } else {
- sk->weapon &= ~(1<<W_STAFF);
- }
+ if (on)
+ sk->weapon |= (1 << W_STAFF);
+ else
+ sk->weapon &= ~(1 << W_STAFF);
} else if (strcmpi(type, "Bows") == 0) {
- if (on) {
- sk->weapon |= 1<<W_BOW;
- } else {
- sk->weapon &= ~(1<<W_BOW);
- }
+ if (on)
+ sk->weapon |= (1 << W_BOW);
+ else
+ sk->weapon &= ~(1 << W_BOW);
} else if (strcmpi(type, "Knuckles") == 0) {
- if (on) {
- sk->weapon |= 1<<W_KNUCKLE;
- } else {
- sk->weapon &= ~(1<<W_KNUCKLE);
- }
+ if (on)
+ sk->weapon |= (1 << W_KNUCKLE);
+ else
+ sk->weapon &= ~(1 << W_KNUCKLE);
} else if (strcmpi(type, "Instruments") == 0) {
- if (on) {
- sk->weapon |= 1<<W_MUSICAL;
- } else {
- sk->weapon &= ~(1<<W_MUSICAL);
- }
+ if (on)
+ sk->weapon |= (1 << W_MUSICAL);
+ else
+ sk->weapon &= ~(1 << W_MUSICAL);
} else if (strcmpi(type, "Whips") == 0) {
- if (on) {
- sk->weapon |= 1<<W_WHIP;
- } else {
- sk->weapon &= ~(1<<W_WHIP);
- }
+ if (on)
+ sk->weapon |= (1 << W_WHIP);
+ else
+ sk->weapon &= ~(1 << W_WHIP);
} else if (strcmpi(type, "Books") == 0) {
- if (on) {
- sk->weapon |= 1<<W_BOOK;
- } else {
- sk->weapon &= ~(1<<W_BOOK);
- }
+ if (on)
+ sk->weapon |= (1 << W_BOOK);
+ else
+ sk->weapon &= ~(1 << W_BOOK);
} else if (strcmpi(type, "Katars") == 0) {
- if (on) {
- sk->weapon |= 1<<W_KATAR;
- } else {
- sk->weapon &= ~(1<<W_KATAR);
- }
+ if (on)
+ sk->weapon |= (1 << W_KATAR);
+ else
+ sk->weapon &= ~(1 << W_KATAR);
} else if (strcmpi(type, "Revolvers") == 0) {
- if (on) {
- sk->weapon |= 1<<W_REVOLVER;
- } else {
- sk->weapon &= ~(1<<W_REVOLVER);
- }
+ if (on)
+ sk->weapon |= (1 << W_REVOLVER);
+ else
+ sk->weapon &= ~(1 << W_REVOLVER);
} else if (strcmpi(type, "Rifles") == 0) {
- if (on) {
- sk->weapon |= 1<<W_RIFLE;
- } else {
- sk->weapon &= ~(1<<W_RIFLE);
- }
+ if (on)
+ sk->weapon |= (1 << W_RIFLE);
+ else
+ sk->weapon &= ~(1 << W_RIFLE);
} else if (strcmpi(type, "GatlingGuns") == 0) {
- if (on) {
- sk->weapon |= 1<<W_GATLING;
- } else {
- sk->weapon &= ~(1<<W_GATLING);
- }
+ if (on)
+ sk->weapon |= (1 << W_GATLING);
+ else
+ sk->weapon &= ~(1 << W_GATLING);
} else if (strcmpi(type, "Shotguns") == 0) {
- if (on) {
- sk->weapon |= 1<<W_SHOTGUN;
- } else {
- sk->weapon &= ~(1<<W_SHOTGUN);
- }
+ if (on)
+ sk->weapon |= (1 << W_SHOTGUN);
+ else
+ sk->weapon &= ~(1 << W_SHOTGUN);
} else if (strcmpi(type, "GrenadeLaunchers") == 0) {
- if (on) {
- sk->weapon |= 1<<W_GRENADE;
- } else {
- sk->weapon &= ~(1<<W_GRENADE);
- }
+ if (on)
+ sk->weapon |= (1 << W_GRENADE);
+ else
+ sk->weapon &= ~(1 << W_GRENADE);
} else if (strcmpi(type, "FuumaShurikens") == 0) {
- if (on) {
- sk->weapon |= 1<<W_HUUMA;
- } else {
- sk->weapon &= ~(1<<W_HUUMA);
- }
+ if (on)
+ sk->weapon |= (1 << W_HUUMA);
+ else
+ sk->weapon &= ~(1 << W_HUUMA);
} else if (strcmpi(type, "2HStaves") == 0) {
- if (on) {
- sk->weapon |= 1<<W_2HSTAFF;
- } else {
- sk->weapon &= ~(1<<W_2HSTAFF);
- }
- }
- /* MAX_SINGLE_WEAPON_TYPE excluded */
- else if (strcmpi(type, "DWDaggers") == 0) {
- if (on) {
- sk->weapon |= 1<<W_DOUBLE_DD;
- } else {
- sk->weapon &= ~(1<<W_DOUBLE_DD);
- }
+ if (on)
+ sk->weapon |= (1 << W_2HSTAFF);
+ else
+ sk->weapon &= ~(1 << W_2HSTAFF);
+ } else if (strcmpi(type, "DWDaggers") == 0) {
+ if (on)
+ sk->weapon |= (1 << W_DOUBLE_DD);
+ else
+ sk->weapon &= ~(1 << W_DOUBLE_DD);
} else if (strcmpi(type, "DWSwords") == 0) {
- if (on) {
- sk->weapon |= 1<<W_DOUBLE_SS;
- } else {
- sk->weapon &= ~(1<<W_DOUBLE_SS);
- }
+ if (on)
+ sk->weapon |= (1 << W_DOUBLE_SS);
+ else
+ sk->weapon &= ~(1 << W_DOUBLE_SS);
} else if (strcmpi(type, "DWAxes") == 0) {
- if (on) {
- sk->weapon |= 1<<W_DOUBLE_AA;
- } else {
- sk->weapon &= ~(1<<W_DOUBLE_AA);
- }
+ if (on)
+ sk->weapon |= (1 << W_DOUBLE_AA);
+ else
+ sk->weapon &= ~(1 << W_DOUBLE_AA);
} else if (strcmpi(type, "DWDaggerSword") == 0) {
- if (on) {
- sk->weapon |= 1<<W_DOUBLE_DS;
- } else {
- sk->weapon &= ~(1<<W_DOUBLE_DS);
- }
+ if (on)
+ sk->weapon |= (1 << W_DOUBLE_DS);
+ else
+ sk->weapon &= ~(1 << W_DOUBLE_DS);
} else if (strcmpi(type, "DWDaggerAxe") == 0) {
- if (on) {
- sk->weapon |= 1<<W_DOUBLE_DA;
- } else {
- sk->weapon &= ~(1<<W_DOUBLE_DA);
- }
+ if (on)
+ sk->weapon |= (1 << W_DOUBLE_DA);
+ else
+ sk->weapon &= ~(1 << W_DOUBLE_DA);
} else if (strcmpi(type, "DWSwordAxe") == 0) {
- if (on) {
- sk->weapon |= 1<<W_DOUBLE_SA;
- } else {
- sk->weapon &= ~(1<<W_DOUBLE_SA);
- }
+ if (on)
+ sk->weapon |= (1 << W_DOUBLE_SA);
+ else
+ sk->weapon &= ~(1 << W_DOUBLE_SA);
} else if (strcmpi(type, "All") == 0) {
sk->weapon = 0;
} else {
- ShowError("Item %d. Unknown weapon type %s\n", sk->nameid, type);
- return 1; // invalid type
+ return 1;
}
return 0;
}
/**
- * Validates "WeaponTypes"
- * when parsing skill_db.conf
- * @param conf struct, pointer to the skill configuration
- * @param sk struct, struct, pointer to s_skill_db
- * @return (void)
- */
+ * Validates a skill's required weapon types when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required weapon types should be set it.
+ *
+ **/
static void skill_validate_weapontype(struct config_setting_t *conf, struct s_skill_db *sk)
{
- struct config_setting_t *tt = NULL;
- const char *type = NULL;
-
+ nullpo_retv(conf);
nullpo_retv(sk);
- if ((tt = libconfig->setting_get_member(conf, "WeaponTypes")) && config_setting_is_group(tt)) {
- int j = 0;
- struct config_setting_t *wpt = NULL;
- while ((wpt = libconfig->setting_get_elem(tt, j++)) != NULL) {
- if (skill->validate_weapontype_sub(config_setting_name(wpt), libconfig->setting_get_bool_real(wpt), sk))
- skilldb_invalid_error(config_setting_name(wpt), config_setting_name(tt), sk->nameid);
+
+ sk->weapon = 0;
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "WeaponTypes");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ struct config_setting_t *tt;
+ int i = 0;
+
+ while ((tt = libconfig->setting_get_elem(t, i++)) != NULL) {
+ bool on = libconfig->setting_get_bool_real(tt);
+
+ if (skill->validate_weapontype_sub(config_setting_name(tt), on, sk) != 0)
+ ShowWarning("%s: Invalid required weapon type %s specified for skill ID %d in %s! Skipping type...\n",
+ __func__, config_setting_name(tt), sk->nameid, conf->file);
}
- } else if (libconfig->setting_lookup_string(conf, "WeaponTypes", &type)) {
- if (skill->validate_weapontype_sub(type, true, sk))
- skilldb_invalid_error(type, "WeaponTypes", sk->nameid);
+
+ return;
+ }
+
+ const char *weapon_type;
+
+ if (libconfig->setting_lookup_string(conf, "WeaponTypes", &weapon_type) == CONFIG_TRUE) {
+ if (skill->validate_weapontype_sub(weapon_type, true, sk) != 0)
+ ShowWarning("%s: Invalid required weapon type %s specified for skill ID %d in %s! Defaulting to All...\n",
+ __func__, weapon_type, sk->nameid, conf->file);
}
}
/**
- * Validates the "AmmoTypes" flag
- * when parsing skill_db.conf
- * @param type string, ammo type flag
- * @param on boolean, switch for the flag
- * @param sk struct, pointer to s_skill_db
- * @return void
- */
+ * Validates a single ammunition type when reading the skill DB.
+ *
+ * @param type The ammunition type to validate.
+ * @param on Whether the ammunition type is required for the skill.
+ * @param sk The s_skill_db struct where the ammunition type should be set it.
+ * @return 0 if the passed ammunition type is valid, otherwise 1.
+ *
+ **/
static int skill_validate_ammotype_sub(const char *type, bool on, struct s_skill_db *sk)
{
- nullpo_ret(sk);
+ nullpo_retr(1, type);
+ nullpo_retr(1, sk);
+
if (strcmpi(type, "A_ARROW") == 0) {
- if (on) {
- sk->ammo |= 1<<A_ARROW;
- } else {
- sk->ammo &= ~(1<<A_ARROW);
- }
+ if (on)
+ sk->ammo |= (1 << A_ARROW);
+ else
+ sk->ammo &= ~(1 << A_ARROW);
} else if (strcmpi(type, "A_DAGGER") == 0) {
- if (on) {
- sk->ammo |= 1<<A_DAGGER;
- } else {
- sk->ammo &= ~(1<<A_DAGGER);
- }
+ if (on)
+ sk->ammo |= (1 << A_DAGGER);
+ else
+ sk->ammo &= ~(1 << A_DAGGER);
} else if (strcmpi(type, "A_BULLET") == 0) {
- if (on) {
- sk->ammo |= 1<<A_BULLET;
- } else {
- sk->ammo &= ~(1<<A_BULLET);
- }
+ if (on)
+ sk->ammo |= (1 << A_BULLET);
+ else
+ sk->ammo &= ~(1 << A_BULLET);
} else if (strcmpi(type, "A_SHELL") == 0) {
- if (on) {
- sk->ammo |= 1<<A_SHELL;
- } else {
- sk->ammo &= ~(1<<A_SHELL);
- }
+ if (on)
+ sk->ammo |= (1 << A_SHELL);
+ else
+ sk->ammo &= ~(1 << A_SHELL);
} else if (strcmpi(type, "A_GRENADE") == 0) {
- if (on) {
- sk->ammo |= 1<<A_GRENADE;
- } else {
- sk->ammo &= ~(1<<A_GRENADE);
- }
+ if (on)
+ sk->ammo |= (1 << A_GRENADE);
+ else
+ sk->ammo &= ~(1 << A_GRENADE);
} else if (strcmpi(type, "A_SHURIKEN") == 0) {
- if (on) {
- sk->ammo |= 1<<A_SHURIKEN;
- } else {
- sk->ammo &= ~(1<<A_SHURIKEN);
- }
+ if (on)
+ sk->ammo |= (1 << A_SHURIKEN);
+ else
+ sk->ammo &= ~(1 << A_SHURIKEN);
} else if (strcmpi(type, "A_KUNAI") == 0) {
- if (on) {
- sk->ammo |= 1<<A_KUNAI;
- } else {
- sk->ammo &= ~(1<<A_KUNAI);
- }
+ if (on)
+ sk->ammo |= (1 << A_KUNAI);
+ else
+ sk->ammo &= ~(1 << A_KUNAI);
} else if (strcmpi(type, "A_CANNONBALL") == 0) {
- if (on) {
- sk->ammo |= 1<<A_CANNONBALL;
- } else {
- sk->ammo &= ~(1<<A_CANNONBALL);
- }
+ if (on)
+ sk->ammo |= (1 << A_CANNONBALL);
+ else
+ sk->ammo &= ~(1 << A_CANNONBALL);
} else if (strcmpi(type, "A_THROWWEAPON") == 0) {
- if (on) {
- sk->ammo |= 1<<A_THROWWEAPON;
- } else {
- sk->ammo &= ~(1<<A_THROWWEAPON);
- }
+ if (on)
+ sk->ammo |= (1 << A_THROWWEAPON);
+ else
+ sk->ammo &= ~(1 << A_THROWWEAPON);
} else if (strcmpi(type, "All") == 0) {
- if (on) {
+ if (on)
sk->ammo = 0xFFFFFFFF;
- } else {
+ else
sk->ammo = 0;
- }
} else {
- return 1; // Invalid Entry
+ return 1;
}
return 0;
}
/**
- * Validates the "AmmoTypes" flag
- * when parsing skill_db.conf
- * @param conf pointer to the skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return void
- */
+ * Validates a skill's required ammunition types when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required ammunition types should be set it.
+ *
+ **/
static void skill_validate_ammotype(struct config_setting_t *conf, struct s_skill_db *sk)
{
- struct config_setting_t *tt = NULL;
- const char *tstr = NULL;
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ sk->ammo = 0;
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "AmmoTypes");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ struct config_setting_t *tt;
+ int i = 0;
+
+ while ((tt = libconfig->setting_get_elem(t, i++)) != NULL) {
+ bool on = libconfig->setting_get_bool_real(tt);
+
+ if (skill->validate_ammotype_sub(config_setting_name(tt), on, sk) != 0)
+ ShowWarning("%s: Invalid required ammunition type %s specified for skill ID %d in %s! Skipping type...\n",
+ __func__, config_setting_name(tt), sk->nameid, conf->file);
+ }
+ }
+
+ const char *ammo_type;
+
+ if (libconfig->setting_lookup_string(conf, "AmmoTypes", &ammo_type) == CONFIG_TRUE) {
+ if (skill->validate_ammotype_sub(ammo_type, true, sk) != 0)
+ ShowWarning("%s: Invalid required ammunition type %s specified for skill ID %d in %s! Defaulting to None...\n",
+ __func__, ammo_type, sk->nameid, conf->file);
+ }
+}
+/**
+ * Validates a skill's required ammunition amount when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required ammunition amount should be set it.
+ *
+ **/
+static void skill_validate_ammo_amount(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
nullpo_retv(sk);
- if ((tt = libconfig->setting_get_member(conf, "AmmoTypes")) && config_setting_is_group(tt)) {
- int j = 0;
- struct config_setting_t *amt = { 0 };
- while ((amt = libconfig->setting_get_elem(tt, j++))) {
- if (skill->validate_ammotype_sub(config_setting_name(amt), libconfig->setting_get_bool_real(amt), sk))
- skilldb_invalid_error(config_setting_name(amt), config_setting_name(tt), sk->nameid);
+
+ skill->level_set_value(sk->ammo_qty, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "AmmoAmount");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int ammo_amount;
+
+ if (libconfig->setting_lookup_int(t, lv, &ammo_amount) == CONFIG_TRUE) {
+ if (ammo_amount >= 0 && ammo_amount <= MAX_AMOUNT)
+ sk->ammo_qty[i] = ammo_amount;
+ else
+ ShowWarning("%s: Invalid required ammunition amount %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, ammo_amount, i + 1, sk->nameid, conf->file, MAX_AMOUNT);
+ }
}
- } else if( libconfig->setting_lookup_string(conf, "AmmoTypes", &tstr)) {
- if (skill->validate_ammotype_sub(tstr, true, sk))
- skilldb_invalid_error(tstr, "AmmoTypes", sk->nameid);
+
+ return;
+ }
+
+ int ammo_amount;
+
+ if (libconfig->setting_lookup_int(conf, "AmmoAmount", &ammo_amount) == CONFIG_TRUE) {
+ if (ammo_amount >= 0 && ammo_amount <= MAX_AMOUNT)
+ skill->level_set_value(sk->ammo_qty, ammo_amount);
+ else
+ ShowWarning("%s: Invalid required ammunition amount %d specified for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, ammo_amount, sk->nameid, conf->file, MAX_AMOUNT);
}
}
/**
- * Validates the "State" flag
- * when parsing skill_db.conf
- * @param conf struct, pointer to the skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return void
- */
+ * Validates a single required state when reading the skill DB.
+ *
+ * @param state The required state to validate.
+ * @return A number greater than or equal to 0 if the passed required state is valid, otherwise -1.
+ *
+ **/
+static int skill_validate_state_sub(const char *state)
+{
+ nullpo_retr(-1, state);
+
+ int ret_val = ST_NONE;
+
+ if (strcmpi(state, "Hiding") == 0)
+ ret_val = ST_HIDING;
+ else if (strcmpi(state, "Cloaking") == 0)
+ ret_val = ST_CLOAKING;
+ else if (strcmpi(state, "Hidden") == 0)
+ ret_val = ST_HIDDEN;
+ else if (strcmpi(state, "Riding") == 0)
+ ret_val = ST_RIDING;
+ else if (strcmpi(state, "Falcon") == 0)
+ ret_val = ST_FALCON;
+ else if (strcmpi(state, "Cart") == 0)
+ ret_val = ST_CART;
+ else if (strcmpi(state, "Shield") == 0)
+ ret_val = ST_SHIELD;
+ else if (strcmpi(state, "Sight") == 0)
+ ret_val = ST_SIGHT;
+ else if (strcmpi(state, "ExplosionSpirits") == 0)
+ ret_val = ST_EXPLOSIONSPIRITS;
+ else if (strcmpi(state, "CartBoost") == 0)
+ ret_val = ST_CARTBOOST;
+ else if (strcmpi(state, "NotOverWeight") == 0)
+ ret_val = ST_RECOV_WEIGHT_RATE;
+ else if (strcmpi(state, "Moveable") == 0)
+ ret_val = ST_MOVE_ENABLE;
+ else if (strcmpi(state, "InWater") == 0)
+ ret_val = ST_WATER;
+ else if (strcmpi(state, "Dragon") == 0)
+ ret_val = ST_RIDINGDRAGON;
+ else if (strcmpi(state, "Warg") == 0)
+ ret_val = ST_WUG;
+ else if (strcmpi(state, "RidingWarg") == 0)
+ ret_val = ST_RIDINGWUG;
+ else if (strcmpi(state, "MadoGear") == 0)
+ ret_val = ST_MADO;
+ else if (strcmpi(state, "ElementalSpirit") == 0)
+ ret_val = ST_ELEMENTALSPIRIT;
+ else if (strcmpi(state, "PoisonWeapon") == 0)
+ ret_val = ST_POISONINGWEAPON;
+ else if (strcmpi(state, "RollingCutter") == 0)
+ ret_val = ST_ROLLINGCUTTER;
+ else if (strcmpi(state, "MH_Fighting") == 0)
+ ret_val = ST_MH_FIGHTING;
+ else if (strcmpi(state, "MH_Grappling") == 0)
+ ret_val = ST_MH_GRAPPLING;
+ else if (strcmpi(state, "Peco") == 0)
+ ret_val = ST_PECO;
+ else if (strcmpi(state, "None") != 0)
+ ret_val = -1;
+
+ return ret_val;
+}
+
+/**
+ * Validates a skill's required states when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required states should be set it.
+ *
+ **/
static void skill_validate_state(struct config_setting_t *conf, struct s_skill_db *sk)
{
- const char *type = NULL;
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->state, ST_NONE);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "State");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ const char *state;
+
+ if (libconfig->setting_lookup_string(t, lv, &state) == CONFIG_TRUE) {
+ int sta = skill->validate_state_sub(state);
+
+ if (sta > ST_NONE)
+ sk->state[i] = sta;
+ else if (sta == -1)
+ ShowWarning("%s: Invalid required state %s specified in level %d for skill ID %d in %s! Defaulting to None...\n",
+ __func__, state, i + 1, sk->nameid, conf->file);
+ }
+ }
+
+ return;
+ }
+
+ const char *state;
+
+ if (libconfig->setting_lookup_string(conf, "State", &state) == CONFIG_TRUE) {
+ int sta = skill->validate_state_sub(state);
+ if (sta > ST_NONE)
+ skill->level_set_value(sk->state, sta);
+ else if (sta == -1)
+ ShowWarning("%s: Invalid required state %s specified for skill ID %d in %s! Defaulting to None...\n",
+ __func__, state, sk->nameid, conf->file);
+ }
+}
+
+/**
+ * Validates a skill's Spirit Sphere cost when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the Spirit Sphere cost should be set it.
+ *
+ **/
+static void skill_validate_spirit_sphere_cost(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
nullpo_retv(sk);
- if (libconfig->setting_lookup_string(conf, "State", &type) && strcmpi(type,"None") != ST_NONE) {
- if ( strcmpi(type,"Hiding") == 0 ) sk->state = ST_HIDING;
- else if (strcmpi(type,"Cloaking") == 0 ) sk->state = ST_CLOAKING;
- else if (strcmpi(type,"Hidden") == 0 ) sk->state = ST_HIDDEN;
- else if (strcmpi(type,"Riding") == 0 ) sk->state = ST_RIDING;
- else if (strcmpi(type,"Falcon") == 0 ) sk->state = ST_FALCON;
- else if (strcmpi(type,"Cart") == 0 ) sk->state = ST_CART;
- else if (strcmpi(type,"Shield") == 0 ) sk->state = ST_SHIELD;
- else if (strcmpi(type,"Sight") == 0 ) sk->state = ST_SIGHT;
- else if (strcmpi(type,"ExplosionSpirits") == 0 ) sk->state = ST_EXPLOSIONSPIRITS;
- else if (strcmpi(type,"CartBoost") == 0 ) sk->state = ST_CARTBOOST;
- else if (strcmpi(type,"NotOverWeight") == 0 ) sk->state = ST_RECOV_WEIGHT_RATE;
- else if (strcmpi(type,"Moveable") == 0 ) sk->state = ST_MOVE_ENABLE;
- else if (strcmpi(type,"InWater") == 0 ) sk->state = ST_WATER;
- else if (strcmpi(type,"Dragon") == 0 ) sk->state = ST_RIDINGDRAGON;
- else if (strcmpi(type,"Warg") == 0 ) sk->state = ST_WUG;
- else if (strcmpi(type,"RidingWarg") == 0 ) sk->state = ST_RIDINGWUG;
- else if (strcmpi(type,"MadoGear") == 0 ) sk->state = ST_MADO;
- else if (strcmpi(type,"ElementalSpirit") == 0 ) sk->state = ST_ELEMENTALSPIRIT;
- else if (strcmpi(type,"PoisonWeapon") == 0 ) sk->state = ST_POISONINGWEAPON;
- else if (strcmpi(type,"RollingCutter") == 0 ) sk->state = ST_ROLLINGCUTTER;
- else if (strcmpi(type,"MH_Fighting") == 0 ) sk->state = ST_MH_FIGHTING;
- else if (strcmpi(type,"MH_Grappling") == 0 ) sk->state = ST_MH_GRAPPLING;
- else if (strcmpi(type,"Peco") == 0 ) sk->state = ST_PECO;
+
+ skill->level_set_value(sk->spiritball, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "SpiritSphereCost");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int spirit_sphere_cost;
+
+ if (libconfig->setting_lookup_int(t, lv, &spirit_sphere_cost) == CONFIG_TRUE) {
+ if (spirit_sphere_cost >= 0 && spirit_sphere_cost <= MAX_SPIRITBALL)
+ sk->spiritball[i] = spirit_sphere_cost;
+ else
+ ShowWarning("%s: Invalid Spirit Sphere cost %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, spirit_sphere_cost, i + 1, sk->nameid, conf->file, MAX_SPIRITBALL);
+ }
+ }
+
+ return;
+ }
+
+ int spirit_sphere_cost;
+
+ if (libconfig->setting_lookup_int(conf, "SpiritSphereCost", &spirit_sphere_cost) == CONFIG_TRUE) {
+ if (spirit_sphere_cost >= 0 && spirit_sphere_cost <= MAX_SPIRITBALL)
+ skill->level_set_value(sk->spiritball, spirit_sphere_cost);
else
- skilldb_invalid_error(type, "State", sk->nameid);
+ ShowWarning("%s: Invalid Spirit Sphere cost %d specified for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, spirit_sphere_cost, sk->nameid, conf->file, MAX_SPIRITBALL);
}
}
/**
- * Validates the "Items" flag
- * when parsing skill_db.conf
- * @param conf struct, pointer to the skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return void
- */
+ * Validates a skill's required items amounts when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required items amounts should be set it.
+ *
+ **/
+static void skill_validate_item_requirements_sub_item_amount(struct config_setting_t *conf, struct s_skill_db *sk, int item_index)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->req_items.item[item_index].amount[i] = 0;
+
+ if (config_setting_is_group(conf)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int amount;
+
+ if (libconfig->setting_lookup_int(conf, lv, &amount) == CONFIG_TRUE) {
+ if (amount >= 0 && amount <= MAX_AMOUNT)
+ sk->req_items.item[item_index].amount[i] = amount;
+ else
+ ShowWarning("%s: Invalid required item amount %d specified in level %d for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, amount, i + 1, sk->nameid, conf->file, MAX_AMOUNT);
+ } else {
+ // Items is not required for this skill level. (Not even in inventory!)
+ sk->req_items.item[item_index].amount[i] = -1;
+ }
+ }
+
+ return;
+ }
+
+ int amount = libconfig->setting_get_int(conf);
+
+ if (amount >= 0 && amount <= MAX_AMOUNT) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->req_items.item[item_index].amount[i] = amount;
+ } else {
+ ShowWarning("%s: Invalid required item amount %d specified for skill ID %d in %s! Minimum is 0, maximum is %d. Defaulting to 0...\n",
+ __func__, amount, sk->nameid, conf->file, MAX_AMOUNT);
+ }
+}
+
+/**
+ * Validates a skill's required items when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required items should be set it.
+ *
+ **/
+static void skill_validate_item_requirements_sub_items(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ sk->req_items.item[i].id = 0;
+
+ for (int j = 0; j < MAX_SKILL_LEVEL; j++)
+ sk->req_items.item[i].amount[j] = 0;
+ }
+
+ int item_index = 0;
+ int count = libconfig->setting_length(conf);
+
+ for (int i = 0; i < count; i++) {
+ struct config_setting_t *t = libconfig->setting_get_elem(conf, i);
+
+ if (t != NULL && strcasecmp(config_setting_name(t), "Any") != 0) {
+ if (item_index >= MAX_SKILL_ITEM_REQUIRE) {
+ ShowWarning("%s: Too many required items specified for skill ID %d in %s! Skipping item %s...\n",
+ __func__, sk->nameid, conf->file, config_setting_name(t));
+ continue;
+ }
+
+ int item_id = skill->validate_requirements_item_name(config_setting_name(t));
+
+ if (item_id == 0) {
+ ShowWarning("%s: Invalid required item %s specified for skill ID %d in %s! Skipping item...\n",
+ __func__, config_setting_name(t), sk->nameid, conf->file);
+ continue;
+ }
+
+ int j;
+
+ ARR_FIND(0, MAX_SKILL_ITEM_REQUIRE, j, sk->req_items.item[j].id == item_id);
+
+ if (j < MAX_SKILL_ITEM_REQUIRE) {
+ ShowWarning("%s: Duplicate required item %s specified for skill ID %d in %s! Skipping item...\n",
+ __func__, config_setting_name(t), sk->nameid, conf->file);
+ continue;
+ }
+
+ sk->req_items.item[item_index].id = item_id;
+ skill->validate_item_requirements_sub_item_amount(t, sk, item_index);
+ item_index++;
+ }
+ }
+}
+
+/**
+ * Validates a skill's required items any-flag when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required items any-flag should be set it.
+ *
+ **/
+static void skill_validate_item_requirements_sub_any_flag(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->req_items.any[i] = false;
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Any");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int any_flag;
+
+ if (libconfig->setting_lookup_bool(t, lv, &any_flag) == CONFIG_TRUE)
+ sk->req_items.any[i] = (any_flag != 0);
+ }
+
+ return;
+ }
+
+ int any_flag;
+
+ if (libconfig->setting_lookup_bool(conf, "Any", &any_flag) == CONFIG_TRUE && any_flag != 0) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->req_items.any[i] = true;
+ }
+}
+
+/**
+ * Validates a skill's required items when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required items should be set it.
+ *
+ **/
static void skill_validate_item_requirements(struct config_setting_t *conf, struct s_skill_db *sk)
{
- struct config_setting_t *tt = NULL;
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Items");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ skill->validate_item_requirements_sub_any_flag(t, sk);
+ skill->validate_item_requirements_sub_items(t, sk);
+ }
+}
+
+/**
+ * Validates a skill's required equipment amounts when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required equipment amounts should be set it.
+ *
+ **/
+static void skill_validate_equip_requirements_sub_item_amount(struct config_setting_t *conf, struct s_skill_db *sk, int item_index)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->req_equip.item[item_index].amount[i] = 0;
+
+ if (config_setting_is_group(conf)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int amount;
+
+ if (libconfig->setting_lookup_int(conf, lv, &amount) == CONFIG_TRUE) {
+ if (amount > 0) {
+ sk->req_equip.item[item_index].amount[i] = amount;
+ } else {
+ ShowWarning("%s: Invalid required equipment amount %d specified in level %d for skill ID %d in %s! Must be greater than 0. Defaulting to 1...\n",
+ __func__, amount, i + 1, sk->nameid, conf->file);
+ sk->req_equip.item[item_index].amount[i] = 1;
+ }
+ }
+ }
+
+ return;
+ }
+
+ int amount = libconfig->setting_get_int(conf);
+
+ if (amount <= 0) {
+ ShowWarning("%s: Invalid required equipment amount %d specified for skill ID %d in %s! Must be greater than 0. Defaulting to 1...\n",
+ __func__, amount, sk->nameid, conf->file);
+ amount = 1;
+ }
+
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->req_equip.item[item_index].amount[i] = amount;
+}
+/**
+ * Validates a skill's required equipment when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required equipment should be set it.
+ *
+ **/
+static void skill_validate_equip_requirements_sub_items(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
nullpo_retv(sk);
- if ((tt=libconfig->setting_get_member(conf, "Items")) && config_setting_is_group(conf)) {
- int itx=-1;
- struct config_setting_t *it;
- while((it=libconfig->setting_get_elem(tt, ++itx)) && itx < MAX_SKILL_ITEM_REQUIRE) {
- const char *type = config_setting_name(it);
+ for (int i = 0; i < MAX_SKILL_ITEM_REQUIRE; i++) {
+ sk->req_equip.item[i].id = 0;
+
+ for (int j = 0; j < MAX_SKILL_LEVEL; j++)
+ sk->req_equip.item[i].amount[j] = 0;
+ }
+
+ int item_index = 0;
+ int count = libconfig->setting_length(conf);
- if( type[0] == 'I' && type[1] == 'D' && itemdb->exists(atoi(type+2)) )
- sk->itemid[itx] = atoi(type+2);
- else if(!script->get_constant(type, &sk->itemid[itx])) {
- ShowWarning("skill_read_skilldb: Invalid required Item '%s' given for skill Id %d in '%s', skipping...\n",type, sk->nameid, DBPATH"skill_db.conf");
+ for (int i = 0; i < count; i++) {
+ struct config_setting_t *t = libconfig->setting_get_elem(conf, i);
+
+ if (t != NULL && strcasecmp(config_setting_name(t), "Any") != 0) {
+ if (item_index >= MAX_SKILL_ITEM_REQUIRE) {
+ ShowWarning("%s: Too many required equipment items specified for skill ID %d in %s! Skipping item %s...\n",
+ __func__, sk->nameid, conf->file, config_setting_name(t));
continue;
}
- if (config_setting_is_group(it)) {
- // TODO: Per-level item requirements are not implemented yet!
- // We just take the first level for the time being (old txt behavior)
- sk->amount[itx] = libconfig->setting_get_int_elem(it, 0);
- } else {
- sk->amount[itx] = libconfig->setting_get_int(it);
+ int item_id = skill->validate_requirements_item_name(config_setting_name(t));
+ struct item_data *it = itemdb->exists(item_id);
+
+ if (item_id == 0 || it == NULL) {
+ ShowWarning("%s: Invalid required equipment item %s specified for skill ID %d in %s! Skipping item...\n",
+ __func__, config_setting_name(t), sk->nameid, conf->file);
+ continue;
+ }
+
+ if (it->type != IT_WEAPON && it->type != IT_AMMO && it->type != IT_ARMOR && it->type != IT_CARD) {
+ ShowWarning("%s: Non-equipment item %s specified for skill ID %d in %s! Skipping item...\n",
+ __func__, config_setting_name(t), sk->nameid, conf->file);
+ continue;
+ }
+
+ int j;
+
+ ARR_FIND(0, MAX_SKILL_ITEM_REQUIRE, j, sk->req_equip.item[j].id == item_id);
+
+ if (j < MAX_SKILL_ITEM_REQUIRE) {
+ ShowWarning("%s: Duplicate required equipment item %s specified for skill ID %d in %s! Skipping item...\n",
+ __func__, config_setting_name(t), sk->nameid, conf->file);
+ continue;
}
+
+ sk->req_equip.item[item_index].id = item_id;
+ skill->validate_equip_requirements_sub_item_amount(t, sk, item_index);
+ item_index++;
}
}
}
/**
- * Validates the "Unit > Target" flag
- * when parsing skill_db.conf
- * @param conf struct, pointer to the skill configuration
- * @param sk struct, pointer to s_skill_db
- * @return void
- */
-static void skill_validate_unit_target(struct config_setting_t *conf, struct s_skill_db *sk)
+ * Validates a skill's required equipment any-flag when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required equipment any-flag should be set it.
+ *
+ **/
+static void skill_validate_equip_requirements_sub_any_flag(struct config_setting_t *conf, struct s_skill_db *sk)
{
- const char *type = NULL;
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->req_equip.any[i] = false;
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Any");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int any_flag;
+ if (libconfig->setting_lookup_bool(t, lv, &any_flag) == CONFIG_TRUE)
+ sk->req_equip.any[i] = (any_flag != 0);
+ }
+
+ return;
+ }
+
+ int any_flag;
+
+ if (libconfig->setting_lookup_bool(conf, "Any", &any_flag) == CONFIG_TRUE && any_flag != 0) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->req_equip.any[i] = true;
+ }
+}
+
+/**
+ * Validates a skill's required equipment when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the required equipment should be set it.
+ *
+ **/
+static void skill_validate_equip_requirements(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
nullpo_retv(sk);
- if(libconfig->setting_lookup_string(conf, "Target", &type)) {
- if(!strcmpi(type,"NotEnemy")) sk->unit_target = BCT_NOENEMY;
- else if(!strcmpi(type,"NotParty")) sk->unit_target = BCT_NOPARTY;
- else if (!strcmpi(type,"NotGuild")) sk->unit_target = BCT_NOGUILD;
- else if(!strcmpi(type,"Friend")) sk->unit_target = BCT_NOENEMY;
- else if(!strcmpi(type,"Party")) sk->unit_target = BCT_PARTY;
- else if(!strcmpi(type,"Ally")) sk->unit_target = BCT_PARTY|BCT_GUILD;
- else if(!strcmpi(type,"Guild")) sk->unit_target = BCT_GUILD;
- else if(!strcmpi(type,"All")) sk->unit_target = BCT_ALL;
- else if(!strcmpi(type,"Enemy")) sk->unit_target = BCT_ENEMY;
- else if(!strcmpi(type,"Self")) sk->unit_target = BCT_SELF;
- else if(!strcmpi(type,"SameGuild")) sk->unit_target = BCT_GUILD|BCT_SAMEGUILD;
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Equip");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ skill->validate_equip_requirements_sub_any_flag(t, sk);
+ skill->validate_equip_requirements_sub_items(t, sk);
}
+}
- if (sk->unit_flag & UF_DEFNOTENEMY && battle_config.defnotenemy)
- sk->unit_target = BCT_NOENEMY;
+/**
+ * Validates a required item's config setting name when reading the skill DB.
+ *
+ * @param name The config setting name to validate.
+ * @return The corresponding item ID if the passed config setting name is valid, otherwise 0.
+ *
+ **/
+static int skill_validate_requirements_item_name(const char *name)
+{
+ nullpo_ret(name);
+
+ int item_id = 0;
+
+ if (strlen(name) > 2 && name[0] == 'I' && name[1] == 'D') {
+ if ((item_id = atoi(name + 2)) == 0)
+ return 0;
- //By default, target just characters.
- sk->unit_target |= BL_CHAR;
+ struct item_data *it = itemdb->exists(item_id);
- if (sk->unit_flag & UF_NOPC)
- sk->unit_target &= ~BL_PC;
- if (sk->unit_flag & UF_NOMOB)
- sk->unit_target &= ~BL_MOB;
- if (sk->unit_flag & UF_SKILL)
- sk->unit_target |= BL_SKILL;
+ if (it == NULL)
+ return 0;
+
+ return it->nameid;
+ }
+
+ if (!script->get_constant(name, &item_id))
+ return 0;
+
+ return item_id;
}
/**
- * Validates the "Unit > Flag" setting
- * when parsing skill_db.conf
- * @param type const char, name of the flag being parsed.
- * @param on boolean, switch for flag setting
- * @param sk struct, pointer to s_skill_db.
- * @return (void)
- */
+ * Validates a skill's requirements when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the requirements should be set it.
+ *
+ **/
+static void skill_validate_requirements(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Requirements");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ skill->validate_hp_cost(t, sk);
+ skill->validate_sp_cost(t, sk);
+ skill->validate_hp_rate_cost(t, sk);
+ skill->validate_sp_rate_cost(t, sk);
+ skill->validate_max_hp_trigger(t, sk);
+ skill->validate_max_sp_trigger(t, sk);
+ skill->validate_zeny_cost(t, sk);
+ skill->validate_weapontype(t, sk);
+ skill->validate_ammotype(t, sk);
+ skill->validate_ammo_amount(t, sk);
+ skill->validate_state(t, sk);
+ skill->validate_spirit_sphere_cost(t, sk);
+ skill->validate_item_requirements(t, sk);
+ skill->validate_equip_requirements(t, sk);
+ }
+}
+
+/**
+ * Validates a single unit ID when reading the skill DB.
+ *
+ * @param unit_id The unit ID to validate.
+ * @return A number greater than or equal to 0 if the passed unit ID is valid, otherwise -1.
+ *
+ **/
+static int skill_validate_unit_id_sub(int unit_id)
+{
+ if (unit_id == 0 || (unit_id >= UNT_SAFETYWALL && unit_id <= UNT_SV_ROOTTWIST))
+ return unit_id;
+
+ return -1;
+}
+
+/**
+ * Validates a skill's unit IDs if specified as single value when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's unit ID data.
+ * @param sk The s_skill_db struct where the unit IDs should be set it.
+ * @param index The array index to use. (-1 for whole array.)
+ * @param unit_id The unit ID to validate.
+ *
+ **/
+static void skill_validate_unit_id_value(struct config_setting_t *conf, struct s_skill_db *sk, int index, int unit_id)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ if (skill->validate_unit_id_sub(unit_id) == -1) {
+ char level_string[14]; // Big enough to contain "in level 999 " in case of custom MAX_SKILL_LEVEL.
+
+ if (index == -1)
+ *level_string = '\0';
+ else
+ safesnprintf(level_string, sizeof(level_string), "in level %d ", index + 1);
+
+ ShowWarning("%s: Invalid unit ID %d specified %sfor skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, unit_id, level_string, sk->nameid, conf->file);
+
+ return;
+ }
+
+ if (index == -1) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++)
+ sk->unit_id[i][0] = unit_id;
+ } else {
+ sk->unit_id[index][0] = unit_id;
+ }
+}
+
+/**
+ * Validates a skill's unit IDs if specified as array when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's unit ID data.
+ * @param sk The s_skill_db struct where the unit IDs should be set it.
+ * @param index The array index to use. (-1 for whole array.)
+ *
+ **/
+static void skill_validate_unit_id_array(struct config_setting_t *conf, struct s_skill_db *sk, int index)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ char level_string[14]; // Big enough to contain "in level 999 " in case of custom MAX_SKILL_LEVEL.
+
+ if (index == -1)
+ *level_string = '\0';
+ else
+ safesnprintf(level_string, sizeof(level_string), "in level %d ", index + 1);
+
+ if (libconfig->setting_length(conf) == 0) {
+ ShowWarning("%s: No unit ID(s) specified %sfor skill ID %d in %s! Defaulting to 0...\n",
+ __func__, level_string, sk->nameid, conf->file);
+ return;
+ }
+
+ if (libconfig->setting_length(conf) > 2)
+ ShowWarning("%s: Specified more than two unit IDs %sfor skill ID %d in %s! Reading only the first two...\n",
+ __func__, level_string, sk->nameid, conf->file);
+
+ int unit_id1 = libconfig->setting_get_int_elem(conf, 0);
+
+ if (skill->validate_unit_id_sub(unit_id1) == -1) {
+ ShowWarning("%s: Invalid unit ID %d specified %sfor skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, unit_id1, level_string, sk->nameid, conf->file);
+ unit_id1 = 0;
+ }
+
+ int unit_id2 = 0;
+
+ if (libconfig->setting_length(conf) > 1) {
+ unit_id2 = libconfig->setting_get_int_elem(conf, 1);
+
+ if (skill->validate_unit_id_sub(unit_id2) == -1) {
+ ShowWarning("%s: Invalid unit ID %d specified %sfor skill ID %d in %s! Must be greater than or equal to 0. Defaulting to 0...\n",
+ __func__, unit_id2, level_string, sk->nameid, conf->file);
+ unit_id2 = 0;
+ }
+ }
+
+ if (unit_id1 == 0 && unit_id2 == 0)
+ return;
+
+ if (index == -1) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ sk->unit_id[i][0] = unit_id1;
+ sk->unit_id[i][1] = unit_id2;
+ }
+ } else {
+ sk->unit_id[index][0] = unit_id1;
+ sk->unit_id[index][1] = unit_id2;
+ }
+}
+
+/**
+ * Validates a skill's unit IDs if specified as group when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's unit ID data.
+ * @param sk The s_skill_db struct where the unit IDs should be set it.
+ *
+ **/
+static void skill_validate_unit_id_group(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ struct config_setting_t *t;
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+
+ if ((t = libconfig->setting_get_member(conf, lv)) != NULL && config_setting_is_array(t)) {
+ skill_validate_unit_id_array(t, sk, i);
+ continue;
+ }
+
+ int unit_id;
+
+ if (libconfig->setting_lookup_int(conf, lv, &unit_id) == CONFIG_TRUE)
+ skill_validate_unit_id_value(conf, sk, i, unit_id);
+ }
+}
+
+/**
+ * Validates a skill's unit IDs when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the unit IDs should be set it.
+ *
+ **/
+static void skill_validate_unit_id(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ sk->unit_id[i][0] = 0;
+ sk->unit_id[i][1] = 0;
+ }
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Id");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ skill_validate_unit_id_group(t, sk);
+ return;
+ }
+
+ if (t != NULL && config_setting_is_array(t)) {
+ skill_validate_unit_id_array(t, sk, -1);
+ return;
+ }
+
+ int unit_id;
+
+ if (libconfig->setting_lookup_int(conf, "Id", &unit_id) == CONFIG_TRUE)
+ skill_validate_unit_id_value(conf, sk, -1, unit_id);
+}
+
+/**
+ * Validates a skill's unit layout when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the unit layout should be set it.
+ *
+ **/
+static void skill_validate_unit_layout(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->unit_layout_type, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Layout");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int unit_layout;
+
+ if (libconfig->setting_lookup_int(t, lv, &unit_layout) == CONFIG_TRUE) {
+ if (unit_layout >= -1 && unit_layout <= MAX_SKILL_UNIT_LAYOUT)
+ sk->unit_layout_type[i] = unit_layout;
+ else
+ ShowWarning("%s: Invalid unit layout %d specified in level %d for skill ID %d in %s! Minimum is -1, maximum is %d. Defaulting to 0...\n",
+ __func__, unit_layout, i + 1, sk->nameid, conf->file, MAX_SKILL_UNIT_LAYOUT);
+ }
+ }
+
+ return;
+ }
+
+ int unit_layout;
+
+ if (libconfig->setting_lookup_int(conf, "Layout", &unit_layout) == CONFIG_TRUE) {
+ if (unit_layout >= -1 && unit_layout <= MAX_SKILL_UNIT_LAYOUT)
+ skill->level_set_value(sk->unit_layout_type, unit_layout);
+ else
+ ShowWarning("%s: Invalid unit layout %d specified for skill ID %d in %s! Minimum is -1, maximum is %d. Defaulting to 0...\n",
+ __func__, unit_layout, sk->nameid, conf->file, MAX_SKILL_UNIT_LAYOUT);
+ }
+}
+
+/**
+ * Validates a skill's unit range when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the unit range should be set it.
+ *
+ **/
+static void skill_validate_unit_range(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->unit_range, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Range");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int unit_range;
+
+ if (libconfig->setting_lookup_int(t, lv, &unit_range) == CONFIG_TRUE) {
+ if (unit_range >= -1 && unit_range <= UCHAR_MAX)
+ sk->unit_range[i] = unit_range;
+ else
+ ShowWarning("%s: Invalid unit range %d specified in level %d for skill ID %d in %s! Minimum is -1, maximum is %d. Defaulting to 0...\n",
+ __func__, unit_range, i + 1, sk->nameid, conf->file, UCHAR_MAX);
+ }
+ }
+
+ return;
+ }
+
+ int unit_range;
+
+ if (libconfig->setting_lookup_int(conf, "Range", &unit_range) == CONFIG_TRUE) {
+ if (unit_range >= -1 && unit_range <= UCHAR_MAX)
+ skill->level_set_value(sk->unit_range, unit_range);
+ else
+ ShowWarning("%s: Invalid unit range %d specified for skill ID %d in %s! Minimum is -1, maximum is %d. Defaulting to 0...\n",
+ __func__, unit_range, sk->nameid, conf->file, UCHAR_MAX);
+ }
+}
+
+/**
+ * Validates a skill's unit interval when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the unit interval should be set it.
+ *
+ **/
+static void skill_validate_unit_interval(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ skill->level_set_value(sk->unit_interval, 0);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Interval");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ int unit_interval;
+
+ if (libconfig->setting_lookup_int(t, lv, &unit_interval) == CONFIG_TRUE) {
+ if (unit_interval >= INFINITE_DURATION)
+ sk->unit_interval[i] = unit_interval;
+ else
+ ShowWarning("%s: Invalid unit interval %d specified in level %d for skill ID %d in %s! Must be greater than or equal to %d. Defaulting to 0...\n",
+ __func__, unit_interval, i + 1, sk->nameid, conf->file, INFINITE_DURATION);
+ }
+ }
+
+ return;
+ }
+
+ int unit_interval;
+
+ if (libconfig->setting_lookup_int(conf, "Interval", &unit_interval) == CONFIG_TRUE) {
+ if (unit_interval >= INFINITE_DURATION)
+ skill->level_set_value(sk->unit_interval, unit_interval);
+ else
+ ShowWarning("%s: Invalid unit interval %d specified for skill ID %d in %s! Must be greater than or equal to %d. Defaulting to 0...\n",
+ __func__, unit_interval, sk->nameid, conf->file, INFINITE_DURATION);
+ }
+}
+
+/**
+ * Validates a single unit flag when reading the skill DB.
+ *
+ * @param type The unit flag to validate.
+ * @param on Whether the unit flag is set for the skill.
+ * @param sk The s_skill_db struct where the unit flag should be set it.
+ * @return 0 if the passed unit flag is valid, otherwise 1.
+ *
+ **/
static int skill_validate_unit_flag_sub(const char *type, bool on, struct s_skill_db *sk)
{
- nullpo_ret(type);
- nullpo_ret(sk);
+ nullpo_retr(1, type);
+ nullpo_retr(1, sk);
+
if (strcmpi(type, "UF_DEFNOTENEMY") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_DEFNOTENEMY;
- } else {
+ else
sk->unit_flag &= ~UF_DEFNOTENEMY;
- }
} else if (strcmpi(type, "UF_NOREITERATION") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_NOREITERATION;
- } else {
+ else
sk->unit_flag &= ~UF_NOREITERATION;
- }
} else if (strcmpi(type, "UF_NOFOOTSET") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_NOFOOTSET;
- } else {
+ else
sk->unit_flag &= ~UF_NOFOOTSET;
- }
} else if (strcmpi(type, "UF_NOOVERLAP") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_NOOVERLAP;
- } else {
+ else
sk->unit_flag &= ~UF_NOOVERLAP;
- }
} else if (strcmpi(type, "UF_PATHCHECK") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_PATHCHECK;
- } else {
+ else
sk->unit_flag &= ~UF_PATHCHECK;
- }
} else if (strcmpi(type, "UF_NOPC") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_NOPC;
- } else {
+ else
sk->unit_flag &= ~UF_NOPC;
- }
} else if (strcmpi(type, "UF_NOMOB") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_NOMOB;
- } else {
+ else
sk->unit_flag &= ~UF_NOMOB;
- }
} else if (strcmpi(type, "UF_SKILL") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_SKILL;
- } else {
+ else
sk->unit_flag &= ~UF_SKILL;
- }
} else if (strcmpi(type, "UF_DANCE") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_DANCE;
- } else {
+ else
sk->unit_flag &= ~UF_DANCE;
- }
} else if (strcmpi(type, "UF_ENSEMBLE") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_ENSEMBLE;
- } else {
+ else
sk->unit_flag &= ~UF_ENSEMBLE;
- }
} else if (strcmpi(type, "UF_SONG") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_SONG;
- } else {
+ else
sk->unit_flag &= ~UF_SONG;
- }
} else if (strcmpi(type, "UF_DUALMODE") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_DUALMODE;
- } else {
+ else
sk->unit_flag &= ~UF_DUALMODE;
- }
} else if (strcmpi(type, "UF_RANGEDSINGLEUNIT") == 0) {
- if (on) {
+ if (on)
sk->unit_flag |= UF_RANGEDSINGLEUNIT;
- } else {
+ else
sk->unit_flag &= ~UF_RANGEDSINGLEUNIT;
- }
} else {
- return 1; // Invalid Type
+ return 1;
}
return 0;
}
/**
- * Validate "Unit > Flag" setting
- * when parsing skill_db.conf
- * @param conf struct, pointer to the skill configuration
- * @param sk struct, struct, pointer to s_skill_db
- * @return (void)
- */
+ * Validates a skill's unit flags when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the unit flags should be set it.
+ *
+ **/
static void skill_validate_unit_flag(struct config_setting_t *conf, struct s_skill_db *sk)
{
- struct config_setting_t *t = NULL;
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ sk->unit_flag = 0;
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Flag");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ struct config_setting_t *tt;
+ int i = 0;
+
+ while ((tt = libconfig->setting_get_elem(t, i++)) != NULL) {
+ bool on = libconfig->setting_get_bool_real(tt);
+
+ if (skill->validate_unit_flag_sub(config_setting_name(tt), on, sk))
+ ShowWarning("%s: Invalid unit flag %s specified for skill ID %d in %s! Skipping flag...\n",
+ __func__, config_setting_name(tt), sk->nameid, conf->file);
+ }
+ }
+}
+/**
+ * Validates a single unit target when reading the skill DB.
+ *
+ * @param target The unit target to validate.
+ * @return A number greater than or equal to 0 if the passed unit target is valid, otherwise -1.
+ *
+ **/
+static int skill_validate_unit_target_sub(const char *target)
+{
+ nullpo_retr(-1, target);
+
+ int ret_val = BCT_NOONE;
+
+ if (strcmpi(target, "NotEnemy") == 0)
+ ret_val = BCT_NOENEMY;
+ else if (strcmpi(target, "NotParty") == 0)
+ ret_val = BCT_NOPARTY;
+ else if (strcmpi(target, "NotGuild") == 0)
+ ret_val = BCT_NOGUILD;
+ else if (strcmpi(target, "Friend") == 0)
+ ret_val = BCT_NOENEMY;
+ else if (strcmpi(target, "Party") == 0)
+ ret_val = BCT_PARTY;
+ else if (strcmpi(target, "Ally") == 0)
+ ret_val = BCT_PARTY|BCT_GUILD;
+ else if (strcmpi(target, "Guild") == 0)
+ ret_val = BCT_GUILD;
+ else if (strcmpi(target, "All") == 0)
+ ret_val = BCT_ALL;
+ else if (strcmpi(target, "Enemy") == 0)
+ ret_val = BCT_ENEMY;
+ else if (strcmpi(target, "Self") == 0)
+ ret_val = BCT_SELF;
+ else if (strcmpi(target, "SameGuild") == 0)
+ ret_val = BCT_SAMEGUILD;
+ else if (strcmpi(target, "GuildAlly") == 0)
+ ret_val = BCT_GUILDALLY;
+ else if (strcmpi(target, "Neutral") == 0)
+ ret_val = BCT_NEUTRAL;
+ else if (strcmpi(target, "None") != 0)
+ ret_val = -1;
+
+ return ret_val;
+}
+
+/**
+ * Validates a skill's unit targets when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the unit targets should be set it.
+ *
+ **/
+static void skill_validate_unit_target(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
nullpo_retv(sk);
- if ((t=libconfig->setting_get_member(conf, "Flag")) && config_setting_is_group(t)) {
- int j=0;
- struct config_setting_t *tt = NULL;
- while ((tt = libconfig->setting_get_elem(t, j++))) {
- const char *name = config_setting_name(tt);
- if (skill->validate_unit_flag_sub(name, libconfig->setting_get_bool_real(tt), sk))
- skilldb_invalid_error(name, config_setting_name(t), sk->nameid);
+ skill->level_set_value(sk->unit_target, BCT_NOONE);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Target");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ char lv[6]; // Big enough to contain "Lv999" in case of custom MAX_SKILL_LEVEL.
+ safesnprintf(lv, sizeof(lv), "Lv%d", i + 1);
+ const char *unit_target;
+
+ if (libconfig->setting_lookup_string(t, lv, &unit_target) == CONFIG_TRUE) {
+ int target = skill->validate_unit_target_sub(unit_target);
+
+ if (target > BCT_NOONE)
+ sk->unit_target[i] = target;
+ else if (target == -1)
+ ShowWarning("%s: Invalid unit target %s specified in level %d for skill ID %d in %s! Defaulting to None...\n",
+ __func__, unit_target, i + 1, sk->nameid, conf->file);
+ }
}
+ } else {
+ const char *unit_target;
+
+ if (libconfig->setting_lookup_string(conf, "Target", &unit_target) == CONFIG_TRUE) {
+ int target = skill->validate_unit_target_sub(unit_target);
+
+ if (target > BCT_NOONE)
+ skill->level_set_value(sk->unit_target, target);
+ else if (target == -1)
+ ShowWarning("%s: Invalid unit target %s specified for skill ID %d in %s! Defaulting to None...\n",
+ __func__, unit_target, sk->nameid, conf->file);
+ }
+ }
+
+ for (int i = 0; i < MAX_SKILL_LEVEL; i++) {
+ if ((sk->unit_flag & UF_DEFNOTENEMY) != 0 && battle_config.defnotenemy != 0)
+ sk->unit_target[i] = BCT_NOENEMY;
+
+ // By default target just characters.
+ sk->unit_target[i] |= BL_CHAR;
+
+ if ((sk->unit_flag & UF_NOPC) != 0)
+ sk->unit_target[i] &= ~BL_PC;
+
+ if ((sk->unit_flag & UF_NOMOB) != 0)
+ sk->unit_target[i] &= ~BL_MOB;
+
+ if ((sk->unit_flag & UF_SKILL) != 0)
+ sk->unit_target[i] |= BL_SKILL;
+ }
+}
+
+/**
+ * Validates a skill's unit data when reading the skill DB.
+ *
+ * @param conf The libconfig settings block which contains the skill's data.
+ * @param sk The s_skill_db struct where the unit data should be set it.
+ *
+ **/
+static void skill_validate_unit(struct config_setting_t *conf, struct s_skill_db *sk)
+{
+ nullpo_retv(conf);
+ nullpo_retv(sk);
+
+ struct config_setting_t *t = libconfig->setting_get_member(conf, "Unit");
+
+ if (t != NULL && config_setting_is_group(t)) {
+ skill->validate_unit_id(t, sk);
+ skill->validate_unit_layout(t, sk);
+ skill->validate_unit_range(t, sk);
+ skill->validate_unit_interval(t, sk);
+ skill->validate_unit_flag(t, sk);
+ skill->validate_unit_target(t, sk);
}
}
+
/**
* Validate additional field settings via plugins
* when parsing skill_db.conf
@@ -21106,293 +23662,100 @@ static void skill_validate_additional_fields(struct config_setting_t *conf, stru
}
/**
- * Validates a skill entry and adds it to the database. [ Smokexyz/Hercules ]
- * @param sk contains skill data to be checked.
- * @param *source filepath constant.
- * @return boolean true on success.
- */
-static bool skill_validate_skilldb(struct s_skill_db *sk, const char *source)
+ * Reads a skill DB file from relative path.
+ *
+ * @param filename The skill DB's file name including the DB path.
+ * @return True on success, otherwise false.
+ *
+ **/
+static bool skill_read_skilldb(const char *filename)
{
- int idx;
+ nullpo_retr(false, filename);
- nullpo_retr(false, sk);
- idx = skill->get_index(sk->nameid);
- if (idx == 0) {
- ShowWarning("skill_validate_skilldb: Invalid skill Id %d provided in '%s'! ... skipping\n", sk->nameid, source);
- ShowInfo("It is possible that the skill Id is 0 or unavailable (interferes with guild/homun/mercenary skill mapping).\n");
- return false;
- } else if (sk->max <= 0) {
- ShowError("skill_validate_skilldb: Invalid Max Level %d specified for skill Id %d in '%s', skipping...\n", sk->max, sk->nameid, source);
- return false;
- }
+ char filepath[256];
- /* Direct assignment of temporary skill storage to skill db */
- skill->dbs->db[idx] = *sk;
- /* Put skill name in name2id DB */
- strdb_iput(skill->name2id_db, skill->dbs->db[idx].name, skill->dbs->db[idx].nameid);
- /* Set Name to Id script constants */
- script->set_constant2(skill->dbs->db[idx].name, (int)skill->dbs->db[idx].nameid, false, false);
+ libconfig->format_db_path(filename, filepath, sizeof(filepath));
- return true;
-}
+ if (!exists(filepath)) {
+ ShowError("%s: Can't find file %s! Abort reading skills...\n", __func__, filepath);
+ return false;
+ }
-/**
- * Reads skill_db.conf from relative filepath and processes [ Smokexyz/Hercules ]
- * entries into the skill database.
- * @param filename contains the file path and name.
- * @return boolean true on success
- */
-static bool skill_read_skilldb(const char *filename)
-{
struct config_t skilldb;
- struct config_setting_t *sk, *conf;
- char filepath[256];
- int count=0, index=0;
- bool duplicate[MAX_SKILL_DB] = {0};
-
- nullpo_retr(false, filename);
-
- libconfig->format_db_path(filename, filepath, sizeof(filepath));
- if (!libconfig->load_file(&skilldb, filepath)) {
+ if (libconfig->load_file(&skilldb, filepath) == 0)
return false; // Libconfig error report.
- }
- // Possible Syntax error.
- if ((sk=libconfig->setting_get_member(skilldb.root, "skill_db")) == NULL) {
- ShowError("skill_read_skilldb: Skill DB could not be loaded, please check '%s'.\n", filepath);
+ struct config_setting_t *sk = libconfig->setting_get_member(skilldb.root, "skill_db");
+
+ if (sk == NULL) {
+ ShowError("%s: Skill DB could not be loaded! Please check %s.\n", __func__, filepath);
libconfig->destroy(&skilldb);
return false;
}
- while ((conf = libconfig->setting_get_elem(sk,index++))) {
- int idx=0, skill_id=0, temp=0;
- struct config_setting_t *t = NULL, *tt = NULL;
- struct s_skill_db tmp_db = { 0 };
+ struct config_setting_t *conf;
+ int index = 0;
+ int count = 0;
- /* Skill ID */
- if (!libconfig->setting_lookup_int(conf, "Id", &skill_id)) {
- ShowError("skill_read_skilldb: Skill Id not specified for entry %d in '%s', skipping...\n", index, filepath );
- continue;
- }
-
- tmp_db.nameid = skill_id;
+ while ((conf = libconfig->setting_get_elem(sk, index++)) != NULL) {
+ struct s_skill_db tmp_db = {0};
- if((idx = skill->get_index(skill_id)) == 0) {
- ShowError("skill_read_skilldb: Skill Id %d is out of range, or within a reserved range (for guild, homunculus, mercenary or elemental skills). skipping...\n", idx);
+ /** Validate mandatory fields. **/
+ skill->validate_id(conf, &tmp_db, index);
+ if (tmp_db.nameid == 0)
continue;
- }
- if (duplicate[idx]) {
- ShowWarning("skill_read_skilldb: Duplicate Skill Id %d in entry %d in '%s', skipping...\n", skill_id, index, filepath);
+ skill->validate_name(conf, &tmp_db);
+ if (*tmp_db.name == '\0')
continue;
- }
- /* Skill Name Constant */
- if (!libconfig->setting_lookup_mutable_string(conf, "Name", tmp_db.name, sizeof(tmp_db.name))) {
- ShowError("skill_read_skilldb: Name not specified for skill Id %d in '%s', skipping...\n", skill_id, filepath);
+ skill->validate_max_level(conf, &tmp_db);
+ if (tmp_db.max == 0)
continue;
- }
-
- /* Skill Description */
- libconfig->setting_lookup_mutable_string(conf, "Description", tmp_db.desc, sizeof(tmp_db.desc));
- /* Max Level */
- if (!libconfig->setting_lookup_int(conf, "MaxLevel", &temp)) {
- ShowError("skill_read_skilldb: MaxLevel not specified for skill Id %d in '%s', skipping...\n", skill_id, filepath);
- continue;
- } else {
- tmp_db.max = temp;
- }
-
- /* Range */
- if ((t=libconfig->setting_get_member(conf, "Range")))
- skill->config_set_level(t, tmp_db.range);
-
- /* Hit Type */
+ /** Validate optional fields. **/
+ skill->validate_description(conf, &tmp_db);
+ skill->validate_range(conf, &tmp_db);
skill->validate_hittype(conf, &tmp_db);
-
- /* Skill Type */
skill->validate_skilltype(conf, &tmp_db);
-
- /* Skill Info */
skill->validate_skillinfo(conf, &tmp_db);
-
- /* Skill Attack Type */
skill->validate_attacktype(conf, &tmp_db);
-
- /* Skill Element */
skill->validate_element(conf, &tmp_db);
-
- /* Damage Type */
skill->validate_damagetype(conf, &tmp_db);
-
- /* Splash Range */
- if ((t = libconfig->setting_get_member(conf, "SplashRange")))
- skill->config_set_level(t, tmp_db.splash);
-
- /* Number of Hits */
- if ((t = libconfig->setting_get_member(conf, "NumberOfHits")) && config_setting_is_group(t))
- skill->config_set_level(t, tmp_db.num);
- else if ((libconfig->setting_lookup_int(conf, "NumberOfHits", &temp)))
- skill->level_set_value(tmp_db.num, temp);
- else
- skill->level_set_value(tmp_db.num, 1); // Default 1
-
- /* Interrupt Cast */
- if (libconfig->setting_lookup_bool(conf, "InterruptCast", &tmp_db.castcancel) == CONFIG_FALSE)
- tmp_db.castcancel = 0;
-
- /* Cast Defense Rate */
- libconfig->setting_lookup_int(conf, "CastDefRate", &tmp_db.cast_def_rate);
-
- /* Skill Instances */
- if ((t = libconfig->setting_get_member(conf, "SkillInstances")))
- skill->config_set_level(t, tmp_db.maxcount);
-
- /* Knock-Back Tiles */
- if ((t = libconfig->setting_get_member(conf, "KnockBackTiles")))
- skill->config_set_level(t, tmp_db.blewcount);
- /**
- * Skill Cast / Delay data handling
- */
- /* Cast Time */
- if ((t=libconfig->setting_get_member(conf, "CastTime")))
- skill->config_set_level(t, tmp_db.cast);
-
- /* After Cast Act Delay */
- if ((t=libconfig->setting_get_member(conf, "AfterCastActDelay")))
- skill->config_set_level(t, tmp_db.delay);
-
- /* After Cast Walk Delay */
- if ((t=libconfig->setting_get_member(conf, "AfterCastWalkDelay")))
- skill->config_set_level(t, tmp_db.walkdelay);
-
- /* Skill Data/Duration */
- if ((t=libconfig->setting_get_member(conf, "SkillData1")))
- skill->config_set_level(t, tmp_db.upkeep_time);
-
- /* Skill Data/Duration 2 */
- if ((t=libconfig->setting_get_member(conf, "SkillData2")))
- skill->config_set_level(t, tmp_db.upkeep_time2);
-
- /* Skill Cool Down */
- if ((t=libconfig->setting_get_member(conf, "CoolDown")))
- skill->config_set_level(t, tmp_db.cooldown);
-
-#ifdef RENEWAL_CAST
- /* Fixed Casting Time */
- if ((t=libconfig->setting_get_member(conf, "FixedCastTime")))
- skill->config_set_level(t, tmp_db.fixed_cast);
-#endif
- /* Cast Time Options */
+ skill->validate_splash_range(conf, &tmp_db);
+ skill->validate_number_of_hits(conf, &tmp_db);
+ skill->validate_interrupt_cast(conf, &tmp_db);
+ skill->validate_cast_def_rate(conf, &tmp_db);
+ skill->validate_number_of_instances(conf, &tmp_db);
+ skill->validate_knock_back_tiles(conf, &tmp_db);
+ skill->validate_cast_time(conf, &tmp_db);
+ skill->validate_act_delay(conf, &tmp_db);
+ skill->validate_walk_delay(conf, &tmp_db);
+ skill->validate_skill_data1(conf, &tmp_db);
+ skill->validate_skill_data2(conf, &tmp_db);
+ skill->validate_cooldown(conf, &tmp_db);
+ skill->validate_fixed_cast_time(conf, &tmp_db);
skill->validate_castnodex(conf, &tmp_db, false);
skill->validate_castnodex(conf, &tmp_db, true);
+ skill->validate_requirements(conf, &tmp_db);
+ skill->validate_unit(conf, &tmp_db);
- /**
- * Skill Requirements data handling
- */
- if ((t=libconfig->setting_get_member(conf, "Requirements")) && config_setting_is_group(t)) {
-
- /* HP Costs */
- if ((tt = libconfig->setting_get_member(t, "HPCost")))
- skill->config_set_level(tt, tmp_db.hp);
-
- /* Max HP Trigger */
- if ((tt = libconfig->setting_get_member(t, "MaxHPTrigger")))
- skill->config_set_level(tt, tmp_db.mhp);
-
- /* SP Cost */
- if ((tt = libconfig->setting_get_member(t, "SPCost")))
- skill->config_set_level(tt, tmp_db.sp);
-
- /* HP Rate */
- if ((tt = libconfig->setting_get_member(t, "HPRateCost")))
- skill->config_set_level(tt, tmp_db.hp_rate);
-
- /* SP Rate */
- if ((tt = libconfig->setting_get_member(t, "SPRateCost")))
- skill->config_set_level(tt, tmp_db.sp_rate);
-
- /* Zeny Cost */
- if ((tt = libconfig->setting_get_member(t, "ZenyCost")))
- skill->config_set_level(tt, tmp_db.zeny);
-
- /* Spirit Sphere Cost */
- if ((tt = libconfig->setting_get_member(t, "SpiritSphereCost")))
- skill->config_set_level(tt, tmp_db.spiritball);
-
- /* Weapon Types */
- skill->validate_weapontype(t, &tmp_db);
-
- /* Ammunition Types */
- skill->validate_ammotype(t, &tmp_db);
-
- /* Ammunition Amount */
- if ((tt = libconfig->setting_get_member(t, "AmmoAmount")))
- skill->config_set_level(tt, tmp_db.ammo_qty);
-
- /* State */
- skill->validate_state(t, &tmp_db);
-
- /* Spirit Sphere Cost */
- if ((tt = libconfig->setting_get_member(t, "SpiritSphereCost")))
- skill->config_set_level(tt, tmp_db.spiritball);
-
- /* Item Requirements and Amounts */
- skill->validate_item_requirements(t, &tmp_db);
- }
-
- /**
- * Skill Unit data handling
- */
- if ((t=libconfig->setting_get_member(conf, "Unit")) && config_setting_is_group(t)) {
-
- /* Unit IDs [1,2] */
- if ((tt=libconfig->setting_get_member(t, "Id")) && config_setting_is_array(tt)) {
- tmp_db.unit_id[0] = libconfig->setting_get_int_elem(tt, 0);
- tmp_db.unit_id[1] = libconfig->setting_get_int_elem(tt, 1);
- } else {
- libconfig->setting_lookup_int(t, "Id", &tmp_db.unit_id[0]);
- }
-
- /* Layout */
- if((tt=libconfig->setting_get_member(t, "Layout")))
- skill->config_set_level(tt, tmp_db.unit_layout_type);
-
- /* Range */
- if((tt=libconfig->setting_get_member(t, "Range")))
- skill->config_set_level(tt, tmp_db.unit_range);
-
- /* Interval */
- if(libconfig->setting_lookup_int(t, "Interval", &temp))
- tmp_db.unit_interval = temp;
-
- /* Flag */
- skill->validate_unit_flag(t, &tmp_db);
-
- /* Target */
- skill->validate_unit_target(t, &tmp_db);
- }
-
- /* Additional Fields for Plugins */
+ /** Validate additional fields for plugins. **/
skill->validate_additional_fields(conf, &tmp_db);
- // Validate the skill entry, add it to the duplicate array and increment count on success.
- if ((duplicate[idx] = skill->validate_skilldb(&tmp_db, filepath)))
- count++;
+ /** Add the skill. **/
+ skill->dbs->db[skill->get_index(tmp_db.nameid)] = tmp_db;
+ strdb_iput(skill->name2id_db, tmp_db.name, tmp_db.nameid);
+ script->set_constant2(tmp_db.name, tmp_db.nameid, false, false);
+ count++;
}
libconfig->destroy(&skilldb);
-
ShowStatus("Done reading '"CL_WHITE"%d"CL_RESET"' entries in '"CL_WHITE"%s"CL_RESET"'.\n", count, filepath);
-
return true;
}
-#undef skilldb_duplicate_warning
-#undef skilldb_invalid_error
-
/*===============================
* DB reading.
* produce_db.txt
@@ -21571,6 +23934,7 @@ void skill_defaults(void)
skill->get_splash = skill_get_splash;
skill->get_hp = skill_get_hp;
skill->get_mhp = skill_get_mhp;
+ skill->get_msp = skill_get_msp;
skill->get_sp = skill_get_sp;
skill->get_hp_rate = skill_get_hp_rate;
skill->get_sp_rate = skill_get_sp_rate;
@@ -21578,6 +23942,10 @@ void skill_defaults(void)
skill->get_spiritball = skill_get_spiritball;
skill->get_itemid = skill_get_itemid;
skill->get_itemqty = skill_get_itemqty;
+ skill->get_item_any_flag = skill_get_item_any_flag;
+ skill->get_equip_id = skill_get_equip_id;
+ skill->get_equip_amount = skill_get_equip_amount;
+ skill->get_equip_any_flag = skill_get_equip_any_flag;
skill->get_zeny = skill_get_zeny;
skill->get_num = skill_get_num;
skill->get_cast = skill_get_cast;
@@ -21636,9 +24004,12 @@ void skill_defaults(void)
skill->cast_fix_sc = skill_castfix_sc;
skill->vf_cast_fix = skill_vfcastfix;
skill->delay_fix = skill_delay_fix;
- skill->is_item_skill = skill_is_item_skill;
+ skill->check_condition_required_equip = skill_check_condition_required_equip;
skill->check_condition_castbegin = skill_check_condition_castbegin;
+ skill->check_condition_required_items = skill_check_condition_required_items;
+ skill->items_required = skill_items_required;
skill->check_condition_castend = skill_check_condition_castend;
+ skill->get_any_item_index = skill_get_any_item_index;
skill->consume_requirement = skill_consume_requirement;
skill->get_requirement = skill_get_requirement;
skill->check_pc_partner = skill_check_pc_partner;
@@ -21662,6 +24033,7 @@ void skill_defaults(void)
skill->not_ok_hom = skillnotok_hom;
skill->not_ok_hom_unknown = skillnotok_hom_unknown;
skill->not_ok_mercenary = skillnotok_mercenary;
+ skill->validate_autocast_data = skill_validate_autocast_data;
skill->chastle_mob_changetarget = skill_chastle_mob_changetarget;
skill->can_produce_mix = skill_can_produce_mix;
skill->produce_mix = skill_produce_mix;
@@ -21722,24 +24094,68 @@ void skill_defaults(void)
skill->init_unit_layout = skill_init_unit_layout;
skill->init_unit_layout_unknown = skill_init_unit_layout_unknown;
/* Skill DB Libconfig */
+ skill->validate_id = skill_validate_id;
+ skill->name_contains_invalid_character = skill_name_contains_invalid_character;
+ skill->validate_name = skill_validate_name;
+ skill->validate_max_level = skill_validate_max_level;
+ skill->validate_description = skill_validate_description;
+ skill->validate_range = skill_validate_range;
skill->validate_hittype = skill_validate_hittype;
- skill->validate_attacktype = skill_validate_attacktype;
- skill->validate_element = skill_validate_element;
skill->validate_skilltype = skill_validate_skilltype;
skill->validate_skillinfo = skill_validate_skillinfo;
+ skill->validate_attacktype = skill_validate_attacktype;
+ skill->validate_element = skill_validate_element;
skill->validate_damagetype = skill_validate_damagetype;
+ skill->validate_splash_range = skill_validate_splash_range;
+ skill->validate_number_of_hits = skill_validate_number_of_hits;
+ skill->validate_interrupt_cast = skill_validate_interrupt_cast;
+ skill->validate_cast_def_rate = skill_validate_cast_def_rate;
+ skill->validate_number_of_instances = skill_validate_number_of_instances;
+ skill->validate_knock_back_tiles = skill_validate_knock_back_tiles;
+ skill->validate_cast_time = skill_validate_cast_time;
+ skill->validate_act_delay = skill_validate_act_delay;
+ skill->validate_walk_delay = skill_validate_walk_delay;
+ skill->validate_skill_data1 = skill_validate_skill_data1;
+ skill->validate_skill_data2 = skill_validate_skill_data2;
+ skill->validate_cooldown = skill_validate_cooldown;
+ skill->validate_fixed_cast_time = skill_validate_fixed_cast_time;
skill->validate_castnodex = skill_validate_castnodex;
+ skill->validate_hp_cost = skill_validate_hp_cost;
+ skill->validate_sp_cost = skill_validate_sp_cost;
+ skill->validate_hp_rate_cost = skill_validate_hp_rate_cost;
+ skill->validate_sp_rate_cost = skill_validate_sp_rate_cost;
+ skill->validate_max_hp_trigger = skill_validate_max_hp_trigger;
+ skill->validate_max_sp_trigger = skill_validate_max_sp_trigger;
+ skill->validate_zeny_cost = skill_validate_zeny_cost;
+ skill->validate_weapontype_sub = skill_validate_weapontype_sub;
skill->validate_weapontype = skill_validate_weapontype;
+ skill->validate_ammotype_sub = skill_validate_ammotype_sub;
skill->validate_ammotype = skill_validate_ammotype;
+ skill->validate_ammo_amount = skill_validate_ammo_amount;
+ skill->validate_state_sub = skill_validate_state_sub;
skill->validate_state = skill_validate_state;
+ skill->validate_spirit_sphere_cost = skill_validate_spirit_sphere_cost;
+ skill->validate_item_requirements_sub_item_amount = skill_validate_item_requirements_sub_item_amount;
+ skill->validate_item_requirements_sub_items = skill_validate_item_requirements_sub_items;
+ skill->validate_item_requirements_sub_any_flag = skill_validate_item_requirements_sub_any_flag;
skill->validate_item_requirements = skill_validate_item_requirements;
- skill->validate_unit_target = skill_validate_unit_target;
+ skill->validate_equip_requirements_sub_item_amount = skill_validate_equip_requirements_sub_item_amount;
+ skill->validate_equip_requirements_sub_items = skill_validate_equip_requirements_sub_items;
+ skill->validate_equip_requirements_sub_any_flag = skill_validate_equip_requirements_sub_any_flag;
+ skill->validate_equip_requirements = skill_validate_equip_requirements;
+ skill->validate_requirements_item_name = skill_validate_requirements_item_name;
+ skill->validate_requirements = skill_validate_requirements;
+ skill->validate_unit_id_sub = skill_validate_unit_id_sub;
+ skill->validate_unit_id = skill_validate_unit_id;
+ skill->validate_unit_layout = skill_validate_unit_layout;
+ skill->validate_unit_range = skill_validate_unit_range;
+ skill->validate_unit_interval = skill_validate_unit_interval;
+ skill->validate_unit_flag_sub = skill_validate_unit_flag_sub;
skill->validate_unit_flag = skill_validate_unit_flag;
+ skill->validate_unit_target_sub = skill_validate_unit_target_sub;
+ skill->validate_unit_target = skill_validate_unit_target;
+ skill->validate_unit = skill_validate_unit;
skill->validate_additional_fields = skill_validate_additional_fields;
- skill->validate_skilldb = skill_validate_skilldb;
- skill->validate_weapontype_sub = skill_validate_weapontype_sub;
- skill->validate_ammotype_sub = skill_validate_ammotype_sub;
- skill->validate_unit_flag_sub = skill_validate_unit_flag_sub;
skill->read_skilldb = skill_read_skilldb;
skill->config_set_level = skill_config_set_level;
skill->level_set_value = skill_level_set_value;
@@ -21802,4 +24218,5 @@ void skill_defaults(void)
skill->splash_target = skill_splash_target;
skill->check_npc_chaospanic = skill_check_npc_chaospanic;
skill->count_wos = skill_count_wos;
+ skill->get_linked_song_dance_id = skill_get_linked_song_dance_id;
}
diff --git a/src/map/skill.h b/src/map/skill.h
index c65547181..b9178321d 100644
--- a/src/map/skill.h
+++ b/src/map/skill.h
@@ -50,7 +50,7 @@ struct status_change_entry;
#define MAX_ARROW_RESOURCE 5
#define MAX_SKILL_ABRA_DB 210
#define MAX_SKILL_IMPROVISE_DB 30
-#define MAX_SKILL_LEVEL 10
+#define MAX_SKILL_LEVEL 20
#define MAX_SKILL_UNIT_LAYOUT 45
#define MAX_SQUARE_LAYOUT 5 // 11*11 Placement of a maximum unit
#define MAX_SKILL_UNIT_COUNT ((MAX_SQUARE_LAYOUT*2+1)*(MAX_SQUARE_LAYOUT*2+1))
@@ -60,6 +60,10 @@ struct status_change_entry;
#define MAX_SKILLUNITGROUPTICKSET 25
#define MAX_SKILL_NAME_LENGTH 32
+#ifndef MAX_SKILL_DESC_LENGTH
+ #define MAX_SKILL_DESC_LENGTH 50
+#endif
+
// Custom Skill Ranges is used in skill_get_index, to allocate indexes based on ID and gaps between 2 SkillID
#ifndef CUSTOM_SKILL_RANGES
#define CUSTOM_SKILL_RANGES
@@ -1724,41 +1728,76 @@ enum {
UNT_MAX = 0x190
};
+/** Constants to identify the auto-cast type. **/
+enum autocast_type {
+ AUTOCAST_NONE = 0,
+ AUTOCAST_TEMP, // Used when type is only required during the execution of the calling instance. (For example bAutoSpell* skills.)
+ AUTOCAST_ABRA, // Used for Abracadabra (Hocus pocus).
+ AUTOCAST_IMPROVISE, // Used for Improvised Song.
+ AUTOCAST_ITEM, // Used for itemskill() script command.
+};
+
/**
* Structures
**/
+/** A container holding all required items. **/
+struct skill_required_item_data {
+ struct {
+ int id;
+ int amount[MAX_SKILL_LEVEL];
+ } item[MAX_SKILL_ITEM_REQUIRE];
+ bool any[MAX_SKILL_LEVEL];
+};
+
struct skill_condition {
int weapon,ammo,ammo_qty,hp,sp,zeny,spiritball,mhp,state;
+ int msp;
int itemid[MAX_SKILL_ITEM_REQUIRE],amount[MAX_SKILL_ITEM_REQUIRE];
+ int equip_id[MAX_SKILL_ITEM_REQUIRE];
+ int equip_amount[MAX_SKILL_ITEM_REQUIRE];
};
// Database skills
struct s_skill_db {
int nameid;
- char name[MAX_SKILL_NAME_LENGTH];
- char desc[40];
- int range[MAX_SKILL_LEVEL],hit,inf,element[MAX_SKILL_LEVEL],nk,splash[MAX_SKILL_LEVEL],max;
+ char name[MAX_SKILL_NAME_LENGTH + 1];
+ char desc[MAX_SKILL_DESC_LENGTH + 1];
+ int range[MAX_SKILL_LEVEL];
+ int hit[MAX_SKILL_LEVEL];
+ int inf;
+ int element[MAX_SKILL_LEVEL];
+ int nk;
+ int splash[MAX_SKILL_LEVEL];
+ int max;
int num[MAX_SKILL_LEVEL];
int cast[MAX_SKILL_LEVEL],walkdelay[MAX_SKILL_LEVEL],delay[MAX_SKILL_LEVEL];
#ifdef RENEWAL_CAST
int fixed_cast[MAX_SKILL_LEVEL];
#endif
int upkeep_time[MAX_SKILL_LEVEL],upkeep_time2[MAX_SKILL_LEVEL],cooldown[MAX_SKILL_LEVEL];
- int castcancel,cast_def_rate;
- int inf2,maxcount[MAX_SKILL_LEVEL],skill_type;
+ int castcancel[MAX_SKILL_LEVEL];
+ int cast_def_rate[MAX_SKILL_LEVEL];
+ int inf2;
+ int maxcount[MAX_SKILL_LEVEL];
+ int skill_type[MAX_SKILL_LEVEL];
int blewcount[MAX_SKILL_LEVEL];
int hp[MAX_SKILL_LEVEL],sp[MAX_SKILL_LEVEL],mhp[MAX_SKILL_LEVEL],hp_rate[MAX_SKILL_LEVEL],sp_rate[MAX_SKILL_LEVEL],zeny[MAX_SKILL_LEVEL];
- int weapon,ammo,ammo_qty[MAX_SKILL_LEVEL],state,spiritball[MAX_SKILL_LEVEL];
- int itemid[MAX_SKILL_ITEM_REQUIRE],amount[MAX_SKILL_ITEM_REQUIRE];
+ int msp[MAX_SKILL_LEVEL];
+ int weapon;
+ int ammo;
+ int ammo_qty[MAX_SKILL_LEVEL];
+ int state[MAX_SKILL_LEVEL];
+ int spiritball[MAX_SKILL_LEVEL];
int castnodex[MAX_SKILL_LEVEL], delaynodex[MAX_SKILL_LEVEL];
- int nocast;
- int unit_id[2];
+ int unit_id[MAX_SKILL_LEVEL][2];
int unit_layout_type[MAX_SKILL_LEVEL];
int unit_range[MAX_SKILL_LEVEL];
- int unit_interval;
- int unit_target;
+ int unit_interval[MAX_SKILL_LEVEL];
+ int unit_target[MAX_SKILL_LEVEL];
int unit_flag;
+ struct skill_required_item_data req_items;
+ struct skill_required_item_data req_equip;
};
struct s_skill_unit_layout {
@@ -1944,8 +1983,8 @@ struct skill_interface {
int unit_group_newid;
/* accesssors */
int (*get_index) (int skill_id);
- int (*get_type) (int skill_id);
- int (*get_hit) (int skill_id);
+ int (*get_type) (int skill_id, int skill_lv);
+ int (*get_hit) (int skill_id, int skill_lv);
int (*get_inf) (int skill_id);
int (*get_ele) (int skill_id, int skill_lv);
int (*get_nk) (int skill_id);
@@ -1955,13 +1994,18 @@ struct skill_interface {
int (*get_splash) (int skill_id, int skill_lv);
int (*get_hp) (int skill_id, int skill_lv);
int (*get_mhp) (int skill_id, int skill_lv);
+ int (*get_msp) (int skill_id, int skill_lv);
int (*get_sp) (int skill_id, int skill_lv);
int (*get_hp_rate) (int skill_id, int skill_lv);
int (*get_sp_rate) (int skill_id, int skill_lv);
- int (*get_state) (int skill_id);
+ int (*get_state) (int skill_id, int skill_lv);
int (*get_spiritball) (int skill_id, int skill_lv);
int (*get_itemid) (int skill_id, int item_idx);
- int (*get_itemqty) (int skill_id, int item_idx);
+ int (*get_itemqty) (int skill_id, int item_idx, int skill_lv);
+ bool (*get_item_any_flag) (int skill_id, int skill_lv);
+ int (*get_equip_id) (int skill_id, int item_idx);
+ int (*get_equip_amount) (int skill_id, int item_idx, int skill_lv);
+ bool (*get_equip_any_flag) (int skill_id, int skill_lv);
int (*get_zeny) (int skill_id, int skill_lv);
int (*get_num) (int skill_id, int skill_lv);
int (*get_cast) (int skill_id, int skill_lv);
@@ -1971,19 +2015,19 @@ struct skill_interface {
int (*get_time2) (int skill_id, int skill_lv);
int (*get_castnodex) (int skill_id, int skill_lv);
int (*get_delaynodex) (int skill_id, int skill_lv);
- int (*get_castdef) (int skill_id);
+ int (*get_castdef) (int skill_id, int skill_lv);
int (*get_weapontype) (int skill_id);
int (*get_ammotype) (int skill_id);
int (*get_ammo_qty) (int skill_id, int skill_lv);
- int (*get_unit_id) (int skill_id, int flag);
+ int (*get_unit_id) (int skill_id, int skill_lv, int flag);
int (*get_inf2) (int skill_id);
- int (*get_castcancel) (int skill_id);
+ int (*get_castcancel) (int skill_id, int skill_lv);
int (*get_maxcount) (int skill_id, int skill_lv);
int (*get_blewcount) (int skill_id, int skill_lv);
int (*get_unit_flag) (int skill_id);
- int (*get_unit_target) (int skill_id);
- int (*get_unit_interval) (int skill_id);
- int (*get_unit_bl_target) (int skill_id);
+ int (*get_unit_target) (int skill_id, int skill_lv);
+ int (*get_unit_interval) (int skill_id, int skill_lv);
+ int (*get_unit_bl_target) (int skill_id, int skill_lv);
int (*get_unit_layout_type) (int skill_id, int skill_lv);
int (*get_unit_range) (int skill_id, int skill_lv);
int (*get_cooldown) (int skill_id, int skill_lv);
@@ -1995,7 +2039,7 @@ struct skill_interface {
int (*get_casttype2) (int index);
bool (*is_combo) (int skill_id);
int (*name2id) (const char* name);
- int (*isammotype) (struct map_session_data *sd, int skill_id);
+ int (*isammotype) (struct map_session_data *sd, int skill_id, int skill_lv);
int (*castend_id) (int tid, int64 tick, int id, intptr_t data);
int (*castend_pos) (int tid, int64 tick, int id, intptr_t data);
int (*castend_map) ( struct map_session_data *sd,uint16 skill_id, const char *mapname);
@@ -2011,7 +2055,7 @@ struct skill_interface {
struct skill_unit *(*initunit) (struct skill_unit_group *group, int idx, int x, int y, int val1, int val2);
int (*delunit) (struct skill_unit *su);
struct skill_unit_group *(*init_unitgroup) (struct block_list* src, int count, uint16 skill_id, uint16 skill_lv, int unit_id, int limit, int interval);
- int (*del_unitgroup) (struct skill_unit_group *group, const char* file, int line, const char* func);
+ int (*del_unitgroup) (struct skill_unit_group *group);
int (*clear_unitgroup) (struct block_list *src);
int (*clear_group) (struct block_list *bl, int flag);
int (*unit_onplace) (struct skill_unit *src, struct block_list *bl, int64 tick);
@@ -2020,9 +2064,12 @@ struct skill_interface {
int (*cast_fix_sc) ( struct block_list *bl, int time);
int (*vf_cast_fix) ( struct block_list *bl, double time, uint16 skill_id, uint16 skill_lv);
int (*delay_fix) ( struct block_list *bl, uint16 skill_id, uint16 skill_lv);
- bool (*is_item_skill) (struct map_session_data *sd, int skill_id, int skill_lv);
+ int (*check_condition_required_equip) (struct map_session_data *sd, int skill_id, int skill_lv);
int (*check_condition_castbegin) (struct map_session_data *sd, uint16 skill_id, uint16 skill_lv);
+ int (*check_condition_required_items) (struct map_session_data *sd, int skill_id, int skill_lv);
+ bool (*items_required) (struct map_session_data *sd, int skill_id, int skill_lv);
int (*check_condition_castend) (struct map_session_data *sd, uint16 skill_id, uint16 skill_lv);
+ int (*get_any_item_index) (struct map_session_data *sd, int skill_id, int skill_lv);
int (*consume_requirement) (struct map_session_data *sd, uint16 skill_id, uint16 skill_lv, short type);
struct skill_condition (*get_requirement) (struct map_session_data *sd, uint16 skill_id, uint16 skill_lv);
int (*check_pc_partner) (struct map_session_data *sd, uint16 skill_id, uint16* skill_lv, int range, int cast_flag);
@@ -2046,6 +2093,7 @@ struct skill_interface {
int (*not_ok_hom) (uint16 skill_id, struct homun_data *hd);
int (*not_ok_hom_unknown) (uint16 skill_id, struct homun_data *hd);
int (*not_ok_mercenary) (uint16 skill_id, struct mercenary_data *md);
+ void (*validate_autocast_data) (struct map_session_data *sd, int skill_id, int skill_lv);
int (*chastle_mob_changetarget) (struct block_list *bl,va_list ap);
int (*can_produce_mix) ( struct map_session_data *sd, int nameid, int trigger, int qty);
int (*produce_mix) ( struct map_session_data *sd, uint16 skill_id, int nameid, int slot1, int slot2, int slot3, int qty );
@@ -2065,7 +2113,7 @@ struct skill_interface {
int (*check_unit_range_sub) (struct block_list *bl, va_list ap);
int (*check_unit_range2) (struct block_list *bl, int x, int y, uint16 skill_id, uint16 skill_lv);
int (*check_unit_range2_sub) (struct block_list *bl, va_list ap);
- void (*toggle_magicpower) (struct block_list *bl, uint16 skill_id);
+ void (*toggle_magicpower) (struct block_list *bl, uint16 skill_id, int skill_lv);
int (*magic_reflect) (struct block_list* src, struct block_list* bl, int type);
int (*onskillusage) (struct map_session_data *sd, struct block_list *bl, uint16 skill_id, int64 tick);
int (*cell_overlap) (struct block_list *bl, va_list ap);
@@ -2106,24 +2154,68 @@ struct skill_interface {
int (*unit_timer_sub) (union DBKey key, struct DBData *data, va_list ap);
void (*init_unit_layout) (void);
void (*init_unit_layout_unknown) (int skill_idx, int pos);
+ void (*validate_id) (struct config_setting_t *conf, struct s_skill_db *sk, int conf_index);
+ bool (*name_contains_invalid_character) (const char *name);
+ void (*validate_name) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_max_level) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_description) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_range) (struct config_setting_t *conf, struct s_skill_db *sk);
void (*validate_hittype) (struct config_setting_t *conf, struct s_skill_db *sk);
void (*validate_skilltype) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_skillinfo) (struct config_setting_t *conf, struct s_skill_db *sk);
void (*validate_attacktype) (struct config_setting_t *conf, struct s_skill_db *sk);
void (*validate_element) (struct config_setting_t *conf, struct s_skill_db *sk);
- void (*validate_skillinfo) (struct config_setting_t *conf, struct s_skill_db *sk);
void (*validate_damagetype) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_splash_range) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_number_of_hits) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_interrupt_cast) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_cast_def_rate) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_number_of_instances) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_knock_back_tiles) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_cast_time) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_act_delay) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_walk_delay) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_skill_data1) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_skill_data2) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_cooldown) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_fixed_cast_time) (struct config_setting_t *conf, struct s_skill_db *sk);
void (*validate_castnodex) (struct config_setting_t *conf, struct s_skill_db *sk, bool delay);
+ void (*validate_hp_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_sp_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_hp_rate_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_sp_rate_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_max_hp_trigger) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_max_sp_trigger) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_zeny_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+ int (*validate_weapontype_sub) (const char *type, bool on, struct s_skill_db *sk);
void (*validate_weapontype) (struct config_setting_t *conf, struct s_skill_db *sk);
+ int (*validate_ammotype_sub) (const char *type, bool on, struct s_skill_db *sk);
void (*validate_ammotype) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_ammo_amount) (struct config_setting_t *conf, struct s_skill_db *sk);
+ int (*validate_state_sub) (const char *state);
void (*validate_state) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_spirit_sphere_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_item_requirements_sub_item_amount) (struct config_setting_t *conf, struct s_skill_db *sk, int item_index);
+ void (*validate_item_requirements_sub_items) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_item_requirements_sub_any_flag) (struct config_setting_t *conf, struct s_skill_db *sk);
void (*validate_item_requirements) (struct config_setting_t *conf, struct s_skill_db *sk);
- void (*validate_unit_target) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_equip_requirements_sub_item_amount) (struct config_setting_t *conf, struct s_skill_db *sk, int item_index);
+ void (*validate_equip_requirements_sub_items) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_equip_requirements_sub_any_flag) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_equip_requirements) (struct config_setting_t *conf, struct s_skill_db *sk);
+ int (*validate_requirements_item_name) (const char *name);
+ void (*validate_requirements) (struct config_setting_t *conf, struct s_skill_db *sk);
+ int (*validate_unit_id_sub) (int unit_id);
+ void (*validate_unit_id) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_unit_layout) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_unit_range) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_unit_interval) (struct config_setting_t *conf, struct s_skill_db *sk);
+ int (*validate_unit_flag_sub) (const char *type, bool on, struct s_skill_db *sk);
void (*validate_unit_flag) (struct config_setting_t *conf, struct s_skill_db *sk);
+ int (*validate_unit_target_sub) (const char *target);
+ void (*validate_unit_target) (struct config_setting_t *conf, struct s_skill_db *sk);
+ void (*validate_unit) (struct config_setting_t *conf, struct s_skill_db *sk);
void (*validate_additional_fields) (struct config_setting_t *conf, struct s_skill_db *sk);
- bool (*validate_skilldb) (struct s_skill_db *skt, const char *source);
- int (*validate_weapontype_sub) (const char *type, bool on, struct s_skill_db *sk);
- int (*validate_ammotype_sub) (const char *type, bool on, struct s_skill_db *sk);
- int (*validate_unit_flag_sub) (const char *type, bool on, struct s_skill_db *sk);
bool (*read_skilldb) (const char *filename);
void (*config_set_level) (struct config_setting_t *conf, int *arr);
void (*level_set_value) (int *arr, int value);
@@ -2191,6 +2283,7 @@ struct skill_interface {
int (*splash_target) (struct block_list* bl);
int (*check_npc_chaospanic) (struct block_list *bl, va_list args);
int (*count_wos) (struct block_list *bl, va_list ap);
+ int (*get_linked_song_dance_id) (int skill_id);
};
#ifdef HERCULES_CORE
diff --git a/src/map/status.c b/src/map/status.c
index 4d798b606..589acff5c 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -696,6 +696,7 @@ static void initChangeTables(void)
status->set_sc( WM_BEYOND_OF_WARCRY , SC_BEYOND_OF_WARCRY , SCB_STR|SCB_CRI|SCB_MAXHP );
status->set_sc( WM_UNLIMITED_HUMMING_VOICE, SC_UNLIMITED_HUMMING_VOICE, SCB_NONE );
status->set_sc( WM_FRIGG_SONG , SC_FRIGG_SONG , SCB_MAXHP );
+ status->set_sc( WM_SEVERE_RAINSTORM , SC_NO_SWITCH_EQUIP , SCB_NONE );
/**
* Sorcerer
@@ -865,6 +866,10 @@ static void initChangeTables(void)
status->dbs->ChangeFlagTable[SC_WEDDING] |= SCB_SPEED;
status->dbs->ChangeFlagTable[SC_ARMORPROPERTY] |= SCB_ALL;
status->dbs->ChangeFlagTable[SC_ARMOR_RESIST] |= SCB_ALL;
+ status->dbs->ChangeFlagTable[SC_RESIST_PROPERTY_WATER] |= SCB_ALL;
+ status->dbs->ChangeFlagTable[SC_RESIST_PROPERTY_GROUND] |= SCB_ALL;
+ status->dbs->ChangeFlagTable[SC_RESIST_PROPERTY_FIRE] |= SCB_ALL;
+ status->dbs->ChangeFlagTable[SC_RESIST_PROPERTY_WIND] |= SCB_ALL;
status->dbs->ChangeFlagTable[SC_ATKER_BLOOD] |= SCB_ALL;
status->dbs->ChangeFlagTable[SC_WALKSPEED] |= SCB_SPEED;
status->dbs->ChangeFlagTable[SC_TARGET_BLOOD] |= SCB_ALL;
@@ -884,6 +889,13 @@ static void initChangeTables(void)
status->dbs->ChangeFlagTable[SC_PHI_DEMON] |= SCB_ALL;
status->dbs->ChangeFlagTable[SC_MAGIC_CANDY] |= SCB_MATK | SCB_ALL;
status->dbs->ChangeFlagTable[SC_MYSTICPOWDER] |= SCB_FLEE | SCB_LUK;
+ status->dbs->ChangeFlagTable[SC_POPECOOKIE] |= SCB_BASE | SCB_BATK | SCB_MATK;
+ status->dbs->ChangeFlagTable[SC_VITALIZE_POTION] |= SCB_BATK | SCB_MATK;
+ status->dbs->ChangeFlagTable[SC_SKF_MATK] |= SCB_MATK;
+ status->dbs->ChangeFlagTable[SC_SKF_ATK] |= SCB_BATK;
+ status->dbs->ChangeFlagTable[SC_SKF_ASPD] |= SCB_ASPD;
+ status->dbs->ChangeFlagTable[SC_SKF_CAST] |= SCB_NONE;
+ status->dbs->ChangeFlagTable[SC_ALMIGHTY] |= SCB_BATK | SCB_MATK;
// Cash Items
status->dbs->ChangeFlagTable[SC_FOOD_STR_CASH] |= SCB_STR;
@@ -1189,7 +1201,7 @@ static int status_damage(struct block_list *src, struct block_list *target, int6
if ((sce=sc->data[SC_GRAVITATION]) && sce->val3 == BCT_SELF) {
struct skill_unit_group* sg = skill->id2group(sce->val4);
if (sg) {
- skill->del_unitgroup(sg, ALC_MARK);
+ skill->del_unitgroup(sg);
sce->val4 = 0;
status_change_end(target, SC_GRAVITATION, INVALID_TIMER);
}
@@ -1584,7 +1596,7 @@ static int status_check_skilluse(struct block_list *src, struct block_list *targ
}
if( skill_id ) {
- if (src != NULL && (sd == NULL || sd->skillitem == 0)) {
+ if (src != NULL && (sd == NULL || sd->auto_cast_current.type != AUTOCAST_ITEM)) {
// Items that cast skills using 'itemskill' will not be handled by map_zone_db.
int i;
@@ -1628,7 +1640,7 @@ static int status_check_skilluse(struct block_list *src, struct block_list *targ
if (src != NULL
&& map->getcell(src->m, src, src->x, src->y, CELL_CHKLANDPROTECTOR)
&& !(st->mode&MD_BOSS)
- && (src->type != BL_PC || sd->skillitem != skill_id))
+ && (src->type != BL_PC || sd->auto_cast_current.type != AUTOCAST_ITEM))
return 0;
break;
default:
@@ -1707,7 +1719,7 @@ static int status_check_skilluse(struct block_list *src, struct block_list *targ
return 0; //Can't amp out of Wand of Hermode :/ [Skotlex]
}
- if (skill_id != 0 /* Do not block item-casted skills.*/ && (src->type != BL_PC || sd->skillitem != skill_id)) {
+ if (skill_id != 0 /* Do not block item-casted skills.*/ && (src->type != BL_PC || sd->auto_cast_current.type != AUTOCAST_ITEM)) {
//Skills blocked through status changes...
if (!flag && ( //Blocked only from using the skill (stuff like autospell may still go through
sc->data[SC_SILENCE] ||
@@ -1725,6 +1737,7 @@ static int status_check_skilluse(struct block_list *src, struct block_list *targ
(sc->data[SC_MARIONETTE] && skill_id == CG_MARIONETTE) || //Cannot use marionette if you are being buffed by another
(sc->data[SC_STASIS] && skill->block_check(src, SC_STASIS, skill_id)) ||
(sc->data[SC_KG_KAGEHUMI] && skill->block_check(src, SC_KG_KAGEHUMI, skill_id))
+ || sc->data[SC_ALL_RIDING] != NULL // New mounts can't attack nor use skills in the client; this check makes it cheat-safe. [Ind]
))
return 0;
@@ -1773,8 +1786,6 @@ static int status_check_skilluse(struct block_list *src, struct block_list *targ
} else if ( skill_id != ST_CHASEWALK )
return 0;
}
- if( sc->data[SC_ALL_RIDING] )
- return 0;//New mounts can't attack nor use skills in the client; this check makes it cheat-safe [Ind]
}
if (target == NULL || target == src) //No further checking needed.
@@ -2572,12 +2583,16 @@ static int status_calc_pc_(struct map_session_data *sd, enum e_status_calc_opt o
status->calc_pc_additional(sd, opt);
- if( sd->pd ) { // Pet Bonus
+ if (sd->pd != NULL) { // Pet bonus.
struct pet_data *pd = sd->pd;
- if( pd && pd->petDB && pd->petDB->equip_script && pd->pet.intimate >= battle_config.pet_equip_min_friendly )
- script->run(pd->petDB->equip_script,0,sd->bl.id,0);
- if( pd && pd->pet.intimate > 0 && (!battle_config.pet_equip_required || pd->pet.equip > 0) && pd->state.skillbonus == 1 && pd->bonus )
- pc->bonus(sd,pd->bonus->type, pd->bonus->val);
+
+ if (pd->petDB != NULL && pd->petDB->equip_script != NULL)
+ script->run(pd->petDB->equip_script, 0, sd->bl.id, 0);
+
+ if (pd->pet.intimate > PET_INTIMACY_NONE && pd->state.skillbonus == 1 && pd->bonus != NULL
+ && (battle_config.pet_equip_required == 0 || pd->pet.equip > 0)) {
+ pc->bonus(sd, pd->bonus->type, pd->bonus->val);
+ }
}
//param_bonus now holds card bonuses.
@@ -3018,6 +3033,22 @@ static int status_calc_pc_(struct map_session_data *sd, enum e_status_calc_opt o
sd->subele[ELE_FIRE] += sc->data[SC_ARMOR_RESIST]->val3;
sd->subele[ELE_WIND] += sc->data[SC_ARMOR_RESIST]->val4;
}
+ if (sc->data[SC_RESIST_PROPERTY_WATER] != NULL) { // Coldproof Potion
+ sd->subele[ELE_WATER] += sc->data[SC_RESIST_PROPERTY_WATER]->val1;
+ sd->subele[ELE_WIND] += sc->data[SC_RESIST_PROPERTY_WATER]->val2;
+ }
+ if (sc->data[SC_RESIST_PROPERTY_GROUND] != NULL) { // Earthproof Potion
+ sd->subele[ELE_EARTH] += sc->data[SC_RESIST_PROPERTY_GROUND]->val1;
+ sd->subele[ELE_FIRE] += sc->data[SC_RESIST_PROPERTY_GROUND]->val2;
+ }
+ if (sc->data[SC_RESIST_PROPERTY_FIRE] != NULL) { // Fireproof Potion
+ sd->subele[ELE_FIRE] += sc->data[SC_RESIST_PROPERTY_FIRE]->val1;
+ sd->subele[ELE_WATER] += sc->data[SC_RESIST_PROPERTY_FIRE]->val2;
+ }
+ if (sc->data[SC_RESIST_PROPERTY_WIND] != NULL) { // Thunderproof Potion
+ sd->subele[ELE_WIND] += sc->data[SC_RESIST_PROPERTY_WIND]->val1;
+ sd->subele[ELE_EARTH] += sc->data[SC_RESIST_PROPERTY_WIND]->val2;
+ }
if (sc->data[SC_FIRE_CLOAK_OPTION]) {
i = sc->data[SC_FIRE_CLOAK_OPTION]->val2;
sd->subele[ELE_FIRE] += i;
@@ -3038,6 +3069,18 @@ static int status_calc_pc_(struct map_session_data *sd, enum e_status_calc_opt o
sd->subele[ELE_EARTH] += i;
sd->subele[ELE_FIRE] -= i;
}
+ if (sc->data[SC_POPECOOKIE] != NULL) {
+ i = sc->data[SC_POPECOOKIE]->val3;
+ sd->subele[ELE_WATER] += i;
+ sd->subele[ELE_EARTH] += i;
+ sd->subele[ELE_FIRE] += i;
+ sd->subele[ELE_WIND] += i;
+ sd->subele[ELE_POISON] += i;
+ sd->subele[ELE_HOLY] += i;
+ sd->subele[ELE_DARK] += i;
+ sd->subele[ELE_GHOST] += i;
+ sd->subele[ELE_UNDEAD] += i;
+ }
if (sc->data[SC_MTF_MLEATKED])
sd->subele[ELE_NEUTRAL] += sc->data[SC_MTF_MLEATKED]->val1;
if (sc->data[SC_FIRE_INSIGNIA] && sc->data[SC_FIRE_INSIGNIA]->val1 == 3)
@@ -4801,6 +4844,10 @@ static int status_calc_batk(struct block_list *bl, struct status_change *sc, int
/* some statuses that are hidden in the status window */
if(sc->data[SC_PLUSATTACKPOWER])
batk += sc->data[SC_PLUSATTACKPOWER]->val1;
+ if (sc->data[SC_POPECOOKIE] != NULL)
+ batk += batk * sc->data[SC_POPECOOKIE]->val1 / 100;
+ if (sc->data[SC_VITALIZE_POTION] != NULL)
+ batk += batk * sc->data[SC_VITALIZE_POTION]->val1 / 100;
return cap_value(batk, battle_config.batk_min, battle_config.batk_max);
}
#ifndef RENEWAL
@@ -4880,6 +4927,10 @@ static int status_calc_batk(struct block_list *bl, struct status_change *sc, int
batk += batk * sc->data[SC_2011RWC]->val2 / 100;
if (sc->data[SC_STEAMPACK])
batk += sc->data[SC_STEAMPACK]->val1;
+ if (sc->data[SC_SKF_ATK] != NULL)
+ batk += sc->data[SC_SKF_ATK]->val1;
+ if (sc->data[SC_ALMIGHTY] != NULL)
+ batk += sc->data[SC_ALMIGHTY]->val1;
if (sc->data[SC_SHRIMP])
batk += batk * sc->data[SC_SHRIMP]->val2 / 100;
@@ -5020,6 +5071,10 @@ static int status_calc_matk(struct block_list *bl, struct status_change *sc, int
/* some statuses that are hidden in the status window */
if (sc->data[SC_MINDBREAKER])
matk += matk * sc->data[SC_MINDBREAKER]->val2 / 100;
+ if (sc->data[SC_POPECOOKIE] != NULL)
+ matk += matk * sc->data[SC_POPECOOKIE]->val2 / 100;
+ if (sc->data[SC_VITALIZE_POTION] != NULL)
+ matk += matk * sc->data[SC_VITALIZE_POTION]->val2 / 100;
return cap_value(matk, battle_config.matk_min, battle_config.matk_max);
}
@@ -5077,6 +5132,10 @@ static int status_calc_matk(struct block_list *bl, struct status_change *sc, int
matk += matk * sc->data[SC_2011RWC]->val2 / 100;
if (sc->data[SC_MAGIC_CANDY])
matk += sc->data[SC_MAGIC_CANDY]->val1;
+ if (sc->data[SC_SKF_MATK] != NULL)
+ matk += sc->data[SC_SKF_MATK]->val1;
+ if (sc->data[SC_ALMIGHTY] != NULL)
+ matk += sc->data[SC_ALMIGHTY]->val2;
return cap_value(matk, battle_config.matk_min, battle_config.matk_max);
}
@@ -5901,6 +5960,8 @@ static short status_calc_aspd(struct block_list *bl, struct status_change *sc, s
bonus += sc->data[SC_BATTLESCROLL]->val1;
if (sc->data[SC_STEAMPACK])
bonus += sc->data[SC_STEAMPACK]->val2;
+ if (sc->data[SC_SKF_ASPD] != NULL)
+ bonus += sc->data[SC_SKF_ASPD]->val1;
}
return (bonus + pots);
@@ -6068,6 +6129,8 @@ static short status_calc_aspd_rate(struct block_list *bl, struct status_change *
aspd_rate += sc->data[SC_BATTLESCROLL]->val1 * 10;
if (sc->data[SC_STEAMPACK])
aspd_rate += sc->data[SC_STEAMPACK]->val2 * 10;
+ if (sc->data[SC_SKF_ASPD] != NULL)
+ aspd_rate -= sc->data[SC_SKF_ASPD]->val1 * 10;
return (short)cap_value(aspd_rate,0,SHRT_MAX);
}
@@ -6344,13 +6407,24 @@ static int status_get_class(const struct block_list *bl)
{
nullpo_ret(bl);
switch (bl->type) {
- case BL_PC: return BL_UCCAST(BL_PC, bl)->status.class;
- case BL_MOB: return BL_UCCAST(BL_MOB, bl)->vd->class; //Class used on all code should be the view class of the mob.
- case BL_PET: return BL_UCCAST(BL_PET, bl)->pet.class_;
- case BL_HOM: return BL_UCCAST(BL_HOM, bl)->homunculus.class_;
- case BL_MER: return BL_UCCAST(BL_MER, bl)->mercenary.class_;
- case BL_NPC: return BL_UCCAST(BL_NPC, bl)->class_;
- case BL_ELEM: return BL_UCCAST(BL_ELEM, bl)->elemental.class_;
+ case BL_PC:
+ return BL_UCCAST(BL_PC, bl)->status.class;
+ case BL_MOB:
+ {
+ const struct view_data *const vd = BL_UCCAST(BL_MOB, bl)->vd;
+ nullpo_ret(vd);
+ return vd->class; //Class used on all code should be the view class of the mob.
+ }
+ case BL_PET:
+ return BL_UCCAST(BL_PET, bl)->pet.class_;
+ case BL_HOM:
+ return BL_UCCAST(BL_HOM, bl)->homunculus.class_;
+ case BL_MER:
+ return BL_UCCAST(BL_MER, bl)->mercenary.class_;
+ case BL_NPC:
+ return BL_UCCAST(BL_NPC, bl)->class_;
+ case BL_ELEM:
+ return BL_UCCAST(BL_ELEM, bl)->elemental.class_;
}
return 0;
}
@@ -6440,7 +6514,7 @@ static defType status_get_def(struct block_list *bl)
int def = st ? st->def : 0;
ud = unit->bl2ud(bl);
if (ud && ud->skilltimer != INVALID_TIMER)
- def -= def * skill->get_castdef(ud->skill_id)/100;
+ def -= def * skill->get_castdef(ud->skill_id, ud->skill_lv) / 100;
return cap_value(def, DEFTYPE_MIN, DEFTYPE_MAX);
}
@@ -7710,6 +7784,10 @@ static int status_change_start_sub(struct block_list *src, struct block_list *bl
case SC_ENCHANTARMS:
case SC_ARMORPROPERTY:
case SC_ARMOR_RESIST:
+ case SC_RESIST_PROPERTY_WATER:
+ case SC_RESIST_PROPERTY_GROUND:
+ case SC_RESIST_PROPERTY_FIRE:
+ case SC_RESIST_PROPERTY_WIND:
break;
case SC_GOSPEL:
//Must not override a casting gospel char.
@@ -7765,6 +7843,9 @@ static int status_change_start_sub(struct block_list *src, struct block_list *bl
calc_flag = status->dbs->ChangeFlagTable[type];
if(!(flag&SCFLAG_LOADED)) { // Do not parse val settings when loading SCs
switch(type) {
+ case SC_AUTOTRADE:
+ case SC_KSPROTECTED:
+ break; // Prevent calling status_change_start_unknown_sc().
case SC_ADORAMUS:
sc_start(src,bl,SC_BLIND,100,val1,skill->get_time(status->sc2skill(type),val1));
// Fall through to SC_INC_AGI
@@ -8009,7 +8090,6 @@ static int status_change_start_sub(struct block_list *src, struct block_list *bl
// This is done this way because the message that the client displays is hardcoded, and only
// shows how many minutes are remaining. [Panikon]
total_tick = 60000;
- val1 = battle_config.manner_system; //Mute filters.
if (sd)
{
clif->changestatus(sd,SP_MANNER,sd->status.manner);
@@ -8656,6 +8736,210 @@ static int status_change_start_sub(struct block_list *src, struct block_list *bl
//associated, and yet are not wrong/unknown. [Skotlex]
//break;
}
+ case SC_ARMOR_RESIST: {
+ struct status_change_entry *sce_water = sc->data[SC_RESIST_PROPERTY_WATER];
+ struct status_change_entry *sce_ground = sc->data[SC_RESIST_PROPERTY_GROUND];
+ struct status_change_entry *sce_fire = sc->data[SC_RESIST_PROPERTY_FIRE];
+ struct status_change_entry *sce_wind = sc->data[SC_RESIST_PROPERTY_WIND];
+
+ // Water
+ int sum_water = val1 + ((sce_fire != NULL) ? sce_fire->val2 : 0);
+ bool show_icon = true;
+ if (sce_water != NULL && sce_water->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sce_water->timer);
+ if (td != NULL) {
+ sum_water += sce_water->val1;
+ int left = (int)DIFF_TICK(td->tick, timer->gettick());
+ if (left > total_tick && sum_water - val1 > 0)
+ show_icon = false;
+ }
+ }
+ if (val1 > 0 && sum_water > 0 && show_icon) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_WATER);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_WATER);
+ clif->status_change(bl, sc_icn, sc_typ, 1, total_tick, 0, 0, 0);
+ } else if (sum_water <= 0) {
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_WATER));
+ }
+
+ // Ground
+ int sum_ground = val2 + ((sce_wind != NULL) ? sce_wind->val2 : 0);
+ show_icon = true;
+ if (sce_ground != NULL && sce_ground->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sce_ground->timer);
+ if (td != NULL) {
+ sum_ground += sce_ground->val1;
+ int left = (int)DIFF_TICK(td->tick, timer->gettick());
+ if (left > total_tick && sum_ground - val2 > 0)
+ show_icon = false;
+ }
+ }
+ if (val2 > 0 && sum_ground > 0 && show_icon) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_GROUND);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_GROUND);
+ clif->status_change(bl, sc_icn, sc_typ, 1, total_tick, 0, 0, 0);
+ } else if (sum_ground <= 0) {
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_GROUND));
+ }
+
+ // Fire
+ int sum_fire = val3 + ((sce_ground != NULL) ? sce_ground->val2 : 0);
+ show_icon = true;
+ if (sce_fire != NULL && sce_fire->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sce_fire->timer);
+ if (td != NULL) {
+ sum_fire += sce_fire->val1;
+ int left = (int)DIFF_TICK(td->tick, timer->gettick());
+ if (left > total_tick && sum_fire - val3 > 0)
+ show_icon = false;
+ }
+ }
+ if (val3 > 0 && sum_fire > 0 && show_icon) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_FIRE);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_FIRE);
+ clif->status_change(bl, sc_icn, sc_typ, 1, total_tick, 0, 0, 0);
+ } else if (sum_fire <= 0) {
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_FIRE));
+ }
+
+ // Wind
+ int sum_wind = val4 + ((sce_water != NULL) ? sce_water->val2 : 0);
+ show_icon = true;
+ if (sce_wind != NULL && sce_wind->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sce_wind->timer);
+ if (td != NULL) {
+ sum_wind += sce_wind->val1;
+ int left = (int)DIFF_TICK(td->tick, timer->gettick());
+ if (left > total_tick && sum_wind - val4 > 0)
+ show_icon = false;
+ }
+ }
+ if (val4 > 0 && sum_wind > 0 && show_icon) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_WIND);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_WIND);
+ clif->status_change(bl, sc_icn, sc_typ, 1, total_tick, 0, 0, 0);
+ } else if (sum_wind <= 0) {
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_WIND));
+ }
+
+ break;
+ }
+ case SC_RESIST_PROPERTY_WATER: {
+ struct status_change_entry *sce_all = sc->data[SC_ARMOR_RESIST];
+ struct status_change_entry *sce_fire = sc->data[SC_RESIST_PROPERTY_FIRE];
+ struct status_change_entry *sce_wind = sc->data[SC_RESIST_PROPERTY_WIND];
+
+ // Water
+ int sum_water = val1 + ((sce_fire != NULL) ? sce_fire->val2 : 0);
+ if (sce_all != NULL && sce_all->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sce_all->timer);
+ if (td != NULL) {
+ sum_water += sce_all->val1;
+ int left = (int)DIFF_TICK(td->tick, timer->gettick());
+ if (left > total_tick && sum_water - val1 > 0)
+ flag |= SCFLAG_NOICON;
+ }
+ }
+ if (sum_water <= 0) {
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_WATER));
+ flag |= SCFLAG_NOICON;
+ }
+
+ // Wind
+ int sum_wind = val2 + ((sce_wind != NULL) ? sce_wind->val1 : 0);
+ sum_wind += (sce_all != NULL) ? sce_all->val4 : 0;
+ if (sum_wind <= 0)
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_WIND));
+
+ break;
+ }
+ case SC_RESIST_PROPERTY_GROUND: {
+ struct status_change_entry *sce_all = sc->data[SC_ARMOR_RESIST];
+ struct status_change_entry *sce_wind = sc->data[SC_RESIST_PROPERTY_WIND];
+ struct status_change_entry *sce_fire = sc->data[SC_RESIST_PROPERTY_FIRE];
+
+ // Ground
+ int sum_ground = val1 + ((sce_wind != NULL) ? sce_wind->val2 : 0);
+ if (sce_all != NULL && sce_all->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sce_all->timer);
+ if (td != NULL) {
+ sum_ground += sce_all->val2;
+ int left = (int)DIFF_TICK(td->tick, timer->gettick());
+ if (left > total_tick && sum_ground - val1 > 0)
+ flag |= SCFLAG_NOICON;
+ }
+ }
+ if (sum_ground <= 0) {
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_GROUND));
+ flag |= SCFLAG_NOICON;
+ }
+
+ // Fire
+ int sum_fire = val2 + ((sce_fire != NULL) ? sce_fire->val1 : 0);
+ sum_fire += (sce_all != NULL) ? sce_all->val3 : 0;
+ if (sum_fire <= 0)
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_FIRE));
+
+ break;
+ }
+ case SC_RESIST_PROPERTY_FIRE: {
+ struct status_change_entry *sce_all = sc->data[SC_ARMOR_RESIST];
+ struct status_change_entry *sce_ground = sc->data[SC_RESIST_PROPERTY_GROUND];
+ struct status_change_entry *sce_water = sc->data[SC_RESIST_PROPERTY_WATER];
+
+ // Fire
+ int sum_fire = val1 + ((sce_ground != NULL) ? sce_ground->val2 : 0);
+ if (sce_all != NULL && sce_all->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sce_all->timer);
+ if (td != NULL) {
+ sum_fire += sce_all->val3;
+ int left = (int)DIFF_TICK(td->tick, timer->gettick());
+ if (left > total_tick && sum_fire - val1 > 0)
+ flag |= SCFLAG_NOICON;
+ }
+ }
+ if (sum_fire <= 0) {
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_FIRE));
+ flag |= SCFLAG_NOICON;
+ }
+
+ // Water
+ int sum_water = val2 + ((sce_water != NULL) ? sce_water->val1 : 0);
+ sum_water += (sce_all != NULL) ? sce_all->val1 : 0;
+ if (sum_water <= 0)
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_WATER));
+
+ break;
+ }
+ case SC_RESIST_PROPERTY_WIND: {
+ struct status_change_entry *sce_all = sc->data[SC_ARMOR_RESIST];
+ struct status_change_entry *sce_water = sc->data[SC_RESIST_PROPERTY_WATER];
+ struct status_change_entry *sce_ground = sc->data[SC_RESIST_PROPERTY_GROUND];
+
+ // Wind
+ int sum_wind = val1 + ((sce_water != NULL) ? sce_water->val2 : 0);
+ if (sce_all != NULL && sce_all->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sce_all->timer);
+ if (td != NULL) {
+ sum_wind += sce_all->val4;
+ int left = (int)DIFF_TICK(td->tick, timer->gettick());
+ if (left > total_tick && sum_wind - val1 > 0)
+ flag |= SCFLAG_NOICON;
+ }
+ }
+ if (sum_wind <= 0) {
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_WIND));
+ flag |= SCFLAG_NOICON;
+ }
+
+ // Ground
+ int sum_ground = val2 + ((sce_ground != NULL) ? sce_ground->val1 : 0);
+ sum_ground += (sce_all != NULL) ? sce_all->val2 : 0;
+ if (sum_ground <= 0)
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_GROUND));
+
+ break;
+ }
case SC_MER_FLEE:
case SC_MER_ATK:
case SC_MER_HIT:
@@ -10514,7 +10798,7 @@ static int status_change_clear(struct block_list *bl, int type)
/*==========================================
* Special condition we want to effectuate, check before ending a status.
*------------------------------------------*/
-static int status_change_end_(struct block_list *bl, enum sc_type type, int tid, const char *file, int line)
+static int status_change_end_(struct block_list *bl, enum sc_type type, int tid)
{
struct map_session_data *sd;
struct status_change *sc;
@@ -10582,6 +10866,9 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
vd = status->get_viewdata(bl);
calc_flag = status->dbs->ChangeFlagTable[type];
+
+ bool remove_icon = true;
+
switch(type) {
case SC_GRANITIC_ARMOR:
{
@@ -10681,23 +10968,9 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
break;
case SC_DANCING:
{
- const char* prevfile = "<unknown>";
- int prevline = 0;
struct map_session_data *dsd;
struct status_change_entry *dsc;
- if (sd) {
- if (sd->delunit_prevfile) {
- // initially this is NULL, when a character logs in
- prevfile = sd->delunit_prevfile;
- prevline = sd->delunit_prevline;
- } else {
- prevfile = "<none>";
- }
- sd->delunit_prevfile = file;
- sd->delunit_prevline = line;
- }
-
if (sce->val4 && sce->val4 != BCT_SELF && (dsd=map->id2sd(sce->val4)) != NULL) {
// end status on partner as well
dsc = dsd->sc.data[SC_DANCING];
@@ -10713,19 +10986,10 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
// erase associated land skill
struct skill_unit_group *group = skill->id2group(sce->val2);
- if (group == NULL) {
- ShowDebug("status_change_end: SC_DANCING is missing skill unit group (val1=%d, val2=%d, val3=%d, val4=%d, timer=%d, tid=%d, char_id=%d, map=%s, x=%d, y=%d, prev=%s:%d, from=%s:%d). Please report this! (#3504)\n",
- sce->val1, sce->val2, sce->val3, sce->val4, sce->timer, tid,
- sd ? sd->status.char_id : 0,
- mapindex_id2name(map_id2index(bl->m)), bl->x, bl->y,
- prevfile, prevline,
- file, line);
- }
-
sce->val2 = 0;
if( group )
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
}
if ((sce->val1&0xFFFF) == CG_MOONLIT)
@@ -10829,7 +11093,7 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
struct skill_unit_group* group = skill->id2group(sce->val3);
sce->val3 = 0;
if( group )
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
}
break;
case SC_HERMODE:
@@ -10848,7 +11112,7 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
struct skill_unit_group* group = skill->id2group(sce->val4);
sce->val4 = 0;
if( group ) /* might have been cleared before status ended, e.g. land protector */
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
}
break;
case SC_KAAHI:
@@ -10946,7 +11210,7 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
struct skill_unit_group* group = skill->id2group(sce->val2);
sce->val2 = 0;
if (group) /* might have been cleared before status ended, e.g. land protector */
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
}
break;
case SC_BANDING:
@@ -10954,7 +11218,7 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
struct skill_unit_group *group = skill->id2group(sce->val4);
sce->val4 = 0;
if( group ) /* might have been cleared before status ended, e.g. land protector */
- skill->del_unitgroup(group,ALC_MARK);
+ skill->del_unitgroup(group);
}
break;
case SC_CURSEDCIRCLE_ATKER:
@@ -11013,6 +11277,202 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
break;
}
break;
+ case SC_ARMOR_RESIST: {
+ struct status_change_entry *sce_water = sc->data[SC_RESIST_PROPERTY_WATER];
+ struct status_change_entry *sce_ground = sc->data[SC_RESIST_PROPERTY_GROUND];
+ struct status_change_entry *sce_fire = sc->data[SC_RESIST_PROPERTY_FIRE];
+ struct status_change_entry *sce_wind = sc->data[SC_RESIST_PROPERTY_WIND];
+
+ // Water
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_WATER));
+ if (sce_water != NULL && sce_water->timer != INVALID_TIMER) {
+ int sum_water = sce_water->val1 + ((sce_fire != NULL) ? sce_fire->val2 : 0);
+ const struct TimerData *td = timer->get(sce_water->timer);
+ if (td != NULL && sce_water->val1 > 0 && sum_water > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_WATER);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_WATER);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sce_water->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ }
+ }
+
+ // Ground
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_GROUND));
+ if (sce_ground != NULL && sce_ground->timer != INVALID_TIMER) {
+ int sum_ground = sce_ground->val1 + ((sce_wind != NULL) ? sce_wind->val2 : 0);
+ const struct TimerData *td = timer->get(sce_ground->timer);
+ if (td != NULL && sce_ground->val1 > 0 && sum_ground > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_GROUND);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_GROUND);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sce_ground->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ }
+ }
+
+ // Fire
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_FIRE));
+ if (sce_fire != NULL && sce_fire->timer != INVALID_TIMER) {
+ int sum_fire = sce_fire->val1 + ((sce_ground != NULL) ? sce_ground->val2 : 0);
+ const struct TimerData *td = timer->get(sce_fire->timer);
+ if (td != NULL && sce_fire->val1 > 0 && sum_fire > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_FIRE);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_FIRE);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sce_fire->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ }
+ }
+
+ // Wind
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(SC_RESIST_PROPERTY_WIND));
+ if (sce_wind != NULL && sce_wind->timer != INVALID_TIMER) {
+ int sum_wind = sce_wind->val1 + ((sce_water != NULL) ? sce_water->val2 : 0);
+ const struct TimerData *td = timer->get(sce_wind->timer);
+ if (td != NULL && sce_wind->val1 > 0 && sum_wind > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_WIND);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_WIND);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sce_wind->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ }
+ }
+
+ break;
+ }
+ case SC_RESIST_PROPERTY_WATER:
+ if (sc->data[SC_ARMOR_RESIST] != NULL && sc->data[SC_ARMOR_RESIST]->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sc->data[SC_ARMOR_RESIST]->timer);
+ if (td == NULL)
+ break;
+
+ // Water
+ int sum_water = sc->data[SC_ARMOR_RESIST]->val1;
+ if (sc->data[SC_RESIST_PROPERTY_FIRE] != NULL)
+ sum_water += sc->data[SC_RESIST_PROPERTY_FIRE]->val2;
+ if (sc->data[SC_ARMOR_RESIST]->val1 > 0 && sum_water > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_WATER);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_WATER);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sc->data[SC_ARMOR_RESIST]->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ remove_icon = false;
+ }
+
+ // Wind
+ int sum_wind = sc->data[SC_ARMOR_RESIST]->val4;
+ if (sc->data[SC_RESIST_PROPERTY_WIND] != NULL)
+ sum_wind += sc->data[SC_RESIST_PROPERTY_WIND]->val1;
+ if (sc->data[SC_ARMOR_RESIST]->val4 > 0 && sum_wind > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_WIND);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_WIND);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sc->data[SC_ARMOR_RESIST]->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ }
+ }
+
+ break;
+ case SC_RESIST_PROPERTY_GROUND:
+ if (sc->data[SC_ARMOR_RESIST] != NULL && sc->data[SC_ARMOR_RESIST]->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sc->data[SC_ARMOR_RESIST]->timer);
+ if (td == NULL)
+ break;
+
+ // Ground
+ int sum_ground = sc->data[SC_ARMOR_RESIST]->val2;
+ if (sc->data[SC_RESIST_PROPERTY_WIND] != NULL)
+ sum_ground += sc->data[SC_RESIST_PROPERTY_WIND]->val2;
+ if (sc->data[SC_ARMOR_RESIST]->val2 > 0 && sum_ground > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_GROUND);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_GROUND);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sc->data[SC_ARMOR_RESIST]->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ remove_icon = false;
+ }
+
+ // Fire
+ int sum_fire = sc->data[SC_ARMOR_RESIST]->val3;
+ if (sc->data[SC_RESIST_PROPERTY_FIRE] != NULL)
+ sum_fire += sc->data[SC_RESIST_PROPERTY_FIRE]->val1;
+ if (sc->data[SC_ARMOR_RESIST]->val3 > 0 && sum_fire > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_FIRE);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_FIRE);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sc->data[SC_ARMOR_RESIST]->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ }
+ }
+
+ break;
+ case SC_RESIST_PROPERTY_FIRE:
+ if (sc->data[SC_ARMOR_RESIST] != NULL && sc->data[SC_ARMOR_RESIST]->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sc->data[SC_ARMOR_RESIST]->timer);
+ if (td == NULL)
+ break;
+
+ // Fire
+ int sum_fire = sc->data[SC_ARMOR_RESIST]->val3;
+ if (sc->data[SC_RESIST_PROPERTY_GROUND] != NULL)
+ sum_fire += sc->data[SC_RESIST_PROPERTY_GROUND]->val2;
+ if (sc->data[SC_ARMOR_RESIST]->val3 > 0 && sum_fire > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_FIRE);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_FIRE);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sc->data[SC_ARMOR_RESIST]->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ remove_icon = false;
+ }
+
+ // Water
+ int sum_water = sc->data[SC_ARMOR_RESIST]->val1;
+ if (sc->data[SC_RESIST_PROPERTY_WATER] != NULL)
+ sum_water += sc->data[SC_RESIST_PROPERTY_WATER]->val1;
+ if (sc->data[SC_ARMOR_RESIST]->val1 > 0 && sum_water > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_WATER);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_WATER);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sc->data[SC_ARMOR_RESIST]->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ }
+ }
+
+ break;
+ case SC_RESIST_PROPERTY_WIND:
+ if (sc->data[SC_ARMOR_RESIST] != NULL && sc->data[SC_ARMOR_RESIST]->timer != INVALID_TIMER) {
+ const struct TimerData *td = timer->get(sc->data[SC_ARMOR_RESIST]->timer);
+ if (td == NULL)
+ break;
+
+ // Wind
+ int sum_wind = sc->data[SC_ARMOR_RESIST]->val4;
+ if (sc->data[SC_RESIST_PROPERTY_WATER] != NULL)
+ sum_wind += sc->data[SC_RESIST_PROPERTY_WATER]->val2;
+ if (sc->data[SC_ARMOR_RESIST]->val4 > 0 && sum_wind > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_WIND);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_WIND);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sc->data[SC_ARMOR_RESIST]->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ remove_icon = false;
+ }
+
+ // Ground
+ int sum_ground = sc->data[SC_ARMOR_RESIST]->val2;
+ if (sc->data[SC_RESIST_PROPERTY_GROUND] != NULL)
+ sum_ground += sc->data[SC_RESIST_PROPERTY_GROUND]->val1;
+ if (sc->data[SC_ARMOR_RESIST]->val2 > 0 && sum_ground > 0) {
+ int sc_icn = status->get_sc_icon(SC_RESIST_PROPERTY_GROUND);
+ int sc_typ = status->get_sc_relevant_bl_types(SC_RESIST_PROPERTY_GROUND);
+ int sc_tck = (int)DIFF_TICK(td->tick, timer->gettick());
+ int sc_ttl = sc->data[SC_ARMOR_RESIST]->total_tick;
+ clif->status_change_sub(bl, sc_icn, sc_typ, 1, sc_tck, sc_ttl, 0, 0, 0);
+ }
+ }
+
+ break;
}
opt_flag = 1;
@@ -11226,7 +11686,8 @@ static int status_change_end_(struct block_list *bl, enum sc_type type, int tid,
#endif
//On Aegis, when turning off a status change, first goes the sc packet, then the option packet.
- clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(type));
+ if (remove_icon)
+ clif->sc_end(bl, bl->id, AREA, status->get_sc_icon(type));
if( opt_flag&8 ) //bugreport:681
clif->changeoption2(bl);
diff --git a/src/map/status.h b/src/map/status.h
index ada18bc0a..43cfd6931 100644
--- a/src/map/status.h
+++ b/src/map/status.h
@@ -854,6 +854,13 @@ typedef enum sc_type {
SC_RESIST_PROPERTY_WIND,
SC_CLIENT_ONLY_EQUIP_ARROW,
SC_MADOGEAR,
+ SC_POPECOOKIE,
+ SC_VITALIZE_POTION,
+ SC_SKF_MATK,
+ SC_SKF_ATK,
+ SC_SKF_ASPD,
+ SC_SKF_CAST,
+ SC_ALMIGHTY,
#ifndef SC_MAX
SC_MAX, //Automatically updated max, used in for's to check we are within bounds.
#endif
@@ -1207,7 +1214,7 @@ struct status_change {
#define sc_start2(src, bl, type, rate, val1, val2, tick) (status->change_start((src),(bl),(type),100*(rate),(val1),(val2),0,0,(tick),SCFLAG_NONE))
#define sc_start4(src, bl, type, rate, val1, val2, val3, val4, tick) (status->change_start((src),(bl),(type),100*(rate),(val1),(val2),(val3),(val4),(tick),SCFLAG_NONE))
-#define status_change_end(bl,type,tid) (status->change_end_((bl),(type),(tid),__FILE__,__LINE__))
+#define status_change_end(bl,type,tid) (status->change_end_((bl),(type),(tid)))
#define status_calc_bl(bl, flag) (status->calc_bl_((bl), (enum scb_flag)(flag), SCO_NONE))
#define status_calc_mob(md, opt) (status->calc_bl_(&(md)->bl, SCB_ALL, (opt)))
@@ -1301,7 +1308,7 @@ struct status_interface {
int (*get_sc_def) (struct block_list *src, struct block_list *bl, enum sc_type type, int rate, int tick, int flag);
int (*change_start) (struct block_list *src, struct block_list *bl, enum sc_type type, int rate, int val1, int val2, int val3, int val4, int tick, int flag);
int (*change_start_sub) (struct block_list *src, struct block_list *bl, enum sc_type type, int rate, int val1, int val2, int val3, int val4, int tick, int total_tick, int flag);
- int (*change_end_) (struct block_list* bl, enum sc_type type, int tid, const char* file, int line);
+ int (*change_end_) (struct block_list* bl, enum sc_type type, int tid);
bool (*is_immune_to_status) (struct status_change* sc, enum sc_type type);
bool (*is_boss_resist_sc) (enum sc_type type);
bool (*end_sc_before_start) (struct block_list *bl, struct status_data *st, struct status_change* sc, enum sc_type type, int undead_flag, int val1, int val2, int val3, int val4);
diff --git a/src/map/unit.c b/src/map/unit.c
index a879a125f..a6afb5ee7 100644
--- a/src/map/unit.c
+++ b/src/map/unit.c
@@ -96,6 +96,8 @@ static struct unit_data *unit_bl2ud(struct block_list *bl)
return &BL_UCAST(BL_MER, bl)->ud;
case BL_ELEM:
return &BL_UCAST(BL_ELEM, bl)->ud;
+ case BL_SKILL: // No assertion to not spam the server console when attacking a skill type unit such as Ice Wall.
+ return NULL;
default:
Assert_retr(NULL, false);
}
@@ -128,6 +130,8 @@ static const struct unit_data *unit_cbl2ud(const struct block_list *bl)
return &BL_UCCAST(BL_MER, bl)->ud;
case BL_ELEM:
return &BL_UCCAST(BL_ELEM, bl)->ud;
+ case BL_SKILL: // No assertion to not spam the server console when attacking a skill type unit such as Ice Wall.
+ return NULL;
default:
Assert_retr(NULL, false);
}
@@ -326,7 +330,7 @@ static int unit_warpto_master(struct block_list *master_bl, struct block_list *s
static int unit_walk_toxy_timer(int tid, int64 tick, int id, intptr_t data)
{
struct block_list *bl = map->id2bl(id);
- if (bl == NULL || bl->prev == NULL) // Stop moved because it is missing from the block_list
+ if (bl == NULL)
return 1;
struct unit_data *ud = unit->bl2ud(bl);
if (ud == NULL)
@@ -336,8 +340,12 @@ static int unit_walk_toxy_timer(int tid, int64 tick, int id, intptr_t data)
ShowError("unit_walk_timer mismatch %d != %d\n",ud->walktimer,tid);
return 1;
}
+
ud->walktimer = INVALID_TIMER;
+ if (bl->prev == NULL) // Stop moved because it is missing from the block_list.
+ return 1;
+
if (ud->walkpath.path_pos >= ud->walkpath.path_len)
return 1;
@@ -428,7 +436,7 @@ static int unit_walk_toxy_timer(int tid, int64 tick, int id, intptr_t data)
// Walk skills are triggered regardless of target due to the idle-walk mob state.
// But avoid triggering on stop-walk calls.
if (tid != INVALID_TIMER && (ud->walk_count % WALK_SKILL_INTERVAL) == 0
- && map->list[bl->m].users > 0 && mob->skill_use(md, tick, -1) == 1) {
+ && map->list[bl->m].users > 0 && mob->skill_use(md, tick, -1) == 0) {
// Walk skills are supposed to be used while walking
if (!(ud->skill_id == NPC_SELFDESTRUCTION && ud->skilltimer != INVALID_TIMER)
&& md->state.skillstate != MSS_WALK) {
@@ -898,7 +906,7 @@ static int unit_movepos(struct block_list *bl, short dst_x, short dst_y, int eas
} else
npc->untouch_areanpc(sd, bl->m, bl->x, bl->y);
- if( sd->status.pet_id > 0 && sd->pd && sd->pd->pet.intimate > 0 )
+ if (sd->status.pet_id > 0 && sd->pd && sd->pd->pet.intimate > PET_INTIMACY_NONE)
{ // Check if pet needs to be teleported. [Skotlex]
int flag = 0;
struct block_list* pbl = &sd->pd->bl;
@@ -1144,12 +1152,13 @@ static int unit_stop_walking(struct block_list *bl, int flag)
static int unit_skilluse_id(struct block_list *src, int target_id, uint16 skill_id, uint16 skill_lv)
{
int casttime = skill->cast_fix(src, skill_id, skill_lv);
- int castcancel = skill->get_castcancel(skill_id);
+ int castcancel = skill->get_castcancel(skill_id, skill_lv);
int ret = unit->skilluse_id2(src, target_id, skill_id, skill_lv, casttime, castcancel);
struct map_session_data *sd = BL_CAST(BL_PC, src);
- if (sd != NULL && (ret == 0 || !skill->is_item_skill(sd, skill_id, skill_lv)))
- pc->itemskill_clear(sd);
+ if (sd != NULL)
+ pc->autocast_remove(sd, sd->auto_cast_current.type, sd->auto_cast_current.skill_id,
+ sd->auto_cast_current.skill_lv);
return ret;
}
@@ -1558,7 +1567,7 @@ static int unit_skilluse_id2(struct block_list *src, int target_id, uint16 skill
//Check range when not using skill on yourself or is a combo-skill during attack
//(these are supposed to always have the same range as your attack)
if( src->id != target_id && (!temp || ud->attacktimer == INVALID_TIMER) ) {
- if( skill->get_state(ud->skill_id) == ST_MOVE_ENABLE ) {
+ if (skill->get_state(ud->skill_id, ud->skill_lv) == ST_MOVE_ENABLE) {
if( !unit->can_reach_bl(src, target, range + 1, 1, NULL, NULL) )
return 0; // Walk-path check failed.
} else if( src->type == BL_MER && skill_id == MA_REMOVETRAP ) {
@@ -1708,7 +1717,7 @@ static int unit_skilluse_id2(struct block_list *src, int target_id, uint16 skill
if (!ud->state.running) //need TK_RUN or WUGDASH handler to be done before that, see bugreport:6026
unit->stop_walking(src, STOPWALKING_FLAG_FIXPOS);// even though this is not how official works but this will do the trick. bugreport:6829
- if (sd != NULL && sd->state.itemskill_no_casttime == 1 && skill->is_item_skill(sd, skill_id, skill_lv))
+ if (sd != NULL && sd->auto_cast_current.itemskill_instant_cast && sd->auto_cast_current.type == AUTOCAST_ITEM)
casttime = 0;
// in official this is triggered even if no cast time.
@@ -1746,7 +1755,7 @@ static int unit_skilluse_id2(struct block_list *src, int target_id, uint16 skill
if( casttime <= 0 )
ud->state.skillcastcancel = 0;
- if( !sd || sd->skillitem != skill_id || skill->get_cast(skill_id,skill_lv) )
+ if (sd == NULL || sd->auto_cast_current.type < AUTOCAST_ABRA || skill->get_cast(skill_id, skill_lv) != 0)
ud->canact_tick = tick + casttime + 100;
if( sd )
{
@@ -1781,12 +1790,13 @@ static int unit_skilluse_id2(struct block_list *src, int target_id, uint16 skill
static int unit_skilluse_pos(struct block_list *src, short skill_x, short skill_y, uint16 skill_id, uint16 skill_lv)
{
int casttime = skill->cast_fix(src, skill_id, skill_lv);
- int castcancel = skill->get_castcancel(skill_id);
+ int castcancel = skill->get_castcancel(skill_id, skill_lv);
int ret = unit->skilluse_pos2(src, skill_x, skill_y, skill_id, skill_lv, casttime, castcancel);
struct map_session_data *sd = BL_CAST(BL_PC, src);
- if (sd != NULL && (ret == 0 || !skill->is_item_skill(sd, skill_id, skill_lv)))
- pc->itemskill_clear(sd);
+ if (sd != NULL)
+ pc->autocast_remove(sd, sd->auto_cast_current.type, sd->auto_cast_current.skill_id,
+ sd->auto_cast_current.skill_lv);
return ret;
}
@@ -1862,7 +1872,7 @@ static int unit_skilluse_pos2(struct block_list *src, short skill_x, short skill
return 0; // Attacking will be handled by unit_walk_toxy_timer in this case
}
- if( skill->get_state(ud->skill_id) == ST_MOVE_ENABLE ) {
+ if (skill->get_state(ud->skill_id, ud->skill_lv) == ST_MOVE_ENABLE) {
if( !unit->can_reach_bl(src, &bl, range + 1, 1, NULL, NULL) )
return 0; //Walk-path check failed.
} else if( !battle->check_range(src, &bl, range) )
@@ -1883,7 +1893,7 @@ static int unit_skilluse_pos2(struct block_list *src, short skill_x, short skill
}
ud->state.skillcastcancel = castcancel&&casttime>0?1:0;
- if( !sd || sd->skillitem != skill_id || skill->get_cast(skill_id,skill_lv) )
+ if (sd == NULL || sd->auto_cast_current.type < AUTOCAST_ABRA || skill->get_cast(skill_id, skill_lv) != 0)
ud->canact_tick = tick + casttime + 100;
#if 0
if (sd) {
@@ -1914,7 +1924,7 @@ static int unit_skilluse_pos2(struct block_list *src, short skill_x, short skill
unit->stop_walking(src, STOPWALKING_FLAG_FIXPOS);
- if (sd != NULL && sd->state.itemskill_no_casttime == 1 && skill->is_item_skill(sd, skill_id, skill_lv))
+ if (sd != NULL && sd->auto_cast_current.itemskill_instant_cast && sd->auto_cast_current.type == AUTOCAST_ITEM)
casttime = 0;
// in official this is triggered even if no cast time.
@@ -2333,7 +2343,7 @@ static int unit_attack_timer_sub(struct block_list *src, int tid, int64 tick)
if(md) {
//First attack is always a normal attack
if(md->state.skillstate == MSS_ANGRY || md->state.skillstate == MSS_BERSERK) {
- if (mob->skill_use(md,tick,-1)) {
+ if (mob->skill_use(md, tick, -1) == 0) {
map->freeblock_unlock();
return 1;
}
@@ -2718,7 +2728,7 @@ static int unit_remove_map(struct block_list *bl, enum clr_type clrtype, const c
case BL_PET:
{
struct pet_data *pd = BL_UCAST(BL_PET, bl);
- if( pd->pet.intimate <= 0 && !(pd->msd && !pd->msd->state.active) ) {
+ if (pd->pet.intimate <= PET_INTIMACY_NONE && !(pd->msd && !pd->msd->state.active)) {
//If logging out, this is deleted on unit->free
clif->clearunit_area(bl,clrtype);
map->delblock(bl);
@@ -2877,6 +2887,8 @@ static int unit_free(struct block_list *bl, enum clr_type clrtype)
aFree(sd->instance);
sd->instance = NULL;
}
+
+ VECTOR_CLEAR(sd->auto_cast); // Clear auto-cast vector.
VECTOR_CLEAR(sd->channels);
VECTOR_CLEAR(sd->script_queues);
VECTOR_CLEAR(sd->achievement); // Achievement [Smokexyz/Hercules]
@@ -2932,7 +2944,7 @@ static int unit_free(struct block_list *bl, enum clr_type clrtype)
aFree (pd->loot);
pd->loot = NULL;
}
- if (pd->pet.intimate > 0) {
+ if (pd->pet.intimate > PET_INTIMACY_NONE) {
intif->save_petdata(pd->pet.account_id,&pd->pet);
} else {
//Remove pet.