Added production queue progress bar

This commit is contained in:
2021-01-05 23:13:13 -06:00
parent b8d5bd2368
commit 18641ece15
4 changed files with 29 additions and 5 deletions

View File

@@ -22,22 +22,26 @@ class IMICRTS
label "Color"
@player_color = list_box items: TeamColors.keys, choose: Setting.get(:player_color).to_sym, width: 1.0
@player_color.style.background = (TeamColors[@player_color.value.to_sym])
@player_color.style.color = Gosu::Color.new(@player_color.style.background&.gl).value > 0.9 ? Gosu::Color::BLACK : Gosu::Color::WHITE
@player_color.subscribe(:changed) do |sender, value|
@player_color.style.background = TeamColors[value.to_sym]
@player_color.style.color = Gosu::Color.new(@player_color.style.background&.gl).value > 0.9 ? Gosu::Color::BLACK : Gosu::Color::WHITE
:handled
end
7.times do |i|
box = list_box items: TeamColors.keys, choose: TeamColors.keys[i + 1], width: 1.0
box.style.background = (TeamColors[box.value.to_sym])
box.style.color = Gosu::Color.new(box.style.background&.gl).value > 0.9 ? Gosu::Color::BLACK : Gosu::Color::WHITE
box.subscribe(:changed) do |sender, value|
box.style.background = TeamColors[value.to_sym]
box.style.color = Gosu::Color.new(box.style.background&.gl).value > 0.9 ? Gosu::Color::BLACK : Gosu::Color::WHITE
:handled
end
end
end
stack(width: 0.29) do
stack(width: 0.15) do
label "Team"
@player_team = list_box items: Array(1..8), choose: Setting.get(:player_team), width: 1.0
@@ -45,10 +49,18 @@ class IMICRTS
list_box items: Array(1..8), choose: i + 2, width: 1.0
end
end
stack(width: 0.15) do
label "Position"
@player_position = list_box items: Array("A".."H"), choose: Setting.get(:player_position), width: 1.0
7.times do |i|
list_box items: Array("A".."H"), choose: Array("A".."H")[i + 1], width: 1.0
end
end
end
stack(width: 0.30, height: 1.0) do
# TODO: Show preview image
label "Map"
maps_list = Dir.glob("#{GAME_ROOT_PATH}/assets/maps/*.tmx").map do |m|
File.basename(m, ".tmx").to_sym
@@ -59,7 +71,7 @@ class IMICRTS
@map_preview.value = map_preview(value)
end
@map_preview = image map_preview(@map_name.value), width: 1.0, border_thickness: 2, border_color: Gosu::Color::BLACK, background: Gosu::Color::GRAY
@map_preview = image map_preview(@map_name.value), width: 1.0, margin_top: 4, border_thickness: 1, border_color: 0xffff5500, background: Gosu::Color::BLACK
end
end
@@ -77,6 +89,7 @@ class IMICRTS
button("Back", align: :right) do
save_playerdata
push_state(MainMenu)
end
end
@@ -87,6 +100,7 @@ class IMICRTS
Setting.set(:player_name, @player_name.value)
Setting.set(:player_color, @player_color.value.to_sym)
Setting.set(:player_team, @player_team.value.to_i)
Setting.set(:player_position, @player_position.value)
Setting.set(:default_map, @map_name.value.to_s)
Setting.save!