فهرست منبع

Added TODOs for shuffle packets (#8971)

Lemongrass3110 4 ماه پیش
والد
کامیت
55705e42f7
2فایلهای تغییر یافته به همراه24 افزوده شده و 4 حذف شده
  1. 20 0
      src/map/clif.cpp
  2. 4 4
      src/map/clif_packetdb.hpp

+ 20 - 0
src/map/clif.cpp

@@ -10619,6 +10619,7 @@ void clif_parse_WantToConnection(int32 fd, map_session_data* sd)
 	}
 
 	cmd = RFIFOW(fd, 0);
+	// TODO: shuffle packet
 	account_id = RFIFOL(fd, packet_db[cmd].pos[0]);
 	char_id = RFIFOL(fd, packet_db[cmd].pos[1]);
 	login_id1 = RFIFOL(fd, packet_db[cmd].pos[2]);
@@ -11138,6 +11139,7 @@ void clif_notify_time(map_session_data* sd, t_tick time)
 /// There are various variants of this packet, some of them have padding between fields.
 void clif_parse_TickSend(int32 fd, map_session_data *sd)
 {
+	// TODO: shuffle packet
 	sd->client_tick = RFIFOL(fd,packet_db[RFIFOW(fd,0)].pos[0]);
 
 	clif_notify_time(sd, gettick());
@@ -11331,6 +11333,7 @@ void clif_parse_WalkToXY(int32 fd, map_session_data *sd)
 	if(sd->sc.getSCE(SC_RUN) || sd->sc.getSCE(SC_WUGDASH))
 		return;
 
+	// TODO: shuffle packet
 	RFIFOPOS(fd, packet_db[RFIFOW(fd,0)].pos[0], &x, &y, nullptr);
 
 	//A move command one cell west is only valid if the target cell is free
@@ -11404,6 +11407,7 @@ void clif_parse_QuitGame(int32 fd, map_session_data *sd)
 /// There are various variants of this packet, some of them have padding between fields.
 void clif_parse_GetCharNameRequest(int32 fd, map_session_data *sd)
 {
+	// TODO: shuffle packet
 	int32 id = RFIFOL(fd,packet_db[RFIFOW(fd,0)].pos[0]);
 	struct block_list* bl;
 	//status_change *sc;
@@ -11542,6 +11546,7 @@ void clif_changed_dir(block_list& bl, enum send_target target){
 void clif_parse_ChangeDir(int32 fd, map_session_data *sd)
 {
 	unsigned char headdir, dir;
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 
 	headdir = RFIFOB(fd,info->pos[0]);
@@ -11747,6 +11752,7 @@ void clif_parse_ActionRequest(int32 fd, map_session_data *sd)
 		return;
 	}
 
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 	clif_parse_ActionRequest_sub( *sd,
 		RFIFOB(fd,info->pos[1]),
@@ -11933,6 +11939,7 @@ void clif_parse_TakeItem(int32 fd, map_session_data *sd)
 	struct flooritem_data *fitem;
 	int32 map_object_id;
 
+	// TODO: shuffle packet
 	map_object_id = RFIFOL(fd,packet_db[RFIFOW(fd,0)].pos[0]);
 
 	fitem = (struct flooritem_data*)map_id2bl(map_object_id);
@@ -11964,6 +11971,7 @@ void clif_parse_TakeItem(int32 fd, map_session_data *sd)
 /// 0363 <index>.W <amount>.W (CZ_ITEM_THROW2)
 /// There are various variants of this packet, some of them have padding between fields.
 void clif_parse_DropItem(int32 fd, map_session_data *sd){
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 	int32 item_index  = RFIFOW(fd,info->pos[0]) -2;
 	int32 item_amount = RFIFOW(fd,info->pos[1]) ;
@@ -12918,6 +12926,7 @@ void clif_parse_skill_toid( map_session_data* sd, uint16 skill_id, uint16 skill_
 /// 0438 <skill lv>.W <skill id>.W <target id>.L (CZ_USE_SKILL2)
 /// There are various variants of this packet, some of them have padding between fields.
 void clif_parse_UseSkillToId( int32 fd, map_session_data *sd ){
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd, 0)];
 
 	clif_parse_skill_toid( sd, RFIFOW(fd, info->pos[1]), RFIFOW(fd, info->pos[0]), RFIFOL(fd, info->pos[2]) );
@@ -13029,6 +13038,7 @@ void clif_parse_UseSkillToPos(int32 fd, map_session_data *sd)
 		return;
 	}
 
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 	if (pc_cant_act(sd))
 		return;
@@ -13057,6 +13067,7 @@ void clif_parse_UseSkillToPosMoreInfo(int32 fd, map_session_data *sd)
 		return;
 	}
 
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 	if (pc_cant_act(sd))
 		return;
@@ -13439,6 +13450,7 @@ void clif_parse_SolveCharName(int32 fd, map_session_data *sd)
 {
 	int32 charid;
 
+	// TODO: shuffle packet
 	charid = RFIFOL(fd,packet_db[RFIFOW(fd,0)].pos[0]);
 	map_reqnickdb(sd, charid);
 }
@@ -13487,6 +13499,7 @@ void clif_parse_LocalBroadcast(int32 fd, map_session_data* sd)
 void clif_parse_MoveToKafra(int32 fd, map_session_data *sd)
 {
 	int32 item_index, item_amount;
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 
 	if (pc_istrading(sd))
@@ -13518,6 +13531,7 @@ void clif_parse_MoveToKafra(int32 fd, map_session_data *sd)
 void clif_parse_MoveFromKafra(int32 fd,map_session_data *sd)
 {
 	int32 item_index, item_amount;
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 
 	item_index = RFIFOW(fd,info->pos[0])-1;
@@ -13627,6 +13641,7 @@ void clif_storagepassword(map_session_data* sd, short info)
 ///     3 = check password
 /// NOTE: This packet is only available on certain non-kRO clients.
 void clif_parse_StoragePassword(int32 fd, map_session_data *sd){ //@TODO
+	// TODO: shuffle packet
 //	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 //	int32 type = RFIFOW(fd,info->pos[0]);
 //	char* password = RFIFOP(fd,info->pos[1]);
@@ -13854,6 +13869,7 @@ void clif_parse_PartyChangeLeader(int32 fd, map_session_data* sd){
 /// Request to register a party booking advertisment (CZ_PARTY_BOOKING_REQ_REGISTER).
 /// 0802 <level>.W <map id>.W { <job>.W }*6
 void clif_parse_PartyBookingRegisterReq(int32 fd, map_session_data* sd){
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 	short level = RFIFOW(fd,info->pos[0]);
 	short mapid = RFIFOW(fd,info->pos[1]);
@@ -15280,6 +15296,7 @@ void clif_parse_FriendsListAdd(int32 fd, map_session_data *sd)
 	map_session_data *f_sd;
 	int32 i;
 
+	// TODO: shuffle packet
 	f_sd = map_nick2sd(RFIFOCP(fd,packet_db[RFIFOW(fd,0)].pos[0]),false);
 
 	// Friend doesn't exist (no player with this name)
@@ -15619,6 +15636,7 @@ void clif_parse_HomMenu(int32 fd, map_session_data *sd)
 	if(!hom_is_active(sd->hd))
 		return;
 
+	// TODO: shuffle packet
 	hom_menu(sd,RFIFOB(fd,packet_db[cmd].pos[1]));
 }
 
@@ -18871,6 +18889,7 @@ void clif_parse_ItemListWindowSelected(int32 fd, map_session_data* sd) {
 		return;
 	}
 
+	// TODO: shuffle packet
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
 	int32 n = (RFIFOW(fd,info->pos[0])-12) / 4;
 	int32 type = RFIFOL(fd,info->pos[1]);
@@ -19122,6 +19141,7 @@ static void clif_parse_ReqClickBuyingStore(int32 fd, map_session_data* sd)
 {
 	uint32 account_id;
 
+	// TODO: shuffle packet
 	account_id = RFIFOL(fd,packet_db[RFIFOW(fd,0)].pos[0]);
 
 	buyingstore_open(sd, account_id);

+ 4 - 4
src/map/clif_packetdb.hpp

@@ -1455,7 +1455,7 @@
 	parseable_packet(0x089e,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
 	parseable_packet(0x08ab,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
 	parseable_packet(0x088b,2,clif_parse_SearchStoreInfoNextPage,0);
-	parseable_packet(0x08a2,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x08a2,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,0);
 #endif
 
 // 2012-03-07fRagexeRE
@@ -1486,7 +1486,7 @@
 	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
 	parseable_packet(0x0884,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
 	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
-	parseable_packet(0x0838,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0838,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,0);
 	parseable_packet(0x0439,8,clif_parse_UseItem,2,4);
 	parseable_packet(0x0365,41,clif_parse_PartyBookingRegisterReq,2,4,6);
 	// New Packet
@@ -1513,7 +1513,7 @@
 	parseable_packet(0x0811,-1,clif_parse_ReqTradeBuyingStore,2,4,8,12);
 	parseable_packet(0x0819,-1,clif_parse_SearchStoreInfo,2,4,5,9,13,14,15);
 	parseable_packet(0x0835,2,clif_parse_SearchStoreInfoNextPage,0);
-	parseable_packet(0x0838,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0838,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,0);
 	parseable_packet(0x0437,5,clif_parse_WalkToXY,2);
 	parseable_packet(0x0886,6,clif_parse_TickSend,2);
 	parseable_packet(0x0871,5,clif_parse_ChangeDir,2,4);
@@ -1628,7 +1628,7 @@
 	//parseable_packet(0x0281,-1,clif_parse_ItemListWindowSelected,2,4,8,12);
 	parseable_packet(0x035f,6,clif_parse_ReqClickBuyingStore,2);
 	parseable_packet(0x0363,6,clif_parse_TickSend,2);
-	parseable_packet(0x0365,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,2,6,10);
+	parseable_packet(0x0365,sizeof(struct PACKET_CZ_SSILIST_ITEM_CLICK),clif_parse_SearchStoreInfoListItemClick,0);
 	parseable_packet(0x0438,6,clif_parse_DropItem,2,4);
 	parseable_packet(0x0447,2,clif_parse_blocking_playcancel,0); // CZ_BLOCKING_PLAY_CANCEL
 	parseable_packet(0x044A,6,clif_parse_client_version,2);