summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-07-07 11:40:57 +0000
committerultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-07-07 11:40:57 +0000
commit56085534698fec2430c4fc8e659f079453824f0f (patch)
tree3fcdfa5ba6f039253ff462e1d08263aaa2bbf5e5 /src/map/skill.c
parent7c40f2f704fdb517c4c922cf24e4ba499cb3208d (diff)
downloadhercules-56085534698fec2430c4fc8e659f079453824f0f.tar.gz
hercules-56085534698fec2430c4fc8e659f079453824f0f.tar.bz2
hercules-56085534698fec2430c4fc8e659f079453824f0f.tar.xz
hercules-56085534698fec2430c4fc8e659f079453824f0f.zip
First attempt at implementing the official walk speed system
* separated speed modifiers into bonuses, penalties and other statuses * no bonuses stack, instead the maximum is taken * no penalties stack, instead the maximum is taken * Union, Riding and Pushcart are the only other statuses that stack * both bonuses and penalties are linear modifiers of the base walk speed * 'other' statuses are applied after bonuses and penalties Changed many equations to match official walk speed system * Steel Body now sets a fixed walk speed of 200 (bypassing everything else) * Defender now caps the walk speed to a minimum of 200 * Slow Grace now uses official equation for aspd/walk speed decrease * Pushcart's speed penalty is now halved * Free Cast now changes walk speed to a fixed value, bypassing bonuses and penalties * Wedding clothes now have a penalty of +100%, not +200% * rogue's Tunnel Drive and stalker's Chasewalk ignore all penalties * taekwon's Running is now 5% faster * Frenzy is now 5% faster * Gospel's offensive slowdown is now +75% instead of +33% * Quagmire now slows down by +50% instead of +100% * Gatling Fever now slows down by +100% instead of +33% * Cloaking modifier is now a bonus/penalty, depending on presence of wall * Longing for Freedom overrides the song/dance penalty (bugreport:416) * Bard/Dancer Spriit now properly affects song/dance penalty (bugreport:1019) * item-granted speedup no longer stacks with speed bonuses (topic:145019) * removed some status code that pre-calculated speed bonuses/penalties, to make calculations more localized and less messy (see song/dance code) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12923 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index ec0abc00f..ece5ca0af 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -6324,13 +6324,12 @@ struct skill_unit_group* skill_unitsetting (struct block_list *src, short skilli
}
break;
case DC_DONTFORGETME:
- val1 = 30*skilllv+status->dex; // ASPD decrease
- val2 = 100 -2*skilllv -status->agi/10; // Movement speed adjustment.
+ val1 = status->dex/10 + 3*skilllv + 5; // ASPD decrease
+ val2 = status->agi/10 + 3*skilllv + 5; // Movement speed adjustment.
if(sd){
- val1 += pc_checkskill(sd,DC_DANCINGLESSON); //TO-DO This is a guessed value
- val2 -= pc_checkskill(sd,DC_DANCINGLESSON); //TO-DO This is a guessed value
+ val1 += pc_checkskill(sd,DC_DANCINGLESSON);
+ val2 += pc_checkskill(sd,DC_DANCINGLESSON);
}
- if (val2 < 1) val2 = 1;
break;
case BA_APPLEIDUN:
val1 = 5+2*skilllv+status->vit/10; // MaxHP percent increase