Explorar o código

* Applied fix provided by Valaris to make /pvpinfo actually work. (bugreport:1785, since r1602).
- Filled-in missing packet fields and documented the packet. Note, that this command does not show anything outside of PvP maps (client-side limitation).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14657 54d463be-8e91-2dee-dedb-b68131a5f0ec

ai4rei %!s(int64=14) %!d(string=hai) anos
pai
achega
bc191110f2
Modificáronse 3 ficheiros con 9 adicións e 6 borrados
  1. 2 0
      Changelog-Trunk.txt
  2. 1 1
      db/packet_db.txt
  3. 6 5
      src/map/clif.c

+ 2 - 0
Changelog-Trunk.txt

@@ -1,6 +1,8 @@
 Date	Added
 
 2011/01/08
+	* Applied fix provided by Valaris to make /pvpinfo actually work. (bugreport:1785, since r1602). [Ai4rei]
+	- Filled-in missing packet fields and documented the packet. Note, that this command does not show anything outside of PvP maps (client-side limitation).
 	* Fixed @homlevel usage message stating, that deleveling is possible, although it is not (bugreport:1485, since r10272). [Ai4rei]
 	- The command now fails, if it is given a zero or negative value.
 2011/01/07

+ 1 - 1
db/packet_db.txt

@@ -506,7 +506,7 @@ packet_ver: 9
 0x0214,42
 
 //2004-08-17aSakexe
-0x020f,10
+0x020f,10,pvpinfo,2:6
 0x0210,22
 
 //2004-09-06aSakexe

+ 6 - 5
src/map/clif.c

@@ -12098,20 +12098,20 @@ void clif_parse_FriendsListRemove(int fd, struct map_session_data *sd)
 }
 
 /*==========================================
- * /pvpinfo
+ * /pvpinfo (CZ_REQ_PVPPOINT & ZC_ACK_PVPPOINT)
+ * R 020f <char id>.L <account id>.L
+ * S 0210 <char id>.L <account id>.L <win point>.L <lose point>.L <point>.L
  *------------------------------------------*/
 void clif_parse_PVPInfo(int fd,struct map_session_data *sd)
 {
 	WFIFOHEAD(fd,packet_len(0x210));
 	WFIFOW(fd,0) = 0x210;
-	//WFIFOL(fd,2) = 0;	// not sure what for yet
-	//WFIFOL(fd,6) = 0;
+	WFIFOL(fd,2) = sd->status.char_id;
+	WFIFOL(fd,6) = sd->status.account_id;
 	WFIFOL(fd,10) = sd->pvp_won;	// times won
 	WFIFOL(fd,14) = sd->pvp_lost;	// times lost
 	WFIFOL(fd,18) = sd->pvp_point;
 	WFIFOSET(fd, packet_len(0x210));
-
-	return;
 }
 
 /*==========================================
@@ -14601,6 +14601,7 @@ static int packetdb_readdb(void)
 		{clif_parse_PartyBookingUpdateReq,"bookingupdatereq"},
 		{clif_parse_PartyBookingDeleteReq,"bookingdelreq"},
 #endif
+		{clif_parse_PVPInfo,"pvpinfo"},
 		{NULL,NULL}
 	};