diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index ecc69e9d6f..f9f5018a50 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,8 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. 2006/05/11 + * NPC_POWERUP and NPC_AGIUP now cause a increase in hit/flee (respectively) + of 40% per level. [Skotlex] * Changed a bit the MAX_ZENY checks in trade.c to prevent overflows. [Skotlex] * Rewrote npc_selllist for a more proper-clean implementation. [Skotlex] diff --git a/src/map/mob.c b/src/map/mob.c index d5c9da304a..ca06900499 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -289,7 +289,7 @@ int mob_once_spawn (struct map_session_data *sd, char *mapname, if (x <= 0 || y <= 0) { if (sd) - map_search_freecell(&sd->bl, 0, &x, &y, 1, 1, 0); + map_search_freecell(&sd->bl, m, &x, &y, 1, 1, 0); else if (!map_search_freecell(NULL, m, &x, &y, -1, -1, 1)) return 0; //Not solved? diff --git a/src/map/skill.c b/src/map/skill.c index 0d819e5baf..45bf21ecfd 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4955,15 +4955,10 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in case NPC_POWERUP: sc_start(bl,SC_INCATKRATE,100,40*skilllv,skill_get_time(skillid, skilllv)); -//From experience it appears powerup is more hit, not +all stats. - sc_start(bl,SC_INCDEX,100,25*skilllv,skill_get_time(skillid, skilllv)); -// sc_start(bl,SC_INCALLSTATUS,100,skilllv*5,skill_get_time(skillid, skilllv)); - clif_skill_nodamage(src,bl,skillid,skilllv,1); - break; - + //Power up is atkrate increase + hit% increase. case NPC_AGIUP: clif_skill_nodamage(src,bl,skillid,skilllv, - sc_start(bl,SC_INCAGI,100,10*skilllv,skill_get_time(skillid, skilllv))); + sc_start(bl,type,100,40*skilllv,skill_get_time(skillid, skilllv))); break; case NPC_INVISIBLE: diff --git a/src/map/status.c b/src/map/status.c index 0fb0ba64b4..db6adb7b5c 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -206,6 +206,8 @@ void initChangeTables(void) { set_sc(NPC_STOP, SC_STOP, SI_BLANK); set_sc(NPC_BREAKWEAPON, SC_BROKENWEAPON, SI_BROKENWEAPON); set_sc(NPC_BREAKARMOR, SC_BROKENARMOR, SI_BROKENARMOR); + set_sc(NPC_POWERUP, SC_INCHITRATE, SI_BLANK); + set_sc(NPC_AGIUP, SC_INCFLEERATE, SI_BLANK); set_sc(NPC_INVISIBLE, SC_CLOAKING, SI_CLOAKING); set_sc(LK_AURABLADE, SC_AURABLADE, SI_AURABLADE); set_sc(LK_PARRYING, SC_PARRYING, SI_PARRYING);