From d8184ab48b77f8f1dbaffc6b07b75c0ce6bdb4aa Mon Sep 17 00:00:00 2001 From: Eric Date: Mon, 5 Feb 2024 08:52:46 -0600 Subject: [PATCH 01/18] #8 Generate Resources #10 Resource UI --- assets/SpaceMono-Bold.ttf | Bin 0 -> 86636 bytes assets/SpaceMono-BoldItalic.ttf | Bin 0 -> 95292 bytes assets/SpaceMono-Italic.ttf | Bin 0 -> 103524 bytes assets/SpaceMono-Regular.ttf | Bin 0 -> 90904 bytes assets/SpaceMono-Regular.ttf.import | 33 +++++++++++++++ data/world_theme.tres | 6 +++ project.godot | 6 ++- scene/world.tscn | 61 ++++++++++++++++++++++++++-- scripts/Base.gd | 2 +- scripts/constants.gd | 7 ++-- scripts/world.gd | 16 ++++++-- 11 files changed, 119 insertions(+), 12 deletions(-) create mode 100644 assets/SpaceMono-Bold.ttf create mode 100644 assets/SpaceMono-BoldItalic.ttf create mode 100644 assets/SpaceMono-Italic.ttf create mode 100644 assets/SpaceMono-Regular.ttf create mode 100644 assets/SpaceMono-Regular.ttf.import create mode 100644 data/world_theme.tres diff --git a/assets/SpaceMono-Bold.ttf b/assets/SpaceMono-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..20e344951526b9b9ee75346d74a35d7213f49435 GIT binary patch literal 86636 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

D`C^@yH6}jW>$pr&{q| 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 CwIWsk literal 0 HcmV?d00001 diff --git a/assets/SpaceMono-BoldItalic.ttf b/assets/SpaceMono-BoldItalic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ff2ea5a5c2408e8f137a11fe9aaad4245150f013 GIT binary patch literal 95292 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%0Ap9 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 literal 0 HcmV?d00001 diff --git a/assets/SpaceMono-Regular.ttf b/assets/SpaceMono-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..04e56b923fae27ceabc3e82e4337a10d0fc6e002 GIT binary patch literal 90904 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 AivR!s literal 0 HcmV?d00001 diff --git a/assets/SpaceMono-Regular.ttf.import b/assets/SpaceMono-Regular.ttf.import new file mode 100644 index 0000000..1faaf77 --- /dev/null +++ b/assets/SpaceMono-Regular.ttf.import @@ -0,0 +1,33 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://cuhtrlqg4s5tw" +path="res://.godot/imported/SpaceMono-Regular.ttf-a0e59f506ad76f27d9c5d7797291715d.fontdata" + +[deps] + +source_file="res://assets/SpaceMono-Regular.ttf" +dest_files=["res://.godot/imported/SpaceMono-Regular.ttf-a0e59f506ad76f27d9c5d7797291715d.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/data/world_theme.tres b/data/world_theme.tres new file mode 100644 index 0000000..1b3e993 --- /dev/null +++ b/data/world_theme.tres @@ -0,0 +1,6 @@ +[gd_resource type="Theme" load_steps=2 format=3 uid="uid://dcpugcgqnnf17"] + +[ext_resource type="FontFile" uid="uid://cuhtrlqg4s5tw" path="res://assets/SpaceMono-Regular.ttf" id="1_suqxc"] + +[resource] +Label/fonts/font = ExtResource("1_suqxc") diff --git a/project.godot b/project.godot index c96f054..7a0693d 100644 --- a/project.godot +++ b/project.godot @@ -10,7 +10,11 @@ config_version=5 [application] -config/name="Corupture" +config/name="Corrupture" run/main_scene="res://scene/world.tscn" config/features=PackedStringArray("4.2", "Forward Plus") config/icon="res://icon.svg" + +[gui] + +theme/custom="res://data/world_theme.tres" diff --git a/scene/world.tscn b/scene/world.tscn index 36d55d0..7d86dab 100644 --- a/scene/world.tscn +++ b/scene/world.tscn @@ -1,15 +1,24 @@ -[gd_scene load_steps=7 format=3 uid="uid://m0us5xqa3gnk"] +[gd_scene load_steps=10 format=3 uid="uid://m0us5xqa3gnk"] [ext_resource type="Script" path="res://scripts/world.gd" id="1_yf6q1"] [ext_resource type="TileSet" uid="uid://d1sh6dy2w10b0" path="res://data/scifi_tileset.tres" id="2_sa7dm"] [ext_resource type="Script" path="res://scripts/Window.gd" id="3_bfjot"] [ext_resource type="Script" path="res://scripts/BuildingManager.gd" id="4_61js3"] +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="5_qhth7"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_teaou"] [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_8pjar"] noise = SubResource("FastNoiseLite_teaou") +[sub_resource type="AtlasTexture" id="AtlasTexture_m3qlj"] +atlas = ExtResource("5_qhth7") +region = Rect2(640, 768, 128, 128) + +[sub_resource type="AtlasTexture" id="AtlasTexture_oqxqp"] +atlas = ExtResource("5_qhth7") +region = Rect2(640, 384, 128, 128) + [node name="world" type="Node2D"] script = ExtResource("1_yf6q1") noise_texture = SubResource("NoiseTexture2D_8pjar") @@ -18,12 +27,14 @@ noise_texture = SubResource("NoiseTexture2D_8pjar") tile_set = ExtResource("2_sa7dm") format = 2 layer_0/name = "ground" -layer_1/name = "Cursor" +layer_1/name = "corruption" layer_1/tile_data = PackedInt32Array() -layer_2/name = "environment" +layer_2/name = "cursor" layer_2/tile_data = PackedInt32Array() -layer_3/name = "buildings" +layer_3/name = "environment" layer_3/tile_data = PackedInt32Array() +layer_4/name = "buildings" +layer_4/tile_data = PackedInt32Array() [node name="Camera2D" type="Camera2D" parent="."] zoom = Vector2(0.3, 0.3) @@ -33,3 +44,45 @@ script = ExtResource("3_bfjot") [node name="BuildingManager" type="Node2D" parent="."] script = ExtResource("4_61js3") + +[node name="CanvasLayer" type="CanvasLayer" parent="."] + +[node name="GUI" type="Control" parent="CanvasLayer"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 1 + +[node name="ResourceContainer" type="PanelContainer" parent="CanvasLayer/GUI"] +layout_mode = 1 +anchors_preset = 1 +anchor_left = 1.0 +anchor_right = 1.0 +offset_left = -128.0 +offset_bottom = 128.0 +grow_horizontal = 0 + +[node name="GridContainer" type="GridContainer" parent="CanvasLayer/GUI/ResourceContainer"] +layout_mode = 2 +columns = 2 + +[node name="GemTexture" type="TextureRect" parent="CanvasLayer/GUI/ResourceContainer/GridContainer"] +layout_mode = 2 +texture = SubResource("AtlasTexture_m3qlj") +expand_mode = 3 + +[node name="GemLabel" type="Label" parent="CanvasLayer/GUI/ResourceContainer/GridContainer"] +layout_mode = 2 +text = "100000" + +[node name="CarbonTexture" type="TextureRect" parent="CanvasLayer/GUI/ResourceContainer/GridContainer"] +layout_mode = 2 +texture = SubResource("AtlasTexture_oqxqp") +expand_mode = 3 + +[node name="CarbonLabel" type="Label" parent="CanvasLayer/GUI/ResourceContainer/GridContainer"] +layout_mode = 2 +text = "100" diff --git a/scripts/Base.gd b/scripts/Base.gd index 3427c88..68702c8 100644 --- a/scripts/Base.gd +++ b/scripts/Base.gd @@ -19,5 +19,5 @@ func _on_expand_timer_timeout(): while corruption_tiles.has(corrupt_tile): corrupt_tile = corruption_tiles.pick_random() + self.curruption_directions.pick_random() corruption_tiles.append(corrupt_tile) - world_grid.set_cells_terrain_connect(Constants.TilemapLayers.ENVIRONMENT, corruption_tiles, 0, 0) + world_grid.set_cells_terrain_connect(Constants.TilemapLayers.CORRUPTION, corruption_tiles, 0, 0) i += 1 diff --git a/scripts/constants.gd b/scripts/constants.gd index 04c0d01..064787e 100644 --- a/scripts/constants.gd +++ b/scripts/constants.gd @@ -3,7 +3,8 @@ class_name Constants enum TilemapLayers { GROUND = 0, - CURSOR = 1, - ENVIRONMENT = 2, - BUILDINGS = 3, + CORRUPTION = 1, + CURSOR = 2, + ENVIRONMENT = 3, + BUILDINGS = 4, } diff --git a/scripts/world.gd b/scripts/world.gd index c21d974..4d95b3b 100644 --- a/scripts/world.gd +++ b/scripts/world.gd @@ -4,6 +4,9 @@ extends Node2D var noise_values @onready var world_grid = $world_grid +var resource_texture: Noise = FastNoiseLite.new() +@export var resoure_quantity = 0.4 + var temp_size = 150 var temp_noise_val = [] var temp_noise_reg = [] @@ -13,6 +16,9 @@ var atlas_regions = [Vector2i(0,1),Vector2i(0,0),Vector2i(2,0),Vector2i(0,2)] func get_noise_value(x: int, y: int): return noise_values.get_noise_2d(x,y) * 500 + +func is_resource_tile(x: int, y: int) -> bool: + return resource_texture.get_noise_2d(x, y) > resoure_quantity func get_noise_region(x,y): var noise_val = get_noise_value(x,y) @@ -21,10 +27,14 @@ func get_noise_region(x,y): return i func _ready(): + resource_texture.seed = randi() + #await resource_texture.changed noise_values = noise_texture.noise for x in range(-temp_size, temp_size): for y in range(-temp_size, temp_size): - world_grid.set_cell(0, Vector2i(x,y),0,atlas_regions[get_noise_region(x,y)]) + world_grid.set_cell(Constants.TilemapLayers.GROUND, Vector2i(x,y),0,atlas_regions[get_noise_region(x,y)]) + if is_resource_tile(x,y): + world_grid.set_cell(Constants.TilemapLayers.ENVIRONMENT, Vector2i(x,y), 0, Vector2i(5,6)) temp_noise_val.append(get_noise_value(x,y)) temp_noise_reg.append(get_noise_region(x,y)) prints(temp_noise_val.min(), temp_noise_val.max()) @@ -34,5 +44,5 @@ func _ready(): func _process(delta): var mouse_pos = world_grid.local_to_map(get_local_mouse_position()) - world_grid.clear_layer(1) - world_grid.set_cell(1, mouse_pos,0,Vector2i(0,7)) + world_grid.clear_layer(Constants.TilemapLayers.CURSOR) + world_grid.set_cell(Constants.TilemapLayers.CURSOR, mouse_pos,0,Vector2i(0,7)) -- 2.49.1 From 7c81a2229e31871402abc0cb4b1337d39509a227 Mon Sep 17 00:00:00 2001 From: Eric Date: Tue, 6 Feb 2024 07:38:23 -0600 Subject: [PATCH 02/18] refactored cell world building #8 included resources into cell data --- assets/SpaceMono-Bold.ttf.import | 33 ++++++++++++++ assets/SpaceMono-BoldItalic.ttf.import | 33 ++++++++++++++ assets/SpaceMono-Italic.ttf.import | 33 ++++++++++++++ project.godot | 4 ++ scene/base.tscn | 4 +- scene/world.tscn | 12 ++---- scripts/Base.gd | 20 ++++----- ...BuildingManager.gd => building_manager.gd} | 4 +- scripts/cell_data.gd | 16 +++++++ scripts/world.gd | 43 +++++++++++++------ 10 files changed, 164 insertions(+), 38 deletions(-) create mode 100644 assets/SpaceMono-Bold.ttf.import create mode 100644 assets/SpaceMono-BoldItalic.ttf.import create mode 100644 assets/SpaceMono-Italic.ttf.import rename scripts/{BuildingManager.gd => building_manager.gd} (83%) create mode 100644 scripts/cell_data.gd diff --git a/assets/SpaceMono-Bold.ttf.import b/assets/SpaceMono-Bold.ttf.import new file mode 100644 index 0000000..2096f99 --- /dev/null +++ b/assets/SpaceMono-Bold.ttf.import @@ -0,0 +1,33 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://dmitg6232hytb" +path="res://.godot/imported/SpaceMono-Bold.ttf-a0599d1b2f2dabf2e3ca851caf1baa92.fontdata" + +[deps] + +source_file="res://assets/SpaceMono-Bold.ttf" +dest_files=["res://.godot/imported/SpaceMono-Bold.ttf-a0599d1b2f2dabf2e3ca851caf1baa92.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/assets/SpaceMono-BoldItalic.ttf.import b/assets/SpaceMono-BoldItalic.ttf.import new file mode 100644 index 0000000..c153b60 --- /dev/null +++ b/assets/SpaceMono-BoldItalic.ttf.import @@ -0,0 +1,33 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://d2edhb701t42t" +path="res://.godot/imported/SpaceMono-BoldItalic.ttf-f7b46e55b1271856b01bb8cddc5a12ab.fontdata" + +[deps] + +source_file="res://assets/SpaceMono-BoldItalic.ttf" +dest_files=["res://.godot/imported/SpaceMono-BoldItalic.ttf-f7b46e55b1271856b01bb8cddc5a12ab.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/assets/SpaceMono-Italic.ttf.import b/assets/SpaceMono-Italic.ttf.import new file mode 100644 index 0000000..c78cdc3 --- /dev/null +++ b/assets/SpaceMono-Italic.ttf.import @@ -0,0 +1,33 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://cjyu63kdviglf" +path="res://.godot/imported/SpaceMono-Italic.ttf-c3b45ba693c1f9c8acc44c6917acf7a0.fontdata" + +[deps] + +source_file="res://assets/SpaceMono-Italic.ttf" +dest_files=["res://.godot/imported/SpaceMono-Italic.ttf-c3b45ba693c1f9c8acc44c6917acf7a0.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/project.godot b/project.godot index 7a0693d..cdc3a8a 100644 --- a/project.godot +++ b/project.godot @@ -15,6 +15,10 @@ run/main_scene="res://scene/world.tscn" config/features=PackedStringArray("4.2", "Forward Plus") config/icon="res://icon.svg" +[debug] + +gdscript/warnings/untyped_declaration=1 + [gui] theme/custom="res://data/world_theme.tres" diff --git a/scene/base.tscn b/scene/base.tscn index 0ddcd33..7234672 100644 --- a/scene/base.tscn +++ b/scene/base.tscn @@ -1,9 +1,9 @@ [gd_scene load_steps=2 format=3 uid="uid://bbsaqy4xm1ldf"] -[ext_resource type="Script" path="res://scripts/Base.gd" id="1_0nxag"] +[ext_resource type="Script" path="res://scripts/base.gd" id="1_5hpho"] [node name="Base" type="Node2D"] -script = ExtResource("1_0nxag") +script = ExtResource("1_5hpho") [node name="ExpandTimer" type="Timer" parent="."] autostart = true diff --git a/scene/world.tscn b/scene/world.tscn index 7d86dab..1c972c2 100644 --- a/scene/world.tscn +++ b/scene/world.tscn @@ -1,16 +1,11 @@ -[gd_scene load_steps=10 format=3 uid="uid://m0us5xqa3gnk"] +[gd_scene load_steps=8 format=3 uid="uid://m0us5xqa3gnk"] [ext_resource type="Script" path="res://scripts/world.gd" id="1_yf6q1"] [ext_resource type="TileSet" uid="uid://d1sh6dy2w10b0" path="res://data/scifi_tileset.tres" id="2_sa7dm"] -[ext_resource type="Script" path="res://scripts/Window.gd" id="3_bfjot"] -[ext_resource type="Script" path="res://scripts/BuildingManager.gd" id="4_61js3"] +[ext_resource type="Script" path="res://scripts/window.gd" id="3_bfjot"] +[ext_resource type="Script" path="res://scripts/building_manager.gd" id="4_61js3"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="5_qhth7"] -[sub_resource type="FastNoiseLite" id="FastNoiseLite_teaou"] - -[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_8pjar"] -noise = SubResource("FastNoiseLite_teaou") - [sub_resource type="AtlasTexture" id="AtlasTexture_m3qlj"] atlas = ExtResource("5_qhth7") region = Rect2(640, 768, 128, 128) @@ -21,7 +16,6 @@ region = Rect2(640, 384, 128, 128) [node name="world" type="Node2D"] script = ExtResource("1_yf6q1") -noise_texture = SubResource("NoiseTexture2D_8pjar") [node name="world_grid" type="TileMap" parent="."] tile_set = ExtResource("2_sa7dm") diff --git a/scripts/Base.gd b/scripts/Base.gd index 68702c8..8393bd6 100644 --- a/scripts/Base.gd +++ b/scripts/Base.gd @@ -1,23 +1,21 @@ extends Node2D class_name Base -@export var world_grid: TileMap -var grid_loc -var i = 1 +@export var world: World +var grid_loc: Vector2i const curruption_directions := [Vector2i.LEFT, Vector2i.RIGHT, Vector2i.UP, Vector2i.DOWN] var corruption_tiles: Array[Vector2i] = [] -func _ready(): - grid_loc = world_grid.local_to_map(position) +func _ready() -> void: + grid_loc = world.grid_location(position) + world.change_location_data(grid_loc, Constants.TilemapLayers.BUILDINGS, Vector2i(17,7)) corruption_tiles.append(grid_loc) - world_grid.set_cell(Constants.TilemapLayers.BUILDINGS, grid_loc, 0, Vector2i(17,7)) + world.corrupt_location(grid_loc) - -func _on_expand_timer_timeout(): - var corrupt_tile = corruption_tiles.pick_random() + self.curruption_directions.pick_random() +func _on_expand_timer_timeout() -> void: + var corrupt_tile: Vector2i = corruption_tiles.pick_random() + self.curruption_directions.pick_random() while corruption_tiles.has(corrupt_tile): corrupt_tile = corruption_tiles.pick_random() + self.curruption_directions.pick_random() corruption_tiles.append(corrupt_tile) - world_grid.set_cells_terrain_connect(Constants.TilemapLayers.CORRUPTION, corruption_tiles, 0, 0) - i += 1 + world.corrupt_location(corrupt_tile) diff --git a/scripts/BuildingManager.gd b/scripts/building_manager.gd similarity index 83% rename from scripts/BuildingManager.gd rename to scripts/building_manager.gd index 50f2f2c..d2e7221 100644 --- a/scripts/BuildingManager.gd +++ b/scripts/building_manager.gd @@ -1,12 +1,12 @@ extends Node2D -@onready var world_grid = $"../world_grid" +@onready var world: World = $".." var base = preload("res://scene/base.tscn") func _unhandled_input(event): if event is InputEventMouseButton and event.is_pressed() and event.button_index == MOUSE_BUTTON_LEFT: var build = base.instantiate() build.position = get_global_mouse_position() - build.world_grid = world_grid + build.world = world add_child(build) #world_grid.set_cell(2, world_grid.local_to_map(get_global_mouse_position()), 0, Vector2i(16,2)) diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd new file mode 100644 index 0000000..598c2c0 --- /dev/null +++ b/scripts/cell_data.gd @@ -0,0 +1,16 @@ +class_name CellData +extends Node + +@export var layer_info: Dictionary = { + Constants.TilemapLayers.CORRUPTION: false +} +var _pos: Vector2i + +func _init(pos: Vector2i) -> void: + _pos = pos + +func change_layer(layer: int, data: Variant) -> void: + layer_info[layer] = data + +func is_corrupted() -> bool: + return layer_info[Constants.TilemapLayers.CORRUPTION] diff --git a/scripts/world.gd b/scripts/world.gd index 4d95b3b..8af5dad 100644 --- a/scripts/world.gd +++ b/scripts/world.gd @@ -1,12 +1,10 @@ -extends Node2D +class_name World extends Node2D -@export var noise_texture: NoiseTexture2D -var noise_values -@onready var world_grid = $world_grid - -var resource_texture: Noise = FastNoiseLite.new() @export var resoure_quantity = 0.4 +var terrain_noise := FastNoiseLite.new() +var resource_noise: Noise = FastNoiseLite.new() + var temp_size = 150 var temp_noise_val = [] var temp_noise_reg = [] @@ -14,11 +12,15 @@ var temp_noise_reg = [] var noise_regions = [-999,10,150,200,999] var atlas_regions = [Vector2i(0,1),Vector2i(0,0),Vector2i(2,0),Vector2i(0,2)] +var world_data: Dictionary = {} + +@onready var world_grid: TileMap = $world_grid + func get_noise_value(x: int, y: int): - return noise_values.get_noise_2d(x,y) * 500 + return terrain_noise.get_noise_2d(x,y) * 500 func is_resource_tile(x: int, y: int) -> bool: - return resource_texture.get_noise_2d(x, y) > resoure_quantity + return resource_noise.get_noise_2d(x, y) > resoure_quantity func get_noise_region(x,y): var noise_val = get_noise_value(x,y) @@ -27,22 +29,35 @@ func get_noise_region(x,y): return i func _ready(): - resource_texture.seed = randi() - #await resource_texture.changed - noise_values = noise_texture.noise + terrain_noise.seed = randi() + resource_noise.seed = randi() + for x in range(-temp_size, temp_size): for y in range(-temp_size, temp_size): - world_grid.set_cell(Constants.TilemapLayers.GROUND, Vector2i(x,y),0,atlas_regions[get_noise_region(x,y)]) + change_location_data(Vector2i(x,y), Constants.TilemapLayers.GROUND, atlas_regions[get_noise_region(x,y)]) if is_resource_tile(x,y): - world_grid.set_cell(Constants.TilemapLayers.ENVIRONMENT, Vector2i(x,y), 0, Vector2i(5,6)) + change_location_data(Vector2i(x,y), Constants.TilemapLayers.ENVIRONMENT, Vector2i(5,6)) temp_noise_val.append(get_noise_value(x,y)) temp_noise_reg.append(get_noise_region(x,y)) prints(temp_noise_val.min(), temp_noise_val.max()) for region in noise_regions.size(): prints(region, noise_regions[region], temp_noise_reg.count(region)) - #get_tree().quit() func _process(delta): var mouse_pos = world_grid.local_to_map(get_local_mouse_position()) world_grid.clear_layer(Constants.TilemapLayers.CURSOR) world_grid.set_cell(Constants.TilemapLayers.CURSOR, mouse_pos,0,Vector2i(0,7)) + +func corrupt_location(loc: Vector2i): + world_data[loc].change_layer(Constants.TilemapLayers.CORRUPTION, true) + var corrupted_cells := world_data.values().filter(func(cell: CellData): return cell.is_corrupted()).map(func(cell: CellData) -> Vector2i: return cell._pos) + world_grid.set_cells_terrain_connect(Constants.TilemapLayers.CORRUPTION, corrupted_cells, 0, 0) + +func grid_location(global_pos: Vector2) -> Vector2i: + return world_grid.local_to_map(global_pos) + +func change_location_data(pos: Vector2i, layer: int, data: Vector2i) -> void: + if not world_data.has(pos): + world_data[pos] = CellData.new(pos) + world_data[pos].change_layer(layer, data) + world_grid.set_cell(layer, pos, 0, data) -- 2.49.1 From 84de7fa6f1b2af94e33b72b34a925419064192fa Mon Sep 17 00:00:00 2001 From: Eric Date: Wed, 7 Feb 2024 09:22:14 -0600 Subject: [PATCH 03/18] #2 Collects resources #8 Generates resources based on resource data #10 Shows total resources and adjusts for new resources --- data/game_resources/carbon_resource.tres | 11 +++++ data/game_resources/gem_resource.tres | 11 +++++ project.godot | 4 ++ scene/world.tscn | 54 +++++++++++----------- scripts/cell_data.gd | 14 +++++- scripts/game_resource.gd | 8 ++++ scripts/gui.gd | 37 +++++++++++++++ scripts/resource_manager.gd | 19 ++++++++ scripts/signals/resource_changed_signal.gd | 6 +++ scripts/world.gd | 32 +++++++++---- 10 files changed, 157 insertions(+), 39 deletions(-) create mode 100644 data/game_resources/carbon_resource.tres create mode 100644 data/game_resources/gem_resource.tres create mode 100644 scripts/game_resource.gd create mode 100644 scripts/gui.gd create mode 100644 scripts/resource_manager.gd create mode 100644 scripts/signals/resource_changed_signal.gd diff --git a/data/game_resources/carbon_resource.tres b/data/game_resources/carbon_resource.tres new file mode 100644 index 0000000..ec041b2 --- /dev/null +++ b/data/game_resources/carbon_resource.tres @@ -0,0 +1,11 @@ +[gd_resource type="Resource" script_class="GameResource" load_steps=2 format=3 uid="uid://bpjj0x7jr1k6u"] + +[ext_resource type="Script" path="res://scripts/game_resource.gd" id="1_4maxk"] + +[resource] +script = ExtResource("1_4maxk") +atlas_location = Vector2i(5, 3) +spawn_region_min = -0.4 +spawn_region_max = -0.3 +pickup_value = 20 +name = "Carbon" diff --git a/data/game_resources/gem_resource.tres b/data/game_resources/gem_resource.tres new file mode 100644 index 0000000..f132873 --- /dev/null +++ b/data/game_resources/gem_resource.tres @@ -0,0 +1,11 @@ +[gd_resource type="Resource" script_class="GameResource" load_steps=2 format=3 uid="uid://dr00rd4f42jqe"] + +[ext_resource type="Script" path="res://scripts/game_resource.gd" id="1_tfoa4"] + +[resource] +script = ExtResource("1_tfoa4") +atlas_location = Vector2i(5, 6) +spawn_region_min = 0.4 +spawn_region_max = 0.8 +pickup_value = 10 +name = "Gem" diff --git a/project.godot b/project.godot index cdc3a8a..90203d7 100644 --- a/project.godot +++ b/project.godot @@ -19,6 +19,10 @@ config/icon="res://icon.svg" gdscript/warnings/untyped_declaration=1 +[display] + +window/size/always_on_top=true + [gui] theme/custom="res://data/world_theme.tres" diff --git a/scene/world.tscn b/scene/world.tscn index 1c972c2..7aa0d39 100644 --- a/scene/world.tscn +++ b/scene/world.tscn @@ -1,21 +1,17 @@ -[gd_scene load_steps=8 format=3 uid="uid://m0us5xqa3gnk"] +[gd_scene load_steps=9 format=3 uid="uid://m0us5xqa3gnk"] [ext_resource type="Script" path="res://scripts/world.gd" id="1_yf6q1"] +[ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem_resource.tres" id="2_rn4a2"] [ext_resource type="TileSet" uid="uid://d1sh6dy2w10b0" path="res://data/scifi_tileset.tres" id="2_sa7dm"] [ext_resource type="Script" path="res://scripts/window.gd" id="3_bfjot"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon_resource.tres" id="3_pq6ic"] [ext_resource type="Script" path="res://scripts/building_manager.gd" id="4_61js3"] -[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="5_qhth7"] - -[sub_resource type="AtlasTexture" id="AtlasTexture_m3qlj"] -atlas = ExtResource("5_qhth7") -region = Rect2(640, 768, 128, 128) - -[sub_resource type="AtlasTexture" id="AtlasTexture_oqxqp"] -atlas = ExtResource("5_qhth7") -region = Rect2(640, 384, 128, 128) +[ext_resource type="Script" path="res://scripts/resource_manager.gd" id="5_k5643"] +[ext_resource type="Script" path="res://scripts/gui.gd" id="6_yuatk"] [node name="world" type="Node2D"] script = ExtResource("1_yf6q1") +game_resources = Array[Resource("res://scripts/game_resource.gd")]([ExtResource("2_rn4a2"), ExtResource("3_pq6ic")]) [node name="world_grid" type="TileMap" parent="."] tile_set = ExtResource("2_sa7dm") @@ -39,6 +35,13 @@ script = ExtResource("3_bfjot") [node name="BuildingManager" type="Node2D" parent="."] script = ExtResource("4_61js3") +[node name="ResourceManager" type="Node2D" parent="."] +script = ExtResource("5_k5643") + +[node name="Timer" type="Timer" parent="ResourceManager"] +wait_time = 5.0 +autostart = true + [node name="CanvasLayer" type="CanvasLayer" parent="."] [node name="GUI" type="Control" parent="CanvasLayer"] @@ -49,6 +52,7 @@ anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 mouse_filter = 1 +script = ExtResource("6_yuatk") [node name="ResourceContainer" type="PanelContainer" parent="CanvasLayer/GUI"] layout_mode = 1 @@ -59,24 +63,18 @@ offset_left = -128.0 offset_bottom = 128.0 grow_horizontal = 0 -[node name="GridContainer" type="GridContainer" parent="CanvasLayer/GUI/ResourceContainer"] +[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer/GUI/ResourceContainer"] +layout_mode = 2 + +[node name="ResourcesLabel" type="Label" parent="CanvasLayer/GUI/ResourceContainer/VBoxContainer"] +layout_mode = 2 +size_flags_stretch_ratio = 2.0 +text = "Resources:" +horizontal_alignment = 1 + +[node name="GridContainer" type="GridContainer" parent="CanvasLayer/GUI/ResourceContainer/VBoxContainer"] layout_mode = 2 columns = 2 -[node name="GemTexture" type="TextureRect" parent="CanvasLayer/GUI/ResourceContainer/GridContainer"] -layout_mode = 2 -texture = SubResource("AtlasTexture_m3qlj") -expand_mode = 3 - -[node name="GemLabel" type="Label" parent="CanvasLayer/GUI/ResourceContainer/GridContainer"] -layout_mode = 2 -text = "100000" - -[node name="CarbonTexture" type="TextureRect" parent="CanvasLayer/GUI/ResourceContainer/GridContainer"] -layout_mode = 2 -texture = SubResource("AtlasTexture_oqxqp") -expand_mode = 3 - -[node name="CarbonLabel" type="Label" parent="CanvasLayer/GUI/ResourceContainer/GridContainer"] -layout_mode = 2 -text = "100" +[connection signal="changed_resource" from="ResourceManager" to="CanvasLayer/GUI" method="_on_resource_manager_changed_resource"] +[connection signal="timeout" from="ResourceManager/Timer" to="ResourceManager" method="_on_timer_timeout"] diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index 598c2c0..bf08e2c 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -9,8 +9,20 @@ var _pos: Vector2i func _init(pos: Vector2i) -> void: _pos = pos -func change_layer(layer: int, data: Variant) -> void: +func change_layer(layer: int, data: Variant) -> bool: + if layer_info.has(layer) and layer_info[layer] == data: + return false layer_info[layer] = data + return true + +func change_resource(data: GameResource) -> void: + layer_info[Constants.TilemapLayers.ENVIRONMENT] = data + +func get_resource() -> GameResource: + return layer_info[Constants.TilemapLayers.ENVIRONMENT] as GameResource func is_corrupted() -> bool: return layer_info[Constants.TilemapLayers.CORRUPTION] + +func has_layer(layer: int) -> bool: + return layer_info.has(layer) diff --git a/scripts/game_resource.gd b/scripts/game_resource.gd new file mode 100644 index 0000000..fea787d --- /dev/null +++ b/scripts/game_resource.gd @@ -0,0 +1,8 @@ +class_name GameResource +extends Resource + +@export var atlas_location: Vector2i +@export_range(-1, 1, 0.05) var spawn_region_min: float +@export_range(-1, 1, 0.05) var spawn_region_max: float +@export var pickup_value: int +@export var name: String diff --git a/scripts/gui.gd b/scripts/gui.gd new file mode 100644 index 0000000..1a153a6 --- /dev/null +++ b/scripts/gui.gd @@ -0,0 +1,37 @@ +extends Control + +@onready var resource_container: GridContainer = $ResourceContainer/VBoxContainer/GridContainer +const SCIFI_TILESHEET = preload("res://assets/scifi_tilesheet@2.png") + + +var _resource_displays := {} + +func _on_resource_manager_changed_resource(changed: ResourceChangedSignal) -> void: + for resource: GameResource in changed.changed_resources.keys(): + if not _resource_displays.has(resource): + var atlas_tex := AtlasTexture.new() + atlas_tex.atlas = SCIFI_TILESHEET + atlas_tex.region = Rect2(128 * resource.atlas_location.x, 128 * resource.atlas_location.y, 128, 128) + var img := TextureRect.new() + img.texture = atlas_tex + img.expand_mode = TextureRect.EXPAND_FIT_WIDTH_PROPORTIONAL + resource_container.add_child(img) + + var label = Label.new() + label.text = str(changed.changed_resources[resource]) + resource_container.add_child(label) + + var data = ResourceData.new() + data.image = img + data.label = label + data.value = changed.changed_resources[resource] + _resource_displays[resource] = data + else: + var data: ResourceData = _resource_displays[resource] + data.value += changed.changed_resources[resource] + data.label.text = str(data.value) + +class ResourceData: + var image: TextureRect + var label: Label + var value: int diff --git a/scripts/resource_manager.gd b/scripts/resource_manager.gd new file mode 100644 index 0000000..507c122 --- /dev/null +++ b/scripts/resource_manager.gd @@ -0,0 +1,19 @@ +extends Node2D + +signal changed_resource + +@onready var world: World = $".." + +@export var resources := {} + +func _on_timer_timeout() -> void: + var corrupted_resources := world.get_corrupted_resources() + if corrupted_resources.size() > 0: + var changed_resources := {} + for corrupted_resource: CellData in corrupted_resources: + var res: GameResource = corrupted_resource.get_resource() + if not resources.has(res): + resources[res] = 0 + resources[res] += res.pickup_value + changed_resources[res] = resources[res] + changed_resource.emit(ResourceChangedSignal.new(changed_resources)) diff --git a/scripts/signals/resource_changed_signal.gd b/scripts/signals/resource_changed_signal.gd new file mode 100644 index 0000000..14c8116 --- /dev/null +++ b/scripts/signals/resource_changed_signal.gd @@ -0,0 +1,6 @@ +class_name ResourceChangedSignal extends Node + +var changed_resources := {} + +func _init(changed: Dictionary) -> void: + changed_resources = changed diff --git a/scripts/world.gd b/scripts/world.gd index 8af5dad..cf938a2 100644 --- a/scripts/world.gd +++ b/scripts/world.gd @@ -1,6 +1,6 @@ class_name World extends Node2D -@export var resoure_quantity = 0.4 +@export var game_resources: Array[GameResource] var terrain_noise := FastNoiseLite.new() var resource_noise: Noise = FastNoiseLite.new() @@ -9,8 +9,8 @@ var temp_size = 150 var temp_noise_val = [] var temp_noise_reg = [] -var noise_regions = [-999,10,150,200,999] -var atlas_regions = [Vector2i(0,1),Vector2i(0,0),Vector2i(2,0),Vector2i(0,2)] +var noise_regions := [-999,0,999] +var atlas_regions := [Vector2i(0,1),Vector2i(0,0)] var world_data: Dictionary = {} @@ -19,8 +19,12 @@ var world_data: Dictionary = {} func get_noise_value(x: int, y: int): return terrain_noise.get_noise_2d(x,y) * 500 -func is_resource_tile(x: int, y: int) -> bool: - return resource_noise.get_noise_2d(x, y) > resoure_quantity +func is_resource_tile(x: int, y: int) -> GameResource: + for res: GameResource in game_resources: + var noise = resource_noise.get_noise_2d(x, y) + if res.spawn_region_min < noise and noise < res.spawn_region_max: + return res + return null func get_noise_region(x,y): var noise_val = get_noise_value(x,y) @@ -35,8 +39,9 @@ func _ready(): for x in range(-temp_size, temp_size): for y in range(-temp_size, temp_size): change_location_data(Vector2i(x,y), Constants.TilemapLayers.GROUND, atlas_regions[get_noise_region(x,y)]) - if is_resource_tile(x,y): - change_location_data(Vector2i(x,y), Constants.TilemapLayers.ENVIRONMENT, Vector2i(5,6)) + var tile_res := is_resource_tile(x,y) + if tile_res: + change_location_resource(Vector2i(x,y), tile_res) temp_noise_val.append(get_noise_value(x,y)) temp_noise_reg.append(get_noise_region(x,y)) prints(temp_noise_val.min(), temp_noise_val.max()) @@ -49,9 +54,9 @@ func _process(delta): world_grid.set_cell(Constants.TilemapLayers.CURSOR, mouse_pos,0,Vector2i(0,7)) func corrupt_location(loc: Vector2i): - world_data[loc].change_layer(Constants.TilemapLayers.CORRUPTION, true) - var corrupted_cells := world_data.values().filter(func(cell: CellData): return cell.is_corrupted()).map(func(cell: CellData) -> Vector2i: return cell._pos) - world_grid.set_cells_terrain_connect(Constants.TilemapLayers.CORRUPTION, corrupted_cells, 0, 0) + if world_data[loc].change_layer(Constants.TilemapLayers.CORRUPTION, true): + var corrupted_cells := world_data.values().filter(func(cell: CellData): return cell.is_corrupted()).map(func(cell: CellData) -> Vector2i: return cell._pos) + world_grid.set_cells_terrain_connect(Constants.TilemapLayers.CORRUPTION, corrupted_cells, 0, 0) func grid_location(global_pos: Vector2) -> Vector2i: return world_grid.local_to_map(global_pos) @@ -61,3 +66,10 @@ func change_location_data(pos: Vector2i, layer: int, data: Vector2i) -> void: world_data[pos] = CellData.new(pos) world_data[pos].change_layer(layer, data) world_grid.set_cell(layer, pos, 0, data) + +func change_location_resource(pos: Vector2i, data: GameResource) -> void: + world_data[pos].change_resource(data) + world_grid.set_cell(Constants.TilemapLayers.ENVIRONMENT, pos, 0, data.atlas_location) + +func get_corrupted_resources() -> Array: + return world_data.values().filter(func(cell: CellData): return cell.is_corrupted() and cell.has_layer(Constants.TilemapLayers.ENVIRONMENT)) -- 2.49.1 From 33334f03e8e4e2ac0e183695c3d61ad72f6864b5 Mon Sep 17 00:00:00 2001 From: Eric Date: Thu, 8 Feb 2024 10:58:57 -0600 Subject: [PATCH 04/18] Added corruption pattern #11 starting building ui --- project.godot | 4 ---- scripts/Base.gd | 16 ++++++++++------ scripts/building_manager.gd | 4 +++- scripts/expansion_patterns/expansion_base.gd | 6 ++++++ .../expansion_square_pattern.gd | 19 +++++++++++++++++++ scripts/gui.gd | 2 +- 6 files changed, 39 insertions(+), 12 deletions(-) create mode 100644 scripts/expansion_patterns/expansion_base.gd create mode 100644 scripts/expansion_patterns/expansion_square_pattern.gd diff --git a/project.godot b/project.godot index 90203d7..cdc3a8a 100644 --- a/project.godot +++ b/project.godot @@ -19,10 +19,6 @@ config/icon="res://icon.svg" gdscript/warnings/untyped_declaration=1 -[display] - -window/size/always_on_top=true - [gui] theme/custom="res://data/world_theme.tres" diff --git a/scripts/Base.gd b/scripts/Base.gd index 8393bd6..232afbf 100644 --- a/scripts/Base.gd +++ b/scripts/Base.gd @@ -1,10 +1,12 @@ extends Node2D class_name Base +@export var corruption_pattern: ExpansionBase @export var world: World + +@onready var expand_timer: Timer = $ExpandTimer var grid_loc: Vector2i -const curruption_directions := [Vector2i.LEFT, Vector2i.RIGHT, Vector2i.UP, Vector2i.DOWN] var corruption_tiles: Array[Vector2i] = [] func _ready() -> void: @@ -14,8 +16,10 @@ func _ready() -> void: world.corrupt_location(grid_loc) func _on_expand_timer_timeout() -> void: - var corrupt_tile: Vector2i = corruption_tiles.pick_random() + self.curruption_directions.pick_random() - while corruption_tiles.has(corrupt_tile): - corrupt_tile = corruption_tiles.pick_random() + self.curruption_directions.pick_random() - corruption_tiles.append(corrupt_tile) - world.corrupt_location(corrupt_tile) + var corrupt_tile: Vector2i = corruption_pattern.expand_next_tile() + grid_loc + if corrupt_tile: + corruption_tiles.append(corrupt_tile) + world.corrupt_location(corrupt_tile) + +func on_corruption_finished() -> void: + expand_timer.stop() diff --git a/scripts/building_manager.gd b/scripts/building_manager.gd index d2e7221..9fd6035 100644 --- a/scripts/building_manager.gd +++ b/scripts/building_manager.gd @@ -5,8 +5,10 @@ var base = preload("res://scene/base.tscn") func _unhandled_input(event): if event is InputEventMouseButton and event.is_pressed() and event.button_index == MOUSE_BUTTON_LEFT: - var build = base.instantiate() + var build: Base = base.instantiate() build.position = get_global_mouse_position() build.world = world + build.corruption_pattern = ExpansionSquarePattern.new() + build.corruption_pattern.expansion_finished.connect(build.on_corruption_finished) add_child(build) #world_grid.set_cell(2, world_grid.local_to_map(get_global_mouse_position()), 0, Vector2i(16,2)) diff --git a/scripts/expansion_patterns/expansion_base.gd b/scripts/expansion_patterns/expansion_base.gd new file mode 100644 index 0000000..5c25e5a --- /dev/null +++ b/scripts/expansion_patterns/expansion_base.gd @@ -0,0 +1,6 @@ +class_name ExpansionBase extends Resource + +signal expansion_finished + +func expand_next_tile() -> Vector2i: + return Vector2i.ZERO diff --git a/scripts/expansion_patterns/expansion_square_pattern.gd b/scripts/expansion_patterns/expansion_square_pattern.gd new file mode 100644 index 0000000..c08f0e1 --- /dev/null +++ b/scripts/expansion_patterns/expansion_square_pattern.gd @@ -0,0 +1,19 @@ +class_name ExpansionSquarePattern extends ExpansionBase + +const EXPANSION_STAGES: int = 3 + +var expansion_stage: int = 0 +var expansion_tiles: Array[Vector2i] = [] + +func expand_next_tile() -> Vector2i: + if expansion_tiles.is_empty(): + if expansion_stage < EXPANSION_STAGES: + expansion_stage += 1 + for x in range(-expansion_stage, expansion_stage + 1): + for y in range(-expansion_stage, expansion_stage + 1): + if abs(x) == expansion_stage or abs(y) == expansion_stage: + expansion_tiles.append(Vector2i(x, y)) + if expansion_stage == EXPANSION_STAGES and expansion_tiles.size() == 1: + expansion_finished.emit() + + return expansion_tiles.pop_at(randi_range(0, expansion_tiles.size() - 1)) diff --git a/scripts/gui.gd b/scripts/gui.gd index 1a153a6..9d996f2 100644 --- a/scripts/gui.gd +++ b/scripts/gui.gd @@ -1,6 +1,6 @@ extends Control -@onready var resource_container: GridContainer = $ResourceContainer/VBoxContainer/GridContainer +@onready var resource_container: GridContainer = $ResourceContainer/MarginContainer/VBoxContainer/GridContainer const SCIFI_TILESHEET = preload("res://assets/scifi_tilesheet@2.png") -- 2.49.1 From 78c4291b6ab2178cb46fb1e7e73c1d978346ec12 Mon Sep 17 00:00:00 2001 From: Eric Date: Fri, 9 Feb 2024 12:16:51 -0600 Subject: [PATCH 05/18] created basic building class started building groups temp ui placed #11 #13 #6 --- assets/scifi_tilesheet@2.png | Bin 240494 -> 243996 bytes data/buildings/corruptor.tres | 10 +++ data/buildings/hub.tres | 18 ++++ data/scifi_tileset.tres | 68 ++++++++++++++ scene/world.tscn | 85 +++++++++++++++++- scripts/Base.gd | 14 +-- scripts/building.gd | 8 ++ scripts/building_manager.gd | 4 +- .../expansion_random_pattern_large.gd | 18 ++++ .../expansion_square_pattern.gd | 1 - 10 files changed, 212 insertions(+), 14 deletions(-) create mode 100644 data/buildings/corruptor.tres create mode 100644 data/buildings/hub.tres create mode 100644 scripts/building.gd create mode 100644 scripts/expansion_patterns/expansion_random_pattern_large.gd diff --git a/assets/scifi_tilesheet@2.png b/assets/scifi_tilesheet@2.png index c1073a47332bf535ef161eddf22a9409f397a1d9..47727391354b6163b1a9cc224a72a6e2c338f3fc 100644 GIT binary patch delta 24949 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 delta 21529 zcmce-c|4Te|35yKq(xDQNF+tblC6Z9vV|;V%ic-|$(HpREz%-IQi`$fOZMGVM2N{U zhOuSKPL{Eand^J5>Avsx{rP-;-^b(g`~C4dkB4zx*E#2Po%7ny^PKC$;;y-_UD$_A z51ETtgf2mqyCbrz=GEc%rTrG&HgC4eBtHw7UkYlXD&wXk4b$#N^WA2WaVohrM^){AOHF>f!L9 zc{qy4K)!!Y?98HrkHC5uwAps*&d*^(Qc$(=(fFn=Et4)?uCWlP*3jT<-JGhdtU?El zjnqvhKMkW$(yPd&V`3>z>W5w=oL8m=?5Z^q*u>%9>zQo3;o_z6X8-=-#Anhka&mHR zc}JJB!%&?@)1b#M9rFBmZOMMQd<9vB8GCsz*Yb5wlj}M5PI;8#VzH2|D+z{PC(yf#}K%_j0p!%H06T)fPn> zdSDqYTOatyk9koBH@v3{N;rzkevdtEZ2shG(lh+e)?WIvsc*P`FA+xuOI}A4v~I57 zuB&&d>(Zh*Usn)sc1Wr^DHtUm_4X3Nn)W8$*JftdJgy%p0c9(FZ^_}^4X7Iqko(oc zM0rfgrQ>FLDXH98%Mhq(ES&zB5VXRts_?qbyFu%M>7qdUPX!`1&swUXr@XvoF6&Z8 zr}^TP@b^N0Z^hIz4_hDWpxAlEhQj?u_A|G^l=>W)dK1hqr{(T#SNY8^_RiC*8x_XF z!owbT+7Ab{Rl=c~wbsF)TZ#S9-3QxY`7FAeY<{8R7jz(Hvh~^X(VCuA#;lL*-MjY; z8`lBnId}m)Iqz~bq<&H;#=^=b?9uvqh1atxSXhsbIWt@G_TwAMJ=Wn(1 zzH9BXc4wv^k9U0s=nM2Z^V8Qy&~!rqe#6v<*ryIxgKEYEdlf6zets@P{)U?*M#iNo zC8gBv-DwCUH~so$FL^?8xxLf+F_smJ4d$ZXaopM--BXsn4Q`ciNN+R}By zmB5BhrvoU6&ty&X+IaDg=f4f1K#HE-#sw4cQjIT7M(@&1ekENhAIq}aXm?;MF^p-4 zNA%(F=)8lc7sH-}+8GBvU|)sHI^Ypez?Nbn@v?>Op?5SMi!@H7@}hmOQiWT8`I&UJ z-t4KnY-OXbQr4Z#;d_ehTasB+ab{jiSlBFq5bF&2?cU`~YcJoRdUzA!?oo$o7b=>i z!vlG2_EDuO#B6=m#}-ysM@Pp(eOBHJJT-WC z-I)Q}+`Wd%K>=vGVtROX{+@Q#NdNo`AN*?dLbFmIXQBU!=YU;C(Fom8BJXhgW-&Xj z#TP*+C#<%7lERDM*nxj@QE%fq9pB$isTlbI(`3?rhfkr)?_AZGabEc>REuuOgyr|p z4?H*DdQELF*MhSk{f6~CsB45RJfqiW^@A;T)UMLGZf}jc zxE)fV61i0;ZB=|1H%XZUnIT+2uK+)kZ}y}+W@29M0m*Y|)7sW@s;qx{VBy87dyPk3 zqI*0(Z*iyj5AqwrzaM+8I?FZd>FLj}%6k)9>+M_b{|p*Mp|(314dK{{P{?g@;awVa zbM}I}PHygPE8htJy&HwXxW&+puJrB}%;o>k@?*`M?ny)t~=UNrf!k-?2AaByE z-LwbL?^lhDjjJa3l_hAzO{31c+rjbbVcnEV%@n~NA#3eE7Ii`blC2ucaSIa!{5?TBF-+HP z9IdPCbsDrQ^KsMA_#Ug)uXxJ1xTJzlZ^sVzwy!)5U0r53F4{RR5m7%j`>Yck2l#q_ zOmB!7+r~T-^Qq7hzj*wF=1q?y$E0rwbWhZmkBu#H$C43;2_~*#-15A@Rl+$ZFX!v> z_X{RXV+m01V7iUMOM4t`v;jSEk;!#orpJoD`OIz~z45@|c>46pdU;Jrm-qU!-G`nl z*?8zrtyoh_O24)bU;7aI-nslj1WxCv7K$Au_WW!JB^Fr!fMf`BJg>pv3SG}lbV zI8QO3a?C`Jdcj9-UK>s%m-?^Hg?)YW$b`j(D6Z^(tl<4SHxRi@dDHSas&ftf$J#I5 z|7{o+MoiBp+%VgA3xxW%pI*dY^;)+t=!bb7jlXK%HRVOKsq`T|+Wo8bgQLaG8*|^^ z2{b@Kzm_N8#>70esr3Fj*VA)ZI?8o@NjhlZe6yB}$vF(Iqj{;&ICLY-<{{)na^XQu z?NbvMW)ech%e2-Mo%|>+0lbpRYG*U<#cZa0+L14AD;w99g?IHWTj76~4&0ed!7C`J zx{q~!@AS7kQB_gE^?q7U_O$8&o|!>`O8Y_xUMR7l;6#RS?Tf7uX{NJkNoUe*1M>5l zBi%NjD&WEr@fl-&ylxx#%Qe)s5wCd?sq0#b{*Rf;AhWnay`$;QvgMxn?nI%)aiTGE;INxJ$cz6iXg)(R;CUOX$W277w`aC1HR*8^=djD~o*C8rA7Lw*+83beDL&7MEt!To@2*E zb9D>8{L(soE$QHNN=w<=(`wm5iC+BATc$KooizvNLW-U0>o=t99yxTLy;11_#g%3+ zisv<3JQ8zs$L?upT)1Ez>*Tw50S+%6rQxe@i`d%2$3 zTc%uk(q8V74}S`d>opR{o-g5e&q2COra0!2bWcXAnhi~Q!6Uc3ql*13AXt;jWU`5vy=DK0xu*icOKtx7)z2)~wd;&9@XMx;W%R_SK=Gi(OsDPxzURj23{Y&-rv_E%4SP0b;XG{aK*I}Z=JE}(w)_Q$09Doe+&IF%v}uPWvgZRX27 z-1lB;LwA;ED;Kkq8Et$t++fgl$@`@6F0DF=ggr)YRy69q`$HpS^aVb;W08va(`V9y zy^!zchnA-Bq~2QErFXa&izoU^y;bxtT7st90dMd6f!_ z9y{imaeMcEy6u;iY50R45zbqwq~gm|=Kr>n*6%HWi|u;Sv~%raq^>UDO8QN%O=wC} z?JR6_{q2rN8!q?7bG4tUZYXwx0-Za~maFnubDCTG-mJQ}IJ%yf(MUZ{=ggQas)^z+e5M6!-4WrYvAZ9F*2gp&O7ru%B$}HAvUWq1<~!H4QK(pf zwf3|_P{2aUm_Tr7id;&KL2PI0hGEWR=md>GNcTDmxCi{_tTzk4a}WJXiUkE1^ax6< zqWHjTxIkLZoYk4Qn!BUll#U4p<;>bSn~N`9%;;Mr`p?s7d42x#fls30_Gq=pz-Nt@ z66u4v$5x%~%2x*BPm1@1@q3Fpn0Q4mVY=4y3`)rUM|nS&O46fto)= zh3|F1U+>QM`v|HAZY(!Mgk0szI&LB%+iB)-+46Fzo9f1`evE6OSLLfQy6OFN(y20% ztIdpi$D|@2-&WZxbIy6}?s`TZdh>T%9e*&_NmaQH%Fhk|Arfe;32?#@@QYSsnPEaL+7dU1KXW)Af6a{*s| zZvfZg(2hb0p>#CPniw}zWCoTYD8J8twO{*4;$-}U7sS*Slih%c%vfUW4!e% znQYll>M}FGPM_&nB95dw*bjgD%0n`Zkc`q*U#G`2bD~~q^K{j$FQM0dy*g{ktb3W3 z*7e9m?K-=ex#G2jWvKkJUH@$=xv$%a3cN;|z>pvch4qXJSZs{spPu$Q`!3obR#(C1 z63EAQ3#gJ6H#_EO;ekg(byHmTRWE!fp*qv+2?a4VNhC%2k|Qk}BPyCEmn=-~9$)-x zy4h0RJ>2GXV{Z4jOf>*owKr_QncSpx02Nyua>rY6_2=ObM_Z754}TrUg{M4vv=sFXK@z~--~z2iR^&9hIEo47 zTXbZA3IaWNm>-ZP}o5boN2Mbl~p>(Auk)$IA$kc4-5Qm_ja zFf$u^DoK_x_RvqZfKsmh{wOP?IUjZ7X$@SpF*g!Us#gr(XU3`ZJ`eX?9cV4d=4eQJQ3u;jQko0QwpXg<|%0mPB??R5YV9xtP$vqYQQ^gz>hibci{pz+m64q{V zw|phXEysWGa$`y;mGBHKf*RT-(chaaEwTrTb#D%JHb&0#(1QnXxM^o+eP|%lG&X`V znHD$I4aKG5{KPM=jnDL1zi!T>*+PDP$^*aamF6zzF06S!^y>{UtE8PhP`({A5C7cy zxI*n+FUgk+Rj*U2iy=B;EOd-$k8kH_*0u7zKize6&Ee|Y`d2(OI;bMG$$~<0a%l_R z`)R1Qmax0p#h#QK-WgO4OnXVxKxCk`eq%!wV$_F}Lk~Xp8mLicW=RK?J?Q~&bW<(^ z`BhVGsZo%ZOkOO=eZ``tpuwfOQasIvVIC*UPS00N=Tu7j&wR(Oa zBO{~qs726Q;36#1IXPirTkU)&Q+n}~95=6x+O}83?7QvUc~D^gl5Cj4$kOh92+Ae7 zrS!-raB)T3xoevDN<1wh5JE%CJJLq(9~*kFMG!zAlEyDzs-gp&WLQrsgE}+wPHy2# zV`RSNl!`%7ad9zpWZx+{xxMJMIUgTMs@}YxdBf~jCDw3T^>c z@+rLxcDAGTuMT>4TnB-hM8s44V?$C%v^>cZ{fj@Kwj}L}emLECu~F2pW??Ez@I%bI zb>b8W1R8OG_f36ao|Wf6)qmLz4>G_sa)`v>a;m@61DooS!_TgZMK>D;(uN*~A0uOe zO`FE{?v0EzKWY=?;#E9X)f#(x?^b>`A7^wH(fDZe^A&tws<6hZ&9w%!?dC!_v>6;u z?}FTD1K*dIds9=>20L8WftV{M_hd!oJEcuofS@|Bx={Dx?7Gvwz65U}b6 z72plSX#mGq_%3Htx*ip6H*hf)a+n|ZrM~z5`}eY{H1ZuHfC+9L5W2k+9cyKg;cs`~ z)4q5h2h5=y?Z-IdjRVY?CgMBL^j}M7nxIk{Wrd)}ZgM5+7}fPJaNvxO+^uF`C3u1A z!;1CW32&ORzhFY4W`6$wJPsNQoVV($gkb#J4<9a=1SW!1_}=6r9!Twt=Ft$>6+5YD zoTaUGRp3Ep0mo{Py_MS0LzJq{96KiUv^$P%q}%}))+~jua{W~E&RDvp+w*Dh*OU~K zD3AToZ|2HJBlKFgV*Omy_cz>GndwQ!dx#gwd3fNemfQ94FFn^K#T%D}n`zO_V_$Yp z3{ut!ux();9!`B91SKhoy?YECh3T)29yx+Yrj+7~);Lvv|1|39mL+#*XNlC*)K>X6S?D}JkR0cbI0H`;HsK?lw!QQdgciL0yudAfSj`DWzMmav@Eyj?@Md2OZ_ zTqx9)%Qf`hwc7ZVF=^<^O~=VMh!tC%FqeuJw6d_Q7^{(n);A>6uIg04NR9cMH<0T( zIU2voG=%$A0}P#Z=ccc(cK29{aoX^x2jOe^v4k)r&KEX>D+!!Bk&_*8(q$}6J6wQj z?|AcQq2h7{ojf%)J90^Nbf9ux&2M9QG91`}2ENoeyZ%znXo1NR1;op>uB7n#yS3%| zrj0jI)V$j+H&-f~s(dFV+Mpw0Olcs*KLr40UGFV33+K1f+R0f!3hjM_*|=~3I4u<7 zHbvsj1Xa(m$d|4tWRsV_zfYUQyH;WqJ)M)ws^EH)s(CW8cT)R|R z3jBiJG>@I~9oERCp3bpfh3o1xW_t1XG36Z&gs$pA)ieC&HjsyYze!}J_xy{j+;V&E zdy}0@1X4BHXU=+%YPCh^e1iK6%XSMpyKsOH6mM272BUeeI4|A|3|!t3IstdpC%}~- z4{=^&>FA~+>=nkjqW$+W+4+5&*h0%yMrdw=QCnMB(7CDeOnTZa1cR4H+tg} z3)HU9|3dBeCtSd9bwNL?JeOOYEwale^=-JSl|S|`uX=+NvOfyMkmcDaD$sfp)rDC% zpX||g0xd5)J2}(DRNjFQM;iq>$Xz!I?V|+b%#l>leaguT4FQT9wXSh_VI2+J33oez z+gO^;OMbiJ)|t9Zb$zC=)Xrn#$GRF}aovK0NuX?PxNNjtPtJL%zFwfG|=T6we7vmH`Zzc-!aYJD8tcUfn#O z{G`=EoCUGTj1?OnW^U`3F)&Cpm{499nl0*lzAGOP}mEzv9n$Esjzn4IH^&(PW>;)MrW%b)|Gtmz4p? zuD>2TBO`72!hO!}LNv`$Wwj7DyS8BmQZxMfR9b%wU!8&9 z!VCP8Pf*?pZE*9E9q%Q*i1oJJK}M_eyhG6D>f_GW7xVL$glS78^hR4Flr^~dD-F2p zB_9AR*q_Pcy7=U6xbB!;;9NNU)=YD);s72EzbVzwr~?`Dg$ozzI!)#T&ju2C>1&g6 zgw8}11)N4WM5m(R>L*X0OdlD>M0kk< zRb1R85Uiw4TC5RQp^*MpXobvG>>D^XND1W^19((VBWo{v@W zJ$bYI(QUF3hyZ6ws{*Jnl?PgYh$Ta#jgfgOv?NH7)@W*O<0bsy`sJpdFBh{%C+9==YRf+# zKp%$vFSq4J2Z|cT1&n1X)hvtwgco+2-CC`JCsb`N;%n~A5AXvlw3WbNo?$W!mVO{c za{|9|F~j8AU8l@3h<60|uWU)_1_^2WK?eiei?Cyw+nUA}jScDH@ItWQ=FhDsvcA$N z;X$5@Kxj%lKJx=Ms{vMTap7ZMzjhb<`^*efSGvZgeEqrx5{SA>k(?%uH^)};`hDz* zm96cl{)sq#!j~5O(it!4I1OaDq>nKX-+Tn2sySLL4x-(jBgii6jnJqyyMsQ?E%o&D zbQe35FukvNTEy`x0Wi&L{uzDq2ME~e@M>cX?_C-B5=cgZyn7_+hPj3{FIVLee3WD} zSN?u339f|E13*V)a&2**pOGj6oho!DY5Vo`AW^#Cps*{AhX2vL5+de~H>EXE2YjH8 zM?AJ`uQJ}fvzx72UXgckunk&YA~x~Y+TsnLlHr`>8Y#=h;UNAJ+c>2Y`)2)4L#j7u zn^hZAS*!5yAiWoMzk7F4wOX;@9oT&*puvI>t{iCyFO4(&Sl>XO1dCT2)kAg&N8sg0 z(mQ9UwVr6DT|W#IP_nLvIXfUVmk!wT>T%)LuimH|^VrqugT2AKjDt8x8(Dczx@*{^ zo^P@SH{}P0Nj}b~0dqs`sr)Yq{pw_=gwNah6n3g~1p^WaJ>{nsDyK@DOV9Yp#YJoq z)8+vwqA!4y-F`U+vSp=FPn6UOb8%HVIKW>&K_nmi{7V2Itu2f^YX}#F!|Z$qsjg(G zO%o~`v7NhAZXM+0>%OpJj^lX}IOKt&_Cw3>@$236XVM0N0a0Laxd!&ihk(;Y|CrVU z+u)h*JA&DvPGnXR!uzkEx#ccYBJp{-!&2k>D+3yX$zNKs&@xwbL3K9tB50u>kVSOc9ecTS| z&GV()!3;lPVNni=y8KS-!a)nqwAD6u!$ZReI`Me#ws1FR=jn{`xWJV+XCFhtU^Dw5 zZ!~A@w zzJuj8#+YOhrGLJ0d3t@_2`^AS2Nt_ko0L452y(INO2??YOx>GTLBxDNJv}|BLiw^| zx7zw>q-Z5Nlf(ek1{dFyTEj1Vs;5(Ttj)t)Li$` z`$H$gJXzfE%eg)rS;wC+HkAhk*Lw)R=m*vD`)26^B^UjJCSXsk9Qg4K@se7>N;?{y z%=EIjd)L04uiokE#ke+EfnMW>rg@KwbZRN)aOM79;{X@?PANobQP>L^C|1<-r#aoZ zea3v=>fgegt~gZBUP53YP_`(Yo?-iQ34Z(c0x0EA!7@wq?YlA z{MYN2wUL7_UrjSiYLsRa_jQ92#+z^8MM0~-=)|7_dQ z8~>yq2qpxI{HLE6I4YSwO>AT}2tq5rDI~~Ecz7f9l+4V^zOzTKsfkBHlydY&5@BcM ziRyNEGVBt}5-sb^><$&lEiA$7lT9D_Ki~Nd!TE2grSOew-LrsdJnUM%U;xv%@~W4r z-Yp!20qdRzPlnD4v5yRWlCE*+)@QsO{0OOc5Mi#J2LzV}p$pL8oO~YIcvT7e`O@sR zzuH|Xx}X#^lm<5x|9W`n>Q;CR2bqQR|0A-3B!G1ORrb9_{r_?OM|1wm%esNo{vL(n z!Oc3GDEVeW;8fCHn$wO4VC?VdZU$hhmQk>Mx@Wp^p8O+wwu>nv=Z&Dd%$Pq_s8Ox` zEcE^vhkYzen#oAF`M7_kq#jND1UKL=>qA9-0*@Wu&q4d{qcl77=x#IP22>JU+vW_H zR?bISvj7?YLvg3(8=_hS8x(WGj-NB##rRb%O7mqh9LeTqNr5QSjt?+g8~DM3GB~nt z)iF0%coqN83t6Hl@@U6ebWWE!_br)XN*O5C{_yg3Sa7`pycn`RpR-l}Pzl zuUB5bMV;?sXi-Hlm3w0H4V|EMXb!%(>%RW3%D)Zic})-pebtgC+M>9`c||NU=tE^V zIzJ{8_OCWuhE_LBDbDU*YLsaun3`dIP`wL5I2k40t$imHvwGxv#|a{~pe++FoSObh zT<=Ev3oR^Go9zO6dV?#*(K|;nw{^9sWpHyot<_E`>Ewz3s7Bzc8^6(p2{?PpEn2&R zhI4ffsiS<`v*9xoABFB$BAtb0%7TNZ-6e&E2YiVfPe{|9aU#K-v_Xr!AzXb;hAlrt zRC7!96A-z`5l);Fb>tNTM^CoP{3XGYB*)+A*=7CO8@eBtE4IO%PUb@?%2CE-f>UqX z+=iZ?%M{#Ip{mrfaZCqi7C2s)U&55271pc2WZh&1X8~8mC>Z+)R_JNE&C&SK0E2Dv zJ1s(lWAx{V;_QpDd!dG@OnlLMK1s)@1d)zMldxYkD-`26GoL&ZS3jK)YfsY6I*#HW z%YaS)W}DF7SvL5Y$wFF`_bkCm;pNqdPPqTP<@(WU4yQy~Du8+S$3E~TJUY8#mlepJ z!T0(fB~YE#UON*05F4ZCH$$BK;AB@E1DTFxNOediw_OHk1$+8RU<6ht#@QSeB^|#U zskxS>EO0r?yfCn22ea4789LA3V~7{^1qaS{ye;zgQfE)MjkxaWQxmzYDINUMdwM$) zMXE(sG$UOuy$L;gAJZb@NR^@5{bMq@91@$6rtxXLUXQRP(9zRf$)vNzyJJk5oYIWB zeb@m4~9HFcKRHQb6K~D;WUWhG%C#a6!Qp6=3*uv2kXTVT3p%` z8W_;brbI^lbTV;acOtyy?`cn1mJZ>}KI0^ha%@kDee-l?c@Oi`TLMCk`5zig}3m6s9CRBMTYX)lS*+9+{UfLkoM~mcq`ZQNqO$eBjaFH*;2eFvD>q4a6U0o zlILI_2}2@enc;H1(#RrWIvIf32+K7dzHAj*UOKpg2XR=m*JGV_z8tWL7eBLZX6Rw) zrTkF18A*fkL2-KCd%Q~aa$DJLh0zZ24~JPhE3;GS;uTX~uahfGBxo}blMq-r9zLfs zk`-OUa|rQb6|xh*4NIBsS8aK&Wl`yz$XDRVovO39N|&G6sZ)}*Q|Ha$_=_F-YiZzU zm!%^&tM1*ft`t=1f0tdSyeFVl0t! z4x@9Qd-fbAHg&sm>3q>_ddOAsmf&Uh)~)@lme#T1z|{tZ6;-fp5E*eoM&yg?KGO(i z^YciA(y}5?q5B`+YtQZA{eH_DtxhcTxRH7fFXSGf8+Hxjr zGM2FYCBi{Zp$V1;q^X*{I}rvBJ8>sADzA0yre*S(+z1;A7a30{lV;B;6KCaj42jG> zwmpZLT^ZE35@thln;c>{;$Q^hPKa|QIKbIEeESxl9T-UdJv}WNuuLja?L|ZM z$KB7_5`@6~zTrfSA+PPT^0{&oPlb_Tv1}ySPNvvQB&`G}oG}lBXy*K%9J!gD`dnun zV$Wg1m~i&w6Or<)otdg5**3h-=v=_`wRDw&UrZ^pJ=4a0+WkDdp4u;W2vBdIG@%^{ zv#muZsYMwb%KCJp4Yqi6t$i8F;xx(<#}qef%_EGd0Cf5n`)!~ZZ`NS2Ap?3&W*61lW zfm7r>`Me43C{BDkb-Y@BTv8_`&fx4bZ{uK7xEH$3Z(+iGH}HAT*IX52CU63-D5&+^ z&KQtVGB)@hsXjdaRMT{KJWt$VK<{O&EgQUaYSz5;>I?VWmk}!;6hhpUO{X$wRYb4$ z?vP~adCP6-{j!QBj-8pXXO{7!w8ZAxg>A_Ai1WdgET7jMJ{|fNGrk=V(*VgGWD~ev z>RxF?_*jds-F1*M{lO!((hT=8?Cs1h!ZF}nGvJ2P zeO);Q!TV>A2 zokl2z1)0K*+-sBCoMJidJF%Tkz|roR(y0tU1LaO-&f;7BxMOnXFeB9LYx>A`jRQ6Q zAP5!mxo|7!t~{-{v(0%;^x4e_-Wv)@Dtg9S#I8Z(zF7u?L|r^$9&OI->HTUAs;p)T zGcvZe0h>>VHMV=1F(}N{o&G5AZmOV9D_Z749AddL8z!DQ$DVN-z2Q^G^cNl0VNVx0 zEYvkC$Tp^T+n--WqV3%ic@MIE!BIs}Fm21q zUVCaIy~RI@9FCtl*&l*!mm;~^<-Fl1>0%sv-8S+*Gx|u(AAVm|iYPuRJ~ZOOwkY|J zue>cRscU<)^zAGjW1XTWkFlCmwjLn_9Chc9(cjtyxl%{?n1%7ISfmpu*woCkIB%R1 z(73^c%qUIv^jP4!il@D|uczNpKl32h^%&sq=%tI9)B93l8C^6ZHMxa|kY8kpWecF3 za&sa89=Y5;Uf|naf(W28fluzxBxbS&wS$1RD#~t>*NfF{=ln4|70~N3z{~7J z%&QK;l8Y0dj@MVJ&6w{?A|_gXsnbbW)5Yf^?;S*8v28?2Y#WH8;aGzhm(&~~IRid| zJ~BKCIWP`zhN#wYL5bvKhh%F49Ur_-I+b# z`DL(?A&4|gUhUzWMskj+@3Z(%iC z9+iIEm=t=ozybd%3MBmyJ9V^tSHY=OW(*1=^<0q%ud|Qx&^o?uQy)o>F)`LB>)BBM_!_Y!9Nj_o=hS{ znyj{Tk!v9}D%QQ0XElknl>nApaXZO?n&En6n$w7!F{Aa4>hzlx3%Vd>LMQDr-L)1) z6f%+yjyE9Mk{zub4ytn?StLJeW=?(Q@q3Y8?6=^V;9PZ#>4WV|VM%6z>X7(DM8xV! zP964PNm@{`_ks-_^0`o0*D$A-BVGLS*`t$Ny;1S_g0&j-Q#21TF8ZQM zjY@MZAyKFICmAG&0y=3uQ{KwCA`z}iE|?=Ni%H<}NzE$9fgb7U6>cdweX z;{(7jA#4oAr#PpW?Tar#%yipfAz&0; zl13N#U)69gYt&C?w97=+mOC+dYWWo^G)vHWJS!8!`{ad!LOLndK{O zG8z%fnw;}P;uH!({m@dFF{bi)zrXUjya9z;OcFH3D(6JsJS8%_l6g4Xl`N}EgfiPp zPJmb!;gUT0-ag@ZQHO!)DhaGg4M>+RQqfr$<3s17Qn{EoGI1eG?j*+CQeY&je~O; zQwoYR*SQ%219KIMk_1Wh4&zQ&(H4muvZCjidv1Pdemc||(npOf${>I?0=F?;bo)UH ze3i9@W6Bz_G$USdagfuZK3$>sKTQO2D`@`AbVfr&)6%k`X}u^X&zA>*Yqc542A2$pZVG;uUu!^jB@as;>y`%{w6iPQ| zX*#*Kx6NuT0b(cGWme3>wgmUI>4cK|#u6=GglpMv%g3c%oP^~I(wSeI`=-5Nt>|!o!sftyR^6_nD23~mIn39b1e@2x& zUfsK0CN}pO5(8~G(@SiW4sB3OdYwEQhI%xHUI?4R8B-K`9^Y4SjBm!@qx^(ouS20Q z3pZu&^y~4a$@X>3m{x`dJqoJ7IhChH+r{K%wMDGaEF=wxz^fj_(;t;GKeHi=8wR^J)o>9=i4-ZgD7DyZJKB1r_qiE3aP${|?Gz&P+Z zNZDabsVEgpZvT{4N2o<3#HE;(F0CEfoJ>!g0B8URi?z0(S+1~i;W1gD(> z`|C8BA0X_iw%sj;NX>sR3f@x?jRQE7;lUj!)Yq3cF#h|_VZNYSkafE8>7$LFS7zT# zDuU!Gx5==j_)KcixP+rZ-qo$a3}CMoUCh=4BQs=_WzARW7)@9IL!O}bp2c*VRIsFu zG&?L*L29XvRAld5n~I)V>3B#AfhaR?4>j2$h60LMQMqBD=kQO_xv9&a^Obq&0E3_o zq)Og6eGmN=E1jrwS zvD;?Eg!(iweT-FpM#uA6XEHbUf~?#?47eg zAp-O#NFvE7LM;6|1I*P=J=o4d0Usyuf_XTwr<*FolRs)@{nS!m?bJ&@a-243{btn) ze;-qQTWL4=+KovF@xMqp+1`x0=Wk|fD($n;DE4&mBB61~4i?T#E&l)4U9GO+t znS?(-!U`vjc*&%@j2_+G%O$J&&vuWDawf~rR{wKpN9x`Y-JE*P^`4 zfb__n=lxS-eK!+NaEkcuohXGo@rfHPL4Ts|W%aptk&DZ>-oScLHi|9L|b z%~+bKpP-BK)390870XBG3ewqLBUpbW6`jW&yl6{Fd-D&7%wqal=;cpssAvcC(O1VL z+x5H-&;|u{?qkB(1a^vF`klr=jZoMcSsQ>U{4j9&BrJVZC?WjwWHH>kCAflvJ^_E$ z0aM?Q%fkMEfJIdGr!sGWGFh=GY_J?VD>5uh(pB>FVq$8TZv!D~TV?rUBB1nmRgc%{OXq9CUKa2RjaWGLoK%fjG|q6F;4gEN9WjPJlk z!At%WvDfYgex#j-7@Ia8k+rU1Nox!CyIK>z_wPi}ep306b}zRwV^E(k?{)#Fgp`7# z-~|}hjO;(c`tgpz77X+K45W56>K`tl{@zlO@yxsp8e>*ju}Bl7#D8MNf`5zx{rl$s zew}(mc-Q8zzp(H%IyL<3XJ|bwDxm~P6St2dDQVvd14cy_O(>a~R&!JgOut@xn{kgk z`|)UU3O30CSpnuy9{^v)jsF;~hzyj&IMRePLhU0h_u*-x0FOmvfEhrj2064Rx#v#! zOo#cHS*uTqoVFVY&`0KThQTsMKR{oVN$9Ujl$gx_{(9m8gjfsMXGMCC{KN<^v@p1U zVM7$U>0>X0OG=lh!8`? zBFcv_?C)XfL%aX%BlCR3obFD-7%s=%E(C7}8nyRh-_HaM*H^Qe&iv0DTe2qI}}WgR3YR zK2}b$N6-WhX+L-_B6k}4CxZO90|Wm)Jn-MI+2)W%CojmN80Ct||5o(s?*Fg?=_#|F z6~Zz|fS>;Q9=~J9BL8Z*;MYF?yj|h8UjB0fAJLDldjU@MlS!W4Zcfn|TRT@uTI=uasuywO2rEW2bsc2I)UH1inj zz%ZDIF}-$rr9!e)fiawy!9X1GT(y4%KPS%USE(!qkfS&lFA{ZqUo~=a1AFlgn~?zu z$ufkBBHFy^<@>8PnyU=xO?(o|?n~G?>-lkGpg6YfW{j6sb25CU5%CZA00rK6;FVY@ z--17fLO%H;a`)6@$P=(9hM^ydd&C%OuFAz2P&8*M%g(J>PR5X;(O`~3pV;EAZLJ#q zfDFoV?;pq9U;fX$9wAcWhbqRd3nDF0C|jh>kE06==oa<{}o%%@rLoRPqb(qLcr(` zC*l))goR%ry--$vbVPY+E;8idIpj$|z@JC$O?$SlcM~p$&qK>J*)vnpC5k!6=PO1$!4#wR1i zcvY27Clbq0%jX%o=?3(Y0{q8>7xEAlAd09zHtZn=xx*MDih}wW$<9a{CK#HV$S}s} z`AilSNRVaBk-;YvsuM9Bq3;t+yhu+JX2-wBgNRPdkcnAqNQEK&M8-sZ3jI+HP94Tj z82z3gde1)IcmU%aJyxRi$Bf=aGxRqUR3T*r;WSc!Q^Z_D-cvDj9D_VSp?X1o?42Xp zf=3{i;_aVfd0NtDko@&am}3 z@;rVkLs58N1>ZRhEP>&4l(9jot$jX(?GBJU(nf|aIu3HiGBH49&5X*GpqVzn$&XegZuhvbrke#)aMlFe{geQ zE6P)J1lykC_uO_xHx&m-56Y37inKEtrUkDU3?Mn{_s@b53KM;ji_(ufk=%)`=gP_gZ2WUD9yU$O+vf{$LURL1n_^unB)AN^5Q;P%Kz+QII*H}=O zCLQlh3Rl||uRu?5r(aqa;?+|+yS)16%o}~E2mf** z|EGv+4QlF$!W$wGF`6KV$y6aw6vT=lKnZG0FsRjv#u2s7s0eBLQHRN&G}14n!T48ZZV=z27gZSl#40D@=`E(3O7F>{i- z;WFJy9d(7yLir$6J-3u@iICb|J#w4w`}LEh+JB!#f>Pf+3uR6gboTp(`b|AVPbk%8 zyHf%IB!w{-a^EJ#Q&pMgG)TgYMK4$1!n|bgjY*cusL#F`Q+F-LG%176F z{m|Grw#*_x?#TO)drTCnOS?H?)S~dmQ8u73Pi-WQFD+dY*6qR@fH&e>E`CT_pzL-- z9g-YRf=0dqyq zjwvNlY9qIO46_3*LE+bOY0-*-Z)K;WF*U5NvLj(K3^LLi+mj?v8%Sn)3TWhO)zn8E z4<~|U@rSSk&4A3gqa6qK*>0XjWZugivJQ;G2ZBJ^;EByp9N|1n%iH*ivh6cE=>b5j zD|B_<#3L~pYn=cXKA7N9nMsy{n$HY`b*St`i86f2C{vT=AYnnEL|b@n7ZOYCvH6>NI?e?6^CuJ7 zMQ}QeP|B;9%^H}@w;;HvCA)hz!kOA`FX02k*yccLgXcwVF1>{OWM}$T(i}42&@j6L zkqgi;TdfA#$VDdw%ycD@LMw|}hv8aeu-yX5W2Z^Gi8(HiJ&f7{E;93n0Oq(GuK2b9 z5bRd|Ivz}OsS@f^6=D<1y)KK18gA?7!o2}4H5y0vPqE_Mb2!UN)_MBTNa=$3Pn^oX z_jE1Z!s_6o)>OoVRvaH<=G2rp#jihylz}!J6LT;_WMx{!YoGrVFEn2;RRbipVaMZ` z`JE+x%FxX^n35n=J9tWIWSGjKjkDr5ky6oe?jr8w(!p_%sysJ3S|`Ty#O1gTE&MXo z0xVAQctb?JW|@mAdx%a}Q*%&kK2*cED$FCw92ZjG7HVW0O`Do$&EPmZH9`9+?8zHH$?+R#zKP z1-M(bz!xxDY9E&lX@N$_Ayd2{0{B`7Y%mN4o+vl8&uM$%O-Pk6y z1o=-7ut%K(@D4jqfk%0Y`1%c6L)VD2nTC$dw{gh6AXW void: grid_loc = world.grid_location(position) - world.change_location_data(grid_loc, Constants.TilemapLayers.BUILDINGS, Vector2i(17,7)) + world.change_location_data(grid_loc, Constants.TilemapLayers.BUILDINGS, building_data.atlas_texture_region) corruption_tiles.append(grid_loc) world.corrupt_location(grid_loc) + building_data.corruption_pattern.expansion_finished.connect(on_corruption_finished) func _on_expand_timer_timeout() -> void: - var corrupt_tile: Vector2i = corruption_pattern.expand_next_tile() + grid_loc - if corrupt_tile: - corruption_tiles.append(corrupt_tile) - world.corrupt_location(corrupt_tile) + var corrupt_tile: Vector2i = building_data.corruption_pattern.expand_next_tile() + grid_loc + corruption_tiles.append(corrupt_tile) + world.corrupt_location(corrupt_tile) func on_corruption_finished() -> void: expand_timer.stop() diff --git a/scripts/building.gd b/scripts/building.gd new file mode 100644 index 0000000..28c3b77 --- /dev/null +++ b/scripts/building.gd @@ -0,0 +1,8 @@ +class_name Building +extends Resource + +@export var corruption_pattern: ExpansionBase +@export var atlas_texture_region: Vector2i +@export var name: String +@export var description: String +@export var cost: Dictionary diff --git a/scripts/building_manager.gd b/scripts/building_manager.gd index 9fd6035..7bfe73f 100644 --- a/scripts/building_manager.gd +++ b/scripts/building_manager.gd @@ -2,13 +2,13 @@ extends Node2D @onready var world: World = $".." var base = preload("res://scene/base.tscn") +var building = preload("res://data/buildings/hub.tres") func _unhandled_input(event): if event is InputEventMouseButton and event.is_pressed() and event.button_index == MOUSE_BUTTON_LEFT: var build: Base = base.instantiate() build.position = get_global_mouse_position() build.world = world - build.corruption_pattern = ExpansionSquarePattern.new() - build.corruption_pattern.expansion_finished.connect(build.on_corruption_finished) + build.building_data = building.duplicate(true) add_child(build) #world_grid.set_cell(2, world_grid.local_to_map(get_global_mouse_position()), 0, Vector2i(16,2)) diff --git a/scripts/expansion_patterns/expansion_random_pattern_large.gd b/scripts/expansion_patterns/expansion_random_pattern_large.gd new file mode 100644 index 0000000..7333b25 --- /dev/null +++ b/scripts/expansion_patterns/expansion_random_pattern_large.gd @@ -0,0 +1,18 @@ +class_name ExpansionRandomPatternLarge extends ExpansionBase + +const EXPANSION_DISTANCE: int = 8 + +var expansion_tiles: Array[Vector2i] = [] + +func expand_next_tile() -> Vector2i: + if expansion_tiles.is_empty(): + for i in range(EXPANSION_DISTANCE, 0, -1): + expansion_tiles.append(Vector2i(0, i)) + expansion_tiles.append(Vector2i(0, -i)) + expansion_tiles.append(Vector2i(i, 0)) + expansion_tiles.append(Vector2i(-i, 0)) + for ran in range(1, EXPANSION_DISTANCE): + pass + if expansion_tiles.size() == 1: + expansion_finished.emit() + return expansion_tiles.pop_back() diff --git a/scripts/expansion_patterns/expansion_square_pattern.gd b/scripts/expansion_patterns/expansion_square_pattern.gd index c08f0e1..e40d3cf 100644 --- a/scripts/expansion_patterns/expansion_square_pattern.gd +++ b/scripts/expansion_patterns/expansion_square_pattern.gd @@ -15,5 +15,4 @@ func expand_next_tile() -> Vector2i: expansion_tiles.append(Vector2i(x, y)) if expansion_stage == EXPANSION_STAGES and expansion_tiles.size() == 1: expansion_finished.emit() - return expansion_tiles.pop_at(randi_range(0, expansion_tiles.size() - 1)) -- 2.49.1 From 5467e044a78b4ebe4150db33d8234029f4278ac6 Mon Sep 17 00:00:00 2001 From: Eric Date: Sat, 24 Feb 2024 08:36:43 -0600 Subject: [PATCH 06/18] Added player character and initial interaction functionality --- assets/scifi_tilesheet@2.png | Bin 243996 -> 105529 bytes data/buildings/corruptor.tres | 15 +- data/scifi_tileset.tres | 404 +++++++++++++++++++++++++++++++++- project.godot | 8 + scene/player.tscn | 49 +++++ scene/world.tscn | 9 +- scripts/autoloads/grid.gd | 35 +++ scripts/cell_data.gd | 3 + scripts/game_resource.gd | 3 + scripts/player.gd | 27 +++ scripts/resource_manager.gd | 22 +- scripts/world.gd | 28 +-- 12 files changed, 557 insertions(+), 46 deletions(-) create mode 100644 scene/player.tscn create mode 100644 scripts/autoloads/grid.gd create mode 100644 scripts/player.gd diff --git a/assets/scifi_tilesheet@2.png b/assets/scifi_tilesheet@2.png index 47727391354b6163b1a9cc224a72a6e2c338f3fc..96b2cbcae4bde4ddf68e779ce481aeed88377a47 100644 GIT binary patch literal 105529 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¨|Beni9wSR-)GZm)tr@cs)y?rTk}|K=Dxc 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 z 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 literal 243996 zcmYg&1yoeu8|@uJIz$jqS`aA-X@MaWK?D>Tx+J7QIs^ukk`AR?!Wk3_I( zR-gx%o7N*mpro5=6#&=()dvdN-WeN{KJHAz{(>jlbqM1+AiAK8nyo<{P*r8KN?_x8 zL(8dG{?OnZ$7nehU$-LPb*o3_8n=IUN^)D9V`^)q0`7UvNkuH_KW^2zooa3Pj+tk# zg3ISB*RwYqT0_cDY3N<>Rl?Z-^Yu#f7Pikg8oj3M^>#&>t{R!`7V&@%T_gDFJTLit zbJ_|H{^cehW)G%TG_rBOZ8xepaYPqBq!DJ2*s9UzI<$ z6Fd^wDcfK5zX1l*#*VjvTK-sY0ginmH5saSaCG!N?Rfh<(ivOK*?B+HE_Sj{>0;dU zbT#%$^u;SlrhxfqiQ5?t*Vq?-ZO(&TWkH&9;Keot!?`Gqgoi~U7Rlb+90@<&J#0fx z!flzJBMx1WNMv(|=T${$k(N!FPQc|_+l^!r4p9*Y>&wh`s-9y@lSvmTXoY?rLv zx*9#Nw)Ee7N^gT(eD)lV&aN8wdy=$hS2U({xj_kJ(5bQq^GD>WvIcmRU)5xFRCR`* z=P+)^_O4rr{NQalv-Oqpqe;2p_DL-Dz+;>Zy)MwkK{A*-M6G2~9*y*z4OaTn@nAkX z?r&}z_}g=5rcret*FWw5&2;$CO{20+WA|)p)MMOubID?Ia`GTAG>)TP94ChGA4DCE z^qp|$yHDUwwyCac|6opd?dyw;5e-c#ler14P0QsD@PL>-KmWFcNS55#8zg+}4V5z5 zCE#!JltwJk&aVz-?0))YmFP#wN$ojB8tYU9Fy+^sJ7j5Hibt(0w(ts%4uLa3n;bBw>1SK)aY`&WlR>eU-Q1dx;9%VFka@+#zT9#O7o{cIJKfmhf&(I z9l>q>wo_Hp?)^e@5!~YBqBcdi<>GOBlK<+-i(>@r>C5eTyp95SVs<$75e^gj>tVZIXR0dMov!NyomrfoyJ>&^(yxbwnD-k8wScfPF}r0)E3&1Ij4No!6g_uLWS^lmt37DhL60_8hy*{W5Q70Ig$yvT!JB^GET3 ze<@m8`;7$@%WOpoM@L2Jp#zzGSLrpSp{&9-&Rl#~ay2#0&N#GGY_A<@gLbX<9J<3MIWp52xp`N0w^pj{6q>ZBF+)ZJy&MU z?2tgX?AKylkL9lU(`Eye8>Wkki>p;9yVLW}jy9?{OFZ|>va(pFjg}Mnk_5081jwj{ zSm&5O_Gi;0T`$<&sP7o2w3&FcGs%?`g}a7?Usjn%Pk~QeE!qOhI(8=SmM4hW3+4w- zVo^-2BT2iYglT=+bu#Oxa+++n2t?@;ZFz(e8khHY<&Ui7=O{G*>5CK13`ERDwlHq; zJ9#g!JrLdscX=#zgc&aeMp?m3tZcFc7}oScjV`W}Ua$&HDsSvoTtFJm-zf@HQHh7n zEaV~WFte6#F%ZT;&Zr&W~dHXrHs#>Rp4=xxQ{A^uqSWmoBiRxiRN`Ko~i zfR>N(XKavXn^6!USBz+5`PHFw(dIn1guY@)2`*fIge@Anc8!o4YeYe*uCM)Hs*4JL zn9n2=OS0&+AEtF5EnHjN*%`HJf{K+!G-1S;T=_TEj7E!MmSwb6U>vlOh4%+&6o0FI z-xd5>NBS>wIiLz)NXK>qEXXHe&s)OZ)oT{(1YiwI#uEDIz=5G5Ejnt&h+7ueM}>vB zDO9Va64W3PIvBvR_9%Na;L@!-;k!*=)74g8Q^N!3$&8|R+5wrg!n#u1u^Q+BWjppl zz28I^Ay#LbcEpO>^ic1oEa*P1EVOlIm3CjbyFdk`Ho=p|aYe|pqQUQ--E?eu)KGPx ze)Q~L8Se8F(sD%MuI&&!DJ@6gB$=qq`)&a=0 z#W0_5(AV#T(8sXIp6Pdm2GWi%qG&D`uN(Id3dHTbpxS`S*?zTOCg$p`{^j`Ic_45< zQ4Z=Yy?S(l1~)tY7Pd3pE3CnXpv+x-8uAYZo)+<`8PmsSiJf(kh?@d!gaD$SUG4qP z+m@G=S6rH)ulJ>t;Eirs6Saq*$B1)J8s<8VQUBmXK>+rc5bYWOpPr`k#R`7G;czz2 z&d$Ezhish9&f3;`4|HDd_dLn`am%}Rl7PUxJGG^ynsTpZ0u8E%u4*wtg-2jK_LXWm zr(mY<<#YZ;uM}<_ry2y+UN&UQvQ1jhO7Z6xjz0cK7xPQ zb1d3o{Hs5HoX3!|9~`a^gUJ$8-b!m*TR1OHrAJ2%u`WK7-!&r~rtAGH6NYP4>CLa< zuK@>i-hKFZRb7m))goJ_e6hQ2+>b||C=$C6{DVTYEvPb}(7b|*kEJB1RTsX!PC}S8 z`*C&Ds&1MU)k=Y|kh-hDOJdz&B~MdWAa;^^t5;%T#jN=A!H1g-J>5FD-}Mu)u|JG= z#8!}T-@}vFpb^M4yX-R3P_la~5?{57D&Vtkwura($Dz+N9o~=rtF=gMCdQ}Ry`9Kx z40S}Ur7Y5hlo{LJ*L7_7$Zh%N@>;V8s@s>9>%{2d#F-!e2z!i?Fk@O@UEMuAK7N$p zpqpC8PdGF*q?4$^31t!wy3i+>dLqD;UCzIaxrX~Tw-?x!tE4wI6lyFn>3+STu?j8c zw$UD+Jmt6lM>QW$zO;7l_aQSgGm?UhS>|k{P41|2*c6%RJY9dmXjxLu@dSK+QWSo) zIj-C3S1)(FIa4LnUxy5c`cpHal^s7YZz5PoI|ueV7$q?}UzG`>(11Z0VRhR4!;- zE>4Qtz=Xe|0(K?_)_Z?jto`|hs?71I0koZ+7oG|cU|yCoXXZxC!v`Va#_C>{%i72} zA%{yJ*V%%_Q35UVE`$(mx!%o$eSz6E#8lpUYJ72@W;r|Z0Y?Su2Kx>Xl?>3zz+f>W zliDIoq!>&+a{d|%ZF%mo(kFbxU)2czD{0AP_LyU;2aG-Rl&rn3|fhc5obiK>@Dhu=T$2vjTDH z1YhYJOu`eeyt?=!oxvlW2|+pB3_Hz8JPN&b+3Cult^47r_a8@K=~$f4W&zdE z7!2HQ3VBu&dql==w7)trAi`!_&i^{oj*NY=b#vbI=+1qCe?%n>%KIvxX~%if-LuzS z=SyE{^sA;vYmP(fOwaym-bhc&(xF{+19H}-gG-c#JysM0-JC`_RUbQNxV=*S1;_Qn zX9sZs;R9CDo!}OIec8Gg$C+E%u8-!CyIZD8iE_=AqtichkCfs| zu(G8PuzI&*;|mUW1NMrugq1F3eJ6s<-3*-FIja@fXJ$>@Y&wqaUlF$(sULXAjvRQO zJyq<#cl)jy>hHGc!7;|~Ji8Scus8vR0WXYIvBN zRq~a*2U>m6Z2RKaba~gio;!FX-}XkZ_&H0lQ!(&-x;IcBL5D6b?i(2(xT`vYB9+JM zXoxFW_ugJm<+pciIqU8|5N0Q+-#P7hD;(P7TpM4j$R0Sb$fa7HYdczgvwr6sgIwsY z**dF0o;Ff>ySY^?*8lK7KLQUIlTDS;G;#9fbFn`66y>!EKgm;VOoPJ2yTO1sd(WOp z^q)V(+K5~Y$+$gS8~+3f7M z)QTC}NB@9s!EvKXr4^=oxGHCz%=gRSTL^9h#z<-0rt4^u67@f#00L$?MSna2@Thae zA8`XDJl0TR``Q!b&xiH@N2YIpAJmf;B@?nst^mzV@w&2=TPXlRpcS942Mj6*X=!P+ z04>0lPYhLoap|Egf}Q*_O{kd6xtyP1=Ie=GXW_O!UbF`AU*89EfL=P^nONKk<;vM} z-|u#5Q3}K_P&*Z0iipbjizHMN8YGD<_?h?mL@CnHbCXnZfj!%8Yjk{ZF@MN{rq45{ z6+V?+C8A^sEVS)trnI0|x$VWNKh^uwb5nD>dO2$vJIsoe7nP9M7MHMxf*g4U)dc&x zx;i*4r$GD`U};1_7)ZL)zNjTV@MZaRNB?TQh%5$4uiUr&|iY81{`!WKhBiB)a=XM^E8f$eAFE<(_OLW#H}L z-e||mtsI-426;G>L6IcjUJ~pUVfzpm`oVrE=Xfc-Z23n3nW5K4!`{&mA1OG(6Y&P2 zYaH_BzURzQPr&ubVbkp5gx;W1nUk4q!4qW?cFU{(n0x!1C#{xIq1M^2+-~PSCRwU_ z@M2?FSX8ysCQ-lK5igD^+x-*Q=)2IxB>#O^uHd+kTxd%c6C|U-$DVV|Bx+(5`$e0R z4fDGOctDgex>{W&{<0mpW=gvJ(o%2xudF(R-2o&up?6U1Ka(3aW!b=bvrP|;_v9Rn zSgAW*vJ@&pk>GuGNZ>3`l5ZU@=jT>}qn^gKeXqNidMzm-`o5MKpvGIiYt(SEz^U^^ z|Lx7Qv#%GSH+u&r$h#RNmuE7R67thR3k$)co$L$!i_`sOWQ_I)*7$O(&LofkVosyt z2@k*HBt9EeT#?uweGBc19`Et{-{|6!U(r7%-Z0nIF)FZK86fG-KH0-vO!N6bDv@Q- zO3NkrA(V0^TN*gM8R1%|;LNQ2@+ExG5yPxCDrqqjr9Xsw`B90Q!cpq3$6_rG?UN~J z0QHq>>fR8QQY8)IpRSRzxaG)8^nA-D=@}fuFb}_xrQf?qA&OJeVEdV`d{)PA+#mBw zb?j-x&GhYkxN4Hu7-dHe7b`JO(nDr&|KTNr_&c{-RdVOCG>J*nuIcAxq)`Gt4B|iX zupFO}AI_!%&)?&ttdjUW4-a$YXy2gGD$Vm|8A`UG}R?N`r#9Lw$W zDy2V=nL0k1kJXgytAD%)`uU!>5m+F}g9go3_*SDyn1CkR+s!|~nQ4=v#VMn}Gw}B_ z!b@d<%-j@L+&!%Ke*Mq~Z-&2)4v0qkSFLyTM5BrDo>ZX2d%*KvYOZ)j9JBbPyCYij6yxGVCP;>l*%_y&M zANnVaaattiTY9kdi@a#1d4b;+JKs*kIyU7g_^Da#OYcZC*)N zQz}6=_tS6dl)mdrwE~Kk=L9ncDVK_nb{PNpC1$#;X-d0>p8tpt%ez)2SEALZ2<#K; zokG!Ag1UuTC+U8Gx_Y$e@Xz45Q>cj?pW`P1z@>WCwti@k1aluh!FcvxR|8(XdKK4- zgjMCq5Smq<>e(CK^mYD8=y7Tgu7~_Fg3I#9oy#CwJu2nF)}gRGO8RW)M0cVy1GJo?aTY|HYV{+u5zb{yh&;DZKzWxG&U-z0XB9Ue~Y0ua`W;v zF&DcKn#7=QTao~kKYlzX{3-)AEzr49FZ)!_!tI`~Q|;A=1i#YJPdE#0K!i7ll>M(- z5MyKJfe&gC({-+#(C2Z)3P#~j8-5*GDKR=4 zMH`^&_&F(V;i(E(qiXDbVZ@$uAA{{xGIjf;Z`DbRv^2coR3_9a{y~Y@k|z%*7(j|jm;uEHq6lvY?Uggdsb0>PipS{!I-Zrvz z;=&~DD*||SICn^Lh;$Ogbz;DKETC}-q(e`dxw>kRg}f~0x7!`bfBUDy-p(#!N}D}j zrPidh_}YgkH#I^w1cC>Uhjc7fa5A)WLPUY#-Gi04$5Q{%iJi73i%JiVs@)_*pz8{f z?SXW&g-q^^^c0maB*be_I~x2qT2@x>%=O(VEGm3iieC|wYo<<78vsvBOP}30G_APT zn(&VKxpzC8mI7P$aAYPcC`pOiOJ-nYC9)u|F0t_St>&3Ij>Y>*fN*30bm1`qNq!ed zE{<8Dy8#DR^Jaw#Z&zSsh=&Fm=!tWDMnz8W_e~q+pV1ynxssXS76pY}PWLt>7|ze$ zQpue(e~gv$U3xsO`SK4PPS508L+H?7olt4l7fj3CO{@OTiSxIEkUkc9`4SpH*ChC7 zP|m^5{?4i+Mocs!vcK;Dr?rjr<$$t#Az~C?O01sRuGWLt*M9a`yOHmF_QOToPa>LR zH>Ze&5Z$AuZIt2{!C(VZ;s8xLyV?rP4dte-a{|C6#vf|uHN|*=5TKS<3#8VPIpPYO z5XU`ia$T3BfKt2F1lI2Ok3QL(nKg)%?Olp|L8g%9d6r@THlT{jRu>keO<3jU%=*!UOBpO^ej@c=m5f|W=lnba>&>Q<5j|fJ`j+G_?%eyZ zg?@Kwz0~5R9qGg;8q1P13o=;2u~eAuvz@XphPmD{fW_*ozJ&$LdkJcReTkq9=_;tG zuKr}^6%tNazk?UUEE`c#q*-)6S)VEEf1@pirKOSHq+u2p@I<`}DQEhO)_r>f7TcD# zJ17aB(Om$|zdClP00)~dZF@KDB|kIqHuBT``~_c6R|D5gr;Q?)?AHC3wYHF?05r+^ zX?_I6l@Tyl)6jO1Wp9LO9({aFl4pSG_<1Ue*y#wklQ8U>X)=2DjvNA|3>()1$!5v4 z7a=j&lAWNANJXWOzmilweF?+t#bC0Y4-Z!k=GUwAxu^29ROv)m+^r`HYQC#9G( z-k7>$6KTu$o6;gBvBCp`!xkQoh!_Cl;oNoUm%nD8a>NV0nLfDEz_ip4p85$11rAfP zG@p!&)C%606A!)of(Rdfzuv*vUsig!^atxy`q^kZovSp~B8NKeUIrz|@SBI=fgm&p z3N|W3jcgDZ;AOE{nqWzXkAU74as-S+s@dopd5R+m+m~=PXuCv|0v+7jbCWD-28Z?z zv|+(Hd9s)U z#OdBux5~PaeW*HR8HHX+&=>h3_u+-bT~a{woBlDg9TEE???+O-30W9Gpmf>;?VYd$ zBqW>&$|4XJOa8|FOJLt5&1}NA#@f<5q;=cMDpyfxI}{#AaEd!xz;og{G`XTpPG<$V z^rvj^KX5kb4uU1cHKWDsU9+7H($wadj1q))h741x{204x{f6<-!LhN?vztv}WOCD0 zUzQ+#r4~rSE_97jFhJ|YyHsb;djDv)Nmu*O`tJTFQprC3(BJgDN11f~`%Y|-qI_hN z<1DL^RB+%*G%-|zbQiQn4Bizz=25RS9R2QaWRt>snFx@O``?H5gkO5Bf$lbixhS3s zk0sQQootj_#(lRd$!%@RpRsNQ3OT!F!WmK?b|%UCLt}O*fL4tY?^F;mt99WFvB0e1 zmYxi0#K2DM?Bg?}&+8g1(-Ay!PWX>dBsnb}ufXM_nk>PCf8<)Xxt><{0}X%2=E&QJ z$u=ZH|KCE0^&h9mZuE~#IH2+p1&Q6a4pyUPVqLlwGc&CL&Vdmd5?~c=XL9B^OMwQ| zJCpvbV^5Es@sy5Fd0rWytC0O5|2Lm|;s#E*iw-YAbd|)~KwGZ-5M%fY9{N*JUM&|y z(Xz7#^9~WV|IZ5$$4Arunenfd0PG52(h-(&oe*dii%I!C`{6KQlI8#H&?T+NGeiBM z*}Lkyc46Gg7W`FvzsyLok~LB}lIE!6_Knon`Ytb~f&&5Ixmm}+(Ls;xS=ul8hY7{8 z6MmDHce~0R(#C(muY6R8`bXi%s3bo_q4n)v=$PL26-M?y>wk8948FmaH_`u%)GFyz zBjZz~?dN@sSM?W(E4Vv-F}-=AHb1Se0b-ZAzXWCfx8BigN&wce*fwUDCv|r=Kon<- z6%6i&!w)eP8Mspvn7Me+qj|B-UxWeYbm9T~dT`CIejb@a0=|QUxuEc^VX(;M>!bxqW2e=`kzDB0av&I9yG>jr+bI0pkg;cxep=(ErE6iUS-0K ze?i9^UlncFBw10jt zhORSXIMYt>Nf4_=zdLiaO1+$FNUG$^Ciqe*istE6$-f|^NfPvt^Fl|(CvrpQujx3x zbc-^KP0OxtC#qjvZ!f{wllW70%tBZmfwt^9QThp!vyV!K!V(jWMVzGC_O)X^We~q& z@Zo#y4{;$nH}#24b9k4JSGQaFAvLFSWliJ*x1O#T5BBT_FZQcz=wT=XK`8&r`n&bz-?vJ~gG-+8=16>leWJ!*-rX-I0 zTX{xQ?3{wAqM}Fd+U6tj?j)3~vpjtESCCvx{cYZzpLerA@OSo#Qk3)Gq9x7!@q-@7 zLECi^6GcTuHD{8CPy<|R;DA*fKusC~0FZ9=6d`tnvq@n9ERly~qq6R9je@$m$&a>a ztly;ye2y@>{Rus%P-DUil0Unt4ASTASO1}+_Y-l6kj37D#YH`q#%mZ{A9|stOW$o& z71-CA%ns|Ij-y_sg67Zs3OSH~GlQLB(?k_Vw_YOO{RWn+~ca&E? zpq=*%dG1(tP4P*}antOpU#Rc23ckM}Th1Moy0AN)k^2TulB`OvQVP9+q0y~(sLO4b zwvlX%l%yewRkNWt^B~DbRNZa!1P<5Y-Q;SPaYw!x+>R(g=PY~^)*sCr0_YM^%D9`M7?}U!XDgZIH3bm8TJUi*1yvU z6VjP@SCw+(p;4qk48$-QL~iH3-68?Lma(tnXbjix=W-<*yhEk&O~(t}{&rv<<jW_XUB+#$dAduSvgW|K{Vw%Pw{}hiaZgLmkYO? z2<)wO->d0@stACla3;3bg8&;~G}#9;?iZO#9`G>UnE1I*20tI|IneZ9drtI%0$}V6 zWUr*s_9j+AAiBD`a?rfTG#M`owm`)v>KfPUNUyR7(A$+4`Hi*}j>wLIg17q(O-Yu09XH6t|{E{+9nTq%+F( zuHysbq50L48}qJSKKvB9VdU^~ZK7ay)~ytK@aQd}kv1g(o=BiPG~mwURDBNQK>~ix zXo}CPYEVpFwg}RFK0;n|l=&a9ELq0!YJjUH3}TYOvD)|L~Jjr!AH zQT4m-jDjDxVQdU`6C^;whHWyZlrvk;iW@+zsma_oSEdTI4<6h9I2dr4^61Z6ORKJd zpsN1UTg=~STahHGeBcNl&{3>Y(yT5ql~QttD_CCiM#~e?2-K>riq;F(HR7S6JV?}b zaq(tgWs;4s;Y=W>w6cGiv^+0|VTB50Bky>*X3~r%8ZWMJef6B0J_v!*7!47g!@UGkmo9mpPXr@Q_r3C(;BjC{veU-GwKN^Y!3?Cv|PHO>7s@b5>)OKt7pt>73H^D9>Y7S*6G*?m%c z+vbIJ7y5I+YeH(-_sDV=;WD1}g@W{Cl&X#NFPF-h$5eUMa#BA{ncqx} zJ^QAr=NPm8f?k8O3D$2hL$9$!LHK}%m*d@nh(biy><6y2z(0)w7lH=MC(8VI;^G9* zcqm^YyXWNl)L)om=T_dgT)h#S7mZvJuhcHfva+IDXuw7+>L*l`slPCjZGi@;*Q0n3DV}+8c@rB zEh^%^9^3Zu($hmAS|-j7;X}^Oz~SUABv1v~PX|+*D-M4P^5*{w_Do}YrpryYV$NAM zc6A9^?<(Jn;EE5Yqcw8H|8a1cBkrD_zJ>-6<`Xu>RV2bPqQ_tR;te)Zm>>ry$xyXc z2U2ls$Fv`}lX;C-5;cA_axs((f?W7)F@^?(=wTx+OtS zlmv0eCK!>A=7oZ)Z(u@ZyHotfx165^g!ExyE&;Eop+DW9I2vZ*e@FW%xa_t%*W%D9 zC_;5P8?lOTZCLf>r-jsf=*x9CH{#~#PayrH7NS6NpI;*;KWjVNlh1pWJBUiA{XJ)1&r(IN{Gio^BGV$yz!>zB5CIhZFq0YiNP>UoB8YMyY{Y}j{Fr;^5d{( zlOOc>~=`rghC}qHh8 zyu5UYARtwLEt&+0M0mt*JoCJJq@|X?zkSfzm!ldEmE&`3d4xh&(i8Art6lVY!-eVjQq$6+2ZM!}QGz)C%h#mr?)HHEu*Z+d zZRkl5<&NIk+6v_FY*a+cPF{Mm(jX7T?ipUqq~z3uaCwB-fG!KSG4}ltskC3?)E+Yoh;~1LKYKblCa& z&3+GBSO2ATx|A=(v^%F?x6s8ow`m|;>0g79c?Gn^u(p-Ww>2^}4XzK{D-sK}220PR3vhsuq(BH$DV@B8}@f7@)P(SN31|J>@L)M!rDYb(iDU?5hsvq724as@9Q0 zbJODmrrA=h7g3IHI+fU*lrAvdymFUjVoTiI81}Y^dv0GRqn7)T9bpK+M0v^vo%{qX zkP^eSr}5@yBCf>fB^SdR7IGNm+*3j;w(lyrg~A9vBNSw4-Zt}jDSD!gG2>&2(U4ek zc6;7jZ|y>J9{GZUgl^Uw=Og657`mWkSS${hco8}n_bkF@3QABYRpF#4AP}7vSIi59 z6cxp!91{@{UDK#+DXFQc5ua|x2t$O(N=I^;kG6E1rDeUQNPHmtF#SiJw5-o*$Io9t zMBXbmL|jKl$7)beP()^&@!G}q_ajTlixz;H7F&cR`9h~?nxgm?o_)HPy+Jt?a^y|B z&C)vZA-V07{I1@H5w3#wP2Cw45!=P&^o8;HG8{Z5Vze;XC!+4okc-Y$OP)FOh4vnT zcLZ^t3ABM*!HFj2o$g%|Y|vPoADTh^q~>7e5K)weWm9Dq>ncUJ#j9}sUClJbT!_c8 z!YQ+S{ZD_X3BEWV`cnF%veHp_EO)(nq}FF&7IQXO`YqkL{wFJh_jhZ`1j%$i1}^diVOrjJQ`3 zgs=XLFE>+cAjlpZa_Dk(wCTW_)zx|z(y+rrP9DqoNXpeUp%e;yl{PACSzRb$rP*AV z<)n}v<*vD8K`ChVk~OJhUxSDXQ{KLvt`DXoR&?^ee}cByWnCL^J$JEp*a_+**K7Xj zGS1R#7#wA?fatf_J z!wcZ#ImY+LP3{Y~cuOB^$4@RrQsg@ex2C;C#(zT28>QU1KT+c5U0Sn6GmXZC}=9Acdx3`D)2PKwoB5#0%JfA@4y5mUWFU8XJ4|20Z z7^Qu%i2eHhc?@L6gC;~;v=1+>V1hc*nW;F44b(o?ZCM~K9#YYa0tCmZ-K)aVZme_9%M2wBN{l^s=>*m{PpGcoT95=NyJ3u6DFQzO2n(o%f*>l#1p7`6K4?>e>C_b^vw=$NltaF?s0 z{g-XE0I*O_D(^QU4ZBn0O+x+5n96bAX=VMp)Z}|YwJ?}dEj@OGUBy{0xso@$kgTg2 zp%SGK?=z}H@DG=WK|v!0=~+9%hJ_+aVsPsqB$VjjTiWA zC;f8o0MyFA6Jd258unMC@p>;WJ51MZFBMpOPI~ITUiL_5)qxzm8BU#wj4uMuF-L!# z+aSMnmiO`>XRBh;Ukv+)(2bH$XoDd-1xSf_51Cfhj1qB+1EA9`Lf|x` zCuyhe&<&uuDdFU|H|aG^Cm05jTsGmPq{pG_f;r$QR9f6g_pVC z1Py?fz@B5n`R1vGMK{ireBQz$B_l;8wA0~stK+s9v5T*ZLFK`Fx09xsA?om(Pr>_d zFXiN6hSZ~(KV%9|l&zk$CK$d}r!~=UtNe3s#U^|KL!+qD@>SF3-P3evu-mK*4R#YE zlRyzZL}jcV=P|c+9j?U(R$4lK#eed920}rUom$lv0omaHp()x#%07^)afxKngT1d4I{)&le3HEsM z)rI;=AW2wL$!Ajov>mI{>FXSC|6`+?FUwg*2!*H!HmfSpIQJ$Bi2XkD%HoUdiQ@tQ5$<0Qv8pLrTA>5fe)&f9IupXxiC0NwRK0w|tK> zn7UVtLidYa5byJo)usyTt1&GN9?Xgf0Q;UU_=3Doh2RznEr^ME@YS~IN_#@^$F`Uk zCvy)~5`t4vDEAK>Fo^nq*8)l99VV)FJG`cR9yvQYPLgvb<0W!-5MvqAPrY<_5P_7y z%0189t!;hvc8FG0G0%-`sCi8KQTl9?dm84#_aQ|F4C@gFFy8>s}=R; zw0h=bU6yp?mfBl?t>@aq_){(Z!YO1oD|Ns)V{z2yFO#H@_!WUViYp;4_mO}YLnkA_ z%#*i;WG6BS#Yv8Q+M@9p2Y=|XpYn004jR!&W8w$bZp@`6J!Aj#`7eamFdr`Yg_2-1 zIy!Qs{C8t(=w7xq-akR^0gYWN4QesJxVUrgm&JcV!A}~5I{66YPhPy)s`dwF?rFpw)#F-Z!&<&uOA_xH~e&Gh`=WxRXPC4xgB zq6Pk{SJcqA_sE1b%qoS|XR2^|3U@a$C@CUbd>qIj&z_mS$^Bw<#O(g^ zGiLHUX@+kE3Q=otl@R2CHbcA77cOHul?2FRQJk1F7+p+HEw|Y3^>xX`w2lPfQAo zE|4M}Cd=@xsc^lhLb{eA=KDayAUicT6e8oGlef7%G3r%M?QnRa#c5{(rN-G#>7%6C zikotI)Nyak(T6Q5{8@;_aiko!>MvcTMUkQobC;^&Vtg!;Fo6p%%!rDjP^lA8o@J z{n{-hgCY8_BE&wWWx2KH&0YFIt&WkYk8PyqP60URO=5(NlEe?@lQq7 z=iLMjpRYnq3{!rNF*-arIGNwAqG_*aP3{8)F@F8a^u><1S6`{2r8Rv~#n7L4Vcc)> zfyW%`mrSuVPiR4(~_z6(~eUdweS?m_% z25aX}hS{~$-i#{Arxg~I!mmdbVA>epQUVzk8+%qj$D+TOdecttQ)w(dpxAG6)*=|- zLfRp0OC_&B%+6r31U!A{d(ii&$L};Zj54rHZhmB^m)dT9oxRgdQ+ND)dil6%U7$N7 z_$RoTo8_R5Xz3lT7<#M7~ZnQoT$@Hu*F2j zPA-=<@N7D!70$y`a4<+bk804Z@1=@EpM0CA48L;BpIA)|;q<+`7!10)4N@T7RzEfd z><5V6FdkS$syIP6`(hzgH?f$57?7eSZV!@Y>m462t`;Egg-pTtJGN;{kFt*4`M%6W z_J?Y){NRVRN(p)by)-7$+&ct&f3T5Qmg$ij{tAo;J~8w+_L69YAK8&SIp7=v0?4})YJ zIb}gfBJ5=6WH*Xe5sk*t=cAbmH0GiEcfl_wSVW4W5DOw^QDvo(3tDDC0wSL^V|#9aEiN zrb}(BVeAc4*93DB>Clc8581&+RaQz0o%!ma4#G*fL!^s$72dnf-pA)K3Gc;I^-sMg zUOz&h+l^_Fd_W7wjKvUS6cMp~;-E#Ra8NnU#_YrBa6+Ibvmb(yA_q9}jZO65G>_&T zen~@bJ+oO+x+52!)V-hu|3XIA-okND3bTEvE3k6bNmBC)&tdGW)++b-s&V+ip4@5D zu}Juu@5&cuT5Nj=6h%P}3hBXxf-Ch2y$1(L_C7z{Z~m?VpC?YO`j39BD#VMUHlI7) zM)qjIngtSDn}2^IcAYl$o8RjENDtyBhtJPr!D{$;I@yv?U|IfiOUPzq__=;_eLWGP zom_4O$wteilYgIAKo?6ijg|H<68Hse{Cf8>ziiQGYkcsFzMNA%Bob8IzV#Vub^QYa z`6J24X?zD2|5L~EXWAxgu!&mjN9S8>Yg*S`O;@3tYT}}z-UtN3Rbbotl|GnmT0-2K z(ki7J&DFqQaaI98?I^}ncx`Lal^%=FH^1vlc3EnoDyzN)p1)RR;AV-vbt4**$1Dq2 z)s>=qh$_W@D)QqCxo)MF4qXsRj0@<@iI?O;G# zbu9HyDiyq|N*3mKem_=bZ!S;FoP^Kg#Ns?MHu>PpZM51Vj0;c{`CxItE|_ZlBme3(!JOZ36{rNl^eSNn!_k314nEuoN4z{_72oCpqE!Qo=~Y&I z6@pmbLhuE;u4}Ml%K{yddB34_Lzp#qy{q}!Cmor%{RxSvuh3=6!GYlrn!!Ve;qZ;) zAaCen-C7{w+N4w3jLzT#jE8Bo)Zle32FQjh&Tm-1UpS5JYCe>hKBJ-!>z1>pa!G~w zD&Y)8h@uc4%%oI;C9>rkM+ja%q_gtSoy7e~2`c@c7XX^L*rv4_8XCg7n9qPf!|e-m zUAOVyvi0(Z$qW{iWDZ2BMc(}8j39J>BFK_3{7pfUdxDjI(w}R%v_keCUiiNfww7kN zU1*g>`e;6zcKn}?>&Lox>L&&$$Ai&YZX=oy|9w0;4J>TEW;^w>`BQmw%jE@F^!6^w zj*qc1xv8}7XeMTAstCFV(Jd(ssoxA1K1ysHh`vX}uz2)IA`X5i2C&gBrEb>@LgU6= z3>qzoJmPO{YyI5F&aPo9gT$?;P+aT`fE=R(qY~fxKfEiS;N<0J;GEm7d-@)KX)&nv zt}$MqPe|bP$g+*(KIO!Ij_c>u`05s#= zxkgugJj<};6k|!__oGfOXTFZudn96023?$mkwzrp>@%o0k9e~e>+k-#<857a<+-p_ zoj~b3#dvq4NzrJr+^_xW?sZjPsuSz&nwYGmn^=ISme44a(F6`@l0gDBjdwEuxElfX zBo|V!y0m30c=4OC$pIomU$O;rPZDxt5jTIAj5TR-69`@9agZ~UyLOQ@E_C~1*vSpS z;MxJ%+#?>C*8HIX{<;Ts*!Xpy2M4C;_V#EP*3jh@RBXIO4h{~=?c>lM!&@$pMXtH& zYUdt&*Evvh623NYeD#9QPkm#mOs0vwai*3_%ldKqW1HENR zdc0P-^^>?#rm_V%cVL{wvJN%7*SyZr=%cEfF??YX0=&;fMMXK>R!i>!lBnqtPjH2?z6(0|$>jkdI#p3@dhHs6}G(DnN8SLWZF=kC+ny)y3PM8I50S|!mRZZr?v$+IIM^WV%< zF*&h>Gw@~aG&lCM*WNcubiraRUFGHvyn#;pypf76j>%HD@EV^}K>*uzwX;5q7Z6a* ztGs4l&;5kaFD0&zb)?5~cf#muEznG%`aXT66-N#5vS)#-us=?>`<5gB6W znz--s`@jEskHuQ7#lXzH_ltAR-uvuNCk=GYsBm)+I$MsIwcBeym5pG|%G&3=AENLy zq_m|7Vd6+|Kk29WZ&y;?D^vR37OY06aHjpQqicGEG>#?6=wGQcxS7QsTvqI_f_4&c z@3yYt%VzsdIL~#f^nCkHiJ~Y99(JI?)k2T~Hj1PTuJ0~1R*-*lh3q;5IFu$7yRE;< z=;nHP*IAeyzZKM2_P^nEv1%j(W!Ckw_EngtCRhm>ZjcD)S~~}8o>!Y4Mmwo|%^}Q6 za1P#{o^k1s)?G76%*6R}A4eE#{ViUd@4iL&1`jV1{k*DTOb&;l6wms3y`eR5c%CAG zw9loaQvW3I_^Y_|`+d07XMi*8&zt5P*IV2%e?a++YJcI7Db_i_C46P5@@8e;uo>I z(N3Q@#sJq`us!(Nz9Go^fi8Ex@bvUs0iuG7{~FmeOhKigq{{HEp|(GLMr)wx5)&b< z@O1wC$}g{L8U)EeoSP5YbnhO~_64_nsE2J-WUS;Jj3ImBczp7>xJ1BqRk5+)q4jb&w#EF}-+^G^ zKrf~LxeA8rAi`LsrJ)`2rH(+IvF0P#>nt(e1Kxq$Kqmc*Og z25(}9lm9m%zIK%I8?Z0s2V)g=zD&O3BY1C#uS2IQ4sr4F>inA%v@%iEw%?kEzXqIn z1A!-1WAF%lP&!_(z<}@YikmTcz2|A)`1o|prjV&}#^x6t_$?F-5hlXp>y?|706RBgH*l zXAV((_wU(eR|;p{u8<=&j$7utfo~QU7dwglQ?<3vTi+j!@kis4e>#{^8;U|2_|`Q$ z$g7u)!02$diK{siA8^KD7N*vmQ~y9$AA(t|fz|z8-j}Bg^7AN5Y22fN_K31(EO${< z<~L$nK{#Ll~?c{n0-us*HZNbj3t|Y*)Rg|m^Nqvc;qs=m$+b__2O!gV zW=7~hfG@4bZm>}sb#OBMW;^ll`&Jjw5f!`CdmY&;TAMl*!Lj2KS`mHpwrxpzUH@+{ zb4ACYtP=JZWI=I9eXEz*TYtkYuYu93<%Z%R613La_9uyYXPNg{fFc91)LA;o&bv$n zFXU?B+Oor=Kqdcwl>$5$gj%PG;+q>F`&3C)-orc42#sd!PKAOuAj& z+*;4T9pWmEk~M-T68J|94fbAa@|?AvUB(J;VV-{TPYOd#6vdCX54>`wW!`#3`W?13Gbm2rh^_OCo8;oiHGe7dhvKbIF17W6(0?%)$@ zAj&Vp>XUG%6oN(WGef=JKd%NwD(_X0b-r*P5!6i?CW;)@zY@Ro&Tzx#h_go6iZ+wm z=a#K-`;*ik&s?6ko}P{uiSeEg-H!IYSH8CR%zv2H{rlQ@`I3F|cHdj-xilM2OM zs26n6`w?=z2@iQrMu4Y%J&HK-A;@9_`! zd=tctI+6;D=w{l$F6HIDAvoBt_!3{4AxXkiC*4Yrb(vU@=~S_{VhtVLL6&xwsQ=>0 z+Prh#&l0_CuX_jxp0b)+&x~d&$4phn*+L#`CU*a6YWQi;*?xF0>KuBr*VL-YoFsv~ zH1e49B`H_Um7B*xIB`QTGbI0R1c@j&TjJW>z`OAPcI&s_UO}k0*4)@|2Xf3$NpxSt z)Y74%^sGO2ylMJ^m&UIyeAY)u1l^VYe8PWAk0ElHRU%~fjV3O$dUq9g56OkpEa1We z*XieCjUf@F6LWFnhzjZ|8zM-8X>9&b5|)S2`gM=26cMEO+Iz<*_APN_dx+8{$CQha z-(ApY<4OJW-cS%QTDpV+<|Ckeq8360!~B@1ox}aZyGLZGR1;%J!n5Z+7tkw1hLR`0 z;up>qZdzUNm$$T1O598Op7?J2sn6?;oOKot_pbH>BC$Fn1)L^r6B6p)Jc7Qjok-RG zY`%1}ORMGJs^XIuzD4(wYsZdKG!ysj%#xBjL!62CX1%^%V?$E+Byd!J!!2>i@5w`7 z+#y#P14zov@dqHUaY~8jhpSC%x3!85{p3#_p#*nvHKemE>>X|I>yr(^%LGP{m zh|&3OQlW=m!&|uqEh@W*pKehQf501my}#80J&^oIL=>Inn$P;}-1we`43Ue16jd%q zex5gw+us%Qo>y5Oa=R!dO<7p+?N(vQ4Bk?fWh{Vo~k4gN=gyvlamv%0yYRDVjI8>+2JNr_49Cq6$Te{ z>vEaTY%aDA!Xj=VN>s@3?h(W$zpCOt317M#^x#K8bm&|!z^}%!&%p< z9CNCX=WJt46+pwb4jkPK=hZuAyu0Z~3iyzU^B_MC4ZYr}yV=(((~;+t z+Vb|bgLmuK;y{{!Zg+3~H>V~*i{owzC1=pk9DDHIUZ(qE#^>La#RU6HEx*H9!yXkp zYis&B5`O9@4m-eR8Hn^3gKbVYX6;u{7GAhZu{Vk4drHerkTR#lb(vL zgkF560;P4(va?_dr^E8&YTX%8*3qrwVkzg*xk?T-b!;LEDC1ZKCL$|{tPp00Ewr+! zif40hEZBuBw%@XqOBF1Lw;Zv*B=0k86NIhtf*yfk{Bo*PA5QuWIR592>3zVdmD>LN z-*>y0h1=AskUEUCQ{XK>F(|Q|jI_pGvCHE3LR==m>P@`_D<$A^%x>Y&Si2WVzt14w zxFg}xI%iyzjDbbqjyD7|f`b2*I)?-|z8h=)iR0%XV;|L}F`TuwO=)SGnwStl4WZ{M z=I8F87d@t{3)7hoIBsd$Y24YTQ`-LLVincAK4;#ugMNKk5U{Vv9P_@$K2?o8Lq$Mv6?fK5HH*a*9vy3oU)1y2g&qxX23^TB7n;1IUYgF@P30J)O0Az@mM}XDV0Gz_eOLZZnyH zfl$0&=PPb7)oq=#k@jL<8%$MkYf^cxLhp@5|K1?!3wey6={vu>s&vW;Y`CX$s$A{| zb%p&~2}6aaQg<7|VA^-Ni|Jh`019i8f9KHStT6hu`m`fPfx%im#fw3m99I*KHmn`* zCaJ)n1}P>$7GGOkeGgd;K2);C5PdCv*P^C&G1OD0V+sgi@ojCJ5RReR)+2?8uW66I zHr>Xn98ZM`?BP#R4bDrnvGsnn_h7UE`J^_p8rd_G#9$JAmdNz*47w%Jt_Ki z?$VQ0&Hq&kT0QSmxmS{vzWaLP6wFqcBqHhLuJ@ar15v+C$a9Y1wWvS)*v*RqzpKq0-j&whV6%>Zpf)>Z)@FU*D&1Gy>onj zu%Ile5^_?mAMR$3*Gah+B+HH?{d_cb&_;H!cdcUXQIU;LC`-cQ;z1^P7)Eb@rIO#C zlgWS_E66w_#XUJDUvd>iF2_=*ZJ&%1Hm+=T$y_SMEm?GAhay6IV z+B1LSN_)Z#aC{TNll@HRRgUpcS1`g#y~#;@$$HCL0gGSc*@h3ri-U9Ffo+wTD^T?p*6?UEPj=-nB?v=u zgAG$|M8Bz~(p+GCb?MAoxH5I9Gp$z|bjKsH-|ln+SV(%XTc5Mpg*<rsfe`Yx)4Z}O!f6(s!ski7?^st8%k;BiXEIi|E?oTo^wZ1| zC)L0J9}jd<^Ob(BxiG;D2T!5+?^RirXD@)+_v-TRcp*XJTi8?uBXTSS-@7?^CEE(3 zA~zO_r+Y882qPW4=vrb4b=%R=<0cG)vQT0e-n2H-xqdw_8~E83;2qWp^0J0?!e#-5 z$V_T{=!?I%v>*>aI;R>|q-jf;n_{yJ`61a>aRRsmd7Zl286PHztTGJrC#4)O;Y6n_HycFh>vDtv=g zqzka(M4Jzx`kF!%NLj()T3BU%V50uWo11!lb2&aJQ3Cnuun4W^Jy7cg{MEskc8a0= z_M-hBeNjA5`E%vn8SNh;|99cBW^?Uy&Q`5ieQm)0JUr&Tc#kc1E8W>k+n7QRF%m;?5)DEjX(FO6ohVOD^I#!}C;x6n%Ig+{ zbx5>7_KUf1JY3Zb>wHKy-9lcq7*}Xz_bV;osxQ)Z;?a)4Un@I2U3K>q_6HgMpBm32 z9V&3VY+Fk~omZFTSBqe)SVpuP6-_MhDqyJC3GiCx6$+#o{ZhT3R0u&>R+!X$9OI=+ zv>(%xtt9jkJhvIx;ucJgq960M%i$>o;gN4i)YKU;+oUfn+O+r&di#79E1L_iI83#- z%MgN0jEtfyL95|n1riwE??|XfEFZ==UF&ulv85?KxKFX#mONIssr?W{%tWgsjQ6)s z$>n&`aFL;NAk+8xkA)@??S2aj^MIiM&$zUkreD4YVT{9bL&H>C>3_BJ7lF%gzdiLd z<#UAT37DyZr3v!n_<#0|2O)z|;Kotb#Xv?lOA$JU0RCiTb{ci%jBOnY=>Ma>9`S5s z4|E0z1rtvgO#P{Z79?x4_tmM({nrK0>Kveu{BHmfdddK&J(QESsg4Ebl-3>EucsMS z)-#dx8nsec!?D^IeJW2k^RB3=Lt;cQ#y_={)u-Lf@e&g5i@M8jxD|%JSVW)hM>9mW zI_tM4$o`FYTa-U0dieW++oBN}y>^Ab0wJ>{y`e~}g9ew?dwY2&&quYPDK$QyYv#t| zY6ch^#uD#(bDO?p?SDoJI1)!-Oacqi@9|`(S+=P%u z6}mpToBh+}KBdV^IRpAvlvJRd3H@-TO>nD4qZ<_RyOud-Z4iE~FDup7iTP@YNMkWoO_|wOW5;vU?vL<0Q8={xG;0js5>2e`Ur_&X7oJ z#PiNZ{EBUl>fojTdDn(zCZpsYZZZHet}p}V`8bG#UdPA9jjQKDKp6azSLI$&ma6Fa z=9TANN187O77k8o$-_QuS$@7aERuL5a@fBB8 zp&*6i8cdkZn4P{+4%rrifGVF_7y9jIv_{$_wSjN`cK_x}f^m@v zWoF_Kb#-><`TZn;kH1$7O1ar;-Rw2rdVjmW_p4UH$gquZUyzhMxx)LYLdaBWD$V5l zq$b;tMC}LoV!+}u-TVluj2vT)tBByV@GEcX_`0x)$8}wa*{t_xy+FmKCiA@&=|U|s zBs<|DFQ=-q&HpDdT1nf?em<4`VO*~7b&~JZ0lYI3&5OVhS0SOGd{sDJ<@(0;k_xB0 zp+?$eGx@27kdzx%B*IHyqYmG^SvZe*&-|#kroGPem7%IBBi^Et*+nVsQMoC8(!fj)f-%(n!eW^{GU=O5wO4^i4jwNwc?u&bFnl{J zjt|=lTYnX27>G%-*B<5wG|1taw?=b>f-jG>D#_B)ZaR4nuVqX;$S=oXLR#uDj7PpVFA*o|O;z7yE-#Dq_9t?zU+ z*Fa@TS#SrUi^ZldLED5f2wUIx$s z5c>(^J;8OgMj`0ggph}(@^pA)=0l3#XVip|zPHMaY^}b+z8?s?5E6_guDaUKa`Xt2)UH!uhx~KnFiT(6*cyUZgIX z{d2ciXE9=Qb}UED$>DoIHkd38i~s6|rY~~wC6y$CK39+cPof^E%^M5zZ#!F~o?+0D ztGt9V&V#z^oAV-yENctAEu!Gh70o18DKcR~%NUUnLMcnR*B5+LqKBID&10?d|6eVD z?(oWoC|4%y=F&nLrRU=9-u?AX8+j&B+q`Ic-(%BFTH<}OGQJVlTqM-cCc1T5C;2MY zBJynu{^)Gk>9AYkOzLy5g+{t?wSw}s`(yvvCe z3b$oPE8x)1)KwQ^^kk%;t6t#3sX9;-knE}aw4v~phzDTC_dSsf68YZOLTjlU5Dw;e;Qw6!#%Hss8|Mz9a*=m?~18_*N>lo13r z1xI+f`q1bkCnr4oJl7H?8;Dvahr!%u;DvEf1y=|9u@-_3jsY_axN>rc1ZE1a$#Y|2 zbLc}}cC_oq&fTd+fDV18GAr--SiK`vQ<8^gA)}4IuK(lxi2Ip=%eb>aVadzpTIUPX z+lybG_Msm+sg#}o)cohLLlIaP38JITLSTrjpPP@ zotkEV!9m)FV==V{faIrv_;pM@)#aQKk^n3rT2Re$IED(6JA_+wR|xv5PLovXliO!U?N0c84E`QIb8HPXK4dy2F#(P9@x8Oqw3^<7r)<5H&9TJ zqCiDs*nAzR)fah+ezcug_dS=6H?D6pq;)rz;d5A@oMgTD_6ENYDQ9XL@36S@x@Xlw(XhQ$AZ%;XjL;Ip)wuo!Ocq&@%ScRE8MJVYxcC6$vEK*G)a!-G2$ zedH!1)nN-ueO#g7z1Q-;pL}^`2mCa{WkWA#(N7Qm@IR;pY-yT6jR_Vwx5HF8V-~#m zNKWGOF7lwwc~9lqW2oz$98QBp>z_;N_5mj;HmNKRcLjugP^P$@=EXLz_71apPrsC# zsgEc7$b@?{GpJ&fW@qzLfArIL&v>e*eN{G*@2if}HKu;JDcRX(4AbGtF+&HbV^w1# z>)ov0{+lfbEc_tlL5=(Qew6}0jUoSk8P@Dqf)8*V=8*Ho8n-Wg`bdJIz#6xCYTCJX zw%>W<#eV*$ui>{3Cdcqb9IMA$aUk`n9TdpFao zERUM;Y1rVq@5KARpVjDJqkv*LLc~xIj3?a5qnsL5k~+Z4Hz zg|>@0IHBu{*yy>z4k3$n`-eI?hRUsg3f>u3XMOk?`#EQL`MWWdY_JTpc5vJb=I`y| z490L;4-E}n%wHb6!=jMgayh#5*6q*n)Ovb0x5~mEn_XzypzHsZL)4WlI(PchqiW}%ZNgor}W8vG{Yt1bCXEqj#5gk{^yF+uzmiZqr* z?PJ#mzPDVqhOk{(jycFaXpPK%MK!4yIK`f1{JMJKNQ%rZZJ{?O5y*@n+e>#|RKl6{ zeYKT8tgJ{Evd8hdrTbz#E zXv;i#HL&h;R_RE zIiewe<(nDDL*3M#y;n9Jk;-3g*-BAt-_8qsGZ0tLmIEMCb4Mhv0of zrcdFddUv|0*zeP`b8>Q)pIs)eqJM2(_y~VJDd&7Oo!`ztx(R zIFf76I9QN+T)O!2;VF&x-WA#(!a98Y=3> z4lbLWtGkn*;;Oj0qhJ*cO=CJ+%n&lI#)a(AZELHUToVlyli3%FxQZlvm^%ksK#ckT zO^wE-cVtkD!E8h@1|`4pNQsw)YUIeyXwVV$3=|pa+EsoRDz=tMzTEI0vsG9b{ZakC z&YUvT!=W(9CLoF%g))=(|Ca``Z5)lBi(0p7-<+Nq%HG2K*vPv$nK(?u!iN#mm89HG zezKDKZ15w$KH1J7`2(6n^)IRg_9aGlcYY+&o%N==?Snr@d#Iqh_t$i|oxVd1W=$#- z!?D%CZy`^mA0U*&b0)>nARBsMuK>y{r_0a-wJXBK_I_f1`Gh{wx^m{fG+gdet) zE|#CYAKTI?H$j-o<76pAJfl2(Ftgwx5pL!gjv!iiL*#D_c(d?JSkRi4e>v!bFDxS3 znyV)0&ZIC6kc(rc?ylfaCB;8~e#^~HaA_k_g3z-^@+r9N3XbZRQXN~3ow5tUNHtIoXqe8QTA|^xSTAr$5pE%UR!ogO3C#PZXdDqufvfcOZXXfBYY5YiCWm0>&*9Se^{> z_Kiw7FzeOG>Aki!U2bf36B7)ph?rj7jZs_$JoU<-DRxK)Z4PB`10Wyy;eh)<_TD{5 zMa)4@<6al=+fMO#016E4?FVvQoQ5)`_<6am@A2bs$?#L%3N)x>^;i`3x_7X7!`aOZ z0m(O*_Y$I>-apI>%|2-d;QQZdOVWdzX!{TMtqkdBkL=RwtOLqgfe3loxt@sNA>#W@ z-f^w1sFBN*DrIf%tvw*~ymPS;YsIR71L0wjuCDn$;CK3pZDruv4P_9tkdK}0-NHV6 zQsR!TtRP)#mF?Qc)>qtT%$)rTdH7@x)_nK92ZhFL2le~VnC7cgwnbJ0osY)VE&P4a zB;PKoUa#pl4yu`)J9n?@uP7S~(1?3FFAvxU?Bj!_QkrvK6j((ONAQ?~)NVulScCQ7 za+a%qCq?in2v>l~11#11o|Ho^=c}$(1#@gLtZJmjQin-k)@ks2HRVgNmRs~qFMWJO z^b(xFHnrx%0ZPb{Y${!%nGB~dFV>%70|T5VL9 zd3DC*pTBqXh|KQ1EWI9heYRF~CzRtP(SAr+>E7|Xdi@5=>#O;YojnxfI|&DuSlq^! zj`sg1$^AoxhLRi{@t{NB<>lqf&C{+M-ySXp2Y8@wS2X(PK3(MZ7PbX^E7tT$RH2n$ z@l_OXRE)eVu@=I=x|xl%g9Q5cR}S<~TPk!?W|U}VV0e~ocNOw7uU^xuWupjsrNkoTG(Ok79}JhF`Du`5zJ=~e+>u)r)!+E zPDGGEZuJ4p0bQl}3Wu!8{|d-)U-*s6ALGBz6ljQbvHYoHVet~zExSHEqP(vp{haPQ z7=8pM`#>-!#{iCj#=bPWS z2-GJ0YCJ^6Ux7xp&wA=K)M}XjEpK$$nPJS(P+ic1d&lO5q~ek|9@`&u*NjJRc5ioqYiGd)~O z0X&e1sMgifv-o##(d@Z65fBb`f6vu_9NkWQ?Ai<*Ut-*v!3+(V0t|vY-0wJtAMHa) z_#I)G^Bt^RBM?4s5g9k>YF=VN{x2A)9+6K|R{4^Kq{p9a?qpaGcZ?f{J z{Tj4*K_+ySHeZUu~8S z=O3b)gVi+^jBYYAY0G$M9$c(C{jBB^NctUm%$BIG2E*%bQy4ut@xNQvM68*S*q<`yb!&jeHJ zxj5`pFSNW1fX!j@DaPb(a)H~Dg}9st1$BW}cG?!x0g6GOZT@P;IeFyuKyxTZ`1(#V zv$N}EX!Aw)0cU~{r}!F%_UfOR!LhIsH6uMFf`gEH5_=i7l!D|-bsobi8Iz!tFQ(Xd z?)<8X(NxiCr|Kit~3_%qK?k%vb3$n;eemRD z^-dhbzCQy(@luRIWZ@qik^sxNoC;I8P~q@AgPVxO^PxrNEUU<#DQgXEz)7N^0oLBR zJq-k}p0lA?LS#ba*rs%q^2Bb%)moB{p3rT9B*qY=4m@~DhmkC{D2V5)B~9UdnlGBK zz^rVU(;zIIFXls|&aZ*jFTuu*7mY@HchhDAc-}lGjFi@+fYfnYj5 zgkEo|Lzj7hYD?>`P3kSMy?5Xl?SNZjt2RklXLp*B1=*|n-U2ys9Eo4Ax{T>HzR!*3 zBrszG4n03?%dXaXeJC*(?rw?>X)D~h|3o70{R0u7iySSs2A!e*_aj1DcTT3>y)3e4l|hYayXSSuJnx$-@l!)YC=cbAdA;oRCp#k+}iZ zM;SvH$YzpQx%usJWviYG*(X>jJWguIL+uuz)XpUYY6Fv?e|<6|;klMYD3B%O`5LYV zOG{!2Uj-C!@w0#a6z$yju9g}eY-ix<+S{a4wb@nlK3wWiE|>)Vd?LZB{4>+*9slD` z=6E$%x##W9>W1&*>d$8q?I9Qa&bSj^we2^lF?SQ1Zl!qUSr4qpb$*wG)_5)|1R$qr z@hKWY`u@WT&xZ(J7=Uo1(3dZ4z<-d1jQr=Odf+pTa$4D&NEWnPz?+It1R>v*UM ziW?cR*VlJm9?XLW#z7u}Peua_1h-gN@F5>E(0h6hbY9L7!{3(Ezg1HMk0Sw3SlG0u z9%Ry2(VkQNiU17GfBg1grlaex{$hVG^H`C@WDh9tUzo)jxqmGA?(++%r%(QgPm0$_ zhnr}?wWeiUQGug1J;gR5yY(b2uAp2X;cS#?so9z1QBQBhY@lcGYR-Vde$LmMYVMyt zxy~>mJy)nadtWYdVdO4xquo>Q3?0~7i8p{w!HUj}6;>}5U5LFjJv6kTY;b7VV{?3d8 zFs%%_t|(Nl(*Mgtheg&8P+4ukj& zII@6VS$qw1dy$bAk&?2;`)KeFDX;Y`w!jehM9IEMY3J zz72pPdkv)iuhQPY7$gF1?F43`XPZNrXda04ni~VRr5=G9LRA58Eis-0ebCuKOa)~w z8Kj=krZN-#1Z|lp@(w7krsIE1PhFVAxpK&y6SMKx0y)*y!i$`xV#oc z^(-#C2V$GW^gZdXYK3(m0wx)uo<%@ ze_S1hE|XoaN<$a}xG}%cD%!**y!>^H$2H{@uAGX@$ze+cJ|`UNgD(5vBm61`LGdE(G&W%J=F?KKsz2x;z;x zGE!g_n7;yrcN1LjpZe7Mik-*v4_UxbWRWHf^*Xc9F+rN8vtDObr)s$T6rko{18au` zy-6O_c;JQQP-PDe8dXXXKoXXTx%qE`+|KSoOpR})=z&C#!v--Ih7O?Ifaj3e*Q(cT zMkHOrx;{?#3o8TPXMbUH%zE&cS)$okgn(6)vO)No^P%AT;dDwhPUQ=9-a^B`H?wqv zK!T<}bL)Z`c5DL^3&Ot>^OuhbX`H72g{YNq_4>`B;eT{(G+8YI{` z9Ax^BYc1&wRB%z>&}_TMy*qdIXh>Lh6C?(@u4$Xb;}6Im-h3A{t+Q1@7}g1wDK5P< z6j1bj=r~g>;z`G9$UQc2IMMeM>-1BZsjk>b5LB2iPEu3V9an??tm(F@tH5;b2vH~U zI`#c@KL9~;*2R=W7yT#&}%E;eohH(Hzni2$1kOhjxsLz{4!-YweE;vnLtbm2s2*|%pF*v{^w zvwJ(hNbrto*p}M;(+kt?IY5yUR2v<%1qg$h1QCY6wQi1Yq??*c-0r~HOEz*Li#dWG z?s?N3HpXvKJVglzAdh+;P73fhQhK^`zNd$5n-kp61d!w_WL!MY7$V#0JRMp?b1{ZF zw^KDE-}2he-_%`n4e>DE5`}{P=R4T$m}IXZ^Df~TUAgPmrH*BlQ9U`wi)1p zqRFUi4Q(o5VI&(rykR{ToU3#OI=>tk^WiAK>(!jl2hJ+ATTGt^NUS z|9A__6Ar>B5Uwh?A%-@!h9U>*eCgS#A$h-K1s*L#XW)i z9zm#@z-*ZsXM3-s`)bN^+c~(yD3oo#3IAAvTGe*^;Ff-?4?JtP&0jv#Las$zR(7$s zPE_;~G~^U!Bu}4pcj1rd*szl=EU?7a)o#HYA6H`oE52#i$mN$@g(loFMsExheEwMC zjSR5QioNTQyg3pRjs&Zw(Xp}W(cxip5+C5479=nBAO20O7gIX-ugCqzOR?ycoKY2P zDjC7iPWU`v-ars(H1H`IYeyMAJT_)EH8r)K9Ztr{0fgx`9%+UX<|Bb*r^`Yk zo2fzQ*FuO9k0mMHoTn(&CMA%6RE^l#bnHT^LanbV+7MXIX}@<}i12wGrs#&Ax-Z{s zOFLq)t2Pu68pFQj`ycy~a~;2lI<0*BvyX0WTusiJwOLeqNJ>|J!0v)huPSGL#B46% z`M%X;?{;B1a}u&3cRYXepG$12-kN)L7mR=8-GtWSyYI^K1chIO@jOkP4zlr;jbZ8m zlr(yK%lRK^s9Fg{7s|bxZ9I!t7IyF=`PruLh86>1uCBV?KN(sc1KF{^`T$Te5F5E? z1cKbySnsCJu_Z$Lo0JYUUf_NOzE9$~=7+-z&c_ZRK)li?-Ou;ZN&U!`n?NiipAo<1 zRqLa5uR38JaMQ&%`0(*#-T3FB_Ohhb4xyeG88()fV?7hA^22tH6z}IjcHn9)TmlsR z_&#|qzPU>D)9_pYRJwrr;oruI*KBiVnU4il>!F`kQu(O%l?QlLn{p>v{X&w$7EC zjhXf4POFK7b|+z175{tg8Uaxt1ADEy*lYUI5|b6{C)co1C9>z|v~CSbDA8vg`(zdi zN-)E;lyrV=-Nh)^pgSb=GqZPO%DPBUw8{=-kPrLEWtar0`A0pX%$P{tZXYk0ihRPY zsj%kBgA5!y29Wu^nCaZ#9t_xQJos2=v$j zqv!uu3jnisVG+XmlcWMUr91nL3-lVKdJtvp7V9og3)8QF`I~C+^FZy!ZQ4YwanBor z)qPsGpNx!*Y=$*XCR6j!cMY9>y2ecvW#^kZnsCoHFBtkSPrx;VZy-t0gPeH;@AILz zu|uC~@T?;sgbhqMQdO`jDmE(T0Y4Vx|JE5&`y?dqC$Z{m9^*z-l}*d7zZlM*F6^aj zcrfG2SHLvc1w0JQc(Lh?)*YJEzFRob56wWE<1>Hy!{CHb!}F{N(x@1D42{z+ux}4Z zNND}NziiQ-{>WaUE6^a%u7hk!bS=f^TotsjQE*JAUHOU=tSdq5t)>}vud~bBE$Z%7 zJbwR!mp0a@g=ai)OUr~XJshbhU%Sn(Ij169@U$I|OTJS!KSSC`(#(4CSeF%-&EXy{HrQr+Cw6Qlc1%En+*nJszA-gJhflqa!i zyx?!Jw$Um^!8Fz-KP=lb=I2}mj#rk!g3CGLnJ>0QIe-Vf0ixP74V5+wlX%@e*6C0| zv$-hL$)_ZXgYyyMXkkHJRsmAE3LWeC5`##FK1E#M*+r><_ z!Q3~_Q8w4$dM#)pOal2(;`*UNZpN203lm^H+`eLPNetoWJZ(jJmW)i9 z5UNf1eyA{!mH$oBa!5<2?D+%?3;!B*JSoQ{gF=Mj*FQjuRWp;b;abg9Bri9sASLD6Jw@2wb3v9@oae_ z6E&sCHlU@*?CZgWzV!H?;o(>EQc_P%z2yRTKSW#}IeLNzAiq&9$VVU$RvE=!1(q?M zi%p2HtTuXKiN@5VLk46kURYRAP)KSNvHxx>iv}Z za_HKG%QSwZ_FT`Q5(+dLcM4>(%y29}Wr*zV75d|>r`t2*}A6HJr~QbI#-4z z^1W{Hdjo!ts-LePLT`h`$rIVtSGz}&bwfkc;F8P0AOzF3sXv-lV5T0sl(OLavJr3l zvkaIF!YIp@u?EifcHq!*MAFHD_+(EHC00LYs)9SsmIQu+e+GAsJ!hAtIc4DH;~6Bo zW=!dzizqU@tj9Fo!(B<)4+%M1x(J4}ze^f7qF5)`9%H^HG-tBtNA4h^gZ6XPtjARQ zN%$YBKKooT{h3wQdBJeTLNJ1(By z)G=4_4$PjM(>wS)jFB&#EvM1#c!}b$Nc_lVXEBcIRgfvVJVl^PQt*~--o>d#^#N-x zALAx!C0?bx=FS}X-8)I^u~-Ge!>=hnpfa$P@c=g=wQ`f5b7l-_=IIsu0Ro$+9q**^ zJ8H@ud_JV`6Ebkd|EB=pFH&zZe@P(DB74}so*aBQX}cuQYkfZDPp-Bt51C~-E7)$s z`-;j-VLbeXv$*|=mW}jTGT*BoVH;G0r+HR=M^%t5a<$S-|gNBT}Ijwxn29t9Nw> zM7KBvh!Ic}8zra*&pZ};0-R^sl17~vU3|{00UkW@3#u=k&ClkH9iiEm?_;@N2b# zdI>=s@dP}eFF-n#NpUFBX1G0SVENqJy^Bezx~*x-khS@>rTByPtDy0|yqcZ!L(VfC z)zw8G4&?yjB#US$65j1I8shyl zmZ@;GUfA90T_albA zvUi9%v25eZ9sWT|J$vuap8?sfm2j=W%GTqg&l2^tI3J<+Uv(u3c@gAGitCnw92S10 zQsk6dX$vy-&#MZq#-NK`?VH$ZWj5=Vm+r=9m$g}-%C9UBT*dtU9*a&F@nz&>moM~* z?g|g7a*r`^HYa2C)prv4X<1jxe?DzSU)c6ZWvNg5oX)_Jd)lq5w?#x*gR#F2da$_d zlbe5z_95dO`u~Tjw}6WJd)~*F6p(IdP^3#iy0Hk!r5h3H?pUNjQVCH?IwX~rmJlRF zx|T+|VX58!UEiPY`JKPVqkCYLea)Ra^UO2Po$FIyZ;fys#w_ST!oTIK4#_{(Y@?Z=so{`FxLPwXw^xi@hDl71?d4rqX{| z1$pwRU38^+FM_Vt4lP&PrvJ7w=G%e22Z@sJePerkS&75db!dFxj>m||Nw2(n6REHJ zKB^#oj&sdD@Z#tpZ#LY!`@St6fK7UC6r}xbBu$|6Ltr#gN>0euyVs6P3T*_kVa^ul(YxnB_NBTU;JrXP;mz4fW@!s1M-J&B5a$)6{j@ zsWZqxOb6-V^?AhjSRtWv!rTXaH|+Yl1gYtzf$*qxm*w8a-&@A?GX!$Q5#24v&*;SQ zY~`Sr8{rk)1Yut!vQH8;I9pemGaDh|h$I4tSNf z7my5;ikitwkXh|KyP20abrst)e&_7DySI-KGzv-~cDFsj@r8dVHf^#|OiWVx3SY^jTlZMmYr4tr z^;d2`B{uu<>`Qe_LZK0@vRT(uylA!me)`NLc=35N?)mC(AF?*DUUmkCfle~=f$jya z=owL?Ch$dj2#?FaZ{i>|pC{!4Pc4jJkd~Tc_Q|2WA@;*ZGLx zvmJDbvoTNC?Mi&6SU+^8#U1`cLJIw}R|*G1cnE{Za9F+!$O~QnX54|XvB3_MaLGK4 zd2>JimFeAf+kQ=bSBOHubmnb9$;HNYl0Mn_{-;@&%}V_+3>JbX;GDpHy!R1tR`r9+ z1q02lBA@II`%ZW1O*=wGhdV|lxYflJa`oME2z?rPzE;f~UH$f{QQ>3Fm1oW0DI;)@ z{{zMGGO=K{KIC5g@p+LB9PR2ohbd7)hCdd3V^qMSm;2Ua!kzx-V}&fO`THo&uufh4 zh^2%*OB4l}BXi|TmfUy%HJ;~rF1QFgEl=)W-(hOHAOOvXhF0_oCh-8)3SPGYtneSJ)|IalhR5!1nJynHT6^d2fwAQbbs>UjJ;b2^=-wj z*88CQx#fqiY&&I;1~@%tG4+@kP&}Zvjjooia0DK6t(^|3aAoj+1j^fE1cyxEw;+Ev zw+9SgNt6QR{s>Rfmom|!zF@B8`AF^gDYA$6q1(4;d5y_H`yoP|GNVc-!~$`b78pKv zce)BQ@h3&*n1YUdChN+!jeiL8=HlXdykDwJcYCpOVTo#o(bU#A`_;RMp)FaHp2PjR zg&zkM`B#da%QbH%1&Ei1jOHqjVG=D^jo+_^kJJ>!^BIgf zWussM*YWzDQT?Tv9#pTGZD+-dxbH#m{1z(0PT67`cDMB~@Dem7#)uAmjKziw!}WXl zO`Zr-o4<`JHu5kL0KF;t0}EzUq3sd(L+13t&A*p3z9a*}HY-2Np{jdfK2k}c;?ay|HD+Q$&GeTtaC@e4@l|#&*ao@f@3mU#Jm^Cn^vU{Ccd@6qvCwOV*bM$i~ z#Oc|{6sluXwDmTb=Em#NkgyI#aLi3#N%6PW#0|1M&mi`P>USSofun-;jl?IGkLTK) zow^FzE**bLLN$#kw)>ZMCsOtuc-RN_Ji!tZ+w|CcG7v)i%Vyq zUFxVhL4Cqm{lyEq?fJB*N4=6r#$Mtpgbm)0rwVv_D5F=bI#BfHL8A}T-WqzaA~Geq z>jt$uspqqj-$Poucs?z_Mn|qHE&-m#{Su^A%K&L;TeHeNoX|VCc>aO``+@!Edq#Nt z^3PT&Ogs}{o`>8SSo?%kkDV3{&D_M0H~A&p!L?hy7Po_Iz=tc+;QRn?chjBcry2z3 zFzingD_T*rX!$9`?sJ$vZy{FI1Pq(3R%P<^-HKQ(hO^PS$306ax|g4}K&x&jQkNHThwM}$tK}XW+mR-3E-Tgel1&m56hrGbk`T0aAac^| z4pc1niJR&SFhcrd7X$(3HMjkXYD@=R6^5(qV)vNtTpppegR?aaXs{r;>*NE$Lm#Q8 zg}~_7?m+KoViALGd!Rdzl1Q~bFL7v@!DTp&mnhJZ2){%OgE0qa19lO}VZ7aHkxsYA z4IrQUmYE9QKZOgN)|?N{+|zsQrM`W9{tgF;Bcx!S#n*YKq~$8g$VPt(pYQ6A#Aeq_iw%zHbaFhro)&~;JUt$MqSRs|_=*aIOw4>J_XS}uQ7lIuUt7cqE_np; z;IPOKzu?dQ_k$Jd2ot4T((FGCw3A*Gu|mk}4)+ak`maUYh=?%H}as}3_c4Z7TkBE#k!1?tw!lL04CeqAM ziaclf_wO~S*1rDlK=`qWEGquLgW+8ebcu+=znlpn*2ckugiy3AFW!i)&&clNb&M|$B65NoyjJ_S`Sv=4?ll=K^pv4zP|e@O+jwJ-`nak z7sew*_>y3AX?k;_5dLkyPT!W;q|;{vCu|v}87e5v_Z-4usYmz2jQx$YE=QQ<mNFqHTW2to4Qk^n2*BgZtR|;3nvS5jBvlST9P@c3-Dw0 zA~}x0{N3S6=g7c2ERaJvI)$;w)U-4cjKu8BtDkA1b}A3Id9kRQllho5+W?E{zO@E&}UB72o=IYDeia+1tMryCZ54c#v# zC`;7!NEM-ZAEw-bbq+(v;Xa3=`*|DCl(q9>k9~Zy+-_2_(#D7F0Jf08i%f~Nj}YS7 z2ZB$8&wh99OMI+oeva;SVcL^wG9U6|`CMKwhjBwFL1i_4G z-832!)%NmODlwPKBDb5EqyZ_puqA}{6(xBqP&NZERn(^XyEQXQ(ao(8`0yobFqU^? zodHf%A9GWog7*A?T)5r!(-jwDRPOeDUF^dIAgT&$B+wCFaJd!$nfH2ms?OvSwhXFY zXX3$Ib)0FI$}1*6ILHNgd3j$j6;?w*iykysT6N}$XAydo)`+{=7utGwoM28bK`e}c z%eoqg`}G5f8lI|Vvc>+PY}x?8tmx18x#wTV3RhO7N~{9rEy2`s!)9Q`vLn)jMQ>(t zo3nz#VHc!r&UJC5J?l1Xqm`to4n)vax0Gw3_g5%R#h_PCXut%wH~oOP%v-QAqfe(| zQlA}W1I_s&;(Ty!E~AWKY zI6L#EwpZl^LkR8cN>dyZ1j6c+L*_URqaZY337HBU@uUalCo~By9fQ6xG$0s1WG<@7IBFdZn}MlN0pZDou8qqt$Ouw(4i(u;VoL^%0`f> z|3e$+p6Wn5#AV?$%Kj7D+g2D+GmSKucF*0vV2&9qaJ$U#4C8{j^m{ML@@GUMNVT#* zR$TR{62aV>5ne1Th`*EcFK$vLMok zeF-Fh;rAAsoY3Bv)Ra@F2?VnHp0~hXoGSo~%Lr$A=OIRIAv#jOBi){RAN5EPn%u)J zXhDxU4;-l-JlxNI)eG~yya+b@lW~r41{3GWE|g~KOun?Sdf%leSGDV1}geAWz&PWx{c;!i6U z3|jr>)ah8gjnAkge{aujl74%_q;hw@rZLq~ zDT&M1TEW_2IVSa43^jft10-~_chemOc_k+O;SS*|ze4{)ST;AMuixdNtW-qTyg3nOVYv!XUPx8-arF$Vn7Dn=$Y>B|X44 zy|nap(TmI&`0Ww8fLDH(qIV9&pEcf!ReMYqn_SdBC5|6(ao%>6(iSb8nwWF8%cL%K z_#?-TwjK){Lbmff)R`xub0>h%S`|U$rp|`50?!PZ3MsIE(;S@YVMww1DPQN7+7(;I zs|+Fm`kY?EaMAs4zrqUa)3}A!MG6zDUd4mT8${l9fp7 z8WymgHwT(4bN5r`&)vP# zoQa{hmQ;B*>rbHne47XoW3l+~&!5Q;$+B2h8z1(wwSu+HZnpGb<9lzw!ZxXCI~OS> z7|d*c=Q7d$bFT#n^dD_ns)<^iuJan_=_i*QnLH{I$kp0i&u)HpYKM5)iwm#oLN79_f35Qc^m|outaH&?zh6cum!%i)?S~}I6Fi?{zMKes#NrR zTV9lLZPdWrLMHe1#4@uKrg#-smBaKYTTCJ9Z#PoFPx$O9DR}GdK_2rBrz3A03-rEFZgWp?+!bC*r=C^t86LWTS#g z4R(6mh(r9@i1VoZb*;8-ivzpXzH+DsE&trybe0mAzNynlcGuF(!aAU({bbp$QIs$o z{259%ZUw$Z5#zQ8-d3NTk%jEBQO~+oDoRiX4ne&g?*@jVDeZsn8x^~CThsQ_$t4zK zpA{o^@=dF<-_849DeR2ksj1>$o01-de!UyW6I`y{`F~n~k-yz%2;?+bMzftr3({D= z*E^`OAe5|JePP{a>9iaHGlR#7@{=rDF7To1tBp zmiMbY4m@opd#p|GifEOaKEw`iTP6%Q-GR+gkjk9O0?(EI_9jsa_b8a(_!CM?r(?_# z<;*}FB`3CVKbUqZ=tKtW#UrWVuRLkpC195M^u@u+Lm>8B$>>G03tH`T6k8QP&9Jgh z6`N!os)im-Z*G#n)=P?zz3>10so_OLrxn|g=;Fw$zfd0-mO33nA$CqqBJ+r2fZLO8 z8+M<(yCSmU^{9R_x(!#^6Kzd)X>qZczu$s<-g8D7fZFM!tA1NxEtpIfQAh^~#<}9I z;2Z8p6aAqlD<&C2HW00LStbZ9)sQH9_=M-1@j1<{05YD8kmN6g7$Yez4v*Y!>Z?qh3>7-d z!Dcd6qdBvN_HS^i(aMv$TFr}Ux7_3W8+N5Ox?Opi2PZVAPCPrJg2LF z{lv?GX^Kfdb>boIgQqTgTl5&e2Y@@`p#C0QRQ#AB@~f5(a`AdOSQFS~HT9q>&kcXU z?0fK6_pfhGO=V=mK8Xr+F3wZDsoSc;4px#wTiqLrj*CsCUDv>ZtozG90?bK@+v=^b6nb+%>8*e>p&{zbX91L*ko$U0i&Hf!ECz zlrlBdW$nn?*cWvZk()E_VSzFfJgWq|KIjFe8Sx1z{7;hb1W}(I8Oui;Tdud2ITQK#H)N{!G?<==>+Ao;@|u zyEcya-*~FnFmpZ3(FSgNHyUy-y*8M3Hzxm)<&ICzjtai|h`X=;k5&}OK*@nzOFqC5 z=s+>EbhI|0lCqWtL+A}p8i^8UrT;1_qdo)|u4zFcd)=&;b|;6gU3K1!S-u{qlcN(H zsNvP16AO9W_wzl6x9r83wyb&ka1}SQltNY{r8$l&QU}Ai$hkuRi3@XE^7AQHmwK|)9=-#Peb2xsPFCh@9w^+F=IyC&4$Sj$SwjwKueng=Q*VZG9oyVVJq4GJu`ha%M_h zH_1q5E*)7Q-S|l;nNHqtn5EpNO6043Tmyl=t3De#ng%Ita3>R_X|Gd$zJBn8Em4&i zIkEWgNfI{8=id}JZQB~=Ns5?)|Dwa&`USrMT#X{E20;wsvk}#IHK~8r{8nPvQn-w z(0(dC6`vFiSX`7>o%a{myP4{B>HVF@S8%$8{jtJo_Ah7rLZGP3jV)Enha7yMLE< zws7XBqcQi-?BEEkL@|;yOAnc;Siukam6)0pL+{qk!Om8lOud_dWe+baVTSyY3LUe0 zCOSfM_Bj0thKa*H@xA2=XkvaNdTeMrLa z#%=`yvkm`8<2P9Nm~>?Yv|YT+E?kc zo+15*ou?bmlQ^wPUykDxX5hxSJ7G33nJC?amzEAFL>;NNTwkZiGPT-XMT7U`OAuwO zh}r6h(~u1wuAX=}=P$At{sRGh67jNJ1D$-4#1^yhjC^Xb2_ae%HG#KCmiw>vS7>a8 z%p0q`b|Rl&lyejnWgk0Uxev=+Iheuem2Kx)*0TKADzoJKwas@J3f%3pG_GVLcHsl3 zW%iCEoHr?kth#uiTQ|1feS1~o+>05X{YgH#eAu(qT16!=4S0&Vr9uMPmIPjXKO&mtG3V+gl5`4WrG4C|;i`Cx2uA%b9 z$Xj9+U>NM*YA2-|R{uXpRRaHT!h@lVMaAa24{N-tlS5$zul#lv{^!V%0Hx2StkJY0 z$M3+;;c?tqcBLlf9wvHc`*8TjTG{FdFkTkthcN8S4B6#fkX(I7Nu7vLrwHQ@C~!J-j_Y1{XZBzRmxswdc48hkZ$yFAN7VITFO z7FIb~S@BMO%$3C=wqry%pU_HCA?3-Kve{T{`xEH+h-LBp%~R)l+{+(v=LHqq`wk7i zv~m21$awci0d3Gy97%C|E3fy8C1kJr<02>C`cmkn`t7sUDNXIV$~Z3{S#G@gvEdm1 z_F@t8tIpxr*1K%7<%4Kay<}QXi%Dcbe;uFr3$lMv_cJ%)N4fwRy&%uRp_$){`-Q?9 znYo{Cz=Rx;>$2V%WD(r<-$LA1P&W8tyf`&b{TvGi0${w@;b58#8MD|_%uK8DugA;Xf6Gr>h0b#N8WMqX6qdr&J;gsM)eV@y#v-ea^N`E#o6 zO8WW7ox<(m&kt|fY&_vfquZxtWp2eByv39muQTpie?u9sTm@bDWRdFE?KbU6vg^CsVsadS8^~<(Uh}ZsS zDu!`>!L1zPpHQEgs zy%(aBp;o+as$n2?CZ8)Q0rH@T-u&s8y$T37BgwD(b_9TggJo17>sP3JPnhEtx z;N9(XV{w%xQNWA3KYB-~C&%8f*tUWDx!=tlD^EbrG%p}n$Kl6Pg78R(Tx9FMx6buD zV3_p!N?hil(r})^2g!6jl{C%`l)+g+#D8#r5 z)k=4Ff|%=HaFH6-OuyzJc`@&8mfySYnY-8Kr_<2!g)9u6#pWJ7nmBvu*F*auS57lI zMdYjF{43`!0xWQMU(oUh*#AyR9A3v68?>iBXkb4~$Soc5V0^-jV{Z-tO2Sv% zIP-!zn-V%u$LH5rU!tOwXYHGa=LOAm8J>!&xu{{4Sy7JQsZF|`>@~YKq|%dGX}9cf z|9N)pKFjE>M5X(B&a0Pks?}c4{Ej#VSxf)Nvb5xyin6$5^7!rCzhVakVHEEW1qM3M z-3BxsxJ7r{Txyu7sF>WOqKyN4hd;{fohd5cjnx@fOX!Xij)|jmx0xqhk)3E}!=KGF zF-hiD$X|t^UFRKn_m!`m_Kw>2@Llr4E-m&Azn$hM=zKk>m5Iykg_-Dhg=tM59HugN zW#%-`%-O7_dVuz3yj-Di+x8>9g@ib8qweT*2bghN=ji>4+CagTfnx-9dve`s93^?i zhW z+?h^X@h1M~%UM@@ie8*zB_D;nnk{L~h##&yjqERHli$N+y9^h>%z0(}IspFkcb%fA ztN}@!JMG7b!V2kV0kS6Tjo4JD1<$1$Y}qG}&fajeFDIbI0% z^uJJI_s)5h`9|2Jcm8}Xv|Q3l2X-TCtj><2Gj7jqCke#i$Y#z5ETlnKM=%N*e}K)al@F!2xj&FRzs4eJH~e zcAd}4olYv`$1!MT*rlw(193#-uEx4RDvfVvZLmgWG3;(5 ztS0;Wb)FNrP-DpITvqsU#Tj-SU^_iE^+85bQsvPetIO6Hmoqq+-?b$+0cy_G1UPE( z&SNM^`Bz)LMdMG!rr2^gBQ5DG*kokczFQ@zOpq|vYIa6Q0YvxK=4#U!`n)NT%pVsR zA^(#x%AFW~zVyg~Qd1fKEN>si?4Bk7pQ1Tv9Dbn=+m?l`@xbOc8)jK;fhQI;nFMTP zf_a=%yZU4pYSLFbU#rRPdjDSqdyDHlxVprN=?ZXBty!A2g+W?bm{uG24%XnPem!L2 z{LQV3FIl9CBCm?MV#uQf6*MXH3G?ii)6hI9lv8BRS@}Y+Iqo2kch+n2hrshn*t?&z z4DR9dBn1T8llfol!nXoF*Z|c0JAPJ7z4?v8{j@G+mkih06n{^4^M7HE*KpkV?pn)N zvd3EV>9>b=@`TNo$ghyh3rw8asDE_JmCF#8C0$X~_4{JWl5VwTuLNkSsPlp@8`dJv2NO6D5TGz;Qc6K7c|`wTP;UdmTZmQ*#>&od7FOIyG3a~ zWXCyUFz=>t7jYXU|#t)_h&wu9Bq{nulPI4 zM3V;YRyuDVNF+Ter8u$lUv*@18N&$vGW~?0s??Fjfq3@z{;i(@tbflaQoFRG->p!h znYI)9aVH6fJfe&?y_2>GXzSNAm^_|nfPZKrHeCuBC8A+~LX#fER!HuF9Zt7lKj$oL z5~-z$a%x!gQ81sbTPnBuMDqw3XcQR8b~3IYti(WLDsF$!Se^u`G|B}yjrCGX-8;AR z3{fqER7BjjO(QGARx!VsyZ;h^lR{2oy2#Ns`hj7}4$6$siv6XTL}bGWRB>WTT$ z!CR-Yzok17L9UR40^^k+tS|X2rIhV1&~mP1d@N6qL0wAG;QYyKA?jiqeE2z*D9>YP z$5#Gxdm8nq_}X1RU?ioH=qDC-vrfDz`KN@`JN9p^b_c2KD*UaV_u8k`=vVn(IQ!S( znVh-~tamrfhN~IRSl!im>)uH|wz^xkb~N`co^jf8_NwJuB0+MO2S9orR@4ENV*e_Q zA5S!BLpy1&V>Vtr^2TuUc^X>Y6gfxj5qww>CSX0N)AgeVB#+4`MFe@N!hdD4BMXL) zKH~rcVixrz}65Vf67w`40Sz@ux`iG$s^ZC5Dubf&N_b!_(beb1V_}Ix3H=0}=n%5=3 zm+$OnNJd`Q(p%jFTqPvnv!v#uLg=BoC?TapTxlt(=dU};o^5EvW*u8STg^85!S8I^ zrqY|ek661B<=)jrJN>;euUE!rfDaI$V_)>zc+v!{f}ARhozAZcAi*n5BC=noyFEHn zl%P=Hs&^G;>p?)9{PuCeBexWpi?y8gZY6G|DJl9NOtJDOSm*w6*8=Y;cZuo%_L#Tz z#qUN2>>uw(~q{HqFQpK)Oc*hvq^rQH5i zeZ@>y&YKVy$8PnlS;Z%dhW7b+c$6AS@Ahv{S68t??nbq)fPM|_%UEgs#+_8f+S(7` zfXKHmKcZmVOCNFn)NI9Ao-s<%a;o&mOvW`# zT-a&A<0RhwO~BrvgJ1D&zs|TNp~|w{1F{tcK;9~*5<2eP{l0aP$v56e{tx4sh;6*N^S#r3_$ieN-;+A0c>{x?S6^G4!%6Ql^y2^eUdvs4j)4jh#QH90-kGX{uu6piBxWEgcad;_3>nuuYoHxoS0gc&f*K zV+t$p87v}S@;y)>FY!?T^C2i5C8;+nXsx0vWvg{rl0@A5=oI^CL!a5&(n{fk7PV6m zm3Go2H%l=>ixNjiX@%Xv?>+;0qwjX-Y5UoX9gSs!x8>FeBwCLL_{#Ns7;~KxbW0Wz zs6yN|X|IYwv*VWl{hC{)81Fxq$tXrLQi(E`wxB_3e_B4c??@{)?(#h`(A=wd zf62q^_Zi96r4L)91|equinP^C)Y&qbwrSzF%x3sy{o7rUinNZrn{q2rq1iga11<8G zoT}kWS_@h#138QQ$pfIx=k@X}x=+)y_C{peCQfbbMEhb{>ga4-M5qmLuuq@R&@*|r zTuyGa9Z!Z%hB?(eEnD5Kt$z?&WcQ^}sPw#AQ#8{Mj^YVllu;&D(TaHZFo07e#7v;o zh~KQiX-ryuR$BII>3ZLqu=bGfiAgZz)|)U*Y(WrQj9P)C zv`AzWBQ_zFp8w$zoz-LCq=9*tX^MD89*k!qw{PFR2fPt4;w)k*=$5JTK`sK^xSJ%4&Fa!RF zT+WrXjzu7^IC_{wu84W|dZ{?NA7*;@571iGTRqMfItBHt>ArG~qr!5wkCxrlMPuVp zOZscH-$$b6#^-cQse-+8;L>%V)Gd1k~rWcrrq(X#wMNGvYd!O)(v%Tq16J0ni zD^*_3#-%O9*G(cXui1sj>DD@mvK*>gUC!f2{g6E@G~vh@VF(6SEESeYC;j>DWr7H5 zc)0S;7{ZATXoanY;!Y8G-n43Ib`~ZfADb^+W#RXHKdsQD-I~DDdvfdC zVn9wqgal%Q>(zc1BL=(aS&X<#`Q1T= zxjPOckTZ06ek1fE#<6*;SL6Pgc^!b$Fvd#LUyBE4QiM!Hl8F~uq$K*D2%Z@xe;)emzVut zlkVX&uF8i!mO@=wLexId>sK<<=3y#}Z?*>YUL9#O`*W7+Pvi&|JQUEx&wV;Vl$U3f zuYmUq9+^zuN(z_;!cFhG+)`_KQf*4kSWi`kd~knkSFqJA<234t1;~d6_rV@Aq{NWc zcVDB`WV{;Z^JET2pZg6|gMt$$qcjR_<>Oh@_i`P(RxoG%9ciUD{Rhsegvxd=E1XZT2 z+`T1+T%#aGEyr^N@QTk<7}#(1t1v+=Ms(bicW}@>OrNFRbpbi2S!N3*(Znu!47{JR zog70q%rvY3&?;350oKfMc5jBI$$~cCah5H6`0e!c^h9}3bj6Zy)}XjR+xMgJ4^Z(o zp8gNYoTYxnHD9(RZi>h2vm^db3&3LeTqfHY;rmF%uu$x)De5tX74ONI8OYWO$*A3X z1vh#LnWd!!kD&vo2%JgbhIonr2ey0267`2{Im#Fs0_5I@>VD=qOB-N_y-7^|6&fC} zKf#H@f*#Vz-}C^OZ`0geALWwA)%zw=lF$8r zorU3?bj67&N|$`!n;VbUm@FK*XD(rwv)Z7Xuh1OFqzR1_{cCwZsquRO2tB-B8oB?8 z?sv5dnlAo&A6VoYLQ4TbUZJ1fy>>y~nw->N?E@YDS=yPyML<{)@}4CMO^D#J@lJuF zyUzFcRiLl0fhJ|R`w$djjEAw%{WDboFVsEWm_HKCIHn}PNps)J*DC1*x8eEiuQAJ$ zR)5wienNWlLcgR`p`-Lu@&OxC#tkY$@$iP!RGGK-ZpyhBGT z#bIF2$xn8+ra7rCz)E)G`2NvjDub^#k@4r$A)V7RjF8(2B`tfSzL*;5SOwv$m670B!4NES=E&l)az!`hHwfgkC18wJHt zZz-tcJ?MM%jY4SQ=d4mB6%@{QWj3!40+_S5G4;s~iZkk^_6psIPof|o`pQ4URyrY2 z!w+sKRUnz}ET<1!n*cQRdFeKh9`toa{q6*4OPxQg^IpLi)R0{9(q4e2yjR6fab5kw zr?$^w<7lvQ-@|L6b7}XsWA9(3DW>Pow5d{7lJAbyF{FYeHT=A~vr^uAk1Qx-O(rf0 z60;CP3*Mnm$D#L+4rPg|EvBHL0ORK+Amzdua7UYLL47Lj0uBz2KU)248v$>O-{7$s zdYF)WpL(a&BS1qge~+-X`>J{W%7yV(?ycT=NV_LPLp)Z6?T80ZBDm}l6gA;Q!|W8< zSaNCf&$s5@mW1XfyGWCm;&GV0+h%^XRppfDN?bmeb{n|*L)z~xk(7CZ9S@DZO^Uix z4RKmXw2b90AVt}bC3EXXqup*7zbgMUoEC2L_3Gw6fa=uG-o?kv;bbgYPxEvb__ki9 zlVB=~^3N>ZR=;89)0}KGMM-7_Z>Sg>)y$ zAJeo`+e@Bd1oH$K(+~?o-nvI zQ7U`@7ioF_8)?V1iiZZ~q>xAakfT86c*m}NilwlPrUPRdG%*-UB#y}?L<31e6baQT z$uawEKYing+=WYjuTIMYypqdM+Rngm!1;I^KC3EQ$5@NR!yfa$63I;NB!^+a+rCTr z*UBz8{vvB&fYgX^`EHO3&^yT$T#<|rb*MPjrwwAwihi#Ie_~2lc*)hZlykf<3=L2-1d*hlApo&r9+Z`e#JZ)02Jo$+}fEmAzjS$g06h zX`Zj8CVBM(JjrtQIvzke)m#wsL~XO{KE&?u_4wwQ%?(9#!TPLS5A82%hk@LCsvSTM zwSOfOBQ)G-Kx9Q2QCOSd{`DPDIB*%4kPo`lezirONQ5K+N*yb+wyrTzwEFJsCDzHc z+qYe^3J9mvq1I_D|GL`ugG=4Nr3o#Km`>Ak*OF~$lQPm}+?Pl=U=L_~cZRR;I(od- z&_4E1?Y9mNK>T+?OTS#ZHr00%_foiok<8kIYoNx|`pSVUxV|zf&`lDOcf2RVm-Mq^ zcr`fmDNDQz9*~#-2~Snw!;zZp4k{Vk*w=Hx%OL{nfVIAm$#>YjzU5?$MXQ_f>Km?; zkZFoa(XZXt>>g+^Aw5=IE#!H;J}3d<6%gP7w>zoc+o;h)zs z3IXDEqN(~v8hORGLRfMk*XHTI$l+}(Lb{Db)_GoZpJ_=)d;!s#5Yik)S>LYT5IR_= z7j}0d#=WMeF!elL_ZaWnZzpU5$7qaXf32lzd z*YlBVu4ni-cX3c7u87F^(3`Cd4YLcT_7~f5DDxswhjrIxL`B;3KA{Rlsu@N*Y)b z6c@*b97qj&F+7F1sAtPK-knx>`;3;J{?9F3TvZ5{$>e09kOuj6{?}0N%_mz*ltVHW z?X>j5+MDWdzn9B@ZaFcdhPvzF*Q4ji1NyHi+b%FEaX+!OrdVyHm) zBzGHyLX;Qo?YMVulL6CjkIs}B4e6>+AnibovnYQxbwd)@1J!uq5wW$ck#Py9VRMOd zVTe4cBgfXwbWNRYR^u)ufI>THu>drUA#d_kd``N08-t5Ij5Lw2b=yO)nrp z1rPnHJwjRTxb&8XVJa7I$zKGAd763-#$8`d38{VmkpQxu7TVeCRR44in_J}t(^qhN z1S|cps(zI?n!IuyZsj4G56%Vmta(WIOXZ>t!$_Q=e^&@#gNyz}u3;p2=65hJpqjyj z+#^uW$FyVZ>|w7nwPGrBH-Kou9sf)AEODbFJf>@SZ?=il!aJ$iIkf)j5ocS#oh=nO zrhACx1bc6|fHk}TyNvQ$$rXvE-+~+y4LcxV*mRQHwzy^Ha(|k!RQn6no9<^X8w8m> zv9ZYrw6(S8>Kq4M8Rlzv8O!!bKe-0sV+}QGO6Wc(Whvk#U6h5Z?%R zZD*&v+m&o?-JwpoAq)8ug!=Zby-H$mZo!B|dbHO3W6li5D`>mYJ<7+Lmb0j7heuna zQIGx>Adih{;vJoRBztHZ3RA*m=YxfCYqxyZSrY}YrM#_*z6oHbrlsb5dZo9YxeKcD ziQk@#98ONd>6dW>lZR&kYj@eBgSib1cj|k0hqPLcPLyYO)bV^2l6R*&*#K%R*ug)1 zTUxqUN+7c8!2zAO4}GkB-$awnElHh!etwLHk=pN1_#vm2$}U3oak6)%}e*V^4x3 zhTdxJ5*_pq^QHCVXDncO11v092gOCjHon82v1ICXG0oXzA>($P*XBN1 zUJpNPL@S8W`-j6w(}5WK^kj2^=|jmHg0kqi?H!i4>Pt2IMQzPq&F7%)S+U)6NFEEa z1J+dca)efp&|{1Z27uTtADng58a0x*f!6loZ46dysbTvW#{Z9}w+@QBZTp9plI~Qx zTS~f-?v!rn?q=x@L6GhaDd}z$q(MNsyQFLP{c_#E=lug`7zfxnspz4_YavejUHPN^qaPUk|%B zk^o3*nvC$TqB+5v-1DvP%s=b~MZbOPQ?(_^Y@bm^z11?%&kbdBGDrhEd%{zH)8Hc2 znM=^v0ZD#{rT6FSmzlod5jr^EZ-(v6}+&tRnsFLFI>!$Iq*E?q_D)r%`LQ=6BZ&#o6D zk1F}k|12&Dp$r#Er^pO(H`%zV<@?}6C~==|1ZRuu#E-j)ka1(3?FP;GIVEp$pX?bh zc6|iAiR4N~X66>?_wMelJC{u^Q`_rKsxvZYP3#Th)u2@x5Nm05Q;J8KvrU4;OkFmA zZ{1YwS81?v2OYOhgkv3coOgFHgfRe97V)MJWEkorUY_oVLqkK~QigpxtyBN?3VE*v zT>QbUP~4mCVt7Q}1~g46Ir^SwFMIU44_%^=TH|NJ9{q<53*A3+b14Vh^!e>Mk5dzK5cQ=pPt zpYr-Xi?rEA?12W4O~^w9QR7EkXsqFXX$&o_RMo`KtQoixikk1aakeM!KL5xY=dnPG zgadz`$Zm zREynKC~hG{q1mQBrB5(*?dumd)Uhz}Mp6z`$KOSog%}c=ZX+B@=?1@F(~XS<6R@AA zf02lh=k(|;=dMGw70v9AM}leel}ksyB6mm3ad&<5mPJ`1%He5&#oUeX)1a6eVc*_+ z37>t%fq<0kU=$1!Taq{0zXA$ix>M?egDuMH4?Z5z0r`3Z&`#?XE+%eM?AtjP1&5~O%m1N0O|CDYcF zm38_1HuRWr0kkaC812J-5^U|^;o)n09zlvQ_MjV9s6s`qX3qJXhnobTNi!Wx+REqv zQT(qwzQ5jw3j0$|AQ@-hk@z*&wL0%jLdL-NjzzDZ9C+&Bs7$@0`1uX)@ z^J3g`ZD=0(oJS;YFX}P#h<;)SSGxvk^TNe(0pa7{FEC^%hYd1>npcfig+$2-^oC}D zLaA-~)`jBzeosv52RqOgd8^#D1~;}+ky|YPb?|~)PM(1uv}>Pvfp;b&C!=6x)&;LX z3snqlAnM$HR)iw8!7LR~&f9UrBLDnpM^T0**>XsfX@AOHn8#6+xMU~!5ETaCKS)Pz z3<%>mtW(TltzlmeM=$q;d6IHDjrV1kwL)AU5h@a0aSHlf+V!Jg4Y994{U;MZgn;L) zVIF#E1$495u!UWIA6_ zSTGVav{4R!l78C?JLQI$e)0*tX6{eZ@$B+ghHd58ICok`Z1VtXuk!3%V3>Hzh!OSf zy%+PjvH&_x4?_u>Pm)AHP6(}%wdrJmFN7F-D7g-`JF-Fk1n{c+CymJ~?KHn!oI&X~ z)*&jv=Ud4?T))N^A(d+b=SYkWQS@sl_(Ikzarw zukSt8z0>WgR)2S~@O{oO+YWcteOXoW=1XB^B#_OMv^LK}a_S61d{kSoZ0GKZz zH2{^HVu30{wn%_4HVu4b7%+9AWWmkPXX7h9eMGappU!MN?oNX`aq3k^0wB7`gS~%B zU6-18m>L{}H)Dc5ioPP(anYYaze-{iyc3xj-){cc1PVhUoc#cITPZDo%Z#0V{t(=^ zsL6!?5(Fpi{ubD1d}w*qVdJC4Oh;iQyE-EvKwI=2cU7-@xj_5? z4ySKWr+*&n0bwCEZyd<3hN_4@=;t-%a=XF6eCZM=%#+`mA|qs04|+K;z!2?e^yE}w zoN&`-wVxz#0qXaHp(`UuPEb*D>A_;=(!4XV#t(M;)vz%I-ms5=sJ&4dB#EIQxuVm! z>VXJ(S@8sB`)-_z;8hOD5dGXF#lq*PH+~^G${;K-5YTrESjMdrRwIC=%_*6OIJswF zn|~F~+G0il4v6;%6sEDq_kCUGM(YL&Tw)TOVr?F@ORNbFjh?VUwZaqh*SWn7V_*$+ zE%tF|m1i0;E-?|ahW7$|UX+;VuvC8>W~z4=zI%a905Hq)m>92LW`K{4&vVOsz0LQq zf5GVfQQOM)yOZuWZhn57BrNN2z)NlkQyhjRFWdq+58A*F6-G*z_z1u+5CDG4I1q5p zsC;^V7a%Ig&Apo|;K9U$LD3Zmxq}TK3J=mceYo2Hm<=oY8ED}Ck+wJz)we6N?(V}K zG6NdVVl~%(o3PU3fa9P6qEORJXVNlLLB1g>ys;zQed@xF*UCInR$6SQ@}khNCChV~ zn>BfRxB_x3z`Ltl;DVv0MXl7e*E%g6IZ^`Id#u9dh+yth@GgleOZ$)dT$#U-lKr2D z&5mK@+Mn=z7mTmd9N_GvvFu2;m|!=iy#bgNW)ZTsPkpLtKB^gze2dyqlfT*V4jj-F z-Rec$Oe8(85C;U;Jl-8n`YvxWUnox2Gkq!}^CuMl{-Mva;QZ*5ol&M6aAJooCB@ZKjN8uW^BVEPR;= z9fAf}Za&V7df$wIUvl(n#Iz*xg>VGsB^GYnzXL<*z}D{P-y_N7O1M$0Nc+S}3w?M9 z%Jto-J?6{o8kes1v|9?o*jTfJZlFN=nDnT%{A2AE>4XoaQ`N4?Rkk!0J%AK1`J-Cd zn-!g}9nsF{G|7~n`@C|LDjN9q#GlETrFhv_PK;` zbc`k_yfC&;Q^>0QX6%8SzH;^F)(&VM6RAfYgvW(QVIgt=Dv{m+?IM#a9Irs5Ar=67 zF=_b&E?!dfza0TAdx3hqzjNh)j{#`W(D$UfpErB%E|19{e@5>^Z-3hvKLOs`Hah%7 zpvD3ocUPLcB2dl~A$1fvB-?pye#u$`p4Y821F4R5d`VZ?$sg7slWaTC<(`-4{jo83 z!;JLw#SdIuxMQ99FRqZ0Xj|R}K7O$qxbAaAOV=Oi{Ha>&UVuT1I>STwKfYrEg))w= z;RRcg!Mg@kcb_*Bh_8xVYPc7C`>L}xi$he;@0R%eDK~tKsNmHk`Q~t7IO-6KVj>UF z+dadvyD>*Rs69F>ikDya5GVROQwq)$L9iqGD3k2JA$c01d2 zEcLUl4K>&mr~5m`-nm_R!?+Dp8PF7AbJroQKyW?o-6B~0Km=YfPpX!Fttw{doGH7z3 zXcsuDO_lv$j_)A-U5O$h zPhFzV(huR`=TEvIDamXU7P);eo_DVPOL7dn7-a*XmFy+@0}ujltFDb}><|IKa_M{8 zxxJZL|4ue0MTjCfJWO@#(wr-lLxYjQ@EvX}S7uEp$D1-HsZ2I_ivytPE^@!_>%9wD zQfOIhc`%iCmu%{`FP}2Fwxy= ziEq_(s`wqcp5@c?;yp(xDX(pbLChG1DGb_OhPHLenn~sJn#_@AouUBYIEk!h-Slb) zG$&WN3VwEYq5^CrqgiZ-qd5dYZT*qk$cwqwd<_P!&;8_(@}f(u)z{Frl@{B?O;A_^^1j`&EE zt!J)813~U@O7#+(r=k$Yy+IB+pdcmQya)@L4I`FoIs9}~6<8^1Za+Xpr=?|TJ&oZw zSC~5YO6#iEHGUvC5fb2LWG>OYu(+>0Ys^J19&C`}3q@0Fi7c_Gb1R1gO-vL7q_cG< zhUhO#F*+F!>1$7zKz|l^m{$;hEPfYwv{V4HZnVsSR-VdWgqKR6&q!R0xGo1q4ctk*I(;pg z>A%b*XSlv+th)<=wQvQYq;X@2>2L3T{&e_=0P2JT_$k_$D#q?Ve(HBEXQ8dzMy~$H z)J#&MI{P_f{DIW~Hmrz=0m)KZ-W)xR z9?q5tCf%wC`(9hW6RQ*;)#JwW|F<)E(VV05b(?q^y%GV?P*o_gVq+=I(IXXpb(cin zZhhZLWYpQd8#t?Sv%nWQ%x^GhrzfQTm(H}qt`qA!I3>xQ>KPtif=1JUviv? zSXft^8dXfOJ^W67t#+Q}-tHvOjm`a^7Qk`%xCdghI?2Xn7AfS0?}4 zxTV$rd*)GjcsN4OhjKwd!R6dj+pn+Zd&&OO&?pPEG_d^juWL@6KMImRPZ^(ycptyx zr5I~y1UkbcLSugyGMX8Rzk`i$L_9VUqQ#EdfJ7Bs4t$&mijq#Fj9c`BHDM~sx})oF z*>?4EFng$Krx5rsYB~!5IVj!c^W_3Q)O}>$Q(7M9>>;i@l)gRMm}9M&_)RqUT`xDf zx_s-zC~JS>k`Adj){E2u6T-5GIXx%CG`gC!=zJc>r#0zq5#4;a&pu%Juji zGS65|H1%VPa4F<0R2AfaLO7FT@JBS~~;+Llhq&i(5tXgfpCi*3|I%lJi_?0ABtznj8adB52 znlDIb@v*RKC@bx~8f0o$t>!Qk{(#2`4JspLcl^4MFPAu=uYeVbpW1w ztl#3;#6wlQ#8CCb?b?>DhJ)~Z%O`hXF7YCnLJlbycs@ZK31*mxX*OqW3mAT}^g5G) zef)Nv?>`~{c&H8Z{9=neb$@@)UIIt`SL*+bXGvqyfFl+5{qQoQz_v^5AahNoZ2CYS z+^`+S#heHN@g)>#$CxyqEPA~5h`mH(pV){2aOwAFPV_t&p~=}Wtmapc7*7TC%yBjfG^V)d#AM;yo@vSbCw zLG}x$%$H-*ha-=u>yhdlc1>z}KloyegNExDr~!@+r?TNz{bxF?0x<}Lv>v+eci~Ui zFf7=s?#q~3v4L`4zOBL=)gY`nY$tFt2Ml2d9`&Y(UkKjxF)(Uy{!WC)Q?b$~c8e2q z2Le6NCWP-!|Jw)bG*Nkal-~i<1B@NQCtBZWm&ygKZprBz6F;h%mb>m0rIO=C23HeY zpkAS9Ig13awu2`X99M6|&L`-vci3MpXbEE8ztNznr2hLcjua7m82&nC2s!8xYgZdM zn(-t-5<}50k8Gfzq>!FttQ0Rtf6SA;YjR>~lKYLA1Fz#i*C+j0-|K_v4?&u8*FSQ< zlzw#XUTb_I;PZrjECRfAt<0%p=~DodR(F?215D3we}*7J@wBL3qj7X}v=SE=*A;ez z%ry)--!*X_1n4av9%7^zK{TKvuE3kIg&qyviO-xV5N1h0*PUh?VY5o8#nJ>ofK&eo z;PHURpe?@BGnmAEKR(kKe=UpcEgIwL+cG2-u-VqjC59vG>S8YV&+xkx{+0$7$D3kTobx^4$@ zsvo|Wni0K6OaS4-QbebI5Y3c_P4XRl@KrZvE%T}In{MN*<;Qts~a{d=?>HpByKUqA+eXl*jH+kJ9MaN>sJCc#+^`>=53}rvy$Rkf)Q2-*MFu&uy%s*bR6t$Q~+df7tlN=$|;mtk2a5j3d7Du3T0O4I#sXtG4WGa)g`Nz3Ghn$)0)oFclhS{{Tb^|s?YB=QkvzQ-Lo&_Vu;5ua-4KFVrG34}EnSuijZfcSZeM8tqL? zdf~;^D@06vTrM9*8@Bm8HS4db0p2b+E%((gKjyCeip4^v*B{1~&$92eQ}>^wy8xoOpem>BcirvtgfKK%7RuXV8c_I?dASnVIyg^yC`*<1D6shu2o~@v7n=HZ(29ipitF zGsDXk4jDp|sy9}jH_;0X;Ka|~EEpZXLH@(zl|#GzH`DpJzpkn9_tRgcrd85N;8uhqH#Md4E8j{UmaV58@{=V+nw&Vnb=+#e#8&VX#1PioN_-AF?C6LGAAN zpQ|7Yre69N`go8x)beC_z`I4MK-gBBvtAasywH3skP*F;w553oV_`Nt{7@X1qlgio z4SWe1;~>CDnSMELSK^0>QtrMeh|78Yz1?$t(>6BSqb&k{delR%&!L$9LO9+G69Ht3g|47kesc?9r~vQB9)SKr!v2zP zZ2g4dX-MeX+ibO3NDP}VUMmW4{mr+>1gki`XudB9Ag1LO?KA6TI{Ej7m?w0ATHNK4EZatRZawx{Tgj1a&JA-ku$MiDfTR|v#;X1NY ztssDw$WD7A$K#exE=`h>C4PR^Mxe&s=RA5ytsY=D zc{qrH0w}0)l4+zwAY+&%*AtSi2UVtNA1My-8^^n4PZ-e)rcpRhxT2GG!Mh@Q6e&t#*m)8yIWKPeZ|ecg$t)vA2?tn7z}vR?Oa*f z2wPel;Tyi=_;AIRoQ$xaNL)@%Cw&^}D-U}ah~!B6OMUNFRO>>mNE}NN=wn%qql5bf5K9 z{aSlsnqFEEo(&~|&d1+@`~I~-v%QOV9grSTfC&}c@8#6PV~3+7%Vx@;r`yKp8u!#u zytq%8fmeeA8f9Zey(r=RSV2OnycRkXLbhGD)039{85XH32-0l4P zE++G}-#(>+E}NIN9cm2i@QL*3Lav{Y37yEQI|2nbf*S?ioC(ymb-AIDI1V^WO^hMI zQR1bjGE@sXu8~`;jeK7j!M{={EW7DPnK|MUsfUWoet4V?6W?$q)LpH9_b`M>5*o0_ z97N>7b^y<9g2qrQh_nn{Ex_m=}c`fVr^eWHVoEdnNQ9*oux79m*31z`bO2t&fP+Bac%#VQk z+!jn{iX-twkp2CR4%~ZH_nv6f)u^6# zudA4SH#|M&;UfeuCd^0HZWy%fd-qk@9SdepU;D@Bbd2zRzO%QJW-O)~@yC$`y7TAj z$w5&#Z)hokjpfOLEqC9sEe74Ctq=Q}mTbD}nv?!$S?k{kR=Mj!`svBn(5_244n*nK zpc?p3kzw~prjT!@A?@OcEcofRD%YBP6$h3={HYapO}5t-!!pEMT(tAR1;so??41c> zem?oFf%?%xG+eFck%UXib5aga|vCD`#28P!7-Wl|6Zd*?C!Kk zg{Cc1(7_5}V|cbI{a6{`962XHfeW%ZSZDJ>nf)-{?tZ8)v;}J>_CAeRzQi-9BkwV% zR+u*X1wQ1ypXei12AbrB*?|DsK+w0zfqDm`2pEk8;#wU9+N7Y$N-0zILnv-^!l-r( z_bh67LNl(#8>#lFy&reU_i12Y!`vWG+w7WBw zv}Bofs&qN};VP6MJ?!A|S|b~I;LrYWy*GIvRU`v$Z@^Hv-WEA<<8Sx#uyaB}dR^!y z#WH<-tTH>^+egM?1d8joQXBPE-fPB+LhftBtnpCL&f3`>&V%0U@0e4jN@LNzjz(d~ zO*`LK5#{pPzXV^AZaz{YW%{XzT+H(Z-iH#7TFO~X=B7^MiLwdYBd`vn@AydbC*USV zNQoEF** zcPMLo{(=7^g;QKrAZK_nSC|!5^s{aRjU0ouo_+G?OpB>OQQ9yhSu7d7cD=Ua{)X)< zeO~L!vHXQRES#(ZW{Ug!DsjMdP`!uW>Bk(OO?moEDtD|(o1k(wxeb8QOnGf%rfyZo zHH;CnfD&y1SaA5aP_6EGbs7SY{XsM-jB4~ik^UlYwGX^luyPZ<4dV?SfPp zER3c>(VpAo9%y*<3t|r=2@L$Im{M^rP-M)-?qZOKOHd-@HSHvfVa8 zc;+O_fmcoE-Ho`1mYH;U85z+sp~h%HXgE>ziF|n7zF#zlT$BWI6j+UNR7pYAjby&v z-OUjzdvpy;EGQ3aN6h2NKN+%y{{G`kR!|U>$iKF}5*0+EltoAH`+!Cy9`jA27_ctn z+jxWP8`!9ohT0>x)%Qf)_MpJ6GS>xc6f zjLpz!=+1b>E-tl!ged)d{}(>cmD!L3YT3+C)0!!_DXTZa2F=1RSHF(vAY?%w7)3%l zR4$8mB-|L5jhjB*PU7u4Eu|G#pfAS7CF6+O)nt2;?#tp9D%Lb=5&u$2X>0q(^zi5? zHO6P;R?!UV?BoBNgT;w;NoSyNQglkBnbU#8kg- z$f$&jcQtX1x${X9M(4BozqgovqQYr}&FMJE_(VfM+%i=@U`W``1{w1?Kz+RvRD&+r zE7jJd<5 z#{X}#1L@We5eC@;RU-9KcsRsFvZwD@W7Jqke`&Zs!2gkee)e?3tr{C!)X|Sku~VkZ zlcCHTIW3`OA7*d1!n{3OUvDImRnx+f$ZvV8L4co$4c+14@zp6jQ>_dI669lWY3+>J zinu#jXFSmEAshs89o*1|i6u;bjPG#F$Kd;K^;Z#}TpYR{73#CImf#^h%w8J{Dr*>8 z@Wq_x_4Pp6?4er6UA(i|duPQ@ht^T|qZTL5Jy3~Xsr}a+b=-D=u2EBsq@XAP#DQgB zBYjYB$d$N#;gTNduE2KguOk@b)_K8fK5123?Kd|7455y+#z+2vmq-$KzsNf?l-uRlNOb^9v)V{W#^Mq6O z(+?+ac(JtihA3WqzT_^C*M~{2!7Hyh0b5GRpZ_-}GJMD%8>#0X7ndWgU9Cin(<-ba zBYnUH`138Tpq%N9&m9R7gVeS)x0)e8PW-q&OHCCm=6|KgV|Xb(Rp?nDu)c{J*Z4ub zqC`O9cXJT)#zky2=B zjw{zDyy^Wj%C>h3yc(@-+iqhBn3%JONP$Uq6b)zfwD?XC&Vw0NvCvg1NxN_6NI+tB zrS&L7`4@Go+lkKj?m3BIM9Rr`Xr?D|0&%UEHtW9#gk^f$9mE7F>1XN#@CsaN5*G$x zfGBJq#lTwNJlA)5v^W$s6D+=!a7RDzB+^}8-}d$4tc_f%b;kW;y`bFqDX&F_YDE?U#+H44s*2V&kZsqs0re@(3GDJ_WAiX+|bpA z>P4G3@S!rZINW8Cj#T1PF4X4HcG_q)y1v2kp;JuG>(rodn^Fxlw7pgQ+* zkP`+7zOlTKm%V-VL+xEAk~iJiSC$yGa>={tKRft~cM1}=Yu!6Gu-iX-oV%!&Oo%@I zX|kBSHp)vcd)po$^v{w&VJXpc5dp8dQwCm(D$0Cweb|f#MjBZ?=1!}n#;W6>d*p~I7?L5@ z%!c(LJQF^T4?c5gyrG!{BLn#^FgSlf(o|AFH?!6ms#fCtVst50?SF)=I4+X zKK}(n?zB{kx7lv#5o&H33>@XaB&2?1SuC&2c20+p;NxMd6fSd?DcK01Ff97;37b$n zuNFwF!jQ|Owf`dQqghOXsgE6u_JXDGm|-V>gv!Zs2-A&`LE0yWxN;s>=}YW#U4Fim zH_HiM8rs6MGo&QsB}{F*l(fP-Fg`FFV^5ao@;mY4Y&-nPmzCD9!HOY~Z^@-!9^bxH z+Y4A34Onq*qoC@=QHqH|^J^I}vRHM2E-iJZz%#*%SzstER${??w`cV&oju}{Zb9(4 zAyQJL_@1DRlpx7e=wiu$7661TVF?yC5`+QzC&y zgtg*f3Y>rOND?9MsiG;-*A^b4Q3eJ|aP%tGkUp9WMGvROC^3pCd^-hRp)*n7%>#gb zxwNy6regt~@T^NX6}{Kg3CBi)|4uE3^I59m;XI;ddmA|N(sUYb8GITzur?1uXYKoB z<luWh}x2KC28Yy~M0NSeIC7Tz-K z>RUe#IP&hxenK_}_&AT^**HmKyqv-pzU>i??x39`#vZ%kRSPu?zj5zS<*lg*8)vot zL*P1W8Gb*q$-{$Um+Ny#CrNtK`psvZOStea-%11s>0sj08~kuuIw%Ta_d8}??7XsD zAa85RtbN|BFFl<=?e{4sn{UqJ^$IunW=`d_=b2FENXP^)gg7gcwPxI9@uIBaBF5$5 z3`~p_xxzOo{^2JxC1mSbezs1rNp{^mQXOPa0}mWO3Om&NmQJ;tflAphWR%rP_ZQqV z(a<5lQ9N^j{>kq;+89Cy^x9uyJ~&66_ZUjk-3FHW|7DN+E36M2obR-m;I_Ma{`}zn z(0O=xI9@k8>vX>gCVSaROF()pAdTi?TlBgDh<}`S&bDmjx$BsK~TcQ7>qmSVw!x>lM+<{Qly(5fD=x*&=nSP_Q+lJy#0)2OD$b5rck> zY>>TZ%F^NhL3e`E4mH3Z8nj}*7E_t-L4#;r698Y~;2_=_d?k0+NDyiu?} zz!WD&VNEKfRdp+;_bt3F4}wQNJ~>jE*rWkuNSUjv^ru6WDij-r5|7p7e#t0sCAFkj z2;a;U6P@xIZ`haKp?Ci~)6NUw_!l2NUt_rKnW&eFf8nMt@GtE7YM`CfUv~x(J(W#J zfPQdVJ@%cVb?zc_Y?jX0`fzT6pl!{7A)+<4;kY|mwM}Z}dFnG2T1Sw|2^b51%6 zpytZKQj$dDx1lYr=;!KI;^nQQs>!sFOqP{Y(MWhf<%*9wat`#mWoX}`RZ4+NW^AUB z8L*Jd;*Z;x{@F;WZOtySfcBq<+eDv++y42q*AUvWvRTIi(tX<30r%et5$?z@Ult5` z78Z^nenkv9(#Kx%Wl!rroQ%H=MI$sAEOk2`2z+x~gEzOQNR*2P-m7=H_?Z+V%Pys6 zk}<82R80?YvF|9j-zQvuauO%3D0^O|2RH5Y?DFvBGoa|iTS<1AFJR(*KyR~eKI8m& zIDupQ&Oy|^-4Fn+##`Gwt*yJJnZ?Di+y`DPr;gc1UhfCuN&Z3)0eQ7|wl07=XkH1V13SSo&i0d^hg^AiYCQ1}_PnljfBTBo zDCNOn?UQ6S&1)9xRuMI0%vQW_uh^~oytu|w954{6x8~I3aa*idY>o%>sjgBI8~}MM z7T+vYDMo?yA*9+T4+;ZrM{P&DYJfTZZ?u!OWNP^LEfTtJa`*>wf>y7>Y z35I={{u1+gF@jBWhwUFem{-RaScKFu?6|Ho{$i^bii3nlqhfoJyXS3qB zNHHO$rf#5|Jl}CkxUz~*70gz3gj|hBlV!EIuP; zrdD;tZ64g4?2@igG6cLYrZ^*ZNLragJ*U1B z4PGuXRQGSKd48cT8mR-{I}bHHMPd%rd919g#7npt5Cf&s@$j$tBDLbQbr=T9G829} zdq-+YT1t(#VeX#m`U%Jb)0@s6mOhpIEW6{Q$Hi|=4Y`hmoZ0^#9lEw27jC#gHxU#1 zguR7|akwKht3@RgDX@@0LH0ge=Osw~b}{?fUx^T=+G2Bc8EMncrCe4#13y zXOJX8$u9{m@7wS8$gfy|3-oTGQckc|-2A z0&ZBcKX>^3lmgVS2;C4yZvJac*&!fRJ8Tfv@9^-}yLNCQn|=XIrO(P@@hhc;Ay`mv zM$%Y4WwDnCEa>&OnR<+V;g(+#tq6|OH%?o?hrY3{iU>; z&Ng=m&^0?D{5#ibXRQTYNmApdaa%(+@ zF?P5IL(TwOz!uXmPU-}^A}2?-QUBl?rpv}fNls667kP+WYG~{*jsTgc3;JE0)g}Nt zc3mCk&u(veHOu{?_81ZZuFpsL+r}GnM!zm-{mjar1c0TP`7@)0_mgMq9Bv=f{t#oPd@M=dg-OQtADjA$_I{4 zvu1Z^fuWOlUDh0ZoblRw?^V(g%NxRTj{P0 zPI8``vaYWoRvi+xHbY=sBkp$7lUbivlJtqx?X$b?-e8m*3&PEBs|rN^xLfP}((qIO zEPMOBuHViYB`z=*q#gHzpHO8RbVc|wI^yY?ZM)S|Bgy)-F7qztBqAj##)4&J1siTR zPRTxFsU4j4DA4?y1+7C>>%$HqUn&DXOX{FRAY#5d@tJ7TpPL22(R)Eq4sKpVN7;{Luy^J`i$d=;Kxoj_Wn?@mAQOcTa)j^MZ*Q1D+7( zOD9a)cHcfDuzuQ%iv6EFMpvCOuZi7rLL4>0#{y1G}MqagSjo$J#xHBHwNF zM5-IEDQQywVK}L%oZw#?!;1fAIRA*dmG|g8;o|4gqQr27Atv#xkrzn#x(%)Hl(3ac zTLx^9N*YZh6zJ^^0hxaTjYr9*|J1PxQpHj|zB>!S&3q63X1tBA;V&H0>&FH2al(Q| zr+d}0<%`>7VXqSD$k?Qz6q6`>O1a`3IR1IK&_KbHSrO%cV!mi#9w2<*T-pq;%rx z=$J_Co|PrW3+30m1$r)q-1R!ZZO6Tvo~xpo_wyfA+6Iyx{frOh2j#}MjCoJ|s&z@u zKD9%IuESMFsj%)T?bh~_r=UoB;YK}MIdqbIazo(;r4pSb@)96Cyyk(vu|U5LdDv$W zO3*us^z|33&-Pmnbtu$WDMb#uLTu*-?-!Qe5Q(4ED{kYjvk(ViB@cln9?*Ndk7r60 z!u7^b^~`N;M`we)wl*soS(sJAfXxz{dV6eV$Btff83LDJ#9$KO@clA`l6p{de7cqj zxCGH}a$W|gNe#Pt?scn~xolPGHso87>kwR>-D z0KFQ&fgT@x*16|_&dT7;4d#WD3V!~K@ZxA*G|UMNg)7#JFe{Kiqa$L_Wb zs-{bj>D!oMsbxPfd9tkMtcCF3bfUQXJ4k%z*)ZW5aF5*?vKp= z^72mrlgcc;k@Cmee~uV?Kp&}h(rM?&nzXbG9=?M*`<^h;$>kjeMC+G*84IZL*PH!- zo)ZVc^)`v~d6z-XfAvt-&lD?0aey}BQrFhK<}D5bGI0waJ*=+>W@R}wNHDp76s z{)i4t=pFi!Dms`>6U_N$?Bt}S>bQL)0dAD2b-UM5LUaDa#WwA=X(9-KrRcF!U@o3_ z`5eEBIWY7EUaa(#!f9#ay|W2Tq;cz=ReGBXeM3Y`&A>nwUuSK1e91Kg2DE0kKbVV_ zkgy65vL?u1#!zp7mofvw?+NitUGjQ>H*{Oy?{eA<#cw2LVO|E6vD)F$AT8oU9DPSo zIj;kv&kt`QjFOg%`)E7w?MHwKxk()9aI@KXbfg!dR#&)m#;tfUkqp^BGlCxfbyc7$ zv}EXsz*RqH8~0RAFH?c@i&O;QiC5^^jZ~UOR@2ch4=0s5VZX98jIP0sVD@$h9EH*Q zQ{oSSSgkRPZoA&e{krXGqzH#cU0X}<-dae&quj+;t9H$qjr^7x-_mfm*nHYJ*n<%x zm@haQFj%_!Al-J9cK0TRe}@~8eW2nIxk~+s3iGn{y*0O^Tpf@WtU=+z0Y-)V-C@_$ z&;c|GXvks;>}vNotDI`q+C8@8$srq-%*T_4xf2tHxgv-g0PdM+4E3erzn*`O&&_TG znaEQ~QvswzF>6@jvp~i3zze=CtNk{)ys{E^oA~dY^GKUn=A*kv$HU%fV(p}-EA+o} z>xW7HVmTKcv>@s~Nxc?x+!o6ahPCAbrH_mZ2gy=IF#;h;SfwJ0E8FceFAsaSmCB-2 zg;*5$Z;^3A25^$TdQQq|A;^6PW}e7~vr{o3;@B-K4cTl-i6aG5jRg-or~ZdE&&9R< zt5Ww7yJ>MC4s&Z&n#*%r(|ToSddTo$^LbXlqYJErpogMNU-7lZf+uN`GCb70uBUhJ z*~t388#n|@b7gn!n**GeNm1SL?*T)TvBm;d!jCawh?wuU&-c%7tGygJ!tG+`hZs3M zE;jmhGoMb1MFpHR$r34thL`-DHjEv~dd-?WY3836B7|pwV&Ju-J0G?K_<%R>K{2q7 zq>&{!IfLL-r=n*v{V^GR(4Zk94j0l z8usw{hmKZ;K;UOWP^*k6zPb(5;T+5`!<@0P(jTwcmAMfj zRt|xs4&PFBL;EcpEG+Wx$azUd#GA(_4%;wA2g4VPYdd~VGVvX3kg9xvr`j`Y)Z>C{4@}**CY*g5e=ky{dd40nm6k86j`M@cK({K%SSx_&{K2>MCRNbrI4c$|Ab@!c#dBEne3 zaot>WYmGngE-XcnGKn5uxid6_4{vE=L%d+;U!SG1)6!;xC=_(GaGxh5xPJVB|GR9)bV?pDF@HrieH&1!# z0>$KA@K4%#=SP8m!zT={6=fhRLug}ckS=D<0MQV#jdPIyE81K1_pJ~^ih)R==kBUg z)6vB=6ZmF?t@9!ad_SThd6T`|%&jlNI_7FD$;(~nj!qQbe=>Y@x&%~wGxpm}F+#6N z>f>Rw9DjlGXv`x#<>$sMi+F*n^X?b3hen6xY0{+7!h;cpoymafwbXO3CrDn0P)^rA z?wzRLb@#8H|BtP|42$ynz6aoYXb_POkp`thx)JGakPZPsS_A}PXaVUIkZzEc76%1M z1qBh1lJ0I8W}d_6_x(TD^WwQKec_1X%sJ=YXYIY#+Iw#`=x<3~)61II5}RwhZtqGf zRP1@Lz=bBxgrdN+jcINg|KtB73ce^;K~x@uzNXslhAHAIdP(ouw#+ubycX(wLV zm{Pj*-Nc1xtE>nC978u*(h?d_dXo!;#kx*2#$&3cFC4d`I%7Hk2|mI6T!lXnBhW^r|`x*NG8EsJ_q87=E zrVEA^Hnnv~uUQu6C`(5lDEqO95pITcDk5QN4l^J6< zd&OpIkr|QD*dbwogFAv??fV#A`e(^Rv!h(6wghasoXFHyg zvgoJ9=Ff?tx>gM?fZ@(6|I}+<$YD@fr~(??aUMmJu(ndYfKUM@egpEvM?e z6zE!@Djm4Wn;(Efp0NtZP!$VCF)YP)pJ)PjA~jQOpX3F7iXO-1A!bf}btB z4C(ft3s)Lyxy^F|8p#&=e4hRlf}{Wk(doDNMIYV4&4oEt?|#=mBFf?E(_%rhB;J4R zyQKxs*Gws{({|y*Z8;kEUrk-_LFLb&?Dy{tMmLT<+P0>j&j&i4ihe#-o;Uv8lYv>G z5&U89^F|w55oufp5_zY5wYXy3LvbeJW6TQ?EV*lD6vwX`JQY6jcHMjbJ4U}Xuqf8< zwf~x)?`&XwlrFJH>Rmb>gx(ZzrT+lD7ORr@>?%|!dhoy7 z|Ic&7Elma8FV3&Il?~m+WlS{|a=V)hr=~tFdw!u&->w;9|B}dTNHImuP1{`=dr%w# zhoeX8>cnGj&vI$ds8fqc{XMtyS4pb$`6yhNxg?OjFLN}Q&{wDpr5Z^RM^-G+Ph@@g zO#cpgHoo>y(aBxHisQhC{Bkykyq7E7ssdu}3Y}EqtG`Errnvvq73O_-&Fo%i7QT50c2Ci-e*6eibWm$P)mK^}khu z=>5Mfp|QT42fcUT9!EC-W=a`xUcv&zUH___nNNN*ienghq6K)(TZ!GeEotIi5fy7k zwdSv{mDjSQ(9NYzrG@OP$HyPzDVO$}^QbaGSv0OxuOdfRPko{`=xRMMC5aSjtLfOF zdOSQbayEX=aQ{Yga<5PFt3mQpCWsP*r72rkCj{`De`LWRC6WUSLbd_B+E+>%gU5#C zb@ZT9um5!b(?e%$5SmOV{m8z4V7$qVy7_X~Sy5FW`r9Tny>`cvD@p2grfVq+d^|UQ z%3#jWi}|2oQqt%md!C=e^3@B3W3Cl{kz2y?+1p@b;Ts?o(Tom65_0I7?aIon^lv%G zvURSNApH#Rf+dKz&+V!X9scbkO7*6FgWeoDXe?D z&1|GwB1FDl0tMay1qf4`Lmi{~k#&X@S9_C?oP(kxgE-?s=vQhXzdhLoA%?aW+UcLb ziBJAa0{y(h7dn&WZhDSQzNM{mCH{4G@Tv`K%JhxU(ZiXki3O14M%v!7css+mk#3V= zRqZjR%JJ)bj&%Z#;j<#&eU+Eb?ypN7_WhalUQ#jlD{MKQ*7y?w|LYh>)57XoxmZmH zaNLgWrKGq}a&K%Lt8DU=;*oHJ^bo*giB6=ueQMqLqenII@oDVs4# ziP5>gPK7wGUb-W7{FwK`}Y6H(orfyE_BNqvN?lHfT8{q{e4*~c>11nx?nK*I1-K(Ce{s zdOkQbg1wa@&&cHEI3n~}?pB+Lz3*Nx7#jw_g``RbH(yJEer1}SDu7zcUBV#yVqB(p za#FO|h7EC5bi4wW2v$bFA>2g-w9NMMbD-uK=;XDInqO+p)tlC98rm{KLPI#d*?j8K z>>M%hRH8x!32FK&+Aq=F$Sr4wnjKf+$7=NQ!~KP3uHvfV*t>tIOjdrVJ*ZZIF!G(J z*~PUK<3J@IlNnVseRDKAEjTpxS=@auTe$c?;1+%JV|=qW2lw9Kd>@4$T+W9oW0-+w zNuyJV**~1q&BW}7b?|CrQz7hK$`}$a46# zF!RWY^qQ3wC;FxGv0e-wH&v{nCYG4W0o(@2r^P+Rij(oaT7$aB5z8VVq{)iV9kD=c zmj^%FA+QN$04HWg3+=W{Dwb9H1ZeZtl%t)(KYfPzhy zI^9jxt5RIR1r4>-JcjL|fx~i9Yh}D+ph3HuY3qEG5R{_l?<~;9|~aC%mM>!@7Q3*7ujs1C(FVSyiTaX_~Me&gL5@8LxmqQnjO<%=&ZZ^2Km~ z9vlReDUogZTW$c|#P!q6EwTI>uGL11P&P*2RgdgmMj5_Guh--_jTN5XsHJDyKxgtV z?p3q|8bi}G-e;5dBU3j+A1T`Eu;L6Yu$zdu%*_e2>4v5HKDVZfRT?)QT=rh=9bx&(Qfg{%GZB*Q72Y7P5eVxeH15dH4^p z&y&rr0AO0RdshVWN?N$Qb@CaOZMkp|J)0nE`(D`xd*2o-xMOy+Cz% zo?OQ)Nl8o7T?$+7Au;P*r{_TX1}E{qRdg=XKCB$Jl-u?$ALdSb-~d74!E}O&7hR9_ z^alE)5SMYIR}6BjMIzW?-T6Q`|B(#$J|K)9H6DGjpYn-l1;uIlGnyyK)}}_rw|c0< zm{p};baDu+pJcFA6ed}n0+Z{Xj#r~ECeFYlX7f8g1qR$m7MjaRoTRgpJ2F@)d7j_1sZlgu9S{h4x3!}$8KpI@_L zap^aS@x*d-Cewjz@mP@!v8D<~sWF1*ABrD@+nT5X_GaB@ZD*E1KPfSpvA9j^>+RX9 zetc%j+Sg|E89dn-QFH4U=%$ggdju7%*Xn}t43!4tfyWJD)9B8nJ(mOwP(jPw%{b?i zos~exk`h)t1RW7(z4FbP*ErNQ=sSV%GSvtITr4TriIO*BMxdPIq{8^|f8~*&g&Pr`i~sA9 zi7PggF2uryzaW$>`OunIPyVC&y}n- zat}R#%Rmm)#?J_|{!iA06h{v8Yfp*tsEKERXzv`AI`j0ZGp7Op*a-uvk$8Hc_+%rHzN z)p-{hTK#2JWCrJ#MG$$Zd>Uzfagc%DtJti36-BK6ko6u!PnJ23_lEOqylkj#ADp>3 z9&ITW>#e|xX}c+zlA5@l(S{wvY{21R<0Q<^Au&-w`gram=X+VeV>3Q~>oNQqdpFmw z5BkMb8y58Xn_z;g#H@EV3PTwwCJGDN=f>+)6*R2cp>mOFg zjjEL+A}jbzBL4A^6y8Hff=4I(@UrlCsQG1r`{W)ZzSpq*&XeYD*+<@*gb^9 z92(;hwKpeClyG2euWR$ToT4D~rhP zKBIknDh+gpjF76rBZF#>J!FFPm=(?EvZ9@9x_Ix8K`g7Qs}iQ@o@g>yTCsHQfaUhH z>%AZF-=l}5!CCPv>8=6cB(qVhwy}>KxXFPx90Qx?^UhZ3dH487aoHN4PLJF!SYO(XX;+jRSylNl)&fI?oEx0`*OJ>Fd zUGFo4Dv9(FUa$=ta=q58&;yNWh{f2Q16Rh1m`~CmI5;zvU8I7wckd|o6T~DoVgKAR z?wSkY*)9|cTT}jdBjCSYgh+8}w%ok>GG_OJGp^mvuhe=6Eadm?RaqKhbX}`O6D&bg+>Gt0*9V7G-W!REb{D!X|FuXQtMSJ7< zzUPXp>AakPAD&Qk^McAdF`mTIgE!hRIc-I`P?RE|X5Jh7ihEd4H7^AdV~jOmkZ};p zcd0JOl?+qEg=AUO^6edHBD53?jz*RfnWMgRmd4g#)w0=BHJzx+|HW#gX~ zJzY0&Qi)^BA2zg)dsp>=+7{nT0Ol+GLp+hEy#l#Hro5Oi{=&%l0~~K3Da&lhnA?HA z#CZma24kEk*QY0h!FIPNI{u&7%Ul`yji}DMpHtCyZB?*&0`Jg zG;1NbDAffQ0e9*Y%^pu+UnP`qiz^KXdjTb{~qJQ1+9PtM22;=m}| z7P8YY_V4^-=#H4jJzTBZUkq!R!U4aTnuU6uYu{GNd_Qd{A3b+@@`N0g8&q ziQLCbX{-*^*r3#8&F~r9>-pz`^)m94l*A{+63~uAb>CNcJgA+Z2+K~D0{D}N!$29j ztd8M|;6^iT(Ei7|7T!|1W#o1Bnap5OcI`E@=?ENwsY9;#(X$tg^t~fO8E~ua2vw$T z{3yLfg#23Jc-T>awCYiADKo*)5{!M>cmO zl_6_tCGT6b+V9mfc&md>8}sPSltZuQ;l~IW6s^@&5xTfMdiapczsJGh#J8%=O`z9{ zir1VyT(`8m(S2T~1c`!!$|v&)a>P-PUf|o{pqj5TI}vrNzcNxcn&1p^pS=^US-rn{ zqcQ*=z);TdF@* z&m$OPBmDZT*7>795DTwxvErTGMT>0WJG!_ngsu2;rqk%U&LG^YmKyNdwIg7$%!`Q1 zQQJ3G_-c5h55qVWtCnghb+@4V;(LuHhiDVw!pLV1&5gr zqmm7!%NChBI-X}1sJOg~zKbE}iN<~Wo9^Er(D;Em0Os|1jH8UK2cb^#Kiq^JymuWW zRwiB-EYIIEW=2F7S}|Vkp}~1JMbSR-hK$O_i4YH6dQEH`9PTIV7X{sY_^@77uU=b8 zW{m{0Z=6~eUO$G(q7D)!Ky&yUBXaxl*C?x?r8_};Hzm8McD(ZRbLBCi9Y9|f3KXiI z&UrrN+=h!dOY$Kw1SXBq#mvItD#gb>XCv3Ryd48I2gb0&9tY~);b+wZF%O<$Q{O$~nh zJ=M~9n|vv4asPXTM{vwL=sO?8jvtKmMX;DMFJfFlZrBKCcsa9luPE1soDp>PBG83& z$kBvVX?v<)cy$wkSnf7{5hVGZT89-Q$c2Yer8Wqtauh zS=Ei-&cn=pNUHR1Ub|0wU0B~!)n!?MbZ_s98Efe0`H0v4g{|%N6vt|k%4d;^h&Nx~ zhfLB1wm^uZl)Uo!DWo~}vXfs@lGdq@0C?k4OCNJQEFS1=gqJKiMpeymcrHr`lik|CaR7X zj8QCg$v5~r<`gqH197xAHjOr8BD|}nt)UkkuNEVrs(Q31GRCffDaYG*xw=_xCR%C! zrfEW0(`~w${>>TU<}NjT3>>sM#P6Ue0i0K6=cF$QhX~By3-q7(T2Kvx-uw5Iyf_=~ zm5V(m-kg64)4@uliTKW*-0(Kk(7S6xC^M4O#a%zfqD)t?uiNVrk$Nmv8HfE11FTeC zvC+aWV=fgLlhu6zANLICJd{YU2*bU@W2Z74(&5FbEOqsZ8v&IEoMlWEMRgiQrC<^R z5HmSlE3zGH=YCc$XRib9@kjEuiPUl5n(i3nqRSP#E=FFO$3Hix(R(}3{%UM`q<1dp z_VOi#nB!**Uv0ajsH}U=tr}(EUaf-%wN=tiBr?C9tiA7nB++33rM+T;NaKGTyT~u$ z=4e&T18r%LT6Z;zl}~G9gcknOi4IvWyVvKb(uOI=mGiW-7eJN~#MSBBYVY0?;8Sel z9$Kw7Yx#I_@rq1DkBoJwd z^ZVF!o=RzBk#j75udr6Z*6(Vuw$cKyT5NXxqIY zXVk)<{$aKQvf?ATj88bXWyl-o+lGu(ZJY=T6U(Iv*-ETrh}) z_y>0=a$mOl)%vY}z$2~ukq(eEJd@iIm1vQ4ovxm1>HrmoFM@RTjuWkmzQHl?A;0Mb zE@xtLpqHeWM|;vfC4OK&F>BuTYG#+z zEpaj9Q4M0Nz0QT!N3O5I7>g|kBpG)|*_gC>e&f)+jvTXcjX*6W85AB7N~I1jti{iS ze)UOc>$X@=*B^@rIhu<)GtV%_3m&9P$D!+EfW6%JQ(>#PoqaK_0%{%@kE4@K+K|7C zm@!=Zn1Aj(&^uAa*fRaRibxV>g7DsszUZ)?qECVZUaAQ4g^gH*AMG!BBm`BKtrRj? zV&w#OR&L#4!D6Y51y!xtD}=Ga!3EzsJq3w}W^2F+ssFW_BGN%EDKV83!Nv2YTk#;r z!R^*cn0(>4Gno>shb4)Z3fBGNXC~GURWCJ6>?;&~0(T~A8J=tBcTn$+!Xr0cUIo~F=$@qVQil7DHOc(cE&m|ifYB*Hj8?wK9 zd6rRQb?qZO!2kipubDh@Oh)%L>Q;OA^77MV+7g~Izi$kPwvQiEbq$*qXFC91!Jdq6 zN+q@)jdY!ktgLk4%~%5ByVdXCHS%x2lReW$m+T_YKz=R!duJZmDwy$>#dnrs^R!#$ zv#k8bAY**2Fa^;(K3VbC1Z_!qwyZ5Pzhnk4rVd8@ORdy=SHHvai<++TGDZ`;KcYrG z(MO#@go;B9_ZwKh4IbdI6NrTV$C;Wn({c4>lU5dDje3ffpVY=e>c34IULvPWe@yte zkSM&ZQSMF?hj?mOJzBrR*nwdqth6~F+4fnzn$NRZ)=L-_VN;9I3QG;vl@Oa4RH?(rkLOpE40;DBEXBh9 z4Wn<;3W9I*WiM<00UliZ!ek;s?zsDH{tK$-1TYFEfh4^v`P2u*crib>=x;;RY$}6# z<1olMlfB==?-z&9)#I+!PY-uL5|y06IsP_U>5{XJs@(^DcBIZ6=f&2tU7u$;#K*=O z#9|GucztJhzC_jbyBk#VA+a@|hndSjarzPTaBwB;$AjOkgUZRwCw_=ns{Q0?ju5*1 z{rh(-n*J~4KdGzb#u3dp1~KHg+pQ3d$7odV;b@zwyxeqi9C&hHDxe=!1HVJ^jM8e_ zp_As=O@uA#T}1WD7?Fyn^*s9Fb+oFfZfNN1TAz07AC+cID2o4| zV9s~`&8V4SMztuE-EmK(g;BTdR32t6=D!qymGqxZfD9^9Evdwm6aNZRU|heahNqN5 zAT$=~Hbucx02C(xJ1h_-gfU3t2Q4ObnJa+3TtDGbq)Mzl*&KqXjqGE~X9E+CxhP0< zFdl{HGX!AEakO33>!%Xy7?JNqMGgBkq|NR}!2yj7>TFfSIbIl#_&mzW$^-$)M#oD| z@Hptpzh*|q%U^s!8~wkoWG)oE{LVQBCkGgPwkJ=s{bkUDCwJxpR{oPNHQ9sr8F=~- zzVJ0-Gmbd4T}3a9VKg-4=DEux>>vz6t@5Fc#}7At{P++nDTOtl&*>v!+}( zT}hr~Ie$wAb=1CE8%g$-bg*pZ7VfOQjOu!QZkj+SAHqn$4Nmnzr@-rviC_Pg`ZE3i zC6lEAQ%tW-{W>8+E*8dO$s9q@w_uBaN#%Wkx@BKND)X(3J0baf#pL*vJ$3d5?JyWL zWr~~K35f*2YLX#Yf70EMB@gA^1+9BHzi}`O|I-o<0AGe|%PLnP9LWw+gbIU~7-T}q z?*V1K-NRfi&#Nz>PI8@w`R(g?8z8wjN}k{yB*^{L2VQstcK%J1TGJo8TQ{q+N-K-} z(gJ&Z1*+2&#xUrmp zEy<=P_O0P1$>F}hc~=Tr*;A?B*Waic(jfv;AGjqQa6{byDfuE+3{t$!U;9Opd&OQ5IYT^O0SxNCJ_(T)Xv>Dy z%b|u&+@9G_TSliFee#YIVsfEB`;XSAcm~_eZ<8`s-d2e#)Ot_*W50UB z%Hr&phT$Y?DlQ6gD_^xe(P!wRJQqMeu3*#!$)ZD?He?=|SW=nCV}n2`F!$@cd42al8Wd$a;1FvGX6$&dMJv>}6-HS(JW zl`)1~QLa|RT#LW;H}c>8a5=-&$vCeTI^1+uT(S${u9Jl4%M?ZA4Kr<$-N32N_$+b| zuTCvQt3#-x8tA~ww@^iOvs%g0kLQ{th6H?3RW@8YB#A5Uettmi3eC@+%`yFQpr!&E zF-KD|IXtWd7QvYMVuGOsewVVP;bR9~HXK7+=HUl&i>y!sj@&VG`Rx!t^c_+l=DKhP z^p{PVA|o;R6y@9p5SfxI3^>Q%UOQ)%ZnRqxf6e;`h>E0QNQwIt>gG@FRlli9-0U^h zucA#{Q6?;W#b`rsoy1VUD#!x41WoOHb2xE%1L57^8xINiF6m%WX;@Sm<+G2~_2Kc# z@iWfU*M?rtVZkKhv@02+FD6^A(ZJ=mx0;yzMj{?_Z0BqI(H-dN%i6G5#J$;`g@dL8{k_VWLSUmXf`_yHAc5FCXf!)xyi*fY#)5hp@1ff0<Ftvp5%L^(!0iZhT$ z--T{NneX4Hp6yJRQAZYl>^ZyB9dP30iVKyMSzKIPtKa}*GhJ?Q00vVB2>LCE9-RRh zMiV{g6qB=YbK)Bj$P!}p8>bRD0Y4EyL(I08E!HLe#(p{k-wM)2i$z2{Z(->= zsMPbn>NCAHq)rcfS#L%qWK5>wE(ia!z0GF&Sj2~>0mXGbKLw{gtpvu@Oy~x+WRmTQ z*i5g|7c(~mw60^?*K}fmd!#8H7Pe7z!Zpdd^|!%MBIdx3w4@I6bp~iB7_}>d^_kMA z2rB>57QJEm`9NOS8Y!KkQ>7%t8B8k&g9v!<+j1cgGOy!s?Cs{JDb z3ny0BFQitqAP8@u>5|uS+ReL_IvslTQBJ%R#b+vdr2%K7XBndzeB@W(+_2l-cGdx-h1HOI9L+KfrAY0v!Z``%;QG3SmtKzA!jxkv>% zW+^_>GYq3Z6Z(NJSV1AA)(X|UC|Gbnukgt6;2+!Z74wYlx?BBsY5QriCm%Laz(Icy z@avVJu^|!@qH(2}dFfMn1}tiUB-UpdenTHEO&-l{OTA(&;_3F_{HCP)hWp1G3#>ae z$@?0&sPe6CKCi1KKf$YDHPnf~OqKhoIcRYSDRBAxdH|7Nbp1P!bWz;6*rS5pHqHkE z-?t#B$h^356u76KAJ8!Zg8X%s z0u_Wy!2?{0H%EvVN0Q;8bNDwtU=*n1e%4Mj*3i|#kKvxUwb#xYi}%(F2*RJzs2WCa z4pHPphM9QY};Aw1`0lVJL=|#YOq1aS>4{kSG9(c!Y^MAgJZ&oZC zeO+0rv!|H2T+_|FG!vYKZ8i2X&swjQ%!fYhWzy@q-ir@`*qzTUtfkzr!KYz-MvH*L zYYeGYB15boW~^Y00~7)p!ZKo)t>hru?J9!@fhwg@dO68AIh%tI6Yt|KY z83q0bhy1zW?F{n79tpk(aShNP@hiQS#{+H}@GS=k?NqS=^4jRn&}Nw0*Qi~lvXM~w zw_-N)Y1I?`U-hqcbX7aeFM^-_`3Jk8rfZ+X|Eu4k{FSlMuUOhn64gfU>H1q8V+P?S zmgm5O{=IYj>(e8t#<+f0*9!{u2;LIW>&Zj!?zcLczDHZ@8jcHM^m%U6+N71xfaywF zVY&?ee4*&S7w{YF+h7@>H@G4UDMRw-7ewX(m|DTZZQU(ok6FWg*+}Bixp;%nR4$Ie zeMubhe|JR`n?ZW9idc-tFiyNb^N!+}k)#Oy+ z(6bL$!Q7p1S@DD|)`Zd09)+~)^0)+H{Wv68*~Ist7fbw>n|k)wYJku7^pE1?Ol7?h zn@9`ro--RAT2g@yMMeIpyJ%DRY^aMN{4;gL>sf@`!mjvoW;1RvW}WdGf*GT<_acEH z%=5In1C9MFAG{FQjW8@cMf$#Z@M#Rw3)TI#zB+q+_07q(Xlm}h z7(^%TrQi+WM9ssB|A2P^(RM-fE&*2H*TKPn2gsa?|gTkdwRFkrkb^o{aW?IsjmbR7C2KKZ-?c7bPX!-#c+rD zu=fJm&nPuV)~F1{R#w7~-+}t!H4?s>Y03A2(cMQz1(YC-TT}0mk|>7K@Am{+E@awJ z?Kd`^<(rwt31@XLh`70Yx6`*e`i=-Nuj1;`Ws4t~?ZC+N&r|(>=325r!<#zh>^G;U zaf2ksh<$Y9S?L$g_l~)1=pT(*1`C`JmJ0DFMLBZS%tH1|(wTI&zq`4*)AhR^J-f}9 z{A{@2=;9n@yuc)b}|#W@d09+JOx%6ig5`|aDIdh+_PZ>xhW+~D9nLd=lztRKNI5`%pYgyFONy9B)2 zd403zJ1=+ie~nRRw*^Oh9N&1r{rtSh5KAo5N&e|u>NziIZLHKk`mOvYl)NK|a92rq zuqGzU`kaTvRg04~R>qpu*NBRiL#&s~WlM7NnpodnjSv_g-m{i6!sw~Pmn+ALYV_;G zdgnwHtPAE32y9>HWuLx-dRC#wONhqhwlseY2*(Vi3axSn1_q|{ecCt=EyH3=-fl?^ zPG*h9k|TO3E4#OW6pU|7g-Ee7^6s%l;VjOyy-3ealD$|Jm0E#%)W0fCGm{33Ma{yT zZ7zqOyM5EcQ%&c&m=KCP)V>*9tze<|V&#$2`C|CACet8=KAzN`+D0u{ypXkp4Ew0i zMD%Y2X5GUP)o~$XHTd|}#ZYL7wDg}hUaMn*)SWMUG!IrD`medr?_tx4YQoB3D@X77d#h2z;m(q*R#qy?>>C8U|&^!H*c*S;r6Tkf~ zoSQsho?r8OnZY~A^x8@4b0DFv)o0>(D)Mksx5DZr=Jo(>NAzC_-cYJT^)vr ztUme~S7PT!^2HLv!T)QC3V~f7REjU>I6wx?_)ma8k9}bKhgV4H5&H$@`fm1Q*bx$k z450A{2;_kLf+bla_equMp9~kH19>v>XnSN7z?Cy;+L62O-j5(25TBIn|LdK`Q{yB|;rol$uXOXIz*D;$*<#*DyENM>z+gGi=KAbO z7iM4!_g9Wt{v^GZ=L&nXh=1bgoj4k*uv=qtt*&X+&I+x!OP9@Jp3}_oABA)ET>hiR z?0fgpwkZ}_mU56>JA}$7Tllg)<=~V81v9>nSQC4WFny2nH$dHO$pCG6yYa_eTyaP| zArR^4`@p&;8J!h}#y)g^SNb4mM3^92LH;%t1~X(X@xlw0bO*iha`^ry&s*_JB5w2W z@|Drdls4^K`_N1^)125lNN9N`MTpRD963>mJ_@zwfGJ_{hk8)PFBw2nK_#@8Vtq%C zOPVXj&t&7*crX&buaPfMw->U5_H*|jY$@)wRKmmr&(^E-aF zK~Y*N)d{a%x;(jFxWn}qZTf^K_xB#Ept4V!jWl--O`CwyE-^0m{LH!1*Ma`Hyru8{ zNw-L)vO9r+JuoOKx%Q9j(b2AvgT>Byfwg@ea8SyYRkUNrI%TO;agN65ksYX;>L#j` zG{7UmiIUk@&Ek!t9c0np4_+r5q-2+5Rm!WDHNx9-;c%^r`tvf~VJk{PsdjtLS}?l6 z9|wW(Bpnm^qQq26mU4a_m+}hG&3^NoY{__g^-VuEeFRh9%bQmqAG=5hWUdi4eOVaw zh$*$>tzfL!oc!5f^84ij@~rMv)DiXHK+=G-Pqr7+GjRG@3u7j{i(!fB>9T|K)2e3& zC5bxe@g>h9)^3qYTj?+!;P{(;2yOkShhzz0a-(?Jd^w73k&^7}+K2EW5liTRrtZVW zF~nK^Xj{_oC#=jrYitYFxe0t&9k(Ve?xev|u3uf}^}-zoXwlN?aKYcsPZXH>`|4ju z|9SaCpI5HqY_~-NgI>a0g|nHr-bZ8XBa;8X6vco(w=y}Dm6Fon1&<_gq)qij4Tsan zF}&BLXAX^vi|d5+O|*xZP+E*h>Em#-K*JUyVqz-H{5P}HnFKVCcv|cj|0s*MRaHX$ z{Dj5iCHZ(?z_ecC^S`YOLRS}pz5h~Hvgm5>5srO$B6D{Kd3!9ppHkq{ihnL1dv%$I z%_fg|E*yW_2L)y0DE;hQ@IG}P>%zOa5pLjwjc6^w{djH)qY|)t$SF-rQ_r6);e1DFiLkbzw4PoVH+z*B^&it|Q3=tpU~BT-2&a z!8|=1jAtihZ`(`uLqm0jG(WyHSMc52*tRn3Q{0yi!Y?c5i|A`fu*rW(-(K%cSQwOu zO?D+>f-QKoK@&Uo1b%V)OVaU3!FF#W+u{thU2H&C!K@`k>YhKIQFBgRuhX#poI_Jt zjYm72Dpkn)uYw%Pz*7{#S?JLy>d6)2)123TCziS9hNaMmc-9yafB4oV@-}+H9 z4_R2;pHj>IDFsHmqH*4+LPj}qtnw_QWBJMA zQ{PG4dPtu-PDnv@e}0hb4pqAF_9pkXLkchR@_;qsbGr?5%?C}avQ+ktw78H`D75dtqiPyXP?rz=1-U^DT>+AznPI}F3kw^jgZ({0dzsw&mUx;VpI6HbV17qLOJ-DSqdzPmp0pgbr ztu8SLK8CX%th&d==h!A4|7|9(TF8J_wCK<0T!IE_c=g0BmKjD?f0v(g1(XyPiGw_ut9TP}f!SoG14muQ@Z_Y|Ni&%<|cU zN1ia>HKSc@Dz9Es9?FVv{>JgVUJ$nIcgP?B0Qfdg`kN+hERz=2HJ^9%Sg{kY`Tv#^ zY6uU!2-(*|b-VIEuAVBzAC!G0raE`N$42$e!))%n_5-ur{Xa@`=kVvhOH>X8rUQ7E zWdFtDrJ6hKa6d;Mp@V^$1LV$CsbS@Tb+aB!*1APW*s z?f)jTdV-Gnsc;a0uFh-OIYwF`&wDMuWKiya&H?fZoBO2EA8!3D5qz+A+u|(t7BL^* z9an${*nFn|!S@V#^BCb3)_52IH&^OQ$=Kha&K+o>zZXM=<85IuHuWskLKCt#B`4N3 z-Pfg4BeGPTQPQg4jdIs_--pY_MjZaR`c^^2&H4c&|29vAg++{b0r6Z9zh;yRNw-7lMEF6^ zWfE3G0y-64nXGZ2$I3EIVN~C~%eFH+e!2No?pYg!It%kqgCX><9(lGm={f*sCoe>j zg+HF`LtjXy~Ye->|^~>!5uTL5yp=NY`Ss1h`m!=BkScZ21kgeHmwmk^iw$ z-nWai)6~EMITpO;E}N$}tYk@vfJ*H6lt2&?$6~vkBSP{MfojH-4dRK^Un>%ODHG$4 z_QvEjZ;A<(2#Yq1AP7GL;Pr@u;(q#jXZm>=qo1%h|9{ee)K4cxpUJ`BM}k#a?;RC* zpMQ@=x8UsfZLRkj{`4rp8}ykYE%z?ycsFU7Yp3hRE!9VyswVlS>2mCR$s*%mzZ9Ra zch>|(KPME@*J5SSq>as1P?&5u-n*-{3}Sc(6n+nSuXxxBF=|5!AP)Btw_(^rW2za2 z1AUW0U8DD5`Hjmf^IJ=@EAzTwW}WK=M!?D9D{W0^=yMlYn=2>gidZ^Bg5?l`kNP8C zFsmvvE^(+w)Xf6Y9D}$o>y)+n-t1uV;Eg=Pkn62bISgXQ`dD-d*@ToZ>P?Yr`a$0R zQnbzmmFmKemHvM(aG-F`bbIIDN5;apvuYlbDtg3H@Gz~sJh)XS1JeLY%zKY(_j_ZD zBdILitjiM-AC};H=8_bEK<086?F*znXfwJL8_X^eQKSkHy0^uP_I7yM$$Y8_bo(Ey zUs>?(R!|#%zG^8*-4T|=mEGW~xUyf1*y-BiYm!S(Uu+lTdZb%TW|Up@0#9v=%O*p- zrB%=WYObHzpCw|pQH>-OOS=ONsmrs+*MC?dGkXu~kc2gMPOS8&_ou>a-l~^uYH({} zsD-xFKJR4QpUFDpy9#R}yyGw;@-F#~#*=n!r+4>-X8XA;6o`BN)}O(xD+p7k;I(gc ztL2v9FAtFC^YB`GWEoO2o=C3yu(QGny)L=baVqPPzI0JAnmvvazxIY6^;7vO=(=bx z7E|3m9|VB=3GwlxW86gi4<8oN$-HjeMozS&9S6H^l8B&JN&He$+`!DHGwT&vP8@*7 zg*5fGV+y^CdmMzrdeNJ>)BNGgSmf*GI26+~xaW91e6 zC{DDp9bIA8Vm^zuV?cQfOjHF1KL0Tibl#m@%Qrld@j6ggqP=6wA6;d^P%CiQP)0cA ztku+4HeP;uZsw$t}$ZX}%yE7bm^?yF!;2*`?7R3mHq6JG>!i{v;BCwSl1IVG9C0tFlQIxh9Hy@B&Utkf>#J7Sk<1k)Vn+7Ru7in&>RjJsohcWM zJZ-D^TuIPRRVvfw?RX}x?^CMT23&d19d^7Rb#Os7h4^zW++ zLssY^A!f{`hEuw;9uMdukppMCnR(K{ZuDu-c}d{{Kuh#^4<@J+oOd+~VD&6sGi|Cb zU{3cM@#q`y$zx+sp5>X_Hj|qAt`&bGHHG%y>eHF1m|)A%ni6zOlfTF}y>&WJqPIQG zZ#Y`PnK5jQf$LJExD}^J>h}@n>Bn;gJPP&@toVX&4+@1DC&tM(8+eRRGkg{?#r&ra z`JFUd#Egj3Z1$*565*kY@4v{P0<<85d_w9t^zgz3l8PNu>B5%?G4FnH;Bm3NhyGP< zLSVy(30jt7K>ff73|t4?_ST=$(K_nKcFl@G#u!XdI6X2b#Ko4e6bl54Nrx33%rk8- zp?9|I=5ONh@v-~$){Mx_(*2_j7~Y}2OCeh0DxC1-&R&{-R6Vt2ROhdG*^{84ElMb} z^vQ3EZ_f=LL%+Az?m#lCm4iV!z4$NSEk6;9j;>&;yH9xxWO$HXwCmkdI#fr$9043~n4$PE}Z2&ixG5!$` ztr$pU!!3#F2Y-O~i_I1wQ7E!zK=b8@i`Q1hI4a1U9#|!_#`nV4>JmU>l~vJUnn=&t zZ;9Md$u6G3;I`}`wUY2$qyVTK7TZRrjw#^q@N_vt>%CveAKV%}84Jn0CcUyf#}V`S z|2w&9xxe^A3dfZPp2shBRqCLsrbettzg2EeIC&RIh&p5+AO%AsTJ5;Gx2oH?UYVA-&l7TYN)4$#m=&CzvK1tSMAG@zszW|gvSen z+mnDxbVa6d7HndmSq)1KUKAHsycM(i2lWp z?40-(^pRf~!4Odl`LgXu3S zPs@LcG(8>qnX7$MYPs+(1@m2qLGeLQNndYFGJ6}xi98m1ydt=ORbe{1mbbJ*f1Tz zJcRZ#NqU5ETloi^zTmoT>4Q7<5_-`=Kfxx*&HrdP6aEzQR;$9U8arg|=OWp}_7rWZ zP>=k;_PqZ$Ssob@c{+)s-^rgIGG=JCk*nHl+gp2ghgYWD3fA|NMz`~zvuwzD-l%|^ zaX;GV3zzQ>cjD>r^@;ovLTL$M2hfO}eb@09Wp39W{Oll`eE86IW4kQqLQp#mmJ|pJ zpyBuQ@TimF4%vbNXc$LU<{3U_z>;A3B(Oors@3_#K8R{$* z%W3=*SHNuINn+z=Na>NS>V82eKkP`QulJAFUj>W#s=ytdVE@b6jY;7G41MRo-e^O< znYMOmkV(wlGEpS%xvWn>2loM+WiOgM4jsR6F@nbU51@H#jy1^Q@!mYr#rpGJg8Amu zc1a0zXxbsxx{Kh1<hSnmE(vf4JMBJtwF2LsjoY=p0I8K*AM5>Kvlm zPs2W&`4Av2gazS2&|*=Y`v0@P>_H%=)!8Iac|X%D!qOXwFNmBzS>7a~Z2>Ecx9g+O zzt4oYN1%eONOPA^glbi@lqWmve$3>p-nc8V+xb!gbz9sLV$6*;toW?6WwW`Kmk2tb>* zXS4ahqImi~5_MitbrV|E9C?$$Bv0#ez3zwi)_TK5!RB1MMo&jpu&+cR;rbZAdN!}v zsC=K31S53>vXPxn_Xiga1Ct6sr}3({N#74ANDPNzQ_(vTr^$|f8~R0mE*^V^hK36M z<7`e~s!%T2&WxIu7g~ z{kLyFsj^LXeqIkL?#!(~GBC38T5Ufm-}UY|D>F(FTd_IGrAFyt`}ylyYGS{vFR)A0 z$E5@CG^=+lIGv!;v`(Ar3#JIuTNz3doq%LrqByWgv%or)@vlG3^wD$Y?j%}e&MJ{6 z{Y$JG)136tz)0oyJ zz<&S?Ao9cr0xV1%;96cbGKx*X^jdw6RMr08o={&ua*h1)96*fYArw9xGE0TPfQ?a} z_&j_>9JRJJ`@4U5XLV~fN?mbe%TDhI3Zw@;Lu(MF!ah!?ayy8x%DNOEv&2hXM~*dFB9oaVFY?GPG?9%Ud*-T(|iyw zaAm=Yc{T2s>v&$nOZZQJ9Rou@&a79P9SVV7PG;C=YCHGRW_5EuZB%3zKH|wF1302t z?<8o6+>L`$)DqS{2`fYKeG(J|)We@-)oUcpJAKz{R|GINS~7XIXn%D``rN*zIvQ?Z zh$N$=#B3qapaaa3=~vJ{yUYt9yA1e;TiA2>_``PI)?wgFH1iwz5||cNrT^1IuSqmW zDT)60>EYz2l>nl<_74R9-|N!z=^(y2%f77r*;K`=T`O7CwypryNwmGw=9^YGv^dA< z{t>l6Unb{u9~aGjS`DX2S>h*1w{`2VIr z9gyF#xcX*qO_o)5m=X^pbN{KX5#;^D)61PBcC}wtmg87|17tea2xe7b_dMrijQSRg zdxM*%=!68QwZFQ~Ye4T`OQ|W*F&BbC)njnFP*fQxY6yM*pM+;BoAi^QLo+hM)$81l zx!OO4*5^2Ww?^Gd-hvCMh?F!st~><;Jr{SdG)Qn}N1{DIfA^vVQ>U?_qr6iiDKo2kn;yac~u?Ww5OSBKLkpP|Y zWtb_R${#@nS3I-^q05LNj_TAC|TK_ls!!Sug6mQ9GvO# zWzN@EzdYZ%drhWwjgIQ=MvuH&--~?v%*V@a3YXl!QGES0qMGMBD~i`Oa1BogR@0qW zBSJhS_|il7p=u|$)fKHJ904@2O1EkVb)0*SBC>ifHYBh7gGxw&em%ryI#!{rf|dRf z4WGJR;&qK{Lk2b*y2)LZ15I@ns)6&3cUhII|#mch;+L!iUgfa3DQ3MT+G0Ygufq-3#7d%bUu}G2ezFv^xXr0W@ZQ2_W>+*-AX)#1~}{zO2k3f6Aks)JJYgx zX=rYV{L|jZ7HsK=`1jg;y{(PEzd!dx$LaQuv-T6{x7Xx@_O350Fxsdw?t<4G4LUDJ zKU?YmnUGem3(NUGO{9oEPmuPrGM5KRuS2t#>Ii@(em>z>%zRHLqK{8Z#Do2dF>LU_ zngU3ngkvy{;$Q`~8l39|=?;d)f+0Ms(gWI!8V^=6ZZB7*k;GhJ-NBIdoz?DRWGwRA zUO-`a5jf zIv{GG_`r7sKG*Mh&VO9k!A|EEul$;a1lyv^MPx8m9C}y_b3UA{ zezKuTrY=Q%*fWxp^I(oFE!Y+FbFl~EU6jktMBdKhUu?AlI?3D7inmrOmIlhZzJ$5X~~D|!d=TyNSOAibuMS(qQ2Uyd_o4lx$ecZS~fz^z9|r#Jf$)lN)A za8*2w+h=UwD9L*5ml;7>h2e1A5K};OrN0YkO*YR}l=?5q@4W`T3GxO6HW=)pxYMx9 zui?QbAW{i6T-H@~p#q=a-l3QXM~xa|&BGgj0-9P98X=K)ANmML02}EUS7#5HsaOz% zr=%rur_}WN$eE?!b9zN!>y<-8IT<6W6nTO16NBVPj=janYwW_LO54(w!l?JdxC zA`dP&7&>|?lEiqqogZFBFWF>kRja(jO&u*pTt=3SI4(2!7L^;6o{{m_$H#{uZli{( zwSF)|Gkg_Ryn@c z6H3^IrZEKVdy-YYqVAZOrm$eF^=0V8c&8g%i?{dlx~mE4pI6qmQy7Sg@2<2Eh=zx8 z1JCL%%v1m3wJa`1r;O)mh(_&MY1;`zK3x!8_AInvQpLu64M$yI!z>a{^|WS4|9-9} z%Sx=JmyBo39ZPr9`op0HCma*?y6tP9Jal06fiT>kA~=N~wD+{N1iA3i*dciAthg0Q z9;=V$SaK)s>xborZN9ef4xBPh7A^3fWW)MwPopyy^1Vql1#4hdF3H^P;s_`O(KzMC zVe?(NdMwJ8aM)g$V)8(it&2zM*B{tAUrfII@8ynpJgLxgt}}9>=kyI|mWM3d_DVEY9Z%c_6)V(!D;2s4v#> z>AbkP@MDvc&`)4u*IotUl+^8K2|992D~^?(@wkKRb}~uzs;?E7#!_OKlORIWEZzl^DvieBErNUtMj>mz!9|4{AXgzeW! zb>ZToM!?{2F%Y(L(FNZN7*%3nw|)F(FiuW5f|QJ=nk(gsWG8Z|iSPXq7t$wHJ4xD( z27Yw^LzJw5l1_MaBT>sF4esi5>r*?{fM5OGDe!bCJ(@td|Ji*#xXtSul^_wVw!#CB zmPJVzsCN@v%c4({B>9XmW;u54w<~hN6T+)^fm~me!YH^`Bn!<{a!j}w)-~3Tf zHbrAvf~bQSh`N*whB;}8xO>VbGeOp$KkFZyoZP^#f{gFCJ@1!a$2)8wnhb4?fj}|U zL)$)Kqa7Cu$vR|G6MUa8w*S;+e&R<1suR5(o+^#Jt^6Rpy}@FTGz)kgH{>C>yZFJ4 z7yyr_yp)irxVgCr=RG<|TmHJ@aSK)Dj*D(4(Lw@_Ky9nXIZ*s|u4G9v_-PYP4zOF; zwwuX=anR=OPjtq1wa|KP4?#?cbChHMQ)$;e)78-ZC95?=Fhw=7JLZdg;5uE@)+#V0 zPp1$s*zsO32Ero``1$Nlo|F<|0OwLXb$0bTfBU9UJ%9*UR39fOBTPK(BoRjEq(!Jh zxhJ8Z$AbEf2lF<>wBm(mJ6Y`5cs;0O@Q4coj5K=!kL)bk!^5OT3boG^*pg09529z+ z5~b1u7OhcM>NXJB0>YSakG8?TA8f`TQETq7N~G(@3nKpm;OF^|c!v4o=MWyG@$2?( zmkn6nRN@e~aww34UP2@u_A-#=ux<0stc)WwT)bK+ zv@Au~hv(sW>>QSK>dnxy0w^ea&Sj*m7zIoi_qb{Z0O6n8?N*9?lV`Ed(t^>~y)KBn zM7UcCD1M>m#43OHwk=+}*hKAQf`70(h*)KF`9?PqOh9EGH z&d1QS=if!X+v0!&T51;e`wJ{iH;`J17rXeu`g(498Ijoo^;bxDloAm>j-@kV`(r&dbYUZ%KD-hI|8z<*1Tf4SV$M zd>Jc{8pi>*11&Y9IyRerlEN9b*HFm2=LGjnD0`Z^Stj`@aW)vMCvs%&HzV%Hcsk={>y;(zQo^h0@ryt5x zxzFE)qc?oL;M`{agwWF=WSSou#^!N#F`kWR;QwffeH6%v&__-0r%0c-%R)aXWSQ(y zU84PVaI^^S_UTUiR?WCoX@OZGqBa0aA1s%p}`r+h+6yn>OCzci2FXg z%SiWAk-BT}Zz*8}2uE|kW{b@vD{Sl4Gl-)`C0`ddB5K+rdkfd)l({j;>e1Ht?Zgw3 z#Qo`OT@f8M>MF4dpG1)LD}WID8$@j`OYlbIE(t+7mjZb;KokHBt+S^S$eQOlx7SSLQ-|Y{ zv?GV@G~yn2cFqgkH*qd1l(dnkSIEcq^>~f?*Db(UXSFXy=cNyHD{GAr=$7m@rKlZW zX}E$LQxTQF`h%@1a~DSFprBATzJ@w5mIGh zfUm8py>Op0t0XcH3@_S5k>bogZve?mfd2)KuhzZFKoNjlRR#|dd&Wr%e%OB3lzGxq z5(KhtPlw+0VAKb3jGCtv@>BRF`Z)t&oE~iMZ@t(daeeee5uAe)fY8Gs4>Cuj9=6Ea zj&hX#iD)pR(Og&$xQTJT^#2GY=cwLil(sPf!~$ErI>+;c?4`Q5Ua9oI%sv~bc>s!H z{DC2vA(@|WWcY=>FReqsEAUk$!dRl*#<#oU-+Vgnrz-ziQA=aX-fdQ!`8&*K`4`yR z3q8)7p@jCzHaO>Uh`Lh~V{T04LNQ8{E<#Ana-SbGGxC1AgAKOtqR>*Yg5`t;ZuR*b z*L`ds98mP_9lepiW8c&2u@7@D?-ji>mZ6M}3R%%7>%v-Y#-p~hWz{Bp#ZNIu$m~E4Uk-cJ>3mc1ElGOr=L@o(HbW#E0P#D&ERr*AzpDgv zqX1@l9}gt;_h2@xzN6*ZQ9M;XL!1g|O}Hr1lL6o4swWOIAl!mThkglwAaTfBX zR0DB6b9)cK{IJ`HG6qlt1LyWnbeGQCkJYV$`cdD7T9iTG$r$-?!MGuK=|vxP83R*X z&lwtnSo)q#O40&m=&LOl3iXHQ7nOel+W(A&IEX5c5v6|!2J{br{_2ybXF5A|WEdUY zlS#}GM+2sr9am%kN)U5jjg%$5$5&>>=VOeVgh;z%+ZR1oS;nqf30R$Hx~BtxF9nDCW*=iT<7e+gt_kUK%In+UmgY z>|b|}sdPVymfE}nRfQ<(eWR$?>%PNh#R+N~>B`If1*UHAvy~A~p%*@BfyU#meo;rO1;G61=Qwa3KqoOG z#H={r-7XANQv!Kg8^OXBdGCW6{j=#SF^HeJBDkE|NSH%A08bcD8oOut5RT`gxOvL= zusywx!>CyqzA6;~)Xep;+h@OH{#?o3ue@qc#=F?gzokBA$YFA0nsNd8XMnUbc6EJ! zu($WC!RYb+f=Tjh4|ZrObLT|fct!{LydQbucZbepmCBI(3l!i*)JuyZ&%*dLSM4MC zUb8>tZCcGRv6)XbJshdS7iZ&KUsIq|?PYFn%>@p;9PyyxZLa_2wx$Q2-nt9b;tjLX z1&b%(e1=#k(%oXP89pwJN)~;5HRF~Z1~!;6`Ki9xdnV?YgS;Vx(lc-I?B<0$Z@CTq zuci)pkz@dp7u?msf09653R;S!Cto|{IOy|WpVYhfYvc}ut4D$97IUFLu0(%gUqK3J z*MP&07NzAm@Qn$W(Pn^LCE7qmrhAWbXvN5K^OEX8wr&m@CWcES@-1wS(b8eI$I0U*%F6V!(b{jMQ!1U2~@Fs*lQ(fwGa zj0l@yZXE;&1Y|&nNSvnPv%}AoBLyFaGRI#kPq+jHIo18)MFN^)#H4_wJpEBaKhv!hAJe-b)Gb?0eOIKv@1O2#f5S9uE4| z`gV`z@WTtK2AS#L%!*BWpdVjte+@gmY*oFlhfa0K7V~lB(O|0wL~k)*xuYK3o=6fx zZ}DeG14DM_>~E-aiJYH)^(xY3-DTy&y}k9GQH$S&77s~d>IJhKw5_i%OB267zwkWC zpjwTKk%%cT^X%ccF*-5?huh2mC&DS05_}jw-T+>_{QaOa@j`*0 z{DSQ6BGe2+Y%q`P3#@>K&*^D6umdLO@N{wibQ$7t|HLZ?!#=f9Sy7o54i698$=LCGhg;Afpe&DO_f@l$MET+v&5`7g0w73e1| zOkRKhpT&oM-Ql=w3Q!|X*4j4ak2tx93)3P zOY2h8WR=q)V9!FieDKhx2c5V|&yeH39RyV>Nk1z1oZycRNM^kbgBu@#;e#=;U%QAp zo!9$L7BP#lbH&^bA<6?eBL)I>j#T&e!#bDGfo-NeEgJ5Lmj$G6g<~pgThY) z#yS3GE%tP`sFrg(2*mo38a?I06CIsX6PE*(#ffGv$e-=sO31*sy>!g{=Oqzq>?6|v zV*tr8{g0E>&I)+{ddOv~6ahFRfVn>hMqu+q_=wz?n7P{a�~<*u^;Xi)TNu`w}wy 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 z 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%0D3Z4_Y(nnF>|!FKHavNbyMK} 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 UA6+z&0vj#1T48y0q5HxA1+?ZtbN~PV diff --git a/data/buildings/corruptor.tres b/data/buildings/corruptor.tres index 71ace03..7eaacd7 100644 --- a/data/buildings/corruptor.tres +++ b/data/buildings/corruptor.tres @@ -1,10 +1,15 @@ -[gd_resource type="Resource" script_class="Building" load_steps=2 format=3 uid="uid://bgwoy0uh2cpvu"] +[gd_resource type="Resource" script_class="Building" load_steps=4 format=3 uid="uid://bgwoy0uh2cpvu"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon_resource.tres" id="1_5s38g"] [ext_resource type="Script" path="res://scripts/building.gd" id="1_ssts7"] +[ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem_resource.tres" id="2_u1tpw"] [resource] script = ExtResource("1_ssts7") -atlas_texture_region = Vector2i(0, 0) -name = "" -description = "" -cost = {} +atlas_texture_region = Vector2i(14, 7) +name = "Corruptor" +description = "A building which only functions to spread corruption, and does it well" +cost = { +ExtResource("1_5s38g"): 40, +ExtResource("2_u1tpw"): 20 +} diff --git a/data/scifi_tileset.tres b/data/scifi_tileset.tres index 51eb108..cee87b3 100644 --- a/data/scifi_tileset.tres +++ b/data/scifi_tileset.tres @@ -5,146 +5,404 @@ [sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_yq8ar"] resource_name = "scifi" texture = ExtResource("1_40wcs") -texture_region_size = Vector2i(128, 128) +texture_region_size = Vector2i(64, 64) 0:0/0 = 0 +0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:0/0/physics_layer_0/angular_velocity = 0.0 1:0/next_alternative_id = 2 1:0/0 = 0 +1:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:0/0/physics_layer_0/angular_velocity = 0.0 2:0/0 = 0 +2:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:0/0/physics_layer_0/angular_velocity = 0.0 3:0/0 = 0 +3:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:0/0/physics_layer_0/angular_velocity = 0.0 4:0/0 = 0 +4:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:0/0/physics_layer_0/angular_velocity = 0.0 5:0/0 = 0 +5:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:0/0/physics_layer_0/angular_velocity = 0.0 6:0/0 = 0 +6:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:0/0/physics_layer_0/angular_velocity = 0.0 7:0/0 = 0 +7:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:0/0/physics_layer_0/angular_velocity = 0.0 8:0/0 = 0 +8:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:0/0/physics_layer_0/angular_velocity = 0.0 9:0/0 = 0 +9:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:0/0/physics_layer_0/angular_velocity = 0.0 10:0/0 = 0 +10:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:0/0/physics_layer_0/angular_velocity = 0.0 11:0/0 = 0 +11:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:0/0/physics_layer_0/angular_velocity = 0.0 12:0/0 = 0 +12:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:0/0/physics_layer_0/angular_velocity = 0.0 13:0/0 = 0 +13:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:0/0/physics_layer_0/angular_velocity = 0.0 14:0/0 = 0 +14:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:0/0/physics_layer_0/angular_velocity = 0.0 15:0/0 = 0 +15:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:0/0/physics_layer_0/angular_velocity = 0.0 16:0/0 = 0 +16:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:0/0/physics_layer_0/angular_velocity = 0.0 17:0/0 = 0 +17:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:0/0/physics_layer_0/angular_velocity = 0.0 0:1/0 = 0 +0:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:1/0/physics_layer_0/angular_velocity = 0.0 1:1/0 = 0 +1:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:1/0/physics_layer_0/angular_velocity = 0.0 2:1/0 = 0 +2:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:1/0/physics_layer_0/angular_velocity = 0.0 3:1/0 = 0 +3:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:1/0/physics_layer_0/angular_velocity = 0.0 4:1/0 = 0 +4:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:1/0/physics_layer_0/angular_velocity = 0.0 5:1/0 = 0 +5:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:1/0/physics_layer_0/angular_velocity = 0.0 6:1/0 = 0 +6:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:1/0/physics_layer_0/angular_velocity = 0.0 7:1/0 = 0 +7:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:1/0/physics_layer_0/angular_velocity = 0.0 8:1/0 = 0 +8:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:1/0/physics_layer_0/angular_velocity = 0.0 9:1/0 = 0 +9:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:1/0/physics_layer_0/angular_velocity = 0.0 10:1/0 = 0 +10:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:1/0/physics_layer_0/angular_velocity = 0.0 11:1/0 = 0 +11:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:1/0/physics_layer_0/angular_velocity = 0.0 12:1/0 = 0 +12:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:1/0/physics_layer_0/angular_velocity = 0.0 13:1/0 = 0 +13:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:1/0/physics_layer_0/angular_velocity = 0.0 14:1/0 = 0 +14:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:1/0/physics_layer_0/angular_velocity = 0.0 15:1/0 = 0 +15:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:1/0/physics_layer_0/angular_velocity = 0.0 16:1/0 = 0 +16:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:1/0/physics_layer_0/angular_velocity = 0.0 17:1/0 = 0 +17:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:1/0/physics_layer_0/angular_velocity = 0.0 0:2/0 = 0 +0:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:2/0/physics_layer_0/angular_velocity = 0.0 1:2/0 = 0 +1:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:2/0/physics_layer_0/angular_velocity = 0.0 2:2/0 = 0 +2:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:2/0/physics_layer_0/angular_velocity = 0.0 3:2/0 = 0 +3:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:2/0/physics_layer_0/angular_velocity = 0.0 4:2/0 = 0 +4:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:2/0/physics_layer_0/angular_velocity = 0.0 5:2/0 = 0 +5:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:2/0/physics_layer_0/angular_velocity = 0.0 6:2/0 = 0 +6:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:2/0/physics_layer_0/angular_velocity = 0.0 7:2/0 = 0 +7:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:2/0/physics_layer_0/angular_velocity = 0.0 8:2/0 = 0 +8:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:2/0/physics_layer_0/angular_velocity = 0.0 9:2/0 = 0 +9:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:2/0/physics_layer_0/angular_velocity = 0.0 10:2/0 = 0 +10:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:2/0/physics_layer_0/angular_velocity = 0.0 11:2/0 = 0 +11:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:2/0/physics_layer_0/angular_velocity = 0.0 12:2/0 = 0 +12:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:2/0/physics_layer_0/angular_velocity = 0.0 13:2/0 = 0 +13:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:2/0/physics_layer_0/angular_velocity = 0.0 14:2/0 = 0 +14:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:2/0/physics_layer_0/angular_velocity = 0.0 15:2/0 = 0 +15:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:2/0/physics_layer_0/angular_velocity = 0.0 16:2/0 = 0 +16:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:2/0/physics_layer_0/angular_velocity = 0.0 17:2/0 = 0 +17:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:2/0/physics_layer_0/angular_velocity = 0.0 0:3/0 = 0 +0:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:3/0/physics_layer_0/angular_velocity = 0.0 1:3/0 = 0 +1:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:3/0/physics_layer_0/angular_velocity = 0.0 2:3/0 = 0 +2:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:3/0/physics_layer_0/angular_velocity = 0.0 3:3/0 = 0 +3:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:3/0/physics_layer_0/angular_velocity = 0.0 4:3/0 = 0 +4:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:3/0/physics_layer_0/angular_velocity = 0.0 5:3/0 = 0 +5:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:3/0/physics_layer_0/angular_velocity = 0.0 +5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) 6:3/0 = 0 +6:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:3/0/physics_layer_0/angular_velocity = 0.0 7:3/0 = 0 +7:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:3/0/physics_layer_0/angular_velocity = 0.0 8:3/0 = 0 +8:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:3/0/physics_layer_0/angular_velocity = 0.0 9:3/0 = 0 +9:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:3/0/physics_layer_0/angular_velocity = 0.0 10:3/0 = 0 +10:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:3/0/physics_layer_0/angular_velocity = 0.0 11:3/0 = 0 +11:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:3/0/physics_layer_0/angular_velocity = 0.0 12:3/0 = 0 +12:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:3/0/physics_layer_0/angular_velocity = 0.0 13:3/0 = 0 +13:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:3/0/physics_layer_0/angular_velocity = 0.0 14:3/0 = 0 +14:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:3/0/physics_layer_0/angular_velocity = 0.0 15:3/0 = 0 +15:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:3/0/physics_layer_0/angular_velocity = 0.0 16:3/0 = 0 +16:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:3/0/physics_layer_0/angular_velocity = 0.0 17:3/0 = 0 +17:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:3/0/physics_layer_0/angular_velocity = 0.0 0:4/0 = 0 +0:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:4/0/physics_layer_0/angular_velocity = 0.0 1:4/0 = 0 +1:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:4/0/physics_layer_0/angular_velocity = 0.0 2:4/0 = 0 +2:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:4/0/physics_layer_0/angular_velocity = 0.0 3:4/0 = 0 +3:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:4/0/physics_layer_0/angular_velocity = 0.0 4:4/0 = 0 +4:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:4/0/physics_layer_0/angular_velocity = 0.0 5:4/0 = 0 +5:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:4/0/physics_layer_0/angular_velocity = 0.0 6:4/0 = 0 +6:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:4/0/physics_layer_0/angular_velocity = 0.0 7:4/0 = 0 +7:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:4/0/physics_layer_0/angular_velocity = 0.0 8:4/0 = 0 +8:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:4/0/physics_layer_0/angular_velocity = 0.0 9:4/0 = 0 +9:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:4/0/physics_layer_0/angular_velocity = 0.0 10:4/0 = 0 +10:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:4/0/physics_layer_0/angular_velocity = 0.0 11:4/0 = 0 +11:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:4/0/physics_layer_0/angular_velocity = 0.0 12:4/0 = 0 +12:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:4/0/physics_layer_0/angular_velocity = 0.0 13:4/0 = 0 +13:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:4/0/physics_layer_0/angular_velocity = 0.0 14:4/0 = 0 +14:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:4/0/physics_layer_0/angular_velocity = 0.0 15:4/0 = 0 +15:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:4/0/physics_layer_0/angular_velocity = 0.0 16:4/0 = 0 +16:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:4/0/physics_layer_0/angular_velocity = 0.0 17:4/0 = 0 +17:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:4/0/physics_layer_0/angular_velocity = 0.0 0:5/0 = 0 +0:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:5/0/physics_layer_0/angular_velocity = 0.0 1:5/0 = 0 +1:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:5/0/physics_layer_0/angular_velocity = 0.0 2:5/0 = 0 +2:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:5/0/physics_layer_0/angular_velocity = 0.0 3:5/0 = 0 +3:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:5/0/physics_layer_0/angular_velocity = 0.0 4:5/0 = 0 +4:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:5/0/physics_layer_0/angular_velocity = 0.0 5:5/0 = 0 +5:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:5/0/physics_layer_0/angular_velocity = 0.0 6:5/0 = 0 +6:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:5/0/physics_layer_0/angular_velocity = 0.0 7:5/0 = 0 +7:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:5/0/physics_layer_0/angular_velocity = 0.0 8:5/0 = 0 +8:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:5/0/physics_layer_0/angular_velocity = 0.0 9:5/0 = 0 +9:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:5/0/physics_layer_0/angular_velocity = 0.0 10:5/0 = 0 +10:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:5/0/physics_layer_0/angular_velocity = 0.0 11:5/0 = 0 +11:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:5/0/physics_layer_0/angular_velocity = 0.0 12:5/0 = 0 +12:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:5/0/physics_layer_0/angular_velocity = 0.0 13:5/0 = 0 +13:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:5/0/physics_layer_0/angular_velocity = 0.0 14:5/0 = 0 +14:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:5/0/physics_layer_0/angular_velocity = 0.0 15:5/0 = 0 +15:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:5/0/physics_layer_0/angular_velocity = 0.0 16:5/0 = 0 +16:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:5/0/physics_layer_0/angular_velocity = 0.0 17:5/0 = 0 +17:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:5/0/physics_layer_0/angular_velocity = 0.0 0:6/0 = 0 +0:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:6/0/physics_layer_0/angular_velocity = 0.0 1:6/0 = 0 +1:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:6/0/physics_layer_0/angular_velocity = 0.0 2:6/0 = 0 +2:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:6/0/physics_layer_0/angular_velocity = 0.0 3:6/0 = 0 +3:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:6/0/physics_layer_0/angular_velocity = 0.0 4:6/0 = 0 +4:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:6/0/physics_layer_0/angular_velocity = 0.0 5:6/0 = 0 +5:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:6/0/physics_layer_0/angular_velocity = 0.0 +5:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) 6:6/0 = 0 +6:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:6/0/physics_layer_0/angular_velocity = 0.0 7:6/0 = 0 +7:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:6/0/physics_layer_0/angular_velocity = 0.0 10:6/0 = 0 +10:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:6/0/physics_layer_0/angular_velocity = 0.0 11:6/0 = 0 +11:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:6/0/physics_layer_0/angular_velocity = 0.0 12:6/0 = 0 +12:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:6/0/physics_layer_0/angular_velocity = 0.0 13:6/0 = 0 +13:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:6/0/physics_layer_0/angular_velocity = 0.0 14:6/0 = 0 +14:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:6/0/physics_layer_0/angular_velocity = 0.0 15:6/0 = 0 +15:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:6/0/physics_layer_0/angular_velocity = 0.0 16:6/0 = 0 +16:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:6/0/physics_layer_0/angular_velocity = 0.0 17:6/0 = 0 +17:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:6/0/physics_layer_0/angular_velocity = 0.0 0:7/0 = 0 +0:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:7/0/physics_layer_0/angular_velocity = 0.0 4:7/0 = 0 4:7/0/terrain_set = 0 4:7/0/terrain = 0 +4:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:7/0/physics_layer_0/angular_velocity = 0.0 4:7/0/terrains_peering_bit/bottom_side = 0 5:7/0 = 0 5:7/0/terrain_set = 0 5:7/0/terrain = 0 +5:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:7/0/physics_layer_0/angular_velocity = 0.0 5:7/0/terrains_peering_bit/right_side = 0 5:7/0/terrains_peering_bit/bottom_right_corner = 0 5:7/0/terrains_peering_bit/bottom_side = 0 6:7/0 = 0 6:7/0/terrain_set = 0 6:7/0/terrain = 0 +6:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:7/0/physics_layer_0/angular_velocity = 0.0 6:7/0/terrains_peering_bit/right_side = 0 6:7/0/terrains_peering_bit/bottom_right_corner = 0 6:7/0/terrains_peering_bit/bottom_side = 0 @@ -153,12 +411,16 @@ texture_region_size = Vector2i(128, 128) 7:7/0 = 0 7:7/0/terrain_set = 0 7:7/0/terrain = 0 +7:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:7/0/physics_layer_0/angular_velocity = 0.0 7:7/0/terrains_peering_bit/bottom_side = 0 7:7/0/terrains_peering_bit/bottom_left_corner = 0 7:7/0/terrains_peering_bit/left_side = 0 9:7/0 = 0 9:7/0/terrain_set = 0 9:7/0/terrain = 0 +9:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:7/0/physics_layer_0/angular_velocity = 0.0 9:7/0/terrains_peering_bit/right_side = 0 9:7/0/terrains_peering_bit/bottom_side = 0 9:7/0/terrains_peering_bit/left_side = 0 @@ -168,6 +430,8 @@ texture_region_size = Vector2i(128, 128) 10:7/0 = 0 10:7/0/terrain_set = 0 10:7/0/terrain = 0 +10:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:7/0/physics_layer_0/angular_velocity = 0.0 10:7/0/terrains_peering_bit/right_side = 0 10:7/0/terrains_peering_bit/bottom_right_corner = 0 10:7/0/terrains_peering_bit/bottom_side = 0 @@ -178,6 +442,8 @@ texture_region_size = Vector2i(128, 128) 11:7/0 = 0 11:7/0/terrain_set = 0 11:7/0/terrain = 0 +11:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:7/0/physics_layer_0/angular_velocity = 0.0 11:7/0/terrains_peering_bit/right_side = 0 11:7/0/terrains_peering_bit/left_side = 0 11:7/0/terrains_peering_bit/top_left_corner = 0 @@ -185,37 +451,61 @@ texture_region_size = Vector2i(128, 128) 12:7/0 = 0 12:7/0/terrain_set = 0 12:7/0/terrain = 0 +12:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:7/0/physics_layer_0/angular_velocity = 0.0 12:7/0/terrains_peering_bit/right_side = 0 12:7/0/terrains_peering_bit/left_side = 0 12:7/0/terrains_peering_bit/top_side = 0 12:7/0/terrains_peering_bit/top_right_corner = 0 13:7/0 = 0 +13:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:7/0/physics_layer_0/angular_velocity = 0.0 14:7/0 = 0 +14:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:7/0/physics_layer_0/angular_velocity = 0.0 15:7/0 = 0 +15:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:7/0/physics_layer_0/angular_velocity = 0.0 16:7/0 = 0 +16:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:7/0/physics_layer_0/angular_velocity = 0.0 17:7/0 = 0 +17:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:7/0/physics_layer_0/angular_velocity = 0.0 0:8/0 = 0 +0:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:8/0/physics_layer_0/angular_velocity = 0.0 1:8/0 = 0 +1:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:8/0/physics_layer_0/angular_velocity = 0.0 2:8/0 = 0 2:8/0/terrain_set = 0 2:8/0/terrain = 0 +2:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:8/0/physics_layer_0/angular_velocity = 0.0 2:8/0/terrains_peering_bit/right_side = 0 2:8/0/terrains_peering_bit/bottom_side = 0 2:8/0/terrains_peering_bit/top_side = 0 3:8/0 = 0 3:8/0/terrain_set = 0 3:8/0/terrain = 0 +3:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:8/0/physics_layer_0/angular_velocity = 0.0 3:8/0/terrains_peering_bit/bottom_side = 0 3:8/0/terrains_peering_bit/left_side = 0 3:8/0/terrains_peering_bit/top_side = 0 4:8/0 = 0 4:8/0/terrain_set = 0 4:8/0/terrain = 0 +4:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:8/0/physics_layer_0/angular_velocity = 0.0 4:8/0/terrains_peering_bit/bottom_side = 0 4:8/0/terrains_peering_bit/top_side = 0 5:8/0 = 0 5:8/0/terrain_set = 0 5:8/0/terrain = 0 +5:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:8/0/physics_layer_0/angular_velocity = 0.0 5:8/0/terrains_peering_bit/right_side = 0 5:8/0/terrains_peering_bit/bottom_right_corner = 0 5:8/0/terrains_peering_bit/bottom_side = 0 @@ -224,6 +514,8 @@ texture_region_size = Vector2i(128, 128) 6:8/0 = 0 6:8/0/terrain_set = 0 6:8/0/terrain = 0 +6:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:8/0/physics_layer_0/angular_velocity = 0.0 6:8/0/terrains_peering_bit/right_side = 0 6:8/0/terrains_peering_bit/bottom_right_corner = 0 6:8/0/terrains_peering_bit/bottom_side = 0 @@ -235,6 +527,8 @@ texture_region_size = Vector2i(128, 128) 7:8/0 = 0 7:8/0/terrain_set = 0 7:8/0/terrain = 0 +7:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:8/0/physics_layer_0/angular_velocity = 0.0 7:8/0/terrains_peering_bit/bottom_side = 0 7:8/0/terrains_peering_bit/bottom_left_corner = 0 7:8/0/terrains_peering_bit/left_side = 0 @@ -243,6 +537,8 @@ texture_region_size = Vector2i(128, 128) 8:8/0 = 0 8:8/0/terrain_set = 0 8:8/0/terrain = 0 +8:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:8/0/physics_layer_0/angular_velocity = 0.0 8:8/0/terrains_peering_bit/right_side = 0 8:8/0/terrains_peering_bit/bottom_side = 0 8:8/0/terrains_peering_bit/bottom_left_corner = 0 @@ -252,6 +548,8 @@ texture_region_size = Vector2i(128, 128) 9:8/0 = 0 9:8/0/terrain_set = 0 9:8/0/terrain = 0 +9:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:8/0/physics_layer_0/angular_velocity = 0.0 9:8/0/terrains_peering_bit/right_side = 0 9:8/0/terrains_peering_bit/bottom_side = 0 9:8/0/terrains_peering_bit/left_side = 0 @@ -259,6 +557,8 @@ texture_region_size = Vector2i(128, 128) 10:8/0 = 0 10:8/0/terrain_set = 0 10:8/0/terrain = 0 +10:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:8/0/physics_layer_0/angular_velocity = 0.0 10:8/0/terrains_peering_bit/right_side = 0 10:8/0/terrains_peering_bit/bottom_right_corner = 0 10:8/0/terrains_peering_bit/bottom_side = 0 @@ -268,6 +568,8 @@ texture_region_size = Vector2i(128, 128) 11:8/0 = 0 11:8/0/terrain_set = 0 11:8/0/terrain = 0 +11:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:8/0/physics_layer_0/angular_velocity = 0.0 11:8/0/terrains_peering_bit/bottom_side = 0 11:8/0/terrains_peering_bit/left_side = 0 11:8/0/terrains_peering_bit/top_left_corner = 0 @@ -275,42 +577,68 @@ texture_region_size = Vector2i(128, 128) 12:8/0 = 0 12:8/0/terrain_set = 0 12:8/0/terrain = 0 +12:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:8/0/physics_layer_0/angular_velocity = 0.0 12:8/0/terrains_peering_bit/bottom_side = 0 12:8/0/terrains_peering_bit/bottom_left_corner = 0 12:8/0/terrains_peering_bit/left_side = 0 12:8/0/terrains_peering_bit/top_side = 0 13:8/0 = 0 +13:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:8/0/physics_layer_0/angular_velocity = 0.0 14:8/0 = 0 +14:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:8/0/physics_layer_0/angular_velocity = 0.0 15:8/0 = 0 +15:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:8/0/physics_layer_0/angular_velocity = 0.0 16:8/0 = 0 +16:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:8/0/physics_layer_0/angular_velocity = 0.0 17:8/0 = 0 +17:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:8/0/physics_layer_0/angular_velocity = 0.0 0:9/0 = 0 +0:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:9/0/physics_layer_0/angular_velocity = 0.0 1:9/0 = 0 +1:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:9/0/physics_layer_0/angular_velocity = 0.0 2:9/0 = 0 2:9/0/terrain_set = 0 2:9/0/terrain = 0 +2:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:9/0/physics_layer_0/angular_velocity = 0.0 2:9/0/terrains_peering_bit/right_side = 0 2:9/0/terrains_peering_bit/left_side = 0 2:9/0/terrains_peering_bit/top_side = 0 3:9/0 = 0 3:9/0/terrain_set = 0 3:9/0/terrain = 0 +3:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:9/0/physics_layer_0/angular_velocity = 0.0 3:9/0/terrains_peering_bit/right_side = 0 3:9/0/terrains_peering_bit/bottom_side = 0 3:9/0/terrains_peering_bit/left_side = 0 4:9/0 = 0 4:9/0/terrain_set = 0 4:9/0/terrain = 0 +4:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:9/0/physics_layer_0/angular_velocity = 0.0 4:9/0/terrains_peering_bit/top_side = 0 5:9/0 = 0 5:9/0/terrain_set = 0 5:9/0/terrain = 0 +5:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:9/0/physics_layer_0/angular_velocity = 0.0 5:9/0/terrains_peering_bit/right_side = 0 5:9/0/terrains_peering_bit/top_side = 0 5:9/0/terrains_peering_bit/top_right_corner = 0 6:9/0 = 0 6:9/0/terrain_set = 0 6:9/0/terrain = 0 +6:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:9/0/physics_layer_0/angular_velocity = 0.0 6:9/0/terrains_peering_bit/right_side = 0 6:9/0/terrains_peering_bit/left_side = 0 6:9/0/terrains_peering_bit/top_left_corner = 0 @@ -319,12 +647,16 @@ texture_region_size = Vector2i(128, 128) 7:9/0 = 0 7:9/0/terrain_set = 0 7:9/0/terrain = 0 +7:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:9/0/physics_layer_0/angular_velocity = 0.0 7:9/0/terrains_peering_bit/left_side = 0 7:9/0/terrains_peering_bit/top_left_corner = 0 7:9/0/terrains_peering_bit/top_side = 0 8:9/0 = 0 8:9/0/terrain_set = 0 8:9/0/terrain = 0 +8:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:9/0/physics_layer_0/angular_velocity = 0.0 8:9/0/terrains_peering_bit/right_side = 0 8:9/0/terrains_peering_bit/bottom_right_corner = 0 8:9/0/terrains_peering_bit/bottom_side = 0 @@ -335,6 +667,8 @@ texture_region_size = Vector2i(128, 128) 9:9/0 = 0 9:9/0/terrain_set = 0 9:9/0/terrain = 0 +9:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:9/0/physics_layer_0/angular_velocity = 0.0 9:9/0/terrains_peering_bit/right_side = 0 9:9/0/terrains_peering_bit/bottom_right_corner = 0 9:9/0/terrains_peering_bit/bottom_side = 0 @@ -344,6 +678,8 @@ texture_region_size = Vector2i(128, 128) 10:9/0 = 0 10:9/0/terrain_set = 0 10:9/0/terrain = 0 +10:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:9/0/physics_layer_0/angular_velocity = 0.0 10:9/0/terrains_peering_bit/right_side = 0 10:9/0/terrains_peering_bit/bottom_right_corner = 0 10:9/0/terrains_peering_bit/bottom_side = 0 @@ -354,6 +690,8 @@ texture_region_size = Vector2i(128, 128) 11:9/0 = 0 11:9/0/terrain_set = 0 11:9/0/terrain = 0 +11:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:9/0/physics_layer_0/angular_velocity = 0.0 11:9/0/terrains_peering_bit/right_side = 0 11:9/0/terrains_peering_bit/bottom_right_corner = 0 11:9/0/terrains_peering_bit/bottom_side = 0 @@ -361,41 +699,77 @@ texture_region_size = Vector2i(128, 128) 12:9/0 = 0 12:9/0/terrain_set = 0 12:9/0/terrain = 0 +12:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:9/0/physics_layer_0/angular_velocity = 0.0 12:9/0/terrains_peering_bit/right_side = 0 12:9/0/terrains_peering_bit/bottom_side = 0 12:9/0/terrains_peering_bit/top_side = 0 12:9/0/terrains_peering_bit/top_right_corner = 0 13:9/0 = 0 +13:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:9/0/physics_layer_0/angular_velocity = 0.0 14:9/0 = 0 +14:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:9/0/physics_layer_0/angular_velocity = 0.0 15:9/0 = 0 +15:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:9/0/physics_layer_0/angular_velocity = 0.0 16:9/0 = 0 +16:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:9/0/physics_layer_0/angular_velocity = 0.0 17:9/0 = 0 +17:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:9/0/physics_layer_0/angular_velocity = 0.0 0:10/0 = 0 +0:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:10/0/physics_layer_0/angular_velocity = 0.0 1:10/0 = 0 +1:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:10/0/physics_layer_0/angular_velocity = 0.0 2:10/0 = 0 +2:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:10/0/physics_layer_0/angular_velocity = 0.0 3:10/0 = 0 +3:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:10/0/physics_layer_0/angular_velocity = 0.0 4:10/0 = 0 4:10/0/terrain_set = 0 4:10/0/terrain = 0 +4:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:10/0/physics_layer_0/angular_velocity = 0.0 5:10/0 = 0 5:10/0/terrain_set = 0 5:10/0/terrain = 0 +5:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:10/0/physics_layer_0/angular_velocity = 0.0 5:10/0/terrains_peering_bit/right_side = 0 6:10/0 = 0 6:10/0/terrain_set = 0 6:10/0/terrain = 0 +6:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:10/0/physics_layer_0/angular_velocity = 0.0 6:10/0/terrains_peering_bit/right_side = 0 6:10/0/terrains_peering_bit/left_side = 0 7:10/0 = 0 7:10/0/terrain_set = 0 7:10/0/terrain = 0 +7:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:10/0/physics_layer_0/angular_velocity = 0.0 7:10/0/terrains_peering_bit/left_side = 0 8:10/0 = 0 +8:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:10/0/physics_layer_0/angular_velocity = 0.0 9:10/0 = 0 +9:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:10/0/physics_layer_0/angular_velocity = 0.0 10:10/0 = 0 +10:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +10:10/0/physics_layer_0/angular_velocity = 0.0 11:10/0 = 0 11:10/0/terrain_set = 0 11:10/0/terrain = 0 +11:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +11:10/0/physics_layer_0/angular_velocity = 0.0 11:10/0/terrains_peering_bit/right_side = 0 11:10/0/terrains_peering_bit/bottom_side = 0 11:10/0/terrains_peering_bit/bottom_left_corner = 0 @@ -403,23 +777,47 @@ texture_region_size = Vector2i(128, 128) 12:10/0 = 0 12:10/0/terrain_set = 0 12:10/0/terrain = 0 +12:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +12:10/0/physics_layer_0/angular_velocity = 0.0 12:10/0/terrains_peering_bit/right_side = 0 12:10/0/terrains_peering_bit/bottom_right_corner = 0 12:10/0/terrains_peering_bit/bottom_side = 0 12:10/0/terrains_peering_bit/left_side = 0 13:10/0 = 0 +13:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +13:10/0/physics_layer_0/angular_velocity = 0.0 14:10/0 = 0 +14:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +14:10/0/physics_layer_0/angular_velocity = 0.0 15:10/0 = 0 +15:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +15:10/0/physics_layer_0/angular_velocity = 0.0 16:10/0 = 0 +16:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +16:10/0/physics_layer_0/angular_velocity = 0.0 17:10/0 = 0 +17:10/0/physics_layer_0/linear_velocity = Vector2(0, 0) +17:10/0/physics_layer_0/angular_velocity = 0.0 8:6/0 = 0 +8:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:6/0/physics_layer_0/angular_velocity = 0.0 9:6/0 = 0 +9:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:6/0/physics_layer_0/angular_velocity = 0.0 1:7/0 = 0 +1:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:7/0/physics_layer_0/angular_velocity = 0.0 2:7/0 = 0 +2:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:7/0/physics_layer_0/angular_velocity = 0.0 3:7/0 = 0 +3:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:7/0/physics_layer_0/angular_velocity = 0.0 8:7/0 = 0 8:7/0/terrain_set = 0 8:7/0/terrain = 0 +8:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:7/0/physics_layer_0/angular_velocity = 0.0 8:7/0/terrains_peering_bit/right_side = 0 8:7/0/terrains_peering_bit/bottom_side = 0 8:7/0/terrains_peering_bit/bottom_left_corner = 0 @@ -429,7 +827,9 @@ texture_region_size = Vector2i(128, 128) 8:7/0/terrains_peering_bit/top_right_corner = 0 [resource] -tile_size = Vector2i(128, 128) +tile_size = Vector2i(64, 64) +physics_layer_0/collision_layer = 1 +physics_layer_0/collision_mask = 0 terrain_set_0/mode = 0 terrain_set_0/terrain_0/name = "corruption" terrain_set_0/terrain_0/color = Color(0.368627, 0.411765, 0.129412, 1) diff --git a/project.godot b/project.godot index cdc3a8a..0823c45 100644 --- a/project.godot +++ b/project.godot @@ -15,6 +15,10 @@ run/main_scene="res://scene/world.tscn" config/features=PackedStringArray("4.2", "Forward Plus") config/icon="res://icon.svg" +[autoload] + +Grid="*res://scripts/autoloads/grid.gd" + [debug] gdscript/warnings/untyped_declaration=1 @@ -22,3 +26,7 @@ gdscript/warnings/untyped_declaration=1 [gui] theme/custom="res://data/world_theme.tres" + +[rendering] + +textures/canvas_textures/default_texture_filter=0 diff --git a/scene/player.tscn b/scene/player.tscn new file mode 100644 index 0000000..c5fa2ef --- /dev/null +++ b/scene/player.tscn @@ -0,0 +1,49 @@ +[gd_scene load_steps=7 format=3 uid="uid://dkvcye4mhvshd"] + +[ext_resource type="Script" path="res://scripts/player.gd" id="1_j0htm"] +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_vqdy1"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_8yvc7"] +atlas = ExtResource("1_vqdy1") +region = Rect2(640, 192, 64, 64) + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_jav3v"] +size = Vector2(40, 45) + +[sub_resource type="Animation" id="Animation_47lv4"] +resource_name = "walk" +length = 1.2 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.2, 0.4, 0.6, 0.8, 1, 1.2), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1), +"update": 0, +"values": [Vector2(0, 0), Vector2(0, -1), Vector2(0, -2), Vector2(0, -1), Vector2(0, 0), Vector2(0, 1), Vector2(0, 0)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_ditnu"] +_data = { +"walk": SubResource("Animation_47lv4") +} + +[node name="Player" type="CharacterBody2D"] +motion_mode = 1 +script = ExtResource("1_j0htm") + +[node name="Sprite2D" type="Sprite2D" parent="."] +texture = SubResource("AtlasTexture_8yvc7") + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +shape = SubResource("RectangleShape2D_jav3v") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +"": SubResource("AnimationLibrary_ditnu") +} + +[node name="Camera2D" type="Camera2D" parent="."] diff --git a/scene/world.tscn b/scene/world.tscn index d9c3879..f6422a3 100644 --- a/scene/world.tscn +++ b/scene/world.tscn @@ -1,9 +1,8 @@ -[gd_scene load_steps=13 format=3 uid="uid://m0us5xqa3gnk"] +[gd_scene load_steps=12 format=3 uid="uid://m0us5xqa3gnk"] [ext_resource type="Script" path="res://scripts/world.gd" id="1_yf6q1"] [ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem_resource.tres" id="2_rn4a2"] [ext_resource type="TileSet" uid="uid://d1sh6dy2w10b0" path="res://data/scifi_tileset.tres" id="2_sa7dm"] -[ext_resource type="Script" path="res://scripts/window.gd" id="3_bfjot"] [ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon_resource.tres" id="3_pq6ic"] [ext_resource type="Script" path="res://scripts/building_manager.gd" id="4_61js3"] [ext_resource type="Script" path="res://scripts/resource_manager.gd" id="5_k5643"] @@ -39,12 +38,6 @@ layer_3/tile_data = PackedInt32Array() layer_4/name = "buildings" layer_4/tile_data = PackedInt32Array() -[node name="Camera2D" type="Camera2D" parent="."] -zoom = Vector2(0.3, 0.3) -drag_horizontal_enabled = true -drag_vertical_enabled = true -script = ExtResource("3_bfjot") - [node name="BuildingManager" type="Node2D" parent="."] script = ExtResource("4_61js3") diff --git a/scripts/autoloads/grid.gd b/scripts/autoloads/grid.gd new file mode 100644 index 0000000..86f1740 --- /dev/null +++ b/scripts/autoloads/grid.gd @@ -0,0 +1,35 @@ +extends Node + +const GRID_SIZE := 64 +var world_grid: TileMap +var world_data: Dictionary = {} + +func init(grid: TileMap) -> void: + world_grid = grid + +func world_to_grid(world_loc: Vector2) -> Vector2i: + return Vector2i(floor(world_loc.x / GRID_SIZE), floor(world_loc.y / GRID_SIZE)) + +func set_selected_tile(tile: Vector2i) -> void: + world_grid.clear_layer(Constants.TilemapLayers.CURSOR) + world_grid.set_cell(Constants.TilemapLayers.CURSOR, tile,0,Vector2i(0,7)) + +func corrupt_location(loc: Vector2i) -> bool: + return world_data[loc].change_layer(Constants.TilemapLayers.CORRUPTION, true) + +func get_corrupted_cells() -> Array[Vector2i]: + return world_data.values().filter(func(cell: CellData): return cell.is_corrupted()).map(func(cell: CellData) -> Vector2i: return cell._pos) + +func change_location_data(pos: Vector2i, layer: int, data: Vector2i) -> void: + if not world_data.has(pos): + world_data[pos] = CellData.new(pos) + world_data[pos].change_layer(layer, data) + world_grid.set_cell(layer, pos, 0, data) + +func get_location_data(pos: Vector2i) -> CellData: + if world_data.has(pos): + return world_data[pos] + return null + +func change_location_resource(pos: Vector2i, data: GameResource) -> void: + world_data[pos].change_resource(data) diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index bf08e2c..7bafc96 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -6,6 +6,9 @@ extends Node } var _pos: Vector2i +func _to_string() -> String: + return "{%s %s}" % [_pos, layer_info] + func _init(pos: Vector2i) -> void: _pos = pos diff --git a/scripts/game_resource.gd b/scripts/game_resource.gd index fea787d..5cb0bea 100644 --- a/scripts/game_resource.gd +++ b/scripts/game_resource.gd @@ -6,3 +6,6 @@ extends Resource @export_range(-1, 1, 0.05) var spawn_region_max: float @export var pickup_value: int @export var name: String + +func _to_string() -> String: + return name diff --git a/scripts/player.gd b/scripts/player.gd new file mode 100644 index 0000000..89d28a6 --- /dev/null +++ b/scripts/player.gd @@ -0,0 +1,27 @@ +extends CharacterBody2D +class_name Player + +@export var SPEED := 4 + +var last_direction = 0 +var interaction_location: Vector2i + +@onready var animation_player: AnimationPlayer = $AnimationPlayer + +func _physics_process(delta: float) -> void: + var input_direction := Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down") + velocity = input_direction * SPEED / delta + move_and_slide() + + if input_direction: + animation_player.play() + last_direction = input_direction.angle() + 3 * PI / 2 + rotation = last_direction + interaction_location = Grid.world_to_grid(position) + Vector2i(input_direction.round()) + Grid.set_selected_tile(interaction_location) + else: + animation_player.stop() + +func _input(event: InputEvent) -> void: + if event.is_action_pressed("ui_accept"): + print("Interacted with: %s" % Grid.get_location_data(interaction_location)) diff --git a/scripts/resource_manager.gd b/scripts/resource_manager.gd index 507c122..1b7d968 100644 --- a/scripts/resource_manager.gd +++ b/scripts/resource_manager.gd @@ -6,14 +6,14 @@ signal changed_resource @export var resources := {} -func _on_timer_timeout() -> void: - var corrupted_resources := world.get_corrupted_resources() - if corrupted_resources.size() > 0: - var changed_resources := {} - for corrupted_resource: CellData in corrupted_resources: - var res: GameResource = corrupted_resource.get_resource() - if not resources.has(res): - resources[res] = 0 - resources[res] += res.pickup_value - changed_resources[res] = resources[res] - changed_resource.emit(ResourceChangedSignal.new(changed_resources)) +#func _on_timer_timeout() -> void: + #var corrupted_resources := Grid.get_corrupted_resources() + #if corrupted_resources.size() > 0: + #var changed_resources := {} + #for corrupted_resource: CellData in corrupted_resources: + #var res: GameResource = corrupted_resource.get_resource() + #if not resources.has(res): + #resources[res] = 0 + #resources[res] += res.pickup_value + #changed_resources[res] = resources[res] + #changed_resource.emit(ResourceChangedSignal.new(changed_resources)) diff --git a/scripts/world.gd b/scripts/world.gd index cf938a2..b44ece5 100644 --- a/scripts/world.gd +++ b/scripts/world.gd @@ -1,6 +1,7 @@ class_name World extends Node2D @export var game_resources: Array[GameResource] +const PLAYER = preload("res://scene/player.tscn") var terrain_noise := FastNoiseLite.new() var resource_noise: Noise = FastNoiseLite.new() @@ -12,8 +13,6 @@ var temp_noise_reg = [] var noise_regions := [-999,0,999] var atlas_regions := [Vector2i(0,1),Vector2i(0,0)] -var world_data: Dictionary = {} - @onready var world_grid: TileMap = $world_grid func get_noise_value(x: int, y: int): @@ -33,12 +32,13 @@ func get_noise_region(x,y): return i func _ready(): + Grid.init(world_grid) terrain_noise.seed = randi() resource_noise.seed = randi() for x in range(-temp_size, temp_size): for y in range(-temp_size, temp_size): - change_location_data(Vector2i(x,y), Constants.TilemapLayers.GROUND, atlas_regions[get_noise_region(x,y)]) + Grid.change_location_data(Vector2i(x,y), Constants.TilemapLayers.GROUND, atlas_regions[get_noise_region(x,y)]) var tile_res := is_resource_tile(x,y) if tile_res: change_location_resource(Vector2i(x,y), tile_res) @@ -47,29 +47,17 @@ func _ready(): prints(temp_noise_val.min(), temp_noise_val.max()) for region in noise_regions.size(): prints(region, noise_regions[region], temp_noise_reg.count(region)) - -func _process(delta): - var mouse_pos = world_grid.local_to_map(get_local_mouse_position()) - world_grid.clear_layer(Constants.TilemapLayers.CURSOR) - world_grid.set_cell(Constants.TilemapLayers.CURSOR, mouse_pos,0,Vector2i(0,7)) + var player = PLAYER.instantiate() + add_child(player) func corrupt_location(loc: Vector2i): - if world_data[loc].change_layer(Constants.TilemapLayers.CORRUPTION, true): - var corrupted_cells := world_data.values().filter(func(cell: CellData): return cell.is_corrupted()).map(func(cell: CellData) -> Vector2i: return cell._pos) + if Grid.corrupt_location(loc): + var corrupted_cells := Grid.get_corrupted_cells() world_grid.set_cells_terrain_connect(Constants.TilemapLayers.CORRUPTION, corrupted_cells, 0, 0) func grid_location(global_pos: Vector2) -> Vector2i: return world_grid.local_to_map(global_pos) - -func change_location_data(pos: Vector2i, layer: int, data: Vector2i) -> void: - if not world_data.has(pos): - world_data[pos] = CellData.new(pos) - world_data[pos].change_layer(layer, data) - world_grid.set_cell(layer, pos, 0, data) func change_location_resource(pos: Vector2i, data: GameResource) -> void: - world_data[pos].change_resource(data) + Grid.change_location_resource(pos, data) world_grid.set_cell(Constants.TilemapLayers.ENVIRONMENT, pos, 0, data.atlas_location) - -func get_corrupted_resources() -> Array: - return world_data.values().filter(func(cell: CellData): return cell.is_corrupted() and cell.has_layer(Constants.TilemapLayers.ENVIRONMENT)) -- 2.49.1 From f87b1cfa9a77d9d26c9f2567ab0517f72c5c694a Mon Sep 17 00:00:00 2001 From: Eric Date: Tue, 27 Feb 2024 10:21:28 -0600 Subject: [PATCH 07/18] Changed resource spawning added interact functionality temp added zoom with scroll wheel --- data/buildings/corruptor.tres | 4 +- data/buildings/hub.tres | 2 +- .../{ => carbon}/carbon_resource.tres | 6 +-- .../carbon/spawn_pattern_close.tres | 11 ++++++ data/game_resources/gem/gem_resource.tres | 11 ++++++ .../gem/spawn_pattern_close.tres | 11 ++++++ data/game_resources/gem_resource.tres | 11 ------ scene/player.tscn | 4 ++ scene/world.tscn | 5 ++- scripts/autoloads/grid.gd | 4 ++ scripts/cell_data.gd | 26 ++++++++++++- scripts/game_resource.gd | 11 +++++- scripts/gui.gd | 2 +- scripts/player.gd | 16 +++++++- scripts/resource_manager.gd | 7 ++++ scripts/spawn_pattern.gd | 34 ++++++++++++++++ scripts/world.gd | 39 +++++++++++-------- 17 files changed, 163 insertions(+), 41 deletions(-) rename data/game_resources/{ => carbon}/carbon_resource.tres (53%) create mode 100644 data/game_resources/carbon/spawn_pattern_close.tres create mode 100644 data/game_resources/gem/gem_resource.tres create mode 100644 data/game_resources/gem/spawn_pattern_close.tres delete mode 100644 data/game_resources/gem_resource.tres create mode 100644 scripts/spawn_pattern.gd diff --git a/data/buildings/corruptor.tres b/data/buildings/corruptor.tres index 7eaacd7..06304a5 100644 --- a/data/buildings/corruptor.tres +++ b/data/buildings/corruptor.tres @@ -1,8 +1,8 @@ [gd_resource type="Resource" script_class="Building" load_steps=4 format=3 uid="uid://bgwoy0uh2cpvu"] -[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon_resource.tres" id="1_5s38g"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="1_5s38g"] [ext_resource type="Script" path="res://scripts/building.gd" id="1_ssts7"] -[ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem_resource.tres" id="2_u1tpw"] +[ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem/gem_resource.tres" id="2_u1tpw"] [resource] script = ExtResource("1_ssts7") diff --git a/data/buildings/hub.tres b/data/buildings/hub.tres index eb1907a..f6cd42c 100644 --- a/data/buildings/hub.tres +++ b/data/buildings/hub.tres @@ -2,7 +2,7 @@ [ext_resource type="Script" path="res://scripts/expansion_patterns/expansion_square_pattern.gd" id="1_attvt"] [ext_resource type="Script" path="res://scripts/building.gd" id="1_ssd30"] -[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon_resource.tres" id="2_d8jrj"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_d8jrj"] [sub_resource type="Resource" id="Resource_nqpn0"] script = ExtResource("1_attvt") diff --git a/data/game_resources/carbon_resource.tres b/data/game_resources/carbon/carbon_resource.tres similarity index 53% rename from data/game_resources/carbon_resource.tres rename to data/game_resources/carbon/carbon_resource.tres index ec041b2..8037464 100644 --- a/data/game_resources/carbon_resource.tres +++ b/data/game_resources/carbon/carbon_resource.tres @@ -1,11 +1,11 @@ -[gd_resource type="Resource" script_class="GameResource" load_steps=2 format=3 uid="uid://bpjj0x7jr1k6u"] +[gd_resource type="Resource" script_class="GameResource" load_steps=3 format=3 uid="uid://bpjj0x7jr1k6u"] [ext_resource type="Script" path="res://scripts/game_resource.gd" id="1_4maxk"] +[ext_resource type="Resource" uid="uid://bsrqp68lxf2f" path="res://data/game_resources/carbon/spawn_pattern_close.tres" id="2_eyt7m"] [resource] script = ExtResource("1_4maxk") atlas_location = Vector2i(5, 3) -spawn_region_min = -0.4 -spawn_region_max = -0.3 pickup_value = 20 name = "Carbon" +spawn_patterns = [ExtResource("2_eyt7m")] diff --git a/data/game_resources/carbon/spawn_pattern_close.tres b/data/game_resources/carbon/spawn_pattern_close.tres new file mode 100644 index 0000000..110213e --- /dev/null +++ b/data/game_resources/carbon/spawn_pattern_close.tres @@ -0,0 +1,11 @@ +[gd_resource type="Resource" script_class="SpawnPattern" load_steps=2 format=3 uid="uid://bsrqp68lxf2f"] + +[ext_resource type="Script" path="res://scripts/spawn_pattern.gd" id="1_pksks"] + +[resource] +script = ExtResource("1_pksks") +min_distance = 8 +max_distance = 20 +min_spread = 15 +quantity = 4 +cluster_size = 12 diff --git a/data/game_resources/gem/gem_resource.tres b/data/game_resources/gem/gem_resource.tres new file mode 100644 index 0000000..c7f0b25 --- /dev/null +++ b/data/game_resources/gem/gem_resource.tres @@ -0,0 +1,11 @@ +[gd_resource type="Resource" script_class="GameResource" load_steps=3 format=3 uid="uid://dr00rd4f42jqe"] + +[ext_resource type="Script" path="res://scripts/game_resource.gd" id="1_tfoa4"] +[ext_resource type="Resource" uid="uid://0crnt5nbhhlv" path="res://data/game_resources/gem/spawn_pattern_close.tres" id="2_n3fuo"] + +[resource] +script = ExtResource("1_tfoa4") +atlas_location = Vector2i(5, 6) +pickup_value = 10 +name = "Gem" +spawn_patterns = Array[Resource("res://scripts/spawn_pattern.gd")]([ExtResource("2_n3fuo")]) diff --git a/data/game_resources/gem/spawn_pattern_close.tres b/data/game_resources/gem/spawn_pattern_close.tres new file mode 100644 index 0000000..d625b8b --- /dev/null +++ b/data/game_resources/gem/spawn_pattern_close.tres @@ -0,0 +1,11 @@ +[gd_resource type="Resource" script_class="SpawnPattern" load_steps=2 format=3 uid="uid://0crnt5nbhhlv"] + +[ext_resource type="Script" path="res://scripts/spawn_pattern.gd" id="1_bi4rm"] + +[resource] +script = ExtResource("1_bi4rm") +min_distance = 16 +max_distance = 40 +min_spread = 30 +quantity = 4 +cluster_size = 6 diff --git a/data/game_resources/gem_resource.tres b/data/game_resources/gem_resource.tres deleted file mode 100644 index f132873..0000000 --- a/data/game_resources/gem_resource.tres +++ /dev/null @@ -1,11 +0,0 @@ -[gd_resource type="Resource" script_class="GameResource" load_steps=2 format=3 uid="uid://dr00rd4f42jqe"] - -[ext_resource type="Script" path="res://scripts/game_resource.gd" id="1_tfoa4"] - -[resource] -script = ExtResource("1_tfoa4") -atlas_location = Vector2i(5, 6) -spawn_region_min = 0.4 -spawn_region_max = 0.8 -pickup_value = 10 -name = "Gem" diff --git a/scene/player.tscn b/scene/player.tscn index c5fa2ef..0baa3a1 100644 --- a/scene/player.tscn +++ b/scene/player.tscn @@ -47,3 +47,7 @@ libraries = { } [node name="Camera2D" type="Camera2D" parent="."] + +[node name="InteractionTimer" type="Timer" parent="."] +process_callback = 0 +one_shot = true diff --git a/scene/world.tscn b/scene/world.tscn index f6422a3..6514d1e 100644 --- a/scene/world.tscn +++ b/scene/world.tscn @@ -1,9 +1,9 @@ [gd_scene load_steps=12 format=3 uid="uid://m0us5xqa3gnk"] [ext_resource type="Script" path="res://scripts/world.gd" id="1_yf6q1"] -[ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem_resource.tres" id="2_rn4a2"] +[ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem/gem_resource.tres" id="2_rn4a2"] [ext_resource type="TileSet" uid="uid://d1sh6dy2w10b0" path="res://data/scifi_tileset.tres" id="2_sa7dm"] -[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon_resource.tres" id="3_pq6ic"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="3_pq6ic"] [ext_resource type="Script" path="res://scripts/building_manager.gd" id="4_61js3"] [ext_resource type="Script" path="res://scripts/resource_manager.gd" id="5_k5643"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="5_qhth7"] @@ -90,6 +90,7 @@ layout_mode = 2 columns = 2 [node name="BottomBar" type="PanelContainer" parent="CanvasLayer/GUI"] +visible = false layout_mode = 1 anchors_preset = 12 anchor_top = 1.0 diff --git a/scripts/autoloads/grid.gd b/scripts/autoloads/grid.gd index 86f1740..8d63c7a 100644 --- a/scripts/autoloads/grid.gd +++ b/scripts/autoloads/grid.gd @@ -10,6 +10,9 @@ func init(grid: TileMap) -> void: func world_to_grid(world_loc: Vector2) -> Vector2i: return Vector2i(floor(world_loc.x / GRID_SIZE), floor(world_loc.y / GRID_SIZE)) +func grid_to_world_center(grid_loc: Vector2i) -> Vector2: + return Vector2((grid_loc.x + 0.5) * GRID_SIZE, (grid_loc.y + 0.5) * GRID_SIZE) + func set_selected_tile(tile: Vector2i) -> void: world_grid.clear_layer(Constants.TilemapLayers.CURSOR) world_grid.set_cell(Constants.TilemapLayers.CURSOR, tile,0,Vector2i(0,7)) @@ -33,3 +36,4 @@ func get_location_data(pos: Vector2i) -> CellData: func change_location_resource(pos: Vector2i, data: GameResource) -> void: world_data[pos].change_resource(data) + world_grid.set_cell(Constants.TilemapLayers.ENVIRONMENT, pos, 0, data.atlas_location) diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index 7bafc96..00dfb89 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -1,10 +1,11 @@ class_name CellData -extends Node +extends Resource @export var layer_info: Dictionary = { Constants.TilemapLayers.CORRUPTION: false } var _pos: Vector2i +var interaction_display: ProgressBar func _to_string() -> String: return "{%s %s}" % [_pos, layer_info] @@ -24,8 +25,31 @@ func change_resource(data: GameResource) -> void: func get_resource() -> GameResource: return layer_info[Constants.TilemapLayers.ENVIRONMENT] as GameResource +func has_resource() -> bool: + return has_layer(Constants.TilemapLayers.ENVIRONMENT) + func is_corrupted() -> bool: return layer_info[Constants.TilemapLayers.CORRUPTION] func has_layer(layer: int) -> bool: return layer_info.has(layer) + +func interact(timer: Timer) -> void: + var is_interactable := has_resource() or has_layer(Constants.TilemapLayers.BUILDINGS) + if is_interactable and not interaction_display: + timer.timeout.connect(_on_interaction_finished.bind(timer)) + timer.start(3) + + interaction_display = ProgressBar.new() + interaction_display.position = Grid.grid_to_world_center(_pos) - Vector2(30, 10) + interaction_display.size = Vector2(60, 20) + interaction_display.show_percentage = false + var tween = timer.get_tree().create_tween() + tween.tween_property(interaction_display, "value", 100, 3) + timer.get_parent().add_sibling(interaction_display) + +func _on_interaction_finished(timer: Timer) -> void: + timer.timeout.disconnect(_on_interaction_finished) + if has_resource(): + interaction_display.queue_free() + get_resource().gained_resource.emit(get_resource()) diff --git a/scripts/game_resource.gd b/scripts/game_resource.gd index 5cb0bea..e4654fd 100644 --- a/scripts/game_resource.gd +++ b/scripts/game_resource.gd @@ -1,11 +1,18 @@ class_name GameResource extends Resource +signal gained_resource(res: GameResource) + @export var atlas_location: Vector2i -@export_range(-1, 1, 0.05) var spawn_region_min: float -@export_range(-1, 1, 0.05) var spawn_region_max: float @export var pickup_value: int @export var name: String +@export var spawn_patterns: Array[SpawnPattern] func _to_string() -> String: return name + +func get_spawn_locations() -> Array[Vector2i]: + var spawns: Array[Vector2i] = [] + for spawn in spawn_patterns: + spawns.append_array(spawn.get_spawn_locations()) + return spawns diff --git a/scripts/gui.gd b/scripts/gui.gd index 9d996f2..2a27c60 100644 --- a/scripts/gui.gd +++ b/scripts/gui.gd @@ -11,7 +11,7 @@ func _on_resource_manager_changed_resource(changed: ResourceChangedSignal) -> vo if not _resource_displays.has(resource): var atlas_tex := AtlasTexture.new() atlas_tex.atlas = SCIFI_TILESHEET - atlas_tex.region = Rect2(128 * resource.atlas_location.x, 128 * resource.atlas_location.y, 128, 128) + atlas_tex.region = Rect2(Grid.GRID_SIZE * resource.atlas_location.x, Grid.GRID_SIZE * resource.atlas_location.y, Grid.GRID_SIZE, Grid.GRID_SIZE) var img := TextureRect.new() img.texture = atlas_tex img.expand_mode = TextureRect.EXPAND_FIT_WIDTH_PROPORTIONAL diff --git a/scripts/player.gd b/scripts/player.gd index 89d28a6..cdd75dd 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -7,6 +7,7 @@ var last_direction = 0 var interaction_location: Vector2i @onready var animation_player: AnimationPlayer = $AnimationPlayer +@onready var interaction_timer: Timer = $InteractionTimer func _physics_process(delta: float) -> void: var input_direction := Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down") @@ -14,6 +15,7 @@ func _physics_process(delta: float) -> void: move_and_slide() if input_direction: + animation_player.current_animation = "walk" animation_player.play() last_direction = input_direction.angle() + 3 * PI / 2 rotation = last_direction @@ -24,4 +26,16 @@ func _physics_process(delta: float) -> void: func _input(event: InputEvent) -> void: if event.is_action_pressed("ui_accept"): - print("Interacted with: %s" % Grid.get_location_data(interaction_location)) + Grid.get_location_data(interaction_location).interact(interaction_timer) + print("interaction started") + +func _finished_interaction(results: Dictionary) -> void: + print("interaction finished: %s" % results) + +func _unhandled_input(event): + if event is InputEventMouseButton: + match event.button_index: + MOUSE_BUTTON_WHEEL_DOWN: + $Camera2D.zoom -= Vector2(0.01, 0.01) + MOUSE_BUTTON_WHEEL_UP: + $Camera2D.zoom += Vector2(0.01, 0.01) diff --git a/scripts/resource_manager.gd b/scripts/resource_manager.gd index 1b7d968..6b50340 100644 --- a/scripts/resource_manager.gd +++ b/scripts/resource_manager.gd @@ -6,6 +6,13 @@ signal changed_resource @export var resources := {} +func _on_gained_resource(res: GameResource) -> void: + print("Gained Resource: %s" % res) + var changed_resources := { + res: res.pickup_value + } + changed_resource.emit(ResourceChangedSignal.new(changed_resources)) + #func _on_timer_timeout() -> void: #var corrupted_resources := Grid.get_corrupted_resources() #if corrupted_resources.size() > 0: diff --git a/scripts/spawn_pattern.gd b/scripts/spawn_pattern.gd new file mode 100644 index 0000000..0c3d587 --- /dev/null +++ b/scripts/spawn_pattern.gd @@ -0,0 +1,34 @@ +extends Resource +class_name SpawnPattern + +@export var min_distance: int +@export var max_distance: int +@export var min_spread: int +@export var quantity: int +@export var cluster_size: int + +func get_spawn_locations() -> Array[Vector2i]: + var spawns: Array[Vector2i] = [] + var clusters: Array[Vector2] = [] + for cluster_i in range(quantity): + var cluster + var is_valid_cluster := false + while not is_valid_cluster: + is_valid_cluster = true + var dist = randf_range(min_distance, max_distance) + var angle = randf_range(0, 2*PI) + cluster = Vector2.RIGHT.rotated(angle) + cluster *= dist + for old_cluster: Vector2 in clusters: + is_valid_cluster = is_valid_cluster and old_cluster.distance_to(cluster) > min_spread + clusters.append(cluster) + + var local_spawns = [Vector2i(cluster)] + for point in range(cluster_size - 1): + var next = local_spawns.pick_random() + while local_spawns.has(next): + var next_change = [Vector2i.LEFT, Vector2i.RIGHT, Vector2i.UP, Vector2i.DOWN].pick_random() + next = next + next_change + local_spawns.append(next) + spawns.append_array(local_spawns) + return spawns diff --git a/scripts/world.gd b/scripts/world.gd index b44ece5..4f7dc22 100644 --- a/scripts/world.gd +++ b/scripts/world.gd @@ -4,7 +4,7 @@ class_name World extends Node2D const PLAYER = preload("res://scene/player.tscn") var terrain_noise := FastNoiseLite.new() -var resource_noise: Noise = FastNoiseLite.new() +#var resource_noise: Noise = FastNoiseLite.new() var temp_size = 150 var temp_noise_val = [] @@ -14,16 +14,18 @@ var noise_regions := [-999,0,999] var atlas_regions := [Vector2i(0,1),Vector2i(0,0)] @onready var world_grid: TileMap = $world_grid +@onready var resource_manager: Node2D = $ResourceManager func get_noise_value(x: int, y: int): return terrain_noise.get_noise_2d(x,y) * 500 -func is_resource_tile(x: int, y: int) -> GameResource: - for res: GameResource in game_resources: - var noise = resource_noise.get_noise_2d(x, y) - if res.spawn_region_min < noise and noise < res.spawn_region_max: - return res - return null +#func is_resource_tile(x: int, y: int) -> GameResource: + #var dist = sqrt(x ^ 2 + y ^ 2) + #for res: GameResource in game_resources: + #var noise = resource_noise.get_noise_2d(x, y) + #if res.distance_probability(dist) > (noise + 1.0) / 2.0: + #return res + #return null func get_noise_region(x,y): var noise_val = get_noise_value(x,y) @@ -34,14 +36,16 @@ func get_noise_region(x,y): func _ready(): Grid.init(world_grid) terrain_noise.seed = randi() - resource_noise.seed = randi() + #resource_noise.seed = randi() for x in range(-temp_size, temp_size): for y in range(-temp_size, temp_size): Grid.change_location_data(Vector2i(x,y), Constants.TilemapLayers.GROUND, atlas_regions[get_noise_region(x,y)]) - var tile_res := is_resource_tile(x,y) - if tile_res: - change_location_resource(Vector2i(x,y), tile_res) + #var tile_res := is_resource_tile(x,y) + #if tile_res: + #change_location_resource(Vector2i(x,y), tile_res) + #if not tile_res.gained_resource.is_connected(resource_manager._on_gained_resource): + #tile_res.gained_resource.connect(resource_manager._on_gained_resource) temp_noise_val.append(get_noise_value(x,y)) temp_noise_reg.append(get_noise_region(x,y)) prints(temp_noise_val.min(), temp_noise_val.max()) @@ -49,15 +53,16 @@ func _ready(): prints(region, noise_regions[region], temp_noise_reg.count(region)) var player = PLAYER.instantiate() add_child(player) + add_resources_to_map() func corrupt_location(loc: Vector2i): if Grid.corrupt_location(loc): var corrupted_cells := Grid.get_corrupted_cells() world_grid.set_cells_terrain_connect(Constants.TilemapLayers.CORRUPTION, corrupted_cells, 0, 0) -func grid_location(global_pos: Vector2) -> Vector2i: - return world_grid.local_to_map(global_pos) - -func change_location_resource(pos: Vector2i, data: GameResource) -> void: - Grid.change_location_resource(pos, data) - world_grid.set_cell(Constants.TilemapLayers.ENVIRONMENT, pos, 0, data.atlas_location) +func add_resources_to_map() -> void: + for res: GameResource in game_resources: + res.gained_resource.connect(resource_manager._on_gained_resource) + var spawns = res.get_spawn_locations() + for spawn in spawns: + Grid.change_location_resource(spawn, res) -- 2.49.1 From 50093e5937160853b41cef701bc4701deb901eab Mon Sep 17 00:00:00 2001 From: Eric Date: Wed, 28 Feb 2024 07:12:09 -0600 Subject: [PATCH 08/18] interaction wheel cancel interaction wheel --- assets/scifi_tilesheet@2.png | Bin 105529 -> 109090 bytes data/interactions/build.tres | 13 ++++++++ data/interactions/gather.tres | 13 ++++++++ project.godot | 57 ++++++++++++++++++++++++++++++++++ scene/interaction_wheel.tscn | 49 +++++++++++++++++++++++++++++ scripts/cell_data.gd | 16 +++++++++- scripts/interaction.gd | 5 +++ scripts/interaction_wheel.gd | 24 ++++++++++++++ scripts/player.gd | 16 +++++++--- 9 files changed, 188 insertions(+), 5 deletions(-) create mode 100644 data/interactions/build.tres create mode 100644 data/interactions/gather.tres create mode 100644 scene/interaction_wheel.tscn create mode 100644 scripts/interaction.gd create mode 100644 scripts/interaction_wheel.gd diff --git a/assets/scifi_tilesheet@2.png b/assets/scifi_tilesheet@2.png index 96b2cbcae4bde4ddf68e779ce481aeed88377a47..040c0288cbbf8b4d2984ba5802b24623a224fc48 100644 GIT binary patch delta 88064 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 A5&!@I delta 84516 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%0DN0@ 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 diff --git a/data/interactions/build.tres b/data/interactions/build.tres new file mode 100644 index 0000000..d51c770 --- /dev/null +++ b/data/interactions/build.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="Interaction" load_steps=4 format=3 uid="uid://bo3e2jefukgdy"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_bglkk"] +[ext_resource type="Script" path="res://scripts/interaction.gd" id="2_h5okx"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_3e2ed"] +atlas = ExtResource("1_bglkk") +region = Rect2(960, 512, 64, 64) + +[resource] +script = ExtResource("2_h5okx") +name = "Build" +image = SubResource("AtlasTexture_3e2ed") diff --git a/data/interactions/gather.tres b/data/interactions/gather.tres new file mode 100644 index 0000000..5bc3144 --- /dev/null +++ b/data/interactions/gather.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="Interaction" load_steps=4 format=3 uid="uid://r4evto2nkehg"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_cquks"] +[ext_resource type="Script" path="res://scripts/interaction.gd" id="1_m76d8"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_f8jvb"] +atlas = ExtResource("1_cquks") +region = Rect2(1024, 512, 64, 64) + +[resource] +script = ExtResource("1_m76d8") +name = "Gather" +image = SubResource("AtlasTexture_f8jvb") diff --git a/project.godot b/project.godot index 0823c45..af1e204 100644 --- a/project.godot +++ b/project.godot @@ -27,6 +27,63 @@ gdscript/warnings/untyped_declaration=1 theme/custom="res://data/world_theme.tres" +[input] + +view_right={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":2,"axis_value":1.0,"script":null) +] +} +view_left={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":2,"axis_value":-1.0,"script":null) +] +} +view_up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":3,"axis_value":-1.0,"script":null) +] +} +view_down={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":3,"axis_value":1.0,"script":null) +] +} +move_left={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":-1.0,"script":null) +] +} +move_right={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":1.0,"script":null) +] +} +move_up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":-1.0,"script":null) +] +} +move_down={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null) +] +} +select={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":false,"script":null) +] +} + [rendering] textures/canvas_textures/default_texture_filter=0 diff --git a/scene/interaction_wheel.tscn b/scene/interaction_wheel.tscn new file mode 100644 index 0000000..a60d93f --- /dev/null +++ b/scene/interaction_wheel.tscn @@ -0,0 +1,49 @@ +[gd_scene load_steps=6 format=3 uid="uid://bq0jhdgh104y6"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_1ljdt"] +[ext_resource type="Script" path="res://scripts/interaction_wheel.gd" id="1_gdnx3"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_7xl34"] +atlas = ExtResource("1_1ljdt") +region = Rect2(832, 512, 128, 128) + +[sub_resource type="AtlasTexture" id="AtlasTexture_gdnoe"] +atlas = ExtResource("1_1ljdt") +region = Rect2(1024, 512, 64, 64) + +[sub_resource type="AtlasTexture" id="AtlasTexture_ci5w3"] +atlas = ExtResource("1_1ljdt") +region = Rect2(960, 576, 64, 64) + +[node name="InteractionWheel" type="Node2D"] +script = ExtResource("1_gdnx3") + +[node name="Wheel" type="Sprite2D" parent="."] +texture = SubResource("AtlasTexture_7xl34") + +[node name="Interactions" type="Node2D" parent="."] + +[node name="SpriteNorth" type="Sprite2D" parent="Interactions"] +position = Vector2(0, -96) +texture = SubResource("AtlasTexture_gdnoe") + +[node name="SpriteEast" type="Sprite2D" parent="Interactions"] +visible = false +position = Vector2(96, 0) +texture = SubResource("AtlasTexture_gdnoe") + +[node name="SpriteWest" type="Sprite2D" parent="Interactions"] +visible = false +position = Vector2(-96, 0) +texture = SubResource("AtlasTexture_gdnoe") + +[node name="SpriteSouth" type="Sprite2D" parent="Interactions"] +visible = false +position = Vector2(0, 96) +texture = SubResource("AtlasTexture_gdnoe") + +[node name="Cursor" type="Sprite2D" parent="."] +visible = false +texture = SubResource("AtlasTexture_ci5w3") +centered = false +offset = Vector2(0, -32) diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index 00dfb89..7e363c5 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -1,6 +1,9 @@ class_name CellData extends Resource +const BUILD = preload("res://data/interactions/build.tres") +const GATHER = preload("res://data/interactions/gather.tres") + @export var layer_info: Dictionary = { Constants.TilemapLayers.CORRUPTION: false } @@ -27,6 +30,9 @@ func get_resource() -> GameResource: func has_resource() -> bool: return has_layer(Constants.TilemapLayers.ENVIRONMENT) + +func has_building() -> bool: + return has_layer(Constants.TilemapLayers.BUILDINGS) func is_corrupted() -> bool: return layer_info[Constants.TilemapLayers.CORRUPTION] @@ -35,7 +41,7 @@ func has_layer(layer: int) -> bool: return layer_info.has(layer) func interact(timer: Timer) -> void: - var is_interactable := has_resource() or has_layer(Constants.TilemapLayers.BUILDINGS) + var is_interactable := has_resource() or not has_building() if is_interactable and not interaction_display: timer.timeout.connect(_on_interaction_finished.bind(timer)) timer.start(3) @@ -47,6 +53,14 @@ func interact(timer: Timer) -> void: var tween = timer.get_tree().create_tween() tween.tween_property(interaction_display, "value", 100, 3) timer.get_parent().add_sibling(interaction_display) + +func get_interaction_options() -> Array[Interaction]: + var interactions: Array[Interaction] = [] + if has_resource(): + interactions.append(GATHER) + if not has_building(): + interactions.append(BUILD) + return interactions func _on_interaction_finished(timer: Timer) -> void: timer.timeout.disconnect(_on_interaction_finished) diff --git a/scripts/interaction.gd b/scripts/interaction.gd new file mode 100644 index 0000000..25cf578 --- /dev/null +++ b/scripts/interaction.gd @@ -0,0 +1,5 @@ +extends Resource +class_name Interaction + +@export var name: String +@export var image: AtlasTexture diff --git a/scripts/interaction_wheel.gd b/scripts/interaction_wheel.gd new file mode 100644 index 0000000..65eacee --- /dev/null +++ b/scripts/interaction_wheel.gd @@ -0,0 +1,24 @@ +extends Node2D +class_name InteractionWheel + +var interactions: Array[Interaction] + +@onready var interaction_icons: Array[Node] = $Interactions.get_children() +@onready var cursor: Sprite2D = $Cursor + +func initialize(interaction_location: Vector2i, interactions: Array[Interaction]) -> void: + position = Grid.grid_to_world_center(interaction_location) + self.interactions = interactions + +func _ready() -> void: + for i in range(interactions.size()): + interaction_icons[i].texture = interactions[i].image + interaction_icons[i].show() + +func _process(delta: float) -> void: + var selection_direction = Input.get_vector("view_left", "view_right", "view_up", "view_down") + if selection_direction: + cursor.rotation = selection_direction.angle() + cursor.show() + if Input.is_action_just_pressed("select"): + pass diff --git a/scripts/player.gd b/scripts/player.gd index cdd75dd..9f5a7e5 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -5,16 +5,21 @@ class_name Player var last_direction = 0 var interaction_location: Vector2i +var _interaction_options: InteractionWheel @onready var animation_player: AnimationPlayer = $AnimationPlayer @onready var interaction_timer: Timer = $InteractionTimer +const INTERACTION_WHEEL = preload("res://scene/interaction_wheel.tscn") func _physics_process(delta: float) -> void: - var input_direction := Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down") + var input_direction := Input.get_vector("move_left", "move_right", "move_up", "move_down") velocity = input_direction * SPEED / delta move_and_slide() if input_direction: + if _interaction_options: + _interaction_options.queue_free() + _interaction_options = null animation_player.current_animation = "walk" animation_player.play() last_direction = input_direction.angle() + 3 * PI / 2 @@ -25,9 +30,12 @@ func _physics_process(delta: float) -> void: animation_player.stop() func _input(event: InputEvent) -> void: - if event.is_action_pressed("ui_accept"): - Grid.get_location_data(interaction_location).interact(interaction_timer) - print("interaction started") + if event.is_action_pressed("select") and not _interaction_options: + var interactions: Array[Interaction] = Grid.get_location_data(interaction_location).get_interaction_options() + if interactions.size() > 0: + _interaction_options = INTERACTION_WHEEL.instantiate() + _interaction_options.initialize(interaction_location, interactions) + add_sibling(_interaction_options) func _finished_interaction(results: Dictionary) -> void: print("interaction finished: %s" % results) -- 2.49.1 From abde90e75f004bc30afebe88123729e644b6127c Mon Sep 17 00:00:00 2001 From: Eric Date: Fri, 1 Mar 2024 14:39:48 -0600 Subject: [PATCH 09/18] Interaction wheel do interaction --- assets/scifi_tilesheet@2.png | Bin 109090 -> 122580 bytes data/interactions/build.tres | 13 --- data/interactions/build/build.tres | 13 +++ data/interactions/build/interaction_build.gd | 6 + data/interactions/gather.tres | 13 --- data/interactions/gather/gather.tres | 13 +++ .../interactions/gather/interaction_gather.gd | 24 ++++ {scripts => data/interactions}/interaction.gd | 3 + scene/interaction_wheel.tscn | 53 ++++++++- scene/player.tscn | 106 +++++++++++++----- scripts/cell_data.gd | 20 ---- scripts/interaction_wheel.gd | 26 ++++- scripts/player.gd | 16 +-- 13 files changed, 216 insertions(+), 90 deletions(-) delete mode 100644 data/interactions/build.tres create mode 100644 data/interactions/build/build.tres create mode 100644 data/interactions/build/interaction_build.gd delete mode 100644 data/interactions/gather.tres create mode 100644 data/interactions/gather/gather.tres create mode 100644 data/interactions/gather/interaction_gather.gd rename {scripts => data/interactions}/interaction.gd (55%) diff --git a/assets/scifi_tilesheet@2.png b/assets/scifi_tilesheet@2.png index 040c0288cbbf8b4d2984ba5802b24623a224fc48..a90388e35443e1c21e74b65bab7c92753faf887d 100644 GIT binary patch literal 122580 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≀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

Rs8k-u-fK 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¨|Beni9wSR-)GZm)tr@cs)y?rTk}|K=Dxc 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ΠC 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 TRV_{HALEv$RwnsIw21!!{Yvd% diff --git a/data/interactions/build.tres b/data/interactions/build.tres deleted file mode 100644 index d51c770..0000000 --- a/data/interactions/build.tres +++ /dev/null @@ -1,13 +0,0 @@ -[gd_resource type="Resource" script_class="Interaction" load_steps=4 format=3 uid="uid://bo3e2jefukgdy"] - -[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_bglkk"] -[ext_resource type="Script" path="res://scripts/interaction.gd" id="2_h5okx"] - -[sub_resource type="AtlasTexture" id="AtlasTexture_3e2ed"] -atlas = ExtResource("1_bglkk") -region = Rect2(960, 512, 64, 64) - -[resource] -script = ExtResource("2_h5okx") -name = "Build" -image = SubResource("AtlasTexture_3e2ed") diff --git a/data/interactions/build/build.tres b/data/interactions/build/build.tres new file mode 100644 index 0000000..c619183 --- /dev/null +++ b/data/interactions/build/build.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="InteractionBuild" load_steps=4 format=3 uid="uid://bo3e2jefukgdy"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_bglkk"] +[ext_resource type="Script" path="res://data/interactions/build/interaction_build.gd" id="2_0g8r2"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_f6dt5"] +atlas = ExtResource("1_bglkk") +region = Rect2(960, 512, 64, 64) + +[resource] +script = ExtResource("2_0g8r2") +name = "Build" +image = SubResource("AtlasTexture_f6dt5") diff --git a/data/interactions/build/interaction_build.gd b/data/interactions/build/interaction_build.gd new file mode 100644 index 0000000..78d7694 --- /dev/null +++ b/data/interactions/build/interaction_build.gd @@ -0,0 +1,6 @@ +extends Interaction +class_name InteractionBuild + +func interact_at(pos: Vector2i, root: Node) -> Array[Interaction]: + print("Building at: %s" % pos) + return [] diff --git a/data/interactions/gather.tres b/data/interactions/gather.tres deleted file mode 100644 index 5bc3144..0000000 --- a/data/interactions/gather.tres +++ /dev/null @@ -1,13 +0,0 @@ -[gd_resource type="Resource" script_class="Interaction" load_steps=4 format=3 uid="uid://r4evto2nkehg"] - -[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_cquks"] -[ext_resource type="Script" path="res://scripts/interaction.gd" id="1_m76d8"] - -[sub_resource type="AtlasTexture" id="AtlasTexture_f8jvb"] -atlas = ExtResource("1_cquks") -region = Rect2(1024, 512, 64, 64) - -[resource] -script = ExtResource("1_m76d8") -name = "Gather" -image = SubResource("AtlasTexture_f8jvb") diff --git a/data/interactions/gather/gather.tres b/data/interactions/gather/gather.tres new file mode 100644 index 0000000..e83bf55 --- /dev/null +++ b/data/interactions/gather/gather.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="InteractionGather" load_steps=4 format=3 uid="uid://r4evto2nkehg"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_cquks"] +[ext_resource type="Script" path="res://data/interactions/gather/interaction_gather.gd" id="2_4amum"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_jjmaq"] +atlas = ExtResource("1_cquks") +region = Rect2(1024, 512, 64, 64) + +[resource] +script = ExtResource("2_4amum") +name = "Gather" +image = SubResource("AtlasTexture_jjmaq") diff --git a/data/interactions/gather/interaction_gather.gd b/data/interactions/gather/interaction_gather.gd new file mode 100644 index 0000000..66b7d80 --- /dev/null +++ b/data/interactions/gather/interaction_gather.gd @@ -0,0 +1,24 @@ +extends Interaction +class_name InteractionGather + +var interaction_display +var _pos + +func interact_at(pos: Vector2i, root: Node) -> Array[Interaction]: + _pos = pos + print("Gathering at: %s" % pos) + + interaction_display = ProgressBar.new() + interaction_display.position = Grid.grid_to_world_center(_pos) - Vector2(30, 10) + interaction_display.size = Vector2(60, 20) + interaction_display.show_percentage = false + var tween = root.create_tween() + tween.tween_property(interaction_display, "value", 100, 3) + tween.tween_callback(_cleanup_gather) + root.add_child(interaction_display) + return [] + +func _cleanup_gather() -> void: + interaction_display.queue_free() + var res: GameResource = Grid.get_location_data(_pos).get_resource() + res.gained_resource.emit(res) diff --git a/scripts/interaction.gd b/data/interactions/interaction.gd similarity index 55% rename from scripts/interaction.gd rename to data/interactions/interaction.gd index 25cf578..c1ec860 100644 --- a/scripts/interaction.gd +++ b/data/interactions/interaction.gd @@ -3,3 +3,6 @@ class_name Interaction @export var name: String @export var image: AtlasTexture + +func interact_at(pos: Vector2i, root: Node) -> Array[Interaction]: + return [] diff --git a/scene/interaction_wheel.tscn b/scene/interaction_wheel.tscn index a60d93f..2d26b23 100644 --- a/scene/interaction_wheel.tscn +++ b/scene/interaction_wheel.tscn @@ -24,17 +24,23 @@ texture = SubResource("AtlasTexture_7xl34") [node name="Interactions" type="Node2D" parent="."] [node name="SpriteNorth" type="Sprite2D" parent="Interactions"] +visible = false position = Vector2(0, -96) texture = SubResource("AtlasTexture_gdnoe") +[node name="SpriteNorthEast" type="Sprite2D" parent="Interactions"] +visible = false +position = Vector2(68, -68) +texture = SubResource("AtlasTexture_gdnoe") + [node name="SpriteEast" type="Sprite2D" parent="Interactions"] visible = false position = Vector2(96, 0) texture = SubResource("AtlasTexture_gdnoe") -[node name="SpriteWest" type="Sprite2D" parent="Interactions"] +[node name="SpriteSouthEast" type="Sprite2D" parent="Interactions"] visible = false -position = Vector2(-96, 0) +position = Vector2(68, 68) texture = SubResource("AtlasTexture_gdnoe") [node name="SpriteSouth" type="Sprite2D" parent="Interactions"] @@ -42,8 +48,49 @@ visible = false position = Vector2(0, 96) texture = SubResource("AtlasTexture_gdnoe") -[node name="Cursor" type="Sprite2D" parent="."] +[node name="SpriteSouthWest" type="Sprite2D" parent="Interactions"] visible = false +position = Vector2(-68, 68) +texture = SubResource("AtlasTexture_gdnoe") + +[node name="SpriteWest" type="Sprite2D" parent="Interactions"] +visible = false +position = Vector2(-96, 0) +texture = SubResource("AtlasTexture_gdnoe") + +[node name="SpriteNorthWest" type="Sprite2D" parent="Interactions"] +visible = false +position = Vector2(-68, -68) +texture = SubResource("AtlasTexture_gdnoe") + +[node name="Cursor" type="Sprite2D" parent="."] texture = SubResource("AtlasTexture_ci5w3") centered = false offset = Vector2(0, -32) + +[node name="InformationPanel" type="Panel" parent="."] +visible = false +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -20.0 +offset_top = -20.0 +offset_right = 20.0 +offset_bottom = 20.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="InteractionLabel" type="Label" parent="InformationPanel"] +layout_mode = 1 +anchors_preset = 5 +anchor_left = 0.5 +anchor_right = 0.5 +offset_left = -20.0 +offset_right = 20.0 +offset_bottom = 24.0 +grow_horizontal = 2 +theme_override_font_sizes/font_size = 8 +text = "Build" +horizontal_alignment = 1 diff --git a/scene/player.tscn b/scene/player.tscn index 0baa3a1..4a9c530 100644 --- a/scene/player.tscn +++ b/scene/player.tscn @@ -1,51 +1,95 @@ -[gd_scene load_steps=7 format=3 uid="uid://dkvcye4mhvshd"] +[gd_scene load_steps=12 format=3 uid="uid://dkvcye4mhvshd"] [ext_resource type="Script" path="res://scripts/player.gd" id="1_j0htm"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_vqdy1"] -[sub_resource type="AtlasTexture" id="AtlasTexture_8yvc7"] +[sub_resource type="AtlasTexture" id="AtlasTexture_rbmjr"] atlas = ExtResource("1_vqdy1") -region = Rect2(640, 192, 64, 64) +region = Rect2(832, 640, 64, 64) + +[sub_resource type="AtlasTexture" id="AtlasTexture_xx5oc"] +atlas = ExtResource("1_vqdy1") +region = Rect2(832, 640, 64, 64) + +[sub_resource type="AtlasTexture" id="AtlasTexture_2ckq3"] +atlas = ExtResource("1_vqdy1") +region = Rect2(896, 704, 64, 64) + +[sub_resource type="AtlasTexture" id="AtlasTexture_vet2c"] +atlas = ExtResource("1_vqdy1") +region = Rect2(960, 704, 64, 64) + +[sub_resource type="AtlasTexture" id="AtlasTexture_fqxfq"] +atlas = ExtResource("1_vqdy1") +region = Rect2(832, 640, 64, 64) + +[sub_resource type="AtlasTexture" id="AtlasTexture_03ery"] +atlas = ExtResource("1_vqdy1") +region = Rect2(896, 640, 64, 64) + +[sub_resource type="AtlasTexture" id="AtlasTexture_ix8o6"] +atlas = ExtResource("1_vqdy1") +region = Rect2(960, 640, 64, 64) + +[sub_resource type="SpriteFrames" id="SpriteFrames_tj1nq"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_rbmjr") +}], +"loop": true, +"name": &"default", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_xx5oc") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_2ckq3") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_xx5oc") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_vet2c") +}], +"loop": true, +"name": &"interact", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_fqxfq") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_03ery") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_fqxfq") +}, { +"duration": 1.0, +"texture": SubResource("AtlasTexture_ix8o6") +}], +"loop": true, +"name": &"walk", +"speed": 5.0 +}] [sub_resource type="RectangleShape2D" id="RectangleShape2D_jav3v"] size = Vector2(40, 45) -[sub_resource type="Animation" id="Animation_47lv4"] -resource_name = "walk" -length = 1.2 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("Sprite2D:position") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 0.2, 0.4, 0.6, 0.8, 1, 1.2), -"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1), -"update": 0, -"values": [Vector2(0, 0), Vector2(0, -1), Vector2(0, -2), Vector2(0, -1), Vector2(0, 0), Vector2(0, 1), Vector2(0, 0)] -} - -[sub_resource type="AnimationLibrary" id="AnimationLibrary_ditnu"] -_data = { -"walk": SubResource("Animation_47lv4") -} - [node name="Player" type="CharacterBody2D"] motion_mode = 1 script = ExtResource("1_j0htm") -[node name="Sprite2D" type="Sprite2D" parent="."] -texture = SubResource("AtlasTexture_8yvc7") +[node name="Sprite" type="AnimatedSprite2D" parent="."] +sprite_frames = SubResource("SpriteFrames_tj1nq") +frame_progress = 0.850199 [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource("RectangleShape2D_jav3v") -[node name="AnimationPlayer" type="AnimationPlayer" parent="."] -libraries = { -"": SubResource("AnimationLibrary_ditnu") -} - [node name="Camera2D" type="Camera2D" parent="."] [node name="InteractionTimer" type="Timer" parent="."] diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index 7e363c5..cb1615c 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -40,20 +40,6 @@ func is_corrupted() -> bool: func has_layer(layer: int) -> bool: return layer_info.has(layer) -func interact(timer: Timer) -> void: - var is_interactable := has_resource() or not has_building() - if is_interactable and not interaction_display: - timer.timeout.connect(_on_interaction_finished.bind(timer)) - timer.start(3) - - interaction_display = ProgressBar.new() - interaction_display.position = Grid.grid_to_world_center(_pos) - Vector2(30, 10) - interaction_display.size = Vector2(60, 20) - interaction_display.show_percentage = false - var tween = timer.get_tree().create_tween() - tween.tween_property(interaction_display, "value", 100, 3) - timer.get_parent().add_sibling(interaction_display) - func get_interaction_options() -> Array[Interaction]: var interactions: Array[Interaction] = [] if has_resource(): @@ -61,9 +47,3 @@ func get_interaction_options() -> Array[Interaction]: if not has_building(): interactions.append(BUILD) return interactions - -func _on_interaction_finished(timer: Timer) -> void: - timer.timeout.disconnect(_on_interaction_finished) - if has_resource(): - interaction_display.queue_free() - get_resource().gained_resource.emit(get_resource()) diff --git a/scripts/interaction_wheel.gd b/scripts/interaction_wheel.gd index 65eacee..da97734 100644 --- a/scripts/interaction_wheel.gd +++ b/scripts/interaction_wheel.gd @@ -1,12 +1,18 @@ extends Node2D class_name InteractionWheel +signal closed + var interactions: Array[Interaction] +var grid_position: Vector2i @onready var interaction_icons: Array[Node] = $Interactions.get_children() @onready var cursor: Sprite2D = $Cursor +@onready var information_panel: Panel = $InformationPanel +@onready var interaction_label: Label = $InformationPanel/InteractionLabel func initialize(interaction_location: Vector2i, interactions: Array[Interaction]) -> void: + grid_position = interaction_location position = Grid.grid_to_world_center(interaction_location) self.interactions = interactions @@ -20,5 +26,21 @@ func _process(delta: float) -> void: if selection_direction: cursor.rotation = selection_direction.angle() cursor.show() - if Input.is_action_just_pressed("select"): - pass + var selection = _get_selection_index(cursor.rotation) + if selection < interactions.size(): + information_panel.show() + interaction_label.text = interactions[selection].name + else: + information_panel.hide() + if Input.is_action_just_pressed("select") and cursor.visible: + var selection = _get_selection_index(cursor.rotation) + print("Selection: %s Rotation: %s" % [selection, cursor.rotation]) + if selection < interactions.size(): + var next_interactions = interactions[selection].interact_at(grid_position, get_tree().root) + if next_interactions.is_empty(): + closed.emit() + queue_free() + +func _get_selection_index(angle: float) -> int: + var adjusted_angle = fposmod(angle + (PI / 2.0), 2.0 * PI) + return floor(((int(floor(adjusted_angle / (PI / 8.0))) + 1) % 16) / 2.0) diff --git a/scripts/player.gd b/scripts/player.gd index 9f5a7e5..8ad05ba 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -7,7 +7,7 @@ var last_direction = 0 var interaction_location: Vector2i var _interaction_options: InteractionWheel -@onready var animation_player: AnimationPlayer = $AnimationPlayer +@onready var sprite: AnimatedSprite2D = $Sprite @onready var interaction_timer: Timer = $InteractionTimer const INTERACTION_WHEEL = preload("res://scene/interaction_wheel.tscn") @@ -19,15 +19,14 @@ func _physics_process(delta: float) -> void: if input_direction: if _interaction_options: _interaction_options.queue_free() - _interaction_options = null - animation_player.current_animation = "walk" - animation_player.play() - last_direction = input_direction.angle() + 3 * PI / 2 + _on_interation_options_closed() + sprite.play("walk") + last_direction = input_direction.angle() + PI / 2 rotation = last_direction interaction_location = Grid.world_to_grid(position) + Vector2i(input_direction.round()) Grid.set_selected_tile(interaction_location) else: - animation_player.stop() + sprite.stop() func _input(event: InputEvent) -> void: if event.is_action_pressed("select") and not _interaction_options: @@ -35,10 +34,11 @@ func _input(event: InputEvent) -> void: if interactions.size() > 0: _interaction_options = INTERACTION_WHEEL.instantiate() _interaction_options.initialize(interaction_location, interactions) + _interaction_options.closed.connect(_on_interation_options_closed) add_sibling(_interaction_options) -func _finished_interaction(results: Dictionary) -> void: - print("interaction finished: %s" % results) +func _on_interation_options_closed() -> void: + _interaction_options = null func _unhandled_input(event): if event is InputEventMouseButton: -- 2.49.1 From ca8cfee1e801e110f5989caa889326886ef83d96 Mon Sep 17 00:00:00 2001 From: Eric Date: Wed, 6 Mar 2024 09:25:28 -0600 Subject: [PATCH 10/18] Added basic build menu and placement --- assets/scifi_tilesheet@2.png | Bin 122580 -> 122881 bytes .../advanced/advanced_building_group.tres | 14 +++ .../buildings/basic/basic_building_group.tres | 16 ++++ data/buildings/basic/harvester_building.tres | 18 ++++ data/buildings/basic/warehouse_building.tres | 20 ++++ {scripts => data/buildings}/building.gd | 3 +- data/buildings/building_base.gd | 13 +++ data/buildings/building_base.tscn | 8 ++ data/buildings/building_group.gd | 7 ++ data/buildings/corruptor.tres | 5 +- data/buildings/hub.tres | 10 +- .../build/advanced/build_advanced.tres | 13 +++ .../advanced/interaction_build_advanced.gd | 6 ++ .../interactions/build/basic/build_basic.tres | 13 +++ .../build/basic/interaction_build_basic.gd | 6 ++ data/interactions/build/interaction_build.gd | 6 +- project.godot | 10 +- scene/build_menu.tscn | 89 ++++++++++++++++++ scene/interaction_bar.tscn | 14 +++ scene/player.tscn | 1 + scripts/build_menu.gd | 67 +++++++++++++ scripts/cell_data.gd | 10 +- scripts/interaction_bar.gd | 13 +++ scripts/interaction_wheel.gd | 3 + scripts/player.gd | 39 ++++++-- 25 files changed, 377 insertions(+), 27 deletions(-) create mode 100644 data/buildings/advanced/advanced_building_group.tres create mode 100644 data/buildings/basic/basic_building_group.tres create mode 100644 data/buildings/basic/harvester_building.tres create mode 100644 data/buildings/basic/warehouse_building.tres rename {scripts => data/buildings}/building.gd (58%) create mode 100644 data/buildings/building_base.gd create mode 100644 data/buildings/building_base.tscn create mode 100644 data/buildings/building_group.gd create mode 100644 data/interactions/build/advanced/build_advanced.tres create mode 100644 data/interactions/build/advanced/interaction_build_advanced.gd create mode 100644 data/interactions/build/basic/build_basic.tres create mode 100644 data/interactions/build/basic/interaction_build_basic.gd create mode 100644 scene/build_menu.tscn create mode 100644 scene/interaction_bar.tscn create mode 100644 scripts/build_menu.gd create mode 100644 scripts/interaction_bar.gd diff --git a/assets/scifi_tilesheet@2.png b/assets/scifi_tilesheet@2.png index a90388e35443e1c21e74b65bab7c92753faf887d..bbc1acf267bf5de9b4ca96b2c6c975d26f359b8d 100644 GIT binary patch delta 18862 zcmZs?c{r4B_%=RvAxp}VT~WxAEZO%g*|KCegp{>NmYBzqz0hJQd-f$0Swf7Z5V9{J zCS*@zn~Y(`@1FX6zrW)>-gl0}A5HVz&+}aOwVda9UH4cEO+*__cr6)}3I%fAnhaQZ zM1%}&Pw?0ZM#VL%{28h>e#{~pZ~En{eN6sn8vnhS)}a~^m8+7+$$WVKa-SFNxYr(QoNl(drSdvX5{7_AYy@Cif|5EVHK}cMKL?!aH!VhMM>dOJ-N4f#FO7lGdHcXA3`{r&bHr zLKb!lKXz`V)QHEfoNRf{o5>t=V5TOcYYZ_vsABEK2laUl5pR041@0UPYHqDQri8&( z>%`{=^UJ1iH&dU4)dvU6ig(WuJL3QT6CV;V&(Ezu&~QamqOCqdh|xa|f2<#blfl3z z#b@DZU}}Wb*#PbWvC5~vTjKE*3?D~I7daf9A4tk+V>%T5@KLMNMTs>*M91@je#_rA zKh7>3JQ_Zd&pDfsd|xGo_~G;JzMwyPeX;IobCF^vZ5wIfJk;|J@?wpq>W5*CdNz|{ z`$R^guhW`R&merRn&)JC;>&;*KaB4o{RJ<93|cg*ZaAu}Y_oZ>?K)G*%PT8v3wffx zdI1Mx{uC#)(N@3uObm0o zL?CYIY>1GGu=jBqvti*J^OgVOi^mXigItLGglz2Q*F29EqRq-$!lZ;l?eBB(bTiAS z?J<6nZ`WYdFxZc{<6mS$XF_nPw+Zt+no>$DBFT62C)ZZcMk+mJ`*4Hr>6;lRjpHBW z>}0Tos1Q2gg}gr(t#b59-y6nzCB5b9WB0I6T*2rBD-O`MnF4aLdgoz zaQ$|xo2#j{-ew$Wryq}VME?CMoi`**ZaOW5KWwH@>XHcUIm!yh5k>n}GndeNp7D%Q zdB*vHWRD%yU@(CN3<_;AITBBU+dFm zF9fXfx5P|Vi$)ua=sM*PerXVMC7H)p$;mCxl`BZYP~s1EwMwr`!TWC|J93xfrK8A6 zTUcwtg!*HQVXd1>r>`S`+ibt=IU768X%qt&_RrOyy&d5ARN5DZow{RJwbfUsHkYON zYRr3LZ2Y2DUNQ6SXt+{tun=QuE3q5mKlVOw3WaR$9vaV}&c3IEwx17?#Tfe^zmImmN^Jzd(?!CoiR+hv6d7-Dmu=tGXbzXg6Y; z4fbqYZUZ82?DRG9BZE{KS-+60Pqf}`KNN^QQHBwF&4}uEX*7%tZuqYb6Zyh?E*k`%Z=BDo{7@(U{4j#BVk_2n&2~fb#LQ7&AL<+JbTjI zu4&EQe~^$Yc+iPN69|11hsW4--K>4*7^mXr8xacd?HjIFj>@m#M%HGXmIV(KCn&^L zde)fUfH-3>21!zG81bv)6Z)o9->kjovypaYZwPB8ODo!{53a@$kNN%8CR|#DQQ1 zE5iXuz~7y=k6JF4(f8LK_R-u;{4q)fvIPuwaB}R{_9ApW@Y3dV^@X#s#&$j-w5by< zmPLh&cV?aH@2{_DU~cw}KP?>a{%Y2YY7*6DxAxdiFN41RMk>4H(N~6`gS|6aZcx-r zz*zM$cM2#N)CI!qOwYn#{K&;vcWtKjTA!kzmdfp0Sc*;JhXMn;@VU^B-$ST?c1GKp0P#h06$!{x|M~S{N-Ur zHa)i%wllx(ZNu}_HRS5)_cImonmbZW?F**9V8?I?FG2L$kH%IsT;PR{whUeATeal| z=YzNccg%T>KMCUoRZYL7|v!7e8ue8>^Vd&3z>~ zTz@N9bHYLt{K)j7>TW{lN}cmL`tKL+uMy3jYf6zzFY9+smr3c$ zp@W#T<&;{x+EXAyrdSGnXZ>d|?-EGbpYM&qRc)2!j`h=ePQ~u=o9oHE6+i14> z3Nd_D@8y}Qs@0!Jcj2biouKVOc)z^&h-pxN9LX_%{1|qbK$Z=CX(&sPt0be&lL$!! zg+e`UY$JaaH~%Vv&JX1CnURylD%Y3--$>BF72k7tLCRlmj5i4lnaxjvO|74;Lr8?? z5KG4tPD)Qs!-YB|mp-dOH|7pEI9JM2mTjFbVs^?_sFn5yZPDnmvJ{Dt3DzswS^j9b zuk8ihKX=~l@n+$335S+bC&AChwHf2u^n9 z(%p~eTlFOrQ->IWr&I3B_QY3p7C!Ye5#okoE!~Is$v( zDwYD)aT4??qc>-vCg0NT8_FR^5gVs14D8_#0T(7 zw5ms}4UJVo_6~OCyWi>*WMnh{EJbWr*AX`*vr?YsK6u~g4Dj(tt0Bj19t{eYpLGy@ z*lm>mFP#|R?_ulX*bu{nCFAT0xya6{7zYV^j}4D+OK%424txNx>-o}1wUV5v38T)F zDsCl*g%6cgaIVv$c18zZtrKgqXM_Ws&$>d{E_-2T&yVs|1peHkDT0=b2gG|Ok8w2X0U4!O)B^qaCr&=#89@ap`bog&nX|lov z!U$m=ds2b*IQ%{4Z84dKl*kQ{z%~lQv@C7CO-N;SS`%lAMkxGhQ%ZXDa5uTgN564S$P{xCoAsukZ4GCrQcEF%o3IclT`mr=EK??X3;2L8aV zH>PFu6x#q(qjqc~gK3UUn~AkPj2NFK6hRpdPOW)|6(KgB?x|}{J10mW3*(X>3d8;Ca&L*aBOt%S@&>Xtn*bcUOW0H7p`8BCN zzNe_c4R~rDbiVQ|n<)%b7nEr&QSNoN#&sX!eUouG{S%;W|HG_C<>!VhmYwXqq0vY-ka#j)E$TN_044iQTaYn(U47=d~Zld+> z4gF%X9vzB%g0SFT6HY=Qg+_d1T2d^Jwo)fvrGA!m67y#um!kagCsN)ya}1u7B>9{S zHZF2%Vl}x;u-5d@^Bn9;=nc${yu??WZ|3fOGa_3E53^AA1tRfWAIM&Bu(5&Dyw_5? zR$8Ay%$M$p7UEy`EIO4}@%PK(MBn|kdOlX6Sw4teOA#~+mbae!kr;p~FDPb`$U(7Z zD>S@Y+7JyLiIO4^rF*HpY^=gh3&1GCMTc2n7A`4QK7CR8T2L!Tky1luHGXI^os&Wv zRtMNJ;L4YvU3PkJCLxaIhrgcrhCv!hd^ynFy$|~40-3ASVjKud(YvCqw(=Qz+x&)b zCzKN|I>v$}sAyB(x9#E9YIVPuO#*Xx{-GWYs0TwYS3$B@Km^6qq0ZKWwDx4Mg?%Gp zN>i%n4o6z;fK}2~MZ)evEpLW6rMZP}hTcPtG`5hn?i%M=WJuv#s)?7%WSM=_5WJU_ zs+%HDDE~M)H%ryX!{iiGbr1E(`9}g5@vP+us&} zaEVUSeeoLrrbei~$ zaAzF2m@B~H?R)nw0_gCO&5okp{y<)g(%e2uoL$x=*zkQ3v69*F{>gfKDQKx$CEY|t z{whi60k#mSNDG=_SL1b!%XVF}HPQnsP3 zmjwWX|BhiZ9R~y*zjk}I%<9JNwu$<>XFyuv%hw4h9u&w*f>rRPf0Zui5+mxd z{H*F|Zl>M_v!}QBC5LDp=T-z$@dVsiHv@?+hyozvf%)q3E=LGK9a;TDE#=}W3fiR^ zn6N>q*7@Yk4xPmN-_91E8mbPPb9c~0^6_ZWkTQEX^BUQgPh6V-VX=0;h^c~w3O8N6WBVT{P-=1}sqe{RY9+@+=5xYVnVq0)MNrq-K&!OzA>fJhmf&kI@HkwQ+ zwIIK2w+#c6l?@tQyI0ma@e}>3>d2_#`YN{b3Z>J<%4N9+R>MaT@1xR6`nD2VsK5hC z8_}(n=rxZx%%IRWQZ7J9mi6LdTUifc+ti(He0&X3r95PF#DL(of8)=7FL0$^Ml#qC zIdD75xePKGbI#|D3)=J^N+k)Ck`7hyF0#A{mec5x!hlmxkyouphfGyf? z`wl-z-@qANP^(1K*qYB zrvKP$ue7pcZ>F~xxAKZML>aSJ zC?Aj0CP(Op5T#qQ$gZD^kiAxJVRzvs`V@Km*bFmE2%$v_jYsRp@-eri1^aKhhk^z@J&+1-UxaRmoM46AcFfs7xui~h%V}RWZqe=yrB(@ zIEd3y(~F}TFc|IF4?u2lUoQhpSWVnwoVW6)i&hKP%ssE~JOtpH@ZSsSE==+019 z5wvHtV6Z#1Ez|jcEci>lW`GQrRbMo{UH^F2Wfi;6!s7&fs2=;_!CBUvNnJRTp>_tf z%@u-Za@NZ9XLNd8C7Bq6%L$L`d~LTVEAoO@>4&WOT?&@?4`*Fl#>jDt%umn|)_~A5 z@&M<;+vjGGSFA^SI)tFX52Lp?=}5$-TSkNgkojecX9Ja)u=H!>u&2ASNBB`S zrPJ|oM=Qq<#xpNlwjCtI3V!a)eU$rATu{&?jF{QT=NY38)IDQoSu==Jc9M@_0;XlL zFhLLEx=TLqQfo47tWq9=B3d~DBevh$P@p>`S)OU>CiUc>)BS03{L8e^$2+;qz{dQz z_c8ohCq#6*JFjyTTmOZz`sG$(m0IP4Hp@FlN7!{8W?(oScI!Mw z9)&m1S%~SuyDR;{vlTV-={qKT$Jc(YHCzvjoGK<~vu3LJgRijAB4_|a^2=*fbc49m zo>;YmT&Og2hb_oY0bD z`^eAL$nrX3pz2XyzqjMeVPGm>y2LwIz(Sf5;6K5>sx12B+@_UUB#9qroWDJ;nKiMQ zPdAgHtZ0Vl%MA&lINM_!%H5}VW9`^RdxysPLBttQ>tLq5vv63XuKXp#IM)Gz!VQZ(XHVxM;p|@uxq`!i{@K z8*peqHNBZitU^zsEZ8$_=`ZO=NEv>LDtnIKLn$Z3zztq8SN7fw*V$;8`U8zGeL{xe z_phY##NJKuA%!S6#%_|#8ZxH2W;#)nyQEj2gz8bv>d@4b=I3i_OW@4C!t$&g>0HM2Dv2tx084_F;OG z;9Mumdu8T*9%b}qY-83D}Ns^RhdwgZ_p`O=A&46`J~kS z%vQfLHJMA1OnH|azmcuJ8Hj=B#P!=f&FB8nvKT90BK?9HOTSk<<|Y2Fepe|m(cznlrZ>K=aL*e zsUFn1rk#r~{oM?DE}vJo)d_q^`TG8QocMXOU`aK%iaJF(`fw6!evON{&vRt0KRuLcVC>i`-3 z*6AseOay7wKv09|e1v~n?XyIBk911T9IV^! zrzc9ApWj%QpwJ|hV1J;tV8tmZUJo_aK{sIh=fQj4n19-u(Y#LgVr^au$85-i8Vk8g z()Mf{tV)P3+v`hxw@WOSEZS0KsHE4373q@Qe4__cUV<o=h(C+(kOhmw|!&9>v0CqR)C1ByZ3`KC5diJL1-mR~oL3d!M69utWt7m7+3_`K+DKbisa@5+=nAc zx9;(6v7@MdXoKk_*k4f@yc(UVBblGFFwvc=ZhQNX7sfAWn^#o41*j9nv#UpD0>%Kl z_=RG%Se}g!Uqn>WwU51R-?q}^+SSI@DW26?RCEiF8DVcrj(P`>6!m%*ki{c|52nl0 z>1xSXAtgRyk=Nn6-=7%4n$3#7oq<@$X7#GzY*11tNi}p>T%s3XDb{==H-{Lcfbp8o zr?2C{KGkJUES*;K0b1KDUPiZI>@g7T-uYW4Sj|$C_cEY2SIRd`QFZK7d4KTAMCmjtEaa*6(9PIiupt2^u8NpT4?xcfm9p zx8&eLyL_rN4>5t!O6T`H3Y-6^LgI%?SNHHb+6y9Ki#|du=f;LL`B<)R6=+^&;aoN6 zd+PKhlfPeX{05-{>QMC`h8DS3_wCq))eu3#s>ns=%JTX2G#SFMn@7QdR(g7cIR;XoMk)m07#A6wzwrX zc5AqnMMdquz--gMbZ({imI z_CE4T4_g^FErI(u91&r#2RW*n)dS(zm@*bbUP}L_8@)SvivFoi?)07S?hgxPS(X`U zxB9qZp(JkoldXzuAy~h&u1RZ9{v;oewm)3lqgH0xG^(?LexxK5Rm|p3w;9L46|XZ3 zKS%g@9KRCl?Y<01(kV}ND~fKz^-l>(pL*?e%rJWfoLVnFLKNugp}tp02PdNdwZ;j! z&VKsB2-UTHtNWBrQgt<|PajrFk2WUo->din;S_jYGRQ0OA=aMQhU_i?AzDV1Xwn7P zqK<=xnX5FjIsK+*;+9FMmyZj5%h(y7I+2`@2+oZgtEtmeOLnwrXNad)5uy&qo{x@= z=ME0nC(6WFfl8d3#2T6RmG3H72yDW-O@^^!Ckx{k4G;Il5n|gccjSvZ)pRu`Q4oN~ zl5-Sg#^U0XS2lVNj|`PbHPiyP)JJ}#iu;RCAE@q08-*fWsl;y6KES+a@Z=mb&plrL zw4%_-$Fl#iz=B{@R!wvQ9sayCVPqEk{dW@@P(S?~IiGC-VU<6ct`M|JNf|wj{}RzU z%t712Dm~yX^_kGS*>EU|j;#UnG=~b_`^j^!68o;-_~Mn)a;=FoOxI)7iq?HKzhY^k zU<|7tBnXnli>WLpPynl!3nHP=mXzyM)WByxnG0I!7W9mqT-L_m%?_(PQnnn|A&U)j zGM(2aBl@?xoo6cq(G6f{DM99cYGBQbSnvcn+;Zb!;|bJGlIK8TT3|NR2CdBpjf!ry zif7~Fq?TA-Z8(=9ff96koi5ToDwl4ug|3A-_vpe4d^+Zwr2 z%bVtHkY`qVPEf&%*J%U$Rc!@jLm@zV_;pBzRh&7hQDP#-DhlcJE=|F{z&dQ)f~zIZ^ps*TDp= zLH}+}W7?hbXgP*lzUpi(Iltr0; z8VxK(_ZIW{g;rQ-(jrb6To?cEI@sxa8X3#C$={2HE`V>B;_GQ(d0Bu-%rBlE`bo|!VP%tm^UXQ` z*9CH3>MFPc1_xGue%D+JBjDa*J|CJ##9>O+e&J=G-LE*j-+H12fq4eWke*T9SWKQ* zM_zY-X=?t3pZ^23)??73Fym1M<3u)SSo*B*_}>cyXyjBUD(PE@#`CU!uVWNF8Ug|_ zGh{DZYU-d??;{A;WCo8!tRDNZGBoB@mF?hQ*E{_wy(twK^1QJi=_Rg?bTX;zF_%5u z6b^&%nY=NzJdvi*H|%wTtrzlp`p;RY>$0661LfuZnZIqj9{p&(fM^yxVld94rqv>~ z6w=U+tbnfL%q>@6)S6u9IIaIkz!X>t=o;Y${d`wFTOc4T#pr@Z9C}i$c%S#X?b)91 zk%5UW=8!4Ygd3Igqx%|9H*MrJEfk@NM6rV^a=JL$F&;|ko?)Qv0M8gcAo3mi^IcWy z?!Q4Y{%80ok`8bN_(JrPDDlbT_=JByH2%Uv{1Bt6pR7NF5~4g+*1#nS+%XnZ2_J<{ zNe2L_y>8Rq&NSA)2UOWmKR+LhfjDi6(I0Gs==ZHYke|bl^4hld8{*s~MtMn6d{2RJ z)LcfR06Hb{hc!I!+eIS&ix@u<7KBK=fc5mtUf^6bf|Sl-X|+jNNh^G?q55<3 z`*sPF()i~E(|odC2;p{035{}brFR)>8*kp3Tj6<~)wvJMO?s@_B^x88bEH)bY& z;;@z%6^q>``JW+g>-}V9ZgYW9yG7j3=yrIpWzNhV44Zzr)3CXnI(ha;p>nOaPKWXaG~r3}9-3KMnuHsj zbh_!IoZyr6yD!j@>o)I9J#ENy(k$Jx+YM_V@$s>eh5&wv9hYqrfBYGA1r6I??8mJWh*c>_+-%(UErWpBS3RK}rIt{C!p;V=xN4&gjIfR^ z?`xRh>gw+|j4b{<3H=V+c_`E!w!VutB;bJ`J%zOLfK$~4s2*@2;$^HLK2q=0BQGE< z7~8>{-BGL8#ycad!dYTMT&;nLk zOqlwE?D7X2_PQL+U2xF&n$G%w->me$tPP5&;{M2oPHz+87XUES;?~BRq_WLAbo)0l zj@wG7vJip3XW2s%u0|frvlj=txb~hC)uyF}o%COOqfehVV&DAW^5h?P(5#>CnvGvv z>#n7ebZZW;Ay2}*=1Zs4>IPy zOyx>`;~s0Gh-tV(5VUJ<^%{i2UTuxOY&g_sde?hz)?^~Y+U;PPP&DQM!CAt|)T3!p zrWBe|usc0{NR-D(mi{dl??sS{b3K^TwUk`xbD4%)L8N^GxSHpF}y8EjA_LSS86Pr~s^>#>%7 zbL)CW+SF~_i*c%nPv1frP^WXdmn$3xrl?I%qS@OfgQ{<$7<+tIye7-JT-v&_2J}9Q=gzzb;2Ah}2N^ZuD;t!Xutl3i5aF8tpY~G5j@Dmpr)wFObuzz*t@}XfU=MjE+fpF0QD( z{&v%y_gtBhk(JKY;;F}L-9F_+(Anz+?Z{8qc5S)bOcBs+uGkB!!Xr$(JvR=la;=yV z@r9J?!Nte3hd(#Rwl)^wC4q083gqIw5|nsz-kXGoCqG;s-O zx9_Y9;C;PBZFxxxX%J0nV=Ou`Q^MR|WXL8Zo<5Dvr#F9(dPOOU+ z)~~j7nOf_4f*iHAA3}GnLeZo_rqK;d_sp41{!wI{wJf?*@>$3R<{YTIVM7McMKBH^ z2THuyg9tKp|NeXPPxJ~k-+3zhdBGO>t$1Xuf2*RZO)LE&LjdD+DSCoXSh4$kHQU`= z_1NG{-9#|9)0-v-eJTV5jdL@q_WIB3$5z~r$L9f5Stj2OYr+?NDIyNNqg92SR>x7n z)H7-{V}Zehsd;R&RhJjNpc#1m zL2Fo3ta1~}Vczwv;BoTquTD>ebtV!({;3TXg?a74&WTfgq0?+CkH=$SdQ1_awA6=t zN9@_elE_OfhZ|rH^!|SO!NG6I&4dy?wv+Aa8Rg%i*OCp=p{{8;V2Pe&z-+?R-+m7| z9q;u}aA|XOc#1c(RxNBjyHy?HB4M@BjQL4mOt;Nn=-!e^bh-%=B?&)Bhxh&+4qNeb zKfd`JQR}ErOa0-$$)QsHX}qz+Dy3*5zOx)o1;#^;DpKl?Nn>}4(NtSxZScDh*QTdU!!!ualahk0WD}$CAZhG+5`OYT>kx_c^dPaa z!pxUi_hD`RZpELmWY}0cXjm$dnZXDM_f9(LCw}lDB*^l(YSUu(5vka*5JY>g(gY04}>c>juYat6dF<k;Wt)VL(t%O)v-mdc-q4_O<}gTzl7y)%fx2q)m={lI z63o7CW4>VDb(`yYJO8I%2G~~@G4DyZJB(CHU31J^b~gZD@WgH`nhH4F0R2k?l{t5b zIzS%p0Ep}=@CgzLUwd{j{0BWu**S);Uc^^lAjbB)vKaSezFfA147ho_NvcL%BcuZR zrAe@)4tE=~L6zHK)Xf6|ozMRKdK_ZsL!6vR{r!Gm4RXk^{T6*0|MQAB6Aae7qabA} z@C|g11qClz(2c5p!eE?Xw9hz;v$E{sI@!)#`$o>Vs|sO*%|1LEKT*gFZI0+XE9hRh zUsj!=(Nj0p(r7pHLFqo@*!?~Kp__z|%@ET41qDeVI`9PEywYAiicB@U1XoI>j%os+b-?&|tN3)J6zJf= zpf-O{0liLekaiH%LCw**nn>o!u+s3pdTPsO(Niz}4wM1nC62V(^G`V)Ic0GJ6-Njj zPQKwrd%lKKbS>MG6-}YwQMPj+-+5JbfV}w$91VA{6Frj`dbDwvN@LG=+=R3B7qlxr zo*FQ5!yfkJ6ZruuP!}FVmzoEzvnzT&rV>H4+KlnSn&wHvC176FPE#mgsYRMcMTcA_ z?D#gUF!_BiOmFkb8uvHFy!A>r&!pQEOKBAQScpr#;yQvT#(>IlGpc?BfJkNfsV`*b zA&kc)N0rCC;C6cwZ$<}EnIB$&HX;vXU(DM73vWQ*wzqY`^VjpN zM;2xfmuR`#)ht@rKqy1|PHWsIIe9hoeJ7OZr9#QXBC{XatQL%|UK+{crIBLGDynbG zv9NR1pCDco-*({(xc?11Y=c7s{)6rybc^<-JZvQD-5YzQ-VyS=ta)HC`LYgtRL5D+ z7O6}}4b`a&RhiI#*6v{J>WwjNIm#h}$+!qU$gqn$=B<#e_8OV!H3+dEf&O^Ms5Oxw zw!j46^e$488Uih3X{|iP60P-`rrh%94a8y@ONcLcoBp(VAa0CmqWd@U&6Ds;@^;}r zzX>=$VoXp?@)3nS&7-*FW!Zx08Ko*ZPsOEgz8boYkiG#S*D?JTZLf=oAef{;e=a3a z*DCradsA`JkJ3+Elu!;AOdYed7HMW*m9=_(--K-)<4&j-6U2|4NWF3-avtQCfeN@F ztf^qh_}zeHC==|C36oNrAF5b#CvdDpVoSRG7r&K*IsgKTKLmX*q_nmmP=m83blClJ zVtnrAlYpYLOcDKJytkj4>>N8Xv=I64nZaI;j3hdP{HzW+htal8TT_R_`h7@9mZkwp zFpg_=1c2$sHs8iP5|N?Ewz*JyPcz>?g|j{%3?zj_&F;E5}b zehder#k6e+0Em-x+)YCBMEoI`m|O1)&#!uCtK68-X-w1X7-kwlFl% z`FCemw8n{1Gis!75C0sM#Hb5?rP7dSPj*vwBZ(pVXD`sG7kMyrQVU*s&Ir4h46EcI ze`gf3B_zl?ihdBRnNk~&|C~I}K1$*XL$k%E;;yoVC8}p}Exh-A=Y_?~GE)LYxiofL zWfkR!mOn8$$75yT2D1XD?a-EPVF&Ee;QdDy5c0ksY-|8a7cKg|#@l3z3RX%-W_>xI z#_2Y=O?l%w^qcC9fQhB{X`O>oTXYA&ONb zg9|sik8INq`pHB^5R=TG{&36?!6_IEoSRb2^E290yf3=I92Rn_zG5LOW2KWj%ErZV zFx~JgnHnWHkD;BO{FUr1*>QULS1@oeVSLUmD7A}WxIavG{A7I)F=uqQBFUHfX2`vB zW<~^qY1Oa0`NdD!RG4nVUhjumSwd#C9y1tlOmFA5fh&)4#tu6e*=W-T?J9Ls;0_yF zv}q52+jmN)w_Q80L@V+>x3Vl!r-RRqCc_)uB)l%azjo@<85J6Rb9L`S_PbCqLM6ki zn$@sSTi)VEPJjvso0YI)Abpa=872}RwPW))p+nhsP}hBZ^>RoGgBS~XJ`rm>^C7cN zsUrK({anD3221>4ly^db=a88tVfl{-R8IdjG$|n`>iqI$dlXH1Ib024mhli!s%76) zJE*r^{fX^fcyYPZMaX5{DU&2@l0+raJ>#sA%cZB+Zi+UAO(XWUbdRk_ET_uy9j0*Y zsZO`UUiIBWrE{lVEjrG8u)}f36~^Z2plEt0d>_qux4TcRe0er~oMwtN#ZylvwY%R#%G3v1Bb*CzC+fnuEFy44MRF)0+UP+@eZ&JOdV%Ju475nI)cp6?|3@00j_7#Xtlt`MgA{E_b zU-8dY_x5BhEN0_dlYINTFUyMT;s5R*=rP1={~ZxF6&cq^9e?$+$>C0jpCg#u0@H1C z!9d}LNH&Kx`H}<;P)$jH-_6~ufJiX5Xo)L;eieWn_T)r^q%oX~#^)T76wZ~lmEFAf zCw8;RyTCY)k_%Z#i=@o_gIZxMEWrpdyTJPQ;zVA=+StM`!GmH<8Dq%{fBFgJ;pxb=x{8nrUb~TltySeh zYBez58iFV@TPAcn*r^to&_J*Komc zBlF}mNrEPoF*xuAE`6m+sE+3^{Y|yS(<9R|B;?b69c64Fp-_(7&^1 zJ#XX7g6>+ydX0djD!)-z89eclZ9wPuR=4b)eu&{Tk;&+*oQjYXNe5*Gga-z@S5IQe z?izmze+Un{%=~UO8&yqw(3)C?uFs8WLS>a46-BFp7N0zpzhn*)+4h7Kl5MaDv@Jx( z{{|#}`~pxX!ZvH}7x@fH7)RgR zPyhb~&)3c=)2K~cnop^yQa-SB!&NZI1^nI~oDdZ4Klsvn9M|w@-V+6o{S4{|8{f_9 zdvv7xy!I_!L?}4;HD(Luv^~@3M#y-eJC8_L!oq!qDKdaN*mdxoSuP!vM-a~`1np%2 zO~~sy&c(-bBf-dpKtq}wS;C)&BG1}h2XxThuv9$-?gY;EhprZuCL z?WI!#V7ig{Z~VhxjU>*V0j7vqBc8k-NZ$*d^X6(=aQ4|n2Z=Jmu>9|m@Z)bc15hs^ z;ZD9u7u&9^3zVQ6<@9$r5{&v+8%2i#`>~^I3cY9AUZTvr$nx}5unmpB)93DkvgMCm z=JF%`0qtpN?tA2`bCaA=chw7{G%Mlm2y6_yseq6vupRJpVQ=#^u;%#x!4? zT_M#c(2Q_Pf+ho?Dl8H(-^M5JY3tCnTNRP`?8%mL#iJYTlYE;8Z;pm@Bzx874pNU6 zv*AV5&I(%m>HfpE1f4Nc$kdvWk7O)<5*H(JJ5mw{^Zva+=gbu7|K9OQ^Ov`=zJ25N zodqKTkg`})#zh##4~E=MK*XJ)~jt9mz%Uz6Cwd*3igMrT0HCZ#R6`x~hg zNOSf<>lymsG;x}zP!g9lp={Q~(*Ie+u(G-kDt7WNJAuFYz9S{!F_1d*rV7N_Q9ZaY?Uf zBGJWna0N{*+B<=vYq=H7zkp&O!gm}ZeQ&IUeBv`We0lc`u{Hk;<6paj-3>6b9aFhm zjt2KwNcL_|;$2-$uJ(Sk`ZYH}FC^uKY^(GJoXP?O@wc{m0gbxg3xT10dFb`o zWiJrTtTXHVF5f1Wq_xUK*&wDu;wM;X&mO80+v2s~NDVizg{4`>{-kXS%_WwK-GEZA z{yo$M6H{S0^(u>+!{pdMg^gSY+SF3%k|UT{typqCvWITNex4$pr-Bz(@?R3i0k6-{ z^JBM|g7xojT^F&2QvN%P>Esq8=C1t)4 zKHjQCk-YeB(EuOHNR3vZej5tM+3xFfuR%=wOV9IFu-SK1W_^c7M>14MNFspQ>bgF9Gocut7aR%_(l zol`sVUzl_}LLX1oXc;^J9M5CQeGWfkru)C)z+Vp__8y6ZWELF0A*v`e{LL1ir9h8q zNPvt>`B2!F_$^&+(1!3K<@{gY)wqgOzukagFHpMyD8Liwys!JH^~2K5=zZdR?h+s7 zNHiexNj1~|wH@F76U(*F6Rl>EV$xxfo(6e+-@IIgyKQdjVM(%pa+>hReWv3}7(%C7 zU%opUdZ{(o`f8(EqVB*E;tZ>Ld+|R@c>%Bgv_euRri4X4-AHV9kJegV9Mu%q^%OlC z?siLRd@{6QHJxROr?Pk6?Z(E~pp0Y*Cu4j1~M{==~q{dwb? z7hZ-O0Xym>@g{Z`b%EZc^DU@<(rkZOVh;~${LK-SJ<>dG>(1VapUSnj=h7NxDtgNj zEyvM?5+<`=|DjXAJ(gvjI?1muia z;{ZxEgTakt&-Vf9YYy6AxC9g^Dkg=pJKgELMAxSd&;64-fd2jlAEos#Q??l}K~@8I zB1q?X;_Ip(gnW2$n%bfH!EhO?0hO9jjH7<{nlmA~gzToQWi_KhN3NrB)cGTWE=&Hu zxc3#Q5nY;zfNZJs&0EW*IOtZy;D zWaAYIP&>%e#dbSGuQz*RTcg!w4GEwR52)hbmHoZ|x#5H1!SxMWj z3Uq3WzptDnFEXM({fYqrjux7QfaAOCm-~|ngthp0tr<5Q&nUo2gDu8?qnAIOlr>nM zfw-}2dTC#bfAu`F0OY)#Ut9XY2Ux2Xx{eTgD72`rFz@p(IYkhWbqt?mab-cX72r8# z|HCoHq*mbnv;#qa*vx!rcH>HyxH!2vDfb)d1z&+$`8Os>P2zYidHzEDi(+!Q;ggn9 zM`aeIk@_`$(rfUi&TSW-4^W*V=XozCIw-fC$~Ln~OJ7NhPZ9UU{WtG&|EPRGmo&g~ z;jgDS{eN59BrjO~qxi!MLtxEcefseyy?c3WHm7bKi``lFGU*ZP_49M0S4@9@hf%S9 zgKO0F$&x2-yesEz%<13wcK=HO;Kq!j9E~oU#1r(bRo6fGC;hTTm~-8~dk>EH!1m2)gWVblOV@F4m^?DQ*Nr?|0Nm{oqCe3f^pSg*bi z18`r=;v-S3xSEZY@oj@H$@m1)!~i;-=TZIa>g#z+ckT4i*SWPxbGvU;-4tZGvNHsBXDmVI`woL>sk z@UR73Kf0v6t_t19YHt?WXZhuq_B1QsfXAmRR*O~r1)IjeFzd^IW?P@8ytgXcpFu*N Lu6{1-oD!M<7)+w< delta 18495 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 diff --git a/data/buildings/advanced/advanced_building_group.tres b/data/buildings/advanced/advanced_building_group.tres new file mode 100644 index 0000000..c471109 --- /dev/null +++ b/data/buildings/advanced/advanced_building_group.tres @@ -0,0 +1,14 @@ +[gd_resource type="Resource" script_class="BuildingGroup" load_steps=4 format=3 uid="uid://cfeob1arfvw6p"] + +[ext_resource type="Script" path="res://data/buildings/building_group.gd" id="1_5u0lh"] +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_hpowi"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_24mqt"] +atlas = ExtResource("1_hpowi") +region = Rect2(1088, 576, 64, 64) + +[resource] +script = ExtResource("1_5u0lh") +name = "Advanced" +atlas_texture = SubResource("AtlasTexture_24mqt") +buildings = Array[Resource("res://data/buildings/building.gd")]([]) diff --git a/data/buildings/basic/basic_building_group.tres b/data/buildings/basic/basic_building_group.tres new file mode 100644 index 0000000..579156d --- /dev/null +++ b/data/buildings/basic/basic_building_group.tres @@ -0,0 +1,16 @@ +[gd_resource type="Resource" script_class="BuildingGroup" load_steps=6 format=3 uid="uid://dqv53okb3evb7"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_p1crr"] +[ext_resource type="Script" path="res://data/buildings/building_group.gd" id="1_xphre"] +[ext_resource type="Resource" uid="uid://d38xgwstvtcm4" path="res://data/buildings/basic/harvester_building.tres" id="2_7d7fa"] +[ext_resource type="Resource" uid="uid://cta6ngelbwo8b" path="res://data/buildings/basic/warehouse_building.tres" id="3_vxs34"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_nleix"] +atlas = ExtResource("1_p1crr") +region = Rect2(1024, 576, 64, 64) + +[resource] +script = ExtResource("1_xphre") +name = "Basic" +atlas_texture = SubResource("AtlasTexture_nleix") +buildings = Array[Resource("res://data/buildings/building.gd")]([ExtResource("2_7d7fa"), ExtResource("3_vxs34")]) diff --git a/data/buildings/basic/harvester_building.tres b/data/buildings/basic/harvester_building.tres new file mode 100644 index 0000000..99958d6 --- /dev/null +++ b/data/buildings/basic/harvester_building.tres @@ -0,0 +1,18 @@ +[gd_resource type="Resource" script_class="Building" load_steps=5 format=3 uid="uid://d38xgwstvtcm4"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_8uuv4"] +[ext_resource type="Script" path="res://data/buildings/building.gd" id="1_s0c8c"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_ppxqc"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_5nxx0"] +atlas = ExtResource("1_8uuv4") +region = Rect2(1088, 128, 64, 64) + +[resource] +script = ExtResource("1_s0c8c") +atlas_texture = SubResource("AtlasTexture_5nxx0") +name = "Harvester" +description = "Harvests nearby" +cost = { +ExtResource("2_ppxqc"): 100 +} diff --git a/data/buildings/basic/warehouse_building.tres b/data/buildings/basic/warehouse_building.tres new file mode 100644 index 0000000..923800a --- /dev/null +++ b/data/buildings/basic/warehouse_building.tres @@ -0,0 +1,20 @@ +[gd_resource type="Resource" script_class="Building" load_steps=6 format=3 uid="uid://cta6ngelbwo8b"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_24f36"] +[ext_resource type="Script" path="res://data/buildings/building.gd" id="1_aylgh"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_s5ve8"] +[ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem/gem_resource.tres" id="3_y57vu"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_pbx2g"] +atlas = ExtResource("1_24f36") +region = Rect2(1024, 64, 64, 64) + +[resource] +script = ExtResource("1_aylgh") +atlas_texture = SubResource("AtlasTexture_pbx2g") +name = "Warehouse" +description = "Allows storage of more materials" +cost = { +ExtResource("2_s5ve8"): 500, +ExtResource("3_y57vu"): 200 +} diff --git a/scripts/building.gd b/data/buildings/building.gd similarity index 58% rename from scripts/building.gd rename to data/buildings/building.gd index 28c3b77..e0bab39 100644 --- a/scripts/building.gd +++ b/data/buildings/building.gd @@ -1,8 +1,7 @@ class_name Building extends Resource -@export var corruption_pattern: ExpansionBase -@export var atlas_texture_region: Vector2i +@export var atlas_texture: AtlasTexture @export var name: String @export var description: String @export var cost: Dictionary diff --git a/data/buildings/building_base.gd b/data/buildings/building_base.gd new file mode 100644 index 0000000..5fa848f --- /dev/null +++ b/data/buildings/building_base.gd @@ -0,0 +1,13 @@ +extends Node2D +class_name BuildingBase + +var _building_data: Building + +@onready var sprite_2d: Sprite2D = $Sprite2D + +func initialize(data: Building, grid_location: Vector2i) -> void: + _building_data = data + position = Grid.grid_to_world_center(grid_location) + +func _ready() -> void: + sprite_2d.texture = _building_data.atlas_texture diff --git a/data/buildings/building_base.tscn b/data/buildings/building_base.tscn new file mode 100644 index 0000000..9448382 --- /dev/null +++ b/data/buildings/building_base.tscn @@ -0,0 +1,8 @@ +[gd_scene load_steps=2 format=3 uid="uid://kij6k2k1rmxb"] + +[ext_resource type="Script" path="res://data/buildings/building_base.gd" id="1_odhat"] + +[node name="BuildingBase" type="Node2D"] +script = ExtResource("1_odhat") + +[node name="Sprite2D" type="Sprite2D" parent="."] diff --git a/data/buildings/building_group.gd b/data/buildings/building_group.gd new file mode 100644 index 0000000..481a5c1 --- /dev/null +++ b/data/buildings/building_group.gd @@ -0,0 +1,7 @@ +extends Resource +class_name BuildingGroup + +@export var name: String +@export var atlas_texture: AtlasTexture + +@export var buildings: Array[Building] diff --git a/data/buildings/corruptor.tres b/data/buildings/corruptor.tres index 06304a5..67ac0bd 100644 --- a/data/buildings/corruptor.tres +++ b/data/buildings/corruptor.tres @@ -1,12 +1,11 @@ [gd_resource type="Resource" script_class="Building" load_steps=4 format=3 uid="uid://bgwoy0uh2cpvu"] [ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="1_5s38g"] -[ext_resource type="Script" path="res://scripts/building.gd" id="1_ssts7"] [ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem/gem_resource.tres" id="2_u1tpw"] +[ext_resource type="Script" path="res://data/buildings/building.gd" id="3_bd7jk"] [resource] -script = ExtResource("1_ssts7") -atlas_texture_region = Vector2i(14, 7) +script = ExtResource("3_bd7jk") name = "Corruptor" description = "A building which only functions to spread corruption, and does it well" cost = { diff --git a/data/buildings/hub.tres b/data/buildings/hub.tres index f6cd42c..be4574e 100644 --- a/data/buildings/hub.tres +++ b/data/buildings/hub.tres @@ -1,16 +1,10 @@ -[gd_resource type="Resource" script_class="Building" load_steps=5 format=3 uid="uid://c6vv3hyn5sd7o"] +[gd_resource type="Resource" script_class="Building" load_steps=3 format=3 uid="uid://c6vv3hyn5sd7o"] -[ext_resource type="Script" path="res://scripts/expansion_patterns/expansion_square_pattern.gd" id="1_attvt"] -[ext_resource type="Script" path="res://scripts/building.gd" id="1_ssd30"] +[ext_resource type="Script" path="res://data/buildings/building.gd" id="1_ssd30"] [ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_d8jrj"] -[sub_resource type="Resource" id="Resource_nqpn0"] -script = ExtResource("1_attvt") - [resource] script = ExtResource("1_ssd30") -corruption_pattern = SubResource("Resource_nqpn0") -atlas_texture_region = Vector2i(17, 7) name = "Hub" description = "Main cheap base that corrupts a square" cost = { diff --git a/data/interactions/build/advanced/build_advanced.tres b/data/interactions/build/advanced/build_advanced.tres new file mode 100644 index 0000000..e93998c --- /dev/null +++ b/data/interactions/build/advanced/build_advanced.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="InteractionBuildBasic" load_steps=4 format=3 uid="uid://kqcdiin4k3jr"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_ce8rd"] +[ext_resource type="Script" path="res://data/interactions/build/basic/interaction_build_basic.gd" id="2_xgp0x"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_fxfd2"] +atlas = ExtResource("1_ce8rd") +region = Rect2(1088, 576, 64, 64) + +[resource] +script = ExtResource("2_xgp0x") +name = "Advanced" +image = SubResource("AtlasTexture_fxfd2") diff --git a/data/interactions/build/advanced/interaction_build_advanced.gd b/data/interactions/build/advanced/interaction_build_advanced.gd new file mode 100644 index 0000000..1f4e8a3 --- /dev/null +++ b/data/interactions/build/advanced/interaction_build_advanced.gd @@ -0,0 +1,6 @@ +extends Interaction +class_name InteractionBuildAdvanced + +func interact_at(pos: Vector2i, root: Node) -> Array[Interaction]: + print("Building at: %s" % pos) + return [] diff --git a/data/interactions/build/basic/build_basic.tres b/data/interactions/build/basic/build_basic.tres new file mode 100644 index 0000000..684bf9c --- /dev/null +++ b/data/interactions/build/basic/build_basic.tres @@ -0,0 +1,13 @@ +[gd_resource type="Resource" script_class="InteractionBuildBasic" load_steps=4 format=3 uid="uid://k4dq7122cnu0"] + +[ext_resource type="Script" path="res://data/interactions/build/basic/interaction_build_basic.gd" id="1_8f33m"] +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_qfmuq"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_w7o8k"] +atlas = ExtResource("1_qfmuq") +region = Rect2(1024, 576, 64, 64) + +[resource] +script = ExtResource("1_8f33m") +name = "Basic" +image = SubResource("AtlasTexture_w7o8k") diff --git a/data/interactions/build/basic/interaction_build_basic.gd b/data/interactions/build/basic/interaction_build_basic.gd new file mode 100644 index 0000000..c487920 --- /dev/null +++ b/data/interactions/build/basic/interaction_build_basic.gd @@ -0,0 +1,6 @@ +extends Interaction +class_name InteractionBuildBasic + +func interact_at(pos: Vector2i, root: Node) -> Array[Interaction]: + print("Building at: %s" % pos) + return [] diff --git a/data/interactions/build/interaction_build.gd b/data/interactions/build/interaction_build.gd index 78d7694..d814a19 100644 --- a/data/interactions/build/interaction_build.gd +++ b/data/interactions/build/interaction_build.gd @@ -1,6 +1,8 @@ extends Interaction class_name InteractionBuild +const BUILD_ADVANCED = preload("res://data/interactions/build/advanced/build_advanced.tres") +const BUILD_BASIC = preload("res://data/interactions/build/basic/build_basic.tres") + func interact_at(pos: Vector2i, root: Node) -> Array[Interaction]: - print("Building at: %s" % pos) - return [] + return [BUILD_BASIC, BUILD_ADVANCED] diff --git a/project.godot b/project.godot index af1e204..42e8f98 100644 --- a/project.godot +++ b/project.godot @@ -77,12 +77,18 @@ move_down={ , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null) ] } -select={ +interact={ "deadzone": 0.5, -"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"echo":false,"script":null) +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":101,"echo":false,"script":null) , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":false,"script":null) ] } +build={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":66,"key_label":0,"unicode":98,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":3,"pressure":0.0,"pressed":false,"script":null) +] +} [rendering] diff --git a/scene/build_menu.tscn b/scene/build_menu.tscn new file mode 100644 index 0000000..79fc58b --- /dev/null +++ b/scene/build_menu.tscn @@ -0,0 +1,89 @@ +[gd_scene load_steps=3 format=3 uid="uid://cym5p3olst2nc"] + +[ext_resource type="Script" path="res://scripts/build_menu.gd" id="1_v2c78"] + +[sub_resource type="Theme" id="Theme_0djom"] + +[node name="BuildMenu" type="CanvasLayer"] +script = ExtResource("1_v2c78") + +[node name="MarginContainer" type="MarginContainer" parent="."] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/margin_left = 128 +theme_override_constants/margin_top = 128 +theme_override_constants/margin_right = 128 +theme_override_constants/margin_bottom = 128 + +[node name="PanelContainer" type="PanelContainer" parent="MarginContainer"] +layout_mode = 2 +theme = SubResource("Theme_0djom") + +[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer"] +layout_mode = 2 + +[node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer/PanelContainer/HBoxContainer"] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer"] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="BuildingGroups" type="ItemList" parent="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer/VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 3 +auto_height = true + +[node name="ScrollContainer2" type="ScrollContainer" parent="MarginContainer/PanelContainer/HBoxContainer"] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer2"] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="Buildings" type="ItemList" parent="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer2/VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 3 +auto_height = true + +[node name="DetailsContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/HBoxContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +size_flags_stretch_ratio = 3.0 + +[node name="Title" type="Label" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +layout_mode = 2 +text = "Select a building" +horizontal_alignment = 1 + +[node name="HSeparator" type="HSeparator" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +layout_mode = 2 + +[node name="Description" type="Label" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +visible = false +layout_mode = 2 +text = " " + +[node name="BuildMaterials" type="GridContainer" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +visible = false +layout_mode = 2 +columns = 2 + +[node name="BuildButtonsContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +visible = false +layout_mode = 2 +alignment = 1 + +[node name="BuildButton" type="Button" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer/BuildButtonsContainer"] +layout_mode = 2 +text = "Build +" + +[connection signal="item_selected" from="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer/VBoxContainer/BuildingGroups" to="." method="_on_building_groups_item_selected"] +[connection signal="item_selected" from="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer2/VBoxContainer/Buildings" to="." method="_on_buildings_item_selected"] +[connection signal="pressed" from="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer/BuildButtonsContainer/BuildButton" to="." method="_on_build_button_pressed"] diff --git a/scene/interaction_bar.tscn b/scene/interaction_bar.tscn new file mode 100644 index 0000000..37c4eea --- /dev/null +++ b/scene/interaction_bar.tscn @@ -0,0 +1,14 @@ +[gd_scene load_steps=2 format=3 uid="uid://dfr3hvxqo4fqf"] + +[ext_resource type="Script" path="res://scripts/interaction_bar.gd" id="1_qwnlc"] + +[node name="InteractionBar" type="ProgressBar"] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_right = -1092.0 +offset_bottom = -628.0 +grow_horizontal = 2 +grow_vertical = 2 +show_percentage = false +script = ExtResource("1_qwnlc") diff --git a/scene/player.tscn b/scene/player.tscn index 4a9c530..9c649cb 100644 --- a/scene/player.tscn +++ b/scene/player.tscn @@ -82,6 +82,7 @@ size = Vector2(40, 45) [node name="Player" type="CharacterBody2D"] motion_mode = 1 script = ExtResource("1_j0htm") +SPEED = null [node name="Sprite" type="AnimatedSprite2D" parent="."] sprite_frames = SubResource("SpriteFrames_tj1nq") diff --git a/scripts/build_menu.gd b/scripts/build_menu.gd new file mode 100644 index 0000000..164208a --- /dev/null +++ b/scripts/build_menu.gd @@ -0,0 +1,67 @@ +extends CanvasLayer + +signal build(building: Building) + +var groups_visible: Array[BuildingGroup] = [] +var buildings_visible: Array[Building] = [] +var selected_building: Building + +const ADVANCED_BUILDING_GROUP = preload("res://data/buildings/advanced/advanced_building_group.tres") +const BASIC_BUILDING_GROUP = preload("res://data/buildings/basic/basic_building_group.tres") + +@onready var building_groups: ItemList = $MarginContainer/PanelContainer/HBoxContainer/ScrollContainer/VBoxContainer/BuildingGroups +@onready var buildings: ItemList = $MarginContainer/PanelContainer/HBoxContainer/ScrollContainer2/VBoxContainer/Buildings + +@onready var title: Label = $MarginContainer/PanelContainer/HBoxContainer/DetailsContainer/Title +@onready var description: Label = $MarginContainer/PanelContainer/HBoxContainer/DetailsContainer/Description +@onready var build_materials: GridContainer = $MarginContainer/PanelContainer/HBoxContainer/DetailsContainer/BuildMaterials +@onready var build_buttons_container: HBoxContainer = $MarginContainer/PanelContainer/HBoxContainer/DetailsContainer/BuildButtonsContainer + +func _ready() -> void: + _add_building_group(BASIC_BUILDING_GROUP) + _add_building_group(ADVANCED_BUILDING_GROUP) + +func _add_building_group(group: BuildingGroup) -> void: + building_groups.add_item(group.name, group.atlas_texture) + groups_visible.append(group) + +func _on_building_groups_item_selected(index: int) -> void: + buildings.clear() + buildings_visible.clear() + for building in groups_visible[index].buildings: + buildings_visible.append(building) + buildings.add_item(building.name, building.atlas_texture) + + description.hide() + build_materials.hide() + build_buttons_container.hide() + selected_building = null + + +func _on_buildings_item_selected(index: int) -> void: + selected_building = buildings_visible[index] + title.text = selected_building.name + description.text = selected_building.description + + for child in build_materials.get_children(): + child.queue_free() + for res: GameResource in selected_building.cost.keys(): + var image = TextureRect.new() + var texture = AtlasTexture.new() + texture.atlas = preload("res://assets/scifi_tilesheet@2.png") + texture.region = Rect2(64 * res.atlas_location, Vector2(64, 64)) + image.texture = texture + build_materials.add_child(image) + var label = Label.new() + label.text = str(selected_building.cost[res]) + build_materials.add_child(label) + + description.show() + build_materials.show() + build_buttons_container.show() + + +func _on_build_button_pressed() -> void: + if selected_building: + build.emit(selected_building) + queue_free() diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index cb1615c..2f48ebe 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -1,8 +1,8 @@ class_name CellData extends Resource -const BUILD = preload("res://data/interactions/build.tres") -const GATHER = preload("res://data/interactions/gather.tres") +const BUILD = preload("res://data/interactions/build/build.tres") +const GATHER = preload("res://data/interactions/gather/gather.tres") @export var layer_info: Dictionary = { Constants.TilemapLayers.CORRUPTION: false @@ -40,6 +40,12 @@ func is_corrupted() -> bool: func has_layer(layer: int) -> bool: return layer_info.has(layer) +func is_interactable() -> bool: + return has_resource() or has_building() + +func is_buildable() -> bool: + return not has_resource() or not has_building() + func get_interaction_options() -> Array[Interaction]: var interactions: Array[Interaction] = [] if has_resource(): diff --git a/scripts/interaction_bar.gd b/scripts/interaction_bar.gd new file mode 100644 index 0000000..c34eaf9 --- /dev/null +++ b/scripts/interaction_bar.gd @@ -0,0 +1,13 @@ +extends ProgressBar +class_name InteractionBar + +signal interaction_finished + +func _ready() -> void: + var tween = get_tree().create_tween() + tween.tween_property(self, "value", 100, 3) + tween.tween_callback(_cleanup_gather) + +func _cleanup_gather() -> void: + interaction_finished.emit() + self.queue_free() diff --git a/scripts/interaction_wheel.gd b/scripts/interaction_wheel.gd index da97734..b18814d 100644 --- a/scripts/interaction_wheel.gd +++ b/scripts/interaction_wheel.gd @@ -40,6 +40,9 @@ func _process(delta: float) -> void: if next_interactions.is_empty(): closed.emit() queue_free() + else: + interactions = next_interactions + _ready() func _get_selection_index(angle: float) -> int: var adjusted_angle = fposmod(angle + (PI / 2.0), 2.0 * PI) diff --git a/scripts/player.gd b/scripts/player.gd index 8ad05ba..2a91c31 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -6,10 +6,15 @@ class_name Player var last_direction = 0 var interaction_location: Vector2i var _interaction_options: InteractionWheel +var _interacting := false +var _attempting_build: Building +var _build_placement: Sprite2D @onready var sprite: AnimatedSprite2D = $Sprite @onready var interaction_timer: Timer = $InteractionTimer -const INTERACTION_WHEEL = preload("res://scene/interaction_wheel.tscn") +const INTERACTION_BAR = preload("res://scene/interaction_bar.tscn") +const BUILD_MENU = preload("res://scene/build_menu.tscn") +const BUILDING_BASE = preload("res://data/buildings/building_base.tscn") func _physics_process(delta: float) -> void: var input_direction := Input.get_vector("move_left", "move_right", "move_up", "move_down") @@ -27,15 +32,33 @@ func _physics_process(delta: float) -> void: Grid.set_selected_tile(interaction_location) else: sprite.stop() + + if _build_placement: + _build_placement.position = Grid.grid_to_world_center(interaction_location) func _input(event: InputEvent) -> void: - if event.is_action_pressed("select") and not _interaction_options: - var interactions: Array[Interaction] = Grid.get_location_data(interaction_location).get_interaction_options() - if interactions.size() > 0: - _interaction_options = INTERACTION_WHEEL.instantiate() - _interaction_options.initialize(interaction_location, interactions) - _interaction_options.closed.connect(_on_interation_options_closed) - add_sibling(_interaction_options) + if event.is_action_pressed("interact"): + if _attempting_build and Grid.get_location_data(interaction_location).is_buildable(): + var build: BuildingBase = BUILDING_BASE.instantiate() + build.initialize(_attempting_build, interaction_location) + add_sibling(build) + if not _interacting and Grid.get_location_data(interaction_location).is_interactable(): + var interaction = INTERACTION_BAR.instantiate() + interaction.position = Grid.grid_to_world_center(interaction_location) - Vector2(30,10) + _interacting = true + add_sibling(interaction) + if event.is_action_pressed("build"): + var build_menu = BUILD_MENU.instantiate() + build_menu.build.connect(_on_build_menu_build) + add_sibling(build_menu) + +func _on_build_menu_build(building: Building) -> void: + print("Building: %s" % building.name) + _attempting_build = building + _build_placement = Sprite2D.new() + _build_placement.texture = _attempting_build.atlas_texture + _build_placement.self_modulate = Color(1, 0, 0, 0.4) + add_sibling(_build_placement) func _on_interation_options_closed() -> void: _interaction_options = null -- 2.49.1 From 856b6a0400c7c780c78d787e18963b7012f2e75e Mon Sep 17 00:00:00 2001 From: Eric Date: Thu, 7 Mar 2024 09:46:41 -0600 Subject: [PATCH 11/18] fixed interaction bar tweaking resource_manager.gd --- project.godot | 33 +++++++++++++++++++++ scene/build_menu.tscn | 1 + scene/interaction_bar.tscn | 9 ++---- scene/player.tscn | 1 - scene/world.tscn | 13 +------- scripts/{ => autoloads}/resource_manager.gd | 3 -- scripts/build_menu.gd | 1 + scripts/building_manager.gd | 14 ++++----- scripts/gui.gd | 4 +-- scripts/interaction_bar.gd | 6 ++++ scripts/player.gd | 8 +++-- 11 files changed, 59 insertions(+), 34 deletions(-) rename scripts/{ => autoloads}/resource_manager.gd (93%) diff --git a/project.godot b/project.godot index 42e8f98..fd1cabf 100644 --- a/project.godot +++ b/project.godot @@ -18,6 +18,7 @@ config/icon="res://icon.svg" [autoload] Grid="*res://scripts/autoloads/grid.gd" +ResourceManager="*res://scripts/autoloads/resource_manager.gd" [debug] @@ -29,6 +30,38 @@ theme/custom="res://data/world_theme.tres" [input] +ui_left={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194319,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"echo":false,"script":null) +] +} +ui_right={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194321,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":14,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"echo":false,"script":null) +] +} +ui_up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194320,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":11,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"echo":false,"script":null) +] +} +ui_down={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194322,"physical_keycode":0,"key_label":0,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":12,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"echo":false,"script":null) +] +} view_right={ "deadzone": 0.5, "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"echo":false,"script":null) diff --git a/scene/build_menu.tscn b/scene/build_menu.tscn index 79fc58b..98b14c2 100644 --- a/scene/build_menu.tscn +++ b/scene/build_menu.tscn @@ -36,6 +36,7 @@ size_flags_horizontal = 3 [node name="BuildingGroups" type="ItemList" parent="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer/VBoxContainer"] layout_mode = 2 size_flags_vertical = 3 +allow_search = false auto_height = true [node name="ScrollContainer2" type="ScrollContainer" parent="MarginContainer/PanelContainer/HBoxContainer"] diff --git a/scene/interaction_bar.tscn b/scene/interaction_bar.tscn index 37c4eea..c00926f 100644 --- a/scene/interaction_bar.tscn +++ b/scene/interaction_bar.tscn @@ -3,12 +3,7 @@ [ext_resource type="Script" path="res://scripts/interaction_bar.gd" id="1_qwnlc"] [node name="InteractionBar" type="ProgressBar"] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -offset_right = -1092.0 -offset_bottom = -628.0 -grow_horizontal = 2 -grow_vertical = 2 +offset_right = 60.0 +offset_bottom = 20.0 show_percentage = false script = ExtResource("1_qwnlc") diff --git a/scene/player.tscn b/scene/player.tscn index 9c649cb..4a9c530 100644 --- a/scene/player.tscn +++ b/scene/player.tscn @@ -82,7 +82,6 @@ size = Vector2(40, 45) [node name="Player" type="CharacterBody2D"] motion_mode = 1 script = ExtResource("1_j0htm") -SPEED = null [node name="Sprite" type="AnimatedSprite2D" parent="."] sprite_frames = SubResource("SpriteFrames_tj1nq") diff --git a/scene/world.tscn b/scene/world.tscn index 6514d1e..407286b 100644 --- a/scene/world.tscn +++ b/scene/world.tscn @@ -1,11 +1,10 @@ -[gd_scene load_steps=12 format=3 uid="uid://m0us5xqa3gnk"] +[gd_scene load_steps=11 format=3 uid="uid://m0us5xqa3gnk"] [ext_resource type="Script" path="res://scripts/world.gd" id="1_yf6q1"] [ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem/gem_resource.tres" id="2_rn4a2"] [ext_resource type="TileSet" uid="uid://d1sh6dy2w10b0" path="res://data/scifi_tileset.tres" id="2_sa7dm"] [ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="3_pq6ic"] [ext_resource type="Script" path="res://scripts/building_manager.gd" id="4_61js3"] -[ext_resource type="Script" path="res://scripts/resource_manager.gd" id="5_k5643"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="5_qhth7"] [ext_resource type="Script" path="res://scripts/gui.gd" id="6_yuatk"] @@ -41,13 +40,6 @@ layer_4/tile_data = PackedInt32Array() [node name="BuildingManager" type="Node2D" parent="."] script = ExtResource("4_61js3") -[node name="ResourceManager" type="Node2D" parent="."] -script = ExtResource("5_k5643") - -[node name="Timer" type="Timer" parent="ResourceManager"] -wait_time = 5.0 -autostart = true - [node name="CanvasLayer" type="CanvasLayer" parent="."] [node name="GUI" type="Control" parent="CanvasLayer"] @@ -146,6 +138,3 @@ other info here too" layout_mode = 2 size_flags_horizontal = 3 size_flags_stretch_ratio = 2.0 - -[connection signal="changed_resource" from="ResourceManager" to="CanvasLayer/GUI" method="_on_resource_manager_changed_resource"] -[connection signal="timeout" from="ResourceManager/Timer" to="ResourceManager" method="_on_timer_timeout"] diff --git a/scripts/resource_manager.gd b/scripts/autoloads/resource_manager.gd similarity index 93% rename from scripts/resource_manager.gd rename to scripts/autoloads/resource_manager.gd index 6b50340..8238c54 100644 --- a/scripts/resource_manager.gd +++ b/scripts/autoloads/resource_manager.gd @@ -1,9 +1,6 @@ -extends Node2D signal changed_resource -@onready var world: World = $".." - @export var resources := {} func _on_gained_resource(res: GameResource) -> void: diff --git a/scripts/build_menu.gd b/scripts/build_menu.gd index 164208a..5322cd4 100644 --- a/scripts/build_menu.gd +++ b/scripts/build_menu.gd @@ -20,6 +20,7 @@ const BASIC_BUILDING_GROUP = preload("res://data/buildings/basic/basic_building_ func _ready() -> void: _add_building_group(BASIC_BUILDING_GROUP) _add_building_group(ADVANCED_BUILDING_GROUP) + building_groups.set_focus() func _add_building_group(group: BuildingGroup) -> void: building_groups.add_item(group.name, group.atlas_texture) diff --git a/scripts/building_manager.gd b/scripts/building_manager.gd index 7bfe73f..465597e 100644 --- a/scripts/building_manager.gd +++ b/scripts/building_manager.gd @@ -4,11 +4,11 @@ extends Node2D var base = preload("res://scene/base.tscn") var building = preload("res://data/buildings/hub.tres") -func _unhandled_input(event): - if event is InputEventMouseButton and event.is_pressed() and event.button_index == MOUSE_BUTTON_LEFT: - var build: Base = base.instantiate() - build.position = get_global_mouse_position() - build.world = world - build.building_data = building.duplicate(true) - add_child(build) +#func _unhandled_input(event): + #if event is InputEventMouseButton and event.is_pressed() and event.button_index == MOUSE_BUTTON_LEFT: + #var build: Base = base.instantiate() + #build.position = get_global_mouse_position() + #build.world = world + #build.building_data = building.duplicate(true) + #add_child(build) #world_grid.set_cell(2, world_grid.local_to_map(get_global_mouse_position()), 0, Vector2i(16,2)) diff --git a/scripts/gui.gd b/scripts/gui.gd index 2a27c60..231af5a 100644 --- a/scripts/gui.gd +++ b/scripts/gui.gd @@ -17,11 +17,11 @@ func _on_resource_manager_changed_resource(changed: ResourceChangedSignal) -> vo img.expand_mode = TextureRect.EXPAND_FIT_WIDTH_PROPORTIONAL resource_container.add_child(img) - var label = Label.new() + var label := Label.new() label.text = str(changed.changed_resources[resource]) resource_container.add_child(label) - var data = ResourceData.new() + var data := ResourceData.new() data.image = img data.label = label data.value = changed.changed_resources[resource] diff --git a/scripts/interaction_bar.gd b/scripts/interaction_bar.gd index c34eaf9..f41a482 100644 --- a/scripts/interaction_bar.gd +++ b/scripts/interaction_bar.gd @@ -3,11 +3,17 @@ class_name InteractionBar signal interaction_finished +var grid_position: Vector2i + func _ready() -> void: + position = Grid.grid_to_world_center(grid_position) - Vector2(30,10) + var tween = get_tree().create_tween() tween.tween_property(self, "value", 100, 3) tween.tween_callback(_cleanup_gather) func _cleanup_gather() -> void: interaction_finished.emit() + var res: GameResource = Grid.get_location_data(grid_position).get_resource() + res.gained_resource.emit(res) self.queue_free() diff --git a/scripts/player.gd b/scripts/player.gd index 2a91c31..0f58fae 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -42,9 +42,10 @@ func _input(event: InputEvent) -> void: var build: BuildingBase = BUILDING_BASE.instantiate() build.initialize(_attempting_build, interaction_location) add_sibling(build) - if not _interacting and Grid.get_location_data(interaction_location).is_interactable(): + elif not _interacting and Grid.get_location_data(interaction_location).is_interactable(): var interaction = INTERACTION_BAR.instantiate() - interaction.position = Grid.grid_to_world_center(interaction_location) - Vector2(30,10) + interaction.interaction_finished.connect(_on_interaction_finished) + interaction.grid_position = interaction_location _interacting = true add_sibling(interaction) if event.is_action_pressed("build"): @@ -52,6 +53,9 @@ func _input(event: InputEvent) -> void: build_menu.build.connect(_on_build_menu_build) add_sibling(build_menu) +func _on_interaction_finished() -> void: + _interacting = false + func _on_build_menu_build(building: Building) -> void: print("Building: %s" % building.name) _attempting_build = building -- 2.49.1 From d74bfda9a3cc297a10889f0288acfc37be387956 Mon Sep 17 00:00:00 2001 From: Eric Date: Sun, 10 Mar 2024 07:50:26 -0500 Subject: [PATCH 12/18] Made building consume resources Now may build more than one if resources allow building placement is red/green for indicating success --- scripts/autoloads/grid.gd | 3 +++ scripts/autoloads/resource_manager.gd | 25 ++++++++++++++++++++++++- scripts/build_menu.gd | 4 +++- scripts/cell_data.gd | 5 ++++- scripts/gui.gd | 3 +++ scripts/interaction_bar.gd | 2 +- scripts/player.gd | 17 ++++++++++++++--- scripts/world.gd | 3 +-- 8 files changed, 53 insertions(+), 9 deletions(-) diff --git a/scripts/autoloads/grid.gd b/scripts/autoloads/grid.gd index 8d63c7a..da28e44 100644 --- a/scripts/autoloads/grid.gd +++ b/scripts/autoloads/grid.gd @@ -37,3 +37,6 @@ func get_location_data(pos: Vector2i) -> CellData: func change_location_resource(pos: Vector2i, data: GameResource) -> void: world_data[pos].change_resource(data) world_grid.set_cell(Constants.TilemapLayers.ENVIRONMENT, pos, 0, data.atlas_location) + +func change_location_building(pos: Vector2i, data: BuildingBase) -> void: + world_data[pos].change_building(data) diff --git a/scripts/autoloads/resource_manager.gd b/scripts/autoloads/resource_manager.gd index 8238c54..312a00c 100644 --- a/scripts/autoloads/resource_manager.gd +++ b/scripts/autoloads/resource_manager.gd @@ -1,4 +1,4 @@ - +extends Node signal changed_resource @export var resources := {} @@ -10,6 +10,29 @@ func _on_gained_resource(res: GameResource) -> void: } changed_resource.emit(ResourceChangedSignal.new(changed_resources)) +func pickup(resource: GameResource) -> void: + if not resources.has(resource): + resources[resource] = 0 + resources[resource] += resource.pickup_value + var changed_resources := { + resource: resource.pickup_value + } + changed_resource.emit(ResourceChangedSignal.new(changed_resources)) + +func has_amount(res: GameResource, amount: int) -> bool: + return resources[res] >= amount if resources.has(res) else false + +func has_resources(cost: Dictionary) -> bool: + return cost.keys().reduce(func(accum, res): return accum and has_amount(res, cost[res]), true) + +func use_resources(cost: Dictionary) -> void: + var changed_resources := { + } + for res in cost.keys(): + resources[res] -= cost[res] + changed_resources[res] = -cost[res] + changed_resource.emit(ResourceChangedSignal.new(changed_resources)) + #func _on_timer_timeout() -> void: #var corrupted_resources := Grid.get_corrupted_resources() #if corrupted_resources.size() > 0: diff --git a/scripts/build_menu.gd b/scripts/build_menu.gd index 5322cd4..7e3eb78 100644 --- a/scripts/build_menu.gd +++ b/scripts/build_menu.gd @@ -20,7 +20,7 @@ const BASIC_BUILDING_GROUP = preload("res://data/buildings/basic/basic_building_ func _ready() -> void: _add_building_group(BASIC_BUILDING_GROUP) _add_building_group(ADVANCED_BUILDING_GROUP) - building_groups.set_focus() + #building_groups.set_focus() func _add_building_group(group: BuildingGroup) -> void: building_groups.add_item(group.name, group.atlas_texture) @@ -55,6 +55,8 @@ func _on_buildings_item_selected(index: int) -> void: build_materials.add_child(image) var label = Label.new() label.text = str(selected_building.cost[res]) + if not ResourceManager.has_amount(res, selected_building.cost[res]): + label.add_theme_color_override("font_color", Color.RED) build_materials.add_child(label) description.show() diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index 2f48ebe..19d1b49 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -25,6 +25,9 @@ func change_layer(layer: int, data: Variant) -> bool: func change_resource(data: GameResource) -> void: layer_info[Constants.TilemapLayers.ENVIRONMENT] = data +func change_building(data: BuildingBase) -> void: + layer_info[Constants.TilemapLayers.BUILDINGS] = data + func get_resource() -> GameResource: return layer_info[Constants.TilemapLayers.ENVIRONMENT] as GameResource @@ -44,7 +47,7 @@ func is_interactable() -> bool: return has_resource() or has_building() func is_buildable() -> bool: - return not has_resource() or not has_building() + return not has_resource() and not has_building() func get_interaction_options() -> Array[Interaction]: var interactions: Array[Interaction] = [] diff --git a/scripts/gui.gd b/scripts/gui.gd index 231af5a..88a514b 100644 --- a/scripts/gui.gd +++ b/scripts/gui.gd @@ -6,6 +6,9 @@ const SCIFI_TILESHEET = preload("res://assets/scifi_tilesheet@2.png") var _resource_displays := {} +func _ready() -> void: + ResourceManager.changed_resource.connect(_on_resource_manager_changed_resource) + func _on_resource_manager_changed_resource(changed: ResourceChangedSignal) -> void: for resource: GameResource in changed.changed_resources.keys(): if not _resource_displays.has(resource): diff --git a/scripts/interaction_bar.gd b/scripts/interaction_bar.gd index f41a482..21e6436 100644 --- a/scripts/interaction_bar.gd +++ b/scripts/interaction_bar.gd @@ -15,5 +15,5 @@ func _ready() -> void: func _cleanup_gather() -> void: interaction_finished.emit() var res: GameResource = Grid.get_location_data(grid_position).get_resource() - res.gained_resource.emit(res) + ResourceManager.pickup(res) self.queue_free() diff --git a/scripts/player.gd b/scripts/player.gd index 0f58fae..ccdf334 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -35,13 +35,12 @@ func _physics_process(delta: float) -> void: if _build_placement: _build_placement.position = Grid.grid_to_world_center(interaction_location) + _build_placement.self_modulate = Color(0, 1, 0, 0.5) if Grid.get_location_data(interaction_location).is_buildable() else Color(1, 0, 0, 0.4) func _input(event: InputEvent) -> void: if event.is_action_pressed("interact"): if _attempting_build and Grid.get_location_data(interaction_location).is_buildable(): - var build: BuildingBase = BUILDING_BASE.instantiate() - build.initialize(_attempting_build, interaction_location) - add_sibling(build) + _build() elif not _interacting and Grid.get_location_data(interaction_location).is_interactable(): var interaction = INTERACTION_BAR.instantiate() interaction.interaction_finished.connect(_on_interaction_finished) @@ -64,6 +63,18 @@ func _on_build_menu_build(building: Building) -> void: _build_placement.self_modulate = Color(1, 0, 0, 0.4) add_sibling(_build_placement) +func _build() -> void: + ResourceManager.use_resources(_attempting_build.cost) + var build: BuildingBase = BUILDING_BASE.instantiate() + build.initialize(_attempting_build, interaction_location) + add_sibling(build) + Grid.change_location_building(interaction_location, build) + + if not ResourceManager.has_resources(_attempting_build.cost): + _attempting_build = null + _build_placement.queue_free() + _build_placement = null + func _on_interation_options_closed() -> void: _interaction_options = null diff --git a/scripts/world.gd b/scripts/world.gd index 4f7dc22..7c3431f 100644 --- a/scripts/world.gd +++ b/scripts/world.gd @@ -14,7 +14,6 @@ var noise_regions := [-999,0,999] var atlas_regions := [Vector2i(0,1),Vector2i(0,0)] @onready var world_grid: TileMap = $world_grid -@onready var resource_manager: Node2D = $ResourceManager func get_noise_value(x: int, y: int): return terrain_noise.get_noise_2d(x,y) * 500 @@ -62,7 +61,7 @@ func corrupt_location(loc: Vector2i): func add_resources_to_map() -> void: for res: GameResource in game_resources: - res.gained_resource.connect(resource_manager._on_gained_resource) + #res.gained_resource.connect(ResourceManager._on_gained_resource) var spawns = res.get_spawn_locations() for spawn in spawns: Grid.change_location_resource(spawn, res) -- 2.49.1 From 4b362fabed3952f2dea4979ab5f6aed8b2454df8 Mon Sep 17 00:00:00 2001 From: Eric Date: Mon, 11 Mar 2024 07:56:22 -0500 Subject: [PATCH 13/18] Added building structure Created harvester building added harvester particles added nearest resource func --- .../buildings/basic/basic_building_group.tres | 4 ++-- data/buildings/basic/harvester/harvester.gd | 20 +++++++++++++++++++ .../basic/harvester/harvester_building.tres | 18 +++++++++++++++++ data/buildings/basic/harvester_building.tres | 18 ----------------- data/buildings/building.gd | 3 +++ data/buildings/building_base.gd | 1 + data/buildings/building_methods.gd | 5 +++++ data/buildings/building_methods.tscn | 6 ++++++ scripts/autoloads/grid.gd | 15 ++++++++++++++ 9 files changed, 70 insertions(+), 20 deletions(-) create mode 100644 data/buildings/basic/harvester/harvester.gd create mode 100644 data/buildings/basic/harvester/harvester_building.tres delete mode 100644 data/buildings/basic/harvester_building.tres create mode 100644 data/buildings/building_methods.gd create mode 100644 data/buildings/building_methods.tscn diff --git a/data/buildings/basic/basic_building_group.tres b/data/buildings/basic/basic_building_group.tres index 579156d..10c3199 100644 --- a/data/buildings/basic/basic_building_group.tres +++ b/data/buildings/basic/basic_building_group.tres @@ -2,7 +2,7 @@ [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_p1crr"] [ext_resource type="Script" path="res://data/buildings/building_group.gd" id="1_xphre"] -[ext_resource type="Resource" uid="uid://d38xgwstvtcm4" path="res://data/buildings/basic/harvester_building.tres" id="2_7d7fa"] +[ext_resource type="Resource" uid="uid://d38xgwstvtcm4" path="res://data/buildings/basic/harvester/harvester_building.tres" id="2_5rd2r"] [ext_resource type="Resource" uid="uid://cta6ngelbwo8b" path="res://data/buildings/basic/warehouse_building.tres" id="3_vxs34"] [sub_resource type="AtlasTexture" id="AtlasTexture_nleix"] @@ -13,4 +13,4 @@ region = Rect2(1024, 576, 64, 64) script = ExtResource("1_xphre") name = "Basic" atlas_texture = SubResource("AtlasTexture_nleix") -buildings = Array[Resource("res://data/buildings/building.gd")]([ExtResource("2_7d7fa"), ExtResource("3_vxs34")]) +buildings = Array[Resource("res://data/buildings/building.gd")]([ExtResource("2_5rd2r"), ExtResource("3_vxs34")]) diff --git a/data/buildings/basic/harvester/harvester.gd b/data/buildings/basic/harvester/harvester.gd new file mode 100644 index 0000000..c8fb682 --- /dev/null +++ b/data/buildings/basic/harvester/harvester.gd @@ -0,0 +1,20 @@ +extends Building + +const CARBON_RESOURCE = preload("res://data/game_resources/carbon/carbon_resource.tres") + +func ready(building: BuildingBase) -> void: + var nearest_res := Grid.get_nearest_resource(building.position, CARBON_RESOURCE) + var _distance = building.position.distance_to(nearest_res) + + var particles = CPUParticles2D.new() + particles.amount = 60 + particles.spread = 8 + particles.material = ParticleProcessMaterial.new() + particles.radial_accel_max = _distance * -2.5 + particles.radial_accel_min = _distance * -2.55 + particles.gravity = Vector2.ZERO + particles.direction = building.position.direction_to(nearest_res) + particles.initial_velocity_max = _distance * 2.25 + particles.initial_velocity_min = _distance * 2.2 + particles.lifetime = 1.65 + building.add_child(particles) diff --git a/data/buildings/basic/harvester/harvester_building.tres b/data/buildings/basic/harvester/harvester_building.tres new file mode 100644 index 0000000..5ae2764 --- /dev/null +++ b/data/buildings/basic/harvester/harvester_building.tres @@ -0,0 +1,18 @@ +[gd_resource type="Resource" load_steps=5 format=3 uid="uid://d38xgwstvtcm4"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_m1sbx"] +[ext_resource type="Script" path="res://data/buildings/basic/harvester/harvester.gd" id="3_fy2m4"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="3_xlnq5"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_mgt0w"] +atlas = ExtResource("1_m1sbx") +region = Rect2(1088, 128, 64, 64) + +[resource] +script = ExtResource("3_fy2m4") +atlas_texture = SubResource("AtlasTexture_mgt0w") +name = "Harvester" +description = "Harvests nearby resources" +cost = { +ExtResource("3_xlnq5"): 100 +} diff --git a/data/buildings/basic/harvester_building.tres b/data/buildings/basic/harvester_building.tres deleted file mode 100644 index 99958d6..0000000 --- a/data/buildings/basic/harvester_building.tres +++ /dev/null @@ -1,18 +0,0 @@ -[gd_resource type="Resource" script_class="Building" load_steps=5 format=3 uid="uid://d38xgwstvtcm4"] - -[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_8uuv4"] -[ext_resource type="Script" path="res://data/buildings/building.gd" id="1_s0c8c"] -[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_ppxqc"] - -[sub_resource type="AtlasTexture" id="AtlasTexture_5nxx0"] -atlas = ExtResource("1_8uuv4") -region = Rect2(1088, 128, 64, 64) - -[resource] -script = ExtResource("1_s0c8c") -atlas_texture = SubResource("AtlasTexture_5nxx0") -name = "Harvester" -description = "Harvests nearby" -cost = { -ExtResource("2_ppxqc"): 100 -} diff --git a/data/buildings/building.gd b/data/buildings/building.gd index e0bab39..542b144 100644 --- a/data/buildings/building.gd +++ b/data/buildings/building.gd @@ -5,3 +5,6 @@ extends Resource @export var name: String @export var description: String @export var cost: Dictionary + +func ready(building: BuildingBase) -> void: + pass diff --git a/data/buildings/building_base.gd b/data/buildings/building_base.gd index 5fa848f..9605c28 100644 --- a/data/buildings/building_base.gd +++ b/data/buildings/building_base.gd @@ -8,6 +8,7 @@ var _building_data: Building func initialize(data: Building, grid_location: Vector2i) -> void: _building_data = data position = Grid.grid_to_world_center(grid_location) + _building_data.ready(self) func _ready() -> void: sprite_2d.texture = _building_data.atlas_texture diff --git a/data/buildings/building_methods.gd b/data/buildings/building_methods.gd new file mode 100644 index 0000000..7c5e8ac --- /dev/null +++ b/data/buildings/building_methods.gd @@ -0,0 +1,5 @@ +extends Resource +class_name BuildingMethods + +func ready(building: BuildingBase) -> void: + pass diff --git a/data/buildings/building_methods.tscn b/data/buildings/building_methods.tscn new file mode 100644 index 0000000..b5fa279 --- /dev/null +++ b/data/buildings/building_methods.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://7threw5x5tw6"] + +[ext_resource type="Script" path="res://data/buildings/building_methods.gd" id="1_ll4rt"] + +[node name="BuildingMethods" type="Node2D"] +script = ExtResource("1_ll4rt") diff --git a/scripts/autoloads/grid.gd b/scripts/autoloads/grid.gd index da28e44..8f4d1be 100644 --- a/scripts/autoloads/grid.gd +++ b/scripts/autoloads/grid.gd @@ -4,6 +4,8 @@ const GRID_SIZE := 64 var world_grid: TileMap var world_data: Dictionary = {} +var res_locations := {} + func init(grid: TileMap) -> void: world_grid = grid @@ -37,6 +39,19 @@ func get_location_data(pos: Vector2i) -> CellData: func change_location_resource(pos: Vector2i, data: GameResource) -> void: world_data[pos].change_resource(data) world_grid.set_cell(Constants.TilemapLayers.ENVIRONMENT, pos, 0, data.atlas_location) + if not res_locations.has(data): + res_locations[data] = [] + res_locations[data].append(Grid.grid_to_world_center(pos)) + +func get_nearest_resource(pos: Vector2, data: GameResource) -> Vector2: + var distance: float = 9999 + var nearest: Vector2 + for location: Vector2 in res_locations[data]: + var _dist = pos.distance_to(location) + if _dist < distance: + distance = _dist + nearest = location + return nearest func change_location_building(pos: Vector2i, data: BuildingBase) -> void: world_data[pos].change_building(data) -- 2.49.1 From 47181084071a4638e79fde28aeb282b451da4a1b Mon Sep 17 00:00:00 2001 From: Eric Date: Tue, 12 Mar 2024 10:23:11 -0500 Subject: [PATCH 14/18] Made particles emit from resource --- data/buildings/basic/harvester/harvester.gd | 31 ++++++++-------- .../basic/harvester/harvester_particles.gd | 37 +++++++++++++++++++ .../basic/harvester/harvester_particles.tscn | 12 ++++++ data/buildings/basic/warehouse_building.tres | 6 +-- data/buildings/building.gd | 2 + data/buildings/building_base.gd | 3 +- scripts/cell_data.gd | 2 +- scripts/interaction_bar.gd | 1 + 8 files changed, 72 insertions(+), 22 deletions(-) create mode 100644 data/buildings/basic/harvester/harvester_particles.gd create mode 100644 data/buildings/basic/harvester/harvester_particles.tscn diff --git a/data/buildings/basic/harvester/harvester.gd b/data/buildings/basic/harvester/harvester.gd index c8fb682..d879e4d 100644 --- a/data/buildings/basic/harvester/harvester.gd +++ b/data/buildings/basic/harvester/harvester.gd @@ -1,20 +1,19 @@ extends Building -const CARBON_RESOURCE = preload("res://data/game_resources/carbon/carbon_resource.tres") +var nearest_res +var _distance +var _direction -func ready(building: BuildingBase) -> void: - var nearest_res := Grid.get_nearest_resource(building.position, CARBON_RESOURCE) - var _distance = building.position.distance_to(nearest_res) +const CARBON_RESOURCE = preload("res://data/game_resources/carbon/carbon_resource.tres") +const HARVESTER_PARTICLES = preload("res://data/buildings/basic/harvester/harvester_particles.tscn") + +func initialize(building: BuildingBase) -> void: + nearest_res = Grid.get_nearest_resource(building.position, CARBON_RESOURCE) + _distance = building.position.distance_to(nearest_res) + _direction = nearest_res.direction_to(building.position) - var particles = CPUParticles2D.new() - particles.amount = 60 - particles.spread = 8 - particles.material = ParticleProcessMaterial.new() - particles.radial_accel_max = _distance * -2.5 - particles.radial_accel_min = _distance * -2.55 - particles.gravity = Vector2.ZERO - particles.direction = building.position.direction_to(nearest_res) - particles.initial_velocity_max = _distance * 2.25 - particles.initial_velocity_min = _distance * 2.2 - particles.lifetime = 1.65 - building.add_child(particles) +func ready(building: BuildingBase) -> void: + var particles = HARVESTER_PARTICLES.instantiate() + particles.init(_distance, _direction, CARBON_RESOURCE) + particles.position = nearest_res + building.add_sibling(particles) diff --git a/data/buildings/basic/harvester/harvester_particles.gd b/data/buildings/basic/harvester/harvester_particles.gd new file mode 100644 index 0000000..54c4d23 --- /dev/null +++ b/data/buildings/basic/harvester/harvester_particles.gd @@ -0,0 +1,37 @@ +extends Node2D + +var _pickup + +var _distance +var _direction +var _emitters: Array[CPUParticles2D] = [] + +func init(distance: float, direction: Vector2, res: GameResource) -> void: + _distance = distance + _direction = direction + _pickup = res + +func _ready() -> void: + if _emitters.size() < 10: + var particles = CPUParticles2D.new() + particles.amount = 8 + particles.spread = 8 + particles.material = ParticleProcessMaterial.new() + particles.radial_accel_max = _distance * -2.5 + particles.radial_accel_min = _distance * -2.55 + particles.gravity = Vector2.ZERO + particles.direction = _direction + particles.initial_velocity_max = _distance * 2.25 + particles.initial_velocity_min = _distance * 2.2 + particles.lifetime = 1.65 + add_child(particles) + _emitters.append(particles) + else: + for i in range(1, _emitters.size()): + _emitters[i].queue_free() + _emitters.resize(1) + ResourceManager.pickup(_pickup) + + +func _on_particles_timer_timeout() -> void: + _ready() diff --git a/data/buildings/basic/harvester/harvester_particles.tscn b/data/buildings/basic/harvester/harvester_particles.tscn new file mode 100644 index 0000000..e357363 --- /dev/null +++ b/data/buildings/basic/harvester/harvester_particles.tscn @@ -0,0 +1,12 @@ +[gd_scene load_steps=2 format=3 uid="uid://73dsjfc4imfo"] + +[ext_resource type="Script" path="res://data/buildings/basic/harvester/harvester_particles.gd" id="1_td5fv"] + +[node name="HarvesterParticles" type="Node2D"] +script = ExtResource("1_td5fv") + +[node name="ParticlesTimer" type="Timer" parent="."] +wait_time = 0.5 +autostart = true + +[connection signal="timeout" from="ParticlesTimer" to="." method="_on_particles_timer_timeout"] diff --git a/data/buildings/basic/warehouse_building.tres b/data/buildings/basic/warehouse_building.tres index 923800a..f807938 100644 --- a/data/buildings/basic/warehouse_building.tres +++ b/data/buildings/basic/warehouse_building.tres @@ -1,9 +1,8 @@ -[gd_resource type="Resource" script_class="Building" load_steps=6 format=3 uid="uid://cta6ngelbwo8b"] +[gd_resource type="Resource" script_class="Building" load_steps=5 format=3 uid="uid://cta6ngelbwo8b"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_24f36"] [ext_resource type="Script" path="res://data/buildings/building.gd" id="1_aylgh"] [ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_s5ve8"] -[ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem/gem_resource.tres" id="3_y57vu"] [sub_resource type="AtlasTexture" id="AtlasTexture_pbx2g"] atlas = ExtResource("1_24f36") @@ -15,6 +14,5 @@ atlas_texture = SubResource("AtlasTexture_pbx2g") name = "Warehouse" description = "Allows storage of more materials" cost = { -ExtResource("2_s5ve8"): 500, -ExtResource("3_y57vu"): 200 +ExtResource("2_s5ve8"): 500 } diff --git a/data/buildings/building.gd b/data/buildings/building.gd index 542b144..fa9fa6b 100644 --- a/data/buildings/building.gd +++ b/data/buildings/building.gd @@ -6,5 +6,7 @@ extends Resource @export var description: String @export var cost: Dictionary +func initialize(building: BuildingBase) -> void: + pass func ready(building: BuildingBase) -> void: pass diff --git a/data/buildings/building_base.gd b/data/buildings/building_base.gd index 9605c28..a4491bd 100644 --- a/data/buildings/building_base.gd +++ b/data/buildings/building_base.gd @@ -8,7 +8,8 @@ var _building_data: Building func initialize(data: Building, grid_location: Vector2i) -> void: _building_data = data position = Grid.grid_to_world_center(grid_location) - _building_data.ready(self) + _building_data.initialize(self) func _ready() -> void: sprite_2d.texture = _building_data.atlas_texture + _building_data.ready(self) diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index 19d1b49..869a700 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -29,7 +29,7 @@ func change_building(data: BuildingBase) -> void: layer_info[Constants.TilemapLayers.BUILDINGS] = data func get_resource() -> GameResource: - return layer_info[Constants.TilemapLayers.ENVIRONMENT] as GameResource + return layer_info[Constants.TilemapLayerss.ENVIRONMENT] as GameResource func has_resource() -> bool: return has_layer(Constants.TilemapLayers.ENVIRONMENT) diff --git a/scripts/interaction_bar.gd b/scripts/interaction_bar.gd index 21e6436..56858f1 100644 --- a/scripts/interaction_bar.gd +++ b/scripts/interaction_bar.gd @@ -14,6 +14,7 @@ func _ready() -> void: func _cleanup_gather() -> void: interaction_finished.emit() + #TODO add the interaction for buildings var res: GameResource = Grid.get_location_data(grid_position).get_resource() ResourceManager.pickup(res) self.queue_free() -- 2.49.1 From 4f0f97b91d63c068bf73ea3982ba01fdb495c4be Mon Sep 17 00:00:00 2001 From: Eric Date: Wed, 13 Mar 2024 09:57:10 -0500 Subject: [PATCH 15/18] More building work --- data/buildings/basic/basic_building_group.tres | 2 +- .../basic/harvester/harvester_particles.gd | 6 +++--- data/buildings/basic/warehouse/warehouse.gd | 7 +++++++ .../basic/warehouse/warehouse_building.tres | 18 ++++++++++++++++++ data/buildings/basic/warehouse_building.tres | 18 ------------------ .../game_resources/carbon/carbon_resource.tres | 3 ++- scripts/autoloads/resource_manager.gd | 12 +++++++----- scripts/cell_data.gd | 2 +- scripts/game_resource.gd | 1 + scripts/gui.gd | 5 +++-- 10 files changed, 43 insertions(+), 31 deletions(-) create mode 100644 data/buildings/basic/warehouse/warehouse.gd create mode 100644 data/buildings/basic/warehouse/warehouse_building.tres delete mode 100644 data/buildings/basic/warehouse_building.tres diff --git a/data/buildings/basic/basic_building_group.tres b/data/buildings/basic/basic_building_group.tres index 10c3199..f0803c6 100644 --- a/data/buildings/basic/basic_building_group.tres +++ b/data/buildings/basic/basic_building_group.tres @@ -3,7 +3,7 @@ [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_p1crr"] [ext_resource type="Script" path="res://data/buildings/building_group.gd" id="1_xphre"] [ext_resource type="Resource" uid="uid://d38xgwstvtcm4" path="res://data/buildings/basic/harvester/harvester_building.tres" id="2_5rd2r"] -[ext_resource type="Resource" uid="uid://cta6ngelbwo8b" path="res://data/buildings/basic/warehouse_building.tres" id="3_vxs34"] +[ext_resource type="Resource" uid="uid://cta6ngelbwo8b" path="res://data/buildings/basic/warehouse/warehouse_building.tres" id="3_vxs34"] [sub_resource type="AtlasTexture" id="AtlasTexture_nleix"] atlas = ExtResource("1_p1crr") diff --git a/data/buildings/basic/harvester/harvester_particles.gd b/data/buildings/basic/harvester/harvester_particles.gd index 54c4d23..b8f5b8a 100644 --- a/data/buildings/basic/harvester/harvester_particles.gd +++ b/data/buildings/basic/harvester/harvester_particles.gd @@ -15,10 +15,10 @@ func _ready() -> void: if _emitters.size() < 10: var particles = CPUParticles2D.new() particles.amount = 8 - particles.spread = 8 + particles.spread = 8 * (_distance / 128) particles.material = ParticleProcessMaterial.new() - particles.radial_accel_max = _distance * -2.5 - particles.radial_accel_min = _distance * -2.55 + particles.damping_max = _distance * -2.5 + particles.damping_min = _distance * -2.55 particles.gravity = Vector2.ZERO particles.direction = _direction particles.initial_velocity_max = _distance * 2.25 diff --git a/data/buildings/basic/warehouse/warehouse.gd b/data/buildings/basic/warehouse/warehouse.gd new file mode 100644 index 0000000..0a6c33e --- /dev/null +++ b/data/buildings/basic/warehouse/warehouse.gd @@ -0,0 +1,7 @@ +extends Building + +func initialize(building: BuildingBase) -> void: + pass + +func ready(building: BuildingBase) -> void: + pass diff --git a/data/buildings/basic/warehouse/warehouse_building.tres b/data/buildings/basic/warehouse/warehouse_building.tres new file mode 100644 index 0000000..40496cf --- /dev/null +++ b/data/buildings/basic/warehouse/warehouse_building.tres @@ -0,0 +1,18 @@ +[gd_resource type="Resource" load_steps=5 format=3 uid="uid://cta6ngelbwo8b"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_t8g7q"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_0uiah"] +[ext_resource type="Script" path="res://data/buildings/basic/warehouse/warehouse.gd" id="3_nvser"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_hcas6"] +atlas = ExtResource("1_t8g7q") +region = Rect2(1024, 64, 64, 64) + +[resource] +script = ExtResource("3_nvser") +atlas_texture = SubResource("AtlasTexture_hcas6") +name = "Warehouse" +description = "Allows storage of more materials" +cost = { +ExtResource("2_0uiah"): 500 +} diff --git a/data/buildings/basic/warehouse_building.tres b/data/buildings/basic/warehouse_building.tres deleted file mode 100644 index f807938..0000000 --- a/data/buildings/basic/warehouse_building.tres +++ /dev/null @@ -1,18 +0,0 @@ -[gd_resource type="Resource" script_class="Building" load_steps=5 format=3 uid="uid://cta6ngelbwo8b"] - -[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_24f36"] -[ext_resource type="Script" path="res://data/buildings/building.gd" id="1_aylgh"] -[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_s5ve8"] - -[sub_resource type="AtlasTexture" id="AtlasTexture_pbx2g"] -atlas = ExtResource("1_24f36") -region = Rect2(1024, 64, 64, 64) - -[resource] -script = ExtResource("1_aylgh") -atlas_texture = SubResource("AtlasTexture_pbx2g") -name = "Warehouse" -description = "Allows storage of more materials" -cost = { -ExtResource("2_s5ve8"): 500 -} diff --git a/data/game_resources/carbon/carbon_resource.tres b/data/game_resources/carbon/carbon_resource.tres index 8037464..417140b 100644 --- a/data/game_resources/carbon/carbon_resource.tres +++ b/data/game_resources/carbon/carbon_resource.tres @@ -8,4 +8,5 @@ script = ExtResource("1_4maxk") atlas_location = Vector2i(5, 3) pickup_value = 20 name = "Carbon" -spawn_patterns = [ExtResource("2_eyt7m")] +spawn_patterns = Array[Resource("res://scripts/spawn_pattern.gd")]([ExtResource("2_eyt7m")]) +storage_max = 2500 diff --git a/scripts/autoloads/resource_manager.gd b/scripts/autoloads/resource_manager.gd index 312a00c..8f3c9df 100644 --- a/scripts/autoloads/resource_manager.gd +++ b/scripts/autoloads/resource_manager.gd @@ -13,11 +13,13 @@ func _on_gained_resource(res: GameResource) -> void: func pickup(resource: GameResource) -> void: if not resources.has(resource): resources[resource] = 0 - resources[resource] += resource.pickup_value - var changed_resources := { - resource: resource.pickup_value - } - changed_resource.emit(ResourceChangedSignal.new(changed_resources)) + var pickup_amount = min(resource.pickup_value, resource.storage_max - resources[resource]) + if pickup_amount > 0: + resources[resource] += pickup_amount + var changed_resources := { + resource: pickup_amount + } + changed_resource.emit(ResourceChangedSignal.new(changed_resources)) func has_amount(res: GameResource, amount: int) -> bool: return resources[res] >= amount if resources.has(res) else false diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index 869a700..19d1b49 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -29,7 +29,7 @@ func change_building(data: BuildingBase) -> void: layer_info[Constants.TilemapLayers.BUILDINGS] = data func get_resource() -> GameResource: - return layer_info[Constants.TilemapLayerss.ENVIRONMENT] as GameResource + return layer_info[Constants.TilemapLayers.ENVIRONMENT] as GameResource func has_resource() -> bool: return has_layer(Constants.TilemapLayers.ENVIRONMENT) diff --git a/scripts/game_resource.gd b/scripts/game_resource.gd index e4654fd..1c79ee2 100644 --- a/scripts/game_resource.gd +++ b/scripts/game_resource.gd @@ -7,6 +7,7 @@ signal gained_resource(res: GameResource) @export var pickup_value: int @export var name: String @export var spawn_patterns: Array[SpawnPattern] +@export var storage_max: int func _to_string() -> String: return name diff --git a/scripts/gui.gd b/scripts/gui.gd index 88a514b..f1f409e 100644 --- a/scripts/gui.gd +++ b/scripts/gui.gd @@ -21,7 +21,6 @@ func _on_resource_manager_changed_resource(changed: ResourceChangedSignal) -> vo resource_container.add_child(img) var label := Label.new() - label.text = str(changed.changed_resources[resource]) resource_container.add_child(label) var data := ResourceData.new() @@ -29,10 +28,12 @@ func _on_resource_manager_changed_resource(changed: ResourceChangedSignal) -> vo data.label = label data.value = changed.changed_resources[resource] _resource_displays[resource] = data + + label.text = "%s / %s" % [data.value, resource.storage_max] else: var data: ResourceData = _resource_displays[resource] data.value += changed.changed_resources[resource] - data.label.text = str(data.value) + data.label.text = "%s / %s" % [data.value, resource.storage_max] class ResourceData: var image: TextureRect -- 2.49.1 From 82675b6ed2a2ed6a4ca7d4655e17acdf1d539783 Mon Sep 17 00:00:00 2001 From: Eric Date: Thu, 14 Mar 2024 07:28:18 -0500 Subject: [PATCH 16/18] two buildings working! created research building base --- data/buildings/basic/basic_building_group.tres | 5 +++-- data/buildings/basic/harvester/harvester.gd | 1 + data/buildings/basic/researcher/researcher.gd | 1 + .../basic/researcher/researcher_building.tres | 18 ++++++++++++++++++ data/buildings/basic/warehouse/warehouse.gd | 4 +++- project.godot | 1 + scene/world.tscn | 6 +----- scripts/autoloads/building_manager.gd | 17 +++++++++++++++++ scripts/autoloads/resource_manager.gd | 5 ++++- scripts/building_manager.gd | 14 -------------- scripts/gui.gd | 4 ++-- 11 files changed, 51 insertions(+), 25 deletions(-) create mode 100644 data/buildings/basic/researcher/researcher.gd create mode 100644 data/buildings/basic/researcher/researcher_building.tres create mode 100644 scripts/autoloads/building_manager.gd delete mode 100644 scripts/building_manager.gd diff --git a/data/buildings/basic/basic_building_group.tres b/data/buildings/basic/basic_building_group.tres index f0803c6..df16de8 100644 --- a/data/buildings/basic/basic_building_group.tres +++ b/data/buildings/basic/basic_building_group.tres @@ -1,9 +1,10 @@ -[gd_resource type="Resource" script_class="BuildingGroup" load_steps=6 format=3 uid="uid://dqv53okb3evb7"] +[gd_resource type="Resource" script_class="BuildingGroup" load_steps=7 format=3 uid="uid://dqv53okb3evb7"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_p1crr"] [ext_resource type="Script" path="res://data/buildings/building_group.gd" id="1_xphre"] [ext_resource type="Resource" uid="uid://d38xgwstvtcm4" path="res://data/buildings/basic/harvester/harvester_building.tres" id="2_5rd2r"] [ext_resource type="Resource" uid="uid://cta6ngelbwo8b" path="res://data/buildings/basic/warehouse/warehouse_building.tres" id="3_vxs34"] +[ext_resource type="Resource" uid="uid://bibep1rd0jml2" path="res://data/buildings/basic/researcher/researcher_building.tres" id="4_fxdio"] [sub_resource type="AtlasTexture" id="AtlasTexture_nleix"] atlas = ExtResource("1_p1crr") @@ -13,4 +14,4 @@ region = Rect2(1024, 576, 64, 64) script = ExtResource("1_xphre") name = "Basic" atlas_texture = SubResource("AtlasTexture_nleix") -buildings = Array[Resource("res://data/buildings/building.gd")]([ExtResource("2_5rd2r"), ExtResource("3_vxs34")]) +buildings = Array[Resource("res://data/buildings/building.gd")]([ExtResource("2_5rd2r"), ExtResource("3_vxs34"), ExtResource("4_fxdio")]) diff --git a/data/buildings/basic/harvester/harvester.gd b/data/buildings/basic/harvester/harvester.gd index d879e4d..a4a76a3 100644 --- a/data/buildings/basic/harvester/harvester.gd +++ b/data/buildings/basic/harvester/harvester.gd @@ -11,6 +11,7 @@ func initialize(building: BuildingBase) -> void: nearest_res = Grid.get_nearest_resource(building.position, CARBON_RESOURCE) _distance = building.position.distance_to(nearest_res) _direction = nearest_res.direction_to(building.position) + BuildingManager.add_resource_building(CARBON_RESOURCE, building) func ready(building: BuildingBase) -> void: var particles = HARVESTER_PARTICLES.instantiate() diff --git a/data/buildings/basic/researcher/researcher.gd b/data/buildings/basic/researcher/researcher.gd new file mode 100644 index 0000000..72a97e3 --- /dev/null +++ b/data/buildings/basic/researcher/researcher.gd @@ -0,0 +1 @@ +extends Building diff --git a/data/buildings/basic/researcher/researcher_building.tres b/data/buildings/basic/researcher/researcher_building.tres new file mode 100644 index 0000000..200aeaf --- /dev/null +++ b/data/buildings/basic/researcher/researcher_building.tres @@ -0,0 +1,18 @@ +[gd_resource type="Resource" load_steps=5 format=3 uid="uid://bibep1rd0jml2"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_kruad"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_hybxl"] +[ext_resource type="Script" path="res://data/buildings/basic/researcher/researcher.gd" id="3_h2kjx"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_ejp6g"] +atlas = ExtResource("1_kruad") +region = Rect2(1024, 128, 64, 64) + +[resource] +script = ExtResource("3_h2kjx") +atlas_texture = SubResource("AtlasTexture_ejp6g") +name = "Researcher" +description = "Research new buildings and technologies" +cost = { +ExtResource("2_hybxl"): 6000 +} diff --git a/data/buildings/basic/warehouse/warehouse.gd b/data/buildings/basic/warehouse/warehouse.gd index 0a6c33e..7be23ef 100644 --- a/data/buildings/basic/warehouse/warehouse.gd +++ b/data/buildings/basic/warehouse/warehouse.gd @@ -1,7 +1,9 @@ extends Building +const CARBON_RESOURCE = preload("res://data/game_resources/carbon/carbon_resource.tres") + func initialize(building: BuildingBase) -> void: - pass + BuildingManager.add_storage_building(CARBON_RESOURCE, building) func ready(building: BuildingBase) -> void: pass diff --git a/project.godot b/project.godot index fd1cabf..cb82b17 100644 --- a/project.godot +++ b/project.godot @@ -19,6 +19,7 @@ config/icon="res://icon.svg" Grid="*res://scripts/autoloads/grid.gd" ResourceManager="*res://scripts/autoloads/resource_manager.gd" +BuildingManager="*res://scripts/autoloads/building_manager.gd" [debug] diff --git a/scene/world.tscn b/scene/world.tscn index 407286b..73489d3 100644 --- a/scene/world.tscn +++ b/scene/world.tscn @@ -1,10 +1,9 @@ -[gd_scene load_steps=11 format=3 uid="uid://m0us5xqa3gnk"] +[gd_scene load_steps=10 format=3 uid="uid://m0us5xqa3gnk"] [ext_resource type="Script" path="res://scripts/world.gd" id="1_yf6q1"] [ext_resource type="Resource" uid="uid://dr00rd4f42jqe" path="res://data/game_resources/gem/gem_resource.tres" id="2_rn4a2"] [ext_resource type="TileSet" uid="uid://d1sh6dy2w10b0" path="res://data/scifi_tileset.tres" id="2_sa7dm"] [ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="3_pq6ic"] -[ext_resource type="Script" path="res://scripts/building_manager.gd" id="4_61js3"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="5_qhth7"] [ext_resource type="Script" path="res://scripts/gui.gd" id="6_yuatk"] @@ -37,9 +36,6 @@ layer_3/tile_data = PackedInt32Array() layer_4/name = "buildings" layer_4/tile_data = PackedInt32Array() -[node name="BuildingManager" type="Node2D" parent="."] -script = ExtResource("4_61js3") - [node name="CanvasLayer" type="CanvasLayer" parent="."] [node name="GUI" type="Control" parent="CanvasLayer"] diff --git a/scripts/autoloads/building_manager.gd b/scripts/autoloads/building_manager.gd new file mode 100644 index 0000000..58095f6 --- /dev/null +++ b/scripts/autoloads/building_manager.gd @@ -0,0 +1,17 @@ +extends Node + +var _resource_buildings = {} +var _storage_buildings = {} + +func add_resource_building(res: GameResource, building: BuildingBase) -> void: + if not _resource_buildings.has(res): + _resource_buildings[res] = [] + _resource_buildings[res].append(building) + +func add_storage_building(res: GameResource, building: BuildingBase) -> void: + if not _storage_buildings.has(res): + _storage_buildings[res] = [] + _storage_buildings[res].append(building) + +func get_storage_count_for_resource(res: GameResource) -> int: + return 0 if not _storage_buildings.has(res) else _storage_buildings[res].size() diff --git a/scripts/autoloads/resource_manager.gd b/scripts/autoloads/resource_manager.gd index 8f3c9df..00f798c 100644 --- a/scripts/autoloads/resource_manager.gd +++ b/scripts/autoloads/resource_manager.gd @@ -13,7 +13,7 @@ func _on_gained_resource(res: GameResource) -> void: func pickup(resource: GameResource) -> void: if not resources.has(resource): resources[resource] = 0 - var pickup_amount = min(resource.pickup_value, resource.storage_max - resources[resource]) + var pickup_amount = min(resource.pickup_value, get_resource_limit(resource) - resources[resource]) if pickup_amount > 0: resources[resource] += pickup_amount var changed_resources := { @@ -34,6 +34,9 @@ func use_resources(cost: Dictionary) -> void: resources[res] -= cost[res] changed_resources[res] = -cost[res] changed_resource.emit(ResourceChangedSignal.new(changed_resources)) + +func get_resource_limit(resource: GameResource) -> int: + return resource.storage_max * (1 + BuildingManager.get_storage_count_for_resource(resource)) #func _on_timer_timeout() -> void: #var corrupted_resources := Grid.get_corrupted_resources() diff --git a/scripts/building_manager.gd b/scripts/building_manager.gd deleted file mode 100644 index 465597e..0000000 --- a/scripts/building_manager.gd +++ /dev/null @@ -1,14 +0,0 @@ -extends Node2D - -@onready var world: World = $".." -var base = preload("res://scene/base.tscn") -var building = preload("res://data/buildings/hub.tres") - -#func _unhandled_input(event): - #if event is InputEventMouseButton and event.is_pressed() and event.button_index == MOUSE_BUTTON_LEFT: - #var build: Base = base.instantiate() - #build.position = get_global_mouse_position() - #build.world = world - #build.building_data = building.duplicate(true) - #add_child(build) - #world_grid.set_cell(2, world_grid.local_to_map(get_global_mouse_position()), 0, Vector2i(16,2)) diff --git a/scripts/gui.gd b/scripts/gui.gd index f1f409e..c00ea77 100644 --- a/scripts/gui.gd +++ b/scripts/gui.gd @@ -29,11 +29,11 @@ func _on_resource_manager_changed_resource(changed: ResourceChangedSignal) -> vo data.value = changed.changed_resources[resource] _resource_displays[resource] = data - label.text = "%s / %s" % [data.value, resource.storage_max] + label.text = "%s / %s" % [data.value, ResourceManager.get_resource_limit(resource)] else: var data: ResourceData = _resource_displays[resource] data.value += changed.changed_resources[resource] - data.label.text = "%s / %s" % [data.value, resource.storage_max] + data.label.text = "%s / %s" % [data.value, ResourceManager.get_resource_limit(resource)] class ResourceData: var image: TextureRect -- 2.49.1 From f57f7f554093b8f75804c9a94e4afd19317ebfc9 Mon Sep 17 00:00:00 2001 From: Eric Date: Tue, 26 Mar 2024 12:21:20 -0500 Subject: [PATCH 17/18] researcher work --- data/buildings/basic/researcher/researcher.gd | 6 +++++- data/buildings/basic/researcher/researcher.tscn | 6 ++++++ .../basic/researcher/researcher_building.tres | 10 +++++----- data/buildings/building.gd | 4 ++++ data/buildings/building_base.gd | 10 +++++++--- 5 files changed, 27 insertions(+), 9 deletions(-) create mode 100644 data/buildings/basic/researcher/researcher.tscn diff --git a/data/buildings/basic/researcher/researcher.gd b/data/buildings/basic/researcher/researcher.gd index 72a97e3..7cc6b02 100644 --- a/data/buildings/basic/researcher/researcher.gd +++ b/data/buildings/basic/researcher/researcher.gd @@ -1 +1,5 @@ -extends Building +extends Node +class_name Researcher + +func interact() -> bool: + return true diff --git a/data/buildings/basic/researcher/researcher.tscn b/data/buildings/basic/researcher/researcher.tscn new file mode 100644 index 0000000..45de94b --- /dev/null +++ b/data/buildings/basic/researcher/researcher.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://bw3j3vxpsfxst"] + +[ext_resource type="Script" path="res://data/buildings/basic/researcher/researcher.gd" id="1_018kr"] + +[node name="Researcher" type="Node"] +script = ExtResource("1_018kr") diff --git a/data/buildings/basic/researcher/researcher_building.tres b/data/buildings/basic/researcher/researcher_building.tres index 200aeaf..3587a8c 100644 --- a/data/buildings/basic/researcher/researcher_building.tres +++ b/data/buildings/basic/researcher/researcher_building.tres @@ -1,16 +1,16 @@ -[gd_resource type="Resource" load_steps=5 format=3 uid="uid://bibep1rd0jml2"] +[gd_resource type="Resource" script_class="Building" load_steps=5 format=3 uid="uid://bibep1rd0jml2"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_kruad"] [ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_hybxl"] -[ext_resource type="Script" path="res://data/buildings/basic/researcher/researcher.gd" id="3_h2kjx"] +[ext_resource type="Script" path="res://data/buildings/building.gd" id="3_pleu3"] -[sub_resource type="AtlasTexture" id="AtlasTexture_ejp6g"] +[sub_resource type="AtlasTexture" id="AtlasTexture_n7l2d"] atlas = ExtResource("1_kruad") region = Rect2(1024, 128, 64, 64) [resource] -script = ExtResource("3_h2kjx") -atlas_texture = SubResource("AtlasTexture_ejp6g") +script = ExtResource("3_pleu3") +atlas_texture = SubResource("AtlasTexture_n7l2d") name = "Researcher" description = "Research new buildings and technologies" cost = { diff --git a/data/buildings/building.gd b/data/buildings/building.gd index fa9fa6b..138bc07 100644 --- a/data/buildings/building.gd +++ b/data/buildings/building.gd @@ -5,8 +5,12 @@ extends Resource @export var name: String @export var description: String @export var cost: Dictionary +@export var world_scene: PackedScene + func initialize(building: BuildingBase) -> void: pass + + func ready(building: BuildingBase) -> void: pass diff --git a/data/buildings/building_base.gd b/data/buildings/building_base.gd index a4491bd..8121f96 100644 --- a/data/buildings/building_base.gd +++ b/data/buildings/building_base.gd @@ -1,5 +1,5 @@ -extends Node2D class_name BuildingBase +extends Node2D var _building_data: Building @@ -8,8 +8,12 @@ var _building_data: Building func initialize(data: Building, grid_location: Vector2i) -> void: _building_data = data position = Grid.grid_to_world_center(grid_location) - _building_data.initialize(self) + sprite_2d.texture = _building_data.atlas_texture + var building_data_scene = _building_data.world_scene.instantiate() + add_child(building_data_scene) func _ready() -> void: - sprite_2d.texture = _building_data.atlas_texture _building_data.ready(self) + +func interact() -> bool: + return false -- 2.49.1 From 39157dded2376ac580b78ea758be9ca622708cc8 Mon Sep 17 00:00:00 2001 From: Eric Date: Fri, 29 Mar 2024 10:25:53 -0500 Subject: [PATCH 18/18] started research skills --- addons/gdLinter/Settings/ignore.gd | 44 +++ addons/gdLinter/Settings/ignore.tres | 35 +++ addons/gdLinter/UI/Basic.gd | 39 +++ addons/gdLinter/UI/Class.gd | 21 ++ addons/gdLinter/UI/Design.gd | 21 ++ addons/gdLinter/UI/Dock.gd | 101 +++++++ addons/gdLinter/UI/Dock.tscn | 111 ++++++++ addons/gdLinter/UI/Format.gd | 33 +++ addons/gdLinter/UI/GDLinterIgnoreWindow.gd | 31 +++ addons/gdLinter/UI/GDLinterIgnoreWindow.tscn | 261 ++++++++++++++++++ addons/gdLinter/UI/Misc.gd | 21 ++ addons/gdLinter/UI/Name.gd | 93 +++++++ addons/gdLinter/error_descriptions.gd | 51 ++++ addons/gdLinter/gdLinter.gd | 188 +++++++++++++ addons/gdLinter/plugin.cfg | 7 + data/buildings/basic/researcher/researcher.gd | 7 +- .../basic/researcher/researcher_building.tres | 4 +- data/buildings/building_base.gd | 13 +- data/game_resources/gem/gem_resource.tres | 2 + data/research/gem_research.tres | 18 ++ data/research/research.gd | 8 + project.godot | 4 + scene/research_menu.tscn | 80 ++++++ scripts/build_menu.gd | 2 +- scripts/cell_data.gd | 3 + scripts/game_resource.gd | 4 + scripts/player.gd | 28 +- scripts/research_menu.gd | 53 ++++ scripts/skills.gd | 18 ++ 29 files changed, 1282 insertions(+), 19 deletions(-) create mode 100644 addons/gdLinter/Settings/ignore.gd create mode 100644 addons/gdLinter/Settings/ignore.tres create mode 100644 addons/gdLinter/UI/Basic.gd create mode 100644 addons/gdLinter/UI/Class.gd create mode 100644 addons/gdLinter/UI/Design.gd create mode 100644 addons/gdLinter/UI/Dock.gd create mode 100644 addons/gdLinter/UI/Dock.tscn create mode 100644 addons/gdLinter/UI/Format.gd create mode 100644 addons/gdLinter/UI/GDLinterIgnoreWindow.gd create mode 100644 addons/gdLinter/UI/GDLinterIgnoreWindow.tscn create mode 100644 addons/gdLinter/UI/Misc.gd create mode 100644 addons/gdLinter/UI/Name.gd create mode 100644 addons/gdLinter/error_descriptions.gd create mode 100644 addons/gdLinter/gdLinter.gd create mode 100644 addons/gdLinter/plugin.cfg create mode 100644 data/research/gem_research.tres create mode 100644 data/research/research.gd create mode 100644 scene/research_menu.tscn create mode 100644 scripts/research_menu.gd create mode 100644 scripts/skills.gd diff --git a/addons/gdLinter/Settings/ignore.gd b/addons/gdLinter/Settings/ignore.gd new file mode 100644 index 0000000..6c763c3 --- /dev/null +++ b/addons/gdLinter/Settings/ignore.gd @@ -0,0 +1,44 @@ +class_name GDLinterIgnore +extends Resource + +@export_group("Name Checks") +@export var _function_name: bool = false +@export var _class_name: bool = false +@export var _sub_class_name: bool = false +@export var _signal_name: bool = false +@export var _class_variable_name: bool = false +@export var _class_load_variable_name: bool = false +@export var _function_variable_name: bool = false +@export var _function_preload_variable_name: bool = false +@export var _function_argument_name: bool = false +@export var _loop_variable_name: bool = false +@export var _enum_name: bool = false +@export var _enum_element_name: bool = false +@export var _constant_name: bool = false +@export var _load_constant_name: bool = false + +@export_group("Basic Checks") +@export var _duplicated_load: bool = false +@export var _expression_not_assigned: bool = false +@export var _unnecessary_pass: bool = false +@export var _unused_argument: bool = false +@export var _comparison_with_itself: bool = false + +@export_group("Class Checks") +@export var _private_method_call: bool = false +@export var _class_definitions_order: bool = false + +@export_group("Design Checks") +@export var _max_public_methods: bool = false +@export var _function_arguments_number: bool = false + +@export_group("Format Checks") +@export var _max_file_lines: bool = false +@export var _trailing_whitespace: bool = false +@export var _max_line_length: bool = false +@export var _mixed_tabs_and_spaces: bool = false + +@export_group("Misc Checks") +@export var _no_elif_return: bool = false +@export var _no_else_return: bool = false + diff --git a/addons/gdLinter/Settings/ignore.tres b/addons/gdLinter/Settings/ignore.tres new file mode 100644 index 0000000..ec32cbf --- /dev/null +++ b/addons/gdLinter/Settings/ignore.tres @@ -0,0 +1,35 @@ +[gd_resource type="Resource" script_class="GDLinterIgnore" load_steps=2 format=3 uid="uid://6ip8eigu30by"] + +[ext_resource type="Script" path="res://addons/gdLinter/Settings/ignore.gd" id="1_8j37n"] + +[resource] +script = ExtResource("1_8j37n") +_function_name = false +_class_name = false +_sub_class_name = false +_signal_name = false +_class_variable_name = false +_class_load_variable_name = false +_function_variable_name = false +_function_preload_variable_name = false +_function_argument_name = false +_loop_variable_name = false +_enum_name = false +_enum_element_name = false +_constant_name = false +_load_constant_name = false +_duplicated_load = false +_expression_not_assigned = false +_unnecessary_pass = false +_unused_argument = false +_comparison_with_itself = false +_private_method_call = false +_class_definitions_order = false +_max_public_methods = false +_function_arguments_number = false +_max_file_lines = false +_trailing_whitespace = false +_max_line_length = false +_mixed_tabs_and_spaces = false +_no_elif_return = false +_no_else_return = false diff --git a/addons/gdLinter/UI/Basic.gd b/addons/gdLinter/UI/Basic.gd new file mode 100644 index 0000000..d3a6cb4 --- /dev/null +++ b/addons/gdLinter/UI/Basic.gd @@ -0,0 +1,39 @@ +@tool +extends MarginContainer + +var _owner: GDLinterIgnoreWindow = owner + +@onready var duplicated_load: CheckBox = %DuplicatedLoad +@onready var expression_not_assigned: CheckBox = %ExpressionNotAssigned +@onready var unnecessary_pass: CheckBox = %UnnecessaryPass +@onready var unused_argument: CheckBox = %UnusedArgument +@onready var comparision_with_itself: CheckBox = %ComparisionWithItself + + +func init() -> void: + _owner = owner + duplicated_load.button_pressed = _owner.ignore.get("_duplicated_load") + expression_not_assigned.button_pressed = _owner.ignore.get("_expression_not_assigned") + unnecessary_pass.button_pressed = _owner.ignore.get("_unnecessary_pass") + unused_argument.button_pressed = _owner.ignore.get("_unused_argument") + comparision_with_itself.button_pressed = _owner.ignore.get("_comparison_with_itself") + + +func _on_duplicated_load_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_duplicated_load", toggled_on) + + +func _on_expression_not_assigned_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_expression_not_assigned", toggled_on) + + +func _on_unnecessary_pass_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_unnecessary_pass", toggled_on) + + +func _on_unused_argument_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_unused_argument", toggled_on) + + +func _on_comparision_with_itself_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_comparison_with_itself", toggled_on) diff --git a/addons/gdLinter/UI/Class.gd b/addons/gdLinter/UI/Class.gd new file mode 100644 index 0000000..c415576 --- /dev/null +++ b/addons/gdLinter/UI/Class.gd @@ -0,0 +1,21 @@ +@tool +extends MarginContainer + +var _owner: GDLinterIgnoreWindow = owner + +@onready var private_method_call: CheckBox = %PrivateMethodCall +@onready var class_definition_order: CheckBox = %ClassDefinitionOrder + + +func init() -> void: + _owner = owner + private_method_call.button_pressed = _owner.ignore.get("_private_method_call") + class_definition_order.button_pressed = _owner.ignore.get("_class_definitions_order") + + +func _on_private_method_call_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_private_method_call", toggled_on) + + +func _on_class_definition_order_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_class_definitions_order", toggled_on) diff --git a/addons/gdLinter/UI/Design.gd b/addons/gdLinter/UI/Design.gd new file mode 100644 index 0000000..9c81347 --- /dev/null +++ b/addons/gdLinter/UI/Design.gd @@ -0,0 +1,21 @@ +@tool +extends MarginContainer + +var _owner: GDLinterIgnoreWindow = owner + +@onready var max_public_methods: CheckBox = %MaxPublicMethods +@onready var function_argument_number: CheckBox = %FunctionArgumentNumber + + +func init() -> void: + _owner = owner + max_public_methods.button_pressed = _owner.ignore.get("_max_public_methods") + function_argument_number.button_pressed = _owner.ignore.get("_function_arguments_number") + + +func _on_max_public_methods_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_max_public_methods", toggled_on) + + +func _on_function_argument_number_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_function_arguments_number", toggled_on) diff --git a/addons/gdLinter/UI/Dock.gd b/addons/gdLinter/UI/Dock.gd new file mode 100644 index 0000000..4f38490 --- /dev/null +++ b/addons/gdLinter/UI/Dock.gd @@ -0,0 +1,101 @@ +@tool +class_name GDLinterDock +extends Control + +var gd_linter: GDLinter +var error_descriptions := preload("res://addons/gdLinter/error_descriptions.gd").new() +var script_text_editor: ScriptEditorBase +var color_error: Color = EditorInterface.get_editor_settings()\ + .get_setting("text_editor/theme/highlighting/comment_markers/critical_color") + +var num_problems: int = 0 +var num_ignored_problems: int = 0 + +var _ignore: GDLinterIgnore = preload("res://addons/gdLinter/Settings/ignore.tres") + +@onready var file: Label = %File +@onready var problems_num: Label = %ProblemsNum +@onready var ignored_problems_num: Label = %IgnoredProblemsNum +@onready var version: Label = %Version +@onready var tree: Tree = %Tree +@onready var gd_linter_ignore_window: GDLinterIgnoreWindow = $GdLinterIgnoreWindow + + +func _ready() -> void: + gd_linter_ignore_window.ignore = _ignore + gd_linter_ignore_window.dock_ui = self + tree.add_theme_color_override("font_color", color_error) + tree.set_column_title(0, "Line") + tree.set_column_title(1, "Error") + tree.set_column_title_alignment(0, HORIZONTAL_ALIGNMENT_LEFT) + tree.set_column_title_alignment(1, HORIZONTAL_ALIGNMENT_LEFT) + tree.set_column_custom_minimum_width(0, 75) + tree.set_column_custom_minimum_width(1, 0) + tree.set_column_expand(0, false) + tree.set_column_expand(1, true) + tree.set_column_clip_content(0, false) + tree.set_column_clip_content(1, true) + tree.set_column_expand_ratio(0, 4) + tree.item_activated.connect(_on_item_activated) + +func reset_problem_num() -> void: + num_problems = 0 + num_ignored_problems = 0 + + +func create_item(line: int, name: String) -> void: + var regex = RegEx.new() + regex.compile("(?<=\\()[^\\)]+") + var result := regex.search_all(name) + var error_type := result[-1].strings[0] + if _ignore.get(str_dash_to_underscore(error_type)): + num_ignored_problems += 1 + return + + var item := tree.create_item() + item.set_text(0, str(line)) + item.set_text(1, name) + item.set_metadata(0, line) + + if error_descriptions.error.has(error_type): + item.set_tooltip_text(1, error_descriptions.error[error_type]) + num_problems += 1 + + +func set_problems_label(number: int) -> void: + problems_num.text = str(number) + + +func set_ignored_problems_label(number: int) -> void: + ignored_problems_num.text = str(number) + +func clear_items() -> void: + reset_problem_num() + tree.clear() + tree.create_item() + + +func _on_item_activated() -> void: + var selected: TreeItem = tree.get_selected() + var line := selected.get_metadata(0) + + EditorInterface.edit_script(load(file.text), line) + + if not EditorInterface.get_editor_settings().get("text_editor/external/use_external_editor"): + EditorInterface.set_main_screen_editor("Script") + + +func str_dash_to_underscore(string: String) -> String: + return "_" + string.replace("-", "_") + + +func is_error_ignored(name: String) -> bool: + var regex = RegEx.new() + regex.compile("(?<=\\()[^\\)]+") + var result := regex.search_all(name) + var error_type := result[-1].strings[0] + return _ignore.get(str_dash_to_underscore(error_type)) + + +func _on_button_pressed() -> void: + gd_linter_ignore_window.popup() diff --git a/addons/gdLinter/UI/Dock.tscn b/addons/gdLinter/UI/Dock.tscn new file mode 100644 index 0000000..9cd6778 --- /dev/null +++ b/addons/gdLinter/UI/Dock.tscn @@ -0,0 +1,111 @@ +[gd_scene load_steps=3 format=3 uid="uid://d1eqlqvotirg1"] + +[ext_resource type="Script" path="res://addons/gdLinter/UI/Dock.gd" id="1_u5r3b"] +[ext_resource type="PackedScene" uid="uid://cgk7hjif0ujw1" path="res://addons/gdLinter/UI/GDLinterIgnoreWindow.tscn" id="3_ib5aw"] + +[node name="Dock" type="Control"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +script = ExtResource("1_u5r3b") + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="Header" type="PanelContainer" parent="VBoxContainer"] +layout_mode = 2 + +[node name="RichTextLabel" type="RichTextLabel" parent="VBoxContainer/Header"] +layout_mode = 2 +bbcode_enabled = true +text = "[center]GDLint Plugin 2.0.2[/center]" +fit_content = true + +[node name="LintedFile" type="PanelContainer" parent="VBoxContainer"] +layout_mode = 2 + +[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer/LintedFile"] +layout_mode = 2 + +[node name="Label" type="Label" parent="VBoxContainer/LintedFile/HBoxContainer"] +layout_mode = 2 +text = "Currently linted file:" + +[node name="File" type="Label" parent="VBoxContainer/LintedFile/HBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 + +[node name="MiddleContainer" type="HBoxContainer" parent="VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 3 +size_flags_stretch_ratio = 20.0 + +[node name="Tree" type="Tree" parent="VBoxContainer/MiddleContainer"] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 3 +focus_mode = 0 +theme_override_colors/font_color = Color(0.77, 0.35, 0.35, 1) +theme_override_constants/v_separation = 0 +columns = 2 +column_titles_visible = true +hide_folding = true +hide_root = true +select_mode = 1 +scroll_horizontal_enabled = false + +[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/MiddleContainer"] +layout_mode = 2 + +[node name="Button" type="Button" parent="VBoxContainer/MiddleContainer/VBoxContainer"] +layout_mode = 2 +text = "Ignore +Settings" + +[node name="Statusbar" type="HBoxContainer" parent="VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 10 + +[node name="ProblemsContainer" type="HBoxContainer" parent="VBoxContainer/Statusbar"] +layout_mode = 2 +theme_override_constants/separation = 0 + +[node name="ProblemsNum" type="Label" parent="VBoxContainer/Statusbar/ProblemsContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "0" + +[node name="ProblemsLbl" type="Label" parent="VBoxContainer/Statusbar/ProblemsContainer"] +layout_mode = 2 +text = "problems found" + +[node name="VSeparator" type="VSeparator" parent="VBoxContainer/Statusbar/ProblemsContainer"] +layout_mode = 2 + +[node name="IgnoredProblemsNum" type="Label" parent="VBoxContainer/Statusbar/ProblemsContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "0" + +[node name="IgnoredProblemsLbl" type="Label" parent="VBoxContainer/Statusbar/ProblemsContainer"] +layout_mode = 2 +text = "problems ignored" + +[node name="Version" type="Label" parent="VBoxContainer/Statusbar"] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 3 +horizontal_alignment = 2 + +[node name="GdLinterIgnoreWindow" parent="." instance=ExtResource("3_ib5aw")] +dialog_text = "" + +[connection signal="pressed" from="VBoxContainer/MiddleContainer/VBoxContainer/Button" to="." method="_on_button_pressed"] diff --git a/addons/gdLinter/UI/Format.gd b/addons/gdLinter/UI/Format.gd new file mode 100644 index 0000000..f61661e --- /dev/null +++ b/addons/gdLinter/UI/Format.gd @@ -0,0 +1,33 @@ +@tool +extends MarginContainer + +var _owner: GDLinterIgnoreWindow = owner + +@onready var max_file_lines: CheckBox = %MaxFileLines +@onready var trailing_whitespace_check_box: CheckBox = %TrailingWhitespaceCheckBox +@onready var max_line_length: CheckBox = %MaxLineLength +@onready var mixed_tabs_and_spaces: CheckBox = %MixedTabsAndSpaces + + +func init() -> void: + _owner = owner + max_file_lines.button_pressed = _owner.ignore.get("_max_file_lines") + trailing_whitespace_check_box.button_pressed = _owner.ignore.get("_trailing_whitespace") + max_line_length.button_pressed = _owner.ignore.get("_max_line_length") + mixed_tabs_and_spaces.button_pressed = _owner.ignore.get("_mixed_tabs_and_spaces") + + +func _on_max_file_lines_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_max_file_lines", toggled_on) + + +func _on_trailing_whitespace_check_box_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_trailing_whitespace", toggled_on) + + +func _on_max_line_length_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_max_line_length", toggled_on) + + +func _on_mixed_tabs_and_spaces_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_mixed_tabs_and_spaces", toggled_on) diff --git a/addons/gdLinter/UI/GDLinterIgnoreWindow.gd b/addons/gdLinter/UI/GDLinterIgnoreWindow.gd new file mode 100644 index 0000000..7a00b80 --- /dev/null +++ b/addons/gdLinter/UI/GDLinterIgnoreWindow.gd @@ -0,0 +1,31 @@ +@tool +class_name GDLinterIgnoreWindow +extends AcceptDialog + +var ignore: GDLinterIgnore +var dock_ui: GDLinterDock + +@onready var basic: MarginContainer = %Basic +@onready var design: MarginContainer = %Design +@onready var format: MarginContainer = %Format +@onready var misc: MarginContainer = %Misc +@onready var _name: MarginContainer = %Name +@onready var _class: MarginContainer = %Class + + +func reapply_linting() -> void: + var current_script := EditorInterface.get_script_editor().get_current_script() + dock_ui.gd_linter.script_editor.editor_script_changed.emit(current_script) + + +func _on_confirmed() -> void: + reapply_linting() + + +func _on_about_to_popup() -> void: + basic.init() + design.init() + format.init() + misc.init() + _name.init() + _class.init() diff --git a/addons/gdLinter/UI/GDLinterIgnoreWindow.tscn b/addons/gdLinter/UI/GDLinterIgnoreWindow.tscn new file mode 100644 index 0000000..1974c03 --- /dev/null +++ b/addons/gdLinter/UI/GDLinterIgnoreWindow.tscn @@ -0,0 +1,261 @@ +[gd_scene load_steps=8 format=3 uid="uid://cgk7hjif0ujw1"] + +[ext_resource type="Script" path="res://addons/gdLinter/UI/GDLinterIgnoreWindow.gd" id="1_71hhq"] +[ext_resource type="Script" path="res://addons/gdLinter/UI/Name.gd" id="2_35t2j"] +[ext_resource type="Script" path="res://addons/gdLinter/UI/Basic.gd" id="3_ijjp7"] +[ext_resource type="Script" path="res://addons/gdLinter/UI/Class.gd" id="4_s2mg3"] +[ext_resource type="Script" path="res://addons/gdLinter/UI/Design.gd" id="5_2ncqt"] +[ext_resource type="Script" path="res://addons/gdLinter/UI/Format.gd" id="6_5fvrg"] +[ext_resource type="Script" path="res://addons/gdLinter/UI/Misc.gd" id="7_l8gkb"] + +[node name="GdLinterIgnoreWindow" type="AcceptDialog"] +disable_3d = true +title = "GDLinter Ignore Settings" +initial_position = 1 +size = Vector2i(480, 539) +dialog_text = "fghgfdfggfd" +script = ExtResource("1_71hhq") + +[node name="PanelContainer" type="PanelContainer" parent="."] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_left = 8.0 +offset_top = 8.0 +offset_right = -8.0 +offset_bottom = -34.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="TabContainer" type="TabContainer" parent="PanelContainer"] +layout_mode = 2 + +[node name="Name" type="MarginContainer" parent="PanelContainer/TabContainer"] +unique_name_in_owner = true +layout_mode = 2 +script = ExtResource("2_35t2j") + +[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/TabContainer/Name"] +layout_mode = 2 + +[node name="FunctionName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Function Name" + +[node name="ClassName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Class Name" + +[node name="SubClassName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Sub Class Name" + +[node name="SignalName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Signal Name" + +[node name="ClassVariableName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Class Variable Name" + +[node name="ClassLoadVariableName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Class Load Variable Name" + +[node name="FunctionVariableName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Function Variable Name" + +[node name="FunctionPreloadVariableName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Function Preload Variable Name" + +[node name="FunctionArgumentName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Function Argument Name" + +[node name="LoopVariableName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Loop Variable Name" + +[node name="EnumName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Enum Name" + +[node name="EnumElementName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Enum Element Name" + +[node name="ConstantName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Constant Name" + +[node name="LoadConstantName" type="CheckBox" parent="PanelContainer/TabContainer/Name/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Load Constant Name" + +[node name="Basic" type="MarginContainer" parent="PanelContainer/TabContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +script = ExtResource("3_ijjp7") + +[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/TabContainer/Basic"] +layout_mode = 2 + +[node name="DuplicatedLoad" type="CheckBox" parent="PanelContainer/TabContainer/Basic/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Duplicated Load" + +[node name="ExpressionNotAssigned" type="CheckBox" parent="PanelContainer/TabContainer/Basic/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Expression Not Assigned" + +[node name="UnnecessaryPass" type="CheckBox" parent="PanelContainer/TabContainer/Basic/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Unnecessary Pass" + +[node name="UnusedArgument" type="CheckBox" parent="PanelContainer/TabContainer/Basic/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Unused Argument" + +[node name="ComparisionWithItself" type="CheckBox" parent="PanelContainer/TabContainer/Basic/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Comparision With Itself" + +[node name="Class" type="MarginContainer" parent="PanelContainer/TabContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +script = ExtResource("4_s2mg3") + +[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/TabContainer/Class"] +layout_mode = 2 + +[node name="PrivateMethodCall" type="CheckBox" parent="PanelContainer/TabContainer/Class/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Private Method Call" + +[node name="ClassDefinitionOrder" type="CheckBox" parent="PanelContainer/TabContainer/Class/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Class Definition Order" + +[node name="Design" type="MarginContainer" parent="PanelContainer/TabContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +script = ExtResource("5_2ncqt") + +[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/TabContainer/Design"] +layout_mode = 2 + +[node name="MaxPublicMethods" type="CheckBox" parent="PanelContainer/TabContainer/Design/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Max Public Methods" + +[node name="FunctionArgumentNumber" type="CheckBox" parent="PanelContainer/TabContainer/Design/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Function Argument Number" + +[node name="Format" type="MarginContainer" parent="PanelContainer/TabContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +script = ExtResource("6_5fvrg") + +[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/TabContainer/Format"] +layout_mode = 2 + +[node name="MaxFileLines" type="CheckBox" parent="PanelContainer/TabContainer/Format/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Max File Lines" + +[node name="TrailingWhitespaceCheckBox" type="CheckBox" parent="PanelContainer/TabContainer/Format/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Trailing Whitespace" + +[node name="MaxLineLength" type="CheckBox" parent="PanelContainer/TabContainer/Format/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Max Line Length" + +[node name="MixedTabsAndSpaces" type="CheckBox" parent="PanelContainer/TabContainer/Format/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Mixed Tabs And Spaces" + +[node name="Misc" type="MarginContainer" parent="PanelContainer/TabContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +script = ExtResource("7_l8gkb") + +[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer/TabContainer/Misc"] +layout_mode = 2 + +[node name="NoElifReturn" type="CheckBox" parent="PanelContainer/TabContainer/Misc/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "No Elif Return" + +[node name="NoElseReturn" type="CheckBox" parent="PanelContainer/TabContainer/Misc/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "No Else Return" + +[connection signal="about_to_popup" from="." to="." method="_on_about_to_popup"] +[connection signal="confirmed" from="." to="." method="_on_confirmed"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/FunctionName" to="PanelContainer/TabContainer/Name" method="_on_function_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/ClassName" to="PanelContainer/TabContainer/Name" method="_on_class_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/SubClassName" to="PanelContainer/TabContainer/Name" method="_on_sub_class_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/SignalName" to="PanelContainer/TabContainer/Name" method="_on_signal_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/ClassVariableName" to="PanelContainer/TabContainer/Name" method="_on_class_variable_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/ClassLoadVariableName" to="PanelContainer/TabContainer/Name" method="_on_class_load_variable_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/FunctionVariableName" to="PanelContainer/TabContainer/Name" method="_on_function_variable_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/FunctionPreloadVariableName" to="PanelContainer/TabContainer/Name" method="_on_function_preload_variable_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/FunctionArgumentName" to="PanelContainer/TabContainer/Name" method="_on_function_argument_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/LoopVariableName" to="PanelContainer/TabContainer/Name" method="_on_loop_variable_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/EnumName" to="PanelContainer/TabContainer/Name" method="_on_enum_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/EnumElementName" to="PanelContainer/TabContainer/Name" method="_on_enum_element_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/ConstantName" to="PanelContainer/TabContainer/Name" method="_on_constant_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Name/VBoxContainer/LoadConstantName" to="PanelContainer/TabContainer/Name" method="_on_load_constant_name_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Basic/VBoxContainer/DuplicatedLoad" to="PanelContainer/TabContainer/Basic" method="_on_duplicated_load_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Basic/VBoxContainer/ExpressionNotAssigned" to="PanelContainer/TabContainer/Basic" method="_on_expression_not_assigned_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Basic/VBoxContainer/UnnecessaryPass" to="PanelContainer/TabContainer/Basic" method="_on_unnecessary_pass_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Basic/VBoxContainer/UnusedArgument" to="PanelContainer/TabContainer/Basic" method="_on_unused_argument_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Basic/VBoxContainer/ComparisionWithItself" to="PanelContainer/TabContainer/Basic" method="_on_comparision_with_itself_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Class/VBoxContainer/PrivateMethodCall" to="PanelContainer/TabContainer/Class" method="_on_private_method_call_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Class/VBoxContainer/ClassDefinitionOrder" to="PanelContainer/TabContainer/Class" method="_on_class_definition_order_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Design/VBoxContainer/MaxPublicMethods" to="PanelContainer/TabContainer/Design" method="_on_max_public_methods_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Design/VBoxContainer/FunctionArgumentNumber" to="PanelContainer/TabContainer/Design" method="_on_function_argument_number_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Format/VBoxContainer/MaxFileLines" to="PanelContainer/TabContainer/Format" method="_on_max_file_lines_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Format/VBoxContainer/TrailingWhitespaceCheckBox" to="PanelContainer/TabContainer/Format" method="_on_trailing_whitespace_check_box_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Format/VBoxContainer/MaxLineLength" to="PanelContainer/TabContainer/Format" method="_on_max_line_length_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Format/VBoxContainer/MixedTabsAndSpaces" to="PanelContainer/TabContainer/Format" method="_on_mixed_tabs_and_spaces_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Misc/VBoxContainer/NoElifReturn" to="PanelContainer/TabContainer/Misc" method="_on_no_elif_return_toggled"] +[connection signal="toggled" from="PanelContainer/TabContainer/Misc/VBoxContainer/NoElseReturn" to="PanelContainer/TabContainer/Misc" method="_on_no_else_return_toggled"] diff --git a/addons/gdLinter/UI/Misc.gd b/addons/gdLinter/UI/Misc.gd new file mode 100644 index 0000000..6e6bbe5 --- /dev/null +++ b/addons/gdLinter/UI/Misc.gd @@ -0,0 +1,21 @@ +@tool +extends MarginContainer + +var _owner: GDLinterIgnoreWindow = owner + +@onready var no_elif_return: CheckBox = %NoElifReturn +@onready var no_else_return: CheckBox = %NoElseReturn + + +func init() -> void: + _owner = owner + no_elif_return.button_pressed = _owner.ignore.get("_no_elif_return") + no_else_return.button_pressed = _owner.ignore.get("_no_else_return") + + +func _on_no_elif_return_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_no_elif_return", toggled_on) + + +func _on_no_else_return_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_no_else_return", toggled_on) diff --git a/addons/gdLinter/UI/Name.gd b/addons/gdLinter/UI/Name.gd new file mode 100644 index 0000000..6b3920e --- /dev/null +++ b/addons/gdLinter/UI/Name.gd @@ -0,0 +1,93 @@ +@tool +extends MarginContainer + +var _owner: GDLinterIgnoreWindow = owner + +@onready var function_name: CheckBox = %FunctionName +@onready var sub_class_name: CheckBox = %SubClassName +@onready var signal_name: CheckBox = %SignalName +@onready var class_variable_name: CheckBox = %ClassVariableName +@onready var class_load_variable_name: CheckBox = %ClassLoadVariableName +@onready var function_variable_name: CheckBox = %FunctionVariableName +@onready var function_preload_variable_name: CheckBox = %FunctionPreloadVariableName +@onready var function_argument_name: CheckBox = %FunctionArgumentName +@onready var loop_variable_name: CheckBox = %LoopVariableName +@onready var enum_name: CheckBox = %EnumName +@onready var enum_element_name: CheckBox = %EnumElementName +@onready var constant_name: CheckBox = %ConstantName +@onready var load_constant_name: CheckBox = %LoadConstantName +@onready var _class_name: CheckBox = %ClassName + + +func init() -> void: + _owner = owner + function_name.button_pressed = _owner.ignore.get("_function_name") + _class_name.button_pressed = _owner.ignore.get("_class_name") + sub_class_name.button_pressed = _owner.ignore.get("_sub_class_name") + signal_name.button_pressed = _owner.ignore.get("_signal_name") + class_variable_name.button_pressed = _owner.ignore.get("_class_variable_name") + class_load_variable_name.button_pressed = _owner.ignore.get("_class_load_variable_name") + function_variable_name.button_pressed = _owner.ignore.get("_function_variable_name") + function_preload_variable_name.button_pressed = _owner.ignore.get("_function_preload_variable_name") + function_argument_name.button_pressed = _owner.ignore.get("_function_argument_name") + loop_variable_name.button_pressed = _owner.ignore.get("_loop_variable_name") + enum_name.button_pressed = _owner.ignore.get("_enum_name") + enum_element_name.button_pressed = _owner.ignore.get("_enum_element_name") + constant_name.button_pressed = _owner.ignore.get("_constant_name") + load_constant_name.button_pressed = _owner.ignore.get("_load_constant_name") + + +func _on_function_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_function_name", toggled_on) + + +func _on_class_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_class_name", toggled_on) + + +func _on_sub_class_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_sub_class_name", toggled_on) + + +func _on_signal_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_signal_name", toggled_on) + + +func _on_class_variable_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_class_variable_name", toggled_on) + + +func _on_class_load_variable_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_class_load_variable_name", toggled_on) + + +func _on_function_variable_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_function_variable_name", toggled_on) + + +func _on_function_preload_variable_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_function_preload_variable_name", toggled_on) + + +func _on_function_argument_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_function_argument_name", toggled_on) + + +func _on_loop_variable_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_loop_variable_name", toggled_on) + + +func _on_enum_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_enum_name", toggled_on) + + +func _on_enum_element_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_enum_element_name", toggled_on) + + +func _on_constant_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_constant_name", toggled_on) + + +func _on_load_constant_name_toggled(toggled_on: bool) -> void: + _owner.ignore.set("_load_constant_name", toggled_on) diff --git a/addons/gdLinter/error_descriptions.gd b/addons/gdLinter/error_descriptions.gd new file mode 100644 index 0000000..684d888 --- /dev/null +++ b/addons/gdLinter/error_descriptions.gd @@ -0,0 +1,51 @@ +extends Resource + +var error := { + #region Name Checks + "function-name": "Validates if function name conforms to snake_case, _private_snake_case, or _on_PascalCase_snake_case.", + "class-name": "Validates if class name conforms to PascalCase.", + "sub-class-name": "Validates if class name conforms to _PrivatePascalCase.", + "signal-name": "Validates if signal name conforms to PascalCase.", + "class-variable-name": "Validates if class variable name conforms to snake_case or _private_snake_case.", + "class-load-variable-name": "Validates if class load variable (var variable = load(...)) name conforms to PascalCase, snake_case or private_snake_case.", + "function-variable-name": "alidates if function variable name conforms to snake_case.", + "function-preload-variable-name": "Validates if function preload variable (var Variable = preload(...)) name conforms to PascalCase.", + "function-argument-name": "Validates if function argument (formal parameter) name conforms to snake_case or _private_snake_case.", + "loop-variable-name": "Validates if loop variable name conforms to snake_case or _private_snake_case.", + "enum-name": "Validates if enum name conforms to PascalCase.", + "enum-element-name": "Validates if enum element name conforms to UPPER_SNAKE_CASE.", + "constant-name": "Validates if constant name conforms to UPPER_SNAKE_CASE.", + "load-constant-name": "Validates if load constant (const constant = load(...)) name conforms to PascalCase, snake_case or private_snake_case.", + #endregion + + #region Basic Checks + "duplicated-load": "Copy-pasted load(...) for the same path e.g. load('res://asdf.tscn') in multiple places. To fix, simply extract string to constant.", + "expression-not-assigned": "Standalone expression like 1 + 1 which is not used in any way. To fix, simply remove that expression.", + "unnecessary-pass": "Pass which is not the only expression on class or function body. To fix, simple remove that pass statement.", + "unused-argument": "Unused funtion argument. To fix, simply remove it or mark as explicitly unused by prefixing with underscore _ e.g. _unused_arg.", + "comparison-with-itself": "Redundant comparison like e.g. x == x which is always true. To fix, simply remove that expression.", + #endregion + + #region Class Checks + "private-method-call": """private (prefixed with underscore _) function was called. + E.g. player._private_func(). To fix, redesign your approach so that private function is not being called.""", + "class-definitions-order": "Class statements are not in order.", + #endregion + + #region Design Checks + "max-public-methods": "Validates maximum number of public methods (class-level functions).", + "function-arguments-number": "Validates number of function arguments.", + #endregion + + #region Format Checks + "max-file-lines": "Validates maximum number of file lines.", + "trailing-whitespace": "Validates if any trailing whitespaces are present.", + "max-line-length": "Validates maxium line length for each line.", + "mixed-tabs-and-spaces": "Validates if either only tabs or only spaces are used for indentation.", + #endregion + + #region Misc Checks + "no-elif-return": "Validates if unnecessary elif is present in case if body was ended with return.", + "no-else-return": "Validates if unnecessary else is present in case if (and each elif) body was ended with return." + #endregion +} diff --git a/addons/gdLinter/gdLinter.gd b/addons/gdLinter/gdLinter.gd new file mode 100644 index 0000000..ca76314 --- /dev/null +++ b/addons/gdLinter/gdLinter.gd @@ -0,0 +1,188 @@ +@tool +class_name GDLinter +extends EditorPlugin + +const DockScene := preload("res://addons/gdLinter/UI/Dock.tscn") + + +var icon_error := EditorInterface.get_editor_theme().get_icon("Error", "EditorIcons") +var color_error: Color = EditorInterface.get_editor_settings()\ + .get_setting("text_editor/theme/highlighting/comment_markers/critical_color") + +var icon_error_ignore := EditorInterface.get_editor_theme().get_icon("ErrorWarning", "EditorIcons") +var icon_ignore := EditorInterface.get_editor_theme().get_icon("Warning", "EditorIcons") + +var icon_success := EditorInterface.get_editor_theme().get_icon("StatusSuccess", "EditorIcons") +var color_success: Color = EditorInterface.get_editor_settings()\ + .get_setting("text_editor/theme/highlighting/comment_markers/notice_color") + +var bottom_panel_button: Button +var highlight_lines: PackedInt32Array +var item_lists: Array[ItemList] +var script_editor: ScriptEditor + +var _dock_ui: GDLinterDock +var _is_gdlint_installed: bool +var _ignore: Resource +var _gdlint_path: String + + +func _enter_tree() -> void: + # install the GDLint dock + _dock_ui = DockScene.instantiate() + _dock_ui.gd_linter = self + bottom_panel_button = add_control_to_bottom_panel(_dock_ui, "GDLint") + + # connect signal to lint on save + resource_saved.connect(on_resource_saved) + + script_editor = EditorInterface.get_script_editor() + script_editor.editor_script_changed.connect(_on_editor_script_changed) + _gdlint_path = get_gdlint_path() + get_gdlint_version() + prints("Loading GDLint Plugin success") + +# TODO: Reenable again? +# Dunno how highlighting lines in Godot works, since it get removed after a second or so +# So I use this evil workaround straight from hell: +#func _process(_delta: float) -> void: + #if not get_current_editor(): + #return + # + #if not highlight_lines.is_empty(): + #set_line_color(color_error) + + +func _on_editor_script_changed(script: Script) -> void: + _dock_ui.clear_items() + on_resource_saved(script) + + +func get_gdlint_version() -> void: + var output := [] + OS.execute(_gdlint_path, ["--version"], output) + _is_gdlint_installed = true if not output[0].is_empty() else false + if _is_gdlint_installed: + _dock_ui.version.text = "Using %s" % output[0] + else: + _dock_ui.version.text = "gdlint not found!" + + +func _exit_tree() -> void: + if is_instance_valid(_dock_ui): + remove_control_from_bottom_panel(_dock_ui) + _dock_ui.free() + + if Engine.get_version_info().hex >= 0x40201: + prints("Unload GDLint Plugin success") + + +func on_resource_saved(resource: Resource) -> void: + if not resource is GDScript: + return + + _dock_ui.clear_items() + clear_highlights() + + # Show resource path in the GDLint Dock + _dock_ui.file.text = resource.resource_path + + # Execute linting and get its output + var filepath: String = ProjectSettings.globalize_path(resource.resource_path) + var gdlint_output: Array = [] + var output_array: PackedStringArray + var exit_code = OS.execute(_gdlint_path, [filepath], gdlint_output, true) + if not exit_code == -1: + var output_string: String = gdlint_output[0] + output_array = output_string.replace(filepath+":", "Line ").split("\n") + + _dock_ui.set_problems_label(_dock_ui.num_problems) + _dock_ui.set_ignored_problems_label(_dock_ui.num_ignored_problems) + + # Workaround until unique name bug is fixed + # https://github.com/Scony/godot-gdscript-toolkit/issues/284 + # Hope I won't break other stuff with it + if not output_array.size() or output_array[0] == "Line ": + printerr("gdLint Error: ", output_array, "\n File can't be linted!") + return + + # When there is no error + if output_array.size() <= 2: + bottom_panel_button.add_theme_constant_override(&"icon_max_width", 8) + bottom_panel_button.icon = icon_success + return + + # When errors are found create buttons in the dock + for i in output_array.size()-2: + var regex := RegEx.new() + regex.compile("\\d+") + var result := regex.search(output_array[i]) + if result: + var current_line := int(result.strings[0])-1 + var error := output_array[i].rsplit(":", true, 1) + if len(error) > 1: + _dock_ui.create_item(current_line+1, error[1]) + if _dock_ui.is_error_ignored(error[1]): + continue + highlight_lines.append(current_line) + + _dock_ui.set_problems_label(_dock_ui.num_problems) + _dock_ui.set_ignored_problems_label(_dock_ui.num_ignored_problems) + + # Error, no Ignore + if _dock_ui.num_problems > 0 and _dock_ui.num_ignored_problems <= 0: + bottom_panel_button.icon = icon_error + # no Error, Ignore + elif _dock_ui.num_problems <= 0 and _dock_ui.num_ignored_problems > 0: + bottom_panel_button.icon = icon_ignore + # Error, Ignore + elif _dock_ui.num_problems > 0 and _dock_ui.num_ignored_problems > 0: + bottom_panel_button.icon = icon_error_ignore + else: + bottom_panel_button.icon = null + _dock_ui.script_text_editor = EditorInterface.get_script_editor().get_current_editor() + + +func set_line_color(color: Color) -> void: + var current_code_editor := get_current_editor() + if current_code_editor == null: + return + + for line: int in highlight_lines: + # Skip line if this one is from the old code editor + if line > current_code_editor.get_line_count()-1: + continue + current_code_editor.set_line_background_color(line, + color.darkened(0.5)) + + +func clear_highlights() -> void: + set_line_color(Color(0, 0, 0, 0)) + highlight_lines.clear() + + +func get_current_editor() -> CodeEdit: + var current_editor := EditorInterface.get_script_editor().get_current_editor() + if current_editor == null: + return + return current_editor.get_base_editor() as CodeEdit + + +func get_gdlint_path() -> String: + if OS.get_name() == "Windows": + return "gdlint" + + # macOS & Linux + var output := [] + OS.execute("python3", ["-m", "site", "--user-base"], output) + var python_bin_folder := (output[0] as String).strip_edges().path_join("bin") + if FileAccess.file_exists(python_bin_folder.path_join("gdlint")): + return python_bin_folder.path_join("gdlint") + + # Linux dirty hardcoded fallback + if OS.get_name() == "Linux": + if FileAccess.file_exists("/usr/bin/gdlint"): + return "/usr/bin/gdlint" + + # Global fallback + return "gdlint" diff --git a/addons/gdLinter/plugin.cfg b/addons/gdLinter/plugin.cfg new file mode 100644 index 0000000..f9487ba --- /dev/null +++ b/addons/gdLinter/plugin.cfg @@ -0,0 +1,7 @@ +[plugin] + +name="gdLinter" +description="Runs `gdlint` on save to automatically lint your GDScript as you code." +author="Falli" +version="2.0.2" +script="gdLinter.gd" diff --git a/data/buildings/basic/researcher/researcher.gd b/data/buildings/basic/researcher/researcher.gd index 7cc6b02..241b94c 100644 --- a/data/buildings/basic/researcher/researcher.gd +++ b/data/buildings/basic/researcher/researcher.gd @@ -1,5 +1,10 @@ extends Node class_name Researcher -func interact() -> bool: +const RESEARCH_MENU = preload("res://scene/research_menu.tscn") + +func interact(on_interaction_finished: Callable) -> bool: + var build_menu = RESEARCH_MENU.instantiate() + build_menu.research.connect(on_interaction_finished) + add_sibling(build_menu) return true diff --git a/data/buildings/basic/researcher/researcher_building.tres b/data/buildings/basic/researcher/researcher_building.tres index 3587a8c..8034270 100644 --- a/data/buildings/basic/researcher/researcher_building.tres +++ b/data/buildings/basic/researcher/researcher_building.tres @@ -1,8 +1,9 @@ -[gd_resource type="Resource" script_class="Building" load_steps=5 format=3 uid="uid://bibep1rd0jml2"] +[gd_resource type="Resource" script_class="Building" load_steps=6 format=3 uid="uid://bibep1rd0jml2"] [ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_kruad"] [ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_hybxl"] [ext_resource type="Script" path="res://data/buildings/building.gd" id="3_pleu3"] +[ext_resource type="PackedScene" uid="uid://bw3j3vxpsfxst" path="res://data/buildings/basic/researcher/researcher.tscn" id="4_sugjm"] [sub_resource type="AtlasTexture" id="AtlasTexture_n7l2d"] atlas = ExtResource("1_kruad") @@ -16,3 +17,4 @@ description = "Research new buildings and technologies" cost = { ExtResource("2_hybxl"): 6000 } +world_scene = ExtResource("4_sugjm") diff --git a/data/buildings/building_base.gd b/data/buildings/building_base.gd index 8121f96..ab3232b 100644 --- a/data/buildings/building_base.gd +++ b/data/buildings/building_base.gd @@ -2,6 +2,7 @@ class_name BuildingBase extends Node2D var _building_data: Building +var building_data_scene @onready var sprite_2d: Sprite2D = $Sprite2D @@ -9,11 +10,9 @@ func initialize(data: Building, grid_location: Vector2i) -> void: _building_data = data position = Grid.grid_to_world_center(grid_location) sprite_2d.texture = _building_data.atlas_texture - var building_data_scene = _building_data.world_scene.instantiate() - add_child(building_data_scene) + if _building_data.world_scene: + building_data_scene = _building_data.world_scene.instantiate() + add_child(building_data_scene) -func _ready() -> void: - _building_data.ready(self) - -func interact() -> bool: - return false +func interact(on_interaction_finished: Callable) -> bool: + return building_data_scene.interact(on_interaction_finished) diff --git a/data/game_resources/gem/gem_resource.tres b/data/game_resources/gem/gem_resource.tres index c7f0b25..6ca06dc 100644 --- a/data/game_resources/gem/gem_resource.tres +++ b/data/game_resources/gem/gem_resource.tres @@ -9,3 +9,5 @@ atlas_location = Vector2i(5, 6) pickup_value = 10 name = "Gem" spawn_patterns = Array[Resource("res://scripts/spawn_pattern.gd")]([ExtResource("2_n3fuo")]) +storage_max = 0 +skills_needed = Array[int]([0]) diff --git a/data/research/gem_research.tres b/data/research/gem_research.tres new file mode 100644 index 0000000..8ad60fb --- /dev/null +++ b/data/research/gem_research.tres @@ -0,0 +1,18 @@ +[gd_resource type="Resource" script_class="Research" load_steps=5 format=3 uid="uid://ddsmk1qmb2ohf"] + +[ext_resource type="Texture2D" uid="uid://n806c03hgaq1" path="res://assets/scifi_tilesheet@2.png" id="1_i07ie"] +[ext_resource type="Script" path="res://data/research/research.gd" id="1_swmp6"] +[ext_resource type="Resource" uid="uid://bpjj0x7jr1k6u" path="res://data/game_resources/carbon/carbon_resource.tres" id="2_gc3ag"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_1i8g4"] +atlas = ExtResource("1_i07ie") +region = Rect2(320, 384, 64, 64) + +[resource] +script = ExtResource("1_swmp6") +atlas_texture = SubResource("AtlasTexture_1i8g4") +name = "Gems" +description = "Allows the gathering of Gems" +cost = { +ExtResource("2_gc3ag"): 10 +} diff --git a/data/research/research.gd b/data/research/research.gd new file mode 100644 index 0000000..3380227 --- /dev/null +++ b/data/research/research.gd @@ -0,0 +1,8 @@ +class_name Research +extends Resource + +@export var atlas_texture: AtlasTexture +@export var name: String +@export var description: String +@export var cost: Dictionary +@export var world_scene: PackedScene diff --git a/project.godot b/project.godot index cb82b17..9a066b3 100644 --- a/project.godot +++ b/project.godot @@ -25,6 +25,10 @@ BuildingManager="*res://scripts/autoloads/building_manager.gd" gdscript/warnings/untyped_declaration=1 +[editor_plugins] + +enabled=PackedStringArray("res://addons/gdLinter/plugin.cfg") + [gui] theme/custom="res://data/world_theme.tres" diff --git a/scene/research_menu.tscn b/scene/research_menu.tscn new file mode 100644 index 0000000..2f6215c --- /dev/null +++ b/scene/research_menu.tscn @@ -0,0 +1,80 @@ +[gd_scene load_steps=3 format=3 uid="uid://be35i6l6srg64"] + +[ext_resource type="Script" path="res://scripts/research_menu.gd" id="1_k3x02"] + +[sub_resource type="Theme" id="Theme_0djom"] + +[node name="ResearchMenu" type="CanvasLayer"] +script = ExtResource("1_k3x02") + +[node name="MarginContainer" type="MarginContainer" parent="."] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/margin_left = 128 +theme_override_constants/margin_top = 128 +theme_override_constants/margin_right = 128 +theme_override_constants/margin_bottom = 128 + +[node name="PanelContainer" type="PanelContainer" parent="MarginContainer"] +layout_mode = 2 +theme = SubResource("Theme_0djom") + +[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer"] +layout_mode = 2 + +[node name="ScrollContainer" type="ScrollContainer" parent="MarginContainer/PanelContainer/HBoxContainer"] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer"] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="ResearchItems" type="ItemList" parent="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer/VBoxContainer"] +unique_name_in_owner = true +layout_mode = 2 +size_flags_vertical = 3 +allow_search = false +auto_height = true + +[node name="DetailsContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/HBoxContainer"] +layout_mode = 2 +size_flags_horizontal = 3 +size_flags_stretch_ratio = 3.0 + +[node name="Title" type="Label" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +unique_name_in_owner = true +layout_mode = 2 +text = "Select research" +horizontal_alignment = 1 + +[node name="HSeparator" type="HSeparator" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +layout_mode = 2 + +[node name="Description" type="Label" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +text = " " + +[node name="ResearchMaterials" type="GridContainer" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +columns = 2 + +[node name="ResearchButtonsContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +alignment = 1 + +[node name="StartResearchButton" type="Button" parent="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer/ResearchButtonsContainer"] +layout_mode = 2 +text = "Start Research" + +[connection signal="item_selected" from="MarginContainer/PanelContainer/HBoxContainer/ScrollContainer/VBoxContainer/ResearchItems" to="." method="_on_research_selected"] +[connection signal="pressed" from="MarginContainer/PanelContainer/HBoxContainer/DetailsContainer/ResearchButtonsContainer/StartResearchButton" to="." method="_on_build_button_pressed"] diff --git a/scripts/build_menu.gd b/scripts/build_menu.gd index 7e3eb78..a2b4a76 100644 --- a/scripts/build_menu.gd +++ b/scripts/build_menu.gd @@ -20,7 +20,7 @@ const BASIC_BUILDING_GROUP = preload("res://data/buildings/basic/basic_building_ func _ready() -> void: _add_building_group(BASIC_BUILDING_GROUP) _add_building_group(ADVANCED_BUILDING_GROUP) - #building_groups.set_focus() + building_groups.grab_focus() func _add_building_group(group: BuildingGroup) -> void: building_groups.add_item(group.name, group.atlas_texture) diff --git a/scripts/cell_data.gd b/scripts/cell_data.gd index 19d1b49..e246cea 100644 --- a/scripts/cell_data.gd +++ b/scripts/cell_data.gd @@ -33,6 +33,9 @@ func get_resource() -> GameResource: func has_resource() -> bool: return has_layer(Constants.TilemapLayers.ENVIRONMENT) + +func get_building() -> BuildingBase: + return layer_info[Constants.TilemapLayers.BUILDINGS] as BuildingBase func has_building() -> bool: return has_layer(Constants.TilemapLayers.BUILDINGS) diff --git a/scripts/game_resource.gd b/scripts/game_resource.gd index 1c79ee2..9f26f34 100644 --- a/scripts/game_resource.gd +++ b/scripts/game_resource.gd @@ -8,6 +8,7 @@ signal gained_resource(res: GameResource) @export var name: String @export var spawn_patterns: Array[SpawnPattern] @export var storage_max: int +@export var skills_needed: Array[Skills.ABILITIES] = [] func _to_string() -> String: return name @@ -17,3 +18,6 @@ func get_spawn_locations() -> Array[Vector2i]: for spawn in spawn_patterns: spawns.append_array(spawn.get_spawn_locations()) return spawns + +func can_harvest(skills: Skills) -> bool: + return skills.has_skills(skills_needed) diff --git a/scripts/player.gd b/scripts/player.gd index ccdf334..4e5b7ae 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -9,6 +9,9 @@ var _interaction_options: InteractionWheel var _interacting := false var _attempting_build: Building var _build_placement: Sprite2D +var _in_menu := false + +var _skills := Skills.new() @onready var sprite: AnimatedSprite2D = $Sprite @onready var interaction_timer: Timer = $InteractionTimer @@ -17,7 +20,7 @@ const BUILD_MENU = preload("res://scene/build_menu.tscn") const BUILDING_BASE = preload("res://data/buildings/building_base.tscn") func _physics_process(delta: float) -> void: - var input_direction := Input.get_vector("move_left", "move_right", "move_up", "move_down") + var input_direction := Input.get_vector("move_left", "move_right", "move_up", "move_down") if not _in_menu else Vector2.ZERO velocity = input_direction * SPEED / delta move_and_slide() @@ -39,24 +42,31 @@ func _physics_process(delta: float) -> void: func _input(event: InputEvent) -> void: if event.is_action_pressed("interact"): - if _attempting_build and Grid.get_location_data(interaction_location).is_buildable(): + var interact_data: CellData = Grid.get_location_data(interaction_location) + if _attempting_build and interact_data.is_buildable(): _build() - elif not _interacting and Grid.get_location_data(interaction_location).is_interactable(): - var interaction = INTERACTION_BAR.instantiate() - interaction.interaction_finished.connect(_on_interaction_finished) - interaction.grid_position = interaction_location - _interacting = true - add_sibling(interaction) + elif not _interacting and interact_data.is_interactable(): + if interact_data.has_resource(): + var interaction = INTERACTION_BAR.instantiate() + interaction.interaction_finished.connect(_on_interaction_finished) + interaction.grid_position = interaction_location + _interacting = true + add_sibling(interaction) + elif interact_data.has_building(): + _in_menu = interact_data.get_building().interact(_on_interaction_finished) if event.is_action_pressed("build"): var build_menu = BUILD_MENU.instantiate() build_menu.build.connect(_on_build_menu_build) add_sibling(build_menu) + _in_menu = true func _on_interaction_finished() -> void: _interacting = false + _in_menu = false func _on_build_menu_build(building: Building) -> void: print("Building: %s" % building.name) + _in_menu = false _attempting_build = building _build_placement = Sprite2D.new() _build_placement.texture = _attempting_build.atlas_texture @@ -66,8 +76,8 @@ func _on_build_menu_build(building: Building) -> void: func _build() -> void: ResourceManager.use_resources(_attempting_build.cost) var build: BuildingBase = BUILDING_BASE.instantiate() - build.initialize(_attempting_build, interaction_location) add_sibling(build) + build.initialize(_attempting_build, interaction_location) Grid.change_location_building(interaction_location, build) if not ResourceManager.has_resources(_attempting_build.cost): diff --git a/scripts/research_menu.gd b/scripts/research_menu.gd new file mode 100644 index 0000000..a7d9c6e --- /dev/null +++ b/scripts/research_menu.gd @@ -0,0 +1,53 @@ +extends CanvasLayer + +signal research(research: Research) + +var researches: Array[Research] = [] +var selected_research: Research + +const GEM_RESEARCH = preload("res://data/research/gem_research.tres") + +@onready var research_items: ItemList = %ResearchItems + +@onready var title: Label = %Title +@onready var description: Label = %Description +@onready var research_materials: GridContainer = %ResearchMaterials +@onready var research_buttons_container: HBoxContainer = %ResearchButtonsContainer + +func _ready() -> void: + _add_research(GEM_RESEARCH) + research_items.grab_focus() + +func _add_research(group: Research) -> void: + research_items.add_item(group.name, group.atlas_texture) + researches.append(group) + +func _on_research_selected(index: int) -> void: + selected_research = researches[index] + title.text = selected_research.name + description.text = selected_research.description + + for child in research_materials.get_children(): + child.queue_free() + for res: GameResource in selected_research.cost.keys(): + var image = TextureRect.new() + var texture = AtlasTexture.new() + texture.atlas = preload("res://assets/scifi_tilesheet@2.png") + texture.region = Rect2(64 * res.atlas_location, Vector2(64, 64)) + image.texture = texture + research_materials.add_child(image) + var label = Label.new() + label.text = str(selected_research.cost[res]) + if not ResourceManager.has_amount(res, selected_research.cost[res]): + label.add_theme_color_override("font_color", Color.RED) + research_materials.add_child(label) + + description.show() + research_materials.show() + research_buttons_container.show() + + +func _on_build_button_pressed() -> void: + if selected_research: + research.emit(selected_research) + queue_free() diff --git a/scripts/skills.gd b/scripts/skills.gd new file mode 100644 index 0000000..6e2f26c --- /dev/null +++ b/scripts/skills.gd @@ -0,0 +1,18 @@ +class_name Skills +extends Resource + +enum ABILITIES { HARVEST_GEM, CORRUPT_RESOURCE, CORRUPT_BUILDING } + +var _aquired_skills: Array[ABILITIES] = [] + +func aquire_skill(skill: ABILITIES) -> void: + _aquired_skills.append(skill) + +func has_skill(skill: ABILITIES) -> bool: + return _aquired_skills.has(skill) + +func has_skills(skills: Array[ABILITIES]) -> bool: + var _has_skills = true + for skill: ABILITIES in skills: + _has_skills = _has_skills and has_skill(skill) + return _has_skills -- 2.49.1