diff options
Diffstat (limited to 'src/map/atcommand.c')
-rw-r--r-- | src/map/atcommand.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/map/atcommand.c b/src/map/atcommand.c index de79ae0c4..8d4aa317f 100644 --- a/src/map/atcommand.c +++ b/src/map/atcommand.c @@ -1398,6 +1398,7 @@ ACMD(baselevelup) sd->status.base_level -= level; clif->message(fd, msg_fd(fd,22)); // Base level lowered. status_calc_pc(sd, SCO_FORCE); + level *= -1; } sd->status.base_exp = 0; clif->updatestatus(sd, SP_STATUSPOINT); @@ -1407,7 +1408,9 @@ ACMD(baselevelup) pc->baselevelchanged(sd); if(sd->status.party_id) party->send_levelup(sd); - npc->script_event(sd, NPCE_BASELVUP); // Trigger OnPCBaseLvUpEvent + + if (level > 0 && battle_config.atcommand_levelup_events) + npc->script_event(sd, NPCE_BASELVUP); // Trigger OnPCBaseLvUpEvent return true; } @@ -1450,6 +1453,7 @@ ACMD(joblevelup) else sd->status.skill_point -= level; clif->message(fd, msg_fd(fd,25)); // Job level lowered. + level *= -1; } sd->status.job_exp = 0; clif->updatestatus(sd, SP_JOBLEVEL); @@ -1457,7 +1461,9 @@ ACMD(joblevelup) clif->updatestatus(sd, SP_NEXTJOBEXP); clif->updatestatus(sd, SP_SKILLPOINT); status_calc_pc(sd, SCO_FORCE); - npc->script_event(sd, NPCE_JOBLVUP); // Trigger OnPCJobLvUpEvent + + if (level > 0 && battle_config.atcommand_levelup_events) + npc->script_event(sd, NPCE_JOBLVUP); // Trigger OnPCJobLvUpEvent return true; } |