diff options
-rw-r--r-- | Changelog-Trunk.txt | 8 | ||||
-rw-r--r-- | src/map/skill.c | 15 |
2 files changed, 21 insertions, 2 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 80a8364b6..274ae4e2f 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,14 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/08/25
+ * The following skills will display a normal attack animation now:
+ NPC_WATERATTACK, NPC_GROUNDATTACK, NPC_FIREATTACK, NPC_WINDATTACK,
+ NPC_POISONATTACK, NPC_HOLYATTACK, NPC_DARKNESSATTACK,
+ NPC_TELEKINESISATTACK, NPC_SPLASHATTACK
+ * Skills that require a weapon and consume spirit spheres will no longer be
+ auto-tagged to require ammo. [Skotlex]
+ * Now MISC skills with delay 0 will also use the attack delay (if the skill
+ is tagged to do damage) [Skotlex]
* Added script commands roclass/eaclass to enable scripts to access eA's
job format. Read script_commands.txt and ea_job_system.txt for a more
complete explanation of how this job system works. [Skotlex]
diff --git a/src/map/skill.c b/src/map/skill.c index 320c50149..d930dd301 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -2037,6 +2037,15 @@ int skill_attack (int attack_type, struct block_list* src, struct block_list *ds case KN_AUTOCOUNTER: case NPC_CRITICALSLASH: + case NPC_WATERATTACK: + case NPC_GROUNDATTACK: + case NPC_FIREATTACK: + case NPC_WINDATTACK: + case NPC_POISONATTACK: + case NPC_HOLYATTACK: + case NPC_DARKNESSATTACK: + case NPC_TELEKINESISATTACK: + case NPC_SPLASHATTACK: case TF_DOUBLE: case GS_CHAINACTION: case SN_SHARPSHOOTING: @@ -7789,7 +7798,9 @@ int skill_isammotype (TBL_PC *sd, int skill) return ( (sd->status.weapon == W_BOW || (sd->status.weapon >= W_REVOLVER && sd->status.weapon <= W_GRENADE)) && skill != HT_PHANTASMIC && skill != GS_MAGICALBULLET && - skill_get_type(skill) == BF_WEAPON && !(skill_get_nk(skill)&NK_NO_DAMAGE) + skill_get_type(skill) == BF_WEAPON && + !(skill_get_nk(skill)&NK_NO_DAMAGE) && + !skill_get_spiritball(skill,1) //Assume spirit spheres are used as ammo instead. ); } @@ -8599,7 +8610,7 @@ int skill_delayfix (struct block_list *bl, int skill_id, int skill_lv) // instant cast attack skills depend on aspd as delay [celest] 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|BF_MISC) && !(skill_get_nk(skill_id)&NK_NO_DAMAGE)) time = status_get_adelay(bl); //Use attack delay as default delay. else time = battle_config.default_skill_delay; |