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 1337 times, submitted by lighta.