From 8ea9f3079b7f85ccbd5831870d6d38ef88adfd07 Mon Sep 17 00:00:00 2001 From: ultramage Date: Fri, 15 May 2009 07:33:39 +0000 Subject: Removed the undocumented custom level feature from monster spawn lines (bugreport:3076). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13772 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog-Trunk.txt | 3 +++ src/map/map.h | 1 - src/map/mob.c | 5 ----- src/map/npc.c | 9 ++------- src/map/status.c | 6 +----- 5 files changed, 6 insertions(+), 18 deletions(-) diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 590fbffc2..7b904f45d 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -2,6 +2,9 @@ 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. + +09/05/15 + * Removed the undocumented custom level feature from monster spawn lines (bugreport:3076) [ultramage] 09/05/13 * Fixed combo wait was not canceled when TK's Kick skill was successfully used. (bugreport:1345) [Inkfish] * PNEUMA, BASILICA and SAFETYWALL no longer protect you from such negative status changes as COMA, STUN, FREEZE and etc. (bugreport:1346) [Inkfish] diff --git a/src/map/map.h b/src/map/map.h index 519138d1c..8aaccde2b 100644 --- a/src/map/map.h +++ b/src/map/map.h @@ -243,7 +243,6 @@ struct spawn_data { signed short xs,ys; unsigned short num; //Number of mobs using this structure unsigned short active; //Number of mobs that are already spawned (for mob_remove_damaged: no) - unsigned int level; //Custom level. unsigned int delay1,delay2; //Min delay before respawning after spawn/death struct { unsigned size :2; //Holds if mob has to be tiny/large diff --git a/src/map/mob.c b/src/map/mob.c index 0a774fe89..42e00b9ec 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -191,8 +191,6 @@ int mob_parse_dataset(struct spawn_data *data) memmove(data->eventname, data->eventname+1, i-1); } } - if (!data->level) - data->level = mob_db(data->class_)->lv; if(strcmp(data->name,"--en--")==0) strncpy(data->name,mob_db(data->class_)->name,NAME_LENGTH-1); @@ -221,8 +219,6 @@ struct mob_data* mob_spawn_dataset(struct spawn_data *data) md->special_state.size = data->state.size; if (data->eventname[0] && strlen(data->eventname) >= 4) memcpy(md->npc_event, data->eventname, 50); - md->level = data->level; - if(md->db->status.mode&MD_LOOTER) md->lootitem = (struct item *)aCalloc(LOOTITEM_SIZE,sizeof(struct item)); md->spawn_timer = INVALID_TIMER; @@ -2706,7 +2702,6 @@ int mob_summonslave(struct mob_data *md2,int *value,int amount,int skill_id) else strcpy(data.name,"--ja--"); - data.level = 0; if (!mob_parse_dataset(&data)) continue; diff --git a/src/map/npc.c b/src/map/npc.c index affa5838a..cab526151 100644 --- a/src/map/npc.c +++ b/src/map/npc.c @@ -2478,9 +2478,8 @@ void npc_parse_mob2(struct spawn_data* mob) static const char* npc_parse_mob(char* w1, char* w2, char* w3, char* w4, const char* start, const char* buffer, const char* filepath) { - int level, num, class_, mode, x,y,xs,ys, i,j; + int num, class_, mode, x,y,xs,ys, i,j; char mapname[32]; - char mobname[128]; struct spawn_data mob, *data; struct mob_db* db; @@ -2564,10 +2563,6 @@ static const char* npc_parse_mob(char* w1, char* w2, char* w3, char* w4, const c mob.delay2 = mob.delay2/100*battle_config.mob_spawn_delay; } - // parse MOB_NAME,[MOB LEVEL] - if (sscanf(w3, "%127[^,],%d", mobname, &level) > 1) - mob.level = level; - if(mob.delay1>0xfffffff || mob.delay2>0xfffffff) { ShowError("npc_parse_mob: wrong monsters spawn delays : %s %s (file '%s', line '%d').\n", w3, w4, filepath, strline(buffer,start-buffer)); return strchr(start,'\n');// skip and continue @@ -2579,7 +2574,7 @@ static const char* npc_parse_mob(char* w1, char* w2, char* w3, char* w4, const c else if (battle_config.override_mob_names==2) strcpy(mob.name,"--ja--"); else - strncpy(mob.name, mobname, NAME_LENGTH-1); + safestrncpy(mob.name, w3, sizeof(mob.name)); //Verify dataset. if( !mob_parse_dataset(&mob) ) diff --git a/src/map/status.c b/src/map/status.c index 3199e05f2..7b30ee37a 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -1351,7 +1351,6 @@ void status_calc_misc(struct block_list *bl, struct status_data *status, int lev //Skotlex: Calculates the initial status for the given mob //first will only be false when the mob leveled up or got a GuardUp level. -//first&2: Class-change invoked. int status_calc_mob(struct mob_data* md, int first) { struct status_data *status; @@ -1360,10 +1359,7 @@ int status_calc_mob(struct mob_data* md, int first) if(first) { //Set basic level on respawn. - if (md->spawn && !(first&2)) - md->level = md->spawn->level; - else - md->level = md->db->lv; // [Valaris] + md->level = md->db->lv; } //Check if we need custom base-status -- cgit v1.2.3-70-g09d2