Fixed crashes due to removal of 'label' from CyberarmEngine GUI system

This commit is contained in:
2024-04-09 08:27:00 -05:00
parent 3851eb1630
commit ce089afbf1
6 changed files with 68 additions and 71 deletions

View File

@@ -93,16 +93,16 @@ class IMICFPS
end
def page_display
label "Display", text_size: 50
banner "Display", text_size: 50
stack(width: 1.0, height: 128) do
flow(width: 1.0) do
label "Width", width: 96
tagline "Width", width: 96
edit_line window.width.to_s, fill: true
end
flow(width: 1.0) do
label "Height", width: 96
tagline "Height", width: 96
edit_line window.height.to_s, fill: true
end
end
@@ -111,36 +111,36 @@ class IMICFPS
stack(width: 1.0, height: 128, margin_top: 20) do
flow(width: 1.0, fill: true) do
label "Gamma Correction", width: 256
tagline "Gamma Correction", width: 256
@display_gamma_correction = slider range: 0.0..1.0, value: 0.5, fill: true
@display_gamma_correction.subscribe(:changed) do |_sender, value|
@display_gamma_correction_label.value = value.round(1).to_s
end
@display_gamma_correction_label = label "0.0"
@display_gamma_correction_label = tagline "0.0"
end
flow(width: 1.0, fill: true) do
label "Brightness", width: 256
tagline "Brightness", width: 256
@display_brightness = slider range: 0.0..1.0, value: 0.5, fill: true
@display_brightness.subscribe(:changed) do |_sender, value|
@display_brightness_label.value = value.round(1).to_s
end
@display_brightness_label = label "0.0"
@display_brightness_label = tagline "0.0"
end
flow(width: 1.0, fill: true) do
label "Contrast", width: 256
tagline "Contrast", width: 256
@display_contrast = slider range: 0.0..1.0, value: 0.5, fill: true
@display_contrast.subscribe(:changed) do |_sender, value|
@display_contrast_label.value = value.round(1).to_s
end
@display_contrast_label = label "0.0"
@display_contrast_label = tagline "0.0"
end
end
end
def page_audio
label "Audio", text_size: 50
tagline "Audio", text_size: 50
volumes = %i[master sound_effects music dialogue]
stack(width: 1.0, height: 48 * volumes.count) do
@@ -148,7 +148,7 @@ class IMICFPS
config_value = window.config.get(:options, :audio, :"volume_#{volume}")
flow(width: 1.0, fill: true, margin_bottom: 10) do
label volume.to_s.split("_").map(&:capitalize).join(" "), width: 172
tagline volume.to_s.split("_").map(&:capitalize).join(" "), width: 172
instance_variable_set(:"@volume_#{volume}", slider(range: 0.0..1.0, value: config_value, fill: true))
instance_variable_get(:"@volume_#{volume}").subscribe(:changed) do |_sender, value|
@@ -156,18 +156,18 @@ class IMICFPS
window.config[:options, :audio, :"volume_#{volume}"] = value
end
instance_variable_set(:"@volume_#{volume}_label", label(format("%03.2f%%", config_value * 100.0), width: 96, text_align: :right))
instance_variable_set(:"@volume_#{volume}_label", tagline(format("%03.2f%%", config_value * 100.0), width: 96, text_align: :right))
end
end
end
end
def page_controls
label "Controls", text_size: 50
tagline "Controls", text_size: 50
InputMapper.keymap.each do |key, values|
flow(width: 1.0, height: 64) do
label key.to_s, width: 0.5, max_width: 312
tagline key.to_s, width: 0.5, max_width: 312
[values].flatten.each do |value|
unless (name = Gosu.button_name(value))
@@ -182,21 +182,21 @@ class IMICFPS
end
def page_graphics
label "Graphics", text_size: 50
tagline "Graphics", text_size: 50
check_box "V-Sync (Not Disableable, Yet.)", checked: true, enabled: false, width: 1.0
flow(width: 1.0, height: 64) do
label "Field of View", width: 128
tagline "Field of View", width: 128
@fov = slider range: 70.0..110.0, fill: true
@fov.subscribe(:changed) do |_sender, value|
@fov_label.value = value.round.to_s
end
@fov_label = label "90.0"
@fov_label = tagline "90.0"
end
flow(width: 1.0, height: 64) do
label "Detail", width: 128
tagline "Detail", width: 128
list_box items: %i[high medium low], fill: true
end
@@ -207,31 +207,31 @@ class IMICFPS
stack(width: 1.0, height: 64 * 7) do
flow(width: 1.0, height: 64) do
label "Geometry Detail", width: 312
tagline "Geometry Detail", width: 312
list_box items: %i[high medium low], fill: true
end
flow(width: 1.0, height: 64) do
label "Shadow Detail", width: 312
tagline "Shadow Detail", width: 312
list_box items: %i[high medium low off], fill: true
end
flow(width: 1.0, height: 64) do
label "Texture Detail", width: 312
tagline "Texture Detail", width: 312
list_box items: %i[high medium low], fill: true
end
flow(width: 1.0, height: 64) do
label "Particle Detail", width: 312
tagline "Particle Detail", width: 312
list_box items: %i[high medium low off], fill: true
end
flow(width: 1.0, height: 64) do
label "Surface Effect Detail", width: 312
tagline "Surface Effect Detail", width: 312
list_box items: %i[high medium low], fill: true
end
flow(width: 1.0, height: 64) do
label "Lighting Mode", width: 312
tagline "Lighting Mode", width: 312
list_box items: %i[per_pixel per_vertex], fill: true
end
flow(width: 1.0, height: 64) do
label "Texture Filtering", width: 312
tagline "Texture Filtering", width: 312
list_box items: [:none], fill: true
end
end
@@ -244,10 +244,10 @@ class IMICFPS
end
def page_multiplayer
label "Multiplayer", text_size: 50
tagline "Multiplayer", text_size: 50
flow(width: 1.0, height: 64) do
label "Player Name", width: 172
tagline "Player Name", width: 172
edit_line "player-#{SecureRandom.hex(2)}", fill: true
end