viewing paste ra_fallitem4 | Diff

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
Index: src/common/mmo.h
===================================================================
--- src/common/mmo.h    (revision 17293)
+++ src/common/mmo.h    (working copy)
@@ -47,7 +47,7 @@
 // 20120307 - 2012-03-07aRagexeRE+ - 0x970
 
 #ifndef PACKETVER
-       #define PACKETVER 20120410
+       #define PACKETVER 20130320
        //#define PACKETVER 20111116
 #endif
 
Index: src/map/clif.c
===================================================================
--- src/map/clif.c      (revision 17293)
+++ src/map/clif.c      (working copy)
@@ -721,28 +721,38 @@
 
 /// Makes an item appear on the ground.
 /// 009e <id>.L <name id>.W <identified>.B <x>.W <y>.W <subX>.B <subY>.B <amount>.W (ZC_ITEM_FALL_ENTRY)
-/// 084b (ZC_ITEM_FALL_ENTRY4)
+/// 084b(2013) <id>.L <name id>.W <type>.W <identified>.B <x>.W <y>.W <subX>.B <subY>.B <amount>.W (ZC_ITEM_FALL_ENTRY4)
 void clif_dropflooritem(struct flooritem_data* fitem)
 {
+#if PACKETVER >= 20130000
+       uint8 buf[19];
+       uint32 header=0x84b;
+#else
        uint8 buf[17];
-       int view;
+       uint32 header=0x09b;
+#endif
+       int view, offset=0;
 
        nullpo_retv(fitem);
 
        if (fitem->item_data.nameid <= 0)
                return;
 
-       WBUFW(buf, 0) = 0x9e;
-       WBUFL(buf, 2) = fitem->bl.id;
-       WBUFW(buf, 6) = ((view = itemdb_viewid(fitem->item_data.nameid)) > 0) ? view : fitem->item_data.nameid;
-       WBUFB(buf, 8) = fitem->item_data.identify;
-       WBUFW(buf, 9) = fitem->bl.x;
-       WBUFW(buf,11) = fitem->bl.y;
-       WBUFB(buf,13) = fitem->subx;
-       WBUFB(buf,14) = fitem->suby;
-       WBUFW(buf,15) = fitem->item_data.amount;
+       WBUFW(buf, offset+0) = header;
+       WBUFL(buf, offset+2) = fitem->bl.id;
+       WBUFW(buf, offset+6) = ((view = itemdb_viewid(fitem->item_data.nameid)) > 0) ? view : fitem->item_data.nameid;
+#if PACKETVER >= 20130000
+       WBUFW(buf, offset+8) = itemtype(itemdb_type(fitem->item_data.nameid));
+       offset +=2;
+#endif
+       WBUFB(buf, offset+8) = fitem->item_data.identify;
+       WBUFW(buf, offset+9) = fitem->bl.x;
+       WBUFW(buf, offset+11) = fitem->bl.y;
+       WBUFB(buf, offset+13) = fitem->subx;
+       WBUFB(buf, offset+14) = fitem->suby;
+       WBUFW(buf, offset+15) = fitem->item_data.amount;
 
-       clif_send(buf, packet_len(0x9e), &fitem->bl, AREA);
+       clif_send(buf, packet_len(header), &fitem->bl, AREA);
 }
 
 
@@ -16691,7 +16701,11 @@
            0,  0,  0,  0,  6,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
            0,  0,  0,  0,  0, -1, -1,  3,  2, 66,  5,  2, 12,  6,  0,  0,
        //#0x0840
+#if PACKETVER < 20130000
            0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
+#else
+           0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  19,  0,  0,  0,  0,
+#endif
            0,  0,  0,  0,  0,  0, -1, -1, -1, -1,  0,  0,  0,  0,  0,  0,
            0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
            0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
 
Index: db/packet_db.txt
===================================================================
--- db/packet_db.txt    (revision 17293)
+++ db/packet_db.txt    (working copy)
@@ -1834,6 +1834,7 @@
 //0x0838,12,searchstoreinfolistitemclick,2:6:10
 0x0447,2
 0x99b,8
+0x84b,19 //fallitem4
 
 // New cashshop
 0x0844,2,cashshopopen,0
Viewed 368 times, submitted by lighta.