diff options
| author | historia <[not public]> | 2026-06-22 01:54:28 -0400 |
|---|---|---|
| committer | historia <[not public]> | 2026-06-22 01:54:28 -0400 |
| commit | 7f07c7236578e1a7bcef0282ff9d7f5bf8c7c045 (patch) | |
| tree | 7f9182f6fc9ed44d4738bfc6758660d741ba88e7 /internal/game/cmd_look.go | |
| parent | a3ae1e6aad696f584d138d9363c05dedff136a65 (diff) | |
| download | thehouseoficarus-7f07c7236578e1a7bcef0282ff9d7f5bf8c7c045.tar.gz | |
fix: safespot fixes
Diffstat (limited to 'internal/game/cmd_look.go')
| -rw-r--r-- | internal/game/cmd_look.go | 32 |
1 files changed, 7 insertions, 25 deletions
diff --git a/internal/game/cmd_look.go b/internal/game/cmd_look.go index 4cc556a..903b32d 100644 --- a/internal/game/cmd_look.go +++ b/internal/game/cmd_look.go @@ -24,8 +24,8 @@ func (g *Game) doLook(sess *net.Session) { g.showRoomName(sess, p, room) g.showRoomDescription(sess, p, room) - g.showRoomMobs(sess, p, room) g.showRoomObjects(sess, p, room) + g.showRoomMobs(sess, p, room) g.showGroundItems(sess, p, room) g.showRoomExits(sess, p, room) g.showRoomPlayers(sess, p, room) @@ -104,7 +104,7 @@ func (g *Game) showRoomMobs(sess *net.Session, p *player.Player, room *world.Roo } mobLevel := mobCombatLevel(m) levelStr := g.levelColorize(sess, playerLevel, mobLevel, fmt.Sprintf("(level %d)", mobLevel)) - sess.WriteLine(fmt.Sprintf(" %s %s%s%s", g.colorize(sess, mobColor, displayName), levelStr, hp, desc)) + sess.WriteLine(fmt.Sprintf("%s %s%s%s", g.colorize(sess, mobColor, displayName), levelStr, hp, desc)) } } } @@ -128,7 +128,7 @@ func (g *Game) showRoomObjects(sess *net.Session, p *player.Player, room *world. continue } - if def.Hidden && (def.Safespot == nil || g.safespotTier(p) < def.Safespot.Tier) { + if def.Hidden { continue } @@ -136,24 +136,6 @@ func (g *Game) showRoomObjects(sess *net.Session, p *player.Player, room *world. continue } - if def.Hidden && def.Safespot != nil { - st := g.World.GetObjState(p.RoomID, objID, 0) - levelInfo := "" - if st != nil { - if st.SafespotLevel <= 0 && def.Safespot.RespawnTicks > 0 { - continue - } - if st.SafespotLevel <= 0 { - levelInfo = " (destroyed)" - } else if st.SafespotLevel < len(def.Safespot.Levels) { - levelInfo = " (degraded)" - } - } - sess.WriteLine(fmt.Sprintf(" %s that could provide cover.%s", - g.objColorize(sess, def, def.Name), levelInfo)) - continue - } - type instInfo struct { idx int depleted bool @@ -216,7 +198,7 @@ func (g *Game) showRoomObjects(sess *net.Session, p *player.Player, room *world. if showTimers && len(instances) > 0 && instances[0].quality > 0 { qualityTimer = fmt.Sprintf(" (Burning for %d more ticks)", instances[0].quality) } - sess.WriteLine(fmt.Sprintf(" %s%s%s", line, suffix, qualityTimer)) + sess.WriteLine(fmt.Sprintf("%s%s%s", line, suffix, qualityTimer)) } for _, ins := range timed { @@ -234,7 +216,7 @@ func (g *Game) showRoomObjects(sess *net.Session, p *player.Player, room *world. if showTimers { timer = fmt.Sprintf(" (despawn: %d/%d)", ins.sharedCur, ins.sharedMax) } - sess.WriteLine(fmt.Sprintf(" %s%s%s", line, tag, timer)) + sess.WriteLine(fmt.Sprintf("%s%s%s", line, tag, timer)) } for _, ins := range depleted { @@ -252,7 +234,7 @@ func (g *Game) showRoomObjects(sess *net.Session, p *player.Player, room *world. if showTimers { timer = fmt.Sprintf(" (respawns in %d ticks)", ins.respawnIn) } - sess.WriteLine(fmt.Sprintf(" %s (depleted)%s%s", line, tag, timer)) + sess.WriteLine(fmt.Sprintf("%s (depleted)%s%s", line, tag, timer)) } } } @@ -549,7 +531,7 @@ func (g *Game) doLookTarget(sess *net.Session, input string) { if realSt != nil { levelStr := "intact" if realSt.SafespotLevel <= 0 { - levelStr = "destroyed" + levelStr = fmt.Sprintf("intact (level %d/%d)", len(def.Safespot.Levels), len(def.Safespot.Levels)) } else if realSt.SafespotLevel < len(def.Safespot.Levels) { levelStr = fmt.Sprintf("degraded (level %d/%d)", realSt.SafespotLevel, len(def.Safespot.Levels)) } else { |
