summaryrefslogtreecommitdiff
path: root/src/map/script-call.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/script-call.cpp')
-rw-r--r--src/map/script-call.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/map/script-call.cpp b/src/map/script-call.cpp
index a669b59..fbb9b97 100644
--- a/src/map/script-call.cpp
+++ b/src/map/script-call.cpp
@@ -882,20 +882,25 @@ void run_script_main(ScriptState *st, Borrowed<const ScriptBuffer> rootscript)
abort();
}
}
+ dumb_ptr<map_session_data> sd = map_id2sd(st->rid);
switch (st->state)
{
case ScriptEndState::STOP:
+ if (sd && sd->npc_id == st->oid)
+ sd->state.npc_dialog_mes = 0;
break;
case ScriptEndState::END:
- {
- dumb_ptr<map_session_data> sd = map_id2sd(st->rid);
st->scriptp.code = None;
st->scriptp.pos = -1;
if (sd && sd->npc_id == st->oid)
+ {
+ sd->state.npc_dialog_mes = 0;
npc_event_dequeue(sd);
- }
+ }
break;
case ScriptEndState::RERUNLINE:
+ if (sd && sd->npc_id == st->oid)
+ sd->state.npc_dialog_mes = 0;
st->scriptp.pos = rerun_pos;
break;
}