diff --git a/db/packet_db.txt b/db/packet_db.txt index 114b40205f..10d01da39e 100644 --- a/db/packet_db.txt +++ b/db/packet_db.txt @@ -2523,5 +2523,42 @@ packet_keys: 0x62C86D09,0x75944F17,0x112C133D // [YomRawr] 0x09FB,-1,dull,0 // CZ_PET_EVOLUTION 0x09FC,6 // ZC_PET_EVOLUTION_RESULT +//2015-09-16Ragexe +packet_ver: 53 +packet_keys: 0x17F83A19,0x116944F4,0x1CC541E9 // [Napster] +0x0869,7,actionrequest,2:6 +0x093E,10,useskilltoid,2:4:6 +0x0877,5,walktoxy,2 +0x08AC,6,ticksend,2 +0x0936,5,changedir,2:4 +0x089C,6,takeitem,2 +0x092F,6,dropitem,2:4 +0x0934,8,movetokafra,2:4 +0x085E,8,movefromkafra,2:4 +0x022D,10,useskilltopos,2:4:6:8 +0x0873,90,useskilltoposinfo,2:4:6:8:10 +0x095A,6,getcharnamerequest,2 +0x0942,6,solvecharname,2 +0x087F,12,searchstoreinfolistitemclick,2:6:10 +0x0817,2,searchstoreinfonextpage,0 +0x0920,-1,searchstoreinfo,2:4:5:9:13:14:15 +0x0881,-1,reqtradebuyingstore,2:4:8:12 +0x0835,6,reqclickbuyingstore,2 +0x092E,2,reqclosebuyingstore,0 +0x0948,-1,reqopenbuyingstore,2:4:8:9:89 +0x089B,18,bookingregreq,2:4:6 +// 0x094F,8 CZ_JOIN_BATTLE_FIELD +0x0961,-1, itemlistwindowselected,2:4:8:12 +0x0969,19,wanttoconnection,2:6:10:14:18 +0x0924,26,partyinvite2,2 +// 0x0938,4 CZ_GANGSI_RANK +0x089E,26,friendslistadd,2 +0x0960,5,hommenu,2:4 +0x0941,36,storagepassword,2:4:20 + +// New Packet +0x097F,-1 // ZC_SELECTCART +0x0980,7,selectcart,2:6 // CZ_SELECTCART + //Add new packets here -//packet_ver: 53 +//packet_ver: 54 diff --git a/db/pre-re/skill_db.txt b/db/pre-re/skill_db.txt index e405313f40..6cfe8956e6 100644 --- a/db/pre-re/skill_db.txt +++ b/db/pre-re/skill_db.txt @@ -1233,7 +1233,7 @@ //2541,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0, NPC_UGLYDANCE,Ugly Dance 2 //2542,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0, ALL_TETANY,Tetany //2543,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0, ALL_RAY_OF_PROTECTION,Ray of Protection -//2544,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0, MC_CARTDECORATE,Decorate Cart +2544,0,6,4,0,0x1,0,1,1,no,0,0x1,0,none,0,0x0, MC_CARTDECORATE,Decorate Cart //**** // Rebellion diff --git a/db/pre-re/skill_require_db.txt b/db/pre-re/skill_require_db.txt index 059009b809..d1574a426f 100644 --- a/db/pre-re/skill_require_db.txt +++ b/db/pre-re/skill_require_db.txt @@ -883,7 +883,7 @@ //2542,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //ALL_TETANY //2543,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //ALL_RAY_OF_PROTECTION -//2544,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE +2544,0,0,40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE //**** // Rebellion diff --git a/db/pre-re/skill_tree.txt b/db/pre-re/skill_tree.txt index 553fa5f8af..3ecd28aab7 100644 --- a/db/pre-re/skill_tree.txt +++ b/db/pre-re/skill_tree.txt @@ -80,6 +80,8 @@ 5,154,1,0,0,0,0,0,0,0,0,0,0 //MC_CHANGECART#Change Cart# 5,155,1,0,0,0,0,0,0,0,0,0,0 //MC_LOUD#Crazy Uproar# 5,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# +5,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +5,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Thief 6,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 6,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -229,6 +231,8 @@ 10,1013,1,0,0,0,0,0,0,0,0,0,0 //BS_GREED#Greed# 10,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# 10,459,1,111,5,0,0,0,0,0,0,0,0 //BS_ADRENALINE2#Full Adrenaline Rush# +10,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +10,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Hunter 11,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 11,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -492,6 +496,8 @@ 18,496,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT1#Twilight Alchemy 1# 18,497,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT2#Twilight Alchemy 2# 18,498,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT3#Twilight Alchemy 3# +18,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +18,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Bard 19,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 19,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -644,6 +650,8 @@ 23,52,10,0,0,0,0,0,0,0,0,0,0 //TF_POISON#Envenom# 23,53,1,52,3,0,0,0,0,0,0,0,0 //TF_DETOXIFY#Detoxify# 23,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# +23,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +23,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Gunslinger 24,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 24,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -778,6 +786,8 @@ 4006,154,1,0,0,0,0,0,0,0,0,0,0 //MC_CHANGECART#Change Cart# 4006,155,1,0,0,0,0,0,0,0,0,0,0 //MC_LOUD#Crazy Uproar# 4006,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# +4006,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4006,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //ThiefHigh 4007,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4007,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -952,6 +962,8 @@ 4011,486,5,113,5,0,0,0,0,0,0,0,0 //WS_OVERTHRUSTMAX#Maximum Power Thrust# 4011,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# 4011,459,1,111,5,0,0,0,0,0,0,0,0 //BS_ADRENALINE2#Full Adrenaline Rush# +4011,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4011,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Sniper 4012,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4012,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -1258,6 +1270,8 @@ 4019,496,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT1#Twilight Alchemy 1# 4019,497,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT2#Twilight Alchemy 2# 4019,498,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT3#Twilight Alchemy 3# +4019,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4019,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Clown 4020,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4020,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -1454,6 +1468,8 @@ 4028,155,1,0,0,0,0,0,0,0,0,0,0 //MC_LOUD#Crazy Uproar# 4028,408,1,0,0,0,0,0,0,0,0,0,0 //WE_BABY#Baby# 4028,409,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLPARENT#Call Parent# +4028,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4028,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Thief 4029,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4029,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -1607,6 +1623,8 @@ 4033,1012,1,0,0,0,0,0,0,0,0,0,0 //BS_UNFAIRLYTRICK#Unfair Trick# 4033,1013,1,0,0,0,0,0,0,0,0,0,0 //BS_GREED#Greed# 4033,459,1,111,5,0,0,0,0,0,0,0,0 //BS_ADRENALINE2#Full Adrenaline Rush# +4033,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4033,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Hunter 4034,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4034,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -1878,6 +1896,8 @@ 4041,496,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT1#Twilight Alchemy 1# 4041,497,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT2#Twilight Alchemy 2# 4041,498,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT3#Twilight Alchemy 3# +4041,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4041,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Bard 4042,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4042,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -2028,6 +2048,8 @@ 4045,53,1,52,3,0,0,0,0,0,0,0,0 //TF_DETOXIFY#Detoxify# 4045,408,1,0,0,0,0,0,0,0,0,0,0 //WE_BABY#Baby# 4045,409,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLPARENT#Call Parent# +4045,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4045,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Taekwon 4046,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4046,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -2634,6 +2656,8 @@ 4058,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4058,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4058,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4058,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4058,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Guillotine Cross (Regular) 4059,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4059,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -2984,6 +3008,8 @@ 4064,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4064,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4064,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4064,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4064,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Guillotine Cross (Trans) 4065,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4065,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -3386,6 +3412,8 @@ 4071,2497,10,0,0,0,0,0,0,0,0,0,0 //GN_S_PHARMACY#Special Pharmacy# 4071,5003,5,2497,1,0,0,0,0,0,0,0,0 //GN_ILLUSIONDOOPING#Hallucination Drug# 4071,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4071,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4071,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Shadow Chaser (Regular) 4072,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4072,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -3828,6 +3856,8 @@ 4078,2497,10,0,0,0,0,0,0,0,0,0,0 //GN_S_PHARMACY#Special Pharmacy# 4078,5003,5,2497,1,0,0,0,0,0,0,0,0 //GN_ILLUSIONDOOPING#Hallucination Drug# 4078,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4078,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4078,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Shadow Chaser (Trans) 4079,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4079,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -4269,6 +4299,8 @@ 4086,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4086,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4086,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4086,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4086,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Mechanic (Mado) (Trans) 4087,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4087,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -4343,6 +4375,8 @@ 4087,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4087,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4087,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4087,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4087,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Rune Knight 4096,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4096,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -4626,6 +4660,8 @@ 4100,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4100,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4100,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4100,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4100,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Guillotine Cross 4101,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4101,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -5030,6 +5066,8 @@ 4107,2497,10,0,0,0,0,0,0,0,0,0,0 //GN_S_PHARMACY#Special Pharmacy# 4107,5003,5,2497,1,0,0,0,0,0,0,0,0 //GN_ILLUSIONDOOPING#Hallucination Drug# 4107,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4107,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4107,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Shadow Chaser 4108,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4108,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -5309,6 +5347,8 @@ 4112,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4112,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4112,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4112,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4112,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Super Novice (Expanded) 4190,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4190,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -5391,6 +5431,8 @@ 4190,261,5,259,2,0,0,0,0,0,0,0,0 //MO_CALLSPIRITS#Summon Spirit Sphere# 4190,262,1,261,5,0,0,0,0,0,0,0,0 //MO_ABSORBSPIRITS#Absorb Spirit Sphere# 4190,365,1,9,1,0,0,0,0,0,0,0,0 //HW_MAGICCRASHER#Stave Crasher# +4190,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4190,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Super Baby (Expanded) 4191,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4191,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -5474,6 +5516,8 @@ 4191,261,5,259,2,0,0,0,0,0,0,0,0 //MO_CALLSPIRITS#Summon Spirit Sphere# 4191,262,1,261,5,0,0,0,0,0,0,0,0 //MO_ABSORBSPIRITS#Absorb Spirit Sphere# 4191,365,1,9,1,0,0,0,0,0,0,0,0 //HW_MAGICCRASHER#Stave Crasher# +4191,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4191,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Kagerou 4211,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4211,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# diff --git a/db/re/item_db.txt b/db/re/item_db.txt index a1cf0f5121..01349f8650 100644 --- a/db/re/item_db.txt +++ b/db/re/item_db.txt @@ -4476,7 +4476,7 @@ 6603,Skin_Of_Hraesvelg,Skin Of Hraesvelg,3,0,,500,,,,,,,,,,,,,{},{},{} 6604,Essence_Rune_Magic,Essence Rune Magic,3,0,,0,,,,,,,,,,,,,{},{},{} 6605,Muspellium,Muspellium,3,0,,0,,,,,,,,,,,,,{},{},{} -6606,P_Cart_C,P Cart C,3,0,,10,,,,,,,,,,,,,{},{},{} +6606,Cute_Cart_Coupon,Cute Cart Remodel Coupon,3,0,,10,,,,,,,,,,,,,{},{},{} 6607,Temporal_Crystal,Temporal Crystal,3,20,,10,,,,,,,,,,,,,{},{},{} 6608,Coagulated_Spell,Coagulated Spell,3,0,,0,,,,,,,,,,,,,{},{},{} 6609,Glast_Decayed_Nail,Glast Decayed Nail,3,82,,10,,,,,,,,,,,,,{},{},{} diff --git a/db/re/skill_db.txt b/db/re/skill_db.txt index 7dc2daf18d..cb5161e587 100644 --- a/db/re/skill_db.txt +++ b/db/re/skill_db.txt @@ -1232,7 +1232,7 @@ //2541,0,6,4,0,0x1,0,5,1,no,0,0x2,0,none,0,0x0, NPC_UGLYDANCE,Ugly Dance 2 //2542,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0, ALL_TETANY,Tetany //2543,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, ALL_RAY_OF_PROTECTION,Ray of Protection -//2544,0,0,0,0,0,0,??,0,no,0,0,0,none,0,0x0, MC_CARTDECORATE,Decorate Cart +2544,0,6,4,0,0x1,0,1,1,no,0,0x1,0,none,0,0x0, MC_CARTDECORATE,Decorate Cart //2545,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GM_ITEM_ATKMAX,Maximize Attack //2546,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GM_ITEM_ATKMIN,Minimize Attack //2547,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0, GM_ITEM_MATKMAX,Maximize Magic Attack diff --git a/db/re/skill_require_db.txt b/db/re/skill_require_db.txt index 91a4cf6136..b6b6c1ae69 100644 --- a/db/re/skill_require_db.txt +++ b/db/re/skill_require_db.txt @@ -883,7 +883,7 @@ //2542,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //ALL_TETANY //2543,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //ALL_RAY_OF_PROTECTION -//2544,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE +2544,0,0,40,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE //2545,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //GM_ITEM_ATKMAX //2546,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //GM_ITEM_ATKMIN //2547,0,0,1,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //GM_ITEM_MATKMAX diff --git a/db/re/skill_tree.txt b/db/re/skill_tree.txt index 862365e8a8..69551c1dd2 100644 --- a/db/re/skill_tree.txt +++ b/db/re/skill_tree.txt @@ -80,6 +80,8 @@ 5,154,1,0,0,0,0,0,0,0,0,0,0 //MC_CHANGECART#Change Cart# 5,155,1,0,0,0,0,0,0,0,0,0,0 //MC_LOUD#Crazy Uproar# 5,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# +5,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +5,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Thief 6,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 6,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -229,6 +231,8 @@ 10,1013,1,0,0,0,0,0,0,0,0,0,0 //BS_GREED#Greed# 10,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# 10,459,1,111,5,0,0,0,0,0,0,0,0 //BS_ADRENALINE2#Full Adrenaline Rush# +10,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +10,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Hunter 11,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 11,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -492,6 +496,8 @@ 18,496,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT1#Twilight Alchemy 1# 18,497,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT2#Twilight Alchemy 2# 18,498,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT3#Twilight Alchemy 3# +18,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +18,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Bard 19,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 19,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -644,6 +650,8 @@ 23,52,10,0,0,0,0,0,0,0,0,0,0 //TF_POISON#Envenom# 23,53,1,52,3,0,0,0,0,0,0,0,0 //TF_DETOXIFY#Detoxify# 23,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# +23,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +23,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Gunslinger 24,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 24,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -778,6 +786,8 @@ 4006,154,1,0,0,0,0,0,0,0,0,0,0 //MC_CHANGECART#Change Cart# 4006,155,1,0,0,0,0,0,0,0,0,0,0 //MC_LOUD#Crazy Uproar# 4006,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# +4006,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4006,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //ThiefHigh 4007,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4007,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -952,6 +962,8 @@ 4011,486,5,113,5,0,0,0,0,0,0,0,0 //WS_OVERTHRUSTMAX#Maximum Power Thrust# 4011,410,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLBABY#Call Baby# 4011,459,1,111,5,0,0,0,0,0,0,0,0 //BS_ADRENALINE2#Full Adrenaline Rush# +4011,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4011,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Sniper 4012,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4012,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -1258,6 +1270,8 @@ 4019,496,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT1#Twilight Alchemy 1# 4019,497,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT2#Twilight Alchemy 2# 4019,498,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT3#Twilight Alchemy 3# +4019,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4019,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Clown 4020,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4020,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -1454,6 +1468,8 @@ 4028,155,1,0,0,0,0,0,0,0,0,0,0 //MC_LOUD#Crazy Uproar# 4028,408,1,0,0,0,0,0,0,0,0,0,0 //WE_BABY#Baby# 4028,409,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLPARENT#Call Parent# +4028,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4028,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Thief 4029,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4029,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -1607,6 +1623,8 @@ 4033,1012,1,0,0,0,0,0,0,0,0,0,0 //BS_UNFAIRLYTRICK#Unfair Trick# 4033,1013,1,0,0,0,0,0,0,0,0,0,0 //BS_GREED#Greed# 4033,459,1,111,5,0,0,0,0,0,0,0,0 //BS_ADRENALINE2#Full Adrenaline Rush# +4033,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4033,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Hunter 4034,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4034,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -1878,6 +1896,8 @@ 4041,496,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT1#Twilight Alchemy 1# 4041,497,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT2#Twilight Alchemy 2# 4041,498,1,228,10,0,0,0,0,0,0,0,0 //AM_TWILIGHT3#Twilight Alchemy 3# +4041,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4041,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Bard 4042,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4042,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -2028,6 +2048,8 @@ 4045,53,1,52,3,0,0,0,0,0,0,0,0 //TF_DETOXIFY#Detoxify# 4045,408,1,0,0,0,0,0,0,0,0,0,0 //WE_BABY#Baby# 4045,409,1,0,0,0,0,0,0,0,0,0,0 //WE_CALLPARENT#Call Parent# +4045,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4045,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Taekwon 4046,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4046,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -2634,6 +2656,8 @@ 4058,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4058,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4058,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4058,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4058,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Guillotine Cross (Regular) 4059,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4059,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -2984,6 +3008,8 @@ 4064,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4064,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4064,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4064,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4064,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Guillotine Cross (Trans) 4065,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4065,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -3386,6 +3412,8 @@ 4071,2497,10,0,0,0,0,0,0,0,0,0,0 //GN_S_PHARMACY#Special Pharmacy# 4071,5003,5,2497,1,0,0,0,0,0,0,0,0 //GN_ILLUSIONDOOPING#Hallucination Drug# 4071,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4071,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4071,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Shadow Chaser (Regular) 4072,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4072,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -3828,6 +3856,8 @@ 4078,2497,10,0,0,0,0,0,0,0,0,0,0 //GN_S_PHARMACY#Special Pharmacy# 4078,5003,5,2497,1,0,0,0,0,0,0,0,0 //GN_ILLUSIONDOOPING#Hallucination Drug# 4078,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4078,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4078,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Shadow Chaser (Trans) 4079,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4079,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -4269,6 +4299,8 @@ 4086,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4086,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4086,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4086,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4086,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Mechanic (Mado) (Trans) 4087,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4087,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -4343,6 +4375,8 @@ 4087,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4087,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4087,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4087,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4087,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Rune Knight 4096,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4096,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -4626,6 +4660,8 @@ 4100,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4100,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4100,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4100,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4100,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Guillotine Cross 4101,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4101,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -5030,6 +5066,8 @@ 4107,2497,10,0,0,0,0,0,0,0,0,0,0 //GN_S_PHARMACY#Special Pharmacy# 4107,5003,5,2497,1,0,0,0,0,0,0,0,0 //GN_ILLUSIONDOOPING#Hallucination Drug# 4107,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4107,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4107,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Baby Shadow Chaser 4108,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4108,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -5309,6 +5347,8 @@ 4112,2283,1,2281,1,0,0,0,0,0,0,0,0 //NC_DISJOINT#FAW Removal# 4112,5006,5,0,0,0,0,0,0,0,0,0,0 //NC_MAGMA_ERUPTION#Magma Eruption# 4112,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle# +4112,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4112,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Super Novice (Expanded) 4190,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4190,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -5391,6 +5431,8 @@ 4190,261,5,259,2,0,0,0,0,0,0,0,0 //MO_CALLSPIRITS#Summon Spirit Sphere# 4190,262,1,261,5,0,0,0,0,0,0,0,0 //MO_ABSORBSPIRITS#Absorb Spirit Sphere# 4190,365,1,9,1,0,0,0,0,0,0,0,0 //HW_MAGICCRASHER#Stave Crasher# +4190,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4190,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Super Baby (Expanded) 4191,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4191,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# @@ -5474,6 +5516,8 @@ 4191,261,5,259,2,0,0,0,0,0,0,0,0 //MO_CALLSPIRITS#Summon Spirit Sphere# 4191,262,1,261,5,0,0,0,0,0,0,0,0 //MO_ABSORBSPIRITS#Absorb Spirit Sphere# 4191,365,1,9,1,0,0,0,0,0,0,0,0 //HW_MAGICCRASHER#Stave Crasher# +4191,2535,2,41,1,0,0,0,0,0,0,0,0 //ALL_BUYING_STORE#Open Buying Store# +4191,2544,1,0,0,0,0,0,0,0,0,0,0 //MC_CARTDECORATE#Cart Decorate# //Kagerou 4211,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill# 4211,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid# diff --git a/src/common/mmo.h b/src/common/mmo.h index adaf519139..8f8cb30c41 100644 --- a/src/common/mmo.h +++ b/src/common/mmo.h @@ -849,7 +849,11 @@ enum e_pc_reg_loading { #ifndef ENABLE_SC_SAVING #warning "Cart won't be able to be saved for relog" #endif +#if PACKETVER >= 20150826 + #define MAX_CARTS 12 // used for 3 new cart design +#else #define MAX_CARTS 9 +#endif #else #define MAX_CARTS 5 #endif diff --git a/src/common/utils.c b/src/common/utils.c index ec6d337445..570b33e227 100644 --- a/src/common/utils.c +++ b/src/common/utils.c @@ -383,7 +383,8 @@ uint32 date2version(int date) { //else if(date < 20141016) return 48; else if(date < 20141022) return 50; else if(date < 20150513) return 51; - else if(date >= 20150513) return 52; + else if(date < 20150916) return 52; + else if(date >= 20150916) return 53; else return 30; //default } diff --git a/src/map/clif.c b/src/map/clif.c index 713866dd59..35a09d71fb 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -9699,8 +9699,7 @@ void clif_msg_skill(struct map_session_data* sd, uint16 skill_id, int msg_id) /// Returns true if the packet was parsed successfully. /// Formats: 0 - .w .w ( : ).?B 00 /// 1 - .w .w .24B .?B 00 -static bool clif_process_message(struct map_session_data* sd, int format, char** name_, int* namelen_, char** message_, int* messagelen_) -{ +static bool clif_process_message(struct map_session_data* sd, int format, char** name_, int* namelen_, char** message_, int* messagelen_) { char *text, *name, *message; unsigned int packetlen, textlen, namelen, messagelen; int fd = sd->fd; @@ -9713,8 +9712,7 @@ static bool clif_process_message(struct map_session_data* sd, int format, char** packetlen = RFIFOW(fd,info->pos[0]); // basic structure checks - if( packetlen < 4 + 1 ) - { // 4-byte header and at least an empty string is expected + if( packetlen < 4 + 1 ) { // 4-byte header and at least an empty string is expected ShowWarning("clif_process_message: Received malformed packet from player '%s' (no message data)!\n", sd->status.name); return false; } @@ -9723,8 +9721,7 @@ static bool clif_process_message(struct map_session_data* sd, int format, char** textlen = packetlen - 4; // process part of the packet - if( format == 0 ) - {// name and message are separated by ' : ' + if( format == 0 ) { // name and message are separated by ' : ' // validate name name = text; namelen = strnlen(sd->status.name, NAME_LENGTH-1); // name length (w/o zero byte) @@ -9740,16 +9737,9 @@ static bool clif_process_message(struct map_session_data* sd, int format, char** message = name + namelen + 3; messagelen = textlen - namelen - 3; // this should be the message length (w/ zero byte included) - -#if PACKETVER >= 20150900 - message[messagelen] = '\0'; - messagelen++; -#endif - } - else - {// name has fixed width - if( textlen < NAME_LENGTH + 1 ) - { + } else { + // name has fixed width + if( textlen < NAME_LENGTH + 1 ) { ShowWarning("clif_process_message: Received malformed packet from player '%s' (packet length is incorrect)!\n", sd->status.name); return false; } @@ -9758,8 +9748,8 @@ static bool clif_process_message(struct map_session_data* sd, int format, char** name = text; namelen = strnlen(name, NAME_LENGTH-1); // name length (w/o zero byte) - if( name[namelen] != '\0' ) - { // only restriction is that the name must be zero-terminated + // only restriction is that the name must be zero-terminated + if( name[namelen] != '\0' ) { ShowWarning("clif_process_message: Player '%s' sent an unterminated name!\n", sd->status.name); return false; } @@ -9768,19 +9758,20 @@ static bool clif_process_message(struct map_session_data* sd, int format, char** messagelen = textlen - NAME_LENGTH; // this should be the message length (w/ zero byte included) } - if( messagelen != strnlen(message, messagelen)+1 ) - { // the declared length must match real length + // the declared length must match real length + if( messagelen != strnlen(message, messagelen)+1 ) { ShowWarning("clif_process_message: Received malformed packet from player '%s' (length is incorrect)!\n", sd->status.name); return false; } + // verify part of the packet - if( message[messagelen-1] != '\0' ) - { // message must be zero-terminated + if( message[messagelen-1] != '\0' ) { // message must be zero-terminated ShowWarning("clif_process_message: Player '%s' sent an unterminated message string!\n", sd->status.name); return false; } - if( messagelen > CHAT_SIZE_MAX-1 ) - { // messages mustn't be too long + + // messages mustn't be too long + if( messagelen > CHAT_SIZE_MAX-1 ) { // Normally you can only enter CHATBOX_SIZE-1 letters into the chat box, but Frost Joke / Dazzler's text can be longer. // Also, the physical size of strings that use multibyte encoding can go multiple times over the chatbox capacity. // Neither the official client nor server place any restriction on the length of the data in the packet, @@ -11604,6 +11595,47 @@ void clif_parse_RemoveOption(int fd,struct map_session_data *sd) } +/// Request to select cart's visual look for new cart design (ZC_SELECTCART). +/// 097f .W .L .B +void clif_SelectCart(struct map_session_data *sd) { +#if PACKETVER >= 20150826 + int i = 0, carts = 3; + + int fd = sd->fd; + WFIFOHEAD(fd,8 + carts); + WFIFOW(fd,0) = 0x97f; + WFIFOW(fd,2) = 8 + carts; + WFIFOL(fd,4) = sd->status.account_id; + // Right now we have 10-12, tested it you can also enable selection for all cart styles here(1-12) + for( i = 0; i < carts; i++ ) { + WFIFOB(fd,8 + i) = 10 + i; + } + WFIFOSET(fd,8 + carts); +#endif +} + + +/// Request to select cart's visual look for new cart design (CZ_SELECTCART). +/// 0980 .L .B +void clif_parse_SelectCart(int fd,struct map_session_data *sd) { +#if PACKETVER >= 20150826 + int type; + + // Check identity + if( !sd || pc_checkskill(sd,MC_CARTDECORATE) < 1 || RFIFOL(fd,2) != sd->status.account_id ) + return; + + type = (int)RFIFOB(fd,6); + + // Check type + if( type < 10 || type > MAX_CARTS ) + return; + + pc_setcart(sd, type); +#endif +} + + /// Request to change cart's visual look (CZ_REQ_CHANGECART). /// 01af .W void clif_parse_ChangeCart(int fd,struct map_session_data *sd) @@ -11631,7 +11663,7 @@ void clif_parse_ChangeCart(int fd,struct map_session_data *sd) (type == 2 && sd->status.base_level > 40) || (type == 1)) #endif - pc_setcart(sd,type); + pc_setcart(sd, type); } @@ -18951,9 +18983,9 @@ void packetdb_readdb(bool reload) 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, 0, 0, 0, 0, 0, 0, 0, -1, -1, 7, - 0, 0, 0, 0, 2, 0, 0, 14, 6, 50, -1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2, 0, 0, 14, 6, 50, -1, 0, 0, 0, 0, -1, //#0x0980 - 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 7, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 0, 0, 0, -1, 8, 11, 9, 8, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 12, 10, 14, 10, 14, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 4, 6, 4, 0, 0, 0, 0, 0, 0, @@ -19209,6 +19241,8 @@ void packetdb_readdb(bool reload) { clif_parse_HotkeyRowShift, "hotkeyrowshift"}, // OneClick Item Identify { clif_parse_Oneclick_Itemidentify, "oneclick_itemidentify" }, + // NewChange Cart2 + { clif_parse_SelectCart, "selectcart" }, {NULL,NULL} }; struct { diff --git a/src/map/clif.h b/src/map/clif.h index 2c1888dd7a..c74a0cd60e 100644 --- a/src/map/clif.h +++ b/src/map/clif.h @@ -35,7 +35,7 @@ struct party_booking_ad_info; enum { // packet DB MIN_PACKET_DB = 0x064, MAX_PACKET_DB = 0xAFF, - MAX_PACKET_VER = 52, + MAX_PACKET_VER = 53, MAX_PACKET_POS = 20, }; @@ -969,5 +969,6 @@ void clif_merge_item_open(struct map_session_data *sd); void clif_broadcast_obtain_special_item(const char *char_name, unsigned short nameid, unsigned short container, enum BROADCASTING_SPECIAL_ITEM_OBTAIN type, const char *srcname); void clif_dressing_room(struct map_session_data *sd, int view); +void clif_SelectCart(struct map_session_data *sd); #endif /* _CLIF_H_ */ diff --git a/src/map/skill.c b/src/map/skill.c index 81a7dcbd08..8dd061df1e 100755 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -6437,6 +6437,13 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui clif_skill_nodamage(src,bl,skill_id,skill_lv,1); break; + case MC_CARTDECORATE: + clif_skill_nodamage(src,bl,skill_id,skill_lv,1); + if( sd ) { + clif_SelectCart(sd); + } + break; + case TK_MISSION: if (sd) { int id;