|
@@ -650,7 +650,7 @@ void initChangeTables(void)
|
|
|
set_sc( RK_FIGHTINGSPIRIT , SC_FIGHTINGSPIRIT , EFST_FIGHTINGSPIRIT , SCB_WATK|SCB_ASPD );
|
|
|
set_sc( RK_ABUNDANCE , SC_ABUNDANCE , EFST_ABUNDANCE , SCB_NONE );
|
|
|
set_sc( RK_CRUSHSTRIKE , SC_CRUSHSTRIKE , EFST_CRUSHSTRIKE , SCB_NONE );
|
|
|
- set_sc_with_vfx( RK_DRAGONBREATH_WATER , SC_FREEZING , EFST_FROSTMISTY , SCB_ASPD|SCB_SPEED|SCB_DEF|SCB_DEF2 );
|
|
|
+ set_sc_with_vfx( RK_DRAGONBREATH_WATER , SC_FREEZING , EFST_FROSTMISTY , SCB_ASPD|SCB_SPEED|SCB_DEF );
|
|
|
|
|
|
/* GC Guillotine Cross */
|
|
|
set_sc_with_vfx( GC_VENOMIMPRESS, SC_VENOMIMPRESS , EFST_VENOMIMPRESS , SCB_NONE );
|
|
@@ -678,7 +678,7 @@ void initChangeTables(void)
|
|
|
|
|
|
/* Warlock */
|
|
|
add_sc( WL_WHITEIMPRISON , SC_WHITEIMPRISON );
|
|
|
- set_sc_with_vfx( WL_FROSTMISTY , SC_FREEZING , EFST_FROSTMISTY , SCB_ASPD|SCB_SPEED|SCB_DEF|SCB_DEF2 );
|
|
|
+ set_sc_with_vfx( WL_FROSTMISTY , SC_FREEZING , EFST_FROSTMISTY , SCB_ASPD|SCB_SPEED|SCB_DEF );
|
|
|
add_sc( WL_JACKFROST , SC_FREEZE );
|
|
|
set_sc( WL_MARSHOFABYSS , SC_MARSHOFABYSS , EFST_MARSHOFABYSS , SCB_AGI|SCB_DEX|SCB_SPEED );
|
|
|
set_sc( WL_RECOGNIZEDSPELL , SC_RECOGNIZEDSPELL , EFST_RECOGNIZEDSPELL , SCB_MATK);
|
|
@@ -696,7 +696,7 @@ void initChangeTables(void)
|
|
|
set_sc( RA_WUGBITE , SC_BITE , EFST_WUGBITE , SCB_NONE );
|
|
|
set_sc( RA_CAMOUFLAGE , SC_CAMOUFLAGE , EFST_CAMOUFLAGE , SCB_SPEED|SCB_DEF|SCB_DEF2 );
|
|
|
set_sc( RA_FIRINGTRAP , SC_BURNING , EFST_BURNT , SCB_MDEF );
|
|
|
- set_sc_with_vfx( RA_ICEBOUNDTRAP, SC_FREEZING , EFST_FROSTMISTY , SCB_SPEED|SCB_ASPD|SCB_DEF|SCB_DEF2 );
|
|
|
+ set_sc_with_vfx( RA_ICEBOUNDTRAP, SC_FREEZING , EFST_FROSTMISTY , SCB_SPEED|SCB_ASPD|SCB_DEF );
|
|
|
set_sc( RA_UNLIMIT , SC_UNLIMIT , EFST_UNLIMIT , SCB_DEF|SCB_DEF2|SCB_MDEF|SCB_MDEF2 );
|
|
|
|
|
|
/* Mechanic */
|
|
@@ -6444,7 +6444,7 @@ static defType status_calc_def(struct block_list *bl, struct status_change *sc,
|
|
|
if (sc->data[SC_FLING])
|
|
|
def -= def * (sc->data[SC_FLING]->val2)/100;
|
|
|
if( sc->data[SC_FREEZING] )
|
|
|
- def -= def * 10 / 100;
|
|
|
+ def -= def * (bl->type == BL_PC ? 30 : 10) / 100;
|
|
|
if( sc->data[SC_ANALYZE] )
|
|
|
def -= def * (14 * sc->data[SC_ANALYZE]->val1) / 100;
|
|
|
if( sc->data[SC_NEUTRALBARRIER] )
|
|
@@ -6531,8 +6531,6 @@ static signed short status_calc_def2(struct block_list *bl, struct status_change
|
|
|
+ def2 * ( sc->data[SC_JOINTBEAT]->val2&BREAK_WAIST ? 25 : 0 ) / 100;
|
|
|
if(sc->data[SC_FLING])
|
|
|
def2 -= def2 * (sc->data[SC_FLING]->val3)/100;
|
|
|
- if( sc->data[SC_FREEZING] )
|
|
|
- def2 -= def2 * 10 / 100;
|
|
|
if(sc->data[SC_ANALYZE])
|
|
|
def2 -= def2 * (14 * sc->data[SC_ANALYZE]->val1) / 100;
|
|
|
if(sc->data[SC_ASH])
|
|
@@ -6742,7 +6740,7 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
|
|
|
if( sc->data[SC_SKA] )
|
|
|
val = max( val, 25 );
|
|
|
if( sc->data[SC_FREEZING] )
|
|
|
- val = max( val, 50 );
|
|
|
+ val = max( val, 30 );
|
|
|
if( sc->data[SC_MARSHOFABYSS] )
|
|
|
val = max( val, sc->data[SC_MARSHOFABYSS]->val3 );
|
|
|
if( sc->data[SC_CAMOUFLAGE] && sc->data[SC_CAMOUFLAGE]->val1 > 2 )
|
|
@@ -6923,7 +6921,7 @@ static short status_calc_aspd(struct block_list *bl, struct status_change *sc, b
|
|
|
bonus -= 10;
|
|
|
}
|
|
|
if (sc->data[SC_FREEZING])
|
|
|
- bonus -= 15;
|
|
|
+ bonus -= 30;
|
|
|
if (sc->data[SC_HALLUCINATIONWALK_POSTDELAY])
|
|
|
bonus -= 50;
|
|
|
if (sc->data[SC_PARALYSE])
|
|
@@ -7103,7 +7101,7 @@ static short status_calc_aspd_rate(struct block_list *bl, struct status_change *
|
|
|
aspd_rate += 100;
|
|
|
}
|
|
|
if( sc->data[SC_FREEZING] )
|
|
|
- aspd_rate += 150;
|
|
|
+ aspd_rate += 300;
|
|
|
if( sc->data[SC_HALLUCINATIONWALK_POSTDELAY] )
|
|
|
aspd_rate += 500;
|
|
|
if( sc->data[SC_PARALYSE] )
|
|
@@ -8243,6 +8241,7 @@ int status_get_sc_def(struct block_list *src, struct block_list *bl, enum sc_typ
|
|
|
break;
|
|
|
case SC_FREEZING:
|
|
|
tick = max(tick, 6000); // Minimum duration 6s
|
|
|
+ // NEED AEGIS CHECK: might need to be 10s (http://ro.gnjoy.com/news/notice/View.asp?seq=5352)
|
|
|
break;
|
|
|
case SC_BURNING:
|
|
|
case SC_STASIS:
|