diff options
author | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2004-11-28 20:34:22 +0000 |
---|---|---|
committer | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2004-11-28 20:34:22 +0000 |
commit | 9deed641d8c485b858360e8f91b2fcb83368ec14 (patch) | |
tree | b61e629da44b8a6a767af5c8dfd06fec24528bb4 /src/map/skill.c | |
parent | 4a2c014e4eb9229ff61c3ff762c44d3bd21b7f7c (diff) | |
download | hercules-9deed641d8c485b858360e8f91b2fcb83368ec14.tar.gz hercules-9deed641d8c485b858360e8f91b2fcb83368ec14.tar.bz2 hercules-9deed641d8c485b858360e8f91b2fcb83368ec14.tar.xz hercules-9deed641d8c485b858360e8f91b2fcb83368ec14.zip |
Resubmitting changes from /trunk to /branches/stable =p
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@405 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index ed0521aec..dc708c906 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -2384,16 +2384,16 @@ int skill_castend_damage_id( struct block_list* src, struct block_list *bl,int s { struct status_change *sc_data = battle_get_sc_data(src); - if(!battle_config.finger_offensive_type) - skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag); - else { - skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag); - if(sd) { - for(i=1;i<sd->spiritball_old;i++) - skill_addtimerskill(src,tick+i*200,bl->id,0,0,skillid,skilllv,BF_WEAPON,flag); - sd->canmove_tick = tick + (sd->spiritball_old-1)*200; + if(!battle_config.finger_offensive_type) + skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag); + else { + skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag); + if(sd) { + for(i=1;i<sd->spiritball_old;i++) + skill_addtimerskill(src,tick+i*200,bl->id,0,0,skillid,skilllv,BF_WEAPON,flag); + sd->canmove_tick = tick + (sd->spiritball_old-1)*200; + } } - } if(sc_data && sc_data[SC_BLADESTOP].timer != -1) skill_status_change_end(src,SC_BLADESTOP,-1); } @@ -5965,14 +5965,16 @@ int skill_unit_onplace(struct skill_unit *src,struct block_list *bl,unsigned int int type=SkillStatusChangeTable[sg->skill_id]; if(sg->src_id == bl->id) break; - if(sc_data && sc_data[type].timer==-1) - skill_status_change_start(bl,type,sg->skill_lv,sg->val1,sg->val2, - (int)src,skill_get_time2(sg->skill_id,sg->skill_lv),0); - else if( (unit2=(struct skill_unit *)sc_data[type].val4) && unit2 != src ){ - if( unit2->group && DIFF_TICK(sg->tick,unit2->group->tick)>0 ) + if(sc_data) { + if (sc_data[type].timer==-1) skill_status_change_start(bl,type,sg->skill_lv,sg->val1,sg->val2, (int)src,skill_get_time2(sg->skill_id,sg->skill_lv),0); - ts->tick-=sg->interval; + else if( (unit2=(struct skill_unit *)sc_data[type].val4) && unit2 != src ){ + if( unit2->group && DIFF_TICK(sg->tick,unit2->group->tick)>0 ) + skill_status_change_start(bl,type,sg->skill_lv,sg->val1,sg->val2, + (int)src,skill_get_time2(sg->skill_id,sg->skill_lv),0); + ts->tick-=sg->interval; + } } } break; |