Просмотр исходного кода

* Moved the mob killmonster flag to a more appropriate area. (bugreport:1795)

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12914 54d463be-8e91-2dee-dedb-b68131a5f0ec
sketchyphoenix 17 лет назад
Родитель
Сommit
263261d9f6
4 измененных файлов с 6 добавлено и 4 удалено
  1. 2 0
      Changelog-Trunk.txt
  2. 1 1
      src/map/mob.c
  3. 1 1
      src/map/mob.h
  4. 2 2
      src/map/script.c

+ 2 - 0
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.
 
+2008/07/05
+	* Moved the mob killmonster flag to a more appropriate area. (bugreport:1795) [SketchyPhoenix]
 2008/07/04
 	* Fixed AM_PHARMACY produce chances based on info gathered by flaviojs, aegis zone ep 11.2, of 20070629 [Brain/FlavioJS]
 	* Rev. 12911 Homunculus will no longer auto-vaporize on master death. [L0ne_W0lf]

+ 1 - 1
src/map/mob.c

@@ -2545,7 +2545,7 @@ int mob_dead(struct mob_data *md, struct block_list *src, int type)
 	if(md->nd)
 		mob_script_callback(md, src, CALLBACK_DEAD);
 	else
-	if(md->npc_event[0] && !md->npc_killmonster)
+	if(md->npc_event[0] && !md->state.npc_killmonster)
 	{
 		md->status.hp = 0; //So that npc_event invoked functions KNOW that I am dead.
 		if(src) 

+ 1 - 1
src/map/mob.h

@@ -112,6 +112,7 @@ struct mob_data {
 		unsigned spotted: 1;
 		unsigned char attacked_count; //For rude attacked.
 		int provoke_flag; // Celest
+		unsigned npc_killmonster: 1; //for new killmonster behavior
 	} state;
 	struct guardian_data* guardian_data; 
 	struct {
@@ -141,7 +142,6 @@ struct mob_data {
 	short skillidx;
 	unsigned int skilldelay[MAX_MOBSKILL];
 	char npc_event[50];
-	int npc_killmonster; //for new killmonster behavior
 };
 
 

+ 2 - 2
src/map/script.c

@@ -7473,7 +7473,7 @@ BUILDIN_FUNC(areamonster)
 	char *event=va_arg(ap,char *);
 	int allflag=va_arg(ap,int);
 
-	md->npc_killmonster = 1;
+	md->state.npc_killmonster = 1;
 	
 	if(!allflag){
 		if(strcmp(event,md->npc_event)==0)
@@ -7482,7 +7482,7 @@ BUILDIN_FUNC(areamonster)
 		if(!md->spawn)
 			status_kill(bl);
 	}
-	md->npc_killmonster = 0;
+	md->state.npc_killmonster = 0;
 	return 0;
 }
 static int buildin_killmonster_sub(struct block_list *bl,va_list ap)