From ba373553cbe10bd79f1a902d52f205439b32784f Mon Sep 17 00:00:00 2001 From: Noah Petherbridge Date: Sun, 27 Mar 2022 14:23:25 -0700 Subject: [PATCH] Prepare v0.12.0 for release --- Changes.md | 7 ++++++- cmd/doodad/commands/show.go | 5 +++++ pkg/branding/branding.go | 2 +- pkg/level/types.go | 2 +- pkg/main_scene.go | 22 ++++++++++++++++++++++ 5 files changed, 35 insertions(+), 3 deletions(-) diff --git a/Changes.md b/Changes.md index bc45bcc..1c89f50 100644 --- a/Changes.md +++ b/Changes.md @@ -1,6 +1,6 @@ # Changes -## v0.12.0 (TBD) +## v0.12.0 (March 27 2022) This update adds several new features to gameplay and the Level Editor. @@ -36,6 +36,11 @@ An update to the Level Editor's toolbar: On narrower screens with less real estate, it will use a single column when it fits better. +New levels: + +* An **Azulian Tag** levelpack has been added featuring two levels so + far of the Azulian Tag game mode. + New doodads: * A technical doodad for **Reset Level Timer** resets the timer to zero, diff --git a/cmd/doodad/commands/show.go b/cmd/doodad/commands/show.go index 4c02ace..6ed99a8 100644 --- a/cmd/doodad/commands/show.go +++ b/cmd/doodad/commands/show.go @@ -103,6 +103,11 @@ func showLevel(c *cli.Context, filename string) error { fmt.Printf(" Locked: %+v\n", lvl.Locked) fmt.Println("") + fmt.Println("Game Rules:") + fmt.Printf(" Difficulty: %s (%d)\n", lvl.GameRule.Difficulty, lvl.GameRule.Difficulty) + fmt.Printf(" Survival: %+v\n", lvl.GameRule.Survival) + fmt.Println("") + showPalette(lvl.Palette) fmt.Println("Level Settings:") diff --git a/pkg/branding/branding.go b/pkg/branding/branding.go index 325bb3e..cce9f57 100644 --- a/pkg/branding/branding.go +++ b/pkg/branding/branding.go @@ -9,7 +9,7 @@ import ( const ( AppName = "Sketchy Maze" Summary = "A drawing-based maze game" - Version = "0.11.0" + Version = "0.12.0" Website = "https://www.sketchymaze.com" Copyright = "2022 Noah Petherbridge" Byline = "a game by Noah Petherbridge." diff --git a/pkg/level/types.go b/pkg/level/types.go index 7626d1e..72876f5 100644 --- a/pkg/level/types.go +++ b/pkg/level/types.go @@ -62,7 +62,7 @@ type Level struct { // GameRule type GameRule struct { Difficulty enum.Difficulty `json:"difficulty"` - Survival bool `json:"survival"` + Survival bool `json:"survival,omitempty"` } // New creates a blank level object with all its members initialized. diff --git a/pkg/main_scene.go b/pkg/main_scene.go index 159d7dc..28173d0 100644 --- a/pkg/main_scene.go +++ b/pkg/main_scene.go @@ -59,6 +59,28 @@ type MainScene struct { landscapeMode bool } +/* +MakePhotogenic tweaks some variables to make a screenshotable title screen. + +This function is designed to be called from the developer shell: + + $ d.Scene.MakePhotogenic(true) + +It automates the pausing of lazy scroll and hiding of UI elements except +for just the title and version number. +*/ +func (s *MainScene) MakePhotogenic(v bool) { + if v { + s.PauseLazyScroll = true + s.ButtonFrame().Hide() + s.LabelHint().Hide() + } else { + s.PauseLazyScroll = false + s.ButtonFrame().Show() + s.LabelHint().Show() + } +} + // Name of the scene. func (s *MainScene) Name() string { return "Main"