Fix unwanted mounting when closing taxi window

Closing the taxi map without selecting a destination now properly dismounts
the player. Previously, selectTaxiNode() would optimistically mount the
player, then closeTaxi() would only clear taxiWindowOpen_ without cleaning
up the mount state, leaving the player mounted.
This commit is contained in:
Kelsi 2026-02-09 01:08:39 -08:00
parent f9ba6aa1b0
commit 0ce23cf7bd

View file

@ -5357,6 +5357,17 @@ void GameHandler::handleActivateTaxiReply(network::Packet& packet) {
void GameHandler::closeTaxi() {
taxiWindowOpen_ = false;
// If we optimistically mounted during node selection, dismount now
if (taxiMountActive_ && mountCallback_) {
mountCallback_(0); // Dismount
}
taxiMountActive_ = false;
taxiMountDisplayId_ = 0;
// Clear any pending activation
taxiActivatePending_ = false;
onTaxiFlight_ = false;
}
void GameHandler::buildTaxiCostMap() {