From 14bb66f45482a8c7c68d79c1b8582efeefc761e5 Mon Sep 17 00:00:00 2001 From: OneAvargeCoder193 Date: Tue, 17 Jun 2025 12:55:49 -0400 Subject: [PATCH] move gui windows to mod --- assets/cubyz/blocks/workbench.zig.zon | 2 +- build.zig | 2 ++ .../cubyz}/windows/advanced_controls.zig | 12 +++---- .../cubyz}/windows/change_name.zig | 12 +++---- {src/gui => mods/cubyz}/windows/chat.zig | 6 ++-- {src/gui => mods/cubyz}/windows/chest.zig | 2 +- {src/gui => mods/cubyz}/windows/controls.zig | 12 +++---- .../cubyz}/windows/creative_inventory.zig | 2 +- {src/gui => mods/cubyz}/windows/crosshair.zig | 2 +- {src/gui => mods/cubyz}/windows/debug.zig | 2 +- .../cubyz}/windows/debug_network.zig | 2 +- .../cubyz}/windows/debug_network_advanced.zig | 2 +- .../windows/delete_world_confirmation.zig | 10 +++--- .../windows/download_controller_mappings.zig | 12 +++---- {src/gui => mods/cubyz}/windows/energybar.zig | 2 +- .../cubyz}/windows/error_prompt.zig | 9 ++--- .../windows/gpu_performance_measuring.zig | 2 +- {src/gui => mods/cubyz}/windows/graphics.zig | 12 +++---- {src/gui => mods/cubyz}/windows/healthbar.zig | 2 +- {src/gui => mods/cubyz}/windows/hotbar.zig | 2 +- {src/gui => mods/cubyz}/windows/inventory.zig | 4 +-- .../cubyz}/windows/inventory_crafting.zig | 2 +- {src/gui => mods/cubyz}/windows/invite.zig | 14 ++++---- {src/gui => mods/cubyz}/windows/main.zig | 12 +++---- .../cubyz}/windows/manage_players.zig | 12 +++---- .../cubyz}/windows/multiplayer.zig | 14 ++++---- .../cubyz}/windows/notification.zig | 13 +++---- {src/gui => mods/cubyz}/windows/pause.zig | 10 +++--- .../gui => mods/cubyz}/windows/pause_gear.zig | 8 ++--- .../cubyz}/windows/performance_graph.zig | 2 +- .../cubyz}/windows/save_creation.zig | 18 +++++----- .../cubyz}/windows/save_selection.zig | 20 +++++------ {src/gui => mods/cubyz}/windows/settings.zig | 16 ++++----- .../windows/shared_inventory_testing.zig | 2 +- .../cubyz}/windows/sign_editor.zig | 10 +++--- {src/gui => mods/cubyz}/windows/sound.zig | 8 ++--- {src/gui => mods/cubyz}/windows/workbench.zig | 2 +- src/block_entity.zig | 6 ++-- src/graphics/Window.zig | 2 +- src/gui/gui.zig | 2 +- src/gui/windows/_windowlist.zig | 35 ------------------- src/main.zig | 32 ++++++++--------- src/network.zig | 2 +- src/renderer.zig | 4 +-- src/renderer/chunk_meshing.zig | 2 +- 45 files changed, 165 insertions(+), 196 deletions(-) rename {src/gui => mods/cubyz}/windows/advanced_controls.zig (82%) rename {src/gui => mods/cubyz}/windows/change_name.zig (90%) rename {src/gui => mods/cubyz}/windows/chat.zig (97%) rename {src/gui => mods/cubyz}/windows/chest.zig (98%) rename {src/gui => mods/cubyz}/windows/controls.zig (92%) rename {src/gui => mods/cubyz}/windows/creative_inventory.zig (98%) rename {src/gui => mods/cubyz}/windows/crosshair.zig (97%) rename {src/gui => mods/cubyz}/windows/debug.zig (99%) rename {src/gui => mods/cubyz}/windows/debug_network.zig (98%) rename {src/gui => mods/cubyz}/windows/debug_network_advanced.zig (98%) rename {src/gui => mods/cubyz}/windows/delete_world_confirmation.zig (86%) rename {src/gui => mods/cubyz}/windows/download_controller_mappings.zig (77%) rename {src/gui => mods/cubyz}/windows/energybar.zig (98%) rename {src/gui => mods/cubyz}/windows/error_prompt.zig (88%) rename {src/gui => mods/cubyz}/windows/gpu_performance_measuring.zig (98%) rename {src/gui => mods/cubyz}/windows/graphics.zig (93%) rename {src/gui => mods/cubyz}/windows/healthbar.zig (98%) rename {src/gui => mods/cubyz}/windows/hotbar.zig (97%) rename {src/gui => mods/cubyz}/windows/inventory.zig (95%) rename {src/gui => mods/cubyz}/windows/inventory_crafting.zig (99%) rename {src/gui => mods/cubyz}/windows/invite.zig (90%) rename {src/gui => mods/cubyz}/windows/main.zig (81%) rename {src/gui => mods/cubyz}/windows/manage_players.zig (87%) rename {src/gui => mods/cubyz}/windows/multiplayer.zig (90%) rename {src/gui => mods/cubyz}/windows/notification.zig (80%) rename {src/gui => mods/cubyz}/windows/pause.zig (84%) rename {src/gui => mods/cubyz}/windows/pause_gear.zig (88%) rename {src/gui => mods/cubyz}/windows/performance_graph.zig (98%) rename {src/gui => mods/cubyz}/windows/save_creation.zig (93%) rename {src/gui => mods/cubyz}/windows/save_selection.zig (90%) rename {src/gui => mods/cubyz}/windows/settings.zig (77%) rename {src/gui => mods/cubyz}/windows/shared_inventory_testing.zig (98%) rename {src/gui => mods/cubyz}/windows/sign_editor.zig (88%) rename {src/gui => mods/cubyz}/windows/sound.zig (87%) rename {src/gui => mods/cubyz}/windows/workbench.zig (99%) delete mode 100644 src/gui/windows/_windowlist.zig diff --git a/assets/cubyz/blocks/workbench.zig.zon b/assets/cubyz/blocks/workbench.zig.zon index 2f9f6d891..199072478 100644 --- a/assets/cubyz/blocks/workbench.zig.zon +++ b/assets/cubyz/blocks/workbench.zig.zon @@ -4,7 +4,7 @@ .drops = .{ .{.items = .{.auto}}, }, - .gui = .workbench, + .gui = "cubyz:workbench", .model = "cubyz:cube", .rotation = "cubyz:planar", .texture = "cubyz:workbench_back", diff --git a/build.zig b/build.zig index d5e094efa..b7de79a5b 100644 --- a/build.zig +++ b/build.zig @@ -141,10 +141,12 @@ fn addModFeatures(b: *std.Build, exe: *std.Build.Step.Compile) !void { exe.step.dependOn(step); try addModFeatureModule(b, exe, "rotation"); + try addModFeatureModule(b, exe, "windows"); } pub fn makeModFeaturesStep(step: *std.Build.Step, _: std.Build.Step.MakeOptions) anyerror!void { try makeModFeature(step, "rotation"); + try makeModFeature(step, "windows"); } pub fn build(b: *std.Build) !void { diff --git a/src/gui/windows/advanced_controls.zig b/mods/cubyz/windows/advanced_controls.zig similarity index 82% rename from src/gui/windows/advanced_controls.zig rename to mods/cubyz/windows/advanced_controls.zig index 39ae872f8..562ab35e4 100644 --- a/src/gui/windows/advanced_controls.zig +++ b/mods/cubyz/windows/advanced_controls.zig @@ -4,14 +4,14 @@ const main = @import("main"); const settings = main.settings; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const CheckBox = @import("../components/CheckBox.zig"); -const ContinuousSlider = @import("../components/ContinuousSlider.zig"); -const DiscreteSlider = @import("../components/DiscreteSlider.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const CheckBox = GuiComponent.CheckBox; +const ContinuousSlider = GuiComponent.ContinuousSlider; +const DiscreteSlider = GuiComponent.DiscreteSlider; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, diff --git a/src/gui/windows/change_name.zig b/mods/cubyz/windows/change_name.zig similarity index 90% rename from src/gui/windows/change_name.zig rename to mods/cubyz/windows/change_name.zig index 8b615727d..a01bd490d 100644 --- a/src/gui/windows/change_name.zig +++ b/mods/cubyz/windows/change_name.zig @@ -4,13 +4,13 @@ const main = @import("main"); const settings = main.settings; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const Label = @import("../components/Label.zig"); -const TextInput = @import("../components/TextInput.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const Label = GuiComponent.Label; +const TextInput = GuiComponent.TextInput; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -32,7 +32,7 @@ fn apply(_: usize) void { gui.closeWindowFromRef(&window); if(oldName.len == 0) { - gui.openWindow("main"); + gui.openWindow("cubyz:main"); } } diff --git a/src/gui/windows/chat.zig b/mods/cubyz/windows/chat.zig similarity index 97% rename from src/gui/windows/chat.zig rename to mods/cubyz/windows/chat.zig index 04d1399a2..6758defb1 100644 --- a/src/gui/windows/chat.zig +++ b/mods/cubyz/windows/chat.zig @@ -3,14 +3,14 @@ const std = @import("std"); const main = @import("main"); const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); +const Button = GuiComponent.Button; const Label = GuiComponent.Label; const MutexComponent = GuiComponent.MutexComponent; const TextInput = GuiComponent.TextInput; -const VerticalList = @import("../components/VerticalList.zig"); +const VerticalList = GuiComponent.VerticalList; const FixedSizeCircularBuffer = main.utils.FixedSizeCircularBuffer; pub var window: GuiWindow = GuiWindow{ diff --git a/src/gui/windows/chest.zig b/mods/cubyz/windows/chest.zig similarity index 98% rename from src/gui/windows/chest.zig rename to mods/cubyz/windows/chest.zig index 54ec4a5ea..ddae8146f 100644 --- a/src/gui/windows/chest.zig +++ b/mods/cubyz/windows/chest.zig @@ -6,7 +6,7 @@ const ItemStack = main.items.ItemStack; const Vec2f = main.vec.Vec2f; const Texture = main.graphics.Texture; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; const Button = GuiComponent.Button; diff --git a/src/gui/windows/controls.zig b/mods/cubyz/windows/controls.zig similarity index 92% rename from src/gui/windows/controls.zig rename to mods/cubyz/windows/controls.zig index 111141708..bf2da5d0b 100644 --- a/src/gui/windows/controls.zig +++ b/mods/cubyz/windows/controls.zig @@ -3,14 +3,14 @@ const std = @import("std"); const main = @import("main"); const Vec2f = main.vec.Vec2f; const c = main.Window.c; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const HorizontalList = @import("../components/HorizontalList.zig"); -const Label = @import("../components/Label.zig"); -const VerticalList = @import("../components/VerticalList.zig"); -const ContinuousSlider = @import("../components/ContinuousSlider.zig"); +const Button = GuiComponent.Button; +const HorizontalList = GuiComponent.HorizontalList; +const Label = GuiComponent.Label; +const VerticalList = GuiComponent.VerticalList; +const ContinuousSlider = GuiComponent.ContinuousSlider; pub var window = GuiWindow{ .contentSize = Vec2f{128, 192}, diff --git a/src/gui/windows/creative_inventory.zig b/mods/cubyz/windows/creative_inventory.zig similarity index 98% rename from src/gui/windows/creative_inventory.zig rename to mods/cubyz/windows/creative_inventory.zig index 4047a7b48..4c6234a47 100644 --- a/src/gui/windows/creative_inventory.zig +++ b/mods/cubyz/windows/creative_inventory.zig @@ -6,7 +6,7 @@ const Inventory = main.items.Inventory; const Player = main.game.Player; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; const HorizontalList = GuiComponent.HorizontalList; diff --git a/src/gui/windows/crosshair.zig b/mods/cubyz/windows/crosshair.zig similarity index 97% rename from src/gui/windows/crosshair.zig rename to mods/cubyz/windows/crosshair.zig index a8e9afbdb..e795ca9dd 100644 --- a/src/gui/windows/crosshair.zig +++ b/mods/cubyz/windows/crosshair.zig @@ -5,7 +5,7 @@ const graphics = main.graphics; const Texture = graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; const GuiComponent = gui.GuiComponent; diff --git a/src/gui/windows/debug.zig b/mods/cubyz/windows/debug.zig similarity index 99% rename from src/gui/windows/debug.zig rename to mods/cubyz/windows/debug.zig index f41552241..50a8f5818 100644 --- a/src/gui/windows/debug.zig +++ b/mods/cubyz/windows/debug.zig @@ -7,7 +7,7 @@ const Texture = graphics.Texture; const Vec2f = main.vec.Vec2f; const TaskType = main.utils.ThreadPool.TaskType; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; const GuiComponent = gui.GuiComponent; diff --git a/src/gui/windows/debug_network.zig b/mods/cubyz/windows/debug_network.zig similarity index 98% rename from src/gui/windows/debug_network.zig rename to mods/cubyz/windows/debug_network.zig index 6ea8f5734..68eed5ee8 100644 --- a/src/gui/windows/debug_network.zig +++ b/mods/cubyz/windows/debug_network.zig @@ -7,7 +7,7 @@ const Texture = graphics.Texture; const network = main.network; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; const GuiComponent = gui.GuiComponent; diff --git a/src/gui/windows/debug_network_advanced.zig b/mods/cubyz/windows/debug_network_advanced.zig similarity index 98% rename from src/gui/windows/debug_network_advanced.zig rename to mods/cubyz/windows/debug_network_advanced.zig index 0a8f09f61..1de151d4e 100644 --- a/src/gui/windows/debug_network_advanced.zig +++ b/mods/cubyz/windows/debug_network_advanced.zig @@ -7,7 +7,7 @@ const Texture = graphics.Texture; const network = main.network; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; const GuiComponent = gui.GuiComponent; diff --git a/src/gui/windows/delete_world_confirmation.zig b/mods/cubyz/windows/delete_world_confirmation.zig similarity index 86% rename from src/gui/windows/delete_world_confirmation.zig rename to mods/cubyz/windows/delete_world_confirmation.zig index e6d3145d7..ae5975fd0 100644 --- a/src/gui/windows/delete_world_confirmation.zig +++ b/mods/cubyz/windows/delete_world_confirmation.zig @@ -3,12 +3,12 @@ const std = @import("std"); const main = @import("main"); const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const Label = @import("../components/Label.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const Label = GuiComponent.Label; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -33,7 +33,7 @@ pub fn setDeleteWorldName(name: []const u8) void { fn flawedDeleteWorld(name: []const u8) !void { try main.files.deleteDir("saves", name); - gui.windowlist.save_selection.needsUpdate = true; + gui.windowlist.@"cubyz:save_selection".needsUpdate = true; } fn deleteWorld(_: usize) void { diff --git a/src/gui/windows/download_controller_mappings.zig b/mods/cubyz/windows/download_controller_mappings.zig similarity index 77% rename from src/gui/windows/download_controller_mappings.zig rename to mods/cubyz/windows/download_controller_mappings.zig index b03d47e52..d20c0a46e 100644 --- a/src/gui/windows/download_controller_mappings.zig +++ b/mods/cubyz/windows/download_controller_mappings.zig @@ -5,14 +5,14 @@ const files = main.files; const settings = main.settings; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const CheckBox = @import("../components/CheckBox.zig"); -const Label = @import("../components/Label.zig"); -const VerticalList = @import("../components/VerticalList.zig"); -const HorizontalList = @import("../components/HorizontalList.zig"); +const Button = GuiComponent.Button; +const CheckBox = GuiComponent.CheckBox; +const Label = GuiComponent.Label; +const VerticalList = GuiComponent.VerticalList; +const HorizontalList = GuiComponent.HorizontalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 64}, diff --git a/src/gui/windows/energybar.zig b/mods/cubyz/windows/energybar.zig similarity index 98% rename from src/gui/windows/energybar.zig rename to mods/cubyz/windows/energybar.zig index 3ce79415c..d6acad583 100644 --- a/src/gui/windows/energybar.zig +++ b/mods/cubyz/windows/energybar.zig @@ -6,7 +6,7 @@ const draw = graphics.draw; const Texture = graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; const GuiComponent = gui.GuiComponent; diff --git a/src/gui/windows/error_prompt.zig b/mods/cubyz/windows/error_prompt.zig similarity index 88% rename from src/gui/windows/error_prompt.zig rename to mods/cubyz/windows/error_prompt.zig index 578fb7c36..1fe9c89c0 100644 --- a/src/gui/windows/error_prompt.zig +++ b/mods/cubyz/windows/error_prompt.zig @@ -6,11 +6,12 @@ const settings = main.settings; const Vec2f = main.vec.Vec2f; const Texture = main.graphics.Texture; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; -const Label = @import("../components/Label.zig"); -const VerticalList = @import("../components/VerticalList.zig"); -const Button = @import("../components/Button.zig"); +const GuiComponent = gui.GuiComponent; +const Label = GuiComponent.Label; +const VerticalList = GuiComponent.VerticalList; +const Button = GuiComponent.Button; var fileExplorerIcon: Texture = undefined; diff --git a/src/gui/windows/gpu_performance_measuring.zig b/mods/cubyz/windows/gpu_performance_measuring.zig similarity index 98% rename from src/gui/windows/gpu_performance_measuring.zig rename to mods/cubyz/windows/gpu_performance_measuring.zig index a3ef5d9aa..dc7161b6a 100644 --- a/src/gui/windows/gpu_performance_measuring.zig +++ b/mods/cubyz/windows/gpu_performance_measuring.zig @@ -7,7 +7,7 @@ const draw = graphics.draw; const Texture = graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; const GuiComponent = gui.GuiComponent; diff --git a/src/gui/windows/graphics.zig b/mods/cubyz/windows/graphics.zig similarity index 93% rename from src/gui/windows/graphics.zig rename to mods/cubyz/windows/graphics.zig index d941858c6..c6ce3153a 100644 --- a/src/gui/windows/graphics.zig +++ b/mods/cubyz/windows/graphics.zig @@ -4,14 +4,14 @@ const main = @import("main"); const settings = main.settings; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const CheckBox = @import("../components/CheckBox.zig"); -const ContinuousSlider = @import("../components/ContinuousSlider.zig"); -const DiscreteSlider = @import("../components/DiscreteSlider.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const CheckBox = GuiComponent.CheckBox; +const ContinuousSlider = GuiComponent.ContinuousSlider; +const DiscreteSlider = GuiComponent.DiscreteSlider; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, diff --git a/src/gui/windows/healthbar.zig b/mods/cubyz/windows/healthbar.zig similarity index 98% rename from src/gui/windows/healthbar.zig rename to mods/cubyz/windows/healthbar.zig index e095c77ac..21801198a 100644 --- a/src/gui/windows/healthbar.zig +++ b/mods/cubyz/windows/healthbar.zig @@ -6,7 +6,7 @@ const draw = graphics.draw; const Texture = graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; const GuiComponent = gui.GuiComponent; diff --git a/src/gui/windows/hotbar.zig b/mods/cubyz/windows/hotbar.zig similarity index 97% rename from src/gui/windows/hotbar.zig rename to mods/cubyz/windows/hotbar.zig index f5dadc1f7..5a7763652 100644 --- a/src/gui/windows/hotbar.zig +++ b/mods/cubyz/windows/hotbar.zig @@ -6,7 +6,7 @@ const Player = main.game.Player; const Vec2f = main.vec.Vec2f; const Texture = main.graphics.Texture; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; const HorizontalList = GuiComponent.HorizontalList; diff --git a/src/gui/windows/inventory.zig b/mods/cubyz/windows/inventory.zig similarity index 95% rename from src/gui/windows/inventory.zig rename to mods/cubyz/windows/inventory.zig index 7eb94113e..13a33b7f6 100644 --- a/src/gui/windows/inventory.zig +++ b/mods/cubyz/windows/inventory.zig @@ -6,7 +6,7 @@ const ItemStack = main.items.ItemStack; const Vec2f = main.vec.Vec2f; const Texture = main.graphics.Texture; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; const Button = GuiComponent.Button; @@ -45,7 +45,7 @@ pub fn onOpen() void { // TODO: armor slots, backpack slot + stack-based backpack inventory, other items maybe? { const row = HorizontalList.init(); - row.add(Button.initIcon(.{0, 0}, .{32, 32}, craftingIcon, true, gui.openWindowCallback("inventory_crafting"))); + row.add(Button.initIcon(.{0, 0}, .{32, 32}, craftingIcon, true, gui.openWindowCallback("cubyz:inventory_crafting"))); list.add(row); } for(0..2) |y| { diff --git a/src/gui/windows/inventory_crafting.zig b/mods/cubyz/windows/inventory_crafting.zig similarity index 99% rename from src/gui/windows/inventory_crafting.zig rename to mods/cubyz/windows/inventory_crafting.zig index 2309e5b8c..79f6d6731 100644 --- a/src/gui/windows/inventory_crafting.zig +++ b/mods/cubyz/windows/inventory_crafting.zig @@ -9,7 +9,7 @@ const Player = main.game.Player; const Texture = main.graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; const Button = GuiComponent.Button; diff --git a/src/gui/windows/invite.zig b/mods/cubyz/windows/invite.zig similarity index 90% rename from src/gui/windows/invite.zig rename to mods/cubyz/windows/invite.zig index 4bb5257d1..007e359c1 100644 --- a/src/gui/windows/invite.zig +++ b/mods/cubyz/windows/invite.zig @@ -5,14 +5,14 @@ const ConnectionManager = main.network.ConnectionManager; const settings = main.settings; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const CheckBox = @import("../components/CheckBox.zig"); -const Label = @import("../components/Label.zig"); -const TextInput = @import("../components/TextInput.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const CheckBox = GuiComponent.CheckBox; +const Label = GuiComponent.Label; +const TextInput = GuiComponent.TextInput; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -73,7 +73,7 @@ pub fn onOpen() void { ipAddressEntry = TextInput.init(.{0, 0}, width, 32, settings.lastUsedIPAddress, .{.callback = &invite}, .{}); list.add(ipAddressEntry); list.add(Button.initText(.{0, 0}, 100, "Invite", .{.callback = &invite})); - list.add(Button.initText(.{0, 0}, 100, "Manage Players", gui.openWindowCallback("manage_players"))); + list.add(Button.initText(.{0, 0}, 100, "Manage Players", gui.openWindowCallback("cubyz:manage_players"))); list.add(CheckBox.init(.{0, 0}, width, "Allow anyone to join (requires a publicly visible IP address+port which may need some configuration in your router)", main.server.connectionManager.allowNewConnections.load(.monotonic), &makePublic)); list.finish(.center); window.rootComponent = list.toComponent(); diff --git a/src/gui/windows/main.zig b/mods/cubyz/windows/main.zig similarity index 81% rename from src/gui/windows/main.zig rename to mods/cubyz/windows/main.zig index 39b775025..61cf4a27c 100644 --- a/src/gui/windows/main.zig +++ b/mods/cubyz/windows/main.zig @@ -3,11 +3,11 @@ const std = @import("std"); const main = @import("main"); const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -21,9 +21,9 @@ fn exitGame(_: usize) void { } pub fn onOpen() void { const list = VerticalList.init(.{padding, 16 + padding}, 300, 16); - list.add(Button.initText(.{0, 0}, 128, "Singleplayer", gui.openWindowCallback("save_selection"))); - list.add(Button.initText(.{0, 0}, 128, "Multiplayer", gui.openWindowCallback("multiplayer"))); - list.add(Button.initText(.{0, 0}, 128, "Settings", gui.openWindowCallback("settings"))); + list.add(Button.initText(.{0, 0}, 128, "Singleplayer", gui.openWindowCallback("cubyz:save_selection"))); + list.add(Button.initText(.{0, 0}, 128, "Multiplayer", gui.openWindowCallback("cubyz:multiplayer"))); + list.add(Button.initText(.{0, 0}, 128, "Settings", gui.openWindowCallback("cubyz:settings"))); list.add(Button.initText(.{0, 0}, 128, "Touch Grass", .{.callback = &exitGame})); list.finish(.center); window.rootComponent = list.toComponent(); diff --git a/src/gui/windows/manage_players.zig b/mods/cubyz/windows/manage_players.zig similarity index 87% rename from src/gui/windows/manage_players.zig rename to mods/cubyz/windows/manage_players.zig index 336dc8631..b35136440 100644 --- a/src/gui/windows/manage_players.zig +++ b/mods/cubyz/windows/manage_players.zig @@ -5,14 +5,14 @@ const ConnectionManager = main.network.ConnectionManager; const settings = main.settings; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const Label = @import("../components/Label.zig"); -const TextInput = @import("../components/TextInput.zig"); -const VerticalList = @import("../components/VerticalList.zig"); -const HorizontalList = @import("../components/HorizontalList.zig"); +const Button = GuiComponent.Button; +const Label = GuiComponent.Label; +const TextInput = GuiComponent.TextInput; +const VerticalList = GuiComponent.VerticalList; +const HorizontalList = GuiComponent.HorizontalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, diff --git a/src/gui/windows/multiplayer.zig b/mods/cubyz/windows/multiplayer.zig similarity index 90% rename from src/gui/windows/multiplayer.zig rename to mods/cubyz/windows/multiplayer.zig index c2fa59153..3b5c26807 100644 --- a/src/gui/windows/multiplayer.zig +++ b/mods/cubyz/windows/multiplayer.zig @@ -5,13 +5,13 @@ const ConnectionManager = main.network.ConnectionManager; const settings = main.settings; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const Label = @import("../components/Label.zig"); -const TextInput = @import("../components/TextInput.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const Label = GuiComponent.Label; +const TextInput = GuiComponent.TextInput; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -62,7 +62,7 @@ fn join(_: usize) void { const formattedError = std.fmt.allocPrint(main.stackAllocator.allocator, "Encountered error while opening world: {s}", .{@errorName(err)}) catch unreachable; defer main.stackAllocator.free(formattedError); std.log.err("{s}", .{formattedError}); - main.gui.windowlist.notification.raiseNotification(formattedError); + main.gui.windowlist.@"cubyz:notification".raiseNotification(formattedError); main.game.world = null; _connection.world = null; return; @@ -73,7 +73,7 @@ fn join(_: usize) void { connection = null; } else { std.log.err("No connection found. Cannot connect.", .{}); - main.gui.windowlist.notification.raiseNotification("No connection found. Cannot connect."); + main.gui.windowlist.@"cubyz:notification".raiseNotification("No connection found. Cannot connect."); } for(gui.openWindows.items) |openWindow| { gui.closeWindowFromRef(openWindow); diff --git a/src/gui/windows/notification.zig b/mods/cubyz/windows/notification.zig similarity index 80% rename from src/gui/windows/notification.zig rename to mods/cubyz/windows/notification.zig index c87f48dd1..9b16897a9 100644 --- a/src/gui/windows/notification.zig +++ b/mods/cubyz/windows/notification.zig @@ -3,11 +3,12 @@ const std = @import("std"); const main = @import("main"); const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const VerticalList = @import("../components/VerticalList.zig"); -const Label = @import("../components/Label.zig"); +const GuiComponent = gui.GuiComponent; +const Button = GuiComponent.Button; +const VerticalList = GuiComponent.VerticalList; +const Label = GuiComponent.Label; pub var window: GuiWindow = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -28,9 +29,9 @@ fn setNotificationText(newText: []const u8) void { } pub fn raiseNotification(notifText: []const u8) void { - main.gui.closeWindow("notification"); + main.gui.closeWindow("cubyz:notification"); setNotificationText(notifText); - main.gui.openWindow("notification"); + main.gui.openWindow("cubyz:notification"); } fn ack(_: usize) void { diff --git a/src/gui/windows/pause.zig b/mods/cubyz/windows/pause.zig similarity index 84% rename from src/gui/windows/pause.zig rename to mods/cubyz/windows/pause.zig index b7bf85fd9..f5f9f96aa 100644 --- a/src/gui/windows/pause.zig +++ b/mods/cubyz/windows/pause.zig @@ -3,11 +3,11 @@ const std = @import("std"); const main = @import("main"); const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -22,9 +22,9 @@ fn reorderHudCallbackFunction(_: usize) void { pub fn onOpen() void { const list = VerticalList.init(.{padding, 16 + padding}, 300, 16); if(main.server.world != null) { - list.add(Button.initText(.{0, 0}, 128, "Invite Player", gui.openWindowCallback("invite"))); + list.add(Button.initText(.{0, 0}, 128, "Invite Player", gui.openWindowCallback("cubyz:invite"))); } - list.add(Button.initText(.{0, 0}, 128, "Settings", gui.openWindowCallback("settings"))); + list.add(Button.initText(.{0, 0}, 128, "Settings", gui.openWindowCallback("cubyz:settings"))); list.add(Button.initText(.{0, 0}, 128, "Reorder HUD", .{.callback = &reorderHudCallbackFunction})); list.add(Button.initText(.{0, 0}, 128, "Exit World", .{.callback = &main.exitToMenu})); list.finish(.center); diff --git a/src/gui/windows/pause_gear.zig b/mods/cubyz/windows/pause_gear.zig similarity index 88% rename from src/gui/windows/pause_gear.zig rename to mods/cubyz/windows/pause_gear.zig index 7b8a965b1..0c743800d 100644 --- a/src/gui/windows/pause_gear.zig +++ b/mods/cubyz/windows/pause_gear.zig @@ -4,14 +4,14 @@ const main = @import("main"); const Texture = main.graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); +const Button = GuiComponent.Button; const Label = GuiComponent.Label; const MutexComponent = GuiComponent.MutexComponent; const TextInput = GuiComponent.TextInput; -const VerticalList = @import("../components/VerticalList.zig"); +const VerticalList = GuiComponent.VerticalList; pub var window: GuiWindow = GuiWindow{ .relativePosition = .{ @@ -50,7 +50,7 @@ pub fn deinit() void { } pub fn onOpen() void { - const button = Button.initIcon(.{0, 0}, .{64, 64}, pauseIcon, true, gui.openWindowCallback("pause")); + const button = Button.initIcon(.{0, 0}, .{64, 64}, pauseIcon, true, gui.openWindowCallback("cubyz:pause")); window.contentSize = button.size; window.rootComponent = button.toComponent(); } diff --git a/src/gui/windows/performance_graph.zig b/mods/cubyz/windows/performance_graph.zig similarity index 98% rename from src/gui/windows/performance_graph.zig rename to mods/cubyz/windows/performance_graph.zig index 4d5122ee6..002dc417f 100644 --- a/src/gui/windows/performance_graph.zig +++ b/mods/cubyz/windows/performance_graph.zig @@ -6,7 +6,7 @@ const draw = graphics.draw; const Texture = graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiWindow = gui.GuiWindow; const GuiComponent = gui.GuiComponent; diff --git a/src/gui/windows/save_creation.zig b/mods/cubyz/windows/save_creation.zig similarity index 93% rename from src/gui/windows/save_creation.zig rename to mods/cubyz/windows/save_creation.zig index 958f197e7..a59809f21 100644 --- a/src/gui/windows/save_creation.zig +++ b/mods/cubyz/windows/save_creation.zig @@ -6,15 +6,15 @@ const settings = main.settings; const Vec2f = main.vec.Vec2f; const NeverFailingAllocator = main.heap.NeverFailingAllocator; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const HorizontalList = @import("../components/HorizontalList.zig"); -const Label = @import("../components/Label.zig"); -const TextInput = @import("../components/TextInput.zig"); -const CheckBox = @import("../components/CheckBox.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const HorizontalList = GuiComponent.HorizontalList; +const Label = GuiComponent.Label; +const TextInput = GuiComponent.TextInput; +const CheckBox = GuiComponent.CheckBox; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -138,8 +138,8 @@ fn flawedCreateWorld() !void { } // TODO: Make the seed configurable gui.closeWindowFromRef(&window); - gui.windowlist.save_selection.needsUpdate = true; - gui.openWindow("save_selection"); + gui.windowlist.@"cubyz:save_selection".needsUpdate = true; + gui.openWindow("cubyz:save_selection"); } pub fn onOpen() void { diff --git a/src/gui/windows/save_selection.zig b/mods/cubyz/windows/save_selection.zig similarity index 90% rename from src/gui/windows/save_selection.zig rename to mods/cubyz/windows/save_selection.zig index c2c1e7aa0..deee4e87c 100644 --- a/src/gui/windows/save_selection.zig +++ b/mods/cubyz/windows/save_selection.zig @@ -7,14 +7,14 @@ const Vec2f = main.vec.Vec2f; const NeverFailingAllocator = main.heap.NeverFailingAllocator; const Texture = main.graphics.Texture; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const HorizontalList = @import("../components/HorizontalList.zig"); -const Label = @import("../components/Label.zig"); -const TextInput = @import("../components/TextInput.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const HorizontalList = GuiComponent.HorizontalList; +const Label = GuiComponent.Label; +const TextInput = GuiComponent.TextInput; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -82,9 +82,9 @@ fn openWorldWrap(index: usize) void { // TODO: Improve this situation. Maybe it } fn deleteWorld(index: usize) void { - main.gui.closeWindow("delete_world_confirmation"); - main.gui.windowlist.delete_world_confirmation.setDeleteWorldName(worldList.items[index].fileName); - main.gui.openWindow("delete_world_confirmation"); + main.gui.closeWindow("cubyz:delete_world_confirmation"); + main.gui.windowlist.@"cubyz:delete_world_confirmation".setDeleteWorldName(worldList.items[index].fileName); + main.gui.openWindow("cubyz:delete_world_confirmation"); } fn openFolder(index: usize) void { @@ -106,7 +106,7 @@ pub fn onOpen() void { buttonNameArena = main.heap.NeverFailingArenaAllocator.init(main.globalAllocator); const list = VerticalList.init(.{padding, 16 + padding}, 300, 8); list.add(Label.init(.{0, 0}, width, "**Select World**", .center)); - list.add(Button.initText(.{0, 0}, 128, "Create New World", gui.openWindowCallback("save_creation"))); + list.add(Button.initText(.{0, 0}, 128, "Create New World", gui.openWindowCallback("cubyz:save_creation"))); readingSaves: { var dir = std.fs.cwd().makeOpenPath("saves", .{.iterate = true}) catch |err| { list.add(Label.init(.{0, 0}, 128, "Encountered error while trying to open saves folder:", .center)); diff --git a/src/gui/windows/settings.zig b/mods/cubyz/windows/settings.zig similarity index 77% rename from src/gui/windows/settings.zig rename to mods/cubyz/windows/settings.zig index 45f623d34..01efe289f 100644 --- a/src/gui/windows/settings.zig +++ b/mods/cubyz/windows/settings.zig @@ -3,11 +3,11 @@ const std = @import("std"); const main = @import("main"); const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const VerticalList = GuiComponent.VerticalList; pub var window: GuiWindow = GuiWindow{ .contentSize = Vec2f{128, 256}, @@ -18,11 +18,11 @@ const padding: f32 = 8; pub fn onOpen() void { const list = VerticalList.init(.{padding, 16 + padding}, 300, 16); - list.add(Button.initText(.{0, 0}, 128, "Graphics", gui.openWindowCallback("graphics"))); - list.add(Button.initText(.{0, 0}, 128, "Sound", gui.openWindowCallback("sound"))); - list.add(Button.initText(.{0, 0}, 128, "Controls", gui.openWindowCallback("controls"))); - list.add(Button.initText(.{0, 0}, 128, "Advanced Controls", gui.openWindowCallback("advanced_controls"))); - list.add(Button.initText(.{0, 0}, 128, "Change Name", gui.openWindowCallback("change_name"))); + list.add(Button.initText(.{0, 0}, 128, "Graphics", gui.openWindowCallback("cubyz:graphics"))); + list.add(Button.initText(.{0, 0}, 128, "Sound", gui.openWindowCallback("cubyz:sound"))); + list.add(Button.initText(.{0, 0}, 128, "Controls", gui.openWindowCallback("cubyz:controls"))); + list.add(Button.initText(.{0, 0}, 128, "Advanced Controls", gui.openWindowCallback("cubyz:advanced_controls"))); + list.add(Button.initText(.{0, 0}, 128, "Change Name", gui.openWindowCallback("cubyz:change_name"))); list.finish(.center); window.rootComponent = list.toComponent(); window.contentSize = window.rootComponent.?.pos() + window.rootComponent.?.size() + @as(Vec2f, @splat(padding)); diff --git a/src/gui/windows/shared_inventory_testing.zig b/mods/cubyz/windows/shared_inventory_testing.zig similarity index 98% rename from src/gui/windows/shared_inventory_testing.zig rename to mods/cubyz/windows/shared_inventory_testing.zig index 04d3c35e3..427923943 100644 --- a/src/gui/windows/shared_inventory_testing.zig +++ b/mods/cubyz/windows/shared_inventory_testing.zig @@ -10,7 +10,7 @@ const Player = main.game.Player; const Texture = main.graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; const Button = GuiComponent.Button; diff --git a/src/gui/windows/sign_editor.zig b/mods/cubyz/windows/sign_editor.zig similarity index 88% rename from src/gui/windows/sign_editor.zig rename to mods/cubyz/windows/sign_editor.zig index 018cfd6ce..3d686ce81 100644 --- a/src/gui/windows/sign_editor.zig +++ b/mods/cubyz/windows/sign_editor.zig @@ -4,13 +4,13 @@ const main = @import("main"); const settings = main.settings; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const Label = @import("../components/Label.zig"); -const TextInput = @import("../components/TextInput.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const Label = GuiComponent.Label; +const TextInput = GuiComponent.TextInput; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, diff --git a/src/gui/windows/sound.zig b/mods/cubyz/windows/sound.zig similarity index 87% rename from src/gui/windows/sound.zig rename to mods/cubyz/windows/sound.zig index c1349a96e..a9793721e 100644 --- a/src/gui/windows/sound.zig +++ b/mods/cubyz/windows/sound.zig @@ -5,12 +5,12 @@ const settings = main.settings; const Vec2f = main.vec.Vec2f; const NeverFailingAllocator = main.heap.NeverFailingAllocator; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; -const Button = @import("../components/Button.zig"); -const ContinuousSlider = @import("../components/ContinuousSlider.zig"); -const VerticalList = @import("../components/VerticalList.zig"); +const Button = GuiComponent.Button; +const ContinuousSlider = GuiComponent.ContinuousSlider; +const VerticalList = GuiComponent.VerticalList; pub var window = GuiWindow{ .contentSize = Vec2f{128, 256}, diff --git a/src/gui/windows/workbench.zig b/mods/cubyz/windows/workbench.zig similarity index 99% rename from src/gui/windows/workbench.zig rename to mods/cubyz/windows/workbench.zig index 985e27511..08b467bbb 100644 --- a/src/gui/windows/workbench.zig +++ b/mods/cubyz/windows/workbench.zig @@ -12,7 +12,7 @@ const Player = main.game.Player; const Texture = main.graphics.Texture; const Vec2f = main.vec.Vec2f; -const gui = @import("../gui.zig"); +const gui = main.gui; const GuiComponent = gui.GuiComponent; const GuiWindow = gui.GuiWindow; const Button = GuiComponent.Button; diff --git a/src/block_entity.zig b/src/block_entity.zig index a2f4aa42c..fa4d3800d 100644 --- a/src/block_entity.zig +++ b/src/block_entity.zig @@ -225,8 +225,8 @@ pub const BlockEntityTypes = struct { const inventory = main.items.Inventory.init(main.globalAllocator, 20, .normal, .{.blockInventory = pos}); - main.gui.windowlist.chest.setInventory(inventory); - main.gui.openWindow("chest"); + main.gui.windowlist.@"cubyz:chest".setInventory(inventory); + main.gui.openWindow("cubyz:chest"); main.Window.setMouseGrabbed(false); return .handled; @@ -327,7 +327,7 @@ pub const BlockEntityTypes = struct { StorageClient.mutex.lock(); defer StorageClient.mutex.unlock(); const data = StorageClient.get(pos, chunk); - main.gui.windowlist.sign_editor.openFromSignData(pos, if(data) |_data| _data.text else ""); + main.gui.windowlist.@"cubyz:sign_editor".openFromSignData(pos, if(data) |_data| _data.text else ""); return .handled; } diff --git a/src/graphics/Window.zig b/src/graphics/Window.zig index 881dae643..21b516bd7 100644 --- a/src/graphics/Window.zig +++ b/src/graphics/Window.zig @@ -148,7 +148,7 @@ pub const Gamepad = struct { }; main.threadPool.addTask(task, &vtable); // Don't attempt to open the window before the GUI is initialized. - main.gui.openWindow("download_controller_mappings"); + main.gui.openWindow("cubyz:download_controller_mappings"); } pub fn getPriority(_: *ControllerMappingDownloadTask) f32 { diff --git a/src/gui/gui.zig b/src/gui/gui.zig index a1b4ea18a..46b8c474b 100644 --- a/src/gui/gui.zig +++ b/src/gui/gui.zig @@ -21,7 +21,7 @@ const TextInput = @import("components/TextInput.zig"); pub const GuiComponent = @import("gui_component.zig").GuiComponent; pub const GuiWindow = @import("GuiWindow.zig"); -pub const windowlist = @import("windows/_windowlist.zig"); +pub const windowlist = @import("windows"); const GamepadCursor = @import("gamepad_cursor.zig"); var windowList: List(*GuiWindow) = undefined; diff --git a/src/gui/windows/_windowlist.zig b/src/gui/windows/_windowlist.zig deleted file mode 100644 index ef551fcd7..000000000 --- a/src/gui/windows/_windowlist.zig +++ /dev/null @@ -1,35 +0,0 @@ -pub const advanced_controls = @import("advanced_controls.zig"); -pub const change_name = @import("change_name.zig"); -pub const chat = @import("chat.zig"); -pub const chest = @import("chest.zig"); -pub const controls = @import("controls.zig"); -pub const creative_inventory = @import("creative_inventory.zig"); -pub const crosshair = @import("crosshair.zig"); -pub const debug_network = @import("debug_network.zig"); -pub const debug_network_advanced = @import("debug_network_advanced.zig"); -pub const debug = @import("debug.zig"); -pub const delete_world_confirmation = @import("delete_world_confirmation.zig"); -pub const download_controller_mappings = @import("download_controller_mappings.zig"); -pub const energybar = @import("energybar.zig"); -pub const error_prompt = @import("error_prompt.zig"); -pub const gpu_performance_measuring = @import("gpu_performance_measuring.zig"); -pub const graphics = @import("graphics.zig"); -pub const healthbar = @import("healthbar.zig"); -pub const hotbar = @import("hotbar.zig"); -pub const inventory = @import("inventory.zig"); -pub const inventory_crafting = @import("inventory_crafting.zig"); -pub const invite = @import("invite.zig"); -pub const main = @import("main.zig"); -pub const manage_players = @import("manage_players.zig"); -pub const multiplayer = @import("multiplayer.zig"); -pub const notification = @import("notification.zig"); -pub const pause = @import("pause.zig"); -pub const pause_gear = @import("pause_gear.zig"); -pub const performance_graph = @import("performance_graph.zig"); -pub const save_creation = @import("save_creation.zig"); -pub const save_selection = @import("save_selection.zig"); -pub const settings = @import("settings.zig"); -pub const shared_inventory_testing = @import("shared_inventory_testing.zig"); -pub const sign_editor = @import("sign_editor.zig"); -pub const sound = @import("sound.zig"); -pub const workbench = @import("workbench.zig"); diff --git a/src/main.zig b/src/main.zig index 5c2f5e8bf..96cafbc2e 100644 --- a/src/main.zig +++ b/src/main.zig @@ -203,7 +203,7 @@ pub const std_options: std.Options = .{ // MARK: std_options logToStdErr(formatString, resultArgs); if(level == .err and !openingErrorWindow) { openingErrorWindow = true; - gui.openWindow("error_prompt"); + gui.openWindow("cubyz:error_prompt"); openingErrorWindow = false; } } @@ -284,30 +284,30 @@ fn ungrabMouse() void { fn openInventory() void { if(game.world == null) return; gui.toggleGameMenu(); - gui.openWindow("inventory"); + gui.openWindow("cubyz:inventory"); } fn openCreativeInventory() void { if(game.world == null) return; if(!game.Player.isCreative()) return; gui.toggleGameMenu(); - gui.openWindow("creative_inventory"); + gui.openWindow("cubyz:creative_inventory"); } fn openSharedInventoryTesting() void { if(game.world == null) return; ungrabMouse(); - gui.openWindow("shared_inventory_testing"); + gui.openWindow("cubyz:shared_inventory_testing"); } fn openChat() void { if(game.world == null) return; ungrabMouse(); - gui.openWindow("chat"); - gui.windowlist.chat.input.select(); + gui.openWindow("cubyz:chat"); + gui.windowlist.@"cubyz:chat".input.select(); } fn openCommand() void { if(game.world == null) return; openChat(); - gui.windowlist.chat.input.clear(); - gui.windowlist.chat.input.inputCharacter('/'); + gui.windowlist.@"cubyz:chat".input.clear(); + gui.windowlist.@"cubyz:chat".input.inputCharacter('/'); } fn takeBackgroundImageFn() void { if(game.world == null) return; @@ -649,9 +649,9 @@ pub fn main() void { // MARK: main() defer particles.ParticleManager.deinit(); if(settings.playerName.len == 0) { - gui.openWindow("change_name"); + gui.openWindow("cubyz:change_name"); } else { - gui.openWindow("main"); + gui.openWindow("cubyz:main"); } server.terrain.initGenerators(); @@ -664,7 +664,7 @@ pub fn main() void { // MARK: main() if(settings.developerAutoEnterWorld.len != 0) { // Speed up the dev process by entering the world directly. - gui.windowlist.save_selection.openWorld(settings.developerAutoEnterWorld); + gui.windowlist.@"cubyz:save_selection".openWorld(settings.developerAutoEnterWorld); } audio.setMusic("cubyz:cubyz"); @@ -674,13 +674,13 @@ pub fn main() void { // MARK: main() if(!isHidden) { c.glfwSwapBuffers(Window.window); // Clear may also wait on vsync, so it's done before handling events: - gui.windowlist.gpu_performance_measuring.startQuery(.screenbuffer_clear); + gui.windowlist.@"cubyz:gpu_performance_measuring".startQuery(.screenbuffer_clear); c.glDepthFunc(c.GL_LESS); c.glDepthMask(c.GL_TRUE); c.glDisable(c.GL_SCISSOR_TEST); c.glClearColor(0.5, 1, 1, 1); c.glClear(c.GL_DEPTH_BUFFER_BIT | c.GL_STENCIL_BUFFER_BIT | c.GL_COLOR_BUFFER_BIT); - gui.windowlist.gpu_performance_measuring.stopQuery(); + gui.windowlist.@"cubyz:gpu_performance_measuring".stopQuery(); } else { std.time.sleep(16_000_000); } @@ -714,9 +714,9 @@ pub fn main() void { // MARK: main() if(!isHidden) { renderer.render(game.Player.getEyePosBlocking(), deltaTime); // Render the GUI - gui.windowlist.gpu_performance_measuring.startQuery(.gui); + gui.windowlist.@"cubyz:gpu_performance_measuring".startQuery(.gui); gui.updateAndRenderGui(); - gui.windowlist.gpu_performance_measuring.stopQuery(); + gui.windowlist.@"cubyz:gpu_performance_measuring".stopQuery(); } if(shouldExitToMenu.load(.monotonic)) { @@ -725,7 +725,7 @@ pub fn main() void { // MARK: main() world.deinit(); game.world = null; } - gui.openWindow("main"); + gui.openWindow("cubyz:main"); audio.setMusic("cubyz:cubyz"); } } diff --git a/src/network.zig b/src/network.zig index 1e9be15de..4a98fcf4e 100644 --- a/src/network.zig +++ b/src/network.zig @@ -1149,7 +1149,7 @@ pub const Protocols = struct { } main.server.messageFrom(msg, user); } else { - main.gui.windowlist.chat.addMessage(msg); + main.gui.windowlist.@"cubyz:chat".addMessage(msg); } } diff --git a/src/renderer.zig b/src/renderer.zig index 1284164aa..36d83bbb3 100644 --- a/src/renderer.zig +++ b/src/renderer.zig @@ -16,8 +16,8 @@ const models = @import("models.zig"); const network = @import("network.zig"); const settings = @import("settings.zig"); const vec = @import("vec.zig"); -const gpu_performance_measuring = main.gui.windowlist.gpu_performance_measuring; -const crosshair = main.gui.windowlist.crosshair; +const gpu_performance_measuring = main.gui.windowlist.@"cubyz:gpu_performance_measuring"; +const crosshair = main.gui.windowlist.@"cubyz:crosshair"; const Vec2f = vec.Vec2f; const Vec3i = vec.Vec3i; const Vec3f = vec.Vec3f; diff --git a/src/renderer/chunk_meshing.zig b/src/renderer/chunk_meshing.zig index 1c474f78e..2c3ff47aa 100644 --- a/src/renderer/chunk_meshing.zig +++ b/src/renderer/chunk_meshing.zig @@ -20,7 +20,7 @@ const Vec3i = vec.Vec3i; const Vec3f = vec.Vec3f; const Vec3d = vec.Vec3d; const Mat4f = vec.Mat4f; -const gpu_performance_measuring = main.gui.windowlist.gpu_performance_measuring; +const gpu_performance_measuring = main.gui.windowlist.@"cubyz:gpu_performance_measuring"; const mesh_storage = @import("mesh_storage.zig");