From 6df1310bdc74339323575c0978c818b3c0f4c959 Mon Sep 17 00:00:00 2001 From: Daniele Verducci Date: Sat, 14 Jan 2023 10:02:47 +0100 Subject: [PATCH] Fix assets --- .../assets/texture_wall.png | Bin v2/raycaster.py | 9 +++------ v3/assets/texture_wall_brick.png | Bin 0 -> 24738 bytes .../assets}/texture_wall_brick_door_center.png | Bin .../assets}/texture_wall_brick_door_left.png | Bin .../assets}/texture_wall_brick_door_right.png | Bin v3/raycaster.py | 12 ++++++------ 7 files changed, 9 insertions(+), 12 deletions(-) rename assets/texture_wall_brick.png => v2/assets/texture_wall.png (100%) create mode 100644 v3/assets/texture_wall_brick.png rename {assets => v3/assets}/texture_wall_brick_door_center.png (100%) rename {assets => v3/assets}/texture_wall_brick_door_left.png (100%) rename {assets => v3/assets}/texture_wall_brick_door_right.png (100%) diff --git a/assets/texture_wall_brick.png b/v2/assets/texture_wall.png similarity index 100% rename from assets/texture_wall_brick.png rename to v2/assets/texture_wall.png diff --git a/v2/raycaster.py b/v2/raycaster.py index c3bb2df..02d5b81 100755 --- a/v2/raycaster.py +++ b/v2/raycaster.py @@ -21,12 +21,9 @@ MAP_WIN_HEIGHT = MAP_SIZE * MAP_SCALE # Textures cfg TEXTURES = [ - "../assets/texture_wall3.png", - "../assets/texture_wall3.png", - "../assets/texture_wall3.png", -# "../assets/texture.png", -# "../assets/texture.png", -# "../assets/texture.png", + "assets/texture_wall.png", + "assets/texture_wall.png", + "assets/texture_wall.png" ] TEXTURE_SIZE = 64 diff --git a/v3/assets/texture_wall_brick.png b/v3/assets/texture_wall_brick.png new file mode 100644 index 0000000000000000000000000000000000000000..298560816b317a7f29e3ba7e61342ad12dc5f1f0 GIT binary patch literal 24738 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