From b3b97640f916a93e193e491b156877824649d25c Mon Sep 17 00:00:00 2001 From: skotlex Date: Mon, 29 May 2006 15:25:28 +0000 Subject: - 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 --- src/map/skill.c | 34 +++++++++++----------------------- 1 file changed, 11 insertions(+), 23 deletions(-) (limited to 'src/map/skill.c') 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(); -- cgit v1.2.3-60-g2f50