summaryrefslogtreecommitdiff
path: root/src/map
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-06 22:21:15 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-06 22:21:15 +0000
commit8917975ab0b4c3061992190ca7d6816789fe8ec8 (patch)
treecc61eeb7561a8f51224e74e25145eb624e299540 /src/map
parent709040c9f4fcaa51884f651e53f825face857b9d (diff)
downloadhercules-8917975ab0b4c3061992190ca7d6816789fe8ec8.tar.gz
hercules-8917975ab0b4c3061992190ca7d6816789fe8ec8.tar.bz2
hercules-8917975ab0b4c3061992190ca7d6816789fe8ec8.tar.xz
hercules-8917975ab0b4c3061992190ca7d6816789fe8ec8.zip
- Hopefully fixed for sure mobs getting extra stats when changing-class due to the mobs level up setting.
- Removed a piece of code that should no longer be needed due to the combo-skill setting - Added a status_check_skilluse call in Sightblaster to prevent it from hitting hidden/cloaked/act-dead/etc players. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7018 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r--src/map/skill.c5
-rw-r--r--src/map/status.c5
2 files changed, 3 insertions, 7 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 7433520bc..6bd7e0d4a 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -3155,11 +3155,6 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
return skill_castend_pos2(src,src->x,src->y,skillid,skilllv,tick,0);
}
- //Self skill with target changed? We assume these are offensive auto-select-target skills. [Skotlex]
- //But only do this on the first call (flag&~1)
- if (!(flag&1) && skill_get_inf(skillid)&INF_SELF_SKILL && src != bl && !(skill_get_nk(skillid)&NK_NO_DAMAGE))
- return skill_castend_damage_id (src, bl, skillid, skilllv, tick, flag);
-
if (skillid > 0 && skillid < MAX_SKILL)
type = SkillStatusChangeTable[skillid];
diff --git a/src/map/status.c b/src/map/status.c
index 7975f0a58..8a83455f0 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -1029,7 +1029,7 @@ int status_calc_mob(struct mob_data* md, int first)
if(first)
{ //Set basic level on respawn.
- if (md->spawn && !(flag&2))
+ if (md->spawn && !(first&2))
md->level = md->spawn->level;
else
md->level = md->db->lv; // [Valaris]
@@ -6124,7 +6124,8 @@ int status_change_timer_sub(struct block_list *bl, va_list ap )
break;
case SC_SIGHTBLASTER:
{
- if (sc && sc->count && sc->data[type].val2 > 0 && battle_check_target( src, bl, BCT_ENEMY ) > 0)
+ if (sc && sc->count && sc->data[type].val2 > 0 && battle_check_target( src, bl, BCT_ENEMY ) > 0 &&
+ status_check_skilluse(src, bl, WZ_SIGHTBLASTER, 2))
{ //sc_ check prevents a single round of Sight Blaster hitting multiple opponents. [Skotlex]
skill_attack(BF_MAGIC,src,src,bl,WZ_SIGHTBLASTER,1,tick,0);
sc->data[type].val2 = 0; //This signals it to end.