aboutsummaryrefslogtreecommitdiff
path: root/internal/game/cmd_dig.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/game/cmd_dig.go')
-rw-r--r--internal/game/cmd_dig.go10
1 files changed, 6 insertions, 4 deletions
diff --git a/internal/game/cmd_dig.go b/internal/game/cmd_dig.go
index 1497c34..c58ba63 100644
--- a/internal/game/cmd_dig.go
+++ b/internal/game/cmd_dig.go
@@ -63,7 +63,7 @@ func (g *Game) executeDig(sess *net.Session, args []string, rawInput string) {
sess.WriteLine("Error updating current room YAML.")
return
}
- if err := os.WriteFile(curPath, curData, 0644); err != nil {
+ if err := writeRoomFile(curPath, curData); err != nil {
sess.WriteLine("Error writing current room file.")
return
}
@@ -75,7 +75,9 @@ func (g *Game) executeDig(sess *net.Session, args []string, rawInput string) {
if ok {
conflictData, cerr := yaml.Marshal(conflictRoom)
if cerr == nil {
- os.WriteFile(conflictPath, conflictData, 0644)
+ if werr := writeRoomFile(conflictPath, conflictData); werr != nil {
+ sess.WriteLine(fmt.Sprintf("Warning: could not link the opposite exit in room %d: %v", conflictID, werr))
+ }
}
}
}
@@ -161,7 +163,7 @@ func (g *Game) executeDig(sess *net.Session, args []string, rawInput string) {
sess.WriteLine("Error creating directory.")
return
}
- if err := os.WriteFile(newPath, data, 0644); err != nil {
+ if err := writeRoomFile(newPath, data); err != nil {
sess.WriteLine("Error writing room file.")
return
}
@@ -174,7 +176,7 @@ func (g *Game) executeDig(sess *net.Session, args []string, rawInput string) {
sess.WriteLine("Error updating current room YAML.")
return
}
- if err := os.WriteFile(curPath, curData, 0644); err != nil {
+ if err := writeRoomFile(curPath, curData); err != nil {
sess.WriteLine("Error writing current room file.")
return
}