diff options
-rw-r--r-- | db/const.txt | 9 | ||||
-rw-r--r-- | db/mercenary_skill_db.txt | 77 | ||||
-rw-r--r-- | db/pre-re/item_db.conf | 236 | ||||
-rw-r--r-- | db/re/item_db.conf | 320 | ||||
-rw-r--r-- | db/sc_config.txt | 44 | ||||
-rw-r--r-- | src/map/skill.c | 6 | ||||
-rw-r--r-- | src/map/status.c | 201 | ||||
-rw-r--r-- | src/map/status.h | 13 |
8 files changed, 544 insertions, 362 deletions
diff --git a/db/const.txt b/db/const.txt index 421faa406..104435660 100644 --- a/db/const.txt +++ b/db/const.txt @@ -1333,6 +1333,15 @@ SC_TIME_ACCESSORY 623 SC_MAGICAL_FEATHER 624 SC_BLOSSOM_FLUTTERING 625 +SC_GM_BATTLE 626 +SC_GM_BATTLE2 627 +SC_2011RWC 628 +SC_STR_SCROLL 629 +SC_INT_SCROLL 630 +SC_STEAMPACK 631 +SC_MOVHASTE_POTION 632 +SC_MOVESLOW_POTION 633 + e_gasp 0 e_what 1 e_ho 2 diff --git a/db/mercenary_skill_db.txt b/db/mercenary_skill_db.txt index ea692641d..6f939ad7d 100644 --- a/db/mercenary_skill_db.txt +++ b/db/mercenary_skill_db.txt @@ -120,6 +120,20 @@ 6046,8201,10 //MS_BASH 6046,8206,1 //MS_BERSERK +// Game Master Mercenaries +// M_GAMEMASTER +2000,8226,1 //MER_REGAIN +2000,8227,1 //MER_TENDER +2000,8238,5 //MER_KYRIE +2000,8239,5 //MER_BLESSING +2000,8240,5 //MER_INCAGI +// F_GAMEMASTER +2001,8226,1 //MER_REGAIN +2001,8227,1 //MER_TENDER +2001,8238,5 //MER_KYRIE +2001,8239,5 //MER_BLESSING +2001,8240,5 //MER_INCAGI + // Monster Mercenaries // MIMIC 1191,8233,1 //MER_AUTOBERSERK @@ -144,18 +158,6 @@ 1967,8223,5 //MER_QUICKEN 1967,8201,5 //MS_BASH 1967,8221,3 //ML_DEVOTION -// M_GAMEMASTER -2000,8226,1 //MER_REGAIN -2000,8227,1 //MER_TENDER -2000,8238,5 //MER_KYRIE -2000,8239,5 //MER_BLESSING -2000,8240,5 //MER_INCAGI -// F_GAMEMASTER -2001,8226,1 //MER_REGAIN -2001,8227,1 //MER_TENDER -2001,8238,5 //MER_KYRIE -2001,8239,5 //MER_BLESSING -2001,8240,5 //MER_INCAGI // M_MIMIC 2058,8233,1 //MER_AUTOBERSERK 2058,8220,5 //ML_AUTOGUARD @@ -169,3 +171,54 @@ 2060,8202,5 //MS_MAGNUM 2060,8217,5 //ML_BRANDISH 2060,8226,1 //MER_REGAIN +// M_WANDER_MAN +2213,8223,10 //MER_QUICKEN +2213,8204,4 //MS_PARRYING +2213,8233,1 //MER_AUTOBERSERK +2213,8203,5 //MS_BOWLINGBASH +// M_WICKED_NYMPH +2214,8236,3 //MER_LEXDIVINA +2214,8239,5 //MER_BLESSING +2214,8227,1 //MER_TENDER +2214,8222,1 //MER_MAGNIFICAT +// M_KASA +2215,8225,5 //MER_CRASH +2215,8202,5 //MS_MAGNUM +2215,8226,1 //MER_REGAIN +2215,8233,1 //MER_AUTOBERSERK +// M_SALAMANDER +2216,8201,5 //MS_BASH +2216,8217,5 //ML_BRANDISH +2216,8233,1 //MER_AUTOBERSERK +2216,8228,1 //MER_BENEDICTION +// M_TEDDY_BEAR +2217,8221,3 //ML_DEVOTION +2217,8226,1 //MER_REGAIN +2217,8219,1 //ML_DEFENDER +2217,8235,1 //MER_SCAPEGOAT +// M_BAPHOMET_ +2325,8201,5 //MS_BASH +2325,8223,10 //MER_QUICKEN +// M_GALAPAGO +2326,8239,5 //MER_BLESSING +//2326,28,5 //AL_HEAL +// MER_DIABOLIC +2342,8225,5 //MER_CRASH +2342,8202,5 //MS_MAGNUM +2342,8226,1 //MER_REGAIN +2342,8233,1 //MER_AUTOBERSERK +// MER_ZHERLTHSH +2345,8225,5 //MER_CRASH +2345,8202,5 //MS_MAGNUM +2345,8226,1 //MER_REGAIN +2345,8233,1 //MER_AUTOBERSERK +// MER_EDDGA +2347,8225,5 //MER_CRASH +2347,8202,5 //MS_MAGNUM +2347,8226,1 //MER_REGAIN +2347,8233,1 //MER_AUTOBERSERK +// MER_ANTLER_SCARABA +2378,8221,3 //ML_DEVOTION +2378,8226,1 //MER_REGAIN +2378,8219,1 //ML_DEFENDER +2378,8235,1 //MER_SCAPEGOAT diff --git a/db/pre-re/item_db.conf b/db/pre-re/item_db.conf index e9d13f16b..84a4d98d2 100644 --- a/db/pre-re/item_db.conf +++ b/db/pre-re/item_db.conf @@ -1642,7 +1642,7 @@ item_db: ( Buy: 800 Weight: 100 BuyingStore: true - Script: <" sc_start SC_ATTHASTE_POTION1,1800000,0; "> + Script: <" sc_start SC_ATTHASTE_POTION1, 1800000, 0; "> }, { Id: 656 @@ -1654,7 +1654,7 @@ item_db: ( Job: 0xFFF7FEEF EquipLv: 40 BuyingStore: true - Script: <" sc_start SC_ATTHASTE_POTION2,1800000,0; "> + Script: <" sc_start SC_ATTHASTE_POTION2, 1800000, 0; "> }, { Id: 657 @@ -1666,7 +1666,7 @@ item_db: ( Job: 0x01E646A6 EquipLv: 85 BuyingStore: true - Script: <" sc_start SC_ATTHASTE_POTION3,1800000,0; "> + Script: <" sc_start SC_ATTHASTE_POTION3, 1800000, 0; "> }, { Id: 658 @@ -1725,7 +1725,7 @@ item_db: ( Buy: 1450 Weight: 30 BuyingStore: true - Script: <" sc_start SC_MOVHASTE_HORSE,180000,0; "> + Script: <" sc_start SC_MOVHASTE_HORSE, 180000, 25; "> }, { Id: 663 @@ -1935,7 +1935,7 @@ item_db: ( Buy: 0 Weight: 100 BuyingStore: true - Script: <" sc_start SC_PLUSATTACKPOWER,60000,30; "> + Script: <" sc_start SC_PLUSATTACKPOWER, 60000, 30; "> }, { Id: 683 @@ -1945,7 +1945,7 @@ item_db: ( Buy: 0 Weight: 50 BuyingStore: true - Script: <" sc_start SC_PLUSMAGICPOWER,60000,30; "> + Script: <" sc_start SC_PLUSMAGICPOWER, 60000, 30; "> }, { Id: 684 @@ -1956,8 +1956,8 @@ item_db: ( Weight: 300 BuyingStore: true Script: <" - sc_start SC_PLUSATTACKPOWER,60000,10; - sc_start SC_PLUSMAGICPOWER,60000,10; + sc_start SC_PLUSATTACKPOWER, 60000, 10; + sc_start SC_PLUSMAGICPOWER, 60000, 10; "> }, { @@ -61722,7 +61722,7 @@ item_db: ( Buy: 2 Weight: 100 BuyingStore: true - Script: <" sc_start SC_MOVHASTE_INFINITY,5000,0; "> + Script: <" sc_start SC_MOVHASTE_POTION, 5000, 100; "> }, { Id: 12017 @@ -61732,7 +61732,7 @@ item_db: ( Buy: 2 Weight: 100 BuyingStore: true - Script: <" sc_start SC_SLOWDOWN,5000,0; "> + Script: <" sc_start SC_MOVESLOW_POTION, 5000, 100; "> }, { Id: 12018 @@ -61844,7 +61844,7 @@ item_db: ( Nouse: { sitting: true } - Script: <" sc_start SC_MOVHASTE_HORSE,20000,0; "> + Script: <" sc_start SC_MOVHASTE_HORSE, 20000, 25; "> }, { Id: 12029 @@ -61870,7 +61870,7 @@ item_db: ( Nouse: { sitting: true } - Script: <" sc_start SC_PLUSATTACKPOWER,60000,20; "> + Script: <" sc_start SC_PLUSATTACKPOWER, 60000, 20; "> }, { Id: 12031 @@ -61883,7 +61883,7 @@ item_db: ( Nouse: { sitting: true } - Script: <" sc_start SC_PLUSMAGICPOWER,60000,20; "> + Script: <" sc_start SC_PLUSMAGICPOWER, 60000, 20; "> }, { Id: 12032 @@ -63096,6 +63096,7 @@ item_db: ( Type: 0 Buy: 2 Weight: 100 + Script: <" sc_start SC_FOOD_LUK, 1800000, 15; "> }, { Id: 12132 @@ -63105,7 +63106,10 @@ item_db: ( Buy: 0 Weight: 200 BuyingStore: true - Script: <" sc_start SC_XMAS,600000,0; "> + Script: <" + sc_start SC_XMAS, 600000, 0; + sc_start SC_MOVHASTE_HORSE, 600000, 25; + "> }, { Id: 12133 @@ -64482,12 +64486,12 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_STR,5400000,10; - sc_start SC_FOOD_DEX,5400000,5; - sc_start SC_PLUSATTACKPOWER,5400000,22; - sc_start SC_MATKFOOD,5400000,15; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_STR, 5400000, 10; + sc_start SC_FOOD_DEX, 5400000, 5; + sc_start SC_PLUSATTACKPOWER, 5400000, 22; + sc_start SC_PLUSMAGICPOWER, 5400000, 15; "> }, { @@ -64498,12 +64502,12 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_INT,5400000,8; - sc_start SC_FOOD_VIT,5400000,7; - sc_start SC_FOOD_LUK,5400000,7; - sc_start SC_PLUSATTACKPOWER,5400000,10; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_INT, 5400000, 8; + sc_start SC_FOOD_VIT, 5400000, 7; + sc_start SC_FOOD_LUK, 5400000, 7; + sc_start SC_PLUSATTACKPOWER, 5400000, 10; "> }, { @@ -64514,11 +64518,11 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_AGI,5400000,15; - sc_start SC_PLUSATTACKPOWER,5400000,52; - sc_start SC_MATKFOOD,5400000,10; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_AGI, 5400000, 15; + sc_start SC_PLUSATTACKPOWER, 5400000, 52; + sc_start SC_PLUSMAGICPOWER, 5400000, 10; "> }, { @@ -64529,12 +64533,12 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_STR,5400000,3; - sc_start SC_FOOD_AGI,5400000,5; - sc_start SC_FOOD_VIT,5400000,10; - sc_start SC_MATKFOOD,5400000,52; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_STR, 5400000, 3; + sc_start SC_FOOD_AGI, 5400000, 5; + sc_start SC_FOOD_VIT, 5400000, 10; + sc_start SC_PLUSMAGICPOWER, 5400000, 52; "> }, { @@ -64545,12 +64549,12 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_INT,5400000,3; - sc_start SC_FOOD_DEX,5400000,12; - sc_start SC_PLUSATTACKPOWER,5400000,20; - sc_start SC_MATKFOOD,5400000,20; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_INT, 5400000, 3; + sc_start SC_FOOD_DEX, 5400000, 12; + sc_start SC_PLUSATTACKPOWER, 5400000, 20; + sc_start SC_PLUSMAGICPOWER, 5400000, 20; "> }, { @@ -64562,15 +64566,14 @@ item_db: ( Weight: 50 Script: <" percentheal 100,100; - sc_start SC_MOVHASTE_HORSE,5400000,0; - sc_start SC_FOOD_STR,5400000,6; - sc_start SC_FOOD_DEX,5400000,6; - sc_start SC_FOOD_AGI,5400000,6; - sc_start SC_FOOD_INT,5400000,6; - sc_start SC_FOOD_VIT,5400000,6; - sc_start SC_FOOD_LUK,5400000,6; - sc_start SC_PLUSATTACKPOWER,5400000,24; - sc_start SC_MATKFOOD,5400000,24; + sc_start SC_FOOD_STR, 5400000, 6; + sc_start SC_FOOD_DEX, 5400000, 6; + sc_start SC_FOOD_AGI, 5400000, 6; + sc_start SC_FOOD_INT, 5400000, 6; + sc_start SC_FOOD_VIT, 5400000, 6; + sc_start SC_FOOD_LUK, 5400000, 6; + sc_start SC_PLUSATTACKPOWER, 5400000, 24; + sc_start SC_PLUSMAGICPOWER, 5400000, 24; "> }, { @@ -64581,8 +64584,8 @@ item_db: ( Buy: 20 Weight: 150 Script: <" - sc_start SC_ATTHASTE_POTION2,900000,0; - sc_start SC_MOVHASTE_HORSE,900000,0; + sc_start SC_ATTHASTE_POTION2, 900000, 0; + sc_start SC_MOVHASTE_INFINITY, 900000, 100; "> }, { @@ -64691,7 +64694,7 @@ item_db: ( Buy: 800 Weight: 100 BuyingStore: true - Script: <" mercenary_sc_start SC_ATTHASTE_POTION1,1800000,0; "> + Script: <" mercenary_sc_start SC_ATTHASTE_POTION1, 1800000, 0; "> }, { Id: 12242 @@ -64701,7 +64704,7 @@ item_db: ( Buy: 1500 Weight: 150 BuyingStore: true - Script: <" mercenary_sc_start SC_ATTHASTE_POTION2,1800000,0; "> + Script: <" mercenary_sc_start SC_ATTHASTE_POTION2, 1800000, 0; "> }, { Id: 12243 @@ -64711,7 +64714,7 @@ item_db: ( Buy: 3000 Weight: 200 BuyingStore: true - Script: <" mercenary_sc_start SC_ATTHASTE_POTION3,1800000,0; "> + Script: <" mercenary_sc_start SC_ATTHASTE_POTION3, 1800000, 0; "> }, { Id: 12244 @@ -64951,7 +64954,7 @@ item_db: ( nomail: true noauction: true } - Script: <" sc_start SC_MOVHASTE_HORSE,180000,0; "> + Script: <" sc_start SC_MOVHASTE_HORSE, 180000, 25; "> }, { Id: 12263 @@ -65063,8 +65066,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_PLUSATTACKPOWER,60000,10; - sc_start SC_MATKFOOD,120000,10; + sc_start SC_PLUSATTACKPOWER, 60000, 10; + sc_start SC_PLUSMAGICPOWER, 60000, 10; "> }, { @@ -65083,7 +65086,7 @@ item_db: ( nomail: true noauction: true } - Script: <" sc_start SC_PLUSATTACKPOWER,600000,15; "> + Script: <" sc_start SC_PLUSATTACKPOWER, 600000, 15; "> }, { Id: 12270 @@ -65101,7 +65104,7 @@ item_db: ( nomail: true noauction: true } - Script: <" sc_start SC_PLUSMAGICPOWER,600000,15; "> + Script: <" sc_start SC_PLUSMAGICPOWER, 600000, 15; "> }, { Id: 12271 @@ -65275,14 +65278,14 @@ item_db: ( Buy: 0 Weight: 10 Script: <" - sc_start SC_FOOD_STR,5400000,3; - sc_start SC_FOOD_DEX,5400000,3; - sc_start SC_FOOD_AGI,5400000,3; - sc_start SC_FOOD_INT,5400000,3; - sc_start SC_FOOD_VIT,5400000,3; - sc_start SC_FOOD_LUK,5400000,3; - sc_start SC_PLUSATTACKPOWER,5400000,15; - sc_start SC_PLUSMAGICPOWER,5400000,15; + sc_start SC_FOOD_STR, 5400000, 3; + sc_start SC_FOOD_DEX, 5400000, 3; + sc_start SC_FOOD_AGI, 5400000, 3; + sc_start SC_FOOD_INT, 5400000, 3; + sc_start SC_FOOD_VIT, 5400000, 3; + sc_start SC_FOOD_LUK, 5400000, 3; + sc_start SC_PLUSATTACKPOWER, 5400000, 15; + sc_start SC_PLUSMAGICPOWER, 5400000, 15; "> }, { @@ -65293,11 +65296,11 @@ item_db: ( Buy: 0 Weight: 10 Script: <" - sc_start SC_FOOD_STR,5400000,8; - sc_start SC_FOOD_DEX,5400000,4; - sc_start SC_FOOD_AGI,5400000,6; - sc_start SC_PLUSATTACKPOWER,5400000,32; - sc_start SC_FOOD_BASICAVOIDANCE,5400000,5; + sc_start SC_FOOD_STR, 5400000, 8; + sc_start SC_FOOD_DEX, 5400000, 4; + sc_start SC_FOOD_AGI, 5400000, 6; + sc_start SC_PLUSATTACKPOWER, 5400000, 32; + sc_start SC_FOOD_BASICAVOIDANCE, 5400000, 5; "> }, { @@ -65308,10 +65311,10 @@ item_db: ( Buy: 0 Weight: 10 Script: <" - sc_start SC_FOOD_INT,5400000,8; - sc_start SC_FOOD_VIT,5400000,4; - sc_start SC_FOOD_DEX,5400000,6; - sc_start SC_PLUSMAGICPOWER,5400000,40; + sc_start SC_FOOD_INT, 5400000, 8; + sc_start SC_FOOD_VIT, 5400000, 4; + sc_start SC_FOOD_DEX, 5400000, 6; + sc_start SC_PLUSMAGICPOWER, 5400000, 40; "> }, { @@ -65322,11 +65325,11 @@ item_db: ( Buy: 0 Weight: 10 Script: <" - sc_start SC_FOOD_DEX,5400000,8; - sc_start SC_FOOD_LUK,5400000,4; - sc_start SC_FOOD_AGI,5400000,6; - sc_start SC_PLUSATTACKPOWER,5400000,24; - sc_start SC_PLUSMAGICPOWER,5400000,24; + sc_start SC_FOOD_DEX, 5400000, 8; + sc_start SC_FOOD_LUK, 5400000, 4; + sc_start SC_FOOD_AGI, 5400000, 6; + sc_start SC_PLUSATTACKPOWER, 5400000, 24; + sc_start SC_PLUSMAGICPOWER, 5400000, 24; "> }, { @@ -65862,8 +65865,8 @@ item_db: ( Buy: 0 Weight: 300 Script: <" - sc_start SC_PLUSATTACKPOWER,600000,5; - sc_start SC_PLUSMAGICPOWER,600000,5; + sc_start SC_PLUSATTACKPOWER, 600000, 5; + sc_start SC_PLUSMAGICPOWER, 600000, 5; "> }, { @@ -67275,9 +67278,9 @@ item_db: ( Weight: 10 BuyingStore: true Script: <" - sc_start SC_ATTHASTE_POTION1,1800000,0; - sc_start SC_INC_AGI,140000,5; - skilleffect AL_INCAGI,0; + sc_start SC_ATTHASTE_POTION1, 1800000, 0; + sc_start SC_INC_AGI, 140000, 5; + skilleffect AL_INCAGI, 0; "> }, { @@ -69079,6 +69082,7 @@ item_db: ( Type: 2 Buy: 0 Weight: 200 + Script: <" sc_start SC_MOVHASTE_POTION, 300000, 100; "> }, { Id: 12711 @@ -69550,6 +69554,10 @@ item_db: ( noselltonpc: true nogstorage: true } + Script: <" + specialeffect2 EF_POTION_BERSERK; + sc_start SC_STR_SCROLL, 60000, 20; + "> }, { Id: 12741 @@ -69562,6 +69570,10 @@ item_db: ( noselltonpc: true nogstorage: true } + Script: <" + specialeffect2 EF_SPELLBREAKER; + sc_start SC_INT_SCROLL, 60000, 20; + "> }, { Id: 12742 @@ -75359,7 +75371,7 @@ item_db: ( Type: 18 Buy: 20 Weight: 10 - Script: <" getitem 14509,20; "> + Script: <" getitem Light_Center_Pot, 20; "> }, { Id: 13536 @@ -75368,7 +75380,7 @@ item_db: ( Type: 18 Buy: 20 Weight: 10 - Script: <" getitem 14510,20; "> + Script: <" getitem Light_Awakening_Pot, 20; "> }, { Id: 13537 @@ -75377,7 +75389,7 @@ item_db: ( Type: 18 Buy: 20 Weight: 10 - Script: <" getitem 14511,20; "> + Script: <" getitem Light_Berserk_Pot, 20; "> }, { Id: 13538 @@ -78665,7 +78677,7 @@ item_db: ( Type: 18 Buy: 20 Weight: 10 - Script: <" getitem 14586,5; "> + Script: <" getitem Spark_Candy, 5; "> }, { Id: 13858 @@ -78674,7 +78686,7 @@ item_db: ( Type: 18 Buy: 20 Weight: 10 - Script: <" getitem 14586,10; "> + Script: <" getitem Spark_Candy, 10; "> }, { Id: 13859 @@ -81166,11 +81178,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 12016,5; "> + Script: <" getitem Speed_Up_Potion, 5; "> }, { Id: 13995 @@ -81184,11 +81196,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 12016,10; "> + Script: <" getitem Speed_Up_Potion, 10; "> }, { Id: 13996 @@ -82160,7 +82172,7 @@ item_db: ( nomail: true noauction: true } - Script: <" getitem 14586,5; "> + Script: <" getitem Spark_Candy, 5; "> }, { Id: 14050 @@ -82174,11 +82186,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 14586,10; "> + Script: <" getitem Spark_Candy, 10; "> }, { Id: 14051 @@ -86818,7 +86830,7 @@ item_db: ( Type: 2 Buy: 800 Weight: 20 - Script: <" sc_start SC_ATTHASTE_POTION1,1800000,4; "> + Script: <" sc_start SC_ATTHASTE_POTION1, 1800000, 0; "> }, { Id: 14510 @@ -86829,7 +86841,7 @@ item_db: ( Weight: 20 Job: 0xFFF7FEEF EquipLv: 40 - Script: <" sc_start SC_ATTHASTE_POTION2,1800000,6; "> + Script: <" sc_start SC_ATTHASTE_POTION2, 1800000, 0; "> }, { Id: 14511 @@ -86840,7 +86852,7 @@ item_db: ( Weight: 20 Job: 0x01E646A6 EquipLv: 85 - Script: <" sc_start SC_ATTHASTE_POTION3,1800000,9; "> + Script: <" sc_start SC_ATTHASTE_POTION3, 1800000, 0; "> }, { Id: 14512 @@ -86978,7 +86990,7 @@ item_db: ( Type: 2 Buy: 0 Weight: 10 - Script: <" sc_start SC_PLUSATTACKPOWER,1800000,10; "> + Script: <" sc_start SC_PLUSATTACKPOWER, 1800000, 10; "> }, { Id: 14526 @@ -86987,7 +86999,7 @@ item_db: ( Type: 2 Buy: 0 Weight: 10 - Script: <" sc_start SC_PLUSMAGICPOWER,1800000,10; "> + Script: <" sc_start SC_PLUSMAGICPOWER, 1800000, 10; "> }, { Id: 14527 @@ -87815,6 +87827,10 @@ item_db: ( noselltonpc: true nogstorage: true } + Script: <" + specialeffect2 EF_HASTEUP; + sc_start2 SC_STEAMPACK, 60000, 20, 25; + "> }, { Id: 14587 @@ -88079,10 +88095,10 @@ item_db: ( nogstorage: true } Script: <" - sc_start SC_FOOD_BASICAVOIDANCE,300000,30; - sc_start SC_FOOD_BASICHIT,300000,30; - sc_start SC_PLUSATTACKPOWER,300000,20; - sc_start SC_PLUSMAGICPOWER,300000,20; + sc_start SC_FOOD_BASICAVOIDANCE, 300000, 30; + sc_start SC_FOOD_BASICHIT, 300000, 30; + sc_start SC_PLUSATTACKPOWER, 300000, 20; + sc_start SC_PLUSMAGICPOWER, 300000, 20; "> }, { diff --git a/db/re/item_db.conf b/db/re/item_db.conf index 83c7d75a9..349b79524 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -1749,7 +1749,7 @@ item_db: ( Buy: 1450 Weight: 30 BuyingStore: true - Script: <" sc_start SC_MOVHASTE_HORSE,180000,0; "> + Script: <" sc_start SC_MOVHASTE_HORSE, 180000, 25; "> }, { Id: 663 @@ -1953,7 +1953,7 @@ item_db: ( Buy: 0 Weight: 100 BuyingStore: true - Script: <" sc_start SC_PLUSATTACKPOWER,60000,30; "> + Script: <" sc_start SC_PLUSATTACKPOWER, 60000, 30; "> }, { Id: 683 @@ -1963,7 +1963,7 @@ item_db: ( Buy: 0 Weight: 50 BuyingStore: true - Script: <" sc_start SC_PLUSMAGICPOWER,60000,30; "> + Script: <" sc_start SC_PLUSMAGICPOWER, 60000, 30; "> }, { Id: 684 @@ -1974,8 +1974,8 @@ item_db: ( Weight: 300 BuyingStore: true Script: <" - sc_start SC_PLUSATTACKPOWER,60000,10; - sc_start SC_PLUSMAGICPOWER,60000,10; + sc_start SC_PLUSATTACKPOWER, 60000, 10; + sc_start SC_PLUSMAGICPOWER, 60000, 10; "> }, { @@ -41132,7 +41132,7 @@ item_db: ( Weight: 10 Loc: 64 Script: <" - autobonus "{ sc_start SC_MOVHASTE_INFINITY,3000,0; bonus bAgi,44; heal 0,-40; }",3,3000,0; + autobonus "{ sc_start SC_MOVHASTE_HORSE, 3000, 25; bonus bAgi, 44; heal 0, -40; }", 3, 3000, 0, "{ specialeffect2 EF_WIND; }"; "> }, { @@ -76802,7 +76802,7 @@ item_db: ( Buy: 2 Weight: 100 BuyingStore: true - Script: <" sc_start SC_MOVHASTE_INFINITY,5000,0; "> + Script: <" sc_start SC_MOVHASTE_POTION, 5000, 100; "> }, { Id: 12017 @@ -76812,7 +76812,7 @@ item_db: ( Buy: 2 Weight: 100 BuyingStore: true - Script: <" sc_start SC_SLOWDOWN,5000,0; "> + Script: <" sc_start SC_MOVESLOW_POTION, 5000, 100; "> }, { Id: 12018 @@ -76924,7 +76924,7 @@ item_db: ( Nouse: { sitting: true } - Script: <" sc_start SC_MOVHASTE_HORSE,20000,0; "> + Script: <" sc_start SC_MOVHASTE_HORSE, 20000, 25; "> }, { Id: 12029 @@ -76950,7 +76950,7 @@ item_db: ( Nouse: { sitting: true } - Script: <" sc_start SC_PLUSATTACKPOWER,60000,20; "> + Script: <" sc_start SC_PLUSATTACKPOWER, 60000, 20; "> }, { Id: 12031 @@ -76963,7 +76963,7 @@ item_db: ( Nouse: { sitting: true } - Script: <" sc_start SC_PLUSMAGICPOWER,60000,20; "> + Script: <" sc_start SC_PLUSMAGICPOWER, 60000, 20; "> }, { Id: 12032 @@ -78090,7 +78090,7 @@ item_db: ( Buy: 2 Weight: 70 BuyingStore: true - Script: <" sc_start SC_FOOD_BASICAVOIDANCE,1200000,30; "> + Script: <" sc_start SC_FOOD_BASICAVOIDANCE, 1200000, 30; "> }, { Id: 12124 @@ -78101,8 +78101,8 @@ item_db: ( Weight: 70 BuyingStore: true Script: <" - sc_start SC_BATKFOOD,1200000,10; - sc_start SC_MATKFOOD,120000,10; + sc_start SC_PLUSATTACKPOWER, 1200000, 10; + sc_start SC_PLUSMAGICPOWER, 120000, 10; "> }, { @@ -78176,6 +78176,7 @@ item_db: ( Type: 0 Buy: 2 Weight: 100 + Script: <" sc_start SC_FOOD_LUK, 1800000, 15; "> }, { Id: 12132 @@ -78185,7 +78186,10 @@ item_db: ( Buy: 0 Weight: 200 BuyingStore: true - Script: <" sc_start SC_XMAS,600000,0; "> + Script: <" + sc_start SC_XMAS, 600000, 0; + sc_start SC_MOVHASTE_HORSE, 600000, 25; + "> }, { Id: 12133 @@ -78994,6 +78998,7 @@ item_db: ( Type: 2 Buy: 2 Weight: 300 + Script: <" sc_start SC_MOVHASTE_INFINITY, 180000, 25; "> }, { Id: 12191 @@ -79003,8 +79008,8 @@ item_db: ( Buy: 2 Weight: 500 Script: <" - sc_start SC_ATTHASTE_POTION1,600000,4; - sc_start SC_MOVHASTE_HORSE,600000,0; + sc_start SC_ATTHASTE_POTION1, 600000, 4; + sc_start SC_MOVHASTE_HORSE, 600000, 25; "> }, { @@ -79562,12 +79567,12 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_STR,5400000,10; - sc_start SC_FOOD_DEX,5400000,5; - sc_start SC_PLUSATTACKPOWER,5400000,22; - sc_start SC_MATKFOOD,5400000,15; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_STR, 5400000, 10; + sc_start SC_FOOD_DEX, 5400000, 5; + sc_start SC_PLUSATTACKPOWER, 5400000, 22; + sc_start SC_PLUSMAGICPOWER, 5400000, 15; "> }, { @@ -79578,12 +79583,12 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_INT,5400000,8; - sc_start SC_FOOD_VIT,5400000,7; - sc_start SC_FOOD_LUK,5400000,7; - sc_start SC_PLUSATTACKPOWER,5400000,10; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_INT, 5400000, 8; + sc_start SC_FOOD_VIT, 5400000, 7; + sc_start SC_FOOD_LUK, 5400000, 7; + sc_start SC_PLUSATTACKPOWER, 3600000, 20; "> }, { @@ -79594,11 +79599,11 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_AGI,5400000,15; - sc_start SC_PLUSATTACKPOWER,5400000,52; - sc_start SC_MATKFOOD,5400000,10; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_AGI, 5400000, 15; + sc_start SC_PLUSATTACKPOWER, 5400000, 52; + sc_start SC_PLUSMAGICPOWER, 5400000, 10; "> }, { @@ -79609,12 +79614,12 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_STR,5400000,3; - sc_start SC_FOOD_AGI,5400000,5; - sc_start SC_FOOD_VIT,5400000,10; - sc_start SC_MATKFOOD,5400000,52; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_STR, 5400000, 3; + sc_start SC_FOOD_AGI, 5400000, 5; + sc_start SC_FOOD_VIT, 5400000, 10; + sc_start SC_PLUSMAGICPOWER, 5400000, 52; "> }, { @@ -79625,12 +79630,12 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - sc_start SC_MOVHASTE_HORSE,5400000,0; - percentheal 100,100; - sc_start SC_FOOD_INT,5400000,3; - sc_start SC_FOOD_DEX,5400000,12; - sc_start SC_PLUSATTACKPOWER,5400000,20; - sc_start SC_MATKFOOD,5400000,20; + sc_start SC_MOVHASTE_INFINITY, 5400000, 100; + percentheal 100, 100; + sc_start SC_FOOD_INT, 5400000, 3; + sc_start SC_FOOD_DEX, 5400000, 12; + sc_start SC_PLUSATTACKPOWER, 5400000, 20; + sc_start SC_PLUSMAGICPOWER, 5400000, 20; "> }, { @@ -79641,16 +79646,15 @@ item_db: ( Buy: 20 Weight: 50 Script: <" - percentheal 100,100; - sc_start SC_MOVHASTE_HORSE,5400000,0; - sc_start SC_FOOD_STR,5400000,6; - sc_start SC_FOOD_DEX,5400000,6; - sc_start SC_FOOD_AGI,5400000,6; - sc_start SC_FOOD_INT,5400000,6; - sc_start SC_FOOD_VIT,5400000,6; - sc_start SC_FOOD_LUK,5400000,6; - sc_start SC_PLUSATTACKPOWER,5400000,24; - sc_start SC_MATKFOOD,5400000,24; + percentheal 100, 100; + sc_start SC_FOOD_STR, 5400000, 6; + sc_start SC_FOOD_DEX, 5400000, 6; + sc_start SC_FOOD_AGI, 5400000, 6; + sc_start SC_FOOD_INT, 5400000, 6; + sc_start SC_FOOD_VIT, 5400000, 6; + sc_start SC_FOOD_LUK, 5400000, 6; + sc_start SC_PLUSATTACKPOWER, 5400000, 24; + sc_start SC_PLUSMAGICPOWER, 5400000, 24; "> }, { @@ -79661,8 +79665,8 @@ item_db: ( Buy: 20 Weight: 150 Script: <" - sc_start SC_ATTHASTE_POTION2,900000,0; - sc_start SC_MOVHASTE_HORSE,900000,0; + sc_start SC_ATTHASTE_POTION2, 900000, 6; + sc_start SC_MOVHASTE_INFINITY, 900000, 100; "> }, { @@ -80045,7 +80049,7 @@ item_db: ( nomail: true noauction: true } - Script: <" sc_start SC_MOVHASTE_HORSE,180000,0; "> + Script: <" sc_start SC_MOVHASTE_HORSE, 180000, 25; "> }, { Id: 12263 @@ -80158,8 +80162,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_PLUSATTACKPOWER,60000,10; - sc_start SC_MATKFOOD,120000,10; + sc_start SC_PLUSATTACKPOWER, 60000, 10; + sc_start SC_PLUSMAGICPOWER, 60000, 10; "> }, { @@ -80177,7 +80181,7 @@ item_db: ( nomail: true noauction: true } - Script: <" sc_start SC_PLUSATTACKPOWER,600000,15; "> + Script: <" sc_start SC_PLUSATTACKPOWER, 600000, 15; "> }, { Id: 12270 @@ -80194,7 +80198,7 @@ item_db: ( nomail: true noauction: true } - Script: <" sc_start SC_PLUSMAGICPOWER,600000,15; "> + Script: <" sc_start SC_PLUSMAGICPOWER, 600000, 15; "> }, { Id: 12271 @@ -80377,14 +80381,14 @@ item_db: ( Buy: 0 Weight: 10 Script: <" - sc_start SC_FOOD_STR,5400000,3; - sc_start SC_FOOD_DEX,5400000,3; - sc_start SC_FOOD_AGI,5400000,3; - sc_start SC_FOOD_INT,5400000,3; - sc_start SC_FOOD_VIT,5400000,3; - sc_start SC_FOOD_LUK,5400000,3; - sc_start SC_PLUSATTACKPOWER,5400000,15; - sc_start SC_PLUSMAGICPOWER,5400000,15; + sc_start SC_FOOD_STR, 5400000, 3; + sc_start SC_FOOD_DEX, 5400000, 3; + sc_start SC_FOOD_AGI, 5400000, 3; + sc_start SC_FOOD_INT, 5400000, 3; + sc_start SC_FOOD_VIT, 5400000, 3; + sc_start SC_FOOD_LUK, 5400000, 3; + sc_start SC_PLUSATTACKPOWER, 5400000, 15; + sc_start SC_PLUSMAGICPOWER, 5400000, 15; "> }, { @@ -80395,11 +80399,11 @@ item_db: ( Buy: 0 Weight: 10 Script: <" - sc_start SC_FOOD_STR,5400000,8; - sc_start SC_FOOD_DEX,5400000,4; - sc_start SC_FOOD_AGI,5400000,6; - sc_start SC_PLUSATTACKPOWER,5400000,32; - sc_start SC_FOOD_BASICAVOIDANCE,5400000,5; + sc_start SC_FOOD_STR, 5400000, 8; + sc_start SC_FOOD_DEX, 5400000, 4; + sc_start SC_FOOD_AGI, 5400000, 6; + sc_start SC_PLUSATTACKPOWER, 5400000, 32; + sc_start SC_FOOD_BASICAVOIDANCE, 5400000, 5; "> }, { @@ -80410,10 +80414,10 @@ item_db: ( Buy: 0 Weight: 10 Script: <" - sc_start SC_FOOD_INT,5400000,8; - sc_start SC_FOOD_VIT,5400000,4; - sc_start SC_FOOD_DEX,5400000,6; - sc_start SC_PLUSMAGICPOWER,5400000,40; + sc_start SC_FOOD_INT, 5400000, 8; + sc_start SC_FOOD_VIT, 5400000, 4; + sc_start SC_FOOD_DEX, 5400000, 6; + sc_start SC_PLUSMAGICPOWER, 5400000, 40; "> }, { @@ -80424,11 +80428,11 @@ item_db: ( Buy: 0 Weight: 10 Script: <" - sc_start SC_FOOD_DEX,5400000,8; - sc_start SC_FOOD_LUK,5400000,4; - sc_start SC_FOOD_AGI,5400000,6; - sc_start SC_PLUSATTACKPOWER,5400000,24; - sc_start SC_PLUSMAGICPOWER,5400000,24; + sc_start SC_FOOD_DEX, 5400000, 8; + sc_start SC_FOOD_LUK, 5400000, 4; + sc_start SC_FOOD_AGI, 5400000, 6; + sc_start SC_PLUSATTACKPOWER, 5400000, 24; + sc_start SC_PLUSMAGICPOWER, 5400000, 24; "> }, { @@ -80982,8 +80986,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_PLUSATTACKPOWER,600000,5; - sc_start SC_PLUSMAGICPOWER,600000,5; + sc_start SC_PLUSATTACKPOWER, 600000, 5; + sc_start SC_PLUSMAGICPOWER, 600000, 5; "> }, { @@ -85007,9 +85011,9 @@ item_db: ( Buy: 20 Weight: 30 Script:<" - sc_start SC_FOOD_LUK,6000,10; - sc_start SC_PLUSATTACKPOWER,6000,20; - sc_start SC_PLUSMAGICPOWER,6000,20; + sc_start SC_FOOD_LUK, 6000, 10; + sc_start SC_PLUSATTACKPOWER, 6000, 20; + sc_start SC_PLUSMAGICPOWER, 6000, 20; "> }, { @@ -85617,22 +85621,15 @@ item_db: ( Name: "RWC Celebration Firecracker" Type: 2 Weight: 20 - Script: <" - sc_start SC_FOOD_STR,10000,3; - sc_start SC_FOOD_AGI,10000,3; - sc_start SC_FOOD_VIT,10000,3; - sc_start SC_FOOD_DEX,10000,3; - sc_start SC_FOOD_INT,10000,3; - sc_start SC_FOOD_LUK,10000,3; - "> + Script: <" sc_start2 SC_2011RWC, 10000, 3, 5; "> }, { Id: 12697 AegisName: "RWC_Cele_Fire2" Name: "RWC Celebration Firecracker 2" - Type: 11 - Buy: 0 + Type: 2 Weight: 20 + Script: <" sc_start2 SC_2011RWC, 10000, 3, 5; "> }, { Id: 12698 @@ -85785,7 +85782,7 @@ item_db: ( Type: 2 Buy: 0 Weight: 200 - Script: <" sc_start SC_MOVHASTE_INFINITY,300000,0; "> + Script: <" sc_start SC_MOVHASTE_POTION, 300000, 100; "> }, { Id: 12711 @@ -86242,13 +86239,17 @@ item_db: ( Trade: { nodrop: true notrade: true + nostorage: true noselltonpc: true nocart: true - nostorage: true - nogstorage: true nomail: true noauction: true + nogstorage: true } + Script: <" + specialeffect2 EF_POTION_BERSERK; + sc_start SC_STR_SCROLL, 60000, 20; + "> }, { Id: 12741 @@ -86259,13 +86260,17 @@ item_db: ( Trade: { nodrop: true notrade: true + nostorage: true noselltonpc: true nocart: true - nostorage: true - nogstorage: true nomail: true noauction: true + nogstorage: true } + Script: <" + specialeffect2 EF_SPELLBREAKER; + sc_start SC_INT_SCROLL, 60000, 20; + "> }, { Id: 12742 @@ -86723,14 +86728,22 @@ item_db: ( Type: 2 Buy: 20 Weight: 150 + Script: <" + specialeffect2 EF_POTION_BERSERK; + sc_start2 SC_GM_BATTLE, 600000, 5, 3; + "> }, { Id: 12792 AegisName: "P_Combat_Pill" Name: "Advanced Magic Battle Serum" - Type: 11 + Type: 2 Buy: 20 Weight: 150 + Script: <" + specialeffect2 EF_POTION_BERSERK; + sc_start2 SC_GM_BATTLE2, 600000, 10, 5; + "> }, { Id: 12793 @@ -86738,6 +86751,7 @@ item_db: ( Name: "Magic Battle Serum Box" Type: 11 Buy: 20 + Script: <" getitem Combat_Pill, 10; "> }, { Id: 12794 @@ -86745,6 +86759,7 @@ item_db: ( Name: "Advanced Magic Battle Serum Box" Type: 11 Buy: 20 + Script: <" getitem P_Combat_Pill, 10; "> }, { Id: 12795 @@ -95457,11 +95472,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 14509,20; "> + Script: <" getitem Light_Center_Pot, 20; "> }, { Id: 13536 @@ -95475,11 +95490,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 14510,20; "> + Script: <" getitem Light_Center_Pot, 20; "> }, { Id: 13537 @@ -95493,11 +95508,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 14511,20; "> + Script: <" getitem Light_Center_Pot, 20; "> }, { Id: 13538 @@ -101361,11 +101376,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 14586,5; "> + Script: <" getitem Spark_Candy, 5; "> }, { Id: 13858 @@ -101379,11 +101394,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 14586,10; "> + Script: <" getitem Spark_Candy, 10; "> }, { Id: 13859 @@ -103970,11 +103985,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 12016,5; "> + Script: <" getitem Speed_Up_Potion, 5; "> }, { Id: 13995 @@ -103988,11 +104003,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 12016,10; "> + Script: <" getitem Speed_Up_Potion, 10; "> }, { Id: 13996 @@ -104981,11 +104996,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 14586,5; "> + Script: <" getitem Spark_Candy, 5; "> }, { Id: 14050 @@ -104999,11 +105014,11 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" getitem 14586,10; "> + Script: <" getitem Spark_Candy, 10; "> }, { Id: 14051 @@ -110770,7 +110785,7 @@ item_db: ( nomail: true noauction: true } - Script: <" sc_start SC_PLUSATTACKPOWER,1800000,10; "> + Script: <" sc_start SC_PLUSATTACKPOWER, 1800000, 10; "> }, { Id: 14526 @@ -110788,7 +110803,7 @@ item_db: ( nomail: true noauction: true } - Script: <" sc_start SC_PLUSMAGICPOWER,1800000,10; "> + Script: <" sc_start SC_PLUSMAGICPOWER, 1800000, 10; "> }, { Id: 14527 @@ -111968,11 +111983,14 @@ item_db: ( notrade: true noselltonpc: true nocart: true - nogstorage: true nomail: true noauction: true + nogstorage: true } - Script: <" bonus2 bHPLossRate,100,10000; "> + Script: <" + specialeffect2 EF_HASTEUP; + sc_start2 SC_STEAMPACK, 60000, 20, 25; + "> }, { Id: 14587 @@ -112264,10 +112282,10 @@ item_db: ( noauction: true } Script: <" - sc_start SC_FOOD_BASICAVOIDANCE,300000,30; - sc_start SC_FOOD_BASICHIT,300000,30; - sc_start SC_PLUSATTACKPOWER,300000,20; - sc_start SC_PLUSMAGICPOWER,300000,20; + sc_start SC_FOOD_BASICAVOIDANCE, 300000, 30; + sc_start SC_FOOD_BASICHIT, 300000, 30; + sc_start SC_PLUSATTACKPOWER, 300000, 20; + sc_start SC_PLUSMAGICPOWER, 300000, 20; "> }, { @@ -112428,6 +112446,10 @@ item_db: ( nomail: true noauction: true } + Script: <" + specialeffect2 EF_GUARD; + sc_start SC_PROTECT_DEF, 120000, 3; + "> }, { Id: 14612 @@ -112445,6 +112467,10 @@ item_db: ( nomail: true noauction: true } + Script: <" + specialeffect2 EF_SPELLBREAKER; + sc_start SC_PROTECT_MDEF, 120000, 3; + "> }, { Id: 14613 @@ -112481,8 +112507,8 @@ item_db: ( } Script: <" specialeffect2 EF_GUARD; - sc_start SC_PROTECT_DEF, 1800000, 1; - sc_start SC_PROTECT_MDEF, 1800000, 1; + sc_start SC_PROTECT_DEF, 1800000, 3; + sc_start SC_PROTECT_MDEF, 1800000, 3; "> }, { @@ -112502,8 +112528,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_FOOD_STR,180000,15; - sc_start SC_PLUSATTACKPOWER,60000,rand(11,111); + sc_start SC_FOOD_STR, 180000, 15; + sc_start SC_PLUSATTACKPOWER, 60000, rand(11,111); "> }, { @@ -112523,8 +112549,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_FOOD_VIT,180000,15; - percentheal rand(11,33),0; + sc_start SC_FOOD_VIT, 180000, 15; + percentheal rand(11,33), 0; "> }, { @@ -112544,8 +112570,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_FOOD_AGI,180000,15; - sc_start SC_FOOD_BASICAVOIDANCE,60000,rand(11,33); + sc_start SC_FOOD_AGI, 180000, 15; + sc_start SC_FOOD_BASICAVOIDANCE, 60000, rand(11,33); "> }, { @@ -112565,8 +112591,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_FOOD_INT,180000,15; - sc_start SC_PLUSMAGICPOWER,60000,rand(11,111); + sc_start SC_FOOD_INT, 180000, 15; + sc_start SC_PLUSMAGICPOWER, 60000, rand(11,111); "> }, { @@ -112586,8 +112612,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_FOOD_DEX,180000,15; - sc_start SC_FOOD_BASICHIT,60000,rand(11,33); + sc_start SC_FOOD_DEX, 180000, 15; + sc_start SC_FOOD_BASICHIT, 60000, rand(11,33); "> }, { @@ -112607,8 +112633,8 @@ item_db: ( noauction: true } Script: <" - sc_start SC_FOOD_LUK,180000,15; - sc_start SC_CRITICALSUCCESSVALUE,60000,rand(11,13); + sc_start SC_FOOD_LUK, 180000, 15; + sc_start SC_CRITICALSUCCESSVALUE, 60000, rand(11,13); "> }, { @@ -112619,7 +112645,7 @@ item_db: ( Buy: 20 Weight: 10 Script: <" - sc_start2 SC_CUP_OF_BOZA,120000,10,5; + sc_start2 SC_CUP_OF_BOZA, 120000, 10, 5; "> }, diff --git a/db/sc_config.txt b/db/sc_config.txt index d8272d39f..814d30667 100644 --- a/db/sc_config.txt +++ b/db/sc_config.txt @@ -46,7 +46,7 @@ SC_ENERGYCOAT, 16 SC_ATTHASTE_POTION1, 24 SC_ATTHASTE_POTION2, 24 SC_ATTHASTE_POTION3, 16 -//SC_MOVHASTE_POTION, 26 +SC_MOVHASTE_POTION, 26 //SC_POSTDELAY, 29 SC_BARRIER, 16 SC_NOEQUIPWEAPON, 30 @@ -122,7 +122,7 @@ SC_ONEHANDQUICKEN, 26 SC_PRESERVE, 18 SC_CHASEWALK, 4 SC_CHASEWALK2, 26 -//SC_MOVESLOW_POTION, 26 +SC_MOVESLOW_POTION, 26 SC_DOUBLECASTING, 26 SC_GRAVITATION, 26 SC_OVERTHRUSTMAX, 18 @@ -213,7 +213,7 @@ SC_TARGET_BLOOD, 30 SC_ARMOR_PROPERTY, 29 //SC_REUSE_LIMIT_A, 29 SC_HELLPOWER, 29 -//SC_STEAMPACK, 92 +SC_STEAMPACK, 108 //SC_REUSE_LIMIT_B, 29 //SC_REUSE_LIMIT_C, 29 //SC_REUSE_LIMIT_D, 29 @@ -272,10 +272,10 @@ SC_SUMMON2, 24 SC_SUMMON3, 24 SC_SUMMON4, 24 SC_SUMMON5, 24 -//SC_MVPCARD_TAOGUNKA, 28 -//SC_MVPCARD_MISTRESS, 28 -//SC_MVPCARD_ORCHERO, 28 -//SC_MVPCARD_ORCLORD, 28 +SC_MVPCARD_TAOGUNKA, 60 +SC_MVPCARD_MISTRESS, 60 +SC_MVPCARD_ORCHERO, 60 +SC_MVPCARD_ORCLORD, 60 SC_OVERHEAT_LIMITPOINT, 28 SC_OVERHEAT, 28 SC_SHAPESHIFT, 28 @@ -291,8 +291,8 @@ SC_SPL_DEF, 28 SC__REPRODUCE, 28 SC_MANU_MATK, 28 SC_SPL_MATK, 28 -//SC_STR_SCROLL, 29 -//SC_INT_SCROLL, 29 +SC_STR_SCROLL, 61 +SC_INT_SCROLL, 61 SC_FORCEOFVANGUARD, 28 //SC_BUCHEDENOEL, 28 SC__AUTOSHADOWSPELL, 16 @@ -370,7 +370,7 @@ SC_FIRE_INSIGNIA, 2 SC_WATER_INSIGNIA, 2 SC_WIND_INSIGNIA, 2 SC_EARTH_INSIGNIA, 2 -//SC_MORA_BUFF, 2 +SC_MORA_BUFF, 2 //SC_REUSE_LIMIT_G, 29 //SC_REUSE_LIMIT_H, 29 SC_NEEDLE_OF_PARALYZE, 1 @@ -410,25 +410,17 @@ SC_ARMORSCROLL, 69 SC_FREYJASCROLL, 69 SC_SOULSCROLL, 69 -// Eden Crystal Synthesis [Needs more info] -//SC_QUEST_BUFF1, ?? -//SC_QUEST_BUFF2, ?? -//SC_QUEST_BUFF3, ?? +// Eden Crystal Synthesis +SC_QUEST_BUFF1, 13 +SC_QUEST_BUFF2, 13 +SC_QUEST_BUFF3, 13 -// Geffen Magic Tournament [Needs more info] -SC_GEFFEN_MAGIC1, 2 -SC_GEFFEN_MAGIC2, 2 -SC_GEFFEN_MAGIC3, 2 -//SC_FENRIR_CARD, ?? +// Geffen Magic Tournament +SC_GEFFEN_MAGIC1, 14 +SC_GEFFEN_MAGIC2, 14 +SC_GEFFEN_MAGIC3, 14 SC_OVERLAPEXPUP, 12 -SC_MORA_BUFF, 2 - -// MVP Scrolls -SC_MVPCARD_TAOGUNKA, 60 -SC_MVPCARD_MISTRESS, 60 -SC_MVPCARD_ORCHERO, 60 -SC_MVPCARD_ORCLORD, 60 // Guild Auras should not be saved SC_LEADERSHIP,78 diff --git a/src/map/skill.c b/src/map/skill.c index 8d97409fb..9b06591f4 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -7383,9 +7383,9 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin break; case NPC_AGIUP: - sc_start(src,bl,SC_MOVHASTE_INFINITY,100,skill_lv,skill->get_time(skill_id, skill_lv)); - clif->skill_nodamage(src,bl,skill_id,skill_lv, - sc_start(src,bl,type,100,100,skill->get_time(skill_id, skill_lv))); + sc_start(src, bl, SC_MOVHASTE_INFINITY, 100, 100, skill->get_time(skill_id, skill_lv)); // Fix 100% movement speed in all levels. [Frost] + clif->skill_nodamage(src, bl, skill_id, skill_lv, + sc_start(src, bl, type, 100, 100, skill->get_time(skill_id, skill_lv))); break; case NPC_INVISIBLE: diff --git a/src/map/status.c b/src/map/status.c index 9f7465da0..921d2fc45 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -796,9 +796,11 @@ void initChangeTables(void) { status->dbs->IconChangeTable[SC_ATTHASTE_POTION1] = SI_ATTHASTE_POTION1; status->dbs->IconChangeTable[SC_ATTHASTE_POTION2] = SI_ATTHASTE_POTION2; status->dbs->IconChangeTable[SC_ATTHASTE_POTION3] = SI_ATTHASTE_POTION3; + status->dbs->IconChangeTable[SC_MOVHASTE_POTION] = SI_MOVHASTE_POTION; status->dbs->IconChangeTable[SC_ATTHASTE_INFINITY] = SI_ATTHASTE_INFINITY; status->dbs->IconChangeTable[SC_MOVHASTE_HORSE] = SI_MOVHASTE_HORSE; status->dbs->IconChangeTable[SC_MOVHASTE_INFINITY] = SI_MOVHASTE_INFINITY; + status->dbs->IconChangeTable[SC_MOVESLOW_POTION] = SI_MOVESLOW_POTION; status->dbs->IconChangeTable[SC_CHASEWALK2] = SI_INCSTR; status->dbs->IconChangeTable[SC_MIRACLE] = SI_SOULLINK; status->dbs->IconChangeTable[SC_CLAIRVOYANCE] = SI_CLAIRVOYANCE; @@ -848,6 +850,12 @@ void initChangeTables(void) { status->dbs->IconChangeTable[SC_ATKER_MOVESPEED] = SI_ATKER_MOVESPEED; status->dbs->IconChangeTable[SC_CUP_OF_BOZA] = SI_CUP_OF_BOZA; status->dbs->IconChangeTable[SC_OVERLAPEXPUP] = SI_OVERLAPEXPUP; + status->dbs->IconChangeTable[SC_GM_BATTLE] = SI_GM_BATTLE; + status->dbs->IconChangeTable[SC_GM_BATTLE2] = SI_GM_BATTLE2; + status->dbs->IconChangeTable[SC_2011RWC] = SI_2011RWC; + status->dbs->IconChangeTable[SC_STR_SCROLL] = SI_STR_SCROLL; + status->dbs->IconChangeTable[SC_INT_SCROLL] = SI_INT_SCROLL; + status->dbs->IconChangeTable[SC_STEAMPACK] = SI_STEAMPACK; // Eden Crystal Synthesis status->dbs->IconChangeTable[SC_QUEST_BUFF1] = SI_QUEST_BUFF1; @@ -977,15 +985,18 @@ void initChangeTables(void) { status->dbs->IconChangeTable[SC_BLOSSOM_FLUTTERING] = SI_BLOSSOM_FLUTTERING; // Other SC which are not necessarily associated to skills. - status->dbs->ChangeFlagTable[SC_ATTHASTE_POTION1] = SCB_ASPD; - status->dbs->ChangeFlagTable[SC_ATTHASTE_POTION2] = SCB_ASPD; - status->dbs->ChangeFlagTable[SC_ATTHASTE_POTION3] = SCB_ASPD; - status->dbs->ChangeFlagTable[SC_ATTHASTE_INFINITY] = SCB_ASPD; - status->dbs->ChangeFlagTable[SC_MOVHASTE_HORSE] = SCB_SPEED; - status->dbs->ChangeFlagTable[SC_MOVHASTE_INFINITY] = SCB_SPEED; - status->dbs->ChangeFlagTable[SC_PLUSATTACKPOWER] = SCB_BATK; - status->dbs->ChangeFlagTable[SC_PLUSMAGICPOWER] = SCB_MATK; - status->dbs->ChangeFlagTable[SC_INCALLSTATUS] |= SCB_STR|SCB_AGI|SCB_VIT|SCB_INT|SCB_DEX|SCB_LUK; + status->dbs->ChangeFlagTable[SC_ATTHASTE_POTION1] |= SCB_ASPD; + status->dbs->ChangeFlagTable[SC_ATTHASTE_POTION2] |= SCB_ASPD; + status->dbs->ChangeFlagTable[SC_ATTHASTE_POTION3] |= SCB_ASPD; + status->dbs->ChangeFlagTable[SC_MOVHASTE_POTION] |= SCB_SPEED; + status->dbs->ChangeFlagTable[SC_ATTHASTE_INFINITY] |= SCB_ASPD; + status->dbs->ChangeFlagTable[SC_MOVHASTE_HORSE] |= SCB_SPEED; + status->dbs->ChangeFlagTable[SC_MOVHASTE_INFINITY] |= SCB_SPEED; + status->dbs->ChangeFlagTable[SC_MOVESLOW_POTION] |= SCB_SPEED; + status->dbs->ChangeFlagTable[SC_SLOWDOWN] |= SCB_SPEED; + status->dbs->ChangeFlagTable[SC_PLUSATTACKPOWER] |= SCB_BATK; + status->dbs->ChangeFlagTable[SC_PLUSMAGICPOWER] |= SCB_MATK; + status->dbs->ChangeFlagTable[SC_INCALLSTATUS] |= SCB_STR | SCB_AGI | SCB_VIT | SCB_INT | SCB_DEX | SCB_LUK; status->dbs->ChangeFlagTable[SC_CHASEWALK2] |= SCB_STR; status->dbs->ChangeFlagTable[SC_INCAGI] |= SCB_AGI; status->dbs->ChangeFlagTable[SC_INCVIT] |= SCB_VIT; @@ -996,7 +1007,7 @@ void initChangeTables(void) { status->dbs->ChangeFlagTable[SC_INCHITRATE] |= SCB_HIT; status->dbs->ChangeFlagTable[SC_INCFLEE] |= SCB_FLEE; status->dbs->ChangeFlagTable[SC_INCFLEERATE] |= SCB_FLEE; - status->dbs->ChangeFlagTable[SC_MTF_HITFLEE] |= SCB_HIT|SCB_FLEE; + status->dbs->ChangeFlagTable[SC_MTF_HITFLEE] |= SCB_HIT | SCB_FLEE; status->dbs->ChangeFlagTable[SC_CRITICALPERCENT] |= SCB_CRI; status->dbs->ChangeFlagTable[SC_INCASPDRATE] |= SCB_ASPD; status->dbs->ChangeFlagTable[SC_PLUSAVOIDVALUE] |= SCB_FLEE2; @@ -1006,7 +1017,7 @@ void initChangeTables(void) { status->dbs->ChangeFlagTable[SC_MTF_MHP] |= SCB_MAXHP; status->dbs->ChangeFlagTable[SC_INCMSP] |= SCB_MAXSP; status->dbs->ChangeFlagTable[SC_MTF_MSP] |= SCB_MAXSP; - status->dbs->ChangeFlagTable[SC_INCATKRATE] |= SCB_BATK|SCB_WATK; + status->dbs->ChangeFlagTable[SC_INCATKRATE] |= SCB_BATK | SCB_WATK; status->dbs->ChangeFlagTable[SC_INCMATKRATE] |= SCB_MATK; status->dbs->ChangeFlagTable[SC_INCDEFRATE] |= SCB_DEF; status->dbs->ChangeFlagTable[SC_FOOD_STR] |= SCB_STR; @@ -1030,14 +1041,20 @@ void initChangeTables(void) { status->dbs->ChangeFlagTable[SC_ATKER_MOVESPEED] |= SCB_MAXSP | SCB_ALL; status->dbs->ChangeFlagTable[SC_FOOD_CRITICALSUCCESSVALUE] |= SCB_CRI; status->dbs->ChangeFlagTable[SC_CUP_OF_BOZA] |= SCB_VIT | SCB_ALL; + status->dbs->ChangeFlagTable[SC_GM_BATTLE] |= SCB_BATK | SCB_MATK | SCB_MAXHP | SCB_MAXSP; + status->dbs->ChangeFlagTable[SC_GM_BATTLE2] |= SCB_BATK | SCB_MATK | SCB_MAXHP | SCB_MAXSP; + status->dbs->ChangeFlagTable[SC_2011RWC] |= SCB_STR | SCB_AGI | SCB_VIT | SCB_INT | SCB_DEX | SCB_LUK | SCB_BATK | SCB_MATK; + status->dbs->ChangeFlagTable[SC_STR_SCROLL] |= SCB_STR; + status->dbs->ChangeFlagTable[SC_INT_SCROLL] |= SCB_INT; + status->dbs->ChangeFlagTable[SC_STEAMPACK] |= SCB_BATK | SCB_ASPD | SCB_ALL; // Cash Items - status->dbs->ChangeFlagTable[SC_FOOD_STR_CASH] = SCB_STR; - status->dbs->ChangeFlagTable[SC_FOOD_AGI_CASH] = SCB_AGI; - status->dbs->ChangeFlagTable[SC_FOOD_VIT_CASH] = SCB_VIT; - status->dbs->ChangeFlagTable[SC_FOOD_DEX_CASH] = SCB_DEX; - status->dbs->ChangeFlagTable[SC_FOOD_INT_CASH] = SCB_INT; - status->dbs->ChangeFlagTable[SC_FOOD_LUK_CASH] = SCB_LUK; + status->dbs->ChangeFlagTable[SC_FOOD_STR_CASH] |= SCB_STR; + status->dbs->ChangeFlagTable[SC_FOOD_AGI_CASH] |= SCB_AGI; + status->dbs->ChangeFlagTable[SC_FOOD_VIT_CASH] |= SCB_VIT; + status->dbs->ChangeFlagTable[SC_FOOD_DEX_CASH] |= SCB_DEX; + status->dbs->ChangeFlagTable[SC_FOOD_INT_CASH] |= SCB_INT; + status->dbs->ChangeFlagTable[SC_FOOD_LUK_CASH] |= SCB_LUK; // Mercenary Bonus Effects status->dbs->ChangeFlagTable[SC_MER_FLEE] |= SCB_FLEE; @@ -1047,11 +1064,11 @@ void initChangeTables(void) { status->dbs->ChangeFlagTable[SC_MER_HIT] |= SCB_HIT; // Guillotine Cross Poison Effects - status->dbs->ChangeFlagTable[SC_PARALYSE] |= SCB_FLEE|SCB_SPEED|SCB_ASPD; + status->dbs->ChangeFlagTable[SC_PARALYSE] |= SCB_FLEE | SCB_SPEED | SCB_ASPD; status->dbs->ChangeFlagTable[SC_VENOMBLEED] |= SCB_MAXHP; status->dbs->ChangeFlagTable[SC_MAGICMUSHROOM] |= SCB_REGEN; status->dbs->ChangeFlagTable[SC_DEATHHURT] |= SCB_REGEN; - status->dbs->ChangeFlagTable[SC_PYREXIA] |= SCB_HIT|SCB_FLEE; + status->dbs->ChangeFlagTable[SC_PYREXIA] |= SCB_HIT | SCB_FLEE; status->dbs->ChangeFlagTable[SC_OBLIVIONCURSE] |= SCB_REGEN; // RG status @@ -1087,17 +1104,17 @@ void initChangeTables(void) { status->dbs->ChangeFlagTable[SC_DISTRUCTIONSCROLL] |= SCB_ALL; status->dbs->ChangeFlagTable[SC_ROYALSCROLL] |= SCB_ALL; status->dbs->ChangeFlagTable[SC_IMMUNITYSCROLL] |= SCB_ALL; - status->dbs->ChangeFlagTable[SC_MYSTICSCROLL] |= SCB_MATK; + status->dbs->ChangeFlagTable[SC_MYSTICSCROLL] |= SCB_MATK | SCB_ALL; status->dbs->ChangeFlagTable[SC_BATTLESCROLL] |= SCB_BATK | SCB_ASPD; status->dbs->ChangeFlagTable[SC_ARMORSCROLL] |= SCB_DEF | SCB_FLEE; status->dbs->ChangeFlagTable[SC_FREYJASCROLL] |= SCB_MDEF | SCB_FLEE2; status->dbs->ChangeFlagTable[SC_SOULSCROLL] |= SCB_MAXHP | SCB_MAXSP; - status->dbs->ChangeFlagTable[SC_ALL_RIDING] = SCB_SPEED; - status->dbs->ChangeFlagTable[SC_WEDDING] = SCB_SPEED; + status->dbs->ChangeFlagTable[SC_ALL_RIDING] |= SCB_SPEED; + status->dbs->ChangeFlagTable[SC_WEDDING] |= SCB_SPEED; - status->dbs->ChangeFlagTable[SC_MTF_ASPD] = SCB_ASPD | SCB_HIT; - status->dbs->ChangeFlagTable[SC_MTF_MATK] = SCB_MATK; + status->dbs->ChangeFlagTable[SC_MTF_ASPD] |= SCB_ASPD | SCB_HIT; + status->dbs->ChangeFlagTable[SC_MTF_MATK] |= SCB_MATK; status->dbs->ChangeFlagTable[SC_MTF_MLEATKED] |= SCB_ALL; // Eden Crystal Synthesis @@ -4339,6 +4356,10 @@ unsigned short status_calc_str(struct block_list *bl, struct status_change *sc, str -= sc->data[SC_STOMACHACHE]->val1; if(sc->data[SC_KYOUGAKU]) str -= sc->data[SC_KYOUGAKU]->val3; + if (sc->data[SC_2011RWC]) + str += sc->data[SC_2011RWC]->val1; + if (sc->data[SC_STR_SCROLL]) + str += sc->data[SC_STR_SCROLL]->val1; return (unsigned short)cap_value(str,0,USHRT_MAX); } @@ -4394,6 +4415,8 @@ unsigned short status_calc_agi(struct block_list *bl, struct status_change *sc, agi -= sc->data[SC_STOMACHACHE]->val1; if(sc->data[SC_KYOUGAKU]) agi -= sc->data[SC_KYOUGAKU]->val3; + if (sc->data[SC_2011RWC]) + agi += sc->data[SC_2011RWC]->val1; if(sc->data[SC_MARSHOFABYSS]) agi -= agi * sc->data[SC_MARSHOFABYSS]->val2 / 100; @@ -4446,6 +4469,8 @@ unsigned short status_calc_vit(struct block_list *bl, struct status_change *sc, vit -= vit * sc->data[SC_NOEQUIPARMOR]->val2 / 100; if (sc->data[SC_CUP_OF_BOZA]) vit += sc->data[SC_CUP_OF_BOZA]->val1; + if (sc->data[SC_2011RWC]) + vit += sc->data[SC_2011RWC]->val1; return (unsigned short)cap_value(vit,0,USHRT_MAX); } @@ -4501,6 +4526,10 @@ unsigned short status_calc_int(struct block_list *bl, struct status_change *sc, int_ -= sc->data[SC_STOMACHACHE]->val1; if(sc->data[SC_KYOUGAKU]) int_ -= sc->data[SC_KYOUGAKU]->val3; + if (sc->data[SC_2011RWC]) + int_ += sc->data[SC_2011RWC]->val1; + if (sc->data[SC_INT_SCROLL]) + int_ += sc->data[SC_INT_SCROLL]->val1; if(bl->type != BL_PC){ if(sc->data[SC_NOEQUIPHELM]) @@ -4563,6 +4592,8 @@ unsigned short status_calc_dex(struct block_list *bl, struct status_change *sc, dex -= sc->data[SC_STOMACHACHE]->val1; if(sc->data[SC_KYOUGAKU]) dex -= sc->data[SC_KYOUGAKU]->val3; + if (sc->data[SC_2011RWC]) + dex += sc->data[SC_2011RWC]->val1; if(sc->data[SC_MARSHOFABYSS]) dex -= dex * sc->data[SC_MARSHOFABYSS]->val2 / 100; @@ -4613,11 +4644,12 @@ unsigned short status_calc_luk(struct block_list *bl, struct status_change *sc, luk -= sc->data[SC_KYOUGAKU]->val3; if(sc->data[SC_LAUDARAMUS]) luk += 4 + sc->data[SC_LAUDARAMUS]->val1; - if(sc->data[SC__STRIPACCESSARY] && bl->type != BL_PC) luk -= luk * sc->data[SC__STRIPACCESSARY]->val2 / 100; if(sc->data[SC_BANANA_BOMB]) luk -= luk * sc->data[SC_BANANA_BOMB]->val1 / 100; + if (sc->data[SC_2011RWC]) + luk += sc->data[SC_2011RWC]->val1; return (unsigned short)cap_value(luk,0,USHRT_MAX); } @@ -4693,6 +4725,8 @@ unsigned short status_calc_batk(struct block_list *bl, struct status_change *sc, batk -= batk * sc->data[SC__ENERVATION]->val2 / 100; if(sc->data[SC_SATURDAY_NIGHT_FEVER]) batk += 100 * sc->data[SC_SATURDAY_NIGHT_FEVER]->val1; + if (sc->data[SC_BATTLESCROLL]) + batk += batk * sc->data[SC_BATTLESCROLL]->val1 / 100; // Eden Crystal Synthesis if (sc->data[SC_QUEST_BUFF1]) @@ -4702,6 +4736,15 @@ unsigned short status_calc_batk(struct block_list *bl, struct status_change *sc, if (sc->data[SC_QUEST_BUFF3]) batk += sc->data[SC_QUEST_BUFF3]->val1; + if (sc->data[SC_GM_BATTLE]) + batk += batk * sc->data[SC_GM_BATTLE]->val1 / 100; + if (sc->data[SC_GM_BATTLE2]) + batk += batk * sc->data[SC_GM_BATTLE2]->val1 / 100; + if (sc->data[SC_2011RWC]) + batk += batk * sc->data[SC_2011RWC]->val2 / 100; + if (sc->data[SC_STEAMPACK]) + batk += sc->data[SC_STEAMPACK]->val1; + return (unsigned short)cap_value(batk,0,USHRT_MAX); } @@ -4882,6 +4925,13 @@ unsigned short status_calc_matk(struct block_list *bl, struct status_change *sc, if (sc->data[SC_FENRIR_CARD]) matk += sc->data[SC_FENRIR_CARD]->val1; + if (sc->data[SC_GM_BATTLE]) + matk += matk * sc->data[SC_GM_BATTLE]->val1 / 100; + if (sc->data[SC_GM_BATTLE2]) + matk += matk * sc->data[SC_GM_BATTLE2]->val1 / 100; + if (sc->data[SC_2011RWC]) + matk += matk * sc->data[SC_2011RWC]->val2 / 100; + return (unsigned short)cap_value(matk,0,USHRT_MAX); } @@ -5443,8 +5493,10 @@ unsigned short status_calc_speed(struct block_list *bl, struct status_change *sc val = max( val, sc->data[SC_CLOAKING]->val1 < 3 ? 300 : 30 - 3 * sc->data[SC_CLOAKING]->val1 ); if( sc->data[SC_GOSPEL] && sc->data[SC_GOSPEL]->val4 == BCT_ENEMY ) val = max( val, 75 ); - if( sc->data[SC_SLOWDOWN] ) // Slow Potion - val = max( val, 100 ); + if (sc->data[SC_SLOWDOWN]) + val = max(val, 100); + if (sc->data[SC_MOVESLOW_POTION]) // Used by Slow_Down_Potion [Frost] + val = max(val, sc->data[SC_MOVESLOW_POTION]->val1); if( sc->data[SC_GS_GATLINGFEVER] ) val = max( val, 100 ); if( sc->data[SC_NJ_SUITON] ) @@ -5486,8 +5538,10 @@ unsigned short status_calc_speed(struct block_list *bl, struct status_change *sc { int val = 0; - if( sc->data[SC_MOVHASTE_INFINITY] ) //FIXME: used both by NPC_AGIUP and Speed Potion script - val = max( val, 50 ); + if (sc->data[SC_MOVHASTE_INFINITY]) // Used by NPC_AGIUP [Frost] + val = max(val, sc->data[SC_MOVHASTE_INFINITY]->val1); + if (sc->data[SC_MOVHASTE_POTION]) // Used by Speed_Up_Potion and Guyak_Pudding [Frost] + val = max(val, sc->data[SC_MOVHASTE_POTION]->val1); if( sc->data[SC_INC_AGI] ) val = max( val, 25 ); if( sc->data[SC_WINDWALK] ) @@ -5518,9 +5572,8 @@ unsigned short status_calc_speed(struct block_list *bl, struct status_change *sc val = max( val, sc->data[SC_WIND_STEP_OPTION]->val2 ); if( sc->data[SC_FULL_THROTTLE] ) val = max( val, 25); - //FIXME: official items use a single bonus for this [ultramage] - if( sc->data[SC_MOVHASTE_HORSE] ) // temporary item-based speedup - val = max( val, 25 ); + if (sc->data[SC_MOVHASTE_HORSE]) + val = max(val, sc->data[SC_MOVHASTE_HORSE]->val1); if( sd && sd->bonus.speed_rate + sd->bonus.speed_add_rate < 0 ) // permanent item-based speedup val = max( val, -(sd->bonus.speed_rate + sd->bonus.speed_add_rate) ); @@ -5676,6 +5729,8 @@ short status_calc_aspd(struct block_list *bl, struct status_change *sc, short fl bonus += sc->data[SC_ACARAJE]->val2; if (sc->data[SC_BATTLESCROLL]) bonus += sc->data[SC_BATTLESCROLL]->val1; + if (sc->data[SC_STEAMPACK]) + bonus += sc->data[SC_STEAMPACK]->val2; } return (bonus + pots); @@ -5841,6 +5896,8 @@ short status_calc_aspd_rate(struct block_list *bl, struct status_change *sc, int aspd_rate += sc->data[SC_ACARAJE]->val2 * 10; if (sc->data[SC_BATTLESCROLL]) aspd_rate += sc->data[SC_BATTLESCROLL]->val1 * 10; + if (sc->data[SC_STEAMPACK]) + aspd_rate += sc->data[SC_STEAMPACK]->val2 * 10; return (short)cap_value(aspd_rate,0,SHRT_MAX); } @@ -5930,6 +5987,10 @@ unsigned int status_calc_maxhp(struct block_list *bl, struct status_change *sc, maxhp += maxhp * sc->data[SC_ATKER_ASPD]->val1 / 100; if (sc->data[SC_MVPCARD_TAOGUNKA]) maxhp += maxhp * sc->data[SC_MVPCARD_TAOGUNKA]->val1 / 100; + if (sc->data[SC_GM_BATTLE]) + maxhp -= maxhp * sc->data[SC_GM_BATTLE]->val1 / 100; + if (sc->data[SC_GM_BATTLE2]) + maxhp -= maxhp * sc->data[SC_GM_BATTLE2]->val1 / 100; return (unsigned int)cap_value(maxhp,1,UINT_MAX); } @@ -5963,6 +6024,10 @@ unsigned int status_calc_maxsp(struct block_list *bl, struct status_change *sc, maxsp += maxsp * sc->data[SC_SOULSCROLL]->val1 / 100; if (sc->data[SC_ATKER_MOVESPEED]) maxsp += maxsp * sc->data[SC_ATKER_MOVESPEED]->val1 / 100; + if (sc->data[SC_GM_BATTLE]) + maxsp -= maxsp * sc->data[SC_GM_BATTLE]->val1 / 100; + if (sc->data[SC_GM_BATTLE2]) + maxsp -= maxsp * sc->data[SC_GM_BATTLE2]->val1 / 100; return cap_value(maxsp,1,UINT_MAX); } @@ -7091,25 +7156,20 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t if((type == SC_FREEZE || type == SC_FROSTMISTY || type == SC_COLD) && sc->data[SC_WARMER]) return 0; //Immune to Frozen and Freezing status if under Warmer status. [Jobbie] break; - - //There all like berserk, do not everlap each other - case SC_BERSERK: - if( sc->data[SC__BLOODYLUST] ) + case SC_BERSERK: // There all like berserk, do not everlap each other + if (sc->data[SC__BLOODYLUST]) return 0; break; - case SC_BURNING: - if(sc->opt1 || sc->data[SC_FROSTMISTY]) + if (sc->opt1 || sc->data[SC_FROSTMISTY]) return 0; break; - - case SC_CRUCIS: - //Only affects demons and undead element (but not players) - if((!undead_flag && st->race!=RC_DEMON) || bl->type == BL_PC) + case SC_CRUCIS: // Only affects demons and undead element (but not players) + if ((!undead_flag && st->race != RC_DEMON) || bl->type == BL_PC) return 0; break; case SC_LEXAETERNA: - if( (sc->data[SC_STONE] && sc->opt1 == OPT1_STONE) || sc->data[SC_FREEZE] ) + if ((sc->data[SC_STONE] && sc->opt1 == OPT1_STONE) || sc->data[SC_FREEZE]) return 0; break; case SC_KYRIE: @@ -7118,46 +7178,46 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t break; case SC_OVERTHRUST: if (sc->data[SC_OVERTHRUSTMAX]) - return 0; //Overthrust can't take effect if under Max Overthrust. [Skotlex] + return 0; // Overthrust can't take effect if under Max Overthrust. [Skotlex] case SC_OVERTHRUSTMAX: - if( sc->option&OPTION_MADOGEAR ) - return 0; //Overthrust and Overthrust Max cannot be used on Mado Gear [Ind] + if (sc->option&OPTION_MADOGEAR) + return 0; // Overthrust and Overthrust Max cannot be used on Mado Gear [Ind] break; case SC_ADRENALINE: - if(sd && !pc_check_weapontype(sd,skill->get_weapontype(BS_ADRENALINE))) + if (sd && !pc_check_weapontype(sd, skill->get_weapontype(BS_ADRENALINE))) return 0; - if (sc->data[SC_QUAGMIRE] || - sc->data[SC_DEC_AGI] || - sc->option&OPTION_MADOGEAR //Adrenaline doesn't affect Mado Gear [Ind] - ) + if (sc->data[SC_QUAGMIRE] || sc->data[SC_DEC_AGI] || sc->option&OPTION_MADOGEAR) // Adrenaline doesn't affect Mado Gear [Ind] return 0; break; case SC_ADRENALINE2: - if(sd && !pc_check_weapontype(sd,skill->get_weapontype(BS_ADRENALINE2))) + if (sd && !pc_check_weapontype(sd,skill->get_weapontype(BS_ADRENALINE2))) return 0; - if (sc->data[SC_QUAGMIRE] || - sc->data[SC_DEC_AGI] - ) + if (sc->data[SC_QUAGMIRE] || sc->data[SC_DEC_AGI]) + return 0; + break; + case SC_QUAGMIRE: + case SC_DEC_AGI: + case SC_DONTFORGETME: + if (sc->data[SC_MOVHASTE_POTION]) // Doesn't affect by Quagmire, Decrease Agi, Slow Grace [Frost] return 0; break; case SC_MAGNIFICAT: - if( sc->data[SC_OFFERTORIUM] || sc->option&OPTION_MADOGEAR ) //Mado is immune to magnificat + if (sc->data[SC_OFFERTORIUM] || sc->option&OPTION_MADOGEAR) // Mado is immune to magnificat return 0; break; case SC_ONEHANDQUICKEN: case SC_MER_QUICKEN: case SC_TWOHANDQUICKEN: - if(sc->data[SC_DEC_AGI]) + if (sc->data[SC_DEC_AGI]) return 0; - case SC_CONCENTRATION: case SC_SPEARQUICKEN: case SC_TRUESIGHT: case SC_WINDWALK: case SC_CARTBOOST: case SC_ASSNCROS: - if(sc->option&OPTION_MADOGEAR) - return 0; //Mado is immune to wind walk, cart boost, etc (others above) [Ind] + if (sc->option&OPTION_MADOGEAR) + return 0; // Mado is immune to wind walk, cart boost, etc (others above) [Ind] case SC_INC_AGI: if (sc->data[SC_QUAGMIRE]) return 0; @@ -7543,6 +7603,12 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t case SC_FOOD_LUK_CASH: status_change_end(bl, SC_FOOD_LUK, INVALID_TIMER); break; + case SC_GM_BATTLE: + status_change_end(bl, SC_GM_BATTLE2, INVALID_TIMER); + break; + case SC_GM_BATTLE2: + status_change_end(bl, SC_GM_BATTLE, INVALID_TIMER); + break; case SC_ENDURE: if( val4 == 1 ) status_change_end(bl, SC_LKCONCENTRATION, INVALID_TIMER); @@ -9154,6 +9220,12 @@ int status_change_start(struct block_list *src, struct block_list *bl, enum sc_t val4 = tick / 10000; tick_time = 10000; // [GodLesZ] tick time break; + case SC_STEAMPACK: // [Frost] + val3 = 100; // HP Consume. + val4 = tick / 10000; + tick_time = 10000; + sc_start(src, bl, SC_ENDURE, 100, 10, -1); // Endure effect + break; case SC_KYOUGAKU: { int min = val1*2; int max = val1*3; @@ -11439,10 +11511,9 @@ int status_change_timer(int tid, int64 tick, int id, intptr_t data) { if (bl->type == BL_ELEM) elemental->change_mode(BL_CAST(BL_ELEM,bl),MAX_ELESKILLTREE); break; - case SC_STOMACHACHE: if (--(sce->val4) > 0) { - status->charge(bl, 0, sce->val3); // Reduce 8 every 10 seconds. + status->charge(bl, 0, sce->val3); // Reduce 8 SP every 10 seconds. if (sd && !pc_issit(sd)) { // Force to sit every 10 seconds. pc_stop_walking(sd, STOPWALKING_FLAG_FIXPOS | STOPWALKING_FLAG_NEXTCELL); pc_stop_attack(sd); @@ -11453,6 +11524,12 @@ int status_change_timer(int tid, int64 tick, int id, intptr_t data) { return 0; } break; + case SC_STEAMPACK: + if (--(sce->val4) > 0) { + status->charge(bl, sce->val3, 0); // Reduce 100 HP every 10 seconds. + sc_timer_next(10000 + tick, status->change_timer, bl->id, data); + } + break; case SC_LEADERSHIP: case SC_GLORYWOUNDS: case SC_SOULCOLD: diff --git a/src/map/status.h b/src/map/status.h index 2bf3c0a57..3bf862163 100644 --- a/src/map/status.h +++ b/src/map/status.h @@ -809,6 +809,15 @@ typedef enum sc_type { SC_MAGICAL_FEATHER, SC_BLOSSOM_FLUTTERING, + SC_GM_BATTLE, + SC_GM_BATTLE2, + SC_2011RWC, + SC_STR_SCROLL, + SC_INT_SCROLL, // 630 + SC_STEAMPACK, + SC_MOVHASTE_POTION, + SC_MOVESLOW_POTION, + SC_MAX, //Automatically updated max, used in for's to check we are within bounds. } sc_type; @@ -1004,7 +1013,7 @@ enum si_type { SI_INCSTR = 182, //SI_NOT_EXTREMITYFIST = 183, SI_CLAIRVOYANCE = 184, - //SI_MOVESLOW_POTION = 185, + SI_MOVESLOW_POTION = 185, SI_DOUBLECASTING = 186, //SI_GRAVITATION = 187, SI_OVERTHRUSTMAX = 188, @@ -1127,7 +1136,7 @@ enum si_type { SI_ARMOR_PROPERTY = 302, //SI_REUSE_LIMIT_A = 303, SI_HELLPOWER = 304, - //SI_STEAMPACK = 305, + SI_STEAMPACK = 305, //SI_REUSE_LIMIT_B = 306, //SI_REUSE_LIMIT_C = 307, //SI_REUSE_LIMIT_D = 308, |