FEAT: reset layer frame count if missing layer image

This commit is contained in:
zomo
2026-04-15 22:54:44 -05:00
parent 1d5a891a71
commit 219423f2b3
+12 -5
View File
@@ -112,13 +112,13 @@ Splash2len=%d
// loop through folders
roomcredits := []string{}
for _, roomFolder := range roomFolders {
err := copyFolder(roomFolder, outpath)
err := copyFolder(&roomFolder, outpath)
if err != nil {
return fmt.Errorf("error copying folder %s: %+v", roomFolder.Path, err)
}
inistr.WriteString(roomFolder.Cfg.ToIni())
roomFolder, err = checkCredits(roomFolder);
err = checkCredits(&roomFolder);
if err != nil {
return fmt.Errorf("error checking credits in folder %s: %+v", roomFolder.Path, err)
}
@@ -146,7 +146,7 @@ Splash2len=%d
}
// doesn't error currently
func checkCredits(roomFolder RoomFolder) (RoomFolder, error) {
func checkCredits(roomFolder *RoomFolder) error {
if roomFolder.Cfg.name == "" {
log.Println("WARNING: room config has no name, defaulting to folder name")
foldername := filepath.Base(roomFolder.Path)
@@ -157,10 +157,10 @@ func checkCredits(roomFolder RoomFolder) (RoomFolder, error) {
log.Println("WARNING: room config has no credits")
}
return roomFolder, nil
return nil
}
func copyFolder(roomFolder RoomFolder, outpath string) error {
func copyFolder(roomFolder *RoomFolder, outpath string) error {
nightdir := fmt.Sprintf("NIGHT_%d", roomFolder.Cfg.night)
roomdir := fmt.Sprintf("ROOM_%d", roomFolder.Cfg.room)
@@ -234,6 +234,13 @@ func copyFolder(roomFolder RoomFolder, outpath string) error {
} else {
png.Encode(f, transparent)
}
// ensure layer_frames is 1 if it's not included
if strings.ToUpper(imagename) == "LAYER" && roomFolder.Cfg.layerFrames != 1 {
log.Printf( "WARNING: room was configured to have %d layer frames, but no LAYER image exists", roomFolder.Cfg.layerFrames)
log.Println("WARNING: setting layer_frames=1")
roomFolder.Cfg.layerFrames = 1
}
}
}