diff --git a/db/re/skill_cast_db.txt b/db/re/skill_cast_db.txt index 14327df729..a93131aec4 100644 --- a/db/re/skill_cast_db.txt +++ b/db/re/skill_cast_db.txt @@ -51,7 +51,7 @@ //-- MG_LIGHTNINGBOLT 20,640:960:1280:1600:1920:2100:1560:2880:3200:3520,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,0,0,0,0,160:240:320:400:480:700:640:720:800:880 //-- MG_THUNDERSTORM -21,640:1280:1920:2560:3200:3840:4480:5120:5760:6400,2000:2000:2000:2000:2000:2000:2000:2000:2000:2000,0,500,0,0,160:320:480:640:800:960:1120:1280:1440:1600 +21,640:1280:1920:2560:3200:3840:4480:5120:5760:6400,2000,0,500,0,0,160:320:480:640:800:960:1120:1280:1440:1600 //========================================== @@ -63,7 +63,7 @@ //-- AL_TELEPORT 26,0,0,0,0,0,0,0 //-- AL_WARP -27,0,0,0,5000:10000:15000:20000:25000:30000:35000:40000:45000:50000,0,0,1000 +27,0,1000,0,10000:15000:20000:25000,0,0,1000 //-- AL_HEAL 28,0,1000,0,0,0,0,0 //-- AL_INCAGI @@ -103,7 +103,7 @@ //===== First planned to be shared ========= //-- ALL_RESURRECTION -54,4800:3200:1600:0,0:1000:2000:3000,0,0,0,0,1200:800:400:0 +54,4800:3200:1600:0,0:1000:2000:3000,0,0,0,0,1200:800:400:-1 //========================================== @@ -166,7 +166,7 @@ //-- WZ_VERMILION 85,9600:9280:8960:8640:8320:8000:7680:7360:7040:6720,5000,0,4000,5500:6000:6500:7000:7500:8000:8500:9000:9500:10000,0,2400:2320:2240:2160:2080:2000:1920:1840:1760:1680 //-- WZ_WATERBALL -86,640:1280:1920:2560:3200:3200:3200:3200:3200:3200,0,0,0,0,0,160:320:480:640:800:800:800:800:800:800 +86,640:1280:1920:2560:3200,0,0,0,0,0,160:320:480:640:800 //-- WZ_ICEWALL 87,0,0,0,5000:10000:15000:20000:25000:30000:35000:40000:45000:50000,0,0,0 //-- WZ_FROSTNOVA @@ -174,9 +174,9 @@ //-- WZ_STORMGUST 89,3840:4480:5120:5760:6400:7040:7680:8320:8960:9600,5000,0,4600,12000,0,960:1120:1280:1440:1600:1760:1920:2080:2240:2400 //-- WZ_EARTHSPIKE -90,448:896:1344:1792:2240:2240:2240:2240:2240:2240,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,0,0,0,0,112:224:336:448:560:560:560:560:560:560 +90,448:896:1344:1792:2240,1000:1200:1400:1600:1800:2000:2200:2400:2600:2800,0,0,0,0,112:224:336:448:560 //-- WZ_HEAVENDRIVE -91,640:1280:1920:2560:3200:3200:3200:3200:3200:3200,1000,0,500,0,0,160:320:480:640:800:800:800:800:800:800 +91,640:1280:1920:2560:3200,1000,0,500,0,0,160:320:480:640:800 //-- WZ_QUAGMIRE 92,0,1000,0,5000:10000:15000:20000:25000,5000:10000:15000:20000:25000,0,0 //========================================== @@ -328,13 +328,13 @@ //-- RG_RAID 214,0,0,0,5000,8000:9000:10000:11000:12000,0,0 //-- RG_STRIPWEAPON -215,560:720:880:1140:1200:1200:1200:1200:1200:1200,1000,0,75000:90000:105000:120000:135000,0,0,140:180:220:260:300:300:300:300:300:300 +215,560:720:880:1140:1200,1000,0,75000:90000:105000:120000:135000,0,0,140:180:220:260:300 //-- RG_STRIPSHIELD -216,560:720:880:1140:1200:1200:1200:1200:1200:1200,1000,0,75000:90000:105000:120000:135000,0,0,140:180:220:260:300:300:300:300:300:300 +216,560:720:880:1140:1200,1000,0,75000:90000:105000:120000:135000,0,0,140:180:220:260:300 //-- RG_STRIPARMOR -217,560:720:880:1140:1200:1200:1200:1200:1200:1200,1000,0,75000:90000:105000:120000:135000,0,0,140:180:220:260:300:300:300:300:300:300 +217,560:720:880:1140:1200,1000,0,75000:90000:105000:120000:135000,0,0,140:180:220:260:300 //-- RG_STRIPHELM -218,560:720:880:1140:1200:1200:1200:1200:1200:1200,1000,0,75000:90000:105000:120000:135000,0,0,140:180:220:260:300:300:300:300:300:300 +218,560:720:880:1140:1200,1000,0,75000:90000:105000:120000:135000,0,0,140:180:220:260:300 //-- RG_GRAFFITI 220,0,0,0,180000,0,0,0 //========================================== @@ -404,7 +404,7 @@ //-- MO_EXPLOSIONSPIRITS 270,0,0,0,180000,0,0,0 //-- MO_EXTREMITYFIST -271,2000:1750:1500:1250:1000:500:1000:1000:1000:1000,3000:2500:2000:1500:1000,0,10000,300000,0,2000:1750:1500:1250:1000:500:1000:1000:1000:1000 +271,2000:1750:1500:1250:1000,3000:2500:2000:1500:1000,0,10000,300000,0,2000:1750:1500:1250:1000 //========================================== @@ -542,7 +542,7 @@ //===== High Priest ======================== //-- HP_ASSUMPTIO -361,800:1200:1600:2000:2400:2400:2400:2400:2400:2400,1100:1200:1300:1400:1500,0,20000:40000:60000:80000:100000,0,0,200:300:400:500:600 +361,800:1200:1600:2000:2400,1100:1200:1300:1400:1500,0,20000:40000:60000:80000:100000,0,0,200:300:400:500:600 //-- HP_BASILICA 362,0,2000:3000:4000:5000:6000,0,20000:25000:30000:35000:40000,20000:25000:30000:35000:40000,0,5000:6000:7000:8000:9000 //========================================== @@ -552,7 +552,7 @@ //-- HW_MAGICCRASHER 365,240,300,0,0,0,0,60 //-- HW_MAGICPOWER -366,0,0,0,30000,0,0,0 +366,0,0,0,30000,0,0,700 //========================================== @@ -629,7 +629,7 @@ //===== Mixed Advanced Skills ============== //-- LK_SPIRALPIERCE -397,150:250:350:450:500:500:500:500:500:500,1200:1400:1600:1800:2000,0,0,1000,0,150:250:350:450:500:500:500:500:500:500 +397,150:250:350:450:500,1200:1400:1600:1800:2000,0,0,1000,0,150:250:350:450:500 //-- LK_HEADCRUSH 398,0,500,0,0,120000,0,0 //-- LK_JOINTBEAT @@ -669,7 +669,7 @@ //===== Taekwon ============================ //-- TK_RUN -411,3000:2500:2000:1500:100:500:0:0:0:0,300,0,1000,150000,0,3000:2500:2000:1500:1000:500:0:0:0:0 +411,3000:2500:2000:1500:1000:500:0:0:0:0,300,0,1000,150000,0,3000:2500:2000:1500:1000:500:-1-1-1-1 //-- TK_DOWNKICK 415,0,0,0,0,3000,0,0 //-- TK_TURNKICK @@ -679,7 +679,7 @@ //-- TK_SEVENWIND 425,0,0,0,300000,0,0,0 //-- TK_HIGHJUMP -426,2500:2000:1500:1000:500:500:500:500:500:500,0,0,0,0,0,2500:2000:1500:1000:500:500:500:500:500:500 +426,2500:2000:1500:1000:500,0,0,0,0,0,2500:2000:1500:1000:500 //========================================== //===== Star Gladiator ===================== @@ -747,13 +747,13 @@ //-- SL_SOULLINKER 461,0,0,0,150000:200000:250000:300000:350000,0,0,1000 //-- SL_KAIZEL -462,3600:3200:2800:2400:2000:2000:2000:2000:2000:2000,0,0,1800000,2000,0,900:800:700:600:500:500:500:500:500:500 +462,3600:3200:2800:2400:2000,0,0,1800000,2000,0,900:800:700:600:500 //-- SL_KAAHI 463,0,0,0,350000,0,0,0 //-- SL_KAUPE 464,400,0,0,600000,0,0,100 //-- SL_KAITE -465,4800:4400:4000:3600:3200:2800:2400:2400:2400:2400,0,0,60000:120000:180000:240000:300000:360000:600000,0,0,1200:1100:1000:900:800:700:600:600:600:600 +465,4800:4400:4000:3600:3200:2800:2400,0,0,60000:120000:180000:240000:300000:360000:600000,0,0,1200:1100:1000:900:800:700:600 //-- SL_STIN 467,80,500,0,0,0,0,20 //-- SL_STUN @@ -763,9 +763,9 @@ //-- SL_SWOO 470,800,500,0,1000:2000:3000:4000:5000:6000:7000,0,0,200 //-- SL_SKE -471,2400:1600:800:800:800:800:800:800:800:800,500,0,10000:20000:30000,3000,0,600:400:200:200:200:200:200:200:200:200 +471,2400:1600:800,500,0,10000:20000:30000,3000,0,600:400:200 //-- SL_SKA -472,2400:1600:800:800:800:800:800:800:800:800,500,0,10000:20000:30000,0,0,600:400:200:200:200:200:200:200:200:200 +472,2400:1600:800,500,0,10000:20000:30000,0,0,600:400:200 //========================================== //-- SM_SELFPROVOKE 473,0,0,0,30000,0,0,0 @@ -790,7 +790,7 @@ //-- HW_GANBANTEIN 483,0,5000,0,0,0,0,3000 //-- HW_GRAVITATION -484,0,0,0,5000:6000:7000:8000:9000,0,0,5000 +484,0,2000,0,5000:6000:7000:8000:9000,0,0,5000 //-- WS_CARTTERMINATION 485,0,0,0,0,5000,0,0 @@ -840,6 +840,8 @@ 500,0,0,0,600000,0,0,0 //-- GS_FLING 501,0,0,0,30000,0,0,0 +//-- GS_TRIPLEACTION +502,0,1000,0,0,0,0,0 //-- GS_BULLSEYE 503,800,1000,0,0,0,0,200 //-- GS_MADNESSCANCEL @@ -848,6 +850,8 @@ 505,800,2000,0,30000,0,0,200 //-- GS_INCREASING 506,0,1000,0,60000,0,0,0 +//-- GS_MAGICALBULLET +507,0,500,0,0,0,0,0 //-- GS_CRACKER 508,0,1000,0,0,5000,0,0 //-- GS_TRACKING @@ -866,6 +870,8 @@ 518,1200,1000,0,0,0,0,300 //-- GS_FULLBUSTER 519,800,1200:1400:1600:1800:2000:2200:2400:2600:2800:3000,0,0,10000,0,200 +//-- GS_SPREADATTACK +520,800,1000,0,0,0,0,200 //-- GS_GROUNDDRIFT 521,800,1000,0,3000:6000:9000:12000:15000:18000:21000:24000:27000:30000,10000,0,200 //========================================== @@ -875,7 +881,7 @@ //-- NJ_KUNAI 524,0,1000,0,0,0,0,0 //-- NJ_HUUMA -525,2400:2400:2400:2400:2400:2400:2400:2400:2400:2400,2000,0,100,0,0,600 +525,2400,2000,0,100,0,0,600 //-- NJ_ZENYNAGE 526,0,5000,0,0,0,0,0 //-- NJ_TATAMIGAESHI @@ -899,7 +905,7 @@ //-- NJ_SUITON 538,2400,2000,0,15000:20000:25000:30000:35000:40000:45000:50000:55000:60000,15000:20000:25000:30000:35000:40000:45000:50000:55000:60000,0,600 //-- NJ_HYOUSYOURAKU -539,1600:2000:2400:2800:3200:3200:3200:3200:3200:3200,2000,0,0,10000:11000:12000:13000:14000:15000:16000:17000:18000:19000,0,400:500:600:700:800:800:800:800:800:800 +539,1600:2000:2400:2800:3200,2000,0,0,10000:11000:12000:13000:14000:15000:16000:17000:18000:19000,0,400:500:600:700:800 //-- NJ_HUUJIN 540,800:1200:1600:2000:2400:2800:3200:3600:4000:4400,1000,0,0,0,0,200:300:400:500:600:700:800:900:1000:1100 //-- NJ_RAIGEKISAI @@ -907,7 +913,7 @@ //-- NJ_KAMAITACHI 542,3200,0,0,0,0,0,800 //-- NJ_NEN -543,4000:3200:2400:1600:800:800:800:800:800:800,0,0,30000:45000:60000:75000:90000,0,0,1000:800:600:400:200:200:200:200:200:200 +543,4000:3200:2400:1600:800,0,0,30000:45000:60000:75000:90000,0,0,1000:800:600:400:200 //========================================== //===== Gangsi Branch and Other Skills ===== @@ -1020,10 +1026,10 @@ 690,0,0,0,60000:80000:100000:120000:140000:160000:180000:200000:220000:240000,0,0,-1 //-- CASH_ASSUMPTIO 691,0,0,0,20000:40000:60000:80000:100000,0,0,-1 - //-- ALL_CATCRY 692,0,5000,0,0,0,0,-1 - +//-- ALL_PARTYFLEE +693,0,0,0,0,0,300000,-1 //-- ALL_ANGEL_PROTECTION 694,0,0,0,30000,0,0,-1 //-- ALL_DREAM_SUMMERNIGHT @@ -1078,7 +1084,7 @@ //-- RK_SONICWAVE 2002,0,1000,0,0,0,2000,-1 //-- RK_DEATHBOUND -2003,0,2000,0,2000,0,3000,-1 +2003,0,2000,0,3000,2000,3000,-1 //-- RK_HUNDREDSPEAR 2004,1000:900:800:700:600:500:400:300:200:100,500,0,0,0,3000,-1 //-- RK_WINDCUTTER @@ -1090,11 +1096,11 @@ //-- RK_DRAGONHOWLING 2009,0,0,0,15000,0,10000,-1 //-- RK_MILLENNIUMSHIELD -2011,0,1000,0,180000,60000,60000,-1 +2011,0,1000,0,180000,60000,0,-1 //-- RK_CRUSHSTRIKE -2012,0,0,0,30000,30000,30000,1000 +2012,0,0,0,180000,30000,0,1000 //-- RK_REFRESH -2013,0,0,0,60000,120000,120000,1000 +2013,0,0,0,60000,120000,0,1000 //-- RK_GIANTGROWTH 2014,0,0,0,180000,0,0,1000 //-- RK_STONEHARDSKIN @@ -1102,7 +1108,7 @@ //-- RK_VITALITYACTIVATION 2016,0,0,0,180000,0,0,-1 //-- RK_STORMBLAST -2017,2000,1000,0,0,0,0,-1 +2017,2000,0,0,0,0,0,-1 //-- RK_FIGHTINGSPIRIT 2018,0,0,0,180000,0,0,-1 //-- RK_ABUNDANCE @@ -1113,7 +1119,7 @@ 5005,0,0,0,60000,0,0,-1 //========================================== -//===== Guillotine Cross ==================== +//===== Guillotine Cross =================== //-- GC_VENOMIMPRESS 2021,0,3000:2500:2000:1500:1000,0,10000:20000:30000:40000:50000,0,0,-1 //-- GC_CROSSIMPACT @@ -1197,27 +1203,27 @@ //-- WL_JACKFROST 2204,2000:2500:3000:3500:4000,1000,0,10000:15000:20000:25000:30000,0,0,1000 //-- WL_MARSHOFABYSS -2205,2500,1000,0,25000,0,0,500 +2205,2500,1000,0,30000,0,0,500 //-- WL_RECOGNIZEDSPELL 2206,1000,1000,0,60000:90000:120000:150000:180000,0,50000:80000:110000:140000:170000,1000 //-- WL_SIENNAEXECRATE 2207,2000,2000,0,10000:12000:14000:16000:18000,0,0,-1 //-- WL_STASIS -2209,3000,1000,0,10000:15000:20000:25000:30000,0,300000,1000 +2209,3000,2000,0,10000:15000:20000:25000:30000,0,180000:190000:200000:210000:220000,1000 //-- WL_DRAINLIFE 2210,4000,0,0,0,0,2000,1000 //-- WL_CRIMSONROCK -2211,5000,2000,0,3000:4000:5000:6000:7000,0,5000,2000 +2211,5000,2000,0,5000,0,5000,1000 //-- WL_HELLINFERNO 2212,3000,1000,0,15000,0,0,1000 //-- WL_COMET -2213,10000:11000:12000:13000:14000,0,0,15000,0,60000,1000:1500:2000:2500:3000 +2213,10000:11000:12000:13000:14000,2000,0,100,42000,60000,1000:1500:2000:2500:3000 //-- WL_CHAINLIGHTNING 2214,3500:4000:4500:5000:5500,0,0,100,0,3000,1000 //-- WL_EARTHSTRAIN -2216,2000:3000:4000:5000:6000,1000,0,150,75000:90000:105000:120000:135000,10000,2000 +2216,2000:3000:4000:5000:6000,1000,0,100,75000:90000:105000:120000:135000,10000,2000 //-- WL_TETRAVORTEX -2217,5000:6000:7000:8000:9000,2000,0,20000,0,15000,2000 +2217,5000:6000:7000:8000:9000,2000,0,0,0,15000,2000 //-- WL_SUMMONFB 2222,2000,0,0,120000:160000:200000:240000:280000,0,0,-1 //-- WL_SUMMONBL @@ -1227,7 +1233,7 @@ //-- WL_SUMMONSTONE 2229,2000,0,0,120000:160000:200000:240000:280000,0,0,-1 //-- WL_READING_SB -2231,5000,500,0,0,0,0,1000 +2231,5000,500,0,30000,0,0,1000 //-- WL_TELEKINESIS_INTENSE 5012,1000,0,0,180000,0,300000,-1 //========================================== @@ -1236,7 +1242,7 @@ //-- RA_ARROWSTORM 2233,2000:2200:2400:2600:2800:3000:3200:3400:3600:3800,0,0,0,0,5000:4800:4600:4400:4200:4000:3800:3600:3400:3200,-1 //-- RA_FEARBREEZE -2234,2000,0,0,60000:90000:120000:150000:180000,0,0,0 +2234,0,0,0,60000:90000:120000:150000:180000,0,0,2000 //-- RA_AIMEDBOLT 2236,4000,1000,0,0,0,0,500 //-- RA_DETONATOR @@ -1266,7 +1272,7 @@ //-- RA_FIRINGTRAP 2253,0,0,0,15000,15000,0,-1 //-- RA_ICEBOUNDTRAP -2254,0,0,0,20000,15000,0,-1 +2254,0,0,0,15000,20000,0,-1 //-- RA_UNLIMIT 5002,0,500,0,60000,0,300000,1000 //========================================== @@ -1281,7 +1287,7 @@ //-- NC_FLAMELAUNCHER 2259,500:1000:1500,1500:1000:500,0,7000:14000:21000,0,0,500 //-- NC_COLDSLOWER -2260,1000,1000:2000:3000,0,7000:14000:21000,0,0,-1 +2260,1000,1000:2000:3000,0,7000:14000:21000,40000,0,-1 // -- NC_ARMSCANNON 2261,1400:1600:1800,500:1000:2000,0,0,0,0,600:400:200 //-- NC_ACCELERATION @@ -1301,7 +1307,7 @@ //-- NC_INFRAREDSCAN 2270,0,500,0,3000,0,3000,-1 //-- NC_ANALYZE -2271,0,1000,0,20000,0,0,-1 +2271,0,1000,0,20000,0,0,1000 //-- NC_MAGNETICFIELD 2272,0,0,0,4000:6000:8000,0,20000:15000:10000,-1 //-- NC_NEUTRALBARRIER @@ -1338,7 +1344,7 @@ //-- SC_TRIANGLESHOT 2288,1000,500,0,0,0,0,-1 //-- SC_BODYPAINT -2289,0,1000,0,5000:7000:9000:11000:13000,0,2000,-1 +2289,0,1000,0,5000:7000:9000:11000:13000,10000,2000,-1 //-- SC_INVISIBILITY 2290,1000,1000,0,0,0,20000:30000:40000:50000:60000,-1 //-- SC_DEADLYINFECT @@ -1355,7 +1361,7 @@ 2296,2000,1000,0,10000:15000:20000,0,2000,-1 //-- SC_WEAKNESS 2297,2000,1000,0,10000:15000:20000,0,2000,-1 -//-- SC_STRIPACCESORY +//-- SC_STRIPACCESSARY 2298,1000,1000,0,60000:70000:80000:90000:100000,0,0,-1 //-- SC_MANHOLE 2299,1000,2000,0,5000:10000:15000,5000:10000:15000,0,-1 @@ -1365,7 +1371,7 @@ 2301,2000,2000,0,5000:10000:15000,4000:8000:12000,0,-1 //-- SC_MAELSTROM 2302,2000,2000,0,7000:14000:21000,0,0,-1 -//-- SC_BLOODYLUST //dur2=intr +//-- SC_BLOODYLUST 2303,2000,2000,0,10000:20000:30000,0,180000,-1 //-- SC_FEINTBOMB 2304,1000,0,0,500,1500,5000,-1 @@ -1377,15 +1383,15 @@ //-- LG_CANNONSPEAR 2307,0,0,0,0,0,2000,-1 //-- LG_TRAMPLE -2309,0,0,0,0,0,1000,-1 +2309,0,1000,0,0,0,0,-1 //-- LG_SHIELDPRESS 2310,0,0,0,3500:4000:4500:5000:5500,0,2000,-1 //-- LG_REFLECTDAMAGE 2311,0,0,0,300000,0,0,-1 //-- LG_PINPOINTATTACK -2312,0,1000,0,5000,0,5000,-1 +2312,0,1000,0,12000,0,5000,-1 //-- LG_FORCEOFVANGUARD -2313,0,1000,0,300000,0,0,-1 +2313,0,1000,0,300000,0,0,1000 //-- LG_RAGEBURST 2314,0,3000,0,0,0,0,-1 //-- LG_SHIELDSPELL @@ -1485,13 +1491,13 @@ //-- WM_DOMINION_IMPULSE 2417,0,1000,0,0,0,0,-1 //-- WM_SEVERE_RAINSTORM -2418,1500:2000:2500:3000:3500,1000,0,3300,0,5000:5500:6000:6500:7000,500 +2418,1500:2000:2500:3000:3500,1000,0,3400,0,5000:5500:6000:6500:7000,500 //-- WM_POEMOFNETHERWORLD 2419,3000,0,0,9000:11000:13000:15000:17000,8000:10000:12000:14000:16000,0,-1 //-- WM_VOICEOFSIREN 2420,2000:2200:2400:2600:2800,1000,0,15000:18000:21000:24000:27000,0,5000,-1 //-- WM_DEADHILLHERE -2421,4000:3500:3000:2500:2000,1000,0,0,0,0,1000 +2421,3000:2500:2000:1500:1000,1000,0,0,0,0,1000 //-- WM_LULLABY_DEEPSLEEP 2422,2000,1000,0,12000:14000:16000:18000:20000,0,10000,1000 //-- WM_SIRCLEOFNATURE @@ -1507,7 +1513,7 @@ //-- WM_DANCE_WITH_WUG 2428,1500:2000:2500:3000:3500,1000,0,30000:60000:90000:120000:150000,0,90000,500 //-- WM_SOUND_OF_DESTRUCTION -2429,0:500:1000:1500:2000,1000,0,0,0,6000:7000:8000:9000:10000,500 +2429,0:500:1000:1500:2000,1000,0,5000,0,6000:7000:8000:9000:10000,500 //-- WM_SATURDAY_NIGHT_FEVER 2430,1000:2000:3000:4000:5000,1000,0,10000:15000:20000:25000:30000,10000:8000:6000:4000:2000,180000,1000 //-- WM_LERADS_DEW @@ -1523,10 +1529,10 @@ //========================================== //==== Sorcerer skills ===================== -//-- SO_FIREWALK //CHECK Duration 2 needs to be added for the PROPERTYWALK status ID. Ask me for more info. [Rytech] -2443,1000,1000,0,12000,0,0,-1 -//-- SO_ELECTRICWALK //CHECK Duration 2 needs to be added for the PROPERTYWALK status ID. Ask me for more info. [Rytech] -2444,1000,1000,0,12000,0,0,-1 +//-- SO_FIREWALK +2443,1000,1000,0,30000,12000,0,-1 +//-- SO_ELECTRICWALK +2444,1000,1000,0,30000,12000,0,-1 //-- SO_SPELLFIST 2445,0,1000,0,20000:25000:30000:35000:40000,0,0,0 //-- SO_EARTHGRAVE @@ -1534,11 +1540,11 @@ //-- SO_DIAMONDDUST 2447,5000:5500:6000:6500:7000,1000,0,500,12000:14000:16000:18000:20000,5000,800:600:400:200:-1 //-- SO_POISON_BUSTER -2448,2200:3400:4600:5800:7000,1000,0,0,0,2000,800:600:400:200:-1 +2448,2200:3400:4600:5800:6000,1000,0,0,0,2000,800:600:400:200:-1 //-- SO_PSYCHIC_WAVE 2449,8000:9000:10000:11000:12000,1000,0,1200:1700:2200:2700:3200,0,5000,1000:900:800:700:600 //-- SO_CLOUD_KILL -2450,2300:2500:2700:2900:3100,1000,0,8000:10000:12000:14000:16000,10000:15000:20000:25000:30000,5000,700:500:300:100:-1 +2450,2300:2500:2700:2900:3100,1000,0,8000:10000:12000:14000:16000,4000:8000:12000:16000:20000,5000,700:500:300:100:-1 //-- SO_STRIKING 2451,1000,1000,0,60000,0,2000,-1 //-- SO_WARMER @@ -1546,7 +1552,7 @@ //-- SO_VACUUM_EXTREME 2453,1000:1500:2000:2500:3000,1000,0,4000:6000:8000:10000:12000,2000,5000,-1 //-- SO_VARETYR_SPEAR -2454,2200:2400:2600:2800:3000,1000,0,0,2200:2400:2600:2800:3000,2000,1800:1600:1400:1200:1000 +2454,2200:2400:2600:2800:3000,1000,0,2200:2400:2600:2800:3000,0,2000,1800:1600:1400:1200:1000 //-- SO_ARRULLO 2455,2200:2400:2600:2800:3000,1000,0,8000:10000:12000:14000:16000,0,5000:6000:7000:8000:9000,800:600:400:200:-1 //-- SO_EL_CONTROL @@ -1625,58 +1631,58 @@ //===== Misc. Skills ======================= //-- ALL_ODINS_RECALL -2533,10000,0,0,0,0,300000,0 +2533,0,0,0,0,0,0,10000 //-- RETURN_TO_ELDICASTES -2534,3000,0,0,0,0,300000,0 +2534,0,0,0,0,0,300000,2000 //-- ALL_GUARDIAN_RECALL -2536,3000,0,0,0,0,300000,0 +2536,0,0,0,0,0,300000,3000 //-- ALL_ODINS_POWER 2537,0,0,0,60000,0,0,0 //========================================== -//===== Rebellion ========================== +//===== Rebellion Skills =================== //-- RL_GLITTERING_GREED //2551,0,0,0,0,0,0,-1 //-- RL_RICHS_COIN -2552,0,1000,0,600000,0,0,-1 +2552,0,1000,0,600000,0,3000,-1 //-- RL_MASS_SPIRAL -2553,2000,1000,0,0,30000,1000,-1 +2553,1000,1000,0,0,30000,10000,2000 //-- RL_BANISHING_BUSTER -2554,3000:2500:2000:1500:1000,1000,0,0,0,1500,-1 +2554,3000:2500:2000:1500:1000,0,0,0,0,10000,-1 //-- RL_B_TRAP -2555,0,0,0,4000,6000:7000:8000:9000:10000,2000,-1 +2555,0,0,0,10000:11000:12000:13000:14000,6000:7000:8000:9000:10000,0,-1 //-- RL_FLICKER -2556,0,500,0,0,0,2000,-1 +2556,0,0,0,0,0,10000,-1 //-- RL_S_STORM -2557,3000:2500:2000:1500:1000,1000,0,0,0,2000,-1 +2557,3000:2500:2000:1500:1000,0,0,0,0,2000,-1 //-- RL_E_CHAIN -2558,0,500,0,45000:60000:75000:90000:105000:120000:135000:150000:165000:180000,0,5000,-1 +2558,0,1000,0,45000:60000:75000:90000:105000:120000:135000:150000:165000:180000,0,5000,-1 //-- RL_QD_SHOT 2559,0,1000,0,1500,0,5000,-1 //-- RL_C_MARKER 2560,0,0,0,30000,0,1000,-1 //-- RL_FIREDANCE -2561,1600:1500:1400:1200:1000,1500,0,0,0,5000,-1 +2561,0,2000,0,0,0,5000,-1 //-- RL_H_MINE -2562,2000,1500,0,30000,15000,5000:4500:4000:3500:3000,-1 +2562,1500,0,0,30000,15000,5000:4500:4000:3500:3000,500 //-- RL_P_ALTER 2563,0,1000,0,30000:45000:60000:75000:90000,0,5000,-1 //-- RL_FALLEN_ANGEL -2564,0,1500,0,0,0,4500:4000:3500:2500:2000,-1 +2564,500,1000,0,0,0,10000:8000:6000:4000:2000,500 //-- RL_R_TRIP -2565,0,1500,0,0,0,3000,-1 +2565,0,1000,0,0,0,1000,-1 //-- RL_D_TAIL -2566,2000,1500,0,0,0,5000,-1 +2566,500,2000,0,0,0,5000,500 //-- RL_FIRE_RAIN -2567,0,1500,0,100,0,5000,-1 +2567,1800:1600:1400:1200:1000,2000,0,100,0,5000,200 //-- RL_HEAT_BARREL 2568,0,1000,0,60000,10000,10000,-1 //-- RL_AM_BLAST -2569,2000,1500,0,0,6000:7000:8000:9000:10000,1000,1000 +2569,2000,1000,0,0,6000:7000:8000:9000:10000,5000,1000 //-- RL_SLUGSHOT -2570,5000:6000:7000:8000:9000,1000,0,2000,0,1500,1000 +2570,5000:6000:7000:8000:9000,1000,0,0,2000,10000,1000 //-- RL_HAMMER_OF_GOD -2571,3000,1000,0,0,3000:3000:4000:4000:5000,3000,-1 +2571,8000,2000,0,0,3000:3000:4000:4000:5000,30000,2000 //-- RL_R_TRIP_PLUSATK //2572,0,0,0,0,0,0,-1 //-- RL_B_FLICKER_ATK @@ -1685,7 +1691,7 @@ //2574,0,0,0,0,0,0,-1 //========================================== -//==== Kagerou & Oboro skills ============== +//==== Kagerou & Oboro Skills ============== //-- KO_YAMIKUMO 3001,0,0,0,200000,0,0,-1 //-- KO_JYUMONJIKIRI @@ -1693,35 +1699,35 @@ //-- KO_SETSUDAN 3005,0,0,0,0,0,3000,-1 //-- KO_BAKURETSU -3006,1000:1400:1800:2200:2600,1000,0,100,0,3000,0 +3006,1000:1400:1800:2200:2600,1000,0,100,0,3000,-1 //-- KO_HAPPOKUNAI 3007,0,500,0,0,0,0,-1 //-- KO_MUCHANAGE -3008,1000,0,0,100,0,10000,-1 +3008,1000,0,0,0,0,10000,-1 //-- KO_HUUMARANKA -3009,1000:1200:1400:1600:1800,1000,0,500,0,3000,-1 +3009,1000:1200:1400:1600:1800,1000,0,100,0,3000,-1 //-- KO_MAKIBISHI 3010,0,0,0,12000:14000:16000:18000:20000,2500:3000:3500:4000:4500,10000,-1 //-- KO_MEIKYOUSISUI -3011,3000,0,0,10000,0,10000,0 +3011,3000,0,0,10000,0,10000,-1 //-- KO_ZANZOU 3012,0,1000,0,27000:24000:21000:18000:15000,0,30000:27000:24000:21000:18000,-1 //-- KO_KYOUGAKU -3013,3000:2500:2000:1500:1000,1000,0,12000:14000:16000:18000:20000,0,10000,0 +3013,3000:2500:2000:1500:1000,1000,0,12000:14000:16000:18000:20000,0,10000,-1 //-- KO_JYUSATSU -3014,3000:2500:2000:1500:1000,1000,0,8000:10000:12000:14000:16000,0,10000,0 +3014,3000:2500:2000:1500:1000,1000,0,8000:10000:12000:14000:16000,0,10000,-1 //-- KO_KAHU_ENTEN -3015,2000,0,0,300000,0,0,0 +3015,2000,0,0,300000,0,0,-1 //-- KO_HYOUHU_HUBUKI -3016,2000,0,0,300000,0,0,0 +3016,2000,0,0,300000,0,0,-1 //-- KO_KAZEHU_SEIRAN -3017,2000,0,0,300000,0,0,0 +3017,2000,0,0,300000,0,0,-1 //-- KO_DOHU_KOUKAI -3018,2000,0,0,300000,0,0,0 +3018,2000,0,0,300000,0,0,-1 //-- KO_ZENKAI -3020,0,1000,0,10000,10000,0,0 +3020,0,1000,0,10000,0,0,-1 //-- KO_GENWAKU -3021,3000:2500:2000:1500:1000,1000,0,30000,0,10000,0 +3021,3000:2500:2000:1500:1000,1000,0,30000,0,10000,-1 //-- KO_IZAYOI 3022,0,0,0,30000:45000:60000:75000:90000,0,60000,-1 //-- KG_KAGEHUMI @@ -1752,7 +1758,7 @@ //========================================== //-- ALL_FULL_THROTTLE -5014,0,0,0,10000:15000:20000:25000:30000,10000,3000000,-1 +5014,0,0,0,10000:15000:20000:25000:30000,10000,1800000,-1 //===== Homunculus Skills ================== //-- HLIF_HEAL @@ -1770,9 +1776,11 @@ //-- HFLI_MOON 8009,0,0,2000,0,0,0,-1 //-- HFLI_FLEET -8010,0,0,0,60000:55000:50000:45000:40000,60000:70000:80000:90000:120000,0,-1 +8010,0,0,0,60000:55000:50000:45000:40000,60000:75000:90000:105000:120000,0,-1 //-- HFLI_SPEED -8011,0,0,0,60000:55000:50000:45000:40000,60000:70000:80000:90000:120000,0,-1 +8011,0,0,0,60000:55000:50000:45000:40000,60000:75000:90000:105000:120000,0,-1 +//-- HFLI_SBR44 +8012,0,1000,0,0,0,0,-1 //-- HVAN_CAPRICE 8013,0,2000:2200:2400:2600:2800,0,0,0,0,-1 //-- HVAN_CHAOTIC @@ -1784,7 +1792,7 @@ //-- MH_SUMMON_LEGION 8018,1600:1400:1200:1000:800,0,0,20000:30000:40000:50000:60000,0,0,400:600:800:1000:1200 //-- MH_NEEDLE_OF_PARALYZE -8019,1000:1100:1200:1300:1400,0,0,12000:14000:16000:18000:20000,0,0,500:400:300:200:100 +8019,1000:1100:1200:1300:1400,2000,0,12000:14000:16000:18000:20000,0,0,500:400:300:200:100 //-- MH_POISON_MIST 8020,500:700:900:1100:1300,0,0,12000:14000:16000:18000:20000,4000:6000:8000:10000:12000,0,500 //-- MH_PAIN_KILLER @@ -1796,49 +1804,49 @@ //-- MH_ERASER_CUTTER 8024,1000:1500:2000:2500:3000,2000,0,0,0,0,-1 //-- MH_XENO_SLASHER -8025,1500:2500:3500:4500:5500,5000,0,500,0,0,500 +8025,1500:2500:3500:4500:5500,5000,0,500,120000,0,500 //-- MH_SILENT_BREEZE 8026,1000:1200:1400:1600:1800,0,0,9000:12000:15000:18000:21000,0,0,1000:800:600:400:200 //-- MH_STYLE_CHANGE -//8027,0,0,0,0,0,0,0 +8027,0,1000,0,0,0,0,500 //-- MH_SONIC_CRAW -//8028,0,0,0,0,0,0,0 +8028,0,1000,0,0,0,0,-1 //-- MH_SILVERVEIN_RUSH -//8029,0,0,0,0,0,0,0 +8029,0,0,0,5000,0,2000,-1 //-- MH_MIDNIGHT_FRENZY -//8030,0,0,0,0,0,0,0 +8030,0,0,0,10000,0,2000,-1 //-- MH_STAHL_HORN -8031,800:600:400:200:0,0,0,5000,0,0,200:400:600:800:1000 +8031,800:600:400:200:0,3000,0,5000,0,0,200:400:600:800:1000 //-- MH_GOLDENE_FERSE 8032,1000:1200:1400:1600:1800,0,0,30000:45000:60000:75000:90000,0,0,-1 //-- MH_STEINWAND 8033,1000,0,0,30000:45000:60000:75000:90000,0,0,-1 //-- MH_HEILIGE_STANGE -8034,200:400:600:800:1000,0,0,0,0,0,1800:1600:1400:1200:1000 +8034,200:400:600:800:1000,5000,0,0,0,0,1800:1600:1400:1200:1000 //-- MH_ANGRIFFS_MODUS 8035,200:400:600:800:1000,0,0,30000:45000:60000:75000:90000,0,0,-1 //-- MH_TINDER_BREAKER -//8036,0,0,0,5000,0,0,0 +8036,1000,0,0,0,0,0,-1 //-- MH_CBC //8037,0,0,0,0,0,0,0 //-- MH_EQC -//8038,0,0,0,0,0,0,0 +8038,0,1000,0,0,0,0,-1 //-- MH_MAGMA_FLOW -8039,2000:2500:3000:3500:4000,0,0,30000:45000:60000:75000:90000,0,0,2000:1500:1000:500:-1 +8039,2000:2500:3000:3500:4000,1000,0,30000:45000:60000:75000:90000,0,0,2000:1500:1000:500:-1 //-- MH_GRANITIC_ARMOR -8040,6000:5500:5000:4500:4000,0,0,60000,0,0,1000 +8040,5000:4500:4000:3500:3000,1000,0,60000,0,0,1000 //-- MH_LAVA_SLIDE -8041,6000:5500:5000:4500:4000,0,0,12000:14000:16000:18000:20000,0,0,1000 +8041,5000:4500:4000:3500:3000,1000,0,12000:14000:16000:18000:20000,20000,0,1000 //-- MH_PYROCLASTIC -8042,5000:4500:4000:3500:3000,0,0,60000:90000:120000:150000:180000,0,0,1000 +8042,1000:1500:2000:2500:3000,1000,0,60000:90000:120000:150000:180000,0,0,200 //-- MH_VOLCANIC_ASH -8043,5000:4500:4000:3500:3000,0,0,12000:14000:16000:18000:20000,0,0,1000 +8043,4000:3500:3000:2500:2000,1000,0,12000:14000:16000:18000:20000,0,0,1000 //===== Mercenary Skills =================== //-- MS_MAGNUM 8202,0,1500,2000,2000,10000,0,0 //-- MS_BOWLINGBASH -8203,700,2500,0,0,0,0,0 +8203,400,2500,0,0,0,0,100 //-- MS_PARRYING 8204,0,0,0,15000:20000:25000:30000:35000:40000:45000:50000:55000:60000,0,0,0 //-- MS_REFLECTSHIELD @@ -1864,7 +1872,7 @@ //-- ML_BRANDISHSPEAR 8217,350,1200,0,0,0,0,350 //-- ML_SPIRALPIERCE -8218,150:250:350:450:500:500:500:500:500:500,2500,0,0,1000,0,150:250:350:450:500:500:500:500:500:500 +8218,150:250:350:450:500,2500,0,0,1000,0,150:250:350:450:500 //-- ML_DEFENDER 8219,0,800,0,180000,0,0,0 //-- ML_AUTOGUARD @@ -1907,7 +1915,7 @@ //-- EL_WATER_DROP 8405,0,0,0,-1,0,0,-1 //-- EL_WATER_BARRIER -8406,1000,0,0,15000,0,0,-1 +8406,0,0,0,15000,0,0,-1 //-- EL_WIND_STEP 8407,0,0,0,-1,0,0,-1 //-- EL_WIND_CURTAIN diff --git a/src/map/skill.c b/src/map/skill.c index 169238895e..48a0746240 100755 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -1443,8 +1443,10 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1 skill_castend_damage_id(src, bl, RA_WUGBITE, ((sd) ? pc_checkskill(sd, RA_WUGBITE) : skill_get_max(RA_WUGBITE)), tick, SD_ANIMATION); break; case RA_FIRINGTRAP: + sc_start4(src, bl, SC_BURNING, 50 + skill_lv * 10, skill_lv, 1000, src->id, 0, skill_get_time2(skill_id, skill_lv)); + break; case RA_ICEBOUNDTRAP: - sc_start(src,bl, (skill_id == RA_FIRINGTRAP) ? SC_BURNING:SC_FREEZING, 50 + 10 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv)); + sc_start(src, bl, SC_FREEZING, 50 + skill_lv * 10, skill_lv, skill_get_time2(skill_id, skill_lv)); break; case NC_PILEBUNKER: if( rnd()%100 < 25 + 15*skill_lv ) { @@ -1465,8 +1467,11 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1 sc_start4(src,bl, SC_BURNING, 20 + 10 * skill_lv, skill_lv, 1000, src->id, 0, skill_get_time2(skill_id, skill_lv)); break; case NC_COLDSLOWER: - sc_start(src,bl, SC_FREEZE, 10 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv)); - sc_start(src,bl, SC_FREEZING, 20 + 10 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv)); + // Status chances are applied officially through a check + // The skill first trys to give the frozen status to targets that are hit + sc_start(src, bl, SC_FREEZE, 10 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv)); + if (!tsc->data[SC_FREEZE]) // If it fails to give the frozen status, it will attempt to give the freezing status + sc_start(src, bl, SC_FREEZING, 20 + skill_lv * 10, skill_lv, skill_get_time2(skill_id, skill_lv)); break; case NC_POWERSWING: sc_start(src,bl, SC_STUN, 10, skill_lv, skill_get_time(skill_id, skill_lv)); @@ -1551,6 +1556,7 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1 tsc->data[SC_DANCEWITHWUG] || tsc->data[SC_SATURDAYNIGHTFEVER] || tsc->data[SC_LERADSDEW] || tsc->data[SC_MELODYOFSINK] || tsc->data[SC_BEYONDOFWARCRY] || tsc->data[SC_UNLIMITEDHUMMINGVOICE] ) && rnd()%100 < 4 * skill_lv + 2 * ((sd) ? pc_checkskill(sd, WM_LESSON) : skill_get_max(WM_LESSON)) + 10 * chorusbonus) { + status_change_start(src, bl, SC_STUN, 10000, skill_lv, 0, 0, 0, skill_get_time(skill_id,skill_lv), SCSTART_NOTICKDEF); status_change_end(bl, SC_DANCING, INVALID_TIMER); status_change_end(bl, SC_RICHMANKIM, INVALID_TIMER); status_change_end(bl, SC_ETERNALCHAOS, INVALID_TIMER); @@ -1591,7 +1597,7 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1 sc_start(src,bl, SC_CRYSTALIZE, rate, skill_lv, skill_get_time2(skill_id, skill_lv)); break; case SO_VARETYR_SPEAR: - sc_start(src,bl, SC_STUN, 5 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv)); + sc_start(src,bl, SC_STUN, 5 * skill_lv, skill_lv, skill_get_time(skill_id, skill_lv)); break; case GN_SLINGITEM_RANGEMELEEATK: if( sd ) { @@ -1639,7 +1645,7 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1 sc_start(src,bl, SC_STUN, 10 * skill_lv, skill_lv, skill_get_time2(skill_id,skill_lv)); break; case MH_LAVA_SLIDE: - if (tsc && !tsc->data[SC_BURNING]) sc_start4(src,bl, SC_BURNING, 10 * skill_lv, skill_lv, 1000, src->id, 0, skill_get_time(skill_id, skill_lv)); + sc_start4(src,bl, SC_BURNING, 10 * skill_lv, skill_lv, 1000, src->id, 0, skill_get_time2(skill_id, skill_lv)); break; case MH_STAHL_HORN: sc_start(src,bl, SC_STUN, (20 + 4 * (skill_lv-1)), skill_lv, skill_get_time(skill_id, skill_lv)); @@ -1658,7 +1664,7 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1 } break; case MH_XENO_SLASHER: - sc_start4(src,bl,SC_BLEEDING,10 * skill_lv,skill_lv,src->id,0,0,skill_get_time2(skill_id,skill_lv)); //@TODO need real duration + sc_start4(src, bl, SC_BLEEDING, skill_lv, skill_lv, src->id, 0, 0, skill_get_time2(skill_id, skill_lv)); break; case WL_HELLINFERNO: sc_start4(src,bl,SC_BURNING,55+5*skill_lv,skill_lv,1000,src->id,0,skill_get_time(skill_id,skill_lv)); @@ -3243,7 +3249,7 @@ int64 skill_attack (int attack_type, struct block_list* src, struct block_list * case RA_CLUSTERBOMB: case RA_FIRINGTRAP: case RA_ICEBOUNDTRAP: - dmg.dmotion = clif_skill_damage(src,bl,tick, dmg.amotion, dmg.dmotion, damage, dmg.div_, skill_id,flag&SD_LEVEL?-1:skill_lv, 5); + dmg.dmotion = clif_skill_damage(src, bl, tick, dmg.amotion, dmg.dmotion, damage, dmg.div_, skill_id, (flag&SD_LEVEL) ? -1 : skill_lv, 5); if( dsrc != src ) // avoid damage display redundancy break; case HT_LANDMINE: @@ -3875,31 +3881,28 @@ static int skill_timerskill(int tid, unsigned int tick, int id, intptr_t data) case WL_TETRAVORTEX_WATER: case WL_TETRAVORTEX_WIND: case WL_TETRAVORTEX_GROUND: + clif_skill_nodamage(src,target,skl->skill_id,skl->skill_lv,1); skill_attack(BF_MAGIC,src,src,target,skl->skill_id,skl->skill_lv,tick,skl->flag|SD_ANIMATION); skill_toggle_magicpower(src, skl->skill_id); // only the first hit will be amplify - if( skl->type >= 3 ) - { // Final Hit - if( !status_isdead(target) ) - { // Final Status Effect + if (skl->type >= 3) { // Final Hit + if (!status_isdead(target)) { // Final Status Effect int effects[4] = { SC_BURNING, SC_FREEZING, SC_BLEEDING, SC_STUN }, applyeffects[4] = { 0, 0, 0, 0 }, i, j = 0, k = 0; - for( i = 1; i <= 8; i = i + i ) - { - if( skl->x&i ) - { + for(i = 1; i <= 8; i = i + i) { + if (skl->x&i) { applyeffects[j] = effects[k]; j++; } k++; } - if( j ) - { + if (j) { i = applyeffects[rnd()%j]; - status_change_start(src,target, i, 10000, skl->skill_lv, + status_change_start(src, target, i, 10000, skl->skill_lv, (i == SC_BURNING ? 1000 : (i == SC_BLEEDING ? src->id : 0)), - (i == SC_BURNING ? src->id : 0), - 0, skill_get_time(WL_TETRAVORTEX,skl->skill_lv)+1, SCSTART_NONE); + (i == SC_BURNING ? src->id : 0), 0, + (i == SC_BURNING ? 15000 : (i == SC_FREEZING ? 40000 : + (i == SC_BLEEDING ? 120000 : 5000))), SCSTART_NONE); } } } @@ -5085,7 +5088,7 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint { int i; // Priority is to release SpellBook - if( sc && sc->data[SC_READING_SB] ) + if( sc && sc->data[SC_FREEZE_SP] ) { // SpellBook uint16 pres_skill_id, pres_skill_lv, point, s = 0; int spell[SC_MAXSPELLBOOK-SC_SPELLBOOK1 + 1]; @@ -5106,10 +5109,10 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, uint }else //something went wrong :( break; - if( sc->data[SC_READING_SB]->val2 > point ) - sc->data[SC_READING_SB]->val2 -= point; + if( sc->data[SC_FREEZE_SP]->val2 > point ) + sc->data[SC_FREEZE_SP]->val2 -= point; else // Last spell to be released - status_change_end(src, SC_READING_SB, INVALID_TIMER); + status_change_end(src, SC_FREEZE_SP, INVALID_TIMER); if( bl->type != BL_SKILL ) /* skill types will crash the client */ clif_skill_nodamage(src, bl, pres_skill_id, pres_skill_lv, 1); @@ -9288,8 +9291,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui status_change_end(bl, SC_HIDING, INVALID_TIMER); status_change_end(bl, SC_CLOAKING, INVALID_TIMER); status_change_end(bl, SC_CLOAKINGEXCEED, INVALID_TIMER); - sc_start(src,bl,type,100,skill_lv,skill_get_time(skill_id,skill_lv)); - sc_start(src,bl,SC_BLIND,53 + 2 * skill_lv,skill_lv,skill_get_time(skill_id,skill_lv)); + sc_start(src, bl, type, 100, skill_lv, skill_get_time(skill_id, skill_lv)); + sc_start(src, bl, SC_BLIND, 53 + 2 * skill_lv, skill_lv, skill_get_time2(skill_id, skill_lv)); } } else { clif_skill_nodamage(src, bl, skill_id, 0, 1); @@ -11742,8 +11745,7 @@ int skill_castend_pos2(struct block_list* src, int x, int y, uint16 skill_id, ui case SO_ELECTRICWALK: if( sc && sc->data[type] ) status_change_end(src,type,INVALID_TIMER); - clif_skill_nodamage(src, src ,skill_id, skill_lv, - sc_start2(src,src, type, 100, skill_id, skill_lv, skill_get_time(skill_id, skill_lv))); + sc_start2(src, src, type, 100, skill_id, skill_lv, skill_get_time(skill_id, skill_lv)); break; case KO_MAKIBISHI: @@ -12374,7 +12376,7 @@ struct skill_unit_group *skill_unitsetting(struct block_list *src, uint16 skill_ return NULL; val2 = sc->data[SC_POISONINGWEAPON]->val2; // Type of Poison val3 = sc->data[SC_POISONINGWEAPON]->val1; - limit = 4000 + 2000 * skill_lv; + limit = skill_get_time(skill_id, skill_lv); break; case GD_LEADERSHIP: case GD_GLORYWOUNDS: @@ -12402,6 +12404,10 @@ struct skill_unit_group *skill_unitsetting(struct block_list *src, uint16 skill_ case SO_WARMER: skill_clear_group(src, 8); break; + case SO_FIREWALK: + case SO_ELECTRICWALK: + limit = skill_get_time2(skill_id, skill_lv); + break; case GN_WALLOFTHORN: // Turns to Firewall if( flag&1 ) @@ -19004,7 +19010,7 @@ int skill_magicdecoy(struct map_session_data *sd, unsigned short nameid) { } // Warlock Spellbooks. [LimitLine/3CeAM] -void skill_spellbook (struct map_session_data *sd, unsigned short nameid) { +void skill_spellbook(struct map_session_data *sd, unsigned short nameid) { int i, max_preserve, skill_id, point; struct status_change *sc; @@ -19039,20 +19045,20 @@ void skill_spellbook (struct map_session_data *sd, unsigned short nameid) { max_preserve = 4 * pc_checkskill(sd, WL_FREEZE_SP) + status_get_int(&sd->bl) / 10 + sd->status.base_level / 10; point = skill_spellbook_db[i].point; - if( sc && sc->data[SC_READING_SB] ) { - if( (sc->data[SC_READING_SB]->val2 + point) > max_preserve ) { + if( sc && sc->data[SC_FREEZE_SP] ) { + if( (sc->data[SC_FREEZE_SP]->val2 + point) > max_preserve ) { clif_skill_fail(sd, WL_READING_SB, USESKILL_FAIL_SPELLBOOK_PRESERVATION_POINT, 0); return; } for(i = SC_MAXSPELLBOOK; i >= SC_SPELLBOOK1; i--){ // This is how official saves spellbook. [malufett] if( !sc->data[i] ){ - sc->data[SC_READING_SB]->val2 += point; // increase points + sc->data[SC_FREEZE_SP]->val2 += point; // increase points sc_start4(&sd->bl,&sd->bl, (sc_type)i, 100, skill_id, pc_checkskill(sd,skill_id), point, 0, INVALID_TIMER); break; } } } else { - sc_start2(&sd->bl,&sd->bl, SC_READING_SB, 100, 0, point, INVALID_TIMER); + sc_start2(&sd->bl,&sd->bl, SC_FREEZE_SP, 100, 0, point, INVALID_TIMER); sc_start4(&sd->bl,&sd->bl, SC_MAXSPELLBOOK, 100, skill_id, pc_checkskill(sd,skill_id), point, 0, INVALID_TIMER); } diff --git a/src/map/skill.h b/src/map/skill.h index 8a49da775a..d2db2b6913 100644 --- a/src/map/skill.h +++ b/src/map/skill.h @@ -438,12 +438,12 @@ int skill_clear_group(struct block_list *bl, int flag); void ext_skill_unit_onplace(struct skill_unit *unit, struct block_list *bl, unsigned int tick); int64 skill_unit_ondamaged(struct skill_unit *unit,int64 damage); -int skill_castfix( struct block_list *bl, uint16 skill_id, uint16 skill_lv); -int skill_castfix_sc( struct block_list *bl, int time); +int skill_castfix(struct block_list *bl, uint16 skill_id, uint16 skill_lv); +int skill_castfix_sc(struct block_list *bl, int time); #ifdef RENEWAL_CAST -int skill_vfcastfix( struct block_list *bl, double time, uint16 skill_id, uint16 skill_lv); +int skill_vfcastfix(struct block_list *bl, double time, uint16 skill_id, uint16 skill_lv); #endif -int skill_delayfix( struct block_list *bl, uint16 skill_id, uint16 skill_lv); +int skill_delayfix(struct block_list *bl, uint16 skill_id, uint16 skill_lv); // Skill conditions check and remove [Inkfish] bool skill_check_condition_castbegin(struct map_session_data *sd, uint16 skill_id, uint16 skill_lv); @@ -2030,7 +2030,7 @@ struct s_skill_spellbook_db { }; extern struct s_skill_spellbook_db skill_spellbook_db[MAX_SKILL_SPELLBOOK_DB]; extern unsigned short skill_spellbook_count; -void skill_spellbook (struct map_session_data *sd, unsigned short nameid); +void skill_spellbook(struct map_session_data *sd, unsigned short nameid); int skill_block_check(struct block_list *bl, enum sc_type type, uint16 skill_id); /** diff --git a/src/map/status.c b/src/map/status.c index 7904501496..3bba03cb11 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -12115,7 +12115,7 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data) status_change_end(bl, (sc_type)i, INVALID_TIMER); break; } - sc_timer_next(5000 + tick, status_change_timer, bl->id, data); + sc_timer_next(10000 + tick, status_change_timer, bl->id, data); return 0; case SC_ELECTRICSHOCKER: