From 90af765b430e3a75daa9b2b4d0343ae58ad5c33d Mon Sep 17 00:00:00 2001 From: jacopograndi Date: Fri, 14 Jan 2022 00:06:52 +0100 Subject: secret work --- scenes/gui.tscn | 180 +++++++++++++++++++++++--------------- scenes/gui/gui_turret_detail.tscn | 144 +++++++++++++++++++++--------- scenes/gui/gui_turret_values.tscn | 101 +++++++++++++++++++++ scenes/turret.tscn | 12 ++- 4 files changed, 323 insertions(+), 114 deletions(-) create mode 100644 scenes/gui/gui_turret_values.tscn (limited to 'scenes') diff --git a/scenes/gui.tscn b/scenes/gui.tscn index f6588d9..1ca7631 100644 --- a/scenes/gui.tscn +++ b/scenes/gui.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=10 format=2] +[gd_scene load_steps=13 format=2] [ext_resource path="res://scripts/gui.gd" type="Script" id=1] [ext_resource path="res://themes/DarkTheme/Dark.theme" type="Theme" id=2] @@ -7,6 +7,11 @@ [ext_resource path="res://scripts/gui_turret.gd" type="Script" id=5] [ext_resource path="res://scripts/gui_bottom_bar.gd" type="Script" id=6] [ext_resource path="res://scripts/gui_top_bar.gd" type="Script" id=7] +[ext_resource path="res://scenes/gui/gui_turret_detail.tscn" type="PackedScene" id=8] + +[sub_resource type="StyleBoxFlat" id=4] +bg_color = Color( 0, 0, 0, 0 ) +border_width_bottom = 1 [sub_resource type="OpenSimplexNoise" id=1] seed = -7 @@ -17,6 +22,13 @@ height = 100 seamless = true noise = SubResource( 1 ) +[sub_resource type="StyleBoxFlat" id=3] +resource_local_to_scene = true +resource_name = "border" +bg_color = Color( 0.6, 0.6, 0.6, 0 ) +border_width_top = 1 +shadow_offset = Vector2( 1, 1 ) + [node name="gui" type="Control"] anchor_right = 1.0 anchor_bottom = 1.0 @@ -39,6 +51,10 @@ __meta__ = { "_edit_use_anchors_": false } +[node name="gui_turret_detail" parent="." instance=ExtResource( 8 )] +anchor_top = 0.5 +anchor_bottom = 0.5 + [node name="top_bar" type="Control" parent="."] anchor_right = 1.0 anchor_bottom = 1.0 @@ -109,7 +125,7 @@ margin_left = 139.0 margin_top = 7.0 margin_right = 159.4 margin_bottom = 31.4 -custom_colors/font_color = Color( 1, 0, 0, 1 ) +custom_colors/font_color = Color( 0, 0.203922, 1, 1 ) text = "0a" valign = 1 __meta__ = { @@ -121,7 +137,7 @@ margin_left = 162.0 margin_top = 7.0 margin_right = 182.4 margin_bottom = 31.4 -custom_colors/font_color = Color( 0, 0.203922, 1, 1 ) +custom_colors/font_color = Color( 1, 0, 0, 1 ) text = "0d" valign = 1 __meta__ = { @@ -179,6 +195,15 @@ margin_right = 81.0 margin_bottom = -5.0 text = "Next Wave" +[node name="border" type="Panel" parent="top_bar/panel"] +anchor_right = 1.0 +anchor_bottom = 1.0 +mouse_filter = 2 +custom_styles/panel = SubResource( 4 ) +__meta__ = { +"_edit_use_anchors_": false +} + [node name="bottom_bar" type="Control" parent="."] anchor_right = 1.0 anchor_bottom = 1.0 @@ -193,64 +218,80 @@ __meta__ = { anchor_top = 1.0 anchor_right = 1.0 anchor_bottom = 1.0 -margin_top = -270.0 +margin_top = -320.0 margin_bottom = -220.0 script = ExtResource( 3 ) __meta__ = { "_edit_use_anchors_": false } -[node name="ScrollContainer" type="ScrollContainer" parent="bottom_bar/voxels"] +[node name="Hbox" type="HBoxContainer" parent="bottom_bar/voxels"] anchor_right = 1.0 -anchor_bottom = 1.0 -scroll_vertical_enabled = false +margin_bottom = 50.0 +custom_constants/separation = 1 +alignment = 1 __meta__ = { "_edit_use_anchors_": false } -[node name="Hbox" type="HBoxContainer" parent="bottom_bar/voxels/ScrollContainer"] -margin_right = 101.0 -margin_bottom = 50.0 -custom_constants/separation = 1 -alignment = 1 +[node name="0" type="TextureButton" parent="bottom_bar/voxels/Hbox"] +margin_left = 361.0 +margin_right = 461.0 +margin_bottom = 100.0 +rect_min_size = Vector2( 100, 100 ) +rect_pivot_offset = Vector2( 50, 50 ) +size_flags_horizontal = 9 +script = ExtResource( 5 ) __meta__ = { "_edit_use_anchors_": false } -[node name="0" type="TextureButton" parent="bottom_bar/voxels/ScrollContainer/Hbox"] -margin_right = 50.0 -margin_bottom = 50.0 -rect_min_size = Vector2( 50, 50 ) -rect_pivot_offset = Vector2( 25, 25 ) +[node name="TextureRect" type="ColorRect" parent="bottom_bar/voxels/Hbox/0"] +margin_right = 100.0 +margin_bottom = 100.0 +mouse_filter = 2 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="1" type="TextureButton" parent="bottom_bar/voxels/Hbox"] +margin_left = 462.0 +margin_right = 562.0 +margin_bottom = 100.0 +rect_min_size = Vector2( 100, 100 ) +rect_pivot_offset = Vector2( 50, 50 ) size_flags_horizontal = 9 script = ExtResource( 5 ) __meta__ = { "_edit_use_anchors_": false } -[node name="TextureRect" type="ColorRect" parent="bottom_bar/voxels/ScrollContainer/Hbox/0"] -margin_right = 50.0 -margin_bottom = 50.0 +[node name="TextureRect" type="ColorRect" parent="bottom_bar/voxels/Hbox/1"] +margin_right = 100.0 +margin_bottom = 100.0 +mouse_filter = 2 +color = Color( 0.388235, 0, 1, 1 ) __meta__ = { "_edit_use_anchors_": false } -[node name="1" type="TextureButton" parent="bottom_bar/voxels/ScrollContainer/Hbox"] -margin_left = 51.0 -margin_right = 101.0 -margin_bottom = 50.0 -rect_min_size = Vector2( 50, 50 ) -rect_pivot_offset = Vector2( 25, 25 ) +[node name="2" type="TextureButton" parent="bottom_bar/voxels/Hbox"] +margin_left = 563.0 +margin_right = 663.0 +margin_bottom = 100.0 +rect_min_size = Vector2( 100, 100 ) +rect_pivot_offset = Vector2( 50, 50 ) size_flags_horizontal = 9 script = ExtResource( 5 ) __meta__ = { "_edit_use_anchors_": false } -[node name="TextureRect" type="ColorRect" parent="bottom_bar/voxels/ScrollContainer/Hbox/1"] -margin_right = 50.0 -margin_bottom = 50.0 -color = Color( 0.619608, 0, 0.639216, 1 ) +[node name="TextureRect" type="ColorRect" parent="bottom_bar/voxels/Hbox/2"] +margin_right = 100.0 +margin_bottom = 100.0 +mouse_filter = 2 +color = Color( 0.113725, 0, 1, 1 ) __meta__ = { "_edit_use_anchors_": false } @@ -266,16 +307,8 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="ScrollContainer" type="ScrollContainer" parent="bottom_bar/map_tools"] +[node name="Hbox" type="HBoxContainer" parent="bottom_bar/map_tools"] anchor_right = 1.0 -anchor_bottom = 1.0 -scroll_vertical_enabled = false -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Hbox" type="HBoxContainer" parent="bottom_bar/map_tools/ScrollContainer"] -margin_right = 403.0 margin_bottom = 100.0 custom_constants/separation = 1 alignment = 1 @@ -283,8 +316,9 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="attach" type="TextureButton" parent="bottom_bar/map_tools/ScrollContainer/Hbox"] -margin_right = 100.0 +[node name="attach" type="TextureButton" parent="bottom_bar/map_tools/Hbox"] +margin_left = 310.0 +margin_right = 410.0 margin_bottom = 100.0 rect_min_size = Vector2( 100, 100 ) rect_pivot_offset = Vector2( 50, 50 ) @@ -294,7 +328,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="TextureRect" type="TextureRect" parent="bottom_bar/map_tools/ScrollContainer/Hbox/attach"] +[node name="TextureRect" type="TextureRect" parent="bottom_bar/map_tools/Hbox/attach"] margin_right = 100.0 margin_bottom = 100.0 texture = SubResource( 2 ) @@ -303,7 +337,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="Label" type="Label" parent="bottom_bar/map_tools/ScrollContainer/Hbox/attach"] +[node name="Label" type="Label" parent="bottom_bar/map_tools/Hbox/attach"] margin_left = 29.0 margin_top = 5.0 margin_right = 69.0 @@ -313,9 +347,9 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="start path" type="TextureButton" parent="bottom_bar/map_tools/ScrollContainer/Hbox"] -margin_left = 101.0 -margin_right = 201.0 +[node name="start path" type="TextureButton" parent="bottom_bar/map_tools/Hbox"] +margin_left = 411.0 +margin_right = 511.0 margin_bottom = 100.0 rect_min_size = Vector2( 100, 100 ) rect_pivot_offset = Vector2( 50, 50 ) @@ -325,7 +359,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="TextureRect" type="TextureRect" parent="bottom_bar/map_tools/ScrollContainer/Hbox/start path"] +[node name="TextureRect" type="TextureRect" parent="bottom_bar/map_tools/Hbox/start path"] margin_right = 100.0 margin_bottom = 100.0 texture = SubResource( 2 ) @@ -334,7 +368,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="Label" type="Label" parent="bottom_bar/map_tools/ScrollContainer/Hbox/start path"] +[node name="Label" type="Label" parent="bottom_bar/map_tools/Hbox/start path"] margin_left = 29.0 margin_top = 5.0 margin_right = 69.0 @@ -344,9 +378,9 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="path" type="TextureButton" parent="bottom_bar/map_tools/ScrollContainer/Hbox"] -margin_left = 202.0 -margin_right = 302.0 +[node name="path" type="TextureButton" parent="bottom_bar/map_tools/Hbox"] +margin_left = 512.0 +margin_right = 612.0 margin_bottom = 100.0 rect_min_size = Vector2( 100, 100 ) rect_pivot_offset = Vector2( 50, 50 ) @@ -356,7 +390,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="TextureRect" type="TextureRect" parent="bottom_bar/map_tools/ScrollContainer/Hbox/path"] +[node name="TextureRect" type="TextureRect" parent="bottom_bar/map_tools/Hbox/path"] margin_right = 100.0 margin_bottom = 100.0 texture = SubResource( 2 ) @@ -365,7 +399,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="Label" type="Label" parent="bottom_bar/map_tools/ScrollContainer/Hbox/path"] +[node name="Label" type="Label" parent="bottom_bar/map_tools/Hbox/path"] margin_left = 29.0 margin_top = 5.0 margin_right = 69.0 @@ -375,9 +409,9 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="end path" type="TextureButton" parent="bottom_bar/map_tools/ScrollContainer/Hbox"] -margin_left = 303.0 -margin_right = 403.0 +[node name="end path" type="TextureButton" parent="bottom_bar/map_tools/Hbox"] +margin_left = 613.0 +margin_right = 713.0 margin_bottom = 100.0 rect_min_size = Vector2( 100, 100 ) rect_pivot_offset = Vector2( 50, 50 ) @@ -387,7 +421,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="TextureRect" type="TextureRect" parent="bottom_bar/map_tools/ScrollContainer/Hbox/end path"] +[node name="TextureRect" type="TextureRect" parent="bottom_bar/map_tools/Hbox/end path"] margin_right = 100.0 margin_bottom = 100.0 texture = SubResource( 2 ) @@ -396,7 +430,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="Label" type="Label" parent="bottom_bar/map_tools/ScrollContainer/Hbox/end path"] +[node name="Label" type="Label" parent="bottom_bar/map_tools/Hbox/end path"] margin_left = 29.0 margin_top = 5.0 margin_right = 69.0 @@ -417,17 +451,8 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="ScrollContainer" type="ScrollContainer" parent="bottom_bar/turrets"] +[node name="Hbox" type="HBoxContainer" parent="bottom_bar/turrets"] anchor_right = 1.0 -anchor_bottom = 1.0 -follow_focus = true -scroll_vertical_enabled = false -__meta__ = { -"_edit_use_anchors_": false -} - -[node name="Hbox" type="HBoxContainer" parent="bottom_bar/turrets/ScrollContainer"] -margin_right = 201.0 margin_bottom = 120.0 rect_min_size = Vector2( 0, 120 ) custom_constants/separation = 1 @@ -436,11 +461,22 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="gui_turret" parent="bottom_bar/turrets/ScrollContainer/Hbox" instance=ExtResource( 4 )] +[node name="gui_turret" parent="bottom_bar/turrets/Hbox" instance=ExtResource( 4 )] +margin_left = 411.0 +margin_right = 511.0 + +[node name="gui_turret2" parent="bottom_bar/turrets/Hbox" instance=ExtResource( 4 )] +margin_left = 512.0 +margin_right = 612.0 -[node name="gui_turret2" parent="bottom_bar/turrets/ScrollContainer/Hbox" instance=ExtResource( 4 )] -margin_left = 101.0 -margin_right = 201.0 +[node name="border" type="Panel" parent="bottom_bar/turrets"] +anchor_right = 1.0 +anchor_bottom = 1.0 +mouse_filter = 2 +custom_styles/panel = SubResource( 3 ) +__meta__ = { +"_edit_use_anchors_": false +} [connection signal="button_down" from="top_bar/panel/editor_button" to="top_bar" method="_on_editor_button_down"] [connection signal="pressed" from="top_bar/panel/wave_button" to="top_bar" method="_on_wave_button_pressed"] diff --git a/scenes/gui/gui_turret_detail.tscn b/scenes/gui/gui_turret_detail.tscn index 197a2a5..1b4aa5c 100644 --- a/scenes/gui/gui_turret_detail.tscn +++ b/scenes/gui/gui_turret_detail.tscn @@ -1,21 +1,20 @@ -[gd_scene load_steps=4 format=2] +[gd_scene load_steps=5 format=2] -[ext_resource path="res://scripts/gui_turret.gd" type="Script" id=1] -[ext_resource path="res://themes/snub_theme.tres" type="Theme" id=2] +[ext_resource path="res://scripts/gui_turret_detail.gd" type="Script" id=1] +[ext_resource path="res://themes/DarkTheme/Dark.theme" type="Theme" id=2] +[ext_resource path="res://scenes/gui/gui_turret_values.tscn" type="PackedScene" id=3] [sub_resource type="StyleBoxFlat" id=1] bg_color = Color( 0.6, 0.6, 0.6, 0 ) -border_width_left = 1 -border_width_top = 1 border_width_right = 1 -border_width_bottom = 1 shadow_offset = Vector2( 1, 1 ) -[node name="gui_turret_detail" type="Control"] -margin_right = 100.0 -margin_bottom = 120.0 -rect_min_size = Vector2( 100, 120 ) -rect_pivot_offset = Vector2( 50, 50 ) +[node name="gui_turret_detail" type="Panel"] +margin_top = -125.0 +margin_right = 200.0 +margin_bottom = 125.0 +grow_vertical = 2 +rect_min_size = Vector2( 200, 250 ) size_flags_horizontal = 9 theme = ExtResource( 2 ) script = ExtResource( 1 ) @@ -23,62 +22,127 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="hbox" type="VBoxContainer" parent="."] +[node name="name_label" type="Label" parent="."] +anchor_right = 1.0 +text = "turret: " +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="border" type="Panel" parent="."] anchor_right = 1.0 anchor_bottom = 1.0 +mouse_filter = 2 +custom_styles/panel = SubResource( 1 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="hbox_global" type="HBoxContainer" parent="."] +anchor_bottom = 1.0 +margin_top = 25.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="hbox_labels" type="VBoxContainer" parent="hbox_global"] +margin_right = 150.0 +margin_bottom = 225.0 +rect_min_size = Vector2( 150, 0 ) custom_constants/separation = 0 __meta__ = { "_edit_use_anchors_": false } -[node name="name_label" type="Label" parent="hbox"] -margin_right = 100.0 -margin_bottom = 18.0 -text = "name" -align = 1 +[node name="damage" type="Label" parent="hbox_global/hbox_labels"] +margin_top = -1.0 +margin_right = 150.0 +margin_bottom = 23.4 +text = "damage" valign = 1 __meta__ = { "_edit_use_anchors_": false } -[node name="name_label2" type="Label" parent="hbox"] -margin_top = 18.0 -margin_right = 100.0 -margin_bottom = 36.0 -text = "name" -align = 1 +[node name="range" type="Label" parent="hbox_global/hbox_labels"] +margin_top = 23.0 +margin_right = 150.0 +margin_bottom = 47.4 +text = "range" valign = 1 __meta__ = { "_edit_use_anchors_": false } -[node name="name_label3" type="Label" parent="hbox"] -margin_top = 36.0 -margin_right = 100.0 -margin_bottom = 54.0 -text = "name" -align = 1 +[node name="turn speed" type="Label" parent="hbox_global/hbox_labels"] +margin_top = 47.0 +margin_right = 150.0 +margin_bottom = 71.4 +text = "turn speed" valign = 1 __meta__ = { "_edit_use_anchors_": false } -[node name="name_label4" type="Label" parent="hbox"] -margin_top = 54.0 -margin_right = 100.0 -margin_bottom = 72.0 -text = "name" -align = 1 +[node name="cooldown" type="Label" parent="hbox_global/hbox_labels"] +margin_top = 71.0 +margin_right = 150.0 +margin_bottom = 95.4 +text = "cooldown" valign = 1 __meta__ = { "_edit_use_anchors_": false } -[node name="border" type="Panel" parent="."] -anchor_right = 1.0 -anchor_bottom = 1.0 -mouse_filter = 2 -custom_styles/panel = SubResource( 1 ) +[node name="projectile" type="Label" parent="hbox_global/hbox_labels"] +margin_top = 95.0 +margin_right = 150.0 +margin_bottom = 119.4 +text = "projectile" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="spread" type="Label" parent="hbox_global/hbox_labels"] +margin_top = 119.0 +margin_right = 150.0 +margin_bottom = 143.4 +text = "spread" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="projectile speed" type="Label" parent="hbox_global/hbox_labels"] +margin_top = 143.0 +margin_right = 150.0 +margin_bottom = 167.4 +text = "projectile speed" +valign = 1 __meta__ = { "_edit_use_anchors_": false } + +[node name="projectiles per shot" type="Label" parent="hbox_global/hbox_labels"] +margin_top = 167.0 +margin_right = 150.0 +margin_bottom = 191.4 +text = "projectiles per shot" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="modules" type="Label" parent="hbox_global/hbox_labels"] +margin_top = 191.0 +margin_right = 150.0 +margin_bottom = 215.4 +text = "max modules" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="hbox_values" parent="hbox_global" instance=ExtResource( 3 )] diff --git a/scenes/gui/gui_turret_values.tscn b/scenes/gui/gui_turret_values.tscn new file mode 100644 index 0000000..7be6fc4 --- /dev/null +++ b/scenes/gui/gui_turret_values.tscn @@ -0,0 +1,101 @@ +[gd_scene format=2] + +[node name="hbox_values" type="VBoxContainer"] +margin_left = 153.0 +margin_right = 183.0 +margin_bottom = 225.0 +rect_min_size = Vector2( 30, 0 ) +custom_constants/separation = 0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="damage" type="Label" parent="."] +margin_top = -1.0 +margin_right = 30.0 +margin_bottom = 23.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="range" type="Label" parent="."] +margin_top = 23.0 +margin_right = 30.0 +margin_bottom = 47.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="turn speed" type="Label" parent="."] +margin_top = 47.0 +margin_right = 30.0 +margin_bottom = 71.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="cooldown" type="Label" parent="."] +margin_top = 71.0 +margin_right = 30.0 +margin_bottom = 95.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="projectile" type="Label" parent="."] +margin_top = 95.0 +margin_right = 30.0 +margin_bottom = 119.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="spread" type="Label" parent="."] +margin_top = 119.0 +margin_right = 30.0 +margin_bottom = 143.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="projectile speed" type="Label" parent="."] +margin_top = 143.0 +margin_right = 30.0 +margin_bottom = 167.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="projectiles per shot" type="Label" parent="."] +margin_top = 167.0 +margin_right = 30.0 +margin_bottom = 191.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="modules" type="Label" parent="."] +margin_top = 191.0 +margin_right = 30.0 +margin_bottom = 215.4 +text = "0" +valign = 1 +__meta__ = { +"_edit_use_anchors_": false +} diff --git a/scenes/turret.tscn b/scenes/turret.tscn index 61ab365..c71f69f 100644 --- a/scenes/turret.tscn +++ b/scenes/turret.tscn @@ -1,14 +1,22 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=4 format=2] [ext_resource path="res://scripts/turret.gd" type="Script" id=1] [sub_resource type="BoxShape" id=1] +[sub_resource type="SphereShape" id=2] +radius = 0.95 + [node name="turret" type="Spatial" groups=["turrets"]] script = ExtResource( 1 ) [node name="turret" type="StaticBody" parent="." groups=["turrets"]] -[node name="CollisionShape" type="CollisionShape" parent="turret"] +[node name="CollisionShapeBox" type="CollisionShape" parent="turret"] transform = Transform( 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0.25, 0 ) shape = SubResource( 1 ) + +[node name="CollisionShapeSphere" type="CollisionShape" parent="turret"] +transform = Transform( 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0.25, 0 ) +shape = SubResource( 2 ) +disabled = true -- cgit v1.2.3-54-g00ecf