- Again modified the delayfix function to reflect the current skill delay knowledge. Skills with 0 delay use amotion always (regardless of cast times)
- Renamed the config default_skill_delay to default_walk_delay as that is the only thing it does now. git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11446 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
3e5c810544
commit
49ee59c5cb
@ -3,6 +3,10 @@ Date Added
|
|||||||
AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
|
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.
|
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
|
2007/10/12
|
||||||
* Further updates to skill_delayfix function [Playtester]
|
* Further updates to skill_delayfix function [Playtester]
|
||||||
- aftercast delay can never be lower than amotion
|
- aftercast delay can never be lower than amotion
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
Date Added
|
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
|
2007/10/11
|
||||||
* Renamed import folder to import-tmpl [Playtester]
|
* Renamed import folder to import-tmpl [Playtester]
|
||||||
- new server owners please rename/copy it to import to use it
|
- new server owners please rename/copy it to import to use it
|
||||||
|
@ -36,12 +36,11 @@ delay_dependon_agi: no
|
|||||||
// Note: Setting this to anything above 0 can stop speedhacks.
|
// Note: Setting this to anything above 0 can stop speedhacks.
|
||||||
min_skill_delay_limit: 100
|
min_skill_delay_limit: 100
|
||||||
|
|
||||||
// Default skill delay for non-weapon based skills which have no delay specified.
|
// This delay is the min 'can't walk delay' of all skills.
|
||||||
// This delay is also the min can't walk delay of all skills.
|
|
||||||
// NOTE: Do not set this too low, if a character starts moving too soon after
|
// 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
|
// doing a skill, the client will not update this, and the player/mob will
|
||||||
// appear to "teleport" afterwards.
|
// appear to "teleport" afterwards.
|
||||||
default_skill_delay: 300
|
default_walk_delay: 300
|
||||||
|
|
||||||
//Completely disable skill delay of the following types (Note 3)
|
//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
|
//NOTE: By default mobs don't have the skill delay as specified in the skill
|
||||||
|
@ -3609,7 +3609,7 @@ static const struct _battle_data {
|
|||||||
{ "exp_bonus_attacker", &battle_config.exp_bonus_attacker, 25, 0, INT_MAX, },
|
{ "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, },
|
{ "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, },
|
{ "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, },
|
{ "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, },
|
{ "attack_walk_delay", &battle_config.attack_walk_delay, 0, 0, INT_MAX, },
|
||||||
{ "require_glory_guild", &battle_config.require_glory_guild, 0, 0, 1, },
|
{ "require_glory_guild", &battle_config.require_glory_guild, 0, 0, 1, },
|
||||||
|
@ -354,7 +354,7 @@ extern struct Battle_Config
|
|||||||
int exp_bonus_attacker;
|
int exp_bonus_attacker;
|
||||||
int exp_bonus_max_attacker;
|
int exp_bonus_max_attacker;
|
||||||
int min_skill_delay_limit;
|
int min_skill_delay_limit;
|
||||||
int default_skill_delay;
|
int default_walk_delay;
|
||||||
int no_skill_delay;
|
int no_skill_delay;
|
||||||
int attack_walk_delay;
|
int attack_walk_delay;
|
||||||
int require_glory_guild;
|
int require_glory_guild;
|
||||||
|
@ -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);
|
ud->canact_tick = tick + skill_delayfix(src, ud->skillid, ud->skilllv);
|
||||||
|
|
||||||
if (skill_get_state(ud->skillid) != ST_MOVE_ENABLE)
|
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)
|
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",
|
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);
|
src->type, src->id, ud->skillid, ud->skilllv, ud->skillx, ud->skilly);
|
||||||
unit_stop_walking(src,1);
|
unit_stop_walking(src,1);
|
||||||
ud->canact_tick = tick + skill_delayfix(src, ud->skillid, ud->skilllv);
|
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();
|
map_freeblock_lock();
|
||||||
skill_castend_pos2(src,ud->skillx,ud->skilly,ud->skillid,ud->skilllv,tick,0);
|
skill_castend_pos2(src,ud->skillx,ud->skilly,ud->skillid,ud->skilllv,tick,0);
|
||||||
@ -8868,10 +8868,7 @@ int skill_delayfix (struct block_list *bl, int skill_id, int skill_lv)
|
|||||||
if (time < 0)
|
if (time < 0)
|
||||||
time = -time + status_get_amotion(bl); // If set to <0, add to attack motion.
|
time = -time + status_get_amotion(bl); // If set to <0, add to attack motion.
|
||||||
else if (time == 0)
|
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
|
// Delay reductions
|
||||||
switch (skill_id)
|
switch (skill_id)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user