summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/map/pc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/map/pc.c b/src/map/pc.c
index f07d4583c..89263ba5f 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -405,7 +405,8 @@ int pc_setrestartvalue(struct map_session_data *sd,int type) {
if (type&1) { //Normal resurrection
status->hp = 1; //Otherwise status_heal may fail if dead.
status_heal(&sd->bl, b_status->hp, 0, 1);
- status_set_sp(&sd->bl, b_status->sp, 1);
+ if( status->sp < b_status->sp )
+ status_set_sp(&sd->bl, b_status->sp, 1);
} else { //Just for saving on the char-server (with values as if respawned)
sd->status.hp = b_status->hp;
sd->status.sp = (status->sp < b_status->sp)?b_status->sp:status->sp;