summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-12-02 01:49:27 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-12-02 01:49:27 +0000
commit80ee93f183303ccc188fdc587bd25330a192b4e6 (patch)
tree20633bcdda78d66281cfeea577d202132877f9f4 /src
parentc9fa0221f3c171550b99772b2c3eafec0e02bbb8 (diff)
downloadhercules-80ee93f183303ccc188fdc587bd25330a192b4e6.tar.gz
hercules-80ee93f183303ccc188fdc587bd25330a192b4e6.tar.bz2
hercules-80ee93f183303ccc188fdc587bd25330a192b4e6.tar.xz
hercules-80ee93f183303ccc188fdc587bd25330a192b4e6.zip
- Fixed passive mobs becoming increasingly unlikely to retaliate to attacks after they got inflicted by a disabling status change.
- Changed the "is_boss" define to check for mode MD_BOSS instead of giving mvp exp. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9384 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r--src/map/battle.h2
-rw-r--r--src/map/mob.c2
-rw-r--r--src/map/npc.c4
-rw-r--r--src/map/script.c8
4 files changed, 6 insertions, 10 deletions
diff --git a/src/map/battle.h b/src/map/battle.h
index 6a137a4de..709cc3c78 100644
--- a/src/map/battle.h
+++ b/src/map/battle.h
@@ -75,7 +75,7 @@ int battle_getcurrentskill(struct block_list *bl);
#define BCT_SELF 0x010000
#define BCT_NEUTRAL 0x100000
-#define is_boss(bl) status_get_mexp(bl) // Can refine later [Aru]
+#define is_boss(bl) (status_get_mode(bl)&MD_BOSS) // Can refine later [Aru]
int battle_check_undead(int race,int element);
int battle_check_target(struct block_list *src, struct block_list *target,int flag);
diff --git a/src/map/mob.c b/src/map/mob.c
index b00d18aeb..92a0396ec 100644
--- a/src/map/mob.c
+++ b/src/map/mob.c
@@ -1079,7 +1079,7 @@ static int mob_ai_sub_hard(struct block_list *bl,va_list ap)
// Abnormalities
if((md->sc.opt1 > 0 && md->sc.opt1 != OPT1_STONEWAIT) || md->sc.data[SC_BLADESTOP].timer != -1)
{ //Should reset targets.
- md->target_id = md->attacked_id = 0;
+ md->target_id = md->attacked_id = md->attacked_players = 0;
return 0;
}
diff --git a/src/map/npc.c b/src/map/npc.c
index fe01a7ded..fbedef5da 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -2153,10 +2153,6 @@ static int npc_parse_function (char *w1, char *w2, char *w3, char *w4, char *fir
oldscript = (struct script_code *)strdb_get(user_db, p);
if(oldscript != NULL) {
printf("\r"); //Carriage return to clear the 'loading..' line. [Skotlex]
- //ShowWarning("parse_function: Duplicate user function [%s] (%s:%d)\n", p, file, *lines);
- //aFree(p);
- //script_free_code(script);
- // Experimental function overwriting - [Lance]
ShowInfo("parse_function: Overwriting user function [%s] (%s:%d)\n", p, file, *lines);
script_free_code(oldscript);
user_db->remove(user_db,str2key(p));
diff --git a/src/map/script.c b/src/map/script.c
index fee8efa5d..56547df55 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -10353,8 +10353,8 @@ int buildin_select(struct script_state *st)
clif_scriptmenu(sd,st->oid,buf);
aFree(buf);
} else if(sd->npc_menu==0xff){
- sd->state.menu_or_input=0;
- st->state=END;
+ sd->state.menu_or_input=0;
+ st->state=END;
} else {
//Skip empty menu entries which weren't displayed on the client (Skotlex)
for(i=st->start+2;i< (st->start+2+sd->npc_menu) && sd->npc_menu < (st->end-st->start-2);i++) {
@@ -10365,8 +10365,8 @@ int buildin_select(struct script_state *st)
pc_setreg(sd,add_str((unsigned char *) "@menu"),sd->npc_menu);
sd->state.menu_or_input=0;
push_val(st->stack,C_INT,sd->npc_menu);
- }
- return 0;
+ }
+ return 0;
}
int buildin_prompt(struct script_state *st)