summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt4
-rw-r--r--conf/Changelog.txt3
-rw-r--r--conf/battle/skill.conf5
-rw-r--r--src/map/battle.c2
-rw-r--r--src/map/battle.h2
-rw-r--r--src/map/skill.c9
6 files changed, 14 insertions, 11 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 65bcc769f..b3748214b 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -3,6 +3,10 @@ Date Added
AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
+2007/10/13
+ * Again modified the delayfix function to reflect the current skill delay
+ knowledge. Skills with 0 delay use amotion always (regardless of cast
+ times) [Skotlex]
2007/10/12
* Further updates to skill_delayfix function [Playtester]
- aftercast delay can never be lower than amotion
diff --git a/conf/Changelog.txt b/conf/Changelog.txt
index 49bb90d0d..326854a4e 100644
--- a/conf/Changelog.txt
+++ b/conf/Changelog.txt
@@ -1,5 +1,8 @@
Date Added
+2007/10/13
+ * Renamed the config default_skill_delay to default_walk_delay as that is
+ the only thing it does now.
2007/10/11
* Renamed import folder to import-tmpl [Playtester]
- new server owners please rename/copy it to import to use it
diff --git a/conf/battle/skill.conf b/conf/battle/skill.conf
index a7ddc3cac..70bde1ba1 100644
--- a/conf/battle/skill.conf
+++ b/conf/battle/skill.conf
@@ -36,12 +36,11 @@ delay_dependon_agi: no
// Note: Setting this to anything above 0 can stop speedhacks.
min_skill_delay_limit: 100
-// Default skill delay for non-weapon based skills which have no delay specified.
-// This delay is also the min can't walk delay of all skills.
+// This delay is the min 'can't walk delay' of all skills.
// NOTE: Do not set this too low, if a character starts moving too soon after
// doing a skill, the client will not update this, and the player/mob will
// appear to "teleport" afterwards.
-default_skill_delay: 300
+default_walk_delay: 300
//Completely disable skill delay of the following types (Note 3)
//NOTE: By default mobs don't have the skill delay as specified in the skill
diff --git a/src/map/battle.c b/src/map/battle.c
index 7c22b3532..475787dd1 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -3609,7 +3609,7 @@ static const struct _battle_data {
{ "exp_bonus_attacker", &battle_config.exp_bonus_attacker, 25, 0, INT_MAX, },
{ "exp_bonus_max_attacker", &battle_config.exp_bonus_max_attacker, 12, 2, INT_MAX, },
{ "min_skill_delay_limit", &battle_config.min_skill_delay_limit, 100, 10, INT_MAX, },
- { "default_skill_delay", &battle_config.default_skill_delay, 300, 0, INT_MAX, },
+ { "default_walk_delay", &battle_config.default_walk_delay, 300, 0, INT_MAX, },
{ "no_skill_delay", &battle_config.no_skill_delay, BL_MOB, BL_NUL, BL_ALL, },
{ "attack_walk_delay", &battle_config.attack_walk_delay, 0, 0, INT_MAX, },
{ "require_glory_guild", &battle_config.require_glory_guild, 0, 0, 1, },
diff --git a/src/map/battle.h b/src/map/battle.h
index 855c92a6a..9bfd9efd3 100644
--- a/src/map/battle.h
+++ b/src/map/battle.h
@@ -354,7 +354,7 @@ extern struct Battle_Config
int exp_bonus_attacker;
int exp_bonus_max_attacker;
int min_skill_delay_limit;
- int default_skill_delay;
+ int default_walk_delay;
int no_skill_delay;
int attack_walk_delay;
int require_glory_guild;
diff --git a/src/map/skill.c b/src/map/skill.c
index 07952db59..b068a275c 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -5913,7 +5913,7 @@ int skill_castend_id (int tid, unsigned int tick, int id, int data)
ud->canact_tick = tick + skill_delayfix(src, ud->skillid, ud->skilllv);
if (skill_get_state(ud->skillid) != ST_MOVE_ENABLE)
- unit_set_walkdelay(src, tick, battle_config.default_skill_delay+skill_get_walkdelay(ud->skillid, ud->skilllv), 1);
+ unit_set_walkdelay(src, tick, battle_config.default_walk_delay+skill_get_walkdelay(ud->skillid, ud->skilllv), 1);
if(battle_config.skill_log && battle_config.skill_log&src->type)
ShowInfo("Type %d, ID %d skill castend id [id =%d, lv=%d, target ID %d)\n",
@@ -6080,7 +6080,7 @@ int skill_castend_pos (int tid, unsigned int tick, int id, int data)
src->type, src->id, ud->skillid, ud->skilllv, ud->skillx, ud->skilly);
unit_stop_walking(src,1);
ud->canact_tick = tick + skill_delayfix(src, ud->skillid, ud->skilllv);
- unit_set_walkdelay(src, tick, battle_config.default_skill_delay+skill_get_walkdelay(ud->skillid, ud->skilllv), 1);
+ unit_set_walkdelay(src, tick, battle_config.default_walk_delay+skill_get_walkdelay(ud->skillid, ud->skilllv), 1);
map_freeblock_lock();
skill_castend_pos2(src,ud->skillx,ud->skilly,ud->skillid,ud->skilllv,tick,0);
@@ -8868,11 +8868,8 @@ int skill_delayfix (struct block_list *bl, int skill_id, int skill_lv)
if (time < 0)
time = -time + status_get_amotion(bl); // If set to <0, add to attack motion.
else if (time == 0)
- time = battle_config.default_skill_delay; // Use default skill delay.
+ time = status_get_amotion(bl); // Use amotion
- if (time < status_get_amotion(bl))
- time = status_get_amotion(bl); // Delay can never be lower than attack motion.
-
// Delay reductions
switch (skill_id)
{ //Monk combo skills have their delay reduced by agi/dex.