- Changed the default of multi_hit_delay from 230 to 80 which seems more official.

- Wedding recall skills are now blocked by the nomemo mapflag.
- Skill delay for weapon types is now based on adelay (ASPD) rather than amotion (ASPD/2)
- Removed ending Endure when casting Berserk, may fix the timer mismatch issues.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5963 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
skotlex 2006-04-09 05:50:43 +00:00
parent 1f0de23255
commit 3faa5d199f
6 changed files with 19 additions and 10 deletions

View File

@ -3,6 +3,15 @@ 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.
2006/04/09
* Changed the default of multi_hit_delay from 230 to 80 which seems more
official. [Skotlex]
* Wedding recall skills are now blocked by the nomemo mapflag instead of
nowarpto. [Skotlex]
* Skill delay for weapon types is now based on adelay (ASPD) rather than
amotion (ASPD/2) [Skotlex]
* Removed ending Endure when casting Berserk, may fix the timer mismatch
issues. [Skotlex
2006/04/08 2006/04/08
* Fixed skill_nocast_db reading so that when the same skill is specified * Fixed skill_nocast_db reading so that when the same skill is specified
multiple times, the blocked effects add up instead of replacing each other. multiple times, the blocked effects add up instead of replacing each other.

View File

@ -38,7 +38,9 @@ damage_walk_delay_rate: 100
// Move-delay adjustment for multi-hitting attacks. // Move-delay adjustment for multi-hitting attacks.
// When hit by a multi-hitting skill like Lord of Vermillion or Jupitel Thunder, characters will be // When hit by a multi-hitting skill like Lord of Vermillion or Jupitel Thunder, characters will be
// unable to move for an additional "(number of hits -1) * multihit_delay" milliseconds. // unable to move for an additional "(number of hits -1) * multihit_delay" milliseconds.
multihit_delay: 230 // 80 is the setting that feels like Aegis (vs Sonic Blows)
// 230 is the setting that makes walkdelay last until the last hit (vs Jupitel thunder)
multihit_delay: 80
// Damaged delay rate for players (Note 2) // Damaged delay rate for players (Note 2)
// (Setting to no/0 will be like always endure) // (Setting to no/0 will be like always endure)

View File

@ -3992,7 +3992,7 @@ void battle_set_defaults() {
battle_config.summons_inherit_effects=1; battle_config.summons_inherit_effects=1;
battle_config.pc_walk_delay_rate=20; battle_config.pc_walk_delay_rate=20;
battle_config.walk_delay_rate=100; battle_config.walk_delay_rate=100;
battle_config.multihit_delay=230; battle_config.multihit_delay=80;
battle_config.quest_skill_learn=0; battle_config.quest_skill_learn=0;
battle_config.quest_skill_reset=1; battle_config.quest_skill_reset=1;
battle_config.basic_skill_check=1; battle_config.basic_skill_check=1;

View File

@ -6476,7 +6476,7 @@ struct skill_unit_group *skill_unitsetting( struct block_list *src, int skillid,
case WE_CALLPARTNER: case WE_CALLPARTNER:
if (!sd) if (!sd)
return NULL; return NULL;
if (map[src->m].flag.nowarpto) { if (map[src->m].flag.nomemo) {
clif_skill_teleportmessage(sd,1); clif_skill_teleportmessage(sd,1);
return NULL; return NULL;
} }
@ -6485,7 +6485,7 @@ struct skill_unit_group *skill_unitsetting( struct block_list *src, int skillid,
case WE_CALLPARENT: case WE_CALLPARENT:
if (!sd) if (!sd)
return NULL; return NULL;
if (map[src->m].flag.nowarpto) { if (map[src->m].flag.nomemo) {
clif_skill_teleportmessage(sd,1); clif_skill_teleportmessage(sd,1);
return NULL; return NULL;
} }
@ -6495,7 +6495,7 @@ struct skill_unit_group *skill_unitsetting( struct block_list *src, int skillid,
case WE_CALLBABY: case WE_CALLBABY:
if (!sd) if (!sd)
return NULL; return NULL;
if (map[src->m].flag.nowarpto) { if (map[src->m].flag.nomemo) {
clif_skill_teleportmessage(sd,1); clif_skill_teleportmessage(sd,1);
return NULL; return NULL;
} }
@ -8334,11 +8334,11 @@ int skill_delayfix(struct block_list *bl, int skill_id, int skill_lv)
// instant cast attack skills depend on aspd as delay [celest] // instant cast attack skills depend on aspd as delay [celest]
if (time == 0) { if (time == 0) {
if (skill_get_type(skill_id) == BF_WEAPON && !(skill_get_nk(skill_id)&NK_NO_DAMAGE)) if (skill_get_type(skill_id) == BF_WEAPON && !(skill_get_nk(skill_id)&NK_NO_DAMAGE))
time = status_get_amotion(bl); //Use attack animation as default delay. time = status_get_adelay(bl); //Use attack delay as default delay.
else else
time = 300; // default delay, according to official servers time = 300; // default delay, according to official servers
} else if (time < 0) } else if (time < 0)
time = -time + status_get_amotion(bl); // if set to <0, the attack motion is added. time = -time + status_get_adelay(bl); // if set to <0, the attack delay is added.
if (battle_config.delay_dependon_dex && !(delaynodex&1)) if (battle_config.delay_dependon_dex && !(delaynodex&1))
{ // if skill casttime is allowed to be reduced by dex { // if skill casttime is allowed to be reduced by dex

View File

@ -3847,8 +3847,6 @@ int status_change_start(struct block_list *bl,int type,int rate,int val1,int val
status_change_end(bl,SC_CONCENTRATION,-1); status_change_end(bl,SC_CONCENTRATION,-1);
if (sc->data[SC_PARRYING].timer != -1) if (sc->data[SC_PARRYING].timer != -1)
status_change_end(bl,SC_PARRYING,-1); status_change_end(bl,SC_PARRYING,-1);
if (sc->data[SC_ENDURE].timer != -1)
status_change_end(bl,SC_ENDURE,-1);
if (sc->data[SC_AURABLADE].timer != -1) if (sc->data[SC_AURABLADE].timer != -1)
status_change_end(bl,SC_AURABLADE,-1); status_change_end(bl,SC_AURABLADE,-1);
} }

View File

@ -55,7 +55,7 @@ enum {
SC_BROKENARMOR, //50 - NOTE: These two aren't used anywhere, and they have an icon... SC_BROKENARMOR, //50 - NOTE: These two aren't used anywhere, and they have an icon...
SC_BROKENWEAPON, SC_BROKENWEAPON,
SC_HALLUCINATION, SC_HALLUCINATION,
SC_WEIGHT50 , SC_WEIGHT50,
SC_WEIGHT90, SC_WEIGHT90,
SC_ASPDPOTION0, SC_ASPDPOTION0,
SC_ASPDPOTION1, SC_ASPDPOTION1,