From c66aee06130fdf82a95af36cbac5db33c0bdce79 Mon Sep 17 00:00:00 2001 From: Daanish Date: Thu, 26 Mar 2026 12:49:49 +0000 Subject: [PATCH] Add HUD class and integrate inventory background; update scene to draw HUD --- .gitignore | 1 + assets/images/inventory.aseprite | Bin 0 -> 3561 bytes assets/images/inventory.png | Bin 0 -> 6652 bytes game/hud.rb | 9 +++++++++ game/scene.rb | 4 ++++ 5 files changed, 14 insertions(+) create mode 100644 .gitignore create mode 100644 assets/images/inventory.aseprite create mode 100644 assets/images/inventory.png create mode 100644 game/hud.rb diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0ab1592 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.old.* \ No newline at end of file diff --git a/assets/images/inventory.aseprite b/assets/images/inventory.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..7fc1b7fc20cf7536f984e6c4826659667aab4378 GIT binary patch literal 3561 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 literal 0 HcmV?d00001 diff --git a/assets/images/inventory.png b/assets/images/inventory.png new file mode 100644 index 0000000000000000000000000000000000000000..605c893c6cb4cc5be83cbc461c11fa1fa72ed965 GIT binary patch literal 6652 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