diff options
| author | historia <[not public]> | 2026-07-06 23:05:04 -0400 |
|---|---|---|
| committer | historia <[not public]> | 2026-07-06 23:05:04 -0400 |
| commit | 9292634f2f8d71a53879ff07e1330c671b207d51 (patch) | |
| tree | dcffadf7f697e8ad0705d787d8f599bdeeedb812 /internal/game/look_target.go | |
| parent | 911aae15f4e869c93239ef7c630c61e1d9d4ef3f (diff) | |
| download | thehouseoficarus-9292634f2f8d71a53879ff07e1330c671b207d51.tar.gz | |
feat: split the concept of hidden and impassable exits. add player_flag for discovered hidden exits.
Diffstat (limited to 'internal/game/look_target.go')
| -rw-r--r-- | internal/game/look_target.go | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/internal/game/look_target.go b/internal/game/look_target.go index bf130be..ead38a7 100644 --- a/internal/game/look_target.go +++ b/internal/game/look_target.go @@ -26,6 +26,18 @@ func (g *Game) doLookTarget(sess *net.Session, input string) { sess.WriteLine("You can't see anything that way.") 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 exitDef.Hidden && !g.exitDiscovered(p, p.RoomID, exitDir) { + sess.WriteLine("You can't see anything that way.") + return + } if exitDef.Condition != nil && !g.checkCondition(sess, exitDef.Condition) { if !p.GodMode { msg := exitDef.BlockedMessage |
