From: Brendan Hansen Date: Mon, 7 Mar 2022 19:13:51 +0000 (-0600) Subject: updates X-Git-Url: https://git.brendanfh.com/?a=commitdiff_plain;h=50f5864a7ece2fcd59d5c10022d9d255c5cb618c;p=bar-game.git updates --- diff --git a/run_tree/assets/images/kitchen-background.png b/run_tree/assets/images/kitchen-background.png new file mode 100644 index 0000000..db48e9b Binary files /dev/null and b/run_tree/assets/images/kitchen-background.png differ diff --git a/run_tree/assets/images/spritesheet.png b/run_tree/assets/images/spritesheet.png index 5e02096..af1d3e9 100644 Binary files a/run_tree/assets/images/spritesheet.png and b/run_tree/assets/images/spritesheet.png differ diff --git a/run_tree/scenes/level1.scene b/run_tree/scenes/level1.scene index 0808b4a..8900186 100644 --- a/run_tree/scenes/level1.scene +++ b/run_tree/scenes/level1.scene @@ -2,7 +2,7 @@ id = 100 flags = 0 pos.x = 422.5000 -pos.y = 311.5000 +pos.y = 343.5000 size.x = 941.0000 size.y = 751.0000 :BackgroundComponent @@ -14,20 +14,6 @@ color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 -[Wall] -id = 10 -flags = 2 -pos.x = 192.0000 -pos.y = 104.0000 -size.x = 352.0000 -size.y = 16.0000 -:RenderComponent -layer = 0 -color.r = 0.2549 -color.g = 0.1720 -color.b = 0.0474 -color.a = 1.0000 - [Wall] id = 11 flags = 3 @@ -42,66 +28,6 @@ color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 -[Door] -id = 13 -flags = 3 -pos.x = 368.0000 -pos.y = 104.0000 -size.x = 160.0000 -size.y = 16.0000 -:DoorComponent -max_openness = 0.8000 -target_openness = 0.8000 -openness = 0.8000 -:RenderComponent -layer = 0 -color.r = 1.0000 -color.g = 1.0000 -color.b = 1.0000 -color.a = 1.0000 - -[Wall] -id = 25 -flags = 2 -pos.x = 408.0000 -pos.y = 8.0000 -size.x = 816.0000 -size.y = 16.0000 -:RenderComponent -layer = 0 -color.r = 1.0000 -color.g = 1.0000 -color.b = 1.0000 -color.a = 1.0000 - -[Wall] -id = 27 -flags = 2 -pos.x = 8.0000 -pos.y = 312.0000 -size.x = 16.0000 -size.y = 592.0000 -:RenderComponent -layer = 0 -color.r = 1.0000 -color.g = 1.0000 -color.b = 1.0000 -color.a = 1.0000 - -[Wall] -id = 28 -flags = 2 -pos.x = 792.0000 -pos.y = 312.0000 -size.x = 16.0000 -size.y = 592.0000 -:RenderComponent -layer = 0 -color.r = 1.0000 -color.g = 1.0000 -color.b = 1.0000 -color.a = 1.0000 - [Furniture] id = 30 flags = 2 @@ -426,6 +352,64 @@ color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 +[Wall] +id = 37 +flags = 2 +pos.x = 140.0000 +pos.y = -142.0000 +size.x = 16.0000 +size.y = 16.0000 +:RenderComponent +layer = 0 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Background] +id = 196 +flags = 0 +pos.x = 233.0000 +pos.y = 48.0000 +size.x = 432.0000 +size.y = 128.0000 +:BackgroundComponent +texture_path = "./assets/images/kitchen-background.png" +:RenderComponent +layer = 1 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Wall] +id = 10 +flags = 2 +pos.x = 216.0000 +pos.y = 104.0000 +size.x = 304.0000 +size.y = 16.0000 +:RenderComponent +layer = 2 +color.r = 0.2549 +color.g = 0.1720 +color.b = 0.0474 +color.a = 1.0000 + +[Wall] +id = 27 +flags = 2 +pos.x = 8.0000 +pos.y = 312.0000 +size.x = 16.0000 +size.y = 592.0000 +:RenderComponent +layer = 2 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + [Wall] id = 35 flags = 2 @@ -434,7 +418,7 @@ pos.y = 592.0000 size.x = 352.0000 size.y = 32.0000 :RenderComponent -layer = 0 +layer = 2 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 @@ -448,57 +432,71 @@ pos.y = 592.0000 size.x = 352.0000 size.y = 32.0000 :RenderComponent -layer = 0 +layer = 2 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Wall] -id = 37 +id = 28 flags = 2 -pos.x = 140.0000 -pos.y = -142.0000 +pos.x = 792.0000 +pos.y = 312.0000 size.x = 16.0000 +size.y = 592.0000 +:RenderComponent +layer = 2 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Wall] +id = 25 +flags = 2 +pos.x = 408.0000 +pos.y = 8.0000 +size.x = 816.0000 size.y = 16.0000 :RenderComponent -layer = 0 +layer = 2 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 -[Custom] -id = 14 -flags = 3 -pos.x = 240.0000 -pos.y = 32.0000 -size.x = 32.0000 +[Furniture] +id = 277 +flags = 2 +pos.x = 696.0000 +pos.y = 96.0000 +size.x = 16.0000 size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" -sprite.pos.x = 0.0000 +sprite.pos.x = 48.0000 sprite.pos.y = 32.0000 -sprite.size.x = 32.0000 +sprite.size.x = -16.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 -:DispenserComponent -item = "beer" -max_timeout = 2.0000 [Furniture] -id = 164 +id = 278 flags = 2 -pos.x = 536.0000 +pos.x = 696.0000 pos.y = 176.0000 size.x = 16.0000 size.y = 32.0000 @@ -507,26 +505,26 @@ furniture_type = 0 taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" -sprite.pos.x = 32.0000 +sprite.pos.x = 48.0000 sprite.pos.y = 32.0000 -sprite.size.x = 16.0000 +sprite.size.x = -16.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 165 +id = 279 flags = 2 -pos.x = 536.0000 -pos.y = 96.0000 +pos.x = 696.0000 +pos.y = 256.0000 size.x = 16.0000 size.y = 32.0000 :FurnitureComponent @@ -534,26 +532,26 @@ furniture_type = 0 taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" -sprite.pos.x = 32.0000 +sprite.pos.x = 48.0000 sprite.pos.y = 32.0000 -sprite.size.x = 16.0000 +sprite.size.x = -16.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 167 +id = 280 flags = 2 -pos.x = 136.0000 -pos.y = 416.0000 +pos.x = 696.0000 +pos.y = 336.0000 size.x = 16.0000 size.y = 32.0000 :FurnitureComponent @@ -561,25 +559,25 @@ furniture_type = 0 taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" -sprite.pos.x = 32.0000 +sprite.pos.x = 48.0000 sprite.pos.y = 32.0000 -sprite.size.x = 16.0000 +sprite.size.x = -16.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 168 +id = 281 flags = 2 -pos.x = 536.0000 +pos.x = 696.0000 pos.y = 416.0000 size.x = 16.0000 size.y = 32.0000 @@ -588,25 +586,25 @@ furniture_type = 0 taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" -sprite.pos.x = 32.0000 +sprite.pos.x = 48.0000 sprite.pos.y = 32.0000 -sprite.size.x = 16.0000 +sprite.size.x = -16.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 169 +id = 273 flags = 2 -pos.x = 560.0000 +pos.x = 672.0000 pos.y = 96.0000 size.x = 32.0000 size.y = 32.0000 @@ -624,16 +622,16 @@ sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 170 +id = 272 flags = 2 -pos.x = 560.0000 +pos.x = 672.0000 pos.y = 176.0000 size.x = 32.0000 size.y = 32.0000 @@ -651,17 +649,17 @@ sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 171 +id = 275 flags = 2 -pos.x = 560.0000 -pos.y = 416.0000 +pos.x = 672.0000 +pos.y = 256.0000 size.x = 32.0000 size.y = 32.0000 :FurnitureComponent @@ -678,17 +676,17 @@ sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 172 +id = 276 flags = 2 -pos.x = 160.0000 -pos.y = 416.0000 +pos.x = 672.0000 +pos.y = 336.0000 size.x = 32.0000 size.y = 32.0000 :FurnitureComponent @@ -705,44 +703,44 @@ sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 173 +id = 274 flags = 2 -pos.x = 584.0000 +pos.x = 672.0000 pos.y = 416.0000 -size.x = 16.0000 +size.x = 32.0000 size.y = 32.0000 :FurnitureComponent -furniture_type = 0 +furniture_type = 1 taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" sprite.pos.x = 48.0000 sprite.pos.y = 32.0000 -sprite.size.x = -16.0000 +sprite.size.x = 32.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 174 +id = 267 flags = 2 -pos.x = 584.0000 -pos.y = 176.0000 +pos.x = 648.0000 +pos.y = 96.0000 size.x = 16.0000 size.y = 32.0000 :FurnitureComponent @@ -750,26 +748,26 @@ furniture_type = 0 taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" -sprite.pos.x = 48.0000 +sprite.pos.x = 32.0000 sprite.pos.y = 32.0000 -sprite.size.x = -16.0000 +sprite.size.x = 16.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 175 +id = 268 flags = 2 -pos.x = 584.0000 -pos.y = 96.0000 +pos.x = 648.0000 +pos.y = 176.0000 size.x = 16.0000 size.y = 32.0000 :FurnitureComponent @@ -777,26 +775,26 @@ furniture_type = 0 taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" -sprite.pos.x = 48.0000 +sprite.pos.x = 32.0000 sprite.pos.y = 32.0000 -sprite.size.x = -16.0000 +sprite.size.x = 16.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 [Furniture] -id = 176 +id = 269 flags = 2 -pos.x = 184.0000 -pos.y = 416.0000 +pos.x = 648.0000 +pos.y = 256.0000 size.x = 16.0000 size.y = 32.0000 :FurnitureComponent @@ -804,29 +802,830 @@ furniture_type = 0 taken = false :SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" -sprite.pos.x = 48.0000 +sprite.pos.x = 32.0000 sprite.pos.y = 32.0000 -sprite.size.x = -16.0000 +sprite.size.x = 16.0000 sprite.size.y = 32.0000 sprite.color.r = 1.0000 sprite.color.g = 1.0000 sprite.color.b = 1.0000 sprite.color.a = 1.0000 :RenderComponent -layer = 0 +layer = 5 color.r = 1.0000 color.g = 1.0000 color.b = 1.0000 color.a = 1.0000 -[Custom] -id = 157 -flags = 3 -pos.x = 271.0000 -pos.y = 33.0000 -size.x = 32.0000 -size.y = 32.0000 -:SpriteRenderComponent +[Furniture] +id = 270 +flags = 2 +pos.x = 648.0000 +pos.y = 336.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 271 +flags = 2 +pos.x = 648.0000 +pos.y = 416.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 234 +flags = 2 +pos.x = 296.0000 +pos.y = 256.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = -16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 235 +flags = 2 +pos.x = 296.0000 +pos.y = 336.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = -16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 236 +flags = 2 +pos.x = 296.0000 +pos.y = 416.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = -16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 231 +flags = 2 +pos.x = 272.0000 +pos.y = 256.0000 +size.x = 32.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 1 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 32.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 233 +flags = 2 +pos.x = 272.0000 +pos.y = 336.0000 +size.x = 32.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 1 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 32.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 232 +flags = 2 +pos.x = 272.0000 +pos.y = 416.0000 +size.x = 32.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 1 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 32.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 230 +flags = 2 +pos.x = 248.0000 +pos.y = 416.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 229 +flags = 2 +pos.x = 248.0000 +pos.y = 336.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 228 +flags = 2 +pos.x = 248.0000 +pos.y = 256.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 164 +flags = 2 +pos.x = 536.0000 +pos.y = 176.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 165 +flags = 2 +pos.x = 536.0000 +pos.y = 96.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 167 +flags = 2 +pos.x = 136.0000 +pos.y = 416.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 168 +flags = 2 +pos.x = 536.0000 +pos.y = 416.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 32.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 169 +flags = 2 +pos.x = 560.0000 +pos.y = 96.0000 +size.x = 32.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 1 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 32.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 170 +flags = 2 +pos.x = 560.0000 +pos.y = 176.0000 +size.x = 32.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 1 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 32.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 171 +flags = 2 +pos.x = 560.0000 +pos.y = 416.0000 +size.x = 32.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 1 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 32.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 172 +flags = 2 +pos.x = 160.0000 +pos.y = 416.0000 +size.x = 32.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 1 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 32.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 173 +flags = 2 +pos.x = 584.0000 +pos.y = 416.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = -16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 174 +flags = 2 +pos.x = 584.0000 +pos.y = 176.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = -16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 175 +flags = 2 +pos.x = 584.0000 +pos.y = 96.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = -16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 176 +flags = 2 +pos.x = 184.0000 +pos.y = 416.0000 +size.x = 16.0000 +size.y = 32.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 48.0000 +sprite.pos.y = 32.0000 +sprite.size.x = -16.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 184 +flags = 2 +pos.x = 332.0000 +pos.y = 124.0000 +size.x = 24.0000 +size.y = 24.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 112.0000 +sprite.pos.y = 48.0000 +sprite.size.x = 16.0000 +sprite.size.y = 16.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 185 +flags = 2 +pos.x = 284.0000 +pos.y = 124.0000 +size.x = 24.0000 +size.y = 24.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 112.0000 +sprite.pos.y = 48.0000 +sprite.size.x = 16.0000 +sprite.size.y = 16.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 186 +flags = 2 +pos.x = 236.0000 +pos.y = 124.0000 +size.x = 24.0000 +size.y = 24.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 112.0000 +sprite.pos.y = 48.0000 +sprite.size.x = 16.0000 +sprite.size.y = 16.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 187 +flags = 2 +pos.x = 188.0000 +pos.y = 124.0000 +size.x = 24.0000 +size.y = 24.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 112.0000 +sprite.pos.y = 48.0000 +sprite.size.x = 16.0000 +sprite.size.y = 16.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Furniture] +id = 188 +flags = 2 +pos.x = 140.0000 +pos.y = 124.0000 +size.x = 24.0000 +size.y = 24.0000 +:FurnitureComponent +furniture_type = 0 +taken = false +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 112.0000 +sprite.pos.y = 48.0000 +sprite.size.x = 16.0000 +sprite.size.y = 16.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Custom] +id = 14 +flags = 3 +pos.x = 240.0000 +pos.y = 32.0000 +size.x = 32.0000 +size.y = 32.0000 +:SpriteRenderComponent +sprite.sheet = "./assets/images/spritesheet.png" +sprite.pos.x = 0.0000 +sprite.pos.y = 32.0000 +sprite.size.x = 32.0000 +sprite.size.y = 32.0000 +sprite.color.r = 1.0000 +sprite.color.g = 1.0000 +sprite.color.b = 1.0000 +sprite.color.a = 1.0000 +:RenderComponent +layer = 5 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 +:DispenserComponent +item = "beer" +max_timeout = 2.0000 + +[Door] +id = 13 +flags = 3 +pos.x = 368.0000 +pos.y = 104.0000 +size.x = 160.0000 +size.y = 16.0000 +:DoorComponent +max_openness = 0.8000 +target_openness = 0.8000 +openness = 0.8000 +:RenderComponent +layer = 10 +color.r = 1.0000 +color.g = 1.0000 +color.b = 1.0000 +color.a = 1.0000 + +[Custom] +id = 157 +flags = 3 +pos.x = 271.0000 +pos.y = 33.0000 +size.x = 32.0000 +size.y = 32.0000 +:SpriteRenderComponent sprite.sheet = "./assets/images/spritesheet.png" sprite.pos.x = 16.0000 sprite.pos.y = 0.0000 @@ -849,8 +1648,8 @@ max_timeout = 4.0000 [Player] id = 152 flags = 2 -pos.x = 277.7525 -pos.y = 229.4651 +pos.x = 392.0000 +pos.y = 232.0000 size.x = 16.0000 size.y = 32.0000 :MovementComponent @@ -865,7 +1664,7 @@ velocity.x = 0.0000 velocity.y = 0.0000 speed = 800.0000 :PlayerComponent -holding = 155 +holding = 0 :RenderComponent layer = 10 color.r = 1.0000 @@ -876,8 +1675,8 @@ color.a = 1.0000 [Player] id = 12 flags = 2 -pos.x = 374.4024 -pos.y = 300.0931 +pos.x = 344.0000 +pos.y = 232.0000 size.x = 16.0000 size.y = 32.0000 :MovementComponent @@ -887,12 +1686,12 @@ controls.left = 65 controls.right = 68 controls.interact = 70 controls.pick_up = 71 -facing = 4 -velocity.x = 0.0000 -velocity.y = 0.0000 +facing = 3 +velocity.x = -0.0015 +velocity.y = -0.0007 speed = 800.0000 :PlayerComponent -holding = 150 +holding = 0 :RenderComponent layer = 10 color.r = 0.0000 @@ -900,38 +1699,6 @@ color.g = 1.0000 color.b = 0.0000 color.a = 1.0000 -[Item_Entity] -id = 150 -flags = 2 -pos.x = 374.4024 -pos.y = 276.0931 -size.x = 16.0000 -size.y = 16.0000 -:RenderComponent -layer = 10 -color.r = 1.0000 -color.g = 1.0000 -color.b = 1.0000 -color.a = 1.0000 -:ItemComponent -item = "burger" - -[Item_Entity] -id = 155 -flags = 0 -pos.x = 277.7524 -pos.y = 205.4651 -size.x = 16.0000 -size.y = 16.0000 -:RenderComponent -layer = 10 -color.r = 1.0000 -color.g = 1.0000 -color.b = 1.0000 -color.a = 1.0000 -:ItemComponent -item = "beer" - [Entryway] id = 156 flags = 0 @@ -962,7 +1729,7 @@ spawned_size.y = 32.0000 enabled = true spawn_timeout_min = 5.0000 spawn_timeout_max = 10.0000 -spawn_timeout = 5.5170 +spawn_timeout = 1.0598 [Custom] id = 163 diff --git a/src/entity/components/player.onyx b/src/entity/components/player.onyx index dbf2a80..e5ac921 100644 --- a/src/entity/components/player.onyx +++ b/src/entity/components/player.onyx @@ -99,16 +99,20 @@ PlayerComponent :: struct { post_render :: (use this: ^PlayerComponent, entity: ^Entity) { if nearby_interact != Entity_Nothing { it := scene->get(nearby_interact); - r := it->get_rect(); - immediate_set_color(.{.2, .2, .8, .7}); - immediate_rectangle(r.x, r.y, r.w, r.h); + if it != null { + r := it->get_rect(); + immediate_set_color(.{.2, .2, .8, .7}); + immediate_rectangle(r.x, r.y, r.w, r.h); + } } if nearby_holding != Entity_Nothing && holding == Entity_Nothing { it := scene->get(nearby_holding); - r := it->get_rect(); - immediate_set_color(.{.2, .8, .2, .7}); - immediate_rectangle(r.x, r.y, r.w, r.h); + if it != null { + r := it->get_rect(); + immediate_set_color(.{.2, .8, .2, .7}); + immediate_rectangle(r.x, r.y, r.w, r.h); + } } } } diff --git a/src/entity/editor.onyx b/src/entity/editor.onyx index 7d123b3..ade6388 100644 --- a/src/entity/editor.onyx +++ b/src/entity/editor.onyx @@ -3,7 +3,7 @@ // Editor features to be added: // // - [x] Create new entity -// - [ ] Edit entity properties in UI +// - [x] Edit entity properties in UI // - [x] Serialize / Deserialize a scene // @@ -42,6 +42,7 @@ editor_update :: (dt: f32) { if is_key_just_up(GLFW_KEY_1) do clicked_tab = .File; if is_key_just_up(GLFW_KEY_2) do clicked_tab = .Edit; if is_key_just_up(GLFW_KEY_3) do clicked_tab = .Create; + if is_key_just_up(GLFW_KEY_4) do clicked_tab = .Actions; if is_key_just_up(GLFW_KEY_G) do editor_grid_shown = !editor_grid_shown; handle_clicking_tab(dt); @@ -275,6 +276,12 @@ editor_draw :: () { render_entity_list(x, y, w, h); } } + + case .Actions { + if draw_button(.{x, y, w, 40}, "Flush Textures") { + texture_cache_clear(); + } + } } } } @@ -601,6 +608,7 @@ editor_draw :: () { File; Edit; Create; + Actions; } active_tab := Tabs.Edit; diff --git a/src/entity/schematics/furniture.onyx b/src/entity/schematics/furniture.onyx index 1a7af35..06375a1 100644 --- a/src/entity/schematics/furniture.onyx +++ b/src/entity/schematics/furniture.onyx @@ -23,4 +23,4 @@ Furniture :: struct { return this; } -} \ No newline at end of file +} diff --git a/src/game.onyx b/src/game.onyx index 24a9a36..e11ab05 100644 --- a/src/game.onyx +++ b/src/game.onyx @@ -64,6 +64,9 @@ game_update :: (dt: f32) { } game_draw :: () { + @REMOVE @DEBUG + Spritesheet', _ := texture_lookup(#cstr "./assets/images/spritesheet.png"); + canvas_use(^scene_canvas); immediate_clear(.{0.15, 0.15, 0.2}); scene->draw(); diff --git a/src/gfx/immediate.onyx b/src/gfx/immediate.onyx index 6756fbe..8a96b18 100644 --- a/src/gfx/immediate.onyx +++ b/src/gfx/immediate.onyx @@ -162,11 +162,6 @@ immediate_set_scroll :: (scroll_x, scroll_y: f32) { immediate_get_scroll :: () => offset; -Color :: struct { - r, g, b : f32; - a := 1.0f; -} - Immediate_Vertex :: struct { pos: Vector2; tex: Vector2; diff --git a/src/gfx/texture.onyx b/src/gfx/texture.onyx index 0df03b8..289eb57 100644 --- a/src/gfx/texture.onyx +++ b/src/gfx/texture.onyx @@ -77,4 +77,12 @@ texture_wrap :: (use tex: ^Texture, wrap: Texture_Wrap) { glBindTexture(GL_TEXTURE_2D, texture); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, ~~ wrap); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, ~~ wrap); +} + +texture_cache_clear :: () { + for^ texture_cache.entries { + glDeleteTextures(1, ^it.value.texture); + } + + map.clear(^texture_cache); } \ No newline at end of file diff --git a/src/utils/colors.onyx b/src/utils/colors.onyx index 886387d..ab6231d 100644 --- a/src/utils/colors.onyx +++ b/src/utils/colors.onyx @@ -1,6 +1,11 @@ use package core +Color :: struct { + r, g, b : f32; + a := 1.0f; +} + color_to_hsl :: (c: Color) -> (h: f32, s: f32, l: f32) { r := c.r / 255; g := c.g / 255; @@ -47,4 +52,4 @@ hsl_to_color :: (h, s, l: f32) -> Color { g = (g + m) * 255; b = (b + m) * 255; return .{ r, g, b, 1 }; -} \ No newline at end of file +}