diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-29 15:25:28 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-29 15:25:28 +0000 |
commit | b3b97640f916a93e193e491b156877824649d25c (patch) | |
tree | 447317f0af98e70d0b732ac3199c572e08b9af23 /src/map/skill.c | |
parent | e855e728ca6778580a913d8046a9e8fa652fb983 (diff) | |
download | hercules-b3b97640f916a93e193e491b156877824649d25c.tar.gz hercules-b3b97640f916a93e193e491b156877824649d25c.tar.bz2 hercules-b3b97640f916a93e193e491b156877824649d25c.tar.xz hercules-b3b97640f916a93e193e491b156877824649d25c.zip |
- Cleaned up some status_get functions.
- Optimized a bit the SC_PROVOKE code (to use val3/val4)
- Fixed draining when the amount drained is negative (invoke zap rather than heal)
- Implemented GS_FLING as per the current skill description.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6819 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 34 |
1 files changed, 11 insertions, 23 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index e9fd52854..5d416aa39 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -1318,19 +1318,9 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, int case NJ_HYOUSYOURAKU: sc_start(bl,SC_FREEZE,(10+10*skilllv),skilllv,skill_get_time2(skillid,skilllv)); break; - - //case GS_FLING: // this needs to be looked at [Reddozen] - // if (skill == GS_FLING) { // gunslinger [marquis007] - // int spiritball = (sd->spiritball > 5 ? 5 : sd->spiritball); - // } else { - // int spiritball = 1; - // } - // - // if (spiritball <= sd->spiritball && sd->spiritball != 0){ - // pc_delspiritball(sd,spiritball,0); - // status_change_start(bl,SC_FLING,10000,spiritball*5,0,0,0,skill_get_time(skillid,skilllv))); - // } - // break; + case GS_FLING: + sc_start(bl,SC_FLING,100, sd?sd->spiritball_old:5,skill_get_time(skillid,skilllv)); + break; } if (md && battle_config.summons_inherit_effects && md->master_id && md->special_state.ai) @@ -2946,15 +2936,13 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl,int s case NPC_DARKBREATH: clif_emotion(src,7); - skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag); - break; - - case SN_FALCONASSAULT: /* ファルコンアサルト */ - case PA_PRESSURE: /* プレッシャ? */ - case CR_ACIDDEMONSTRATION: // Acid Demonstration - case TF_THROWSTONE: /* ?ホ投げ */ - case NPC_SMOKING: /* スモ?キング */ - case NPC_SELFDESTRUCTION: /* 自爆 */ + case SN_FALCONASSAULT: + case PA_PRESSURE: + case CR_ACIDDEMONSTRATION: + case TF_THROWSTONE: + case NPC_SMOKING: + case NPC_SELFDESTRUCTION: + case GS_FLING: skill_attack(BF_MISC,src,src,bl,skillid,skilllv,tick,flag); break; @@ -3002,7 +2990,6 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl,int s case GS_RAPIDSHOWER: case GS_DUST: case GS_FULLBUSTER: - case GS_FLING: case NJ_SYURIKEN: case NJ_KUNAI: case NJ_HUUMA: @@ -5482,6 +5469,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in pc_delspiritball(sd,1,0); } break; + default: ShowWarning("skill_castend_nodamage_id: Unknown skill used:%d\n",skillid); map_freeblock_unlock(); |