diff options
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 19e84d791..ba8991e52 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -234,9 +234,7 @@ int SkillStatusChangeTable[]={ /* skill.hのenumのSC_***とあわせること */ SC_GOSPEL, /* 370- */ -1,-1,-1,-1,-1,-1,-1,-1, - SC_EDP, - -1, /* 380- */ SC_TRUESIGHT, @@ -1080,7 +1078,7 @@ int skill_additional_effect( struct block_list* src, struct block_list *bl,int s if(pc_steal_item(sd,bl)) clif_skill_nodamage(src,bl,TF_STEAL,skill2,1); else if (battle_config.display_snatcher_skill_fail) - clif_skill_fail(sd,skillid,0,0); // it's annoying! =p [Celest] + clif_skill_fail(sd,skillid,0,0); } // エンチャントデットリ?ポイズン(猛毒?果) if (sd && sd->sc_data[SC_EDP].timer != -1 && rand() % 10000 < sd->sc_data[SC_EDP].val2 * sc_def_vit) { @@ -1151,7 +1149,7 @@ int skill_additional_effect( struct block_list* src, struct block_list *bl,int s struct status_change *sc_data = battle_get_sc_data(bl); if(sc_data) { sc_data[SC_FREEZE].val3++; - if(sc_data[SC_FREEZE].val3 >= 3 && rand()%1000 < skilllv*sc_def_mdef/100) + if(sc_data[SC_FREEZE].val3 >= 3) skill_status_change_start(bl,SC_FREEZE,skilllv,0,0,0,skill_get_time2(skillid,skilllv),0); } } @@ -3592,11 +3590,11 @@ int skill_castend_nodamage_id( struct block_list *src, struct block_list *bl,int clif_skill_nodamage(src,bl,skillid,-1,1); if( tsc_data ){ if( tsc_data[sc].timer==-1 ) - /* 付加する */ - skill_status_change_start(bl,sc,skilllv,0,0,0,skill_get_time(skillid,skilllv),0); - else - /* 解除する */ - skill_status_change_end(bl, sc, -1); + /* 付加する */ + skill_status_change_start(bl,sc,skilllv,0,0,0,skill_get_time(skillid,skilllv),0); + else + /* 解除する */ + skill_status_change_end(bl, sc, -1); } } break; @@ -7343,7 +7341,9 @@ int skill_use_id( struct map_session_data *sd, int target_id, if( sd->opt1>0 ) return 0; if(sc_data){ - if(sc_data[SC_CHASEWALK].timer != -1) return 0; + // allow to use only Chasewalk [celest] + if(sc_data[SC_CHASEWALK].timer != -1 && skill_num != ST_CHASEWALK) + return 0; if(sc_data[SC_VOLCANO].timer != -1){ if(skill_num==WZ_ICEWALL) return 0; } |