diff options
Diffstat (limited to 'src/map/clif.cpp')
-rw-r--r-- | src/map/clif.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/map/clif.cpp b/src/map/clif.cpp index 3ec41ae..a5b02cd 100644 --- a/src/map/clif.cpp +++ b/src/map/clif.cpp @@ -3905,9 +3905,18 @@ void clif_parse_Restart(Session *s, dumb_ptr<map_session_data> sd) { pc_setstand(sd); pc_setrestartvalue(sd, 3); - pc_setpos(sd, sd->status.save_point.map_, - sd->status.save_point.x, sd->status.save_point.y, - BeingRemoveWhy::QUIT); + if (sd->bl_m->flag.get(MapFlag::RESAVE)) + { + pc_setpos(sd, sd->bl_m->resave.map_, + sd->bl_m->resave.x, sd->bl_m->resave.y, + BeingRemoveWhy::QUIT); + } + else + { + pc_setpos(sd, sd->status.save_point.map_, + sd->status.save_point.x, sd->status.save_point.y, + BeingRemoveWhy::QUIT); + } } break; case 0x01: |