From a51f7a53aa2c487ebf94ba0363038574ae8bb590 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Tue, 7 Jul 2026 00:22:32 -0400 Subject: feat: hidden exits (and related flags) work with commands that change room ids. exit code simplified and unified between impassable and blocked exits. --- internal/game/cmd_move.go | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) (limited to 'internal/game/cmd_move.go') diff --git a/internal/game/cmd_move.go b/internal/game/cmd_move.go index 3b9eeee..f236d67 100644 --- a/internal/game/cmd_move.go +++ b/internal/game/cmd_move.go @@ -31,16 +31,7 @@ func (g *Game) doMove(sess *net.Session, dir string, multiplier float64) { return } - if !p.GodMode && exitDef.AlwaysBlocked { - msg := exitDef.BlockedMessage - if msg == "" { - msg = fmt.Sprintf("The way %s is impassable.", exitDir) - } - sess.WriteLine(msg) - return - } - - if !p.GodMode && exitDef.Condition != nil && !g.checkCondition(sess, exitDef.Condition) { + if ed := g.exitDisplayState(sess, room.ID, exitDir, exitDef); ed.Blocked { msg := exitDef.BlockedMessage if msg == "" { msg = fmt.Sprintf("The way %s is blocked.", exitDir) -- cgit v1.2.3