summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-01 15:56:57 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-01 15:56:57 +0000
commita9397aeb5a7a50c1fae39dbacb40faeb0722f6ae (patch)
treebe977ec88a9f562f1d3f8b1ed2509ae507fa9d7c /src/map/skill.c
parentd9ef2dcf2cbc5fe59f8c22641760bada628f0810 (diff)
downloadhercules-a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae.tar.gz
hercules-a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae.tar.bz2
hercules-a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae.tar.xz
hercules-a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae.zip
- Modified Self Destruction, so that Marine Spheres in non-versus maps will hurt only enemies, while in all other situations this skill will hurt everyone around them.
- Expanded setting debuff_on_logout so that &1 removes negative buffs and &2 removes positive buffs. - Food status boosts will no longer end on death, but they will end when you respawn or logout. - Added battle config file status.conf, moved some settings from skill.conf and battle.conf to it since they are entirely Status-Change related. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8033 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 5e22f2624..42bbd62e3 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -4089,10 +4089,13 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
}
case NPC_SELFDESTRUCTION:
//Self Destruction hits everyone in range (allies+enemies)
+ //Except for Summoned Marine spheres on non-versus maps, where it's just enemy.
+ i = (md && md->special_state.ai == 2 && !map_flag_vs(src->m))?
+ BCT_ENEMY:BCT_ALL;
clif_skill_nodamage(src, src, skillid, -1, 1);
map_foreachinrange(skill_area_sub, bl,
skill_get_splash(skillid, skilllv), BL_CHAR,
- src, skillid, skilllv, tick, flag|BCT_ALL,
+ src, skillid, skilllv, tick, flag|i,
skill_castend_damage_id);
status_damage(src, src, sstatus->max_hp,0,0,1);
break;