diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-12-02 01:49:27 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-12-02 01:49:27 +0000 |
commit | 80ee93f183303ccc188fdc587bd25330a192b4e6 (patch) | |
tree | 20633bcdda78d66281cfeea577d202132877f9f4 /src | |
parent | c9fa0221f3c171550b99772b2c3eafec0e02bbb8 (diff) | |
download | hercules-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.h | 2 | ||||
-rw-r--r-- | src/map/mob.c | 2 | ||||
-rw-r--r-- | src/map/npc.c | 4 | ||||
-rw-r--r-- | src/map/script.c | 8 |
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) |