added audio settings and aiming with right click

This commit is contained in:
Will_Allen 2026-07-09 13:31:07 +01:00
parent aff4c2a57a
commit 0f8fa9c9f9
5 changed files with 967 additions and 1053 deletions

File diff suppressed because it is too large Load diff

View file

@ -1,151 +1,151 @@
190:07:2026 00:22:16.329 INFO:
190:07:2026 13:23:04.685 INFO:
Launching New Terrain4J Powered Software!
190:07:2026 00:22:16.333 DEBUG: File [terrain4j.properties] read
190:07:2026 00:22:16.336 DEBUG:
190:07:2026 13:23:04.692 DEBUG: File [terrain4j.properties] read
190:07:2026 13:23:04.698 DEBUG:
successfully loaded configuration:
{compatibility_mode=false, ShaderRecompiling=true, cap_main_to_tickrate=true, LoadingScreenLocation=resources/EngineResources/Texture/Terrain4JTitleImage.png, z_near_plane=10000.0f, display_width=640, anti_alias_mode=0, main_thread_tickrate=120, Software_Icon=ProgramIcon.png, MaxAllowedVulkanCrashes=10, throttle_on_unfocus=false, vsync=false, cap_fast_to_tickrate=true, Software_Icon_Path=/WindowResources/Icon/, RequestedImages=3, throttle_accuracy=4000000, DualPassRendering=false, field_of_view=60.0f, ShadowMapSize=2048, PhysicalDeviceName=, fast_thread_tickrate=240, vkValidated=true, cap_master_to_tickrate=true, AlphaToCoverage=false, display_height=480, Renderer=1, Software_Title=Terrain4J Game Engine, z_far_plane=0.1f, frame_accuracy=0, master_tick_rate=240, Debug_Shaders=false, DefaultTexturePath=resources/EngineResources/Texture/NoTexture.png}
190:07:2026 00:22:16.385 DEBUG: Loading Models From [resources/models/cube/Cube.json]
190:07:2026 00:22:16.428 DEBUG: Loaded Model Data: [ModelData[ID=Cube, Meshes=[MeshData[ID=mesh_0, MaterialID=Cube-mat-1, OffsetVertex=0, VertexSize=1344, OffsetIndex=0, IndexSize=144]], VertexPath=resources/models/cube/Cube.vtx, IndexPath=resources/models/cube/Cube.idx]]
190:07:2026 00:22:16.428 DEBUG: Loading Materials From [resources/models/cube/Cube_mat.json]
190:07:2026 00:22:16.437 DEBUG: Loaded Material Data: [[MaterialData[ID=Cube-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Cube-mat-1, TexturePath=resources\models\cube\cubetexture.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Cube-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0]]]
190:07:2026 00:22:16.437 DEBUG: Loading Models From [resources/models/musket/musket.json]
190:07:2026 00:22:16.438 DEBUG: Loaded Model Data: [ModelData[ID=musket, Meshes=[MeshData[ID=cube_0, MaterialID=musket-mat-1, OffsetVertex=0, VertexSize=25088, OffsetIndex=0, IndexSize=2880]], VertexPath=resources/models/musket/musket.vtx, IndexPath=resources/models/musket/musket.idx]]
190:07:2026 00:22:16.438 DEBUG: Loading Materials From [resources/models/musket/musket_mat.json]
190:07:2026 00:22:16.438 DEBUG: Loaded Material Data: [[MaterialData[ID=musket-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=musket-mat-1, TexturePath=resources\models\musket\Musket.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=musket-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0]]]
190:07:2026 00:22:16.438 DEBUG: Loading Models From [resources/models/Revolver/Revolver.json]
190:07:2026 00:22:16.439 DEBUG: Loaded Model Data: [ModelData[ID=Revolver, Meshes=[MeshData[ID=cube_0, MaterialID=Revolver-mat-1, OffsetVertex=0, VertexSize=21280, OffsetIndex=0, IndexSize=2304]], VertexPath=resources/models/Revolver/Revolver.vtx, IndexPath=resources/models/Revolver/Revolver.idx]]
190:07:2026 00:22:16.439 DEBUG: Loading Materials From [resources/models/Revolver/Revolver_mat.json]
190:07:2026 00:22:16.440 DEBUG: Loaded Material Data: [[MaterialData[ID=Revolver-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Revolver-mat-1, TexturePath=resources\models\Revolver\Revolver.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Revolver-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0]]]
190:07:2026 00:22:16.444 INFO: Spawning static cube actor [MelonaSpawned0] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.446 INFO: Spawning static cube actor [MelonaSpawned1] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.446 INFO: Spawning static cube actor [MelonaSpawned2] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.446 INFO: Spawning static cube actor [MelonaSpawned3] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.446 INFO: Spawning static cube actor [MelonaSpawned4] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.446 INFO: Spawning static cube actor [MelonaSpawned5] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.446 INFO: Spawning static cube actor [MelonaSpawned6] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned7] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned8] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned9] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned10] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned11] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned12] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned13] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned14] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned15] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned16] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.447 INFO: Spawning static cube actor [MelonaSpawned17] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned18] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned19] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned20] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned21] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned22] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned23] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned24] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned25] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned26] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned27] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned28] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned29] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.448 INFO: Spawning static cube actor [MelonaSpawned30] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned31] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned32] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned33] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned34] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned35] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned36] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned37] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned38] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned39] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned40] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned41] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned42] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned43] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.449 INFO: Spawning static cube actor [MelonaSpawned44] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned45] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned46] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned47] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned48] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned49] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned50] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned51] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned52] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned53] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned54] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned55] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned56] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned57] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned58] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned59] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned60] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned61] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned62] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned63] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.450 INFO: Spawning static cube actor [MelonaSpawned64] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned65] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned66] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned67] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned68] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned69] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned70] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned71] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned72] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned73] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned74] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned75] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned76] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned77] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned78] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned79] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.451 INFO: Spawning static cube actor [MelonaSpawned80] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.452 INFO: Spawning static cube actor [MelonaSpawned81] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.452 INFO: Spawning static cube actor [MelonaSpawned82] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.452 INFO: Spawning static cube actor [MelonaSpawned83] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.452 INFO: Spawning static cube actor [MelonaSpawned84] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned85] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned86] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned87] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned88] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned89] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned90] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned91] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned92] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned93] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned94] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned95] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned96] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.453 INFO: Spawning static cube actor [MelonaSpawned97] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned98] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned99] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned100] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned101] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned102] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned103] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned104] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned105] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned106] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned107] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned108] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned109] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned110] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned111] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned112] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned113] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned114] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned115] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned116] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned117] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned118] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned119] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.454 INFO: Spawning static cube actor [MelonaSpawned120] with model ID [Cube], with cached ID of [Cube]
190:07:2026 00:22:16.455 DEBUG: Starting Main Thread
190:07:2026 00:22:16.456 DEBUG: Starting Fast Thread
190:07:2026 00:22:16.456 DEBUG: Starting Render Thread
190:07:2026 00:22:16.537 INFO: Launched Terrain4J Engine
190:07:2026 00:22:16.537 DEBUG: Primary Thread Started
190:07:2026 00:22:16.537 INFO: Terrain4J dedicated server running without GLFW/Vulkan/OpenAL
190:07:2026 00:22:16.537 DEBUG: Main Thread Started
190:07:2026 00:22:16.537 DEBUG: Render Thread Started
190:07:2026 00:22:16.537 DEBUG: Fast Thread Started
190:07:2026 13:23:04.779 DEBUG: Loading Models From [resources/models/cube/Cube.json]
190:07:2026 13:23:04.853 DEBUG: Loaded Model Data: [ModelData[ID=Cube, Meshes=[MeshData[ID=mesh_0, MaterialID=Cube-mat-1, OffsetVertex=0, VertexSize=1344, OffsetIndex=0, IndexSize=144]], VertexPath=resources/models/cube/Cube.vtx, IndexPath=resources/models/cube/Cube.idx]]
190:07:2026 13:23:04.853 DEBUG: Loading Materials From [resources/models/cube/Cube_mat.json]
190:07:2026 13:23:04.868 DEBUG: Loaded Material Data: [[MaterialData[ID=Cube-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Cube-mat-1, TexturePath=resources\models\cube\cubetexture.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Cube-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0]]]
190:07:2026 13:23:04.868 DEBUG: Loading Models From [resources/models/musket/musket.json]
190:07:2026 13:23:04.869 DEBUG: Loaded Model Data: [ModelData[ID=musket, Meshes=[MeshData[ID=cube_0, MaterialID=musket-mat-1, OffsetVertex=0, VertexSize=25088, OffsetIndex=0, IndexSize=2880]], VertexPath=resources/models/musket/musket.vtx, IndexPath=resources/models/musket/musket.idx]]
190:07:2026 13:23:04.869 DEBUG: Loading Materials From [resources/models/musket/musket_mat.json]
190:07:2026 13:23:04.871 DEBUG: Loaded Material Data: [[MaterialData[ID=musket-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=musket-mat-1, TexturePath=resources\models\musket\Musket.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=musket-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0]]]
190:07:2026 13:23:04.871 DEBUG: Loading Models From [resources/models/Revolver/Revolver.json]
190:07:2026 13:23:04.872 DEBUG: Loaded Model Data: [ModelData[ID=Revolver, Meshes=[MeshData[ID=cube_0, MaterialID=Revolver-mat-1, OffsetVertex=0, VertexSize=21280, OffsetIndex=0, IndexSize=2304]], VertexPath=resources/models/Revolver/Revolver.vtx, IndexPath=resources/models/Revolver/Revolver.idx]]
190:07:2026 13:23:04.872 DEBUG: Loading Materials From [resources/models/Revolver/Revolver_mat.json]
190:07:2026 13:23:04.873 DEBUG: Loaded Material Data: [[MaterialData[ID=Revolver-mat-0, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Revolver-mat-1, TexturePath=resources\models\Revolver\Revolver.png, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0], MaterialData[ID=Revolver-mat-2, TexturePath=, NormalTexturePath=, MetalRoughnessMap=, DiffuseColour=( 6.000E-1 6.000E-1 6.000E-1 1.000E+0), Roughness=0.0, Metallic=0.0]]]
190:07:2026 13:23:04.878 INFO: Spawning static cube actor [MelonaSpawned0] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.884 INFO: Spawning static cube actor [MelonaSpawned1] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.884 INFO: Spawning static cube actor [MelonaSpawned2] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.884 INFO: Spawning static cube actor [MelonaSpawned3] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.884 INFO: Spawning static cube actor [MelonaSpawned4] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.885 INFO: Spawning static cube actor [MelonaSpawned5] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.885 INFO: Spawning static cube actor [MelonaSpawned6] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.885 INFO: Spawning static cube actor [MelonaSpawned7] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.885 INFO: Spawning static cube actor [MelonaSpawned8] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.885 INFO: Spawning static cube actor [MelonaSpawned9] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.886 INFO: Spawning static cube actor [MelonaSpawned10] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.886 INFO: Spawning static cube actor [MelonaSpawned11] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.886 INFO: Spawning static cube actor [MelonaSpawned12] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.886 INFO: Spawning static cube actor [MelonaSpawned13] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.886 INFO: Spawning static cube actor [MelonaSpawned14] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.886 INFO: Spawning static cube actor [MelonaSpawned15] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.887 INFO: Spawning static cube actor [MelonaSpawned16] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.887 INFO: Spawning static cube actor [MelonaSpawned17] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.887 INFO: Spawning static cube actor [MelonaSpawned18] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.887 INFO: Spawning static cube actor [MelonaSpawned19] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.887 INFO: Spawning static cube actor [MelonaSpawned20] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.887 INFO: Spawning static cube actor [MelonaSpawned21] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.887 INFO: Spawning static cube actor [MelonaSpawned22] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.888 INFO: Spawning static cube actor [MelonaSpawned23] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.888 INFO: Spawning static cube actor [MelonaSpawned24] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.888 INFO: Spawning static cube actor [MelonaSpawned25] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.888 INFO: Spawning static cube actor [MelonaSpawned26] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.888 INFO: Spawning static cube actor [MelonaSpawned27] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.888 INFO: Spawning static cube actor [MelonaSpawned28] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.888 INFO: Spawning static cube actor [MelonaSpawned29] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned30] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned31] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned32] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned33] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned34] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned35] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned36] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned37] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned38] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.889 INFO: Spawning static cube actor [MelonaSpawned39] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned40] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned41] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned42] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned43] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned44] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned45] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned46] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned47] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned48] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.890 INFO: Spawning static cube actor [MelonaSpawned49] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned50] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned51] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned52] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned53] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned54] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned55] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned56] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned57] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.891 INFO: Spawning static cube actor [MelonaSpawned58] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned59] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned60] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned61] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned62] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned63] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned64] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned65] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned66] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned67] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.892 INFO: Spawning static cube actor [MelonaSpawned68] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned69] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned70] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned71] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned72] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned73] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned74] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned75] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned76] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned77] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.893 INFO: Spawning static cube actor [MelonaSpawned78] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned79] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned80] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned81] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned82] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned83] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned84] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned85] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned86] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned87] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.894 INFO: Spawning static cube actor [MelonaSpawned88] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned89] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned90] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned91] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned92] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned93] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned94] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned95] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned96] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned97] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.895 INFO: Spawning static cube actor [MelonaSpawned98] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.896 INFO: Spawning static cube actor [MelonaSpawned99] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.896 INFO: Spawning static cube actor [MelonaSpawned100] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.896 INFO: Spawning static cube actor [MelonaSpawned101] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.896 INFO: Spawning static cube actor [MelonaSpawned102] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.896 INFO: Spawning static cube actor [MelonaSpawned103] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.896 INFO: Spawning static cube actor [MelonaSpawned104] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.896 INFO: Spawning static cube actor [MelonaSpawned105] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.896 INFO: Spawning static cube actor [MelonaSpawned106] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.897 INFO: Spawning static cube actor [MelonaSpawned107] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.897 INFO: Spawning static cube actor [MelonaSpawned108] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.897 INFO: Spawning static cube actor [MelonaSpawned109] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.897 INFO: Spawning static cube actor [MelonaSpawned110] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.897 INFO: Spawning static cube actor [MelonaSpawned111] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.897 INFO: Spawning static cube actor [MelonaSpawned112] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.897 INFO: Spawning static cube actor [MelonaSpawned113] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.897 INFO: Spawning static cube actor [MelonaSpawned114] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.898 INFO: Spawning static cube actor [MelonaSpawned115] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.898 INFO: Spawning static cube actor [MelonaSpawned116] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.898 INFO: Spawning static cube actor [MelonaSpawned117] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.898 INFO: Spawning static cube actor [MelonaSpawned118] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.898 INFO: Spawning static cube actor [MelonaSpawned119] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.898 INFO: Spawning static cube actor [MelonaSpawned120] with model ID [Cube], with cached ID of [Cube]
190:07:2026 13:23:04.900 DEBUG: Starting Main Thread
190:07:2026 13:23:04.901 DEBUG: Starting Fast Thread
190:07:2026 13:23:04.901 DEBUG: Starting Render Thread
190:07:2026 13:23:04.906 INFO: Launched Terrain4J Engine
190:07:2026 13:23:04.906 DEBUG: Primary Thread Started
190:07:2026 13:23:04.906 INFO: Terrain4J dedicated server running without GLFW/Vulkan/OpenAL
190:07:2026 13:23:04.906 DEBUG: Main Thread Started
190:07:2026 13:23:04.906 DEBUG: Render Thread Started
190:07:2026 13:23:04.906 DEBUG: Fast Thread Started

View file

@ -69,7 +69,7 @@ public class GameCore implements GameLogic {
private ModelData RevolverData;
public ILight SkyLight;
private LoadingScreen loadingScreen;
private final StartMenu startMenu = new StartMenu();
public final StartMenu startMenu = new StartMenu();
public boolean StartMenuActive = true;
public List<IMoveableActorComponent> ActorEditorComponents = new ArrayList<>();
private Vector2f DeltaPos = new Vector2f(0,0);
@ -268,13 +268,23 @@ public class GameCore implements GameLogic {
ActorEditorComponents.add(new EditorActorComponent(Melona,new Vector3f(scene.GetCamera().GetPosition()),new Vector3f(1.0f,1.8f,1.0f)));
}
private void InitiateAudio(EngineInstance engineInstance){
if(RenderThread.Headless || PrimaryRuntime.Server) return;
private void InitiateAudio(EngineInstance engineInstance) {
if (RenderThread.Headless || PrimaryRuntime.Server) return;
AudioManager audioManager = engineInstance.audioManager();
Camera camera = engineInstance.scene().GetCamera();
audioManager.SetAttenuationModel(AL11.AL_EXPONENT_DISTANCE);
audioManager.SetListener(new SoundListener(camera.GetPosition()));
engineInstance.scene().SetUpAudio(engineInstance,audioManager);
engineInstance.scene().SetUpAudio(engineInstance, audioManager);
}
public void SwitchBGM(EngineInstance engineInstance, Scene scene, String path) {
AudioInstance bgm = scene.audioInstances.get("BGM");
if (bgm == null) {
scene.SetUpAudio(engineInstance, engineInstance.audioManager());
bgm = scene.audioInstances.get("BGM");
}
bgm.Pause();
bgm.ChangePath(path, engineInstance.audioManager());
bgm.Play();
}
@Override

View file

@ -23,7 +23,16 @@ import org.tinylog.Logger;
public class StartMenu implements GUIOverlay {
public boolean GameStarted = false;
public boolean ShowSettings = false;
public float Volume = 1.0f;
private void ApplyVolume(EngineInstance engineInstance) {
Scene scene = (Scene) engineInstance.scene();
AudioInstance bgm = scene.audioInstances.get("BGM");
if (bgm != null) {
bgm.SetVolume(Volume);
}
}
@Override
public void RenderGUI(EngineInstance engineInstance, long frameTimeNS, GameCore parent) {
if (GameStarted) return;
@ -61,20 +70,39 @@ public class StartMenu implements GUIOverlay {
if (ImGui.button("Play", buttonWidth, buttonHeight)) {
GameStarted = true;
Scene scene = (Scene) engineInstance.scene();
AudioInstance bgm = scene.audioInstances.get("BGM");
if (bgm == null) {
scene.SetUpAudio(engineInstance, engineInstance.audioManager());
bgm = scene.audioInstances.get("BGM");
}
bgm.Pause();
bgm.ChangePath("resources/EngineResources/audio/music/theshiteventhefar.ogg", engineInstance.audioManager());
bgm.Play();
parent.SwitchBGM(engineInstance, scene, "resources/EngineResources/audio/music/theshiteventhefar.ogg");
}
ImGui.setCursorPosX(buttonX);
if (ImGui.button("Settings", buttonWidth, buttonHeight)) {
System.exit(0);
ShowSettings = !ShowSettings;
}
if (ShowSettings) {
ImGui.spacing();
ImGui.setCursorPosX(buttonX);
ImGui.text("Volume: " + Math.round(Volume * 100) + "%");
ImGui.setCursorPosX(buttonX);
if (ImGui.button("-", 40f, 40f)) {
Volume = Math.max(0f, Volume - 0.1f);
ApplyVolume(engineInstance);
}
ImGui.sameLine();
if (ImGui.button("+", 40f, 40f)) {
Volume = Math.min(1f, Volume + 0.1f);
ApplyVolume(engineInstance);
}
ImGui.sameLine();
if (ImGui.button("Mute", 100f, 40f)) {
Scene scene = (Scene) engineInstance.scene();
AudioInstance bgm = scene.audioInstances.get("BGM");
bgm.Pause();
}
ImGui.sameLine();
if (ImGui.button("Unmute", 130f, 40f)) {
Scene scene = (Scene) engineInstance.scene();
AudioInstance bgm = scene.audioInstances.get("BGM");
bgm.Play();
}
}
ImGui.setCursorPosX(buttonX);
if (ImGui.button("Quit", buttonWidth, buttonHeight)) {

View file

@ -14,6 +14,7 @@ import net.halbear.Terrain4J.EngineCore.Main.GameCore;
import net.halbear.Terrain4J.EngineCore.Main.PrimaryRuntime;
import net.halbear.Terrain4J.EngineCore.Main.Scene.GUIs.Gimbal;
import net.halbear.Terrain4J.EngineCore.Main.Scene.GUIs.PerformanceOverlay;
import net.halbear.Terrain4J.EngineCore.Main.Scene.GUIs.StartMenu;
import net.halbear.Terrain4J.EngineCore.Threads.ClientConnectionThread;
import net.halbear.Terrain4J.EngineCore.Threads.RenderThread;
import net.halbear.Terrain4J.EngineCore.Vulkan.Rendering.DynamicMesh.DynamicTerrainMesh;
@ -61,6 +62,8 @@ public class Scene implements IScene {
public PlayerActor CurrentWeapon;
public PlayerActor Musket;
public PlayerActor Revolver;
private final StartMenu startMenu = new StartMenu();
public boolean StartMenuActive = true;
public List<String> ActiveGUIs = new ArrayList<>();
public Map<String, GUIOverlay> GUIReg = new HashMap<>();
@ -276,7 +279,17 @@ public class Scene implements IScene {
}
}
if (input.keySinglePress(GLFW_KEY_ESCAPE)) {
parent.StartMenuActive = true;
parent.startMenu.GameStarted = false;
parent.SwitchBGM(engineInstance, this, "resources/EngineResources/audio/music/MENUMUSIC_RetroFutureClean.ogg");
}
MouseListener mouseListener = window.getMouseInput();
if (mouseListener.isRightButtonPressed()) {
CurrentWeapon.SetPositionOffset(new Vector3f(0f,1.0f,-1.25f)); // centered = aiming
} else {
CurrentWeapon.SetPositionOffset(new Vector3f(0.5f,1.0f,-1.25f)); // hip-fire default
}
if(input.keyPressed(GLFW_KEY_1)) {
Gimbal.universalType = Gimbal.GimbalType.Move;
}