summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt2
-rw-r--r--src/map/battle.c2
-rw-r--r--src/map/skill.c7
3 files changed, 5 insertions, 6 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 23096c3b1..f52bb0fb3 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -3,6 +3,8 @@ 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.
+09/05/23
+ * Splash attacks do cause additional effects except for autocasts. (bugreport:2661) [Inkfish]
09/05/22
* Fixed some behaviors of additional effects (bugreport:3100,bugreport:2661) [Inkfish]
- Coma can now be blocked by such skills as SafetyWall, Pneuma and Basilica.
diff --git a/src/map/battle.c b/src/map/battle.c
index 410413e7b..fb3bb0e25 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -939,7 +939,7 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo
wd.dmotion=tstatus->dmotion;
wd.blewcount=skill_get_blewcount(skill_num,skill_lv);
wd.flag = BF_WEAPON; //Initial Flag
- wd.flag|= skill_num?BF_SKILL:BF_NORMAL;
+ wd.flag |= (skill_num||wflag)?BF_SKILL:BF_NORMAL; // Baphomet card's splash damage is counted as a skill. [Inkfish]
wd.dmg_lv=ATK_DEF; //This assumption simplifies the assignation later
nk = skill_get_nk(skill_num);
flag.hit = nk&NK_IGNORE_FLEE?1:0;
diff --git a/src/map/skill.c b/src/map/skill.c
index 8baf27b95..6e387c533 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -550,8 +550,8 @@ int skill_additional_effect (struct block_list* src, struct block_list *bl, int
{
case 0: // Normal attacks (no skill used)
{
- if( !(attack_type&BF_WEAPON) )
- break; // If a normal attack is not a weapon attack, it's splash damage. [Inkfish]
+ if( attack_type&BF_SKILL )
+ break; // If a normal attack is a skill, it's splash damage. [Inkfish]
if(sd) {
// Automatic trigger of Blitz Beat
if (pc_isfalcon(sd) && sd->status.weapon == W_BOW && (skill=pc_checkskill(sd,HT_BLITZBEAT))>0 &&
@@ -1830,9 +1830,6 @@ int skill_attack (int attack_type, struct block_list* src, struct block_list *ds
ud->attackabletime = tick + type;
}
- if( !skillid && flag&1 )
- dmg.flag &= ~BF_WEAPON; // hack to make splash attack not trigger anything else.
-
if( !dmg.amotion )
{ //Instant damage
status_fix_damage(src,bl,damage,dmg.dmotion); //Deal damage before knockback to allow stuff like firewall+storm gust combo.