added decon cursor & lots more
parent
cadc389dce
commit
4d972d860c
|
|
@ -0,0 +1,12 @@
|
||||||
|
extends Camera2D
|
||||||
|
|
||||||
|
func _process(delta):
|
||||||
|
const speed = 300.0
|
||||||
|
if Input.is_key_pressed(KEY_W):
|
||||||
|
position.y -= delta * speed
|
||||||
|
if Input.is_key_pressed(KEY_S):
|
||||||
|
position.y += delta * speed
|
||||||
|
if Input.is_key_pressed(KEY_A):
|
||||||
|
position.x -= delta * speed
|
||||||
|
if Input.is_key_pressed(KEY_D):
|
||||||
|
position.x += delta * speed
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
uid://d0vowgemo3buy
|
||||||
|
|
@ -9,9 +9,18 @@ enum RenderStyle {
|
||||||
Circles
|
Circles
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum Availability {
|
||||||
|
Starting,
|
||||||
|
Hidden,
|
||||||
|
Unlockable
|
||||||
|
}
|
||||||
|
|
||||||
@export_group("Basic")
|
@export_group("Basic")
|
||||||
@export var tile_name: String
|
@export var tile_name: String
|
||||||
|
@export var availability: Availability = Availability.Hidden
|
||||||
@export var area_type: GridInput.AreaType = GridInput.AreaType.Rectangle
|
@export var area_type: GridInput.AreaType = GridInput.AreaType.Rectangle
|
||||||
|
|
||||||
|
@export_group("Rendering")
|
||||||
@export var style: RenderStyle = RenderStyle.RandomBuilding
|
@export var style: RenderStyle = RenderStyle.RandomBuilding
|
||||||
@export_color_no_alpha var color: Color
|
@export_color_no_alpha var color: Color
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
extends Resource
|
||||||
|
class_name ResearchData
|
||||||
|
|
||||||
|
@export var prerequisits: Array[ResearchData] = []
|
||||||
|
|
||||||
|
@export var cost_resource: ResourceController.ResourceType
|
||||||
|
@export var cost_amount: int = 0
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
uid://dc3sudtjnlpr1
|
||||||
|
|
@ -5,6 +5,40 @@ class_name BuildMenu
|
||||||
@export var grid_input: GridInput
|
@export var grid_input: GridInput
|
||||||
@export var grid: Grid
|
@export var grid: Grid
|
||||||
|
|
||||||
|
# at some point this the buildingdata stuff will need to be pulled somewhere else!
|
||||||
|
|
||||||
|
var building_datas: Array[BuildingData] = []
|
||||||
|
|
||||||
|
func load_building_datas():
|
||||||
|
var unexplored_dirs = [ "res://Tiles" ]
|
||||||
|
var discovered_data = []
|
||||||
|
|
||||||
|
while unexplored_dirs.size() != 0:
|
||||||
|
var root_path = unexplored_dirs.pop_front()
|
||||||
|
|
||||||
|
var files = DirAccess.get_files_at(root_path)
|
||||||
|
for file in files:
|
||||||
|
var new_path = root_path + "/" + file
|
||||||
|
discovered_data.append(new_path)
|
||||||
|
#print(new_path)
|
||||||
|
#print(discovered_data)
|
||||||
|
|
||||||
|
var dirs = DirAccess.get_directories_at(root_path)
|
||||||
|
for dir in dirs: unexplored_dirs.append(root_path + "/" + dir)
|
||||||
|
|
||||||
|
for child in get_children(): child.queue_free()
|
||||||
|
|
||||||
|
for res_path in discovered_data:
|
||||||
|
var resource: BuildingData = load(res_path)
|
||||||
|
if resource.availability != BuildingData.Availability.Starting:
|
||||||
|
continue
|
||||||
|
var new_button = BuildButton.new()
|
||||||
|
new_button.building = resource
|
||||||
|
add_child(new_button)
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
load_building_datas()
|
||||||
|
|
||||||
func build_button_pressed(button: BuildButton):
|
func build_button_pressed(button: BuildButton):
|
||||||
grid_input.request_area(
|
grid_input.request_area(
|
||||||
button.building,
|
button.building,
|
||||||
|
|
@ -21,7 +55,6 @@ func tile_is_valid_at_location(building: BuildingData, tile_pos: Vector2i) -> bo
|
||||||
return false
|
return false
|
||||||
return true
|
return true
|
||||||
|
|
||||||
|
|
||||||
func request_confirmed(building: BuildingData, area: Rect2i) -> void:
|
func request_confirmed(building: BuildingData, area: Rect2i) -> void:
|
||||||
for x in range(area.position.x, area.position.x + area.size.x):
|
for x in range(area.position.x, area.position.x + area.size.x):
|
||||||
for y in range(area.position.y, area.position.y + area.size.y):
|
for y in range(area.position.y, area.position.y + area.size.y):
|
||||||
|
|
@ -29,6 +62,5 @@ func request_confirmed(building: BuildingData, area: Rect2i) -> void:
|
||||||
var new_tile = Building.new(Vector2i(x, y), Vector2i.ONE, building)
|
var new_tile = Building.new(Vector2i(x, y), Vector2i.ONE, building)
|
||||||
grid.add_child(new_tile)
|
grid.add_child(new_tile)
|
||||||
|
|
||||||
|
|
||||||
func request_cancelled(building: BuildingData) -> void:
|
func request_cancelled(building: BuildingData) -> void:
|
||||||
pass
|
pass
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,8 @@ var triangle_points = PackedVector2Array([
|
||||||
|
|
||||||
var history: Array[BuildingData] = []
|
var history: Array[BuildingData] = []
|
||||||
var data: BuildingData = null
|
var data: BuildingData = null
|
||||||
|
var upgrade_timer: int = 0
|
||||||
|
const max_upgrade_timer: int = 10
|
||||||
|
|
||||||
func attempt_upgrade(new_data: BuildingData) -> bool:
|
func attempt_upgrade(new_data: BuildingData) -> bool:
|
||||||
var old_data = data
|
var old_data = data
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,8 @@ class Cursor:
|
||||||
var cursors: Array[Cursor] = []
|
var cursors: Array[Cursor] = []
|
||||||
var current_cursor: Cursor = null
|
var current_cursor: Cursor = null
|
||||||
|
|
||||||
|
var stored_color: Color = Color.WHITE
|
||||||
|
|
||||||
func new_cursor(color: Color) -> Cursor:
|
func new_cursor(color: Color) -> Cursor:
|
||||||
var cursor = Cursor.new()
|
var cursor = Cursor.new()
|
||||||
cursors.append(cursor)
|
cursors.append(cursor)
|
||||||
|
|
@ -35,16 +37,35 @@ func new_cursor(color: Color) -> Cursor:
|
||||||
|
|
||||||
return cursor
|
return cursor
|
||||||
|
|
||||||
|
func change_color(color: Color):
|
||||||
|
if current_cursor == null: return
|
||||||
|
if color == current_cursor.color: return
|
||||||
|
var box = current_cursor.box
|
||||||
|
var opacity = current_cursor.opacity
|
||||||
|
var animation_state = current_cursor.animation
|
||||||
|
var dbox = current_cursor.desired_box
|
||||||
|
var dopacity = current_cursor.desired_opacity
|
||||||
|
explode()
|
||||||
|
new_cursor(color)
|
||||||
|
current_cursor.box = box
|
||||||
|
current_cursor.desired_box = dbox
|
||||||
|
current_cursor.opacity = opacity
|
||||||
|
current_cursor.desired_opacity = dopacity
|
||||||
|
current_cursor.animation = animation_state
|
||||||
|
|
||||||
# cursor removal type beats.
|
# cursor removal type beats.
|
||||||
func fade_out() -> void:
|
func fade_out() -> void:
|
||||||
if current_cursor == null: return
|
if current_cursor == null: return
|
||||||
current_cursor.animation = AnimationState.Fading
|
current_cursor.animation = AnimationState.Fading
|
||||||
current_cursor.desired_opacity = 0.0
|
current_cursor.desired_opacity = 0.0
|
||||||
|
current_cursor = null
|
||||||
|
|
||||||
func explode() -> void:
|
func explode() -> void:
|
||||||
if current_cursor == null: return
|
if current_cursor == null: return
|
||||||
current_cursor.animation = AnimationState.Exploding
|
current_cursor.animation = AnimationState.Exploding
|
||||||
current_cursor.desired_box = current_cursor.desired_box.grow(10)
|
current_cursor.desired_box = current_cursor.desired_box.grow(10)
|
||||||
current_cursor.desired_opacity = 0.0
|
current_cursor.desired_opacity = 0.0
|
||||||
|
current_cursor = null
|
||||||
|
|
||||||
# override / util
|
# override / util
|
||||||
func _process(delta) -> void:
|
func _process(delta) -> void:
|
||||||
|
|
|
||||||
|
|
@ -4,14 +4,18 @@ extends VBoxContainer
|
||||||
@export var overlay_enabled_button: Button
|
@export var overlay_enabled_button: Button
|
||||||
@export var overlay_selection_button: OptionButton
|
@export var overlay_selection_button: OptionButton
|
||||||
@export var overlay_display_values: Button
|
@export var overlay_display_values: Button
|
||||||
|
@export var reload_building_data_button: Button
|
||||||
|
@export var build_menu: BuildMenu
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
|
build_menu = Util.find(BuildMenu)
|
||||||
var grid_fields = Grid.Field.keys()
|
var grid_fields = Grid.Field.keys()
|
||||||
for idx in range(grid_fields.size()):
|
for idx in range(grid_fields.size()):
|
||||||
overlay_selection_button.add_item(grid_fields[idx], idx)
|
overlay_selection_button.add_item(grid_fields[idx], idx)
|
||||||
overlay_enabled_button.toggled.connect(update_overlay)
|
overlay_enabled_button.toggled.connect(update_overlay)
|
||||||
overlay_display_values.toggled.connect(update_overlay)
|
overlay_display_values.toggled.connect(update_overlay)
|
||||||
overlay_selection_button.item_selected.connect(update_overlay)
|
overlay_selection_button.item_selected.connect(update_overlay)
|
||||||
|
reload_building_data_button.pressed.connect(build_menu.load_building_datas)
|
||||||
|
|
||||||
func update_overlay(data):
|
func update_overlay(data):
|
||||||
grid.debug_overlay_display_values = overlay_display_values.button_pressed
|
grid.debug_overlay_display_values = overlay_display_values.button_pressed
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,34 @@
|
||||||
|
extends Node2D
|
||||||
|
|
||||||
|
@export var grid_input: GridInput
|
||||||
|
var input_enabled: bool = false
|
||||||
|
|
||||||
|
func _input(event):
|
||||||
|
if event is InputEventKey and event.pressed:
|
||||||
|
if event.keycode == KEY_B:
|
||||||
|
toggle()
|
||||||
|
|
||||||
|
func toggle():
|
||||||
|
input_enabled = !input_enabled
|
||||||
|
if input_enabled: enable_decon()
|
||||||
|
else: disable_decon()
|
||||||
|
|
||||||
|
func enable_decon():
|
||||||
|
grid_input.request_area(
|
||||||
|
self,
|
||||||
|
_confirm_area,
|
||||||
|
_cancel_area,
|
||||||
|
GridInput.Style.Delete,
|
||||||
|
GridInput.AreaType.Rectangle,
|
||||||
|
false
|
||||||
|
)
|
||||||
|
|
||||||
|
func disable_decon():
|
||||||
|
grid_input.clear_request()
|
||||||
|
|
||||||
|
func _confirm_area(context, area: Rect2i):
|
||||||
|
pass
|
||||||
|
|
||||||
|
func _cancel_area(context):
|
||||||
|
print("decon cancelled")
|
||||||
|
input_enabled = false
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
uid://r4k5yal152we
|
||||||
|
|
@ -2,7 +2,7 @@ extends Node2D
|
||||||
class_name GridInput
|
class_name GridInput
|
||||||
|
|
||||||
@onready var grid: Grid = $/root/Root/Grid
|
@onready var grid: Grid = $/root/Root/Grid
|
||||||
var highlight_color: Color = Color(0.075, 0.536, 0.75, 0.38)
|
var highlight_color: Color = Color(1.0, 1.0, 1.0, 0.38)
|
||||||
var build_color: Color = Color(0.087, 0.62, 0.087, 0.514)
|
var build_color: Color = Color(0.087, 0.62, 0.087, 0.514)
|
||||||
var deletion_color: Color = Color(0.76, 0.237, 0.106, 0.4)
|
var deletion_color: Color = Color(0.76, 0.237, 0.106, 0.4)
|
||||||
var current_color = highlight_color
|
var current_color = highlight_color
|
||||||
|
|
@ -58,10 +58,11 @@ func _left_click(pos: Vector2):
|
||||||
_grid_clicked(tile_pos)
|
_grid_clicked(tile_pos)
|
||||||
func _right_click(pos: Vector2):
|
func _right_click(pos: Vector2):
|
||||||
_cancel_operation()
|
_cancel_operation()
|
||||||
cursor_pool.explode()
|
#cursor_pool.explode()
|
||||||
if !mouse_in_grid: return
|
#if !mouse_in_grid: return
|
||||||
cursor_pool.new_cursor(current_color)
|
#cursor_pool.new_cursor(current_color)
|
||||||
_update_cursor()
|
#_update_cursor()
|
||||||
|
|
||||||
|
|
||||||
var mouse_in_grid: bool = false # TODO init this correctly lol
|
var mouse_in_grid: bool = false # TODO init this correctly lol
|
||||||
func __mouse_may_have_left_or_entered_grid(pos: Vector2):
|
func __mouse_may_have_left_or_entered_grid(pos: Vector2):
|
||||||
|
|
@ -189,11 +190,15 @@ func clear_request():
|
||||||
_reset()
|
_reset()
|
||||||
|
|
||||||
func request_area(ctx, confirm, cancel, style: Style, area_type: AreaType, one_shot: bool):
|
func request_area(ctx, confirm, cancel, style: Style, area_type: AreaType, one_shot: bool):
|
||||||
|
if request != null:
|
||||||
|
clear_request()
|
||||||
|
|
||||||
request = Request.new()
|
request = Request.new()
|
||||||
request.confirmed = confirm
|
request.confirmed = confirm
|
||||||
request.cancelled = cancel
|
request.cancelled = cancel
|
||||||
request.context = ctx
|
request.context = ctx
|
||||||
current_marquee_type = area_type
|
current_marquee_type = area_type
|
||||||
|
|
||||||
_set_style(style)
|
_set_style(style)
|
||||||
|
|
||||||
func _reset():
|
func _reset():
|
||||||
|
|
@ -205,3 +210,4 @@ func _set_style(style: Style):
|
||||||
Style.Highlight: current_color = highlight_color
|
Style.Highlight: current_color = highlight_color
|
||||||
Style.Build: current_color = build_color
|
Style.Build: current_color = build_color
|
||||||
Style.Delete: current_color = deletion_color
|
Style.Delete: current_color = deletion_color
|
||||||
|
cursor_pool.change_color(current_color)
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
extends Node
|
||||||
|
|
||||||
|
var research_data: Array[ResearchData] = []
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
reload()
|
||||||
|
|
||||||
|
func reload():
|
||||||
|
research_data = []
|
||||||
|
var unexplored = []
|
||||||
|
var root = load("res://Research/")
|
||||||
|
#for
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
uid://b6p6apq8obptm
|
||||||
|
|
@ -9,6 +9,7 @@
|
||||||
[resource]
|
[resource]
|
||||||
script = ExtResource("4_rxh8u")
|
script = ExtResource("4_rxh8u")
|
||||||
tile_name = "Farmland"
|
tile_name = "Farmland"
|
||||||
|
availability = 0
|
||||||
style = 2
|
style = 2
|
||||||
color = Color(0.182, 0.7, 0.29423332, 1)
|
color = Color(0.182, 0.7, 0.29423332, 1)
|
||||||
upgrade_paths = Array[ExtResource("4_rxh8u")]([ExtResource("5_kjhvl")])
|
upgrade_paths = Array[ExtResource("4_rxh8u")]([ExtResource("5_kjhvl")])
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@
|
||||||
[resource]
|
[resource]
|
||||||
script = ExtResource("4_y6hfj")
|
script = ExtResource("4_y6hfj")
|
||||||
tile_name = "Housing"
|
tile_name = "Housing"
|
||||||
|
availability = 2
|
||||||
style = 2
|
style = 2
|
||||||
color = Color(0.93333334, 0.39215687, 0.39215687, 1)
|
color = Color(0.93333334, 0.39215687, 0.39215687, 1)
|
||||||
upgrade_paths = Array[ExtResource("4_y6hfj")]([ExtResource("4_vifl3"), ExtResource("6_ad1a7")])
|
upgrade_paths = Array[ExtResource("4_y6hfj")]([ExtResource("4_vifl3"), ExtResource("6_ad1a7")])
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@
|
||||||
[resource]
|
[resource]
|
||||||
script = ExtResource("4_ex0ko")
|
script = ExtResource("4_ex0ko")
|
||||||
tile_name = "Gathering Camp"
|
tile_name = "Gathering Camp"
|
||||||
|
availability = 0
|
||||||
style = 2
|
style = 2
|
||||||
color = Color(0.65, 0.57135, 0.43549997, 1)
|
color = Color(0.65, 0.57135, 0.43549997, 1)
|
||||||
upgrade_paths = Array[ExtResource("4_ex0ko")]([ExtResource("6_lmdb6"), ExtResource("5_adjmk")])
|
upgrade_paths = Array[ExtResource("4_ex0ko")]([ExtResource("6_lmdb6"), ExtResource("5_adjmk")])
|
||||||
|
|
|
||||||
39
World.tscn
39
World.tscn
|
|
@ -1,10 +1,13 @@
|
||||||
[gd_scene load_steps=18 format=3 uid="uid://co6md8v2b8hhu"]
|
[gd_scene load_steps=21 format=3 uid="uid://co6md8v2b8hhu"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://8lkq20gwkrvx" path="res://Scripts/Grid.gd" id="1_2s04l"]
|
[ext_resource type="Script" uid="uid://8lkq20gwkrvx" path="res://Scripts/Grid.gd" id="1_2s04l"]
|
||||||
[ext_resource type="Script" uid="uid://cuqcfju7y8ply" path="res://Scripts/SelectionManager.gd" id="1_anesy"]
|
[ext_resource type="Script" uid="uid://cuqcfju7y8ply" path="res://Scripts/SelectionManager.gd" id="1_anesy"]
|
||||||
|
[ext_resource type="Script" uid="uid://b6p6apq8obptm" path="res://Scripts/ResearchController.gd" id="1_sjtuv"]
|
||||||
|
[ext_resource type="Script" uid="uid://d0vowgemo3buy" path="res://CameraController.gd" id="2_cvq6i"]
|
||||||
[ext_resource type="Script" uid="uid://xe60g0el2j5x" path="res://Scripts/GridInput.gd" id="3_62nr3"]
|
[ext_resource type="Script" uid="uid://xe60g0el2j5x" path="res://Scripts/GridInput.gd" id="3_62nr3"]
|
||||||
[ext_resource type="Script" uid="uid://du3m15i8ahlu5" path="res://Scripts/CursorPool.gd" id="3_fvag4"]
|
[ext_resource type="Script" uid="uid://du3m15i8ahlu5" path="res://Scripts/CursorPool.gd" id="3_fvag4"]
|
||||||
[ext_resource type="Script" uid="uid://j6fc2qc5t3qa" path="res://Scripts/FPSCounter.gd" id="5_eu7l1"]
|
[ext_resource type="Script" uid="uid://j6fc2qc5t3qa" path="res://Scripts/FPSCounter.gd" id="5_eu7l1"]
|
||||||
|
[ext_resource type="Script" uid="uid://r4k5yal152we" path="res://Scripts/DeconstructionController.gd" id="6_6tx0c"]
|
||||||
[ext_resource type="Theme" uid="uid://dks3mt6h14i2s" path="res://Gradients/DefaultTheme.tres" id="6_bah7m"]
|
[ext_resource type="Theme" uid="uid://dks3mt6h14i2s" path="res://Gradients/DefaultTheme.tres" id="6_bah7m"]
|
||||||
[ext_resource type="Script" uid="uid://d1lhn37ijatdp" path="res://Scripts/BuildMenu.gd" id="6_wygdx"]
|
[ext_resource type="Script" uid="uid://d1lhn37ijatdp" path="res://Scripts/BuildMenu.gd" id="6_wygdx"]
|
||||||
[ext_resource type="Script" uid="uid://p8y4cfg2aonj" path="res://Scripts/BuildButton.gd" id="7_bah7m"]
|
[ext_resource type="Script" uid="uid://p8y4cfg2aonj" path="res://Scripts/BuildButton.gd" id="7_bah7m"]
|
||||||
|
|
@ -20,7 +23,11 @@
|
||||||
|
|
||||||
[node name="Root" type="Node2D"]
|
[node name="Root" type="Node2D"]
|
||||||
|
|
||||||
|
[node name="ResearchController" type="Node" parent="."]
|
||||||
|
script = ExtResource("1_sjtuv")
|
||||||
|
|
||||||
[node name="Camera2D" type="Camera2D" parent="."]
|
[node name="Camera2D" type="Camera2D" parent="."]
|
||||||
|
script = ExtResource("2_cvq6i")
|
||||||
|
|
||||||
[node name="Grid" type="Node2D" parent="."]
|
[node name="Grid" type="Node2D" parent="."]
|
||||||
script = ExtResource("1_2s04l")
|
script = ExtResource("1_2s04l")
|
||||||
|
|
@ -29,7 +36,6 @@ cell_size = 48
|
||||||
grid_color = Color(0.6627451, 0.7764706, 0.5647059, 1)
|
grid_color = Color(0.6627451, 0.7764706, 0.5647059, 1)
|
||||||
line_color = Color(1, 1, 1, 0)
|
line_color = Color(1, 1, 1, 0)
|
||||||
debug_overlay_enabled = false
|
debug_overlay_enabled = false
|
||||||
debug_overlay_display_values = null
|
|
||||||
|
|
||||||
[node name="GridInput" type="Node2D" parent="." node_paths=PackedStringArray("selection_manager")]
|
[node name="GridInput" type="Node2D" parent="." node_paths=PackedStringArray("selection_manager")]
|
||||||
script = ExtResource("3_62nr3")
|
script = ExtResource("3_62nr3")
|
||||||
|
|
@ -38,6 +44,10 @@ selection_manager = NodePath("../SelectionManager")
|
||||||
[node name="CursorPool" type="Node2D" parent="GridInput"]
|
[node name="CursorPool" type="Node2D" parent="GridInput"]
|
||||||
script = ExtResource("3_fvag4")
|
script = ExtResource("3_fvag4")
|
||||||
|
|
||||||
|
[node name="Deconstruction Controller" type="Node2D" parent="." node_paths=PackedStringArray("grid_input")]
|
||||||
|
script = ExtResource("6_6tx0c")
|
||||||
|
grid_input = NodePath("../GridInput")
|
||||||
|
|
||||||
[node name="SelectionManager" type="Node2D" parent="."]
|
[node name="SelectionManager" type="Node2D" parent="."]
|
||||||
script = ExtResource("1_anesy")
|
script = ExtResource("1_anesy")
|
||||||
|
|
||||||
|
|
@ -64,17 +74,16 @@ layout_mode = 2
|
||||||
metadata/_tab_index = 0
|
metadata/_tab_index = 0
|
||||||
|
|
||||||
[node name="VBox" type="VBoxContainer" parent="CanvasLayer/Left Panel/TabContainer/Build" node_paths=PackedStringArray("grid_input", "grid")]
|
[node name="VBox" type="VBoxContainer" parent="CanvasLayer/Left Panel/TabContainer/Build" node_paths=PackedStringArray("grid_input", "grid")]
|
||||||
layout_mode = 0
|
layout_mode = 1
|
||||||
offset_right = 280.0
|
anchors_preset = 15
|
||||||
offset_bottom = 826.0
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
script = ExtResource("6_wygdx")
|
script = ExtResource("6_wygdx")
|
||||||
grid_input = NodePath("../../../../../GridInput")
|
grid_input = NodePath("../../../../../GridInput")
|
||||||
grid = NodePath("../../../../../Grid")
|
grid = NodePath("../../../../../Grid")
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="CanvasLayer/Left Panel/TabContainer/Build/VBox"]
|
|
||||||
layout_mode = 2
|
|
||||||
text = "Zoning"
|
|
||||||
|
|
||||||
[node name="Build Road" type="Button" parent="CanvasLayer/Left Panel/TabContainer/Build/VBox"]
|
[node name="Build Road" type="Button" parent="CanvasLayer/Left Panel/TabContainer/Build/VBox"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
text = "Road"
|
text = "Road"
|
||||||
|
|
@ -103,7 +112,7 @@ building = ExtResource("11_ee7l0")
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
metadata/_tab_index = 1
|
metadata/_tab_index = 1
|
||||||
|
|
||||||
[node name="Overlay Controller" type="VBoxContainer" parent="CanvasLayer/Left Panel/TabContainer/Debug" node_paths=PackedStringArray("grid", "overlay_enabled_button", "overlay_selection_button", "overlay_display_values")]
|
[node name="Overlay Controller" type="VBoxContainer" parent="CanvasLayer/Left Panel/TabContainer/Debug" node_paths=PackedStringArray("grid", "overlay_enabled_button", "overlay_selection_button", "overlay_display_values", "reload_building_data_button")]
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
|
|
@ -115,6 +124,7 @@ grid = NodePath("../../../../../Grid")
|
||||||
overlay_enabled_button = NodePath("Enable")
|
overlay_enabled_button = NodePath("Enable")
|
||||||
overlay_selection_button = NodePath("Select Field")
|
overlay_selection_button = NodePath("Select Field")
|
||||||
overlay_display_values = NodePath("Display Values")
|
overlay_display_values = NodePath("Display Values")
|
||||||
|
reload_building_data_button = NodePath("Reload Building Data")
|
||||||
|
|
||||||
[node name="Enable" type="CheckButton" parent="CanvasLayer/Left Panel/TabContainer/Debug/Overlay Controller"]
|
[node name="Enable" type="CheckButton" parent="CanvasLayer/Left Panel/TabContainer/Debug/Overlay Controller"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
|
@ -128,6 +138,13 @@ text = "Display Values"
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="HSeparator" type="HSeparator" parent="CanvasLayer/Left Panel/TabContainer/Debug/Overlay Controller"]
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="Reload Building Data" type="Button" parent="CanvasLayer/Left Panel/TabContainer/Debug/Overlay Controller"]
|
||||||
|
layout_mode = 2
|
||||||
|
text = "Reload Building Data"
|
||||||
|
|
||||||
[node name="Selection" type="TabBar" parent="CanvasLayer/Left Panel/TabContainer"]
|
[node name="Selection" type="TabBar" parent="CanvasLayer/Left Panel/TabContainer"]
|
||||||
visible = false
|
visible = false
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
|
@ -158,7 +175,7 @@ anchors_preset = 11
|
||||||
anchor_left = 1.0
|
anchor_left = 1.0
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
offset_left = -273.0
|
offset_left = -300.0
|
||||||
grow_horizontal = 0
|
grow_horizontal = 0
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
theme = ExtResource("6_bah7m")
|
theme = ExtResource("6_bah7m")
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue