diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-08-30 14:11:23 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-08-30 14:11:23 +0000 |
commit | c3c791815f1a75df92a4a11bfb1f4410dc3c9d57 (patch) | |
tree | 6af9eba8445a5a462eff3a463587a687c0a78029 /src/map/skill.c | |
parent | c8db14a97b3d3ba0d8a255e57d941968e265ef1c (diff) | |
download | hercules-c3c791815f1a75df92a4a11bfb1f4410dc3c9d57.tar.gz hercules-c3c791815f1a75df92a4a11bfb1f4410dc3c9d57.tar.bz2 hercules-c3c791815f1a75df92a4a11bfb1f4410dc3c9d57.tar.xz hercules-c3c791815f1a75df92a4a11bfb1f4410dc3c9d57.zip |
- Updated HLIF_CHANGE to work as explained by Tharis -> It now adds 30*lv vit and 20*lv int, is dispelled on warp, and can-act delay is 5+5*lv minutes. Hp/Sp is no longer set to 10 after a forced expiration.
- Added instant skill unblock in skill_[merc/pc]block_start when the duration passed is less than 1.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8547 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 5b99b7722..0a6decf22 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -10738,6 +10738,11 @@ int skill_blockpc_start(struct map_session_data *sd, int skillid, int tick) if (skillid < 1 || skillid > MAX_SKILL) return -1; + if (tick < 1) { + sd->blockskill[skillid] = 0; + return -1; + } + sd->blockskill[skillid] = 1; return add_timer(gettick()+tick,skill_blockpc_end,sd->bl.id,skillid); } @@ -10755,7 +10760,7 @@ int skill_blockmerc_end (int tid, unsigned int tick, int id, int data) //[orn] int skill_blockmerc_start(struct homun_data *hd, int skillid, int tick) //[orn] { nullpo_retr (-1, hd); - + if (skillid >= GD_SKILLBASE) skillid = GD_SKILLRANGEMIN + skillid - GD_SKILLBASE; if (skillid >= HM_SKILLBASE) //[orn] @@ -10763,6 +10768,10 @@ int skill_blockmerc_start(struct homun_data *hd, int skillid, int tick) //[orn] if (skillid < 1 || skillid > MAX_SKILL) return -1; + if (tick < 1) { + hd->blockskill[skillid] = 0; + return -1; + } hd->blockskill[skillid] = 1; return add_timer(gettick()+tick,skill_blockmerc_end,hd->bl.id,skillid); } |