diff --git a/Content/Blueprints/BP_FireworkBase.uasset b/Content/Blueprints/BP_FireworkBase.uasset index 187c16b..d21c75e 100644 Binary files a/Content/Blueprints/BP_FireworkBase.uasset and b/Content/Blueprints/BP_FireworkBase.uasset differ diff --git a/Content/Blueprints/BP_FireworksPawn.uasset b/Content/Blueprints/BP_FireworksPawn.uasset index 988f436..a6d159a 100644 Binary files a/Content/Blueprints/BP_FireworksPawn.uasset and b/Content/Blueprints/BP_FireworksPawn.uasset differ diff --git a/Content/Blueprints/BP_InventoryCrateBase.uasset b/Content/Blueprints/BP_InventoryCrateBase.uasset deleted file mode 100644 index 69b9256..0000000 Binary files a/Content/Blueprints/BP_InventoryCrateBase.uasset and /dev/null differ diff --git a/Content/Blueprints/BP_SpawnManager.uasset b/Content/Blueprints/BP_SpawnManager.uasset index a3e4759..0071333 100644 Binary files a/Content/Blueprints/BP_SpawnManager.uasset and b/Content/Blueprints/BP_SpawnManager.uasset differ diff --git a/Content/Blueprints/Blocks/BP_Block.uasset b/Content/Blueprints/Blocks/BP_Block.uasset index 6277333..8d11308 100644 Binary files a/Content/Blueprints/Blocks/BP_Block.uasset and b/Content/Blueprints/Blocks/BP_Block.uasset differ diff --git a/Content/Blueprints/Blocks/BP_Block_Basic.uasset b/Content/Blueprints/Blocks/BP_Block_Basic.uasset index 1c5e3f5..faf1a38 100644 Binary files a/Content/Blueprints/Blocks/BP_Block_Basic.uasset and b/Content/Blueprints/Blocks/BP_Block_Basic.uasset differ diff --git a/Content/Blueprints/Blocks/BP_Block_Explosive.uasset b/Content/Blueprints/Blocks/BP_Block_Explosive.uasset index 4989287..dafb4a2 100644 Binary files a/Content/Blueprints/Blocks/BP_Block_Explosive.uasset and b/Content/Blueprints/Blocks/BP_Block_Explosive.uasset differ diff --git a/Content/Blueprints/Blocks/BP_Block_Gummy.uasset b/Content/Blueprints/Blocks/BP_Block_Gummy.uasset index 65cde2f..3b01f1f 100644 Binary files a/Content/Blueprints/Blocks/BP_Block_Gummy.uasset and b/Content/Blueprints/Blocks/BP_Block_Gummy.uasset differ diff --git a/Content/Blueprints/Blocks/BP_Block_Moving.uasset b/Content/Blueprints/Blocks/BP_Block_Moving.uasset index 7bb61e6..1e235f4 100644 Binary files a/Content/Blueprints/Blocks/BP_Block_Moving.uasset and b/Content/Blueprints/Blocks/BP_Block_Moving.uasset differ diff --git a/Content/Blueprints/Blocks/BP_Block_Portal.uasset b/Content/Blueprints/Blocks/BP_Block_Portal.uasset index c32a40c..67e4770 100644 Binary files a/Content/Blueprints/Blocks/BP_Block_Portal.uasset and b/Content/Blueprints/Blocks/BP_Block_Portal.uasset differ diff --git a/Content/Blueprints/Blocks/BP_Block_Regenerative.uasset b/Content/Blueprints/Blocks/BP_Block_Regenerative.uasset index 7013cd3..7d46fec 100644 Binary files a/Content/Blueprints/Blocks/BP_Block_Regenerative.uasset and b/Content/Blueprints/Blocks/BP_Block_Regenerative.uasset differ diff --git a/Content/Blueprints/Blocks/BP_Block_Tough.uasset b/Content/Blueprints/Blocks/BP_Block_Tough.uasset index 5bbad06..eac7c9a 100644 Binary files a/Content/Blueprints/Blocks/BP_Block_Tough.uasset and b/Content/Blueprints/Blocks/BP_Block_Tough.uasset differ diff --git a/Content/Blueprints/Fireworks/BP_12Gauge.uasset b/Content/Blueprints/Fireworks/BP_12Gauge.uasset deleted file mode 100644 index 261b3de..0000000 Binary files a/Content/Blueprints/Fireworks/BP_12Gauge.uasset and /dev/null differ diff --git a/Content/Blueprints/Fireworks/BP_20Megaton.uasset b/Content/Blueprints/Fireworks/BP_20Megaton.uasset deleted file mode 100644 index 4c273d1..0000000 Binary files a/Content/Blueprints/Fireworks/BP_20Megaton.uasset and /dev/null differ diff --git a/Content/Blueprints/Fireworks/BP_BigDaddy.uasset b/Content/Blueprints/Fireworks/BP_BigDaddy.uasset deleted file mode 100644 index ca53720..0000000 Binary files a/Content/Blueprints/Fireworks/BP_BigDaddy.uasset and /dev/null differ diff --git a/Content/Blueprints/Fireworks/BP_Cluster.uasset b/Content/Blueprints/Fireworks/BP_Cluster.uasset index 97f7a51..b5b80a9 100644 Binary files a/Content/Blueprints/Fireworks/BP_Cluster.uasset and b/Content/Blueprints/Fireworks/BP_Cluster.uasset differ diff --git a/Content/Blueprints/Fireworks/BP_Comet5000.uasset b/Content/Blueprints/Fireworks/BP_Comet5000.uasset deleted file mode 100644 index 5e5820c..0000000 Binary files a/Content/Blueprints/Fireworks/BP_Comet5000.uasset and /dev/null differ diff --git a/Content/Blueprints/Fireworks/BP_Commando3000.uasset b/Content/Blueprints/Fireworks/BP_Commando3000.uasset deleted file mode 100644 index 50e3093..0000000 Binary files a/Content/Blueprints/Fireworks/BP_Commando3000.uasset and /dev/null differ diff --git a/Content/Blueprints/Fireworks/BP_DoubleTrouble.uasset b/Content/Blueprints/Fireworks/BP_DoubleTrouble.uasset deleted file mode 100644 index b35bd6e..0000000 Binary files a/Content/Blueprints/Fireworks/BP_DoubleTrouble.uasset and /dev/null differ diff --git a/Content/Blueprints/Fireworks/BP_Pirate.uasset b/Content/Blueprints/Fireworks/BP_Pirate.uasset deleted file mode 100644 index 62056bc..0000000 Binary files a/Content/Blueprints/Fireworks/BP_Pirate.uasset and /dev/null differ diff --git a/Content/Blueprints/Fireworks/BP_RocketCluster.uasset b/Content/Blueprints/Fireworks/BP_RocketCluster.uasset new file mode 100644 index 0000000..a4d8779 Binary files /dev/null and b/Content/Blueprints/Fireworks/BP_RocketCluster.uasset differ diff --git a/Content/Blueprints/UI/BP_IngameScreen.uasset b/Content/Blueprints/UI/BP_IngameScreen.uasset index b94423c..4b50771 100644 Binary files a/Content/Blueprints/UI/BP_IngameScreen.uasset and b/Content/Blueprints/UI/BP_IngameScreen.uasset differ diff --git a/Content/Blueprints/UI/BP_Menu.uasset b/Content/Blueprints/UI/BP_Menu.uasset index 6c07c2b..f41bbc4 100644 Binary files a/Content/Blueprints/UI/BP_Menu.uasset and b/Content/Blueprints/UI/BP_Menu.uasset differ diff --git a/Content/Levels/L_Level1.uasset b/Content/Levels/L_Level1.uasset new file mode 100644 index 0000000..a090785 Binary files /dev/null and b/Content/Levels/L_Level1.uasset differ diff --git a/Content/Levels/L_Level10.uasset b/Content/Levels/L_Level10.uasset new file mode 100644 index 0000000..233aa4f Binary files /dev/null and b/Content/Levels/L_Level10.uasset differ diff --git a/Content/Levels/L_Level11.uasset b/Content/Levels/L_Level11.uasset new file mode 100644 index 0000000..d65ca92 Binary files /dev/null and b/Content/Levels/L_Level11.uasset differ diff --git a/Content/Levels/L_Level12.uasset b/Content/Levels/L_Level12.uasset new file mode 100644 index 0000000..86d515f Binary files /dev/null and b/Content/Levels/L_Level12.uasset differ diff --git a/Content/Levels/L_Level13.uasset b/Content/Levels/L_Level13.uasset new file mode 100644 index 0000000..37f6b1f Binary files /dev/null and b/Content/Levels/L_Level13.uasset differ diff --git a/Content/Levels/L_Level14.uasset b/Content/Levels/L_Level14.uasset new file mode 100644 index 0000000..5ab8396 Binary files /dev/null and b/Content/Levels/L_Level14.uasset differ diff --git a/Content/Levels/L_Level15.uasset b/Content/Levels/L_Level15.uasset new file mode 100644 index 0000000..abd9a05 Binary files /dev/null and b/Content/Levels/L_Level15.uasset differ diff --git a/Content/Levels/L_Level16.uasset b/Content/Levels/L_Level16.uasset new file mode 100644 index 0000000..c72515a Binary files /dev/null and b/Content/Levels/L_Level16.uasset differ diff --git a/Content/Levels/L_Level17.uasset b/Content/Levels/L_Level17.uasset new file mode 100644 index 0000000..9330c75 Binary files /dev/null and b/Content/Levels/L_Level17.uasset differ diff --git a/Content/Levels/L_Level18.uasset b/Content/Levels/L_Level18.uasset new file mode 100644 index 0000000..0c9d054 Binary files /dev/null and b/Content/Levels/L_Level18.uasset differ diff --git a/Content/Levels/L_Level19.uasset b/Content/Levels/L_Level19.uasset new file mode 100644 index 0000000..96bbb3b Binary files /dev/null and b/Content/Levels/L_Level19.uasset differ diff --git a/Content/Levels/L_Level2.uasset b/Content/Levels/L_Level2.uasset new file mode 100644 index 0000000..ba3f677 Binary files /dev/null and b/Content/Levels/L_Level2.uasset differ diff --git a/Content/Levels/L_Level20.uasset b/Content/Levels/L_Level20.uasset new file mode 100644 index 0000000..6f28c7c Binary files /dev/null and b/Content/Levels/L_Level20.uasset differ diff --git a/Content/Levels/L_Level21.uasset b/Content/Levels/L_Level21.uasset new file mode 100644 index 0000000..cf61223 Binary files /dev/null and b/Content/Levels/L_Level21.uasset differ diff --git a/Content/Levels/L_Level22.uasset b/Content/Levels/L_Level22.uasset new file mode 100644 index 0000000..041c480 Binary files /dev/null and b/Content/Levels/L_Level22.uasset differ diff --git a/Content/Levels/L_Level23.uasset b/Content/Levels/L_Level23.uasset new file mode 100644 index 0000000..14541e8 Binary files /dev/null and b/Content/Levels/L_Level23.uasset differ diff --git a/Content/Levels/L_Level24.uasset b/Content/Levels/L_Level24.uasset new file mode 100644 index 0000000..529d129 Binary files /dev/null and b/Content/Levels/L_Level24.uasset differ diff --git a/Content/Levels/L_Level25.uasset b/Content/Levels/L_Level25.uasset new file mode 100644 index 0000000..9ae5628 Binary files /dev/null and b/Content/Levels/L_Level25.uasset differ diff --git a/Content/Levels/L_Level26.uasset b/Content/Levels/L_Level26.uasset new file mode 100644 index 0000000..4388a49 Binary files /dev/null and b/Content/Levels/L_Level26.uasset differ diff --git a/Content/Levels/L_Level27.uasset b/Content/Levels/L_Level27.uasset new file mode 100644 index 0000000..63398de Binary files /dev/null and b/Content/Levels/L_Level27.uasset differ diff --git a/Content/Levels/L_Level28.uasset b/Content/Levels/L_Level28.uasset new file mode 100644 index 0000000..d21b8e6 Binary files /dev/null and b/Content/Levels/L_Level28.uasset differ diff --git a/Content/Levels/L_Level29.uasset b/Content/Levels/L_Level29.uasset new file mode 100644 index 0000000..cd106ca Binary files /dev/null and b/Content/Levels/L_Level29.uasset differ diff --git a/Content/Levels/L_Level3.uasset b/Content/Levels/L_Level3.uasset new file mode 100644 index 0000000..6d1b18a Binary files /dev/null and b/Content/Levels/L_Level3.uasset differ diff --git a/Content/Levels/L_Level30.uasset b/Content/Levels/L_Level30.uasset new file mode 100644 index 0000000..a79327d Binary files /dev/null and b/Content/Levels/L_Level30.uasset differ diff --git a/Content/Levels/L_Level4.uasset b/Content/Levels/L_Level4.uasset new file mode 100644 index 0000000..70b7880 Binary files /dev/null and b/Content/Levels/L_Level4.uasset differ diff --git a/Content/Levels/L_Level5.uasset b/Content/Levels/L_Level5.uasset new file mode 100644 index 0000000..124fc93 Binary files /dev/null and b/Content/Levels/L_Level5.uasset differ diff --git a/Content/Levels/L_Level6.uasset b/Content/Levels/L_Level6.uasset new file mode 100644 index 0000000..010c294 Binary files /dev/null and b/Content/Levels/L_Level6.uasset differ diff --git a/Content/Levels/L_Level7.uasset b/Content/Levels/L_Level7.uasset new file mode 100644 index 0000000..7db9b1d Binary files /dev/null and b/Content/Levels/L_Level7.uasset differ diff --git a/Content/Levels/L_Level8.uasset b/Content/Levels/L_Level8.uasset new file mode 100644 index 0000000..0d0ed97 Binary files /dev/null and b/Content/Levels/L_Level8.uasset differ diff --git a/Content/Levels/L_Level9.uasset b/Content/Levels/L_Level9.uasset new file mode 100644 index 0000000..376eca7 Binary files /dev/null and b/Content/Levels/L_Level9.uasset differ diff --git a/Content/Levels/L_LevelBase.uasset b/Content/Levels/L_LevelBase.uasset index c5bed65..4266f7f 100644 Binary files a/Content/Levels/L_LevelBase.uasset and b/Content/Levels/L_LevelBase.uasset differ diff --git a/Content/Levels/L_MainLevel.umap b/Content/Levels/L_MainLevel.umap index bc5f1ca..caf4060 100644 Binary files a/Content/Levels/L_MainLevel.umap and b/Content/Levels/L_MainLevel.umap differ diff --git a/Content/Levels/TS_MainTileset.uasset b/Content/Levels/TS_MainTileset.uasset new file mode 100644 index 0000000..79e39f0 Binary files /dev/null and b/Content/Levels/TS_MainTileset.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level1.uasset b/Content/Levels/Tilemaps/TM_Level1.uasset new file mode 100644 index 0000000..7311baf Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level1.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level10.uasset b/Content/Levels/Tilemaps/TM_Level10.uasset new file mode 100644 index 0000000..955d80c Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level10.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level11.uasset b/Content/Levels/Tilemaps/TM_Level11.uasset new file mode 100644 index 0000000..b959431 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level11.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level12.uasset b/Content/Levels/Tilemaps/TM_Level12.uasset new file mode 100644 index 0000000..3e3734c Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level12.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level13.uasset b/Content/Levels/Tilemaps/TM_Level13.uasset new file mode 100644 index 0000000..4af46f1 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level13.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level14.uasset b/Content/Levels/Tilemaps/TM_Level14.uasset new file mode 100644 index 0000000..3740f8e Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level14.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level15.uasset b/Content/Levels/Tilemaps/TM_Level15.uasset new file mode 100644 index 0000000..c24ce8e Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level15.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level16.uasset b/Content/Levels/Tilemaps/TM_Level16.uasset new file mode 100644 index 0000000..527c9c6 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level16.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level17.uasset b/Content/Levels/Tilemaps/TM_Level17.uasset new file mode 100644 index 0000000..e7eb646 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level17.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level18.uasset b/Content/Levels/Tilemaps/TM_Level18.uasset new file mode 100644 index 0000000..310f17a Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level18.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level19.uasset b/Content/Levels/Tilemaps/TM_Level19.uasset new file mode 100644 index 0000000..925fad6 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level19.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level2.uasset b/Content/Levels/Tilemaps/TM_Level2.uasset new file mode 100644 index 0000000..fd9b75a Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level2.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level20.uasset b/Content/Levels/Tilemaps/TM_Level20.uasset new file mode 100644 index 0000000..04bf0aa Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level20.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level21.uasset b/Content/Levels/Tilemaps/TM_Level21.uasset new file mode 100644 index 0000000..f0dd43e Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level21.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level22.uasset b/Content/Levels/Tilemaps/TM_Level22.uasset new file mode 100644 index 0000000..0a4353a Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level22.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level23.uasset b/Content/Levels/Tilemaps/TM_Level23.uasset new file mode 100644 index 0000000..a69bd8b Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level23.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level24.uasset b/Content/Levels/Tilemaps/TM_Level24.uasset new file mode 100644 index 0000000..564be36 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level24.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level25.uasset b/Content/Levels/Tilemaps/TM_Level25.uasset new file mode 100644 index 0000000..2180ab2 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level25.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level26.uasset b/Content/Levels/Tilemaps/TM_Level26.uasset new file mode 100644 index 0000000..596289d Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level26.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level27.uasset b/Content/Levels/Tilemaps/TM_Level27.uasset new file mode 100644 index 0000000..6f7201f Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level27.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level28.uasset b/Content/Levels/Tilemaps/TM_Level28.uasset new file mode 100644 index 0000000..47047d6 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level28.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level29.uasset b/Content/Levels/Tilemaps/TM_Level29.uasset new file mode 100644 index 0000000..458a630 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level29.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level3.uasset b/Content/Levels/Tilemaps/TM_Level3.uasset new file mode 100644 index 0000000..0c5a18c Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level3.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level30.uasset b/Content/Levels/Tilemaps/TM_Level30.uasset new file mode 100644 index 0000000..523b6f1 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level30.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level4.uasset b/Content/Levels/Tilemaps/TM_Level4.uasset new file mode 100644 index 0000000..c10252f Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level4.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level5.uasset b/Content/Levels/Tilemaps/TM_Level5.uasset new file mode 100644 index 0000000..a0772f3 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level5.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level6.uasset b/Content/Levels/Tilemaps/TM_Level6.uasset new file mode 100644 index 0000000..d55ff59 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level6.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level7.uasset b/Content/Levels/Tilemaps/TM_Level7.uasset new file mode 100644 index 0000000..d10f528 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level7.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level8.uasset b/Content/Levels/Tilemaps/TM_Level8.uasset new file mode 100644 index 0000000..20c30d9 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level8.uasset differ diff --git a/Content/Levels/Tilemaps/TM_Level9.uasset b/Content/Levels/Tilemaps/TM_Level9.uasset new file mode 100644 index 0000000..2028f38 Binary files /dev/null and b/Content/Levels/Tilemaps/TM_Level9.uasset differ diff --git a/Content/Materials/M_BlockVariants.uasset b/Content/Materials/M_BlockVariants.uasset new file mode 100644 index 0000000..a23629a Binary files /dev/null and b/Content/Materials/M_BlockVariants.uasset differ diff --git a/Content/Textures/T_Tileset.uasset b/Content/Textures/T_Tileset.uasset new file mode 100644 index 0000000..8c52375 Binary files /dev/null and b/Content/Textures/T_Tileset.uasset differ diff --git a/Content/Textures/Thumbnails/Icon_GreenGoblin.uasset b/Content/Textures/Thumbnails/Icon_GreenGoblin.uasset deleted file mode 100644 index 7b0f2ea..0000000 Binary files a/Content/Textures/Thumbnails/Icon_GreenGoblin.uasset and /dev/null differ diff --git a/Content/Textures/Thumbnails/Icon_Panzerfaust.uasset b/Content/Textures/Thumbnails/Icon_Panzerfaust.uasset deleted file mode 100644 index 9d49454..0000000 Binary files a/Content/Textures/Thumbnails/Icon_Panzerfaust.uasset and /dev/null differ diff --git a/Content/Textures/Thumbnails/Icon_QuadrupleBazooka.uasset b/Content/Textures/Thumbnails/Icon_QuadrupleBazooka.uasset deleted file mode 100644 index c82b0b1..0000000 Binary files a/Content/Textures/Thumbnails/Icon_QuadrupleBazooka.uasset and /dev/null differ diff --git a/Content/Textures/Thumbnails/Icon_RocketLauncher.uasset b/Content/Textures/Thumbnails/Icon_RocketLauncher.uasset deleted file mode 100644 index ab7e71b..0000000 Binary files a/Content/Textures/Thumbnails/Icon_RocketLauncher.uasset and /dev/null differ diff --git a/Content/Textures/Thumbnails/Icon_WhiteWidow.uasset b/Content/Textures/Thumbnails/Icon_WhiteWidow.uasset deleted file mode 100644 index 66598a8..0000000 Binary files a/Content/Textures/Thumbnails/Icon_WhiteWidow.uasset and /dev/null differ diff --git a/Content/Textures/Thumbnails/T_Thumb_Cluster.uasset b/Content/Textures/Thumbnails/T_Thumb_Cluster.uasset new file mode 100644 index 0000000..3eb5759 Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_Cluster.uasset differ diff --git a/Content/Textures/Thumbnails/T_Thumb_ClusterRocket.uasset b/Content/Textures/Thumbnails/T_Thumb_ClusterRocket.uasset new file mode 100644 index 0000000..0b6a927 Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_ClusterRocket.uasset differ diff --git a/Content/Textures/Thumbnails/T_Thumb_GuidedRocket.uasset b/Content/Textures/Thumbnails/T_Thumb_GuidedRocket.uasset new file mode 100644 index 0000000..66ff16f Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_GuidedRocket.uasset differ diff --git a/Content/Textures/Thumbnails/T_Thumb_Impact.uasset b/Content/Textures/Thumbnails/T_Thumb_Impact.uasset new file mode 100644 index 0000000..fb5884d Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_Impact.uasset differ diff --git a/Content/Textures/Thumbnails/T_Thumb_ImpactRocket.uasset b/Content/Textures/Thumbnails/T_Thumb_ImpactRocket.uasset new file mode 100644 index 0000000..7914dc2 Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_ImpactRocket.uasset differ diff --git a/Content/Textures/Thumbnails/T_Thumb_Lighter.uasset b/Content/Textures/Thumbnails/T_Thumb_Lighter.uasset new file mode 100644 index 0000000..9fb3f79 Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_Lighter.uasset differ diff --git a/Content/Textures/Thumbnails/T_Thumb_Sticky.uasset b/Content/Textures/Thumbnails/T_Thumb_Sticky.uasset new file mode 100644 index 0000000..ca67bd5 Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_Sticky.uasset differ diff --git a/Content/Textures/Thumbnails/T_Thumb_Timed.uasset b/Content/Textures/Thumbnails/T_Thumb_Timed.uasset new file mode 100644 index 0000000..f1c7fbf Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_Timed.uasset differ diff --git a/Content/Textures/Thumbnails/T_Thumb_TimedRocket.uasset b/Content/Textures/Thumbnails/T_Thumb_TimedRocket.uasset new file mode 100644 index 0000000..fdca145 Binary files /dev/null and b/Content/Textures/Thumbnails/T_Thumb_TimedRocket.uasset differ diff --git a/Content/UI/UI_ShopTile.uasset b/Content/UI/UI_ShopTile.uasset index 2813661..9f74cdd 100644 Binary files a/Content/UI/UI_ShopTile.uasset and b/Content/UI/UI_ShopTile.uasset differ diff --git a/Content/UI/W_InLevelScreen.uasset b/Content/UI/W_InLevelScreen.uasset index 7b07195..d333d41 100644 Binary files a/Content/UI/W_InLevelScreen.uasset and b/Content/UI/W_InLevelScreen.uasset differ diff --git a/Source/FireworkDuels/BuildingBlock.cpp b/Source/FireworkDuels/BuildingBlock.cpp index e55fa6a..c2bcec3 100644 --- a/Source/FireworkDuels/BuildingBlock.cpp +++ b/Source/FireworkDuels/BuildingBlock.cpp @@ -8,28 +8,47 @@ ABuildingBlock::ABuildingBlock() { // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. PrimaryActorTick.bCanEverTick = true; - InitialHealth = Health; - StaticMesh = CreateDefaultSubobject(TEXT("StaticMesh")); } -void ABuildingBlock::DepleteHealth(float Amount) { - Health = Health - Amount; - if (Health <= 0.0f) { - UE_LOG(LogTemp, Warning, TEXT("Health below 0 - DestroyingBlock")); +void ABuildingBlock::TakeHit() { + HitsRemaining -= 1; + + if (HitsRemaining <= 0) { DestroyBlock(); } - else { - uint8 DestructionLevel = 0; - if (Health <= InitialHealth * 0.66f) { - if (Health <= InitialHealth * 0.33f) { - DestructionLevel = 2; - } - else { - DestructionLevel = 1; - } +} + +TArray ABuildingBlock::GetSameVariantNeighbours() { + TArray Results; + FVector Location = this->GetActorLocation(); + + for (int32 i = 0; i < 4; i++) { + FHitResult HitResult; + FVector EndLocation; + + switch (i) { + case 0: + EndLocation = Location + FVector(60.f, 0.f, 0.f); + break; + case 1: + EndLocation = Location + FVector(-60.f, 0.f, 0.f); + break; + case 2: + EndLocation = Location + FVector(0.f, 60.f, 0.f); + break; + case 3: + EndLocation = Location + FVector(0.f, -60.f, 0.f); + break; } - UpdateDestructionLevel(DestructionLevel); + if (GetWorld()->LineTraceSingleByChannel(HitResult, Location, EndLocation, ECC_Visibility)) { + ABuildingBlock* HitActor = Cast(HitResult.GetActor()); + if (IsValid(HitActor) && HitActor->Variant == this->Variant) { + Results.Add(HitActor); + } + } } + + return Results; } \ No newline at end of file diff --git a/Source/FireworkDuels/BuildingBlock.h b/Source/FireworkDuels/BuildingBlock.h index 9256284..58607b0 100644 --- a/Source/FireworkDuels/BuildingBlock.h +++ b/Source/FireworkDuels/BuildingBlock.h @@ -4,6 +4,7 @@ #include "CoreMinimal.h" #include "Components/StaticMeshComponent.h" +#include "DrawDebugHelpers.h" #include "BuildingBlock.generated.h" UCLASS() @@ -18,22 +19,33 @@ public: UPROPERTY(EditDefaultsOnly, BlueprintReadWrite) UStaticMeshComponent* StaticMesh; + // How many hits can this block take before getting destroyed UPROPERTY(BlueprintReadWrite, EditAnywhere) - float Health = 100.0f; + int32 HitsRemaining = 1; UPROPERTY(BlueprintReadOnly) int32 Index = 0; - UPROPERTY(BlueprintReadOnly) - float InitialHealth; + UPROPERTY(EditDefaultsOnly, BlueprintReadWrite) + bool HasVariants = false; + + UPROPERTY(EditDefaultsOnly, BlueprintReadWrite) + int32 Variant = 0; UFUNCTION(BlueprintCallable) - void DepleteHealth(float Amount); + void TakeHit(); - UFUNCTION(BlueprintImplementableEvent) - void UpdateDestructionLevel(uint8 Level); - - UFUNCTION(BlueprintImplementableEvent) + UFUNCTION(BlueprintImplementableEvent, BlueprintCallable) void DestroyBlock(); + UFUNCTION(BlueprintImplementableEvent) + void FadeIn(); + + UFUNCTION(BlueprintImplementableEvent, BlueprintCallable) + void DestroyWithDelay(); + + // Get neighbouring Blocks with same color variant + UFUNCTION(BlueprintCallable) + TArray GetSameVariantNeighbours(); + }; diff --git a/Source/FireworkDuels/Private/LevelTemplate.cpp b/Source/FireworkDuels/Private/LevelTemplate.cpp index 718a59e..81bae2c 100644 --- a/Source/FireworkDuels/Private/LevelTemplate.cpp +++ b/Source/FireworkDuels/Private/LevelTemplate.cpp @@ -8,6 +8,7 @@ ALevelTemplate::ALevelTemplate() { // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. PrimaryActorTick.bCanEverTick = true; + Template = CreateDefaultSubobject(TEXT("TemplateTilemap")); } @@ -22,6 +23,22 @@ void ALevelTemplate::BeginPlay() void ALevelTemplate::Tick(float DeltaTime) { Super::Tick(DeltaTime); - + GameTime += DeltaTime; } +void ALevelTemplate::StartGame() { + CountTime = true; + GameTime = 0.f; +} + +float ALevelTemplate::StopGame() { + CountTime = false; + return GameTime; +} + +int32 ALevelTemplate::GetAwardStars() { + if (GameTime < ThreeStarTarget) return 3; + if (GameTime < TwoStarTarget) return 2; + if (GameTime < OneStarTarget) return 1; + return 0; +} \ No newline at end of file diff --git a/Source/FireworkDuels/Public/LevelTemplate.h b/Source/FireworkDuels/Public/LevelTemplate.h index 4656eef..845c4b0 100644 --- a/Source/FireworkDuels/Public/LevelTemplate.h +++ b/Source/FireworkDuels/Public/LevelTemplate.h @@ -28,6 +28,12 @@ public: UPROPERTY(EditDefaultsOnly, BlueprintReadWrite) int32 ThreeStarTarget = 60; + UPROPERTY(VisibleAnywhere, BlueprintReadOnly) + float GameTime = 0.f; + + UPROPERTY(EditAnywhere, BlueprintReadWrite) + bool CountTime = false; + protected: // Called when the game starts or when spawned virtual void BeginPlay() override; @@ -36,4 +42,13 @@ public: // Called every frame virtual void Tick(float DeltaTime) override; + UFUNCTION(BlueprintCallable) + void StartGame(); + + // Stop counting and return elapsed game time + UFUNCTION(BlueprintCallable) + float StopGame(); + + UFUNCTION(BlueprintCallable) + int32 GetAwardStars(); }; diff --git a/Source/FireworkDuels/SpawnManager.cpp b/Source/FireworkDuels/SpawnManager.cpp index f87bda0..3788fb2 100644 --- a/Source/FireworkDuels/SpawnManager.cpp +++ b/Source/FireworkDuels/SpawnManager.cpp @@ -11,7 +11,7 @@ ASpawnManager::ASpawnManager() } -void ASpawnManager::GenerateBoard(TSubclassOf &Template) { +void ASpawnManager::GenerateBoard(const TSubclassOf Template) { FVector ActorLocation = this->GetActorLocation(); CurrentLevel = GetWorld()->SpawnActor(Template, this->GetActorTransform()); UPaperTileMapComponent* Tilemap = CurrentLevel->Template; @@ -29,6 +29,10 @@ void ASpawnManager::GenerateBoard(TSubclassOf &Template) { TSubclassOf TileClass = *BlockTemplates.Find(TileId); ABuildingBlock* ThisBlock = GetWorld()->SpawnActor(TileClass, SpawnTransform); ThisBlock->Index = (10 * i) + o; + if (ThisBlock->HasVariants) { + ThisBlock->Variant = FMath::RandRange(1, MaxVariants); + } + ThisBlock->FadeIn(); } } } \ No newline at end of file diff --git a/Source/FireworkDuels/SpawnManager.h b/Source/FireworkDuels/SpawnManager.h index 474ad02..ad343f9 100644 --- a/Source/FireworkDuels/SpawnManager.h +++ b/Source/FireworkDuels/SpawnManager.h @@ -29,6 +29,9 @@ protected: UPROPERTY(BlueprintReadWrite, EditAnywhere) int32 BlocksY = 10; + UPROPERTY(EditDefaultsOnly, BlueprintReadWrite) + int32 MaxVariants = 5; + UPROPERTY(EditAnywhere, BlueprintReadWrite) ALevelTemplate* CurrentLevel; @@ -36,7 +39,7 @@ protected: TMap> BlockTemplates; UFUNCTION(BlueprintCallable, CallInEditor) - void GenerateBoard(TSubclassOf &Template); + void GenerateBoard(const TSubclassOf Template); public: