diff options
author | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2005-03-08 11:34:12 +0000 |
---|---|---|
committer | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2005-03-08 11:34:12 +0000 |
commit | c348cfa676c0cc54f1a1114c1b5654f97163f86c (patch) | |
tree | 586531155866a6d6dfadd780b4c88389fbf8e27a /src/map/skill.c | |
parent | a274ac2f3b93bca1632d7273503bdbe6d83c9af6 (diff) | |
download | hercules-c348cfa676c0cc54f1a1114c1b5654f97163f86c.tar.gz hercules-c348cfa676c0cc54f1a1114c1b5654f97163f86c.tar.bz2 hercules-c348cfa676c0cc54f1a1114c1b5654f97163f86c.tar.xz hercules-c348cfa676c0cc54f1a1114c1b5654f97163f86c.zip |
Updated Soul Breaker
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1214 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index d8ce713c6..0baadbb05 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -1236,6 +1236,7 @@ int skill_attack( int attack_type, struct block_list* src, struct block_list *ds struct Damage dmg; struct status_change *sc_data; int type,lv,damage; + static int tmpdmg = 0; if(skillid > 0 && skilllv <= 0) return 0; @@ -1440,6 +1441,13 @@ int skill_attack( int attack_type, struct block_list* src, struct block_list *ds case AS_SPLASHER: clif_skill_damage(dsrc,bl,tick,dmg.amotion,dmg.dmotion, damage, dmg.div_, skillid, -1, 5); break; + case ASC_BREAKER: // [celest] + if (attack_type&BF_MAGIC) { // only display damage for the 2nd attack + clif_skill_damage(dsrc, bl, tick, dmg.amotion, dmg.dmotion, damage+tmpdmg, dmg.div_, skillid, skilllv, type); + tmpdmg = 0; // clear the temporary damage + } else + tmpdmg = damage; // store the temporary weapon damage + break; case NPC_SELFDESTRUCTION: case NPC_SELFDESTRUCTION2: break; @@ -2156,13 +2164,19 @@ int skill_castend_damage_id( struct block_list* src, struct block_list *bl,int s // case PA_SACRIFICE: /* サクリファイス */ // case SN_SHARPSHOOTING: /* シャ?プシュ?ティング */ case CG_ARROWVULCAN: /* アロ?バルカン */ - case ASC_BREAKER: /* ソウルブレ?カ? */ +// case ASC_BREAKER: /* ソウルブレ?カ? */ case HW_MAGICCRASHER: /* マジッククラッシャ? */ case ASC_METEORASSAULT: /* メテオアサルト */ case ITM_TOMAHAWK: skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag); break; + case ASC_BREAKER: /* ソウルブレ?カ? */ // [DracoRPG] + // separate weapon and magic attacks + skill_attack(BF_WEAPON,src,src,bl,skillid,skilllv,tick,flag); + skill_attack(BF_MAGIC,src,src,bl,skillid,skilllv,tick,flag); + break; + case SN_SHARPSHOOTING: /* シャ?プシュ?ティング */ map_foreachinpath (skill_attack_area,src->m, // function, map src->x,src->y, // source xy |