From 7a47a397c794a4df5f2877c551ff38c12465b511 Mon Sep 17 00:00:00 2001 From: "Laurent Alonso(fr)" Date: Wed, 27 May 2020 17:18:33 +0200 Subject: [PATCH] special[hack]: called the town's exit when leaving the town (instead of outdoor) --- src/game/boe.specials.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/game/boe.specials.cpp b/src/game/boe.specials.cpp index 5ebbd3a8..0429cdbc 100644 --- a/src/game/boe.specials.cpp +++ b/src/game/boe.specials.cpp @@ -1922,7 +1922,11 @@ void queue_special(eSpecCtx mode, eSpecCtxType which_type, spec_num_t spec, loca queued_special.type = which_type; queued_special.mode = mode; queued_special.trigger_time = univ.party.age; - special_queue.push(queued_special); + // FIXME: I forced calling the leave special just to avoid calling them outside, ie. with town_num=200 + if (mode==eSpecCtx::LEAVE_TOWN) + run_special(queued_special, nullptr, nullptr, nullptr); + else + special_queue.push(queued_special); } void run_special(pending_special_type spec, short* a, short* b, bool* redraw) {