diff --git a/addons/dialogic/Editor/HomePage/icon_bg.png.import b/addons/dialogic/Editor/HomePage/icon_bg.png.import index 2160d4d..d89fb7c 100644 --- a/addons/dialogic/Editor/HomePage/icon_bg.png.import +++ b/addons/dialogic/Editor/HomePage/icon_bg.png.import @@ -3,19 +3,20 @@ importer="texture" type="CompressedTexture2D" uid="uid://cvmlp5nxb2rer" -path="res://.godot/imported/icon_bg.png-5937ce0a857c4a8a9d624ea9ebf09a97.ctex" +path.s3tc="res://.godot/imported/icon_bg.png-5937ce0a857c4a8a9d624ea9ebf09a97.s3tc.ctex" metadata={ -"vram_texture": false +"imported_formats": ["s3tc_bptc"], +"vram_texture": true } [deps] source_file="res://addons/dialogic/Editor/HomePage/icon_bg.png" -dest_files=["res://.godot/imported/icon_bg.png-5937ce0a857c4a8a9d624ea9ebf09a97.ctex"] +dest_files=["res://.godot/imported/icon_bg.png-5937ce0a857c4a8a9d624ea9ebf09a97.s3tc.ctex"] [params] -compress/mode=0 +compress/mode=2 compress/high_quality=false compress/lossy_quality=0.7 compress/uastc_level=0 @@ -23,7 +24,7 @@ compress/rdo_quality_loss=0.0 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" @@ -37,4 +38,4 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=1 +detect_3d/compress_to=0 diff --git a/addons/dialogic/Modules/Call/icon.png.import b/addons/dialogic/Modules/Call/icon.png.import index 430260f..7d282da 100644 --- a/addons/dialogic/Modules/Call/icon.png.import +++ b/addons/dialogic/Modules/Call/icon.png.import @@ -3,19 +3,20 @@ importer="texture" type="CompressedTexture2D" uid="uid://duvcdvtgy4h4b" -path="res://.godot/imported/icon.png-12e444f0ed59397c7537943ea85b475c.ctex" +path.s3tc="res://.godot/imported/icon.png-12e444f0ed59397c7537943ea85b475c.s3tc.ctex" metadata={ -"vram_texture": false +"imported_formats": ["s3tc_bptc"], +"vram_texture": true } [deps] source_file="res://addons/dialogic/Modules/Call/icon.png" -dest_files=["res://.godot/imported/icon.png-12e444f0ed59397c7537943ea85b475c.ctex"] +dest_files=["res://.godot/imported/icon.png-12e444f0ed59397c7537943ea85b475c.s3tc.ctex"] [params] -compress/mode=0 +compress/mode=2 compress/high_quality=false compress/lossy_quality=0.7 compress/uastc_level=0 @@ -23,7 +24,7 @@ compress/rdo_quality_loss=0.0 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" @@ -37,4 +38,4 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=1 +detect_3d/compress_to=0 diff --git a/common/assets/materials/default_3d.tres b/common/assets/materials/default_3d.tres index d7699e2..5f0468f 100644 --- a/common/assets/materials/default_3d.tres +++ b/common/assets/materials/default_3d.tres @@ -4,7 +4,7 @@ [resource] diffuse_mode = 3 -specular_mode = 2 +specular_mode = 1 albedo_texture = ExtResource("1_cc1ni") roughness = 0.0 rim_tint = 0.48 diff --git a/common/assets/materials/glass_3d.tres b/common/assets/materials/glass_3d.tres index f734993..c014926 100644 --- a/common/assets/materials/glass_3d.tres +++ b/common/assets/materials/glass_3d.tres @@ -5,5 +5,6 @@ [resource] transparency = 1 depth_draw_mode = 1 -albedo_color = Color(1, 1, 1, 0.79607844) +shading_mode = 0 +albedo_color = Color(1, 1, 1, 0.5803922) albedo_texture = ExtResource("1_buts1") diff --git a/common/audio_manager/assets/sfx/holo/holo_appear.wav b/common/audio_manager/assets/sfx/holo/holo_appear.wav new file mode 100644 index 0000000..e617eae Binary files /dev/null and b/common/audio_manager/assets/sfx/holo/holo_appear.wav differ diff --git a/common/audio_manager/assets/sfx/holo/holo_appear.wav.import b/common/audio_manager/assets/sfx/holo/holo_appear.wav.import new file mode 100644 index 0000000..1fa6c5c --- /dev/null +++ b/common/audio_manager/assets/sfx/holo/holo_appear.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://53ixfbcd5qwu" +path="res://.godot/imported/holo_appear.wav-157b4aed0c2dfe9acb01d26d2102c36f.sample" + +[deps] + +source_file="res://common/audio_manager/assets/sfx/holo/holo_appear.wav" +dest_files=["res://.godot/imported/holo_appear.wav-157b4aed0c2dfe9acb01d26d2102c36f.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/common/audio_manager/assets/sfx/holo/holo_disappear.wav b/common/audio_manager/assets/sfx/holo/holo_disappear.wav new file mode 100644 index 0000000..623c2e8 Binary files /dev/null and b/common/audio_manager/assets/sfx/holo/holo_disappear.wav differ diff --git a/common/audio_manager/assets/sfx/holo/holo_disappear.wav.import b/common/audio_manager/assets/sfx/holo/holo_disappear.wav.import new file mode 100644 index 0000000..3deb61f --- /dev/null +++ b/common/audio_manager/assets/sfx/holo/holo_disappear.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://dsijqgnnadgem" +path="res://.godot/imported/holo_disappear.wav-c62aa0f12d34e0637ee622cc84f8a5ef.sample" + +[deps] + +source_file="res://common/audio_manager/assets/sfx/holo/holo_disappear.wav" +dest_files=["res://.godot/imported/holo_disappear.wav-c62aa0f12d34e0637ee622cc84f8a5ef.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3 b/common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3 new file mode 100644 index 0000000..f50744f Binary files /dev/null and b/common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3 differ diff --git a/common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3.import b/common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3.import new file mode 100644 index 0000000..3d3dd18 --- /dev/null +++ b/common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3.import @@ -0,0 +1,19 @@ +[remap] + +importer="mp3" +type="AudioStreamMP3" +uid="uid://cbre45rky1f4v" +path="res://.godot/imported/dragon-studio-power-off-386180.mp3-995a97388623e0fa5d3ec6066bd36105.mp3str" + +[deps] + +source_file="res://common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3" +dest_files=["res://.godot/imported/dragon-studio-power-off-386180.mp3-995a97388623e0fa5d3ec6066bd36105.mp3str"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/common/audio_manager/assets/sfx/vending_machine/item-drop.wav b/common/audio_manager/assets/sfx/vending_machine/item-drop.wav new file mode 100644 index 0000000..84c9507 Binary files /dev/null and b/common/audio_manager/assets/sfx/vending_machine/item-drop.wav differ diff --git a/common/audio_manager/assets/sfx/vending_machine/item-drop.wav.import b/common/audio_manager/assets/sfx/vending_machine/item-drop.wav.import new file mode 100644 index 0000000..9b408cd --- /dev/null +++ b/common/audio_manager/assets/sfx/vending_machine/item-drop.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://da3srn8vx4erd" +path="res://.godot/imported/item-drop.wav-fe2fcf1f1129f0a2ca522c0426df7f6e.sample" + +[deps] + +source_file="res://common/audio_manager/assets/sfx/vending_machine/item-drop.wav" +dest_files=["res://.godot/imported/item-drop.wav-fe2fcf1f1129f0a2ca522c0426df7f6e.sample"] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=false +edit/normalize=false +edit/loop_mode=0 +edit/loop_begin=0 +edit/loop_end=-1 +compress/mode=2 diff --git a/common/audio_manager/audio_manager.tscn b/common/audio_manager/audio_manager.tscn index cd9ce66..499797e 100644 --- a/common/audio_manager/audio_manager.tscn +++ b/common/audio_manager/audio_manager.tscn @@ -23,11 +23,14 @@ [ext_resource type="AudioStream" uid="uid://bown4yipeef8l" path="res://common/audio_manager/assets/sfx/harvest/harvest_4.wav" id="16_obeji"] [ext_resource type="AudioStream" uid="uid://delq7gsdeqjq2" path="res://common/audio_manager/assets/sfx/respawn/respawn.wav" id="16_xmumj"] [ext_resource type="AudioStream" uid="uid://cbo4ld2yypmte" path="res://common/audio_manager/assets/sfx/harvest/harvest_5.wav" id="17_6w0re"] +[ext_resource type="AudioStream" uid="uid://da3srn8vx4erd" path="res://common/audio_manager/assets/sfx/vending_machine/item-drop.wav" id="18_ehr7m"] [ext_resource type="AudioStream" uid="uid://cs4y6sinpth8e" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_1.wav" id="18_j8acj"] [ext_resource type="AudioStream" uid="uid://c5nfoa6v3r5f7" path="res://common/audio_manager/assets/sfx/harvest/harvest_6.wav" id="18_o4guq"] +[ext_resource type="AudioStream" uid="uid://cbre45rky1f4v" path="res://common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3" id="19_aedoe"] [ext_resource type="AudioStream" uid="uid://bbhkivgarlhqm" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_2.wav" id="19_yjs51"] [ext_resource type="AudioStream" uid="uid://ccfubsk6135qy" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_3.wav" id="20_4ojdh"] [ext_resource type="AudioStream" uid="uid://bjind1iji0gt7" path="res://common/audio_manager/assets/sfx/pick_up/pick_up_1.wav" id="20_pu6t4"] +[ext_resource type="AudioStream" uid="uid://br0jqajrqvgie" path="res://common/audio_manager/assets/sfx/door/door_opening.wav" id="20_yr73o"] [ext_resource type="AudioStream" uid="uid://cqa0gvgpoa7pd" path="res://common/audio_manager/assets/sfx/pick_up/pick_up_2.wav" id="21_dk5s6"] [ext_resource type="AudioStream" uid="uid://cbm4r5bf7py11" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_4.wav" id="21_ehr7m"] [ext_resource type="AudioStream" uid="uid://dq5qwydrca3vy" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_5.wav" id="22_aedoe"] @@ -57,9 +60,19 @@ [ext_resource type="AudioStream" uid="uid://sgwvpxiul5x5" path="res://common/audio_manager/assets/sfx/ship_exit/ship_exit.wav" id="48_j8acj"] [ext_resource type="AudioStream" uid="uid://ca0wonha334cl" path="res://common/audio_manager/assets/sfx/teleportation/teleport.wav" id="50_rlnfe"] [ext_resource type="AudioStream" uid="uid://cv5avkd3qekt7" path="res://common/audio_manager/assets/sfx/movement/movement.wav" id="51_iyxkn"] -[ext_resource type="AudioStream" uid="uid://c7ehk3l4q3qg1" path="res://common/audio_manager/assets/sfx/vending_machine/VM_item_drop.wav" id="62_yr73o"] -[ext_resource type="AudioStream" uid="uid://dgs7j7itgedoy" path="res://common/audio_manager/assets/sfx/vending_machine/VM_power_off.wav" id="63_lwdce"] -[ext_resource type="AudioStream" uid="uid://cij7rpji5tutr" path="res://common/audio_manager/assets/sfx/vending_machine/VM_power_on.wav" id="64_qvjf5"] +[ext_resource type="AudioStream" uid="uid://53ixfbcd5qwu" path="res://common/audio_manager/assets/sfx/holo/holo_appear.wav" id="63_aedoe"] +[ext_resource type="AudioStream" uid="uid://dsijqgnnadgem" path="res://common/audio_manager/assets/sfx/holo/holo_disappear.wav" id="64_ge2sc"] + +[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_6o1yh"] +streams_count = 3 + +[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_kfbah"] +random_pitch = 1.2599211 +streams_count = 4 +stream_0/stream = ExtResource("43_kbm55") +stream_1/stream = ExtResource("44_rb87w") +stream_2/stream = ExtResource("45_mur2l") +stream_3/stream = ExtResource("46_t0v4u") [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_1w04j"] random_pitch = 1.2 @@ -109,6 +122,12 @@ script = ExtResource("1_0tvca") [node name="Ambiances" type="Node" parent="." unique_id=1989991562] unique_name_in_owner = true +[node name="BaseRelais" type="AudioStreamPlayer" parent="Ambiances" unique_id=1895636918] +stream = ExtResource("7_ge2sc") + +[node name="VendingRoom" type="AudioStreamPlayer" parent="Ambiances" unique_id=1478190718] +stream = ExtResource("7_ge2sc") + [node name="Exterior" type="AudioStreamPlayer" parent="Ambiances" unique_id=1405716780] unique_name_in_owner = true stream = ExtResource("2_tuvql") @@ -135,6 +154,10 @@ stream = ExtResource("7_ge2sc") [node name="Musics" type="Node" parent="." unique_id=1450527710] unique_name_in_owner = true +[node name="RegionDesertPhase1" type="AudioStreamPlayer" parent="Musics" unique_id=1222638526] +unique_name_in_owner = true +stream = ExtResource("11_yjs51") + [node name="RegionForestPhase1" type="AudioStreamPlayer" parent="Musics" unique_id=1029114070] unique_name_in_owner = true stream = ExtResource("6_6o1yh") @@ -176,6 +199,22 @@ stream = ExtResource("14_h3tkm") [node name="Sfx" type="Node" parent="." unique_id=2023641207] unique_name_in_owner = true +[node name="Dig" type="AudioStreamPlayer" parent="Sfx" unique_id=486042600] +stream = SubResource("AudioStreamRandomizer_6o1yh") + +[node name="VendingMachineDrop" type="AudioStreamPlayer" parent="Sfx" unique_id=1161500181] +stream = ExtResource("18_ehr7m") +pitch_scale = 0.81 + +[node name="VendingMachineOff" type="AudioStreamPlayer" parent="Sfx" unique_id=743754597] +stream = ExtResource("19_aedoe") +volume_db = -14.149 +pitch_scale = 0.75 + +[node name="DoorOpen" type="AudioStreamPlayer" parent="Sfx" unique_id=1440910292] +stream = ExtResource("20_yr73o") +pitch_scale = 1.5 + [node name="Recharge1" type="AudioStreamPlayer" parent="Sfx" unique_id=357905012] stream = ExtResource("18_j8acj") @@ -224,6 +263,10 @@ stream = ExtResource("28_3dfjn") [node name="PlantPoint" type="AudioStreamPlayer" parent="Sfx" unique_id=2044025024] stream = SubResource("AudioStreamRandomizer_qog4c") +[node name="Reveal" type="AudioStreamPlayer" parent="Sfx" unique_id=1597352608] +stream = ExtResource("37_3dfjn") +volume_db = -3.0 + [node name="Ship_reveal" type="AudioStreamPlayer" parent="Sfx" unique_id=1121632306] stream = ExtResource("37_3dfjn") volume_db = -3.0 @@ -260,13 +303,10 @@ volume_db = -7.0 stream = ExtResource("50_rlnfe") volume_db = -6.0 -[node name="Door_opening" type="AudioStreamPlayer" parent="Sfx" unique_id=1045862259] +[node name="HoloAppear" type="AudioStreamPlayer" parent="Sfx" unique_id=637436824] +stream = ExtResource("63_aedoe") +volume_db = -6.0 -[node name="VM_drop" type="AudioStreamPlayer" parent="Sfx" unique_id=1831741123] -stream = ExtResource("62_yr73o") - -[node name="VM_power_off" type="AudioStreamPlayer" parent="Sfx" unique_id=2112201239] -stream = ExtResource("63_lwdce") - -[node name="VM_power_on" type="AudioStreamPlayer" parent="Sfx" unique_id=617324673] -stream = ExtResource("64_qvjf5") +[node name="HoloDisappear" type="AudioStreamPlayer" parent="Sfx" unique_id=1756615928] +stream = ExtResource("64_ge2sc") +volume_db = -6.0 diff --git a/common/audio_manager/audio_manager.tscn.old b/common/audio_manager/audio_manager.tscn.old new file mode 100644 index 0000000..d6f7897 --- /dev/null +++ b/common/audio_manager/audio_manager.tscn.old @@ -0,0 +1,312 @@ +[gd_scene format=3 uid="uid://b6hscxcrj065q"] + +[ext_resource type="Script" uid="uid://2p5d6vogtn82" path="res://common/audio_manager/scripts/audio_manager.gd" id="1_0tvca"] +[ext_resource type="AudioStream" uid="uid://dipnmlprwfo12" path="res://common/audio_manager/assets/ambiance/niveau/ambiance_phase_1.ogg" id="2_tuvql"] +[ext_resource type="AudioStream" uid="uid://b1hut6lc1jevh" path="res://common/audio_manager/assets/morceaux/niveau/mines_phase_2.ogg" id="4_2fduo"] +[ext_resource type="AudioStream" uid="uid://dftxjfdqgsbd3" path="res://common/audio_manager/assets/ambiance/niveau/ambiance_phase_3.ogg" id="4_tuvql"] +[ext_resource type="AudioStream" uid="uid://6yx6txbgc6pt" path="res://common/audio_manager/assets/ambiance/astra/ambiance_astra.ogg" id="5_8204s"] +[ext_resource type="AudioStream" uid="uid://dcbuhtc085q2x" path="res://common/audio_manager/assets/morceaux/niveau/mines_phase_1.ogg" id="5_ajci6"] +[ext_resource type="AudioStream" uid="uid://dsphn6dbbd55a" path="res://common/audio_manager/assets/morceaux/niveau/forest_phase_1.ogg" id="6_6o1yh"] +[ext_resource type="AudioStream" uid="uid://cwu71o0sl2vto" path="res://common/audio_manager/assets/ambiance/dialogues/ambiance_Demeter.ogg" id="6_8204s"] +[ext_resource type="AudioStream" uid="uid://klb32q3kjtkt" path="res://common/audio_manager/assets/ambiance/vending_room_base_relais/ambiance_vending_room_base_relais.ogg" id="7_ge2sc"] +[ext_resource type="AudioStream" uid="uid://c8gbtdul2x8ws" path="res://common/audio_manager/assets/ambiance/borea/ambiance_borea.ogg" id="7_spekb"] +[ext_resource type="AudioStream" uid="uid://bpf6witukorka" path="res://common/audio_manager/assets/morceaux/menu/main_menu.ogg" id="7_tuvql"] +[ext_resource type="AudioStream" uid="uid://bmwaw1yb8hucf" path="res://common/audio_manager/assets/ambiance/vaisseau/ship_music.ogg" id="8_tuvql"] +[ext_resource type="AudioStream" uid="uid://ccimypx71o4g6" path="res://common/audio_manager/assets/morceaux/niveau/forest_phase_2.ogg" id="10_tq535"] +[ext_resource type="AudioStream" uid="uid://kqbqhwhkv7o3" path="res://common/audio_manager/assets/morceaux/niveau/mines_waiting.ogg" id="11_ngi21"] +[ext_resource type="AudioStream" uid="uid://of68i2k1g6y2" path="res://common/audio_manager/assets/morceaux/niveau/desert_phase_1.ogg" id="11_yjs51"] +[ext_resource type="AudioStream" uid="uid://b8inedx4yjslw" path="res://common/audio_manager/assets/sfx/drop/drop_1.wav" id="12_4hp8f"] +[ext_resource type="AudioStream" uid="uid://cjbpfnlwcpjh0" path="res://common/audio_manager/assets/morceaux/niveau/forest_waiting.ogg" id="12_xmumj"] +[ext_resource type="AudioStream" uid="uid://8nmr5vifkt1f" path="res://common/audio_manager/assets/sfx/harvest/harvest_1.wav" id="13_xoaox"] +[ext_resource type="AudioStream" uid="uid://dgkdcq4j6fe3o" path="res://common/audio_manager/assets/sfx/harvest/harvest_2.wav" id="14_b5bgj"] +[ext_resource type="AudioStream" uid="uid://crncg0mdx1fdw" path="res://common/audio_manager/assets/morceaux/demo/ending.ogg" id="14_h3tkm"] +[ext_resource type="AudioStream" uid="uid://llxrlwfccywb" path="res://common/audio_manager/assets/sfx/dig/dig_3.wav" id="15_rlnfe"] +[ext_resource type="AudioStream" uid="uid://eh3dbuxu5qtw" path="res://common/audio_manager/assets/sfx/harvest/harvest_3.wav" id="15_ynvb4"] +[ext_resource type="AudioStream" uid="uid://bown4yipeef8l" path="res://common/audio_manager/assets/sfx/harvest/harvest_4.wav" id="16_obeji"] +[ext_resource type="AudioStream" uid="uid://delq7gsdeqjq2" path="res://common/audio_manager/assets/sfx/respawn/respawn.wav" id="16_xmumj"] +[ext_resource type="AudioStream" uid="uid://cbo4ld2yypmte" path="res://common/audio_manager/assets/sfx/harvest/harvest_5.wav" id="17_6w0re"] +[ext_resource type="AudioStream" uid="uid://bdxkvaciw4mb3" path="res://common/audio_manager/assets/sfx/dig/dig_2.wav" id="17_bfg8q"] +[ext_resource type="AudioStream" uid="uid://da3srn8vx4erd" path="res://common/audio_manager/assets/sfx/vending_machine/item-drop.wav" id="18_ehr7m"] +[ext_resource type="AudioStream" uid="uid://cs4y6sinpth8e" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_1.wav" id="18_j8acj"] +[ext_resource type="AudioStream" uid="uid://c5nfoa6v3r5f7" path="res://common/audio_manager/assets/sfx/harvest/harvest_6.wav" id="18_o4guq"] +[ext_resource type="AudioStream" uid="uid://cbre45rky1f4v" path="res://common/audio_manager/assets/sfx/vending_machine/dragon-studio-power-off-386180.mp3" id="19_aedoe"] +[ext_resource type="AudioStream" uid="uid://bbhkivgarlhqm" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_2.wav" id="19_yjs51"] +[ext_resource type="AudioStream" uid="uid://ccfubsk6135qy" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_3.wav" id="20_4ojdh"] +[ext_resource type="AudioStream" uid="uid://bjind1iji0gt7" path="res://common/audio_manager/assets/sfx/pick_up/pick_up_1.wav" id="20_pu6t4"] +[ext_resource type="AudioStream" uid="uid://ds4rc2k28kgqx" path="res://common/audio_manager/assets/sfx/door/door_opening.wav" id="20_yr73o"] +[ext_resource type="AudioStream" uid="uid://cqa0gvgpoa7pd" path="res://common/audio_manager/assets/sfx/pick_up/pick_up_2.wav" id="21_dk5s6"] +[ext_resource type="AudioStream" uid="uid://cbm4r5bf7py11" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_4.wav" id="21_ehr7m"] +[ext_resource type="AudioStream" uid="uid://dq5qwydrca3vy" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_5.wav" id="22_aedoe"] +[ext_resource type="AudioStream" uid="uid://d1cpi438ep0ys" path="res://common/audio_manager/assets/sfx/announce/annnounce.wav" id="22_btfwx"] +[ext_resource type="AudioStream" uid="uid://bnwtgp8t46xwc" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_6.wav" id="23_ge2sc"] +[ext_resource type="AudioStream" uid="uid://bp3wsncvda5gl" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_7.wav" id="24_yr73o"] +[ext_resource type="AudioStream" uid="uid://b4jx8rflw7dss" path="res://common/audio_manager/assets/sfx/phone/phone_ringing_Astra.wav" id="27_0rjel"] +[ext_resource type="AudioStream" uid="uid://ocm1dkkhv7ls" path="res://common/audio_manager/assets/sfx/phone/phone_ringing.wav" id="28_3dfjn"] +[ext_resource type="AudioStream" uid="uid://8juy5ev3rdfh" path="res://common/audio_manager/assets/sfx/plant_points/plant_point_1.wav" id="29_ngi21"] +[ext_resource type="AudioStream" uid="uid://su387eovtrsg" path="res://common/audio_manager/assets/sfx/plant_points/plant_point_2.wav" id="30_xmumj"] +[ext_resource type="AudioStream" uid="uid://bp6mtpqjf4txo" path="res://common/audio_manager/assets/sfx/plant_points/plant_point_3.wav" id="31_spekb"] +[ext_resource type="AudioStream" uid="uid://dnyyeba4yoafp" path="res://common/audio_manager/assets/sfx/plant_points/plant_point_4.wav" id="32_iaiio"] +[ext_resource type="AudioStream" uid="uid://buobk1kxoy80e" path="res://common/audio_manager/assets/sfx/plant_points/plant_point_5.wav" id="33_w2elg"] +[ext_resource type="AudioStream" uid="uid://b8etbfvikq7pm" path="res://common/audio_manager/assets/sfx/plant_points/plant_point_6.wav" id="34_em3o8"] +[ext_resource type="AudioStream" uid="uid://cad0erjq0us08" path="res://common/audio_manager/assets/sfx/plant_points/plant_point_7.wav" id="35_rk2e0"] +[ext_resource type="AudioStream" uid="uid://c6pl2fjg558j3" path="res://common/audio_manager/assets/sfx/plant_points/plant_point_8.wav" id="36_4sa2t"] +[ext_resource type="AudioStream" uid="uid://6id31r7o6trc" path="res://common/audio_manager/assets/sfx/ship_reveal/jingle_vaisseau.wav" id="37_3dfjn"] +[ext_resource type="AudioStream" uid="uid://bw8qfto0htdha" path="res://common/audio_manager/assets/sfx/atterrissage/atterrissage.wav" id="40_h3tkm"] +[ext_resource type="AudioStream" uid="uid://c5y70k3codtn" path="res://common/audio_manager/assets/sfx/signal/signal.mp3" id="41_iaiio"] +[ext_resource type="AudioStream" uid="uid://8d767ar56fhb" path="res://common/audio_manager/assets/sfx/decollage/decollage.wav" id="41_iyxkn"] +[ext_resource type="AudioStream" uid="uid://i6kgjh5vkdar" path="res://common/audio_manager/assets/sfx/elevator/elevator.wav" id="42_obkny"] +[ext_resource type="AudioStream" uid="uid://ctfaxvblcg5lc" path="res://common/audio_manager/assets/sfx/pickaxe/pickaxe_1.wav" id="43_kbm55"] +[ext_resource type="AudioStream" uid="uid://c1dnklmka2ccn" path="res://common/audio_manager/assets/sfx/pickaxe/pickaxe_2.wav" id="44_rb87w"] +[ext_resource type="AudioStream" uid="uid://dd1uu6dd6sloe" path="res://common/audio_manager/assets/sfx/pickaxe/pickaxe_3.wav" id="45_mur2l"] +[ext_resource type="AudioStream" uid="uid://eq7wufwnolto" path="res://common/audio_manager/assets/sfx/pickaxe/pickaxe_4.wav" id="46_t0v4u"] +[ext_resource type="AudioStream" uid="uid://cv7sj8n5oo1i8" path="res://common/audio_manager/assets/sfx/screen_bip/screen_bip.wav" id="47_svctq"] +[ext_resource type="AudioStream" uid="uid://sgwvpxiul5x5" path="res://common/audio_manager/assets/sfx/ship_exit/ship_exit.wav" id="48_j8acj"] +[ext_resource type="AudioStream" uid="uid://ca0wonha334cl" path="res://common/audio_manager/assets/sfx/teleportation/teleport.wav" id="50_rlnfe"] +[ext_resource type="AudioStream" uid="uid://cv5avkd3qekt7" path="res://common/audio_manager/assets/sfx/movement/movement.wav" id="51_iyxkn"] +[ext_resource type="AudioStream" uid="uid://53ixfbcd5qwu" path="res://common/audio_manager/assets/sfx/holo/holo_appear.wav" id="63_aedoe"] +[ext_resource type="AudioStream" uid="uid://dsijqgnnadgem" path="res://common/audio_manager/assets/sfx/holo/holo_disappear.wav" id="64_ge2sc"] +[ext_resource type="AudioStream" uid="uid://c7ehk3l4q3qg1" path="res://common/audio_manager/assets/sfx/vending_machine/VM_item_drop.wav" id="62_yr73o"] +[ext_resource type="AudioStream" uid="uid://dgs7j7itgedoy" path="res://common/audio_manager/assets/sfx/vending_machine/VM_power_off.wav" id="63_lwdce"] +[ext_resource type="AudioStream" uid="uid://cij7rpji5tutr" path="res://common/audio_manager/assets/sfx/vending_machine/VM_power_on.wav" id="64_qvjf5"] + +[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_1w04j"] +random_pitch = 1.2 +streams_count = 1 +stream_0/stream = ExtResource("12_4hp8f") + +[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_i4m0x"] +random_pitch = 1.2599211 +streams_count = 6 +stream_0/stream = ExtResource("13_xoaox") +stream_1/stream = ExtResource("14_b5bgj") +stream_2/stream = ExtResource("15_ynvb4") +stream_3/stream = ExtResource("16_obeji") +stream_4/stream = ExtResource("17_6w0re") +stream_5/stream = ExtResource("18_o4guq") + +[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_jjdv2"] +random_pitch = 1.2 +streams_count = 2 +stream_0/stream = ExtResource("20_pu6t4") +stream_1/stream = ExtResource("21_dk5s6") + +[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_qog4c"] +random_pitch = 1.2599211 +streams_count = 8 +stream_0/stream = ExtResource("29_ngi21") +stream_1/stream = ExtResource("30_xmumj") +stream_2/stream = ExtResource("31_spekb") +stream_3/stream = ExtResource("32_iaiio") +stream_4/stream = ExtResource("33_w2elg") +stream_5/stream = ExtResource("34_em3o8") +stream_6/stream = ExtResource("35_rk2e0") +stream_7/stream = ExtResource("36_4sa2t") + +[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_yjs51"] +random_pitch = 1.2599211 +streams_count = 4 +stream_0/stream = ExtResource("43_kbm55") +stream_1/stream = ExtResource("44_rb87w") +stream_2/stream = ExtResource("45_mur2l") +stream_3/stream = ExtResource("46_t0v4u") + +[node name="AudioManager" type="Node" unique_id=1871137180] +process_mode = 3 +script = ExtResource("1_0tvca") + +[node name="Ambiances" type="Node" parent="." unique_id=1989991562] +unique_name_in_owner = true + +[node name="Exterior" type="AudioStreamPlayer" parent="Ambiances" unique_id=1405716780] +unique_name_in_owner = true +stream = ExtResource("2_tuvql") + +[node name="Astra" type="AudioStreamPlayer" parent="Ambiances" unique_id=1244577212] +unique_name_in_owner = true +stream = ExtResource("5_8204s") + +[node name="Demeter" type="AudioStreamPlayer" parent="Ambiances" unique_id=351918026] +unique_name_in_owner = true +stream = ExtResource("6_8204s") + +[node name="Borea" type="AudioStreamPlayer" parent="Ambiances" unique_id=1857904648] +unique_name_in_owner = true +stream = ExtResource("7_spekb") + +[node name="Ship" type="AudioStreamPlayer" parent="Ambiances" unique_id=1564186965] +unique_name_in_owner = true +stream = ExtResource("8_tuvql") + +[node name="Vending_room_base_relais" type="AudioStreamPlayer" parent="Ambiances" unique_id=1544089647] +stream = ExtResource("7_ge2sc") + +[node name="Musics" type="Node" parent="." unique_id=1450527710] +unique_name_in_owner = true + +[node name="RegionForestPhase1" type="AudioStreamPlayer" parent="Musics" unique_id=1029114070] +unique_name_in_owner = true +stream = ExtResource("6_6o1yh") + +[node name="RegionForestPhase2" type="AudioStreamPlayer" parent="Musics" unique_id=417543634] +unique_name_in_owner = true +stream = ExtResource("10_tq535") + +[node name="RegionMinePhase1" type="AudioStreamPlayer" parent="Musics" unique_id=152032267] +unique_name_in_owner = true +stream = ExtResource("5_ajci6") + +[node name="RegionMinePhase2" type="AudioStreamPlayer" parent="Musics" unique_id=348001141] +unique_name_in_owner = true +stream = ExtResource("4_2fduo") + +[node name="RegionDesertPhase1" type="AudioStreamPlayer" parent="Musics" unique_id=2003475958] +stream = ExtResource("11_yjs51") + +[node name="RegionForestLoop" type="AudioStreamPlayer" parent="Musics" unique_id=482654512] +unique_name_in_owner = true +stream = ExtResource("12_xmumj") +bus = &"Music" + +[node name="RegionMineLoop" type="AudioStreamPlayer" parent="Musics" unique_id=814165127] +unique_name_in_owner = true +stream = ExtResource("11_ngi21") +bus = &"Music" + +[node name="Title" type="AudioStreamPlayer" parent="Musics" unique_id=2105759422] +unique_name_in_owner = true +stream = ExtResource("7_tuvql") +bus = &"Music" + +[node name="Demo_end" type="AudioStreamPlayer" parent="Musics" unique_id=261817716] +unique_name_in_owner = true +stream = ExtResource("14_h3tkm") + +[node name="Sfx" type="Node" parent="." unique_id=2023641207] +unique_name_in_owner = true + +[node name="Dig" type="AudioStreamPlayer" parent="Sfx" unique_id=486042600] +stream = SubResource("AudioStreamRandomizer_6o1yh") + +[node name="VendingMachineDrop" type="AudioStreamPlayer" parent="Sfx" unique_id=1161500181] +stream = ExtResource("18_ehr7m") +pitch_scale = 0.81 + +[node name="VendingMachineOff" type="AudioStreamPlayer" parent="Sfx" unique_id=743754597] +stream = ExtResource("19_aedoe") +volume_db = -14.149 +pitch_scale = 0.75 + +[node name="DoorOpen" type="AudioStreamPlayer" parent="Sfx" unique_id=1440910292] +stream = ExtResource("20_yr73o") +pitch_scale = 1.5 + +[node name="Recharge1" type="AudioStreamPlayer" parent="Sfx" unique_id=357905012] +stream = ExtResource("18_j8acj") + +[node name="Recharge2" type="AudioStreamPlayer" parent="Sfx" unique_id=261310291] +stream = ExtResource("19_yjs51") + +[node name="Recharge3" type="AudioStreamPlayer" parent="Sfx" unique_id=1559567919] +stream = ExtResource("20_4ojdh") + +[node name="Recharge4" type="AudioStreamPlayer" parent="Sfx" unique_id=1697092547] +stream = ExtResource("21_ehr7m") + +[node name="Recharge5" type="AudioStreamPlayer" parent="Sfx" unique_id=1385679733] +stream = ExtResource("22_aedoe") + +[node name="Recharge6" type="AudioStreamPlayer" parent="Sfx" unique_id=391499157] +stream = ExtResource("23_ge2sc") + +[node name="Recharge7" type="AudioStreamPlayer" parent="Sfx" unique_id=355754872] +stream = ExtResource("24_yr73o") + +[node name="Respawn" type="AudioStreamPlayer" parent="Sfx" unique_id=1902559716] +stream = ExtResource("16_xmumj") + +[node name="Drop" type="AudioStreamPlayer" parent="Sfx" unique_id=1391500830] +stream = SubResource("AudioStreamRandomizer_1w04j") +volume_db = -2.0 + +[node name="Harvest" type="AudioStreamPlayer" parent="Sfx" unique_id=345539331] +stream = SubResource("AudioStreamRandomizer_i4m0x") + +[node name="PickUp" type="AudioStreamPlayer" parent="Sfx" unique_id=176915166] +stream = SubResource("AudioStreamRandomizer_jjdv2") +volume_db = -11.0 + +[node name="Announce" type="AudioStreamPlayer" parent="Sfx" unique_id=876644323] +stream = ExtResource("22_btfwx") +volume_db = 8.627 + +[node name="Astra_phone_call" type="AudioStreamPlayer" parent="Sfx" unique_id=721344636] +stream = ExtResource("27_0rjel") + +[node name="Phone_call" type="AudioStreamPlayer" parent="Sfx" unique_id=1668278453] +stream = ExtResource("28_3dfjn") + +[node name="PlantPoint" type="AudioStreamPlayer" parent="Sfx" unique_id=2044025024] +stream = SubResource("AudioStreamRandomizer_qog4c") + +[node name="Reveal" type="AudioStreamPlayer" parent="Sfx" unique_id=1597352608] +stream = ExtResource("37_3dfjn") +volume_db = -3.0 + +[node name="Ship_reveal" type="AudioStreamPlayer" parent="Sfx" unique_id=1121632306] +stream = ExtResource("37_3dfjn") +volume_db = -3.0 + +[node name="Signal" type="AudioStreamPlayer" parent="Sfx" unique_id=335682989] +stream = ExtResource("41_iaiio") +volume_db = -10.0 + +[node name="Atterrissage" type="AudioStreamPlayer" parent="Sfx" unique_id=2021186625] +stream = ExtResource("40_h3tkm") + +[node name="Decollage" type="AudioStreamPlayer" parent="Sfx" unique_id=581331122] +stream = ExtResource("41_iyxkn") + +[node name="Elevator" type="AudioStreamPlayer" parent="Sfx" unique_id=1345852969] +stream = ExtResource("42_obkny") + +[node name="Mining" type="AudioStreamPlayer" parent="Sfx" unique_id=1122216774] +stream = SubResource("AudioStreamRandomizer_yjs51") + +[node name="Screen_interaction" type="AudioStreamPlayer" parent="Sfx" unique_id=1140309368] +stream = ExtResource("47_svctq") +volume_db = -8.0 + +[node name="Ship_exit" type="AudioStreamPlayer" parent="Sfx" unique_id=615567072] +stream = ExtResource("48_j8acj") +volume_db = 8.0 + +[node name="Movement" type="AudioStreamPlayer" parent="Sfx" unique_id=1403498558] +stream = ExtResource("51_iyxkn") +volume_db = -7.0 + +[node name="Teleportation" type="AudioStreamPlayer" parent="Sfx" unique_id=369599456] +stream = ExtResource("50_rlnfe") +volume_db = -6.0 + +[node name="HoloAppear" type="AudioStreamPlayer" parent="Sfx" unique_id=637436824] +stream = ExtResource("63_aedoe") +volume_db = -6.0 + +[node name="HoloDisappear" type="AudioStreamPlayer" parent="Sfx" unique_id=1756615928] +stream = ExtResource("64_ge2sc") +volume_db = -6.0 + +[node name="Teleportation" type="AudioStreamPlayer" parent="Sfx" unique_id=369599456] +stream = ExtResource("50_rlnfe") +volume_db = -3.0 + +[node name="Door_opening" type="AudioStreamPlayer" parent="Sfx" unique_id=1045862259] + +[node name="VM_drop" type="AudioStreamPlayer" parent="Sfx" unique_id=1831741123] +stream = ExtResource("62_yr73o") + +[node name="VM_power_off" type="AudioStreamPlayer" parent="Sfx" unique_id=2112201239] +stream = ExtResource("63_lwdce") + +[node name="VM_power_on" type="AudioStreamPlayer" parent="Sfx" unique_id=617324673] +stream = ExtResource("64_qvjf5") diff --git a/common/audio_manager/scripts/audio_manager.gd b/common/audio_manager/scripts/audio_manager.gd index e0c581e..f56f4e6 100644 --- a/common/audio_manager/scripts/audio_manager.gd +++ b/common/audio_manager/scripts/audio_manager.gd @@ -15,6 +15,7 @@ const REGION_FIRST_PHASE = [ ] const REGION_LOOP_PHASE = [ + "RegionForestLoop", "RegionForestLoop", "RegionForestLoop", "RegionMineLoop", @@ -36,30 +37,35 @@ var default_volumes := {} func _on_change_scene(scene : Scene): stop_all_ambiances() - match scene.scene_id: - "TITLE": - play_music_alone("Title", false, 1.0) - "INTRO": - stop_all_musics() - "REGION": - play_ambiance("Exterior", false) - var region_level = GameInfo.game_data.current_region_data.region_level - var first_phase = REGION_FIRST_PHASE[region_level % len(REGION_FIRST_PHASE)] - var loop_phase = REGION_LOOP_PHASE[region_level % len(REGION_LOOP_PHASE)] - play_music_alone(first_phase) - queue_music(loop_phase, first_phase) - "COCKPIT": - stop_all_musics() - play_ambiance_alone("Ship", true, 1.0) - "ASTRA": - stop_all_musics() - play_ambiance_alone("Astra", false) - "GARAGE": - stop_all_musics() - play_ambiance_alone("Astra", false) - "BOREA": - stop_all_musics() - play_ambiance_alone("Borea", false) + if (scene is TitleScene): + play_music_alone("Title", false, 5.0) + elif scene is IntroScene: + stop_all_musics() + elif scene is RegionScene: + play_ambiance("Exterior", false) + var region_level = GameInfo.game_data.current_run.level + var first_phase = REGION_FIRST_PHASE[region_level % len(REGION_FIRST_PHASE)] + var loop_phase = REGION_LOOP_PHASE[region_level % len(REGION_LOOP_PHASE)] + play_music_alone(first_phase) + queue_music(loop_phase, first_phase) + elif scene is CockpitScene: + stop_all_musics() + play_ambiance_alone("Ship", true) + elif scene is AstraScene: + stop_all_musics() + play_ambiance_alone("Astra", false) + elif scene is GarageScene: + stop_all_musics() + play_ambiance_alone("Astra", false) + elif scene is BoreaScene: + stop_all_musics() + play_ambiance_alone("Borea", false) + elif scene is VendingMachineScene: + stop_all_musics() + play_ambiance_alone("VendingRoom", false) + elif scene is RelayBaseScene: + stop_all_musics() + play_ambiance_alone("BaseRelais", false) # Fonction s'exécutant à chaque début de timeline func _on_timeline_started(): @@ -364,7 +370,7 @@ class AudioStop extends AudioAction: current_players : Array[String] ) -> Array[String]: var player = manager.get_player_from_node(player_name,parent_node) - if player and player in current_players: + if player and player.name in current_players: manager.stop_player(player, fade_time) current_players.erase(player_name) return current_players diff --git a/common/game_data/scripts/artefacts/artefact.gd b/common/game_data/scripts/artefacts/artefact.gd new file mode 100644 index 0000000..0a7ce42 --- /dev/null +++ b/common/game_data/scripts/artefacts/artefact.gd @@ -0,0 +1,64 @@ +@abstract +extends Resource +class_name Artefact + +const ARTEFACT_ICON = preload("res://common/icons/cube-3d-sphere.svg") +const DESC_ICON = preload("res://common/icons/align-right.svg") + +@abstract func get_artefact_name() -> String + +@abstract func get_3d_scene() -> PackedScene + +func get_artefact_desc() -> String: + return "" + +func modify_player_max_energy(v : int) -> int: + return v + +func modify_player_inventory_size(v : int) -> int: + return v + +func modify_seed_rarity_pool(seed_rarity_pool : Array[int]) -> Array[int]: + return seed_rarity_pool + +func modify_plant_growing_time(plant_growing_time : int) -> int: + return plant_growing_time + +func modify_plant_lifetime(plant_lifetime : int) -> int: + return plant_lifetime + +func modify_plant_seed_number(plant_seed_number : int) -> int: + return plant_seed_number + +func modify_plant_base_score(plant_base_score : int) -> int: + return plant_base_score + +func modify_plant_seed_random_loose(plant_seed_random_loose : int) -> int: + return plant_seed_random_loose + +func modify_plant_influence_radius(plant_influence_radius : float) -> float: + return plant_influence_radius + +func modify_mutation_probability(plant_mutation_probability) -> float: + return plant_mutation_probability + +func modify_mutation_max_number(plant_mutation_max_number) -> int: + return plant_mutation_max_number + +func card_info() -> CardInfo: + var info = CardInfo.new( + get_artefact_name(), + tr("ARTEFACT") + ) + info.important_stat_icon = ARTEFACT_ICON + + var desc_section := CardSectionInfo.new( + tr("DESCRIPTION"), + get_artefact_desc(), + ) + desc_section.title_icon = DESC_ICON + + info.sections.append(desc_section) + + return info + diff --git a/common/game_data/scripts/artefacts/artefact.gd.uid b/common/game_data/scripts/artefacts/artefact.gd.uid new file mode 100644 index 0000000..357e695 --- /dev/null +++ b/common/game_data/scripts/artefacts/artefact.gd.uid @@ -0,0 +1 @@ +uid://d2nheldbqquy1 diff --git a/common/game_data/scripts/artefacts/pile/pile.blend b/common/game_data/scripts/artefacts/pile/pile.blend new file mode 100644 index 0000000..8778624 Binary files /dev/null and b/common/game_data/scripts/artefacts/pile/pile.blend differ diff --git a/common/game_data/scripts/artefacts/pile/pile.blend.import b/common/game_data/scripts/artefacts/pile/pile.blend.import new file mode 100644 index 0000000..953436b --- /dev/null +++ b/common/game_data/scripts/artefacts/pile/pile.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://dolv2637emdbw" +path="res://.godot/imported/pile.blend-80c2c782d9d6ad4f0e2e2546a3d5b176.scn" + +[deps] + +source_file="res://common/game_data/scripts/artefacts/pile/pile.blend" +dest_files=["res://.godot/imported/pile.blend-80c2c782d9d6ad4f0e2e2546a3d5b176.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/common/game_data/scripts/artefacts/pile/pile.blend1 b/common/game_data/scripts/artefacts/pile/pile.blend1 new file mode 100644 index 0000000..7e81f36 Binary files /dev/null and b/common/game_data/scripts/artefacts/pile/pile.blend1 differ diff --git a/common/game_data/scripts/artefacts/pile/pile.gd b/common/game_data/scripts/artefacts/pile/pile.gd new file mode 100644 index 0000000..2b5298a --- /dev/null +++ b/common/game_data/scripts/artefacts/pile/pile.gd @@ -0,0 +1,15 @@ +@tool +extends Artefact +class_name PileArtefact + +func get_artefact_name() -> String: + return "PILE" + +func get_artefact_desc() -> String: + return "PILE_DESC_TEXT" + +func get_3d_scene() -> PackedScene: + return preload("res://common/game_data/scripts/artefacts/pile/pile.blend") + +func modify_player_max_energy(v : int) -> int: + return v + 1 \ No newline at end of file diff --git a/common/game_data/scripts/artefacts/pile/pile.gd.uid b/common/game_data/scripts/artefacts/pile/pile.gd.uid new file mode 100644 index 0000000..f9b098a --- /dev/null +++ b/common/game_data/scripts/artefacts/pile/pile.gd.uid @@ -0,0 +1 @@ +uid://c6lr0fucklsto diff --git a/common/game_data/scripts/artefacts/seed_case/seed_case.blend b/common/game_data/scripts/artefacts/seed_case/seed_case.blend new file mode 100644 index 0000000..d8a3362 Binary files /dev/null and b/common/game_data/scripts/artefacts/seed_case/seed_case.blend differ diff --git a/common/game_data/scripts/artefacts/seed_case/seed_case.blend.import b/common/game_data/scripts/artefacts/seed_case/seed_case.blend.import new file mode 100644 index 0000000..95f2768 --- /dev/null +++ b/common/game_data/scripts/artefacts/seed_case/seed_case.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://cclvb8o3vofff" +path="res://.godot/imported/seed_case.blend-c6a943c9ac5e07f38ec4fc399a8f6f42.scn" + +[deps] + +source_file="res://common/game_data/scripts/artefacts/seed_case/seed_case.blend" +dest_files=["res://.godot/imported/seed_case.blend-c6a943c9ac5e07f38ec4fc399a8f6f42.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/common/game_data/scripts/artefacts/seed_case/seed_case.gd b/common/game_data/scripts/artefacts/seed_case/seed_case.gd new file mode 100644 index 0000000..d6b623d --- /dev/null +++ b/common/game_data/scripts/artefacts/seed_case/seed_case.gd @@ -0,0 +1,15 @@ +@tool +extends Artefact +class_name SeedCaseArtefact + +func get_artefact_name() -> String: + return "SEED_CASE" + +func get_artefact_desc() -> String: + return "SEED_CASE_DESC_TEXT" + +func get_3d_scene() -> PackedScene: + return preload("res://common/game_data/scripts/artefacts/seed_case/seed_case.blend") + +func modify_player_inventory_size(v : int) -> int: + return v + 1 \ No newline at end of file diff --git a/common/game_data/scripts/artefacts/seed_case/seed_case.gd.uid b/common/game_data/scripts/artefacts/seed_case/seed_case.gd.uid new file mode 100644 index 0000000..e1cb35b --- /dev/null +++ b/common/game_data/scripts/artefacts/seed_case/seed_case.gd.uid @@ -0,0 +1 @@ +uid://c7o5p4uk556v6 diff --git a/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend b/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend new file mode 100644 index 0000000..cac6a71 Binary files /dev/null and b/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend differ diff --git a/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend.import b/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend.import new file mode 100644 index 0000000..bfc32d9 --- /dev/null +++ b/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://xwjwwmhd4b7t" +path="res://.godot/imported/stabilisator.blend-3a4d21b03376590b925002fb56f41279.scn" + +[deps] + +source_file="res://common/game_data/scripts/artefacts/stabilisator/stabilisator.blend" +dest_files=["res://.godot/imported/stabilisator.blend-3a4d21b03376590b925002fb56f41279.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend1 b/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend1 new file mode 100644 index 0000000..68c4e81 Binary files /dev/null and b/common/game_data/scripts/artefacts/stabilisator/stabilisator.blend1 differ diff --git a/common/game_data/scripts/artefacts/stabilisator/stabilisator.gd b/common/game_data/scripts/artefacts/stabilisator/stabilisator.gd new file mode 100644 index 0000000..5b877db --- /dev/null +++ b/common/game_data/scripts/artefacts/stabilisator/stabilisator.gd @@ -0,0 +1,15 @@ +@tool +extends Artefact +class_name StabilisatorArtefact + +func get_artefact_name() -> String: + return "STABILISATOR" + +func get_artefact_desc() -> String: + return "STABILISATOR_DESC_TEXT" + +func get_3d_scene() -> PackedScene: + return preload("res://common/game_data/scripts/artefacts/stabilisator/stabilisator.blend") + +func modify_plant_lifetime(plant_lifetime : int) -> int: + return plant_lifetime + 1 \ No newline at end of file diff --git a/common/game_data/scripts/artefacts/stabilisator/stabilisator.gd.uid b/common/game_data/scripts/artefacts/stabilisator/stabilisator.gd.uid new file mode 100644 index 0000000..8854914 --- /dev/null +++ b/common/game_data/scripts/artefacts/stabilisator/stabilisator.gd.uid @@ -0,0 +1 @@ +uid://dg52pvxfbowo5 diff --git a/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend new file mode 100644 index 0000000..7d8d0f1 Binary files /dev/null and b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend differ diff --git a/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend.import b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend.import new file mode 100644 index 0000000..487b7da --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://bb4675xxby4li" +path="res://.godot/imported/talion_overloader.blend-8cbf53dd089d03a7feecf8f09620bb83.scn" + +[deps] + +source_file="res://common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend" +dest_files=["res://.godot/imported/talion_overloader.blend-8cbf53dd089d03a7feecf8f09620bb83.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend1 b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend1 new file mode 100644 index 0000000..d7c2439 Binary files /dev/null and b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend1 differ diff --git a/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.gd b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.gd new file mode 100644 index 0000000..d98fe35 --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.gd @@ -0,0 +1,15 @@ +@tool +extends Artefact +class_name TalionOverloaderArtefact + +func get_artefact_name() -> String: + return "TALION_OVERLOADER" + +func get_artefact_desc() -> String: + return "TALION_OVERLOADER_DESC_TEXT" + +func get_3d_scene() -> PackedScene: + return preload("res://common/game_data/scripts/artefacts/talion_overloader/talion_overloader.blend") + +func modify_mutation_max_number(plant_mutation_max_number) -> int: + return plant_mutation_max_number + 1 \ No newline at end of file diff --git a/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.gd.uid b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.gd.uid new file mode 100644 index 0000000..cf1a9a5 --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_overloader/talion_overloader.gd.uid @@ -0,0 +1 @@ +uid://bcc71agce2ewf diff --git a/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend b/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend new file mode 100644 index 0000000..01fe511 Binary files /dev/null and b/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend differ diff --git a/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend.import b/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend.import new file mode 100644 index 0000000..019b175 --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://bv12sx67hij1s" +path="res://.godot/imported/talion_relay.blend-7f1bb942cac95750ceb5345d8092e7ac.scn" + +[deps] + +source_file="res://common/game_data/scripts/artefacts/talion_relay/talion_relay.blend" +dest_files=["res://.godot/imported/talion_relay.blend-7f1bb942cac95750ceb5345d8092e7ac.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend1 b/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend1 new file mode 100644 index 0000000..130550a Binary files /dev/null and b/common/game_data/scripts/artefacts/talion_relay/talion_relay.blend1 differ diff --git a/common/game_data/scripts/artefacts/talion_relay/talion_relay.gd b/common/game_data/scripts/artefacts/talion_relay/talion_relay.gd new file mode 100644 index 0000000..7f7fbcd --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_relay/talion_relay.gd @@ -0,0 +1,15 @@ +@tool +extends Artefact +class_name TalionRelayArtifact + +func get_artefact_name() -> String: + return "TALION_RELAY" + +func get_artefact_desc() -> String: + return "TALION_RELAY_DESC_TEXT" + +func get_3d_scene() -> PackedScene: + return preload("res://common/game_data/scripts/artefacts/talion_relay/talion_relay.blend") + +func modify_mutation_probability(plant_mutation_probability) -> float: + return plant_mutation_probability * 1.5 \ No newline at end of file diff --git a/common/game_data/scripts/artefacts/talion_relay/talion_relay.gd.uid b/common/game_data/scripts/artefacts/talion_relay/talion_relay.gd.uid new file mode 100644 index 0000000..fe82b3f --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_relay/talion_relay.gd.uid @@ -0,0 +1 @@ +uid://djyy1207gsj4d diff --git a/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend b/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend new file mode 100644 index 0000000..02f181f Binary files /dev/null and b/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend differ diff --git a/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend.import b/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend.import new file mode 100644 index 0000000..0c74e30 --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://bpvk3ldu7pkyv" +path="res://.godot/imported/talion_soil.blend-37ee0f905ace3681bafa4c72e1bfb134.scn" + +[deps] + +source_file="res://common/game_data/scripts/artefacts/talion_soil/talion_soil.blend" +dest_files=["res://.godot/imported/talion_soil.blend-37ee0f905ace3681bafa4c72e1bfb134.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend1 b/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend1 new file mode 100644 index 0000000..fb54bd8 Binary files /dev/null and b/common/game_data/scripts/artefacts/talion_soil/talion_soil.blend1 differ diff --git a/common/game_data/scripts/artefacts/talion_soil/talion_soil.gd b/common/game_data/scripts/artefacts/talion_soil/talion_soil.gd new file mode 100644 index 0000000..a9c726d --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_soil/talion_soil.gd @@ -0,0 +1,15 @@ +@tool +extends Artefact +class_name TalionSoilArtifact + +func get_artefact_name() -> String: + return "TALION_SOIL" + +func get_artefact_desc() -> String: + return "TALION_SOIL_DESC_TEXT" + +func get_3d_scene() -> PackedScene: + return preload("res://common/game_data/scripts/artefacts/talion_soil/talion_soil.blend") + +func modify_plant_influence_radius(plant_influence_radius : float) -> float: + return plant_influence_radius * 1.4 \ No newline at end of file diff --git a/common/game_data/scripts/artefacts/talion_soil/talion_soil.gd.uid b/common/game_data/scripts/artefacts/talion_soil/talion_soil.gd.uid new file mode 100644 index 0000000..abe6c57 --- /dev/null +++ b/common/game_data/scripts/artefacts/talion_soil/talion_soil.gd.uid @@ -0,0 +1 @@ +uid://blxufp4ue4b1i diff --git a/common/game_data/scripts/game_data.gd b/common/game_data/scripts/game_data.gd index 4918bf1..507ae64 100644 --- a/common/game_data/scripts/game_data.gd +++ b/common/game_data/scripts/game_data.gd @@ -1,33 +1,51 @@ extends Resource class_name GameData +enum GameMode {STORY} + +signal current_run_updated(r : RunData) signal current_region_data_updated(p : RegionData) - -@export var current_run : RunData = null - -@export var current_region_data : RegionData = null @export var player_data : PlayerData = PlayerData.new() -@export var max_mutations_by_plant : int = 2 +@export var progression_data : ProgressionData = ProgressionData.new() + +@export var current_run : RunData = start_run() : + set(v): + current_run = v + current_run_updated.emit(v) + +@export var current_region_data : RegionData = null : + set(v): + current_region_data = v + current_region_data_updated.emit(v) @export var last_game_scene : Scene = null @export var ship_in_space = false -@export var tutorial_done = false - @export var incubator_used = [] +@export var dead_orchid_position : Vector3 +@export var dead_orchid_rotation : Vector3 -@export var dialogs_done : Array[String] = [] #Chemin des dialogues démarrés +@export var item_announced = [] -func start_run(): - player_data.inventory.clear_items() +@export var game_mode : GameMode = GameMode.STORY + +@export var dialogs_done : Array[String] = [] #Chemin des dialogues terminés + +func start_run() -> RunData: + player_data.clear_inventory() + player_data.update_with_artefacts([]) current_run = RunData.new() + current_run.story_step = progression_data.story_step.duplicate_deep() + current_run.generate_next_run_points() current_run.current_run_point_changed.connect( func(rp : RunPoint): start_region(rp.region_parameter) ) + ship_in_space = false + return current_run func reset_player(): player_data = PlayerData.new() @@ -38,20 +56,14 @@ func reset_all(): func start_region(region_param : RegionParameter): current_region_data = RegionData.new(region_param) - current_region_data_updated.emit(current_region_data) - GameInfo.save_game_data() func give_up(): current_region_data = null current_run = null + start_run() + SceneManager.change_to_scene(progression_data.story_step.get_respawn_scene()) -func start_tutorial(): - current_region_data = RegionData.new( - RegionParameter.new( - 0, - tr("TUTORIAL"), - ["tutorial"], - [], - randi() - ) - ) +func finish_story_step(): + progression_data.next_story_step() + current_region_data = null + start_run() diff --git a/common/game_data/scripts/progression_data.gd b/common/game_data/scripts/progression_data.gd new file mode 100644 index 0000000..191b6c3 --- /dev/null +++ b/common/game_data/scripts/progression_data.gd @@ -0,0 +1,57 @@ +extends Resource +class_name ProgressionData + + +@export var planted_mutation_ids: Array[String] = [] +@export var story_step_i := 0 +@export var ship_tutorial_done = false + +var all_mutations: Array[PlantMutation] : get = get_all_mutations +var available_mutations: Array[PlantMutation] : get = get_all_mutations +var available_artefacts: Array[Artefact] : get = get_all_artifacts +var story_step : StoryStep : get = get_story_step + +func get_story_step() -> StoryStep: + return get_all_story_steps()[story_step_i] + +func next_story_step() -> void: + get_story_step()._on_finish() + if story_step_i + 1 < len(get_all_story_steps()): + story_step_i += 1 + +func get_all_mutations() -> Array[PlantMutation]: + return [ + AncientMutation.new(), + FertileMutation.new(), + GenerousMutation.new(), + HurriedMutation.new(), + PrecociousMutation.new(), + ProlificMutation.new(), + ProtectiveMutation.new(), + PureMutation.new(), + PurificationMutation.new(), + QualityMutation.new(), + QuickMutation.new(), + RobustMutation.new(), + SocialMutation.new(), + ToughMutation.new(), + VivaciousMutation.new(), + ] + +func get_all_artifacts() -> Array[Artefact]: + return [ + PileArtefact.new(), + SeedCaseArtefact.new(), + StabilisatorArtefact.new(), + TalionOverloaderArtefact.new(), + TalionSoilArtifact.new(), + ] + + +func get_all_story_steps() -> Array[StoryStep]: + return [ + TutorialStoryStep.new(), + AstraStoryStep.new(), + MercuryStoryStep.new(), + BetaStoryStep.new() + ] diff --git a/common/game_data/scripts/progression_data.gd.uid b/common/game_data/scripts/progression_data.gd.uid new file mode 100644 index 0000000..bb67e25 --- /dev/null +++ b/common/game_data/scripts/progression_data.gd.uid @@ -0,0 +1 @@ +uid://cel2kwfmhvb0a diff --git a/common/game_data/scripts/run/run_data.gd b/common/game_data/scripts/run/run_data.gd index 59a91c9..62bc27a 100644 --- a/common/game_data/scripts/run/run_data.gd +++ b/common/game_data/scripts/run/run_data.gd @@ -1,97 +1,124 @@ extends Resource class_name RunData -enum State {STARTED, IN_PROGRESS, FINISHED} - -const RUN_POINT_POSITION_DERIVATION = 100 -const DIFFICULTY_INCREASE_BY_LEVEL = 3 const RUN_POINTS_NEXT_NUMBER : int = 2 -const RUN_POINT_MAX_LEVEL = 2 # TODO +const RUN_POINT_MAX_LEVEL = 5 # TODO -signal current_run_point_changed +signal current_run_point_changed(rp : RunPoint) var run_seed = randi() -@export var next_run_points : Array[RunPoint] = generate_next_run_points() + +@export var level = 0 +@export var story_step : StoryStep +@export var next_run_points : Array[RunPoint] @export var current_run_point : RunPoint = null : set(v): current_run_point = v current_run_point_changed.emit(v) -@export var visited_run_points : Array[RunPoint] = [] -@export var last_used_modifier_name = "" +@export var artefacts : Array[Artefact] = [] -#region ------------------ Generation ------------------ +var plant_info = RunDataPlantInfo.new(self) -func generate_next_run_points(level = 0) -> Array[RunPoint]: - +func is_finished() -> bool: + return story_step.is_run_finished(level) + +func get_progress() -> int: + return story_step.get_run_progress(level) + +#region ------------------ Run Points ------------------ + +func generate_next_run_points() -> Array[RunPoint]: next_run_points = [] - for i in range(RUN_POINTS_NEXT_NUMBER): + for i in range(story_step.get_run_point_number(level+1)): next_run_points.append( - generate_next_run_point(level) + generate_next_run_point() ) return next_run_points - -func generate_next_run_point(level = 0) -> RunPoint: +func generate_next_run_point() -> RunPoint: var region_parameter = RegionParameter.new() - region_parameter.level = level - region_parameter.region_flags = get_region_flags(region_parameter) - region_parameter.modifiers = get_region_modifiers(level + 1) + + var next_level = level+1 + if story_step.need_gameplay_modifier(next_level): + var is_challenge = randf() < story_step.get_challenge_chance(next_level) + if is_challenge: + region_parameter.modifiers = [ + generate_challenge_modifiers().pick_random(), + generate_benefic_modifiers().pick_random() + ] as Array[RegionModifier] + else: + region_parameter.modifiers = [ + generate_normal_modifiers().pick_random() + ] as Array[RegionModifier] + + + var first_vending = story_step.get_first_vending_machine_occurence(next_level) + var vending_occurence = story_step.get_vending_machine_occurence(next_level) + if vending_occurence > 0: + if (level - first_vending)%vending_occurence == 0: + region_parameter.modifiers.append(VendingMachineModifier.new()) + + region_parameter.modifiers.append_array( + story_step.get_story_modifiers_for_region(next_level) + ) + + region_parameter.objective = story_step.get_objective_for_region(next_level) + return RunPoint.new( - level, region_parameter ) -#endregion -func get_state() -> State: - if not current_run_point: - return State.STARTED - elif current_run_point.level == RUN_POINT_MAX_LEVEL: - return State.FINISHED - else : - return State.IN_PROGRESS - -func get_next_run_points() -> Array[RunPoint]: - if current_run_point and current_run_point.level == RUN_POINT_MAX_LEVEL: - return [] - return next_run_points - -func choose_next_run_point(run_point : RunPoint) -> RunPoint: - if current_run_point: - visited_run_points.append(current_run_point) +func choose_next_run_point(run_point : RunPoint = null) -> RunPoint: + if run_point == null: + run_point = generate_next_run_point() + level += 1 current_run_point = run_point GameInfo.game_data.start_region(run_point.region_parameter) - next_run_points = generate_next_run_points(current_run_point.level + 1) - if len(current_run_point.region_parameter.modifiers): - last_used_modifier_name = current_run_point.region_parameter.modifiers[0].get_modifier_name() + next_run_points = generate_next_run_points() return current_run_point -func get_region_flags(region_parameter : RegionParameter) -> Array[String]: - var flags : Array[String] = [] +#endregion - if region_parameter.level == RUN_POINT_MAX_LEVEL: - flags.append("borea") - - return flags +#region ------------------ Modifiers ------------------ + +func generate_normal_modifiers() -> Array[RegionModifier]: + return [ + AridModifier.new(), + HumidModifier.new(), + PoorModifier.new(), + HarshModifier.new(), + ToxicModifier.new(), + SandyModifier.new(), -func get_region_modifiers(level : int) -> Array[RegionModifier]: - var possible_modifiers : Array[RegionModifier] = [ - AridModifier.new(level), - HumidModifier.new(level), - PoorModifier.new(level), - HarshModifier.new(level) ] - possible_modifiers = possible_modifiers.filter( - func (m): return m.get_modifier_name() != last_used_modifier_name - ) +func generate_benefic_modifiers() -> Array[RegionModifier]: + return [ + VendingMachineModifier.new(), + ResonnanceModifier.new(), + InstableModifier.new(), + ] - var choosen_modifier : RegionModifier = possible_modifiers.pick_random() - last_used_modifier_name = choosen_modifier.get_modifier_name() +func generate_challenge_modifiers() -> Array[RegionModifier]: + return [ + RockyModifier.new(), + RadioactiveModifier.new(), + ContaminatedModifier.new(), + StormModifier.new(), + ] - return [choosen_modifier] +#endregion + +#region ------------------ Artefacts ------------------ + +func add_artefacts(a: Artefact): + artefacts.append(a) + GameInfo.game_data.player_data.update_with_artefacts(artefacts) + +#endregion diff --git a/common/game_data/scripts/run/run_data_plant_info.gd b/common/game_data/scripts/run/run_data_plant_info.gd new file mode 100644 index 0000000..8ea20ed --- /dev/null +++ b/common/game_data/scripts/run/run_data_plant_info.gd @@ -0,0 +1,113 @@ +extends Node +class_name RunDataPlantInfo + +const DEFAULT_GROWING_TIME = 2 +const DEFAULT_LIFETIME = 6 +const DEFAULT_BASE_SCORE = 1 +const DEFAULT_SEED_NUMBER = 2 +const DEFAULT_SEED_RANDOM_LOOSE = 1 +const DEFAULT_PLANT_INFLUENCE_RADIUS = 100 +const DEFAULT_MUTATION_PROBABILITY = 0.3 +const DEFAULT_MUTATION_MAX_NUMBER = 2 + +var run_data : RunData + +func _init( + _run_data : RunData +): + run_data = _run_data + +var region_modifiers : Array[RegionModifier] + +func get_growing_time() -> int: + var growing_time = DEFAULT_GROWING_TIME + + for rm in get_region_modifiers(): + growing_time = rm.modify_plant_growing_time(growing_time) + + for a in run_data.artefacts: + growing_time = a.modify_plant_growing_time(growing_time) + + return max(0, growing_time) + +func get_lifetime() -> int: + var lifetime = DEFAULT_LIFETIME + + for rm in get_region_modifiers(): + lifetime = rm.modify_plant_lifetime(lifetime) + + for a in run_data.artefacts: + lifetime = a.modify_plant_lifetime(lifetime) + + return max(0, lifetime) + +func get_base_score() -> int: + var base_score = DEFAULT_BASE_SCORE + + for rm in get_region_modifiers(): + base_score = rm.modify_plant_base_score(base_score) + + for a in run_data.artefacts: + base_score = a.modify_plant_base_score(base_score) + + return max(0, base_score) + +func get_seed_number() -> int: + var seed_number = DEFAULT_SEED_NUMBER + + for rm in get_region_modifiers(): + seed_number = rm.modify_plant_seed_number(seed_number) + + for a in run_data.artefacts: + seed_number = a.modify_plant_seed_number(seed_number) + + return max(0, seed_number) + +func get_seed_random_loose() -> int: + var seed_random_loose = DEFAULT_SEED_RANDOM_LOOSE + + for rm in get_region_modifiers(): + seed_random_loose = rm.modify_plant_seed_random_loose(seed_random_loose) + + for a in run_data.artefacts: + seed_random_loose = a.modify_plant_seed_random_loose(seed_random_loose) + + return min(max(0, seed_random_loose),get_seed_number()) + +func get_influence_radius() -> int: + var influence_radius = DEFAULT_PLANT_INFLUENCE_RADIUS + + for rm in get_region_modifiers(): + influence_radius = rm.modify_plant_influence_radius(influence_radius) + + for a in run_data.artefacts: + influence_radius = a.modify_plant_influence_radius(influence_radius) + + return max(0, influence_radius) + +func get_mutation_probability() -> float: + var mutation_probability = DEFAULT_MUTATION_PROBABILITY + + for rm in get_region_modifiers(): + mutation_probability = rm.modify_mutation_probability(mutation_probability) + + for a in run_data.artefacts: + mutation_probability = a.modify_mutation_probability(mutation_probability) + + return max(0., mutation_probability) + +func get_mutation_max_number() -> int: + var mutation_max_number = DEFAULT_MUTATION_MAX_NUMBER + + for rm in get_region_modifiers(): + mutation_max_number = rm.modify_mutation_max_number(mutation_max_number) + + for a in run_data.artefacts: + mutation_max_number = a.modify_mutation_max_number(mutation_max_number) + + return max(0., mutation_max_number) + +func get_region_modifiers() -> Array[RegionModifier]: + if run_data.current_run_point and run_data.current_run_point.region_parameter: + return run_data.current_run_point.region_parameter.modifiers + return [] \ No newline at end of file diff --git a/common/game_data/scripts/run/run_data_plant_info.gd.uid b/common/game_data/scripts/run/run_data_plant_info.gd.uid new file mode 100644 index 0000000..5530588 --- /dev/null +++ b/common/game_data/scripts/run/run_data_plant_info.gd.uid @@ -0,0 +1 @@ +uid://cf8sn5n5u2hd6 diff --git a/common/game_data/scripts/run/run_point.gd b/common/game_data/scripts/run/run_point.gd index 2f1a9e5..08fdb74 100644 --- a/common/game_data/scripts/run/run_point.gd +++ b/common/game_data/scripts/run/run_point.gd @@ -4,35 +4,36 @@ class_name RunPoint const DANGER_ICON = preload("res://common/icons/skull.svg") const TYPE_ICON = preload("res://common/icons/map-pin.svg") -const OBJECTIVE_ICON = preload("res://common/icons/dna.svg") +const OBJECTIVE_ICON = preload("res://common/icons/growth.svg") const CHARGE_ICON = preload("res://common/icons/bolt.svg") -@export var level : int = 0 # X pos along the planet, and difficulty @export var region_parameter : RegionParameter = RegionParameter.new() : set(v): region_parameter = v @export var position : float = 0 func _init( - _level : int = 0, _region_parameter : RegionParameter = RegionParameter.new(), _position : float = randf_range(0.,1.), ): - level = _level region_parameter = _region_parameter - region_parameter.level = level position = _position func card_info() -> CardInfo: - var info = CardInfo.new(region_parameter.region_name) - info.important_stat_icon = DANGER_ICON - info.important_stat_text = "%d" % level + var info = CardInfo.new( + region_parameter.get_region_name(), + tr("REGION_TO_VISIT") + ) info.type_icon = TYPE_ICON info.stats.append_array([ - CardStatInfo.new(str(region_parameter.objective), OBJECTIVE_ICON), - CardStatInfo.new(str(region_parameter.charges), CHARGE_ICON), + CardStatInfo.new(str(region_parameter.get_objective()), OBJECTIVE_ICON), + CardStatInfo.new(str(region_parameter.get_charge()), CHARGE_ICON), ]) + for m in region_parameter.modifiers: + + info.sections.append(m.card_section()) + return info diff --git a/common/game_data/scripts/settings_data.gd b/common/game_data/scripts/settings_data.gd index f0d5a4e..93c607d 100644 --- a/common/game_data/scripts/settings_data.gd +++ b/common/game_data/scripts/settings_data.gd @@ -8,6 +8,7 @@ const AMBIANCE_BUS_ID = 3 signal language_changed(settings : SettingsData) signal sound_changed(settings : SettingsData) signal video_changed(settings : SettingsData) +signal game_changed(settings : SettingsData) #region ------------------ Language ------------------ @@ -52,4 +53,30 @@ const AVAILABLE_LANGUAGES_LABEL = [ #region ------------------ Controls ------------------ @export var action_remapped : Array[String] = [] -@export var input_remapped : Array[InputEvent] = [] \ No newline at end of file +@export var input_remapped : Array[InputEvent] = [] + +#region ------------------ Game ------------------ + +const MAX_ZOOM = 1.8 +const MIN_ZOOM = 0.8 + +# Not in settings pannel +@export var zoom : float = 1. : + set(v): + zoom = min(MAX_ZOOM,max(MIN_ZOOM,v)) + game_changed.emit(self) + +@export var closed_help_containers = [] + +func is_help_container_closed(help_container_name : String) -> bool: + return help_container_name in closed_help_containers + +func close_help_container(help_container_name : String): + if not help_container_name in closed_help_containers: + closed_help_containers.append(help_container_name) + game_changed.emit(self) + +func open_help_container(help_container_name : String): + if help_container_name in closed_help_containers: + closed_help_containers.erase(help_container_name) + game_changed.emit(self) \ No newline at end of file diff --git a/common/game_data/scripts/story/astra_story_step.gd b/common/game_data/scripts/story/astra_story_step.gd new file mode 100644 index 0000000..7b8f40e --- /dev/null +++ b/common/game_data/scripts/story/astra_story_step.gd @@ -0,0 +1,33 @@ +extends StoryStep +class_name AstraStoryStep + +const MERCURY_ARRIVAL_DIALOG_PATH="res://dialogs/timelines/astra/mercury_arrival.dtl" + +func get_respawn_scene() -> Scene: + return AstraScene.new() + +func get_destination_text() -> String: + return tr("RELAY_BASE_X") % tr("MERCURY") + +func get_destination_scene() -> Scene: + return RelayBaseScene.new( + "MERCURY", + "001" + ) + +func get_region_sequence_length() -> int: + return 4 + +func get_first_vending_machine_occurence(_level : int) -> int: + return 0 + +func get_vending_machine_occurence(_level : int) -> int: + return 0 + +func get_challenge_chance(_level : int) -> float: + return 0. + +func get_ship_dialog_path(level : int, ship_in_space := true) -> String: + if ship_in_space and level == get_region_sequence_length() - 1: + return MERCURY_ARRIVAL_DIALOG_PATH + return "" \ No newline at end of file diff --git a/common/game_data/scripts/story/astra_story_step.gd.uid b/common/game_data/scripts/story/astra_story_step.gd.uid new file mode 100644 index 0000000..33b0bea --- /dev/null +++ b/common/game_data/scripts/story/astra_story_step.gd.uid @@ -0,0 +1 @@ +uid://dolti22admdm8 diff --git a/common/game_data/scripts/story/beta_story_step.gd b/common/game_data/scripts/story/beta_story_step.gd new file mode 100644 index 0000000..923aebd --- /dev/null +++ b/common/game_data/scripts/story/beta_story_step.gd @@ -0,0 +1,31 @@ +extends StoryStep +class_name BetaStoryStep + +const VENUS_DEPARTURE_DIALOG_PATH = "res://dialogs/timelines/beta/venus_departure.dtl" + +func get_respawn_scene() -> Scene: + return RelayBaseScene.new( + "VENUS", + "002", + true + ) + +func get_objective_for_region(l : int) -> int: + match l: + 0: return 8 + 1: return 15 + _: return get_objective_for_region(l-1) + l * 5 + + +func get_region_sequence_length() -> int: + return 12 + +func get_destination_text() -> String: + return tr("SECRET_SCENE") + +func get_destination_scene() -> Scene: + return BoreaScene.new() + + +func get_ship_dialog_path(_level : int, _ship_in_space := true) -> String: + return VENUS_DEPARTURE_DIALOG_PATH \ No newline at end of file diff --git a/common/game_data/scripts/story/beta_story_step.gd.uid b/common/game_data/scripts/story/beta_story_step.gd.uid new file mode 100644 index 0000000..7b74a9a --- /dev/null +++ b/common/game_data/scripts/story/beta_story_step.gd.uid @@ -0,0 +1 @@ +uid://da8kqgl0xnkpi diff --git a/common/game_data/scripts/story/mercury_story_step.gd b/common/game_data/scripts/story/mercury_story_step.gd new file mode 100644 index 0000000..cb4f95c --- /dev/null +++ b/common/game_data/scripts/story/mercury_story_step.gd @@ -0,0 +1,32 @@ +extends StoryStep +class_name MercuryStoryStep + + +const MERCURY_DEPARTURE_DIALOG_PATH = "res://dialogs/timelines/mercury/mercury_departure.dtl" +const VENUS_ARRIVAL_DIALOG_PATH = "res://dialogs/timelines/mercury/venus_arrival.dtl" + +func get_respawn_scene() -> Scene: + return RelayBaseScene.new( + "MERCURY", + "001", + true + ) + +func get_destination_text() -> String: + return tr("RELAY_BASE_X") % tr("VENUS") + +func get_destination_scene() -> Scene: + return RelayBaseScene.new( + "VENUS", + "002" + ) + +func get_first_vending_machine_occurence(_level : int) -> int: + return 0 + +func get_ship_dialog_path(level : int, ship_in_space := true) -> String: + if level == 0: + return MERCURY_DEPARTURE_DIALOG_PATH + if ship_in_space and level == get_region_sequence_length() - 1: + return VENUS_ARRIVAL_DIALOG_PATH + return "" \ No newline at end of file diff --git a/common/game_data/scripts/story/mercury_story_step.gd.uid b/common/game_data/scripts/story/mercury_story_step.gd.uid new file mode 100644 index 0000000..e2fca63 --- /dev/null +++ b/common/game_data/scripts/story/mercury_story_step.gd.uid @@ -0,0 +1 @@ +uid://cni314l8gb0qx diff --git a/common/game_data/scripts/story/story_step.gd b/common/game_data/scripts/story/story_step.gd new file mode 100644 index 0000000..10d441c --- /dev/null +++ b/common/game_data/scripts/story/story_step.gd @@ -0,0 +1,67 @@ +@abstract +extends Resource +class_name StoryStep + +#region ------------------ Story ------------------ + +@abstract func get_respawn_scene() -> Scene + +@abstract func get_destination_text() -> String + +func get_destination_scene() -> Scene: + return BoreaScene.new() + +func get_run_progress(level : int) -> int: + return get_region_sequence_length() - level + +func get_ship_dialog_path(_level : int, _ship_in_space := true) -> String: + return "" +#region ------------------ Run ------------------ + +func is_run_finished(level : int) -> bool: + return level == get_region_sequence_length() + +func get_region_sequence_length() -> int: + return 6 + +func get_first_vending_machine_occurence(_level : int) -> int: + return 2 + +func get_vending_machine_occurence(_level : int) -> int: + return 4 + +func get_challenge_chance(_level : int) -> float: + return 0.3 + +func get_run_point_number(level : int) -> int: + if is_run_finished(level): + return 1 + return 2 + +func get_objective_for_region(level : int) -> int: + match level: + 0: return 1 + 1: return 8 + 2: return 10 + 3: return 15 + 4: return 20 + 5: return 30 + _: return get_objective_for_region(level-1) + (level-3) * 5 + +func get_story_modifiers_for_region(level : int) -> Array[RegionModifier]: + var modifiers : Array[RegionModifier] = [] + if is_run_finished(level): + var dest_mod = DestinationModifier.new() + dest_mod.destination_scene = get_destination_scene() + modifiers.append(dest_mod) + return modifiers + +func need_gameplay_modifier(level : int): + if is_run_finished(level): + return false + return true + +func _on_finish(): + GameInfo.game_data.incubator_used = [] + GameInfo.game_data.dead_orchid_position = Vector3.ZERO + GameInfo.game_data.dead_orchid_rotation = Vector3.ZERO diff --git a/common/game_data/scripts/story/story_step.gd.uid b/common/game_data/scripts/story/story_step.gd.uid new file mode 100644 index 0000000..2bc63c4 --- /dev/null +++ b/common/game_data/scripts/story/story_step.gd.uid @@ -0,0 +1 @@ +uid://djyuru5v3rgbb diff --git a/common/game_data/scripts/story/tutorial_story_step.gd b/common/game_data/scripts/story/tutorial_story_step.gd new file mode 100644 index 0000000..805bc3f --- /dev/null +++ b/common/game_data/scripts/story/tutorial_story_step.gd @@ -0,0 +1,24 @@ +extends StoryStep +class_name TutorialStoryStep + +const INTRO_DIALOG = "res://dialogs/timelines/tutorial/demeter_intro.dtl" + +func get_respawn_scene() -> Scene: + return AstraScene.new() + +func get_destination_text() -> String: + return "" + +func get_region_sequence_length() -> int: + return 1 + +func get_destination_scene() -> Scene: return null + +func get_story_modifiers_for_region(_n : int) -> Array[RegionModifier]: + return [ + TutorialModifier.new() + ] + +func _on_finish(): + pass + diff --git a/common/game_data/scripts/story/tutorial_story_step.gd.uid b/common/game_data/scripts/story/tutorial_story_step.gd.uid new file mode 100644 index 0000000..cc71ee6 --- /dev/null +++ b/common/game_data/scripts/story/tutorial_story_step.gd.uid @@ -0,0 +1 @@ +uid://c5xggvi0aifed diff --git a/common/game_info/game_info.gd b/common/game_info/game_info.gd index 321bcb4..d54c3c6 100644 --- a/common/game_info/game_info.gd +++ b/common/game_info/game_info.gd @@ -1,6 +1,6 @@ extends Node -const SAVE_GAME_LOCATION = "user://stw_demo_save.tres" +const SAVE_GAME_LOCATION = "user://stw_beta_save.tres" const SAVE_SETTINGS_LOCATION = "user://stw_settings.tres" var game_loaded = false @@ -14,17 +14,19 @@ var game_data : GameData : var settings_data : SettingsData +var current_dialog_path : String + func load_game_data() -> GameData: + game_data = null if ResourceLoader.exists(SAVE_GAME_LOCATION): - game_loaded = true - game_data = ResourceLoader.load(SAVE_GAME_LOCATION).duplicate_deep() - else : - game_data = GameData.new() - save_game_data() return game_data +func start_game_data(): + game_data = GameData.new() + save_game_data() + func save_game_data(): if game_data: ResourceSaver.save(game_data, SAVE_GAME_LOCATION) @@ -42,10 +44,6 @@ func save_settings(): if settings_data: ResourceSaver.save(settings_data, SAVE_SETTINGS_LOCATION) -func restart_game_data(): - game_data = GameData.new() - save_game_data() - func _init(): load_game_data() load_settings_data() @@ -57,6 +55,7 @@ func _init(): func _ready(): Dialogic.timeline_started.connect(_on_timeline_started) + Dialogic.timeline_ended.connect(_on_timeline_ended) func _on_settings_video_changed(s : SettingsData): update_video_settings(s) @@ -70,9 +69,11 @@ func _on_settings_sound_changed(s : SettingsData): AudioServer.set_bus_volume_db(SettingsData.AMBIANCE_BUS_ID, linear_to_db(s.ambiance_volume)) func _on_timeline_started(): - var dialog_path = Dialogic.current_timeline.resource_path - if not dialog_path in game_data.dialogs_done: - game_data.dialogs_done.append(dialog_path) + current_dialog_path = Dialogic.current_timeline.resource_path + +func _on_timeline_ended(): + if not current_dialog_path in game_data.dialogs_done: + game_data.dialogs_done.append(current_dialog_path) save_game_data() func update_language_settings(s : SettingsData = settings_data): diff --git a/common/icons/atom.svg b/common/icons/atom.svg new file mode 100644 index 0000000..d48ea9a --- /dev/null +++ b/common/icons/atom.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/atom.svg.import b/common/icons/atom.svg.import new file mode 100644 index 0000000..f854f7f --- /dev/null +++ b/common/icons/atom.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://n5ohgm4odri5" +path="res://.godot/imported/atom.svg-203f467e4f45f7544a18f8b0644aa19a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/atom.svg" +dest_files=["res://.godot/imported/atom.svg-203f467e4f45f7544a18f8b0644aa19a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/bar.png b/common/icons/bar.png deleted file mode 100644 index 8bb60a4..0000000 Binary files a/common/icons/bar.png and /dev/null differ diff --git a/common/icons/biohazard.svg b/common/icons/biohazard.svg new file mode 100644 index 0000000..e545146 --- /dev/null +++ b/common/icons/biohazard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/biohazard.svg.import b/common/icons/biohazard.svg.import new file mode 100644 index 0000000..8301d74 --- /dev/null +++ b/common/icons/biohazard.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://caljk5xauct42" +path="res://.godot/imported/biohazard.svg-6ba6923078e547162e6b4b8cb587956e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/biohazard.svg" +dest_files=["res://.godot/imported/biohazard.svg-6ba6923078e547162e6b4b8cb587956e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/book-2.svg b/common/icons/book-2.svg new file mode 100644 index 0000000..03bc2a4 --- /dev/null +++ b/common/icons/book-2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/book-2.svg.import b/common/icons/book-2.svg.import new file mode 100644 index 0000000..27f6b4a --- /dev/null +++ b/common/icons/book-2.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b75k12a4wc5t4" +path="res://.godot/imported/book-2.svg-546eaea0c5e445cb4b685ffef3a57787.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/book-2.svg" +dest_files=["res://.godot/imported/book-2.svg-546eaea0c5e445cb4b685ffef3a57787.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/building-factory-2.svg b/common/icons/building-factory-2.svg new file mode 100644 index 0000000..0d6c386 --- /dev/null +++ b/common/icons/building-factory-2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/building-factory-2.svg.import b/common/icons/building-factory-2.svg.import new file mode 100644 index 0000000..90cff5c --- /dev/null +++ b/common/icons/building-factory-2.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://b752eqq4cm7ve" +path="res://.godot/imported/building-factory-2.svg-a4b206f3f458a0db1cc24ed3ca16f845.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/building-factory-2.svg" +dest_files=["res://.godot/imported/building-factory-2.svg-a4b206f3f458a0db1cc24ed3ca16f845.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/building-store.svg b/common/icons/building-store.svg new file mode 100644 index 0000000..be180b5 --- /dev/null +++ b/common/icons/building-store.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/building-store.svg.import b/common/icons/building-store.svg.import new file mode 100644 index 0000000..40c790c --- /dev/null +++ b/common/icons/building-store.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bmersnaoira20" +path="res://.godot/imported/building-store.svg-abd618fb337e10bf0dc4662f37b351cb.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/building-store.svg" +dest_files=["res://.godot/imported/building-store.svg-abd618fb337e10bf0dc4662f37b351cb.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/butterfly.svg b/common/icons/butterfly.svg new file mode 100644 index 0000000..26b8ce5 --- /dev/null +++ b/common/icons/butterfly.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/butterfly.svg.import b/common/icons/butterfly.svg.import new file mode 100644 index 0000000..663064c --- /dev/null +++ b/common/icons/butterfly.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://tsa4qv4ublnj" +path="res://.godot/imported/butterfly.svg-198b5686ec49ba6fffeb6c810c104b0d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/butterfly.svg" +dest_files=["res://.godot/imported/butterfly.svg-198b5686ec49ba6fffeb6c810c104b0d.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/cactus.svg b/common/icons/cactus.svg new file mode 100644 index 0000000..bf82365 --- /dev/null +++ b/common/icons/cactus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/cactus.svg.import b/common/icons/cactus.svg.import new file mode 100644 index 0000000..13ae302 --- /dev/null +++ b/common/icons/cactus.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dy1lkhowfs40l" +path="res://.godot/imported/cactus.svg-bf980582753f79920261a0227d753414.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/cactus.svg" +dest_files=["res://.godot/imported/cactus.svg-bf980582753f79920261a0227d753414.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/carambola.svg b/common/icons/carambola.svg new file mode 100644 index 0000000..ada4f51 --- /dev/null +++ b/common/icons/carambola.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/carambola.svg.import b/common/icons/carambola.svg.import new file mode 100644 index 0000000..fa72c67 --- /dev/null +++ b/common/icons/carambola.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bi5jo6pf0acjb" +path="res://.godot/imported/carambola.svg-5e6376705de1e490bd48f22ac6d19a49.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/carambola.svg" +dest_files=["res://.godot/imported/carambola.svg-5e6376705de1e490bd48f22ac6d19a49.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/check.svg.import b/common/icons/check.svg.import index e5a6228..6855969 100644 --- a/common/icons/check.svg.import +++ b/common/icons/check.svg.import @@ -3,19 +3,20 @@ importer="texture" type="CompressedTexture2D" uid="uid://80gifgp26h2g" -path="res://.godot/imported/check.svg-47a7b8486ac6d60efdca46538f2829a9.ctex" +path.s3tc="res://.godot/imported/check.svg-47a7b8486ac6d60efdca46538f2829a9.s3tc.ctex" metadata={ -"vram_texture": false +"imported_formats": ["s3tc_bptc"], +"vram_texture": true } [deps] source_file="res://common/icons/check.svg" -dest_files=["res://.godot/imported/check.svg-47a7b8486ac6d60efdca46538f2829a9.ctex"] +dest_files=["res://.godot/imported/check.svg-47a7b8486ac6d60efdca46538f2829a9.s3tc.ctex"] [params] -compress/mode=0 +compress/mode=2 compress/high_quality=false compress/lossy_quality=0.7 compress/uastc_level=0 @@ -23,7 +24,7 @@ compress/rdo_quality_loss=0.0 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" @@ -37,7 +38,7 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=1 +detect_3d/compress_to=0 svg/scale=2.0 editor/scale_with_editor_scale=false editor/convert_colors_with_editor_theme=false diff --git a/common/icons/clock.svg b/common/icons/clock.svg new file mode 100644 index 0000000..daaf2f2 --- /dev/null +++ b/common/icons/clock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/clock.svg.import b/common/icons/clock.svg.import new file mode 100644 index 0000000..fa83bda --- /dev/null +++ b/common/icons/clock.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dhy4ewvqvlxyi" +path="res://.godot/imported/clock.svg-730a4e7a10a1bf85842bb9f2c25ee2d8.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/clock.svg" +dest_files=["res://.godot/imported/clock.svg-730a4e7a10a1bf85842bb9f2c25ee2d8.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/cloud-rain.svg b/common/icons/cloud-rain.svg new file mode 100644 index 0000000..0ee9f28 --- /dev/null +++ b/common/icons/cloud-rain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/cloud-rain.svg.import b/common/icons/cloud-rain.svg.import new file mode 100644 index 0000000..aad2505 --- /dev/null +++ b/common/icons/cloud-rain.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ce3hclmo0jcoh" +path="res://.godot/imported/cloud-rain.svg-80379b0936dff4583ecdd239d916ebab.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/cloud-rain.svg" +dest_files=["res://.godot/imported/cloud-rain.svg-80379b0936dff4583ecdd239d916ebab.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/cloud.svg b/common/icons/cloud.svg new file mode 100644 index 0000000..ad52114 --- /dev/null +++ b/common/icons/cloud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/cloud.svg.import b/common/icons/cloud.svg.import new file mode 100644 index 0000000..6ab5be8 --- /dev/null +++ b/common/icons/cloud.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ca5ay65v2piar" +path="res://.godot/imported/cloud.svg-3c8ab957b71c8c1031955ba13dd97127.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/cloud.svg" +dest_files=["res://.godot/imported/cloud.svg-3c8ab957b71c8c1031955ba13dd97127.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/device-floppy.svg b/common/icons/device-floppy.svg new file mode 100644 index 0000000..7502194 --- /dev/null +++ b/common/icons/device-floppy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/device-floppy.svg.import b/common/icons/device-floppy.svg.import new file mode 100644 index 0000000..dbcbd6c --- /dev/null +++ b/common/icons/device-floppy.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d3k7rl7nbp7yx" +path="res://.godot/imported/device-floppy.svg-5df3820d4d7726a3946e4ca79c467896.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/device-floppy.svg" +dest_files=["res://.godot/imported/device-floppy.svg-5df3820d4d7726a3946e4ca79c467896.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/droplet-off.svg b/common/icons/droplet-off.svg new file mode 100644 index 0000000..d6d461e --- /dev/null +++ b/common/icons/droplet-off.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/droplet-off.svg.import b/common/icons/droplet-off.svg.import new file mode 100644 index 0000000..7f5f680 --- /dev/null +++ b/common/icons/droplet-off.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dei0604x87idg" +path="res://.godot/imported/droplet-off.svg-e7f02e8378325ae2ff9295f8e574f011.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/droplet-off.svg" +dest_files=["res://.godot/imported/droplet-off.svg-e7f02e8378325ae2ff9295f8e574f011.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/droplet.svg b/common/icons/droplet.svg new file mode 100644 index 0000000..8d38a60 --- /dev/null +++ b/common/icons/droplet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/droplet.svg.import b/common/icons/droplet.svg.import new file mode 100644 index 0000000..2095fe8 --- /dev/null +++ b/common/icons/droplet.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bgl738ihjyow3" +path="res://.godot/imported/droplet.svg-de920737edb24e802e9cdd43f16401b4.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/droplet.svg" +dest_files=["res://.godot/imported/droplet.svg-de920737edb24e802e9cdd43f16401b4.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/droplets.svg b/common/icons/droplets.svg new file mode 100644 index 0000000..fed82eb --- /dev/null +++ b/common/icons/droplets.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/droplets.svg.import b/common/icons/droplets.svg.import new file mode 100644 index 0000000..10c8cae --- /dev/null +++ b/common/icons/droplets.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://el06htgr2pda" +path="res://.godot/imported/droplets.svg-764db2a63540077d3798513e95cb87e1.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/droplets.svg" +dest_files=["res://.godot/imported/droplets.svg-764db2a63540077d3798513e95cb87e1.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/flower.svg b/common/icons/flower.svg new file mode 100644 index 0000000..8a8beae --- /dev/null +++ b/common/icons/flower.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/flower.svg.import b/common/icons/flower.svg.import new file mode 100644 index 0000000..b18e63c --- /dev/null +++ b/common/icons/flower.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ba2prrl2gbmwr" +path="res://.godot/imported/flower.svg-5394846372d38d459cce02036c0aa30c.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/flower.svg" +dest_files=["res://.godot/imported/flower.svg-5394846372d38d459cce02036c0aa30c.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/globe.svg b/common/icons/globe.svg new file mode 100644 index 0000000..89592c5 --- /dev/null +++ b/common/icons/globe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/globe.svg.import b/common/icons/globe.svg.import new file mode 100644 index 0000000..ec3a802 --- /dev/null +++ b/common/icons/globe.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://sdrr43mek1cl" +path="res://.godot/imported/globe.svg-e211d89cbdcd4219d25d8110f0497347.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/globe.svg" +dest_files=["res://.godot/imported/globe.svg-e211d89cbdcd4219d25d8110f0497347.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/grain.svg b/common/icons/grain.svg new file mode 100644 index 0000000..ba087c4 --- /dev/null +++ b/common/icons/grain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/grain.svg.import b/common/icons/grain.svg.import new file mode 100644 index 0000000..5a9f52d --- /dev/null +++ b/common/icons/grain.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dm87fciksxunm" +path="res://.godot/imported/grain.svg-e272947e9d3765123e0cc00495d206dd.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/grain.svg" +dest_files=["res://.godot/imported/grain.svg-e272947e9d3765123e0cc00495d206dd.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/hand-grab.svg b/common/icons/hand-grab.svg new file mode 100644 index 0000000..02034eb --- /dev/null +++ b/common/icons/hand-grab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/entities/plants/assets/sprites/maias/mature.png.import b/common/icons/hand-grab.svg.import similarity index 67% rename from entities/plants/assets/sprites/maias/mature.png.import rename to common/icons/hand-grab.svg.import index 51eef52..9a5641e 100644 --- a/entities/plants/assets/sprites/maias/mature.png.import +++ b/common/icons/hand-grab.svg.import @@ -2,8 +2,8 @@ importer="texture" type="CompressedTexture2D" -uid="uid://d3apfwbqsg5ha" -path.s3tc="res://.godot/imported/mature.png-8766aea5da569488db27850c55c8418b.s3tc.ctex" +uid="uid://4dwxhvjo0yye" +path.s3tc="res://.godot/imported/hand-grab.svg-aedc27673ee0414dc711257574ee9c66.s3tc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://entities/plants/assets/sprites/maias/mature.png" -dest_files=["res://.godot/imported/mature.png-8766aea5da569488db27850c55c8418b.s3tc.ctex"] +source_file="res://common/icons/hand-grab.svg" +dest_files=["res://.godot/imported/hand-grab.svg-aedc27673ee0414dc711257574ee9c66.s3tc.ctex"] [params] @@ -39,3 +39,6 @@ process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 detect_3d/compress_to=0 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/hand-stop.svg.import b/common/icons/hand-stop.svg.import index eed0a38..df1969d 100644 --- a/common/icons/hand-stop.svg.import +++ b/common/icons/hand-stop.svg.import @@ -3,19 +3,20 @@ importer="texture" type="CompressedTexture2D" uid="uid://3slhocr5wy3w" -path="res://.godot/imported/hand-stop.svg-bc0d0e986bcb4b50bdd5686b5bff814b.ctex" +path.s3tc="res://.godot/imported/hand-stop.svg-bc0d0e986bcb4b50bdd5686b5bff814b.s3tc.ctex" metadata={ -"vram_texture": false +"imported_formats": ["s3tc_bptc"], +"vram_texture": true } [deps] source_file="res://common/icons/hand-stop.svg" -dest_files=["res://.godot/imported/hand-stop.svg-bc0d0e986bcb4b50bdd5686b5bff814b.ctex"] +dest_files=["res://.godot/imported/hand-stop.svg-bc0d0e986bcb4b50bdd5686b5bff814b.s3tc.ctex"] [params] -compress/mode=0 +compress/mode=2 compress/high_quality=false compress/lossy_quality=0.7 compress/uastc_level=0 @@ -23,7 +24,7 @@ compress/rdo_quality_loss=0.0 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" @@ -37,7 +38,7 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=1 +detect_3d/compress_to=0 svg/scale=2.0 editor/scale_with_editor_scale=false editor/convert_colors_with_editor_theme=false diff --git a/common/icons/help-hexagon.svg b/common/icons/help-hexagon.svg new file mode 100644 index 0000000..f73f8db --- /dev/null +++ b/common/icons/help-hexagon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/help-hexagon.svg.import b/common/icons/help-hexagon.svg.import new file mode 100644 index 0000000..d68e65c --- /dev/null +++ b/common/icons/help-hexagon.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cwewx7cdy085h" +path="res://.godot/imported/help-hexagon.svg-b310627b5cc818562c34fa1902bdafb7.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/help-hexagon.svg" +dest_files=["res://.godot/imported/help-hexagon.svg-b310627b5cc818562c34fa1902bdafb7.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/hexagon-line.svg b/common/icons/hexagon-line.svg new file mode 100644 index 0000000..7c7f22e --- /dev/null +++ b/common/icons/hexagon-line.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/hexagon-line.svg.import b/common/icons/hexagon-line.svg.import new file mode 100644 index 0000000..c193fa6 --- /dev/null +++ b/common/icons/hexagon-line.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://m0x75rx85b0k" +path="res://.godot/imported/hexagon-line.svg-15ab5b27660e96366bed1c81835a7ce9.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/hexagon-line.svg" +dest_files=["res://.godot/imported/hexagon-line.svg-15ab5b27660e96366bed1c81835a7ce9.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/hexagon-lock.svg b/common/icons/hexagon-lock.svg new file mode 100644 index 0000000..0d35904 --- /dev/null +++ b/common/icons/hexagon-lock.svg @@ -0,0 +1,32 @@ + + diff --git a/common/icons/hexagon-lock.svg.import b/common/icons/hexagon-lock.svg.import new file mode 100644 index 0000000..68f8ded --- /dev/null +++ b/common/icons/hexagon-lock.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cul11ab04vf8i" +path="res://.godot/imported/hexagon-lock.svg-7bf497f4529e47638207a0a00b360c9a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/hexagon-lock.svg" +dest_files=["res://.godot/imported/hexagon-lock.svg-7bf497f4529e47638207a0a00b360c9a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/hexagon.svg b/common/icons/hexagon.svg new file mode 100644 index 0000000..4de5564 --- /dev/null +++ b/common/icons/hexagon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/hexagon.svg.import b/common/icons/hexagon.svg.import new file mode 100644 index 0000000..2c09417 --- /dev/null +++ b/common/icons/hexagon.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cgt4n1xwn4dc2" +path="res://.godot/imported/hexagon.svg-116e9b9fafdb9986d61b02877aeb42f7.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/hexagon.svg" +dest_files=["res://.godot/imported/hexagon.svg-116e9b9fafdb9986d61b02877aeb42f7.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/infinity.svg b/common/icons/infinity.svg new file mode 100644 index 0000000..fa18099 --- /dev/null +++ b/common/icons/infinity.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/infinity.svg.import b/common/icons/infinity.svg.import new file mode 100644 index 0000000..78aa29a --- /dev/null +++ b/common/icons/infinity.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dbv5hm7lyi1f6" +path="res://.godot/imported/infinity.svg-942e6ffb356637e9d103947d1048dac3.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/infinity.svg" +dest_files=["res://.godot/imported/infinity.svg-942e6ffb356637e9d103947d1048dac3.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/lock.svg b/common/icons/lock.svg new file mode 100644 index 0000000..fb5b1bf --- /dev/null +++ b/common/icons/lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/lock.svg.import b/common/icons/lock.svg.import new file mode 100644 index 0000000..2569e3e --- /dev/null +++ b/common/icons/lock.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://2d2vv0sj6lq5" +path="res://.godot/imported/lock.svg-60e6fe68b0308af207c28dcac632b24d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/lock.svg" +dest_files=["res://.godot/imported/lock.svg-60e6fe68b0308af207c28dcac632b24d.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/moon.svg b/common/icons/moon.svg new file mode 100644 index 0000000..378bebb --- /dev/null +++ b/common/icons/moon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/moon.svg.import b/common/icons/moon.svg.import new file mode 100644 index 0000000..4f8c60f --- /dev/null +++ b/common/icons/moon.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://gtbfays7cdor" +path="res://.godot/imported/moon.svg-9c4e8477f53c467a6599cc3658d22d46.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/moon.svg" +dest_files=["res://.godot/imported/moon.svg-9c4e8477f53c467a6599cc3658d22d46.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/mountain.svg b/common/icons/mountain.svg new file mode 100644 index 0000000..aba3a6e --- /dev/null +++ b/common/icons/mountain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/mountain.svg.import b/common/icons/mountain.svg.import new file mode 100644 index 0000000..3f58c47 --- /dev/null +++ b/common/icons/mountain.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://4o0itd0ofkcj" +path="res://.godot/imported/mountain.svg-73c6f0a7455c030d9081009331506dc0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/mountain.svg" +dest_files=["res://.godot/imported/mountain.svg-73c6f0a7455c030d9081009331506dc0.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/radioactive.svg b/common/icons/radioactive.svg new file mode 100644 index 0000000..9214c16 --- /dev/null +++ b/common/icons/radioactive.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/radioactive.svg.import b/common/icons/radioactive.svg.import new file mode 100644 index 0000000..3419a52 --- /dev/null +++ b/common/icons/radioactive.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://baughrx6x5sx2" +path="res://.godot/imported/radioactive.svg-826ebf1689bc47cf482da642b68adf02.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/radioactive.svg" +dest_files=["res://.godot/imported/radioactive.svg-826ebf1689bc47cf482da642b68adf02.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/recharge.svg b/common/icons/recharge.svg new file mode 100644 index 0000000..caceaa4 --- /dev/null +++ b/common/icons/recharge.svg @@ -0,0 +1,57 @@ + + + + + + + + + diff --git a/common/icons/recharge.svg.import b/common/icons/recharge.svg.import new file mode 100644 index 0000000..4cefa85 --- /dev/null +++ b/common/icons/recharge.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cymrmhsihkj44" +path="res://.godot/imported/recharge.svg-309dcfdff58b592a40538debd042f5c5.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/recharge.svg" +dest_files=["res://.godot/imported/recharge.svg-309dcfdff58b592a40538debd042f5c5.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/route.svg b/common/icons/route.svg new file mode 100644 index 0000000..d7bd6e8 --- /dev/null +++ b/common/icons/route.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/route.svg.import b/common/icons/route.svg.import new file mode 100644 index 0000000..a14a7c3 --- /dev/null +++ b/common/icons/route.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bvk6wcfh00b16" +path="res://.godot/imported/route.svg-25a68768f285f5083e93f62aae40bb89.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/route.svg" +dest_files=["res://.godot/imported/route.svg-25a68768f285f5083e93f62aae40bb89.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/seeds.svg b/common/icons/seeds.svg new file mode 100644 index 0000000..901cdd6 --- /dev/null +++ b/common/icons/seeds.svg @@ -0,0 +1,60 @@ + + + + + + + + + diff --git a/common/icons/seeds.svg.import b/common/icons/seeds.svg.import new file mode 100644 index 0000000..491da77 --- /dev/null +++ b/common/icons/seeds.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c2qg7ikkylfv4" +path="res://.godot/imported/seeds.svg-0b55654a8dffa8660c2d2b7ad24c47e7.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/seeds.svg" +dest_files=["res://.godot/imported/seeds.svg-0b55654a8dffa8660c2d2b7ad24c47e7.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/server-2.svg b/common/icons/server-2.svg new file mode 100644 index 0000000..6ce54e1 --- /dev/null +++ b/common/icons/server-2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/server-2.svg.import b/common/icons/server-2.svg.import new file mode 100644 index 0000000..7bb0529 --- /dev/null +++ b/common/icons/server-2.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dg00xnpp6ixls" +path="res://.godot/imported/server-2.svg-157f45e1edc7f985a184d2ca4c7433c5.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/server-2.svg" +dest_files=["res://.godot/imported/server-2.svg-157f45e1edc7f985a184d2ca4c7433c5.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/shield.svg b/common/icons/shield.svg new file mode 100644 index 0000000..1c83bed --- /dev/null +++ b/common/icons/shield.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/shield.svg.import b/common/icons/shield.svg.import new file mode 100644 index 0000000..0894d0a --- /dev/null +++ b/common/icons/shield.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bv4xtl2keof1u" +path="res://.godot/imported/shield.svg-888a496094f0a578c41043b150d77852.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/shield.svg" +dest_files=["res://.godot/imported/shield.svg-888a496094f0a578c41043b150d77852.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/shovel.svg.import b/common/icons/shovel.svg.import index 7d929f6..033818a 100644 --- a/common/icons/shovel.svg.import +++ b/common/icons/shovel.svg.import @@ -3,19 +3,20 @@ importer="texture" type="CompressedTexture2D" uid="uid://bf6nw4onkhavr" -path="res://.godot/imported/shovel.svg-094c34e330000cc8ea425d6acf7556bd.ctex" +path.s3tc="res://.godot/imported/shovel.svg-094c34e330000cc8ea425d6acf7556bd.s3tc.ctex" metadata={ -"vram_texture": false +"imported_formats": ["s3tc_bptc"], +"vram_texture": true } [deps] source_file="res://common/icons/shovel.svg" -dest_files=["res://.godot/imported/shovel.svg-094c34e330000cc8ea425d6acf7556bd.ctex"] +dest_files=["res://.godot/imported/shovel.svg-094c34e330000cc8ea425d6acf7556bd.s3tc.ctex"] [params] -compress/mode=0 +compress/mode=2 compress/high_quality=false compress/lossy_quality=0.7 compress/uastc_level=0 @@ -23,7 +24,7 @@ compress/rdo_quality_loss=0.0 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" @@ -37,7 +38,7 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=1 +detect_3d/compress_to=0 svg/scale=2.0 editor/scale_with_editor_scale=false editor/convert_colors_with_editor_theme=false diff --git a/common/icons/sun.svg b/common/icons/sun.svg new file mode 100644 index 0000000..67c8730 --- /dev/null +++ b/common/icons/sun.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/sun.svg.import b/common/icons/sun.svg.import new file mode 100644 index 0000000..f820a59 --- /dev/null +++ b/common/icons/sun.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dkxkrerjh3xw3" +path="res://.godot/imported/sun.svg-6c9addda378e79701e69779b5a8164bb.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/sun.svg" +dest_files=["res://.godot/imported/sun.svg-6c9addda378e79701e69779b5a8164bb.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/tornado.svg b/common/icons/tornado.svg new file mode 100644 index 0000000..da7f297 --- /dev/null +++ b/common/icons/tornado.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/tornado.svg.import b/common/icons/tornado.svg.import new file mode 100644 index 0000000..8641668 --- /dev/null +++ b/common/icons/tornado.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://nmuoxgwcvdd2" +path="res://.godot/imported/tornado.svg-b6c4302162b03c085319c8d635902c33.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/tornado.svg" +dest_files=["res://.godot/imported/tornado.svg-b6c4302162b03c085319c8d635902c33.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/tree.svg b/common/icons/tree.svg new file mode 100644 index 0000000..aaa181a --- /dev/null +++ b/common/icons/tree.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/tree.svg.import b/common/icons/tree.svg.import new file mode 100644 index 0000000..223f09a --- /dev/null +++ b/common/icons/tree.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bn2wkun71ocun" +path="res://.godot/imported/tree.svg-950893a0f1837215730a8a16c385f049.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/tree.svg" +dest_files=["res://.godot/imported/tree.svg-950893a0f1837215730a8a16c385f049.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/virus.svg b/common/icons/virus.svg new file mode 100644 index 0000000..8b0b8e8 --- /dev/null +++ b/common/icons/virus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/virus.svg.import b/common/icons/virus.svg.import new file mode 100644 index 0000000..6ca0553 --- /dev/null +++ b/common/icons/virus.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cual1pde6keom" +path="res://.godot/imported/virus.svg-59f03f7d0b705bff456c355a03b2fd98.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/virus.svg" +dest_files=["res://.godot/imported/virus.svg-59f03f7d0b705bff456c355a03b2fd98.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/wave-sine.svg b/common/icons/wave-sine.svg new file mode 100644 index 0000000..97bad01 --- /dev/null +++ b/common/icons/wave-sine.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/wave-sine.svg.import b/common/icons/wave-sine.svg.import new file mode 100644 index 0000000..6cf9c64 --- /dev/null +++ b/common/icons/wave-sine.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c15ith3niu7sa" +path="res://.godot/imported/wave-sine.svg-af18e7f57640d33da7bef035e7276303.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/wave-sine.svg" +dest_files=["res://.godot/imported/wave-sine.svg-af18e7f57640d33da7bef035e7276303.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/icons/wind.svg b/common/icons/wind.svg new file mode 100644 index 0000000..1254017 --- /dev/null +++ b/common/icons/wind.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/common/icons/wind.svg.import b/common/icons/wind.svg.import new file mode 100644 index 0000000..dacedfd --- /dev/null +++ b/common/icons/wind.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bingjfdcqqd2q" +path="res://.godot/imported/wind.svg-b1263ce4dc951f76203e96e68da496a8.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://common/icons/wind.svg" +dest_files=["res://.godot/imported/wind.svg-b1263ce4dc951f76203e96e68da496a8.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/common/plant_texture_builder/plant_texture_builder.tscn b/common/plant_texture_builder/plant_texture_builder.tscn index 6986e5b..46376e8 100644 --- a/common/plant_texture_builder/plant_texture_builder.tscn +++ b/common/plant_texture_builder/plant_texture_builder.tscn @@ -2,50 +2,67 @@ [ext_resource type="Script" uid="uid://dt2ip3pw2cboy" path="res://entities/plants/scripts/texture_builder/plant_texture_builder.gd" id="1_s8rsj"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_cfiqo"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="3_cynqk"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="4_b21au"] [ext_resource type="Resource" uid="uid://7hrdkl6bf3o4" path="res://entities/plants/resources/plant_parts/Branch1.tres" id="4_ggud5"] -[ext_resource type="Resource" uid="uid://bgh8a4xwc5stw" path="res://entities/plants/resources/plant_parts/Base2.tres" id="5_21cjy"] +[ext_resource type="Resource" uid="uid://d05ulm22k31w8" path="res://entities/plants/resources/plant_parts/Base2.tres" id="4_ron2q"] +[ext_resource type="Resource" uid="uid://bfyafiewcrjln" path="res://entities/plants/resources/plant_parts/Base1.tres" id="5_5fbyu"] +[ext_resource type="Resource" uid="uid://d2vdf2sth2xjm" path="res://entities/plants/resources/plant_parts/Base3.tres" id="5_6raaj"] [ext_resource type="Resource" uid="uid://ceisi5yyie7to" path="res://entities/plants/resources/plant_parts/Branch2.tres" id="5_ufbqh"] [ext_resource type="Resource" uid="uid://cxiu8frk04b5i" path="res://entities/plants/resources/plant_parts/Branch3.tres" id="6_jbu3q"] [ext_resource type="Resource" uid="uid://53p5g07e3pb4" path="res://entities/plants/resources/plant_parts/Branch4.tres" id="7_21cjy"] [ext_resource type="Resource" uid="uid://cyfyodtfxne1w" path="res://entities/plants/resources/plant_parts/Branch5.tres" id="8_qm7aw"] [ext_resource type="Resource" uid="uid://cuvtf4y1dspcp" path="res://entities/plants/resources/plant_parts/Branch6.tres" id="9_3e4c1"] -[ext_resource type="Resource" uid="uid://wgmxpk52rg7x" path="res://entities/plants/resources/plant_parts/LeafA1.tres" id="11_fc4k8"] -[ext_resource type="Resource" uid="uid://d2y7o2hc6ffei" path="res://entities/plants/resources/plant_parts/Branch11.tres" id="11_hvwgo"] -[ext_resource type="Resource" uid="uid://cbejb0uvdke7k" path="res://entities/plants/resources/plant_parts/LeafA2.tres" id="12_1b4fr"] -[ext_resource type="Resource" uid="uid://civ4gr1c2pq7g" path="res://entities/plants/resources/plant_parts/Branch12.tres" id="12_npk80"] -[ext_resource type="Resource" uid="uid://dujxttu80g0lo" path="res://entities/plants/resources/plant_parts/LeafA3.tres" id="13_ggcwy"] -[ext_resource type="Resource" uid="uid://bqfocs6f0iypo" path="res://entities/plants/resources/plant_parts/Branch13.tres" id="13_hyb2i"] -[ext_resource type="Resource" uid="uid://drml5dm8i3j3a" path="res://entities/plants/resources/plant_parts/Branch14.tres" id="14_4gk8a"] +[ext_resource type="Resource" uid="uid://dcjpei6xuiswp" path="res://entities/plants/resources/plant_parts/LeafE5.tres" id="10_5job5"] +[ext_resource type="Resource" uid="uid://85bwx2tdjx0h" path="res://entities/plants/resources/plant_parts/LeafE7.tres" id="12_b21au"] +[ext_resource type="Resource" uid="uid://6jnbms553dyd" path="res://entities/plants/resources/plant_parts/Branch7.tres" id="12_yjh7s"] +[ext_resource type="Resource" uid="uid://cowkewtw2lg4i" path="res://entities/plants/resources/plant_parts/FlowerA1.tres" id="13_17ac3"] [ext_resource type="Resource" uid="uid://bgv3nb10t6u3y" path="res://entities/plants/resources/plant_parts/LeafF1.tres" id="14_8r35x"] -[ext_resource type="Resource" uid="uid://bix3qwmsvuxs4" path="res://entities/plants/resources/plant_parts/LeafA4.tres" id="14_15wue"] +[ext_resource type="Resource" uid="uid://drn8vt4sp7u6q" path="res://entities/plants/resources/plant_parts/FlowerA2.tres" id="14_fuh2b"] [ext_resource type="Resource" uid="uid://c31h25xdll8si" path="res://entities/plants/resources/plant_parts/FlowerD1.tres" id="15_3ti7v"] +[ext_resource type="Resource" uid="uid://b3oqeugtrtera" path="res://entities/plants/resources/plant_parts/FlowerA3.tres" id="15_28gvc"] [ext_resource type="Resource" uid="uid://be17y7clvf88e" path="res://entities/plants/resources/plant_parts/LeafE1.tres" id="15_p2blu"] [ext_resource type="Resource" uid="uid://bkgw3wmoam10n" path="res://entities/plants/resources/plant_parts/LeafF2.tres" id="15_rbd7l"] +[ext_resource type="Resource" uid="uid://ydvnxfnkbr2g" path="res://entities/plants/resources/plant_parts/FlowerA4.tres" id="16_1cwvj"] [ext_resource type="Script" uid="uid://cfjd8jelpm8dt" path="res://entities/plants/scripts/texture_builder/part_mutation_association.gd" id="16_c3tk3"] [ext_resource type="Resource" uid="uid://r5mspvasrq6y" path="res://entities/plants/resources/plant_parts/FlowerD2.tres" id="16_cpf4r"] [ext_resource type="Resource" uid="uid://m8j2gfumw11w" path="res://entities/plants/resources/plant_parts/LeafF3.tres" id="16_nfxo0"] [ext_resource type="Resource" uid="uid://dw7wdihxxy0uf" path="res://entities/plants/resources/plant_parts/LeafE2.tres" id="16_xt8tm"] +[ext_resource type="Resource" uid="uid://dl1k0jv662m67" path="res://entities/plants/resources/plant_parts/FlowerA5.tres" id="17_c3tk3"] [ext_resource type="Resource" uid="uid://dth4dp88vs3gh" path="res://entities/plants/resources/plant_parts/LeafF4.tres" id="17_i8j71"] [ext_resource type="Resource" uid="uid://br80voioh4jxu" path="res://entities/plants/resources/plant_parts/FlowerD3.tres" id="17_p2blu"] [ext_resource type="Resource" uid="uid://3yi8hk73s5mm" path="res://entities/plants/resources/plant_parts/LeafE3.tres" id="17_qm7aw"] +[ext_resource type="Resource" uid="uid://c8ttq14no8872" path="res://entities/plants/resources/plant_parts/LeafF7.tres" id="18_2plsj"] [ext_resource type="Resource" uid="uid://cka6sihumbjpw" path="res://entities/plants/resources/plant_parts/LeafF5.tres" id="18_l2vrg"] +[ext_resource type="Resource" uid="uid://par4hf5gjvqu" path="res://entities/plants/resources/plant_parts/FlowerA6.tres" id="18_q0jli"] [ext_resource type="Resource" uid="uid://dq5dwqherb6ac" path="res://entities/plants/resources/plant_parts/LeafF6.tres" id="19_14c4k"] +[ext_resource type="Resource" uid="uid://414go2hmhy12" path="res://entities/plants/resources/plant_parts/FlowerA7.tres" id="19_rplk6"] +[ext_resource type="Resource" uid="uid://drc3g203302d4" path="res://entities/plants/resources/plant_parts/LeafF8.tres" id="19_yjh7s"] [ext_resource type="Resource" uid="uid://ckef0dno4j5mn" path="res://entities/plants/resources/plant_parts/FlowerF1.tres" id="20_lggh7"] [ext_resource type="Resource" uid="uid://dhhyh56shnure" path="res://entities/plants/resources/plant_parts/FlowerF2.tres" id="21_8r35x"] [ext_resource type="Resource" uid="uid://banfc3pgm6a0m" path="res://entities/plants/resources/plant_parts/FlowerC1.tres" id="21_alra6"] [ext_resource type="Resource" uid="uid://dmdyj7t4g48p" path="res://entities/plants/resources/plant_parts/FlowerC2.tres" id="22_lggh7"] [ext_resource type="Resource" uid="uid://bhj7j78tokt25" path="res://entities/plants/resources/plant_parts/FlowerC3.tres" id="23_8r35x"] +[ext_resource type="Resource" uid="uid://c3w8lel02552f" path="res://entities/plants/resources/plant_parts/FlowerD4.tres" id="23_mcckl"] +[ext_resource type="Resource" uid="uid://hbylxbmmc8of" path="res://entities/plants/resources/plant_parts/FlowerD5.tres" id="24_3hcun"] [ext_resource type="Resource" uid="uid://bkgrwffi7m2i4" path="res://entities/plants/resources/plant_parts/FlowerC4.tres" id="24_rbd7l"] -[ext_resource type="Resource" uid="uid://bchwhdmxsaqic" path="res://entities/plants/resources/plant_parts/LeafA5.tres" id="29_nfxo0"] -[ext_resource type="Resource" uid="uid://cvr81iqokda6x" path="res://entities/plants/resources/plant_parts/LeafA6.tres" id="30_i8j71"] +[ext_resource type="Resource" uid="uid://dm7crxxg4kmw5" path="res://entities/plants/resources/plant_parts/LeafB1.tres" id="25_kvmj5"] +[ext_resource type="Resource" uid="uid://vlxrq3tw1t6m" path="res://entities/plants/resources/plant_parts/LeafB2.tres" id="26_ocu7e"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="27_80nvf"] +[ext_resource type="Resource" uid="uid://bdwhp12xkvscr" path="res://entities/plants/resources/plant_parts/LeafB3.tres" id="27_q771y"] +[ext_resource type="Resource" uid="uid://cc8kkqiqdvex6" path="res://entities/plants/resources/plant_parts/LeafE8.tres" id="27_rcays"] +[ext_resource type="Resource" uid="uid://dmfiww0l5ha2l" path="res://entities/plants/resources/plant_parts/LeafB4.tres" id="28_5fbyu"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="28_d04mb"] +[ext_resource type="Resource" uid="uid://cusd2od1yj0ob" path="res://entities/plants/resources/plant_parts/LeafE9.tres" id="28_qs4je"] +[ext_resource type="Resource" uid="uid://kiim46eda050" path="res://entities/plants/resources/plant_parts/LeafB5.tres" id="29_2plsj"] +[ext_resource type="Resource" uid="uid://dqroc7h70bgew" path="res://entities/plants/resources/plant_parts/LeafB6.tres" id="30_yjh7s"] +[ext_resource type="Resource" uid="uid://u1f6c41fvau5" path="res://entities/plants/resources/plant_parts/FlowerC5.tres" id="35_abtbh"] +[ext_resource type="Resource" uid="uid://bap5xihdc3gbe" path="res://entities/plants/resources/plant_parts/FlowerC6.tres" id="36_j5s6w"] [ext_resource type="Resource" uid="uid://cwskfwdasvv0g" path="res://entities/plants/resources/plant_parts/FlowerF3.tres" id="38_rbd7l"] [ext_resource type="Resource" uid="uid://e0u1baixvaxn" path="res://entities/plants/resources/plant_parts/LeafE4.tres" id="42_14c4k"] -[ext_resource type="Resource" uid="uid://dgivyissl512e" path="res://entities/plants/resources/plant_parts/LeafG1.tres" id="43_y02ao"] -[ext_resource type="Resource" uid="uid://u6dwq3eowpcb" path="res://entities/plants/resources/plant_parts/LeafG2.tres" id="44_s8rsj"] +[ext_resource type="Resource" uid="uid://br4e84rsg87e8" path="res://entities/plants/resources/plant_parts/FlowerB4.tres" id="44_7b70u"] [ext_resource type="Resource" uid="uid://c4artcndro0r5" path="res://entities/plants/resources/plant_parts/FlowerB1.tres" id="45_coupj"] +[ext_resource type="Resource" uid="uid://bvujlvgbh4pyc" path="res://entities/plants/resources/plant_parts/FlowerB5.tres" id="45_q8uyx"] [ext_resource type="Resource" uid="uid://b3dfua388ub4k" path="res://entities/plants/resources/plant_parts/FlowerB2.tres" id="46_ggud5"] +[ext_resource type="Resource" uid="uid://dsoolh270ygjd" path="res://entities/plants/resources/plant_parts/FlowerB6.tres" id="46_r166b"] [ext_resource type="Script" uid="uid://hs3i48clok85" path="res://entities/plants/scripts/texture_builder/seed_texture_set.gd" id="47_jbu3q"] [ext_resource type="Resource" uid="uid://bnn0tcoab4plv" path="res://entities/plants/resources/plant_parts/FlowerB3.tres" id="47_ufbqh"] [ext_resource type="Texture2D" uid="uid://cuqocuhfpdful" path="res://entities/plants/assets/sprites/seeds/pick-sphere/color_1.png" id="48_21cjy"] @@ -54,81 +71,166 @@ [ext_resource type="Texture2D" uid="uid://cq2f308itghq7" path="res://entities/plants/assets/sprites/seeds/haricot/color_1.png" id="51_5job5"] [ext_resource type="Texture2D" uid="uid://b3apxg55cjoow" path="res://entities/plants/assets/sprites/seeds/haricot/color_2.png" id="52_cynqk"] [ext_resource type="Texture2D" uid="uid://0ayiumcnqyc1" path="res://entities/plants/assets/sprites/seeds/haricot/outline.png" id="53_b21au"] +[ext_resource type="Resource" uid="uid://djcwxfp4vmj8n" path="res://entities/plants/resources/plant_parts/FlowerG1.tres" id="61_tx02s"] +[ext_resource type="Resource" uid="uid://d246bni7ooe20" path="res://entities/plants/resources/plant_parts/FlowerG2.tres" id="62_mpcbs"] +[ext_resource type="Resource" uid="uid://docbn71tiiwrw" path="res://entities/plants/resources/plant_parts/FlowerG3.tres" id="63_kqtu4"] +[ext_resource type="Resource" uid="uid://d4hfht8t7ridu" path="res://entities/plants/resources/plant_parts/FlowerG4.tres" id="64_2f2lk"] +[ext_resource type="Resource" uid="uid://cto5os1i12qtj" path="res://entities/plants/resources/plant_parts/FlowerG5.tres" id="65_4e7sd"] +[ext_resource type="Resource" uid="uid://bugnwjpjydm8t" path="res://entities/plants/resources/plant_parts/FlowerG6.tres" id="66_ro8dt"] +[ext_resource type="Resource" uid="uid://0n7qxw0qhn1y" path="res://entities/plants/resources/plant_parts/FlowerG7.tres" id="67_wmd0c"] +[ext_resource type="Resource" uid="uid://ccatceyu73pg5" path="res://entities/plants/resources/plant_parts/FlowerH1.tres" id="68_wl0th"] +[ext_resource type="Resource" uid="uid://2qihbxsn6odd" path="res://entities/plants/resources/plant_parts/FlowerH2.tres" id="69_55s8o"] +[ext_resource type="Resource" uid="uid://bwvou260f8tb5" path="res://entities/plants/resources/plant_parts/FlowerH3.tres" id="70_gquge"] +[ext_resource type="Resource" uid="uid://c7lbyqhtaglql" path="res://entities/plants/resources/plant_parts/FlowerH4.tres" id="71_2cr6t"] +[ext_resource type="Resource" uid="uid://qfku0xgnyc8l" path="res://entities/plants/resources/plant_parts/FlowerH5.tres" id="72_yrtob"] +[ext_resource type="Resource" uid="uid://cjyqycj2nexk5" path="res://entities/plants/resources/plant_parts/FlowerH6.tres" id="73_y4irp"] +[ext_resource type="Resource" uid="uid://v1b4c6364bjj" path="res://entities/plants/resources/plant_parts/FlowerJ1.tres" id="74_sdhn1"] +[ext_resource type="Resource" uid="uid://cji73bqaytm0r" path="res://entities/plants/resources/plant_parts/FlowerJ2.tres" id="75_lyw6c"] +[ext_resource type="Resource" uid="uid://b2tnb0vs1gtj3" path="res://entities/plants/resources/plant_parts/FlowerJ3.tres" id="76_lvv85"] +[ext_resource type="Resource" uid="uid://daf1u222v1eqm" path="res://entities/plants/resources/plant_parts/FlowerJ4.tres" id="77_y5qox"] +[ext_resource type="Resource" uid="uid://c3t8gj1sc7lrn" path="res://entities/plants/resources/plant_parts/FlowerF4.tres" id="81_ar53y"] +[ext_resource type="Resource" uid="uid://cxsbv241mpuma" path="res://entities/plants/resources/plant_parts/FlowerF5.tres" id="82_oaoto"] +[ext_resource type="Resource" uid="uid://5a5ya2iirvwr" path="res://entities/plants/resources/plant_parts/FlowerF6.tres" id="83_06vhr"] +[ext_resource type="Resource" uid="uid://cc8xi518vdixm" path="res://entities/plants/resources/plant_parts/FlowerF7.tres" id="84_rcays"] +[ext_resource type="Resource" uid="uid://dk7hp700k8iet" path="res://entities/plants/resources/plant_parts/LeafC1.tres" id="85_qs4je"] +[ext_resource type="Resource" uid="uid://dte3i6hma7nw5" path="res://entities/plants/resources/plant_parts/LeafC2.tres" id="86_ron2q"] +[ext_resource type="Resource" uid="uid://p2mveyriuh47" path="res://entities/plants/resources/plant_parts/LeafC3.tres" id="87_6raaj"] +[ext_resource type="Resource" uid="uid://be7x75w7l5jls" path="res://entities/plants/resources/plant_parts/LeafC4.tres" id="88_80nvf"] +[ext_resource type="Resource" uid="uid://dhgabeqsda06o" path="res://entities/plants/resources/plant_parts/LeafC5.tres" id="89_d04mb"] +[ext_resource type="Resource" uid="uid://b2bv30j55dtfn" path="res://entities/plants/resources/plant_parts/LeafC6.tres" id="90_6htke"] +[ext_resource type="Resource" uid="uid://d5k40ooxsnaw" path="res://entities/plants/resources/plant_parts/LeafC7.tres" id="91_y2dg6"] +[ext_resource type="Resource" uid="uid://cjyp8jcocoijg" path="res://entities/plants/resources/plant_parts/FlowerI1.tres" id="92_s2hpp"] +[ext_resource type="Resource" uid="uid://bac4q2s3bylli" path="res://entities/plants/resources/plant_parts/FlowerI2.tres" id="93_mxpq5"] +[ext_resource type="Resource" uid="uid://dst4c2mnhaili" path="res://entities/plants/resources/plant_parts/FlowerI3.tres" id="94_o5eac"] +[ext_resource type="Resource" uid="uid://bjd8ix6ouc1b2" path="res://entities/plants/resources/plant_parts/FlowerI4.tres" id="95_qxf4o"] +[ext_resource type="Resource" uid="uid://cs2piasjw3x5s" path="res://entities/plants/resources/plant_parts/FlowerI5.tres" id="96_lfwcq"] +[ext_resource type="Resource" uid="uid://tbqitr1nwt2" path="res://entities/plants/resources/plant_parts/FlowerI6.tres" id="97_fe472"] +[ext_resource type="Resource" uid="uid://b4v7vvv0jdh0k" path="res://entities/plants/resources/plant_parts/LeafHA1.tres" id="100_ron2q"] +[ext_resource type="Resource" uid="uid://bvff3ay7qpvgs" path="res://entities/plants/resources/plant_parts/LeafHA2.tres" id="101_6raaj"] +[ext_resource type="Resource" uid="uid://mwjpvg6xqxyl" path="res://entities/plants/resources/plant_parts/LeafHA3.tres" id="102_80nvf"] +[ext_resource type="Resource" uid="uid://b4hh8jrpenwt3" path="res://entities/plants/resources/plant_parts/LeafNA1.tres" id="103_6raaj"] +[ext_resource type="Resource" uid="uid://cm5rtqrvsmqkg" path="res://entities/plants/resources/plant_parts/LeafHA5.tres" id="103_d04mb"] +[ext_resource type="Resource" uid="uid://bf4s8omnaau0w" path="res://entities/plants/resources/plant_parts/LeafHA6.tres" id="104_6htke"] +[ext_resource type="Resource" uid="uid://cv23vy5w5i3iy" path="res://entities/plants/resources/plant_parts/LeafNA2.tres" id="104_80nvf"] +[ext_resource type="Resource" uid="uid://c85k4e0rio0cs" path="res://entities/plants/resources/plant_parts/LeafNA3.tres" id="105_d04mb"] +[ext_resource type="Resource" uid="uid://iv3nmggoklh3" path="res://entities/plants/resources/plant_parts/LeafHA7.tres" id="105_y2dg6"] +[ext_resource type="Resource" uid="uid://cqbwlfnxg7a83" path="res://entities/plants/resources/plant_parts/LeafNA4.tres" id="106_6htke"] +[ext_resource type="Resource" uid="uid://bff32l0awxl38" path="res://entities/plants/resources/plant_parts/LeafJ1.tres" id="106_s2hpp"] +[ext_resource type="Resource" uid="uid://ddaa77cqi865e" path="res://entities/plants/resources/plant_parts/LeafJ2.tres" id="107_mxpq5"] +[ext_resource type="Resource" uid="uid://d1o0tp1cc6gga" path="res://entities/plants/resources/plant_parts/LeafNA5.tres" id="107_y2dg6"] +[ext_resource type="Resource" uid="uid://brlnlvjpjidd5" path="res://entities/plants/resources/plant_parts/LeafJ3.tres" id="108_o5eac"] +[ext_resource type="Resource" uid="uid://cn2j8fh3l2tdo" path="res://entities/plants/resources/plant_parts/LeafJ4.tres" id="109_qxf4o"] +[ext_resource type="Resource" uid="uid://ccafrqprfm6r2" path="res://entities/plants/resources/plant_parts/LeafJ5.tres" id="110_lfwcq"] +[ext_resource type="Resource" uid="uid://dyjojp8mfs5vy" path="res://entities/plants/resources/plant_parts/LeafK1.tres" id="111_fe472"] +[ext_resource type="Resource" uid="uid://trorp4elyagc" path="res://entities/plants/resources/plant_parts/LeafK2.tres" id="112_2ycc1"] +[ext_resource type="Resource" uid="uid://c6yxy44mt6fgt" path="res://entities/plants/resources/plant_parts/LeafK3.tres" id="113_wat4j"] +[ext_resource type="Resource" uid="uid://dw4o76c3nuor5" path="res://entities/plants/resources/plant_parts/LeafK4.tres" id="114_n8y6x"] +[ext_resource type="Resource" uid="uid://h18vambxcrwj" path="res://entities/plants/resources/plant_parts/LeafK5.tres" id="115_dw70q"] +[ext_resource type="Resource" uid="uid://c70ikd1qfmqqs" path="res://entities/plants/resources/plant_parts/LeafK6.tres" id="116_xxckx"] +[ext_resource type="Resource" uid="uid://bhgnimmagff30" path="res://entities/plants/resources/plant_parts/LeafK7.tres" id="117_s3ec7"] -[sub_resource type="Resource" id="Resource_10bgv"] -script = ExtResource("3_cynqk") -position = Vector2(59, 99) -attach_types = Array[int]([0]) +[sub_resource type="Resource" id="Resource_us16y"] +script = ExtResource("27_80nvf") +position = Vector2(-36, -37) +attach_types = Array[int]([2]) -[sub_resource type="Resource" id="Resource_m78t0"] -script = ExtResource("3_cynqk") -position = Vector2(-3, -68) -attach_types = Array[int]([0]) - -[sub_resource type="Resource" id="Resource_hbwie"] -script = ExtResource("3_cynqk") -position = Vector2(-17, -237) +[sub_resource type="Resource" id="Resource_ux8f6"] +script = ExtResource("27_80nvf") +position = Vector2(59, -81) attach_types = Array[int]([1, 3]) -[sub_resource type="Resource" id="Resource_obhnl"] -script = ExtResource("3_cynqk") -position = Vector2(-50, -286) -attach_types = Array[int]([2, 3]) +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("28_d04mb") +region = Rect2(2804, 1567, 294, 345) -[sub_resource type="Resource" id="Resource_dhqtw"] -script = ExtResource("3_cynqk") -position = Vector2(-2, 333) - -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] -atlas = ExtResource("4_b21au") -region = Rect2(41, 72, 237, 686) - -[sub_resource type="Resource" id="Resource_fuh2b"] -resource_name = "Base1" +[sub_resource type="Resource" id="Resource_6htke"] +resource_name = "LeafE6" script = ExtResource("2_cfiqo") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_dhqtw") -attaches = Array[ExtResource("3_cynqk")]([SubResource("Resource_10bgv"), SubResource("Resource_m78t0"), SubResource("Resource_hbwie"), SubResource("Resource_obhnl")]) +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_ux8f6") +attaches = Array[ExtResource("27_80nvf")]([SubResource("Resource_us16y")]) [sub_resource type="Resource" id="Resource_rt6tw"] script = ExtResource("16_c3tk3") -parts = Array[ExtResource("2_cfiqo")]([ExtResource("11_fc4k8"), ExtResource("12_1b4fr"), ExtResource("13_ggcwy"), ExtResource("14_15wue"), ExtResource("29_nfxo0"), ExtResource("30_i8j71")]) -part_amount = 4 +parts = Array[ExtResource("2_cfiqo")]([ExtResource("15_p2blu"), ExtResource("16_xt8tm"), ExtResource("17_qm7aw"), ExtResource("42_14c4k"), ExtResource("10_5job5"), SubResource("Resource_6htke"), ExtResource("12_b21au"), ExtResource("27_rcays"), ExtResource("28_qs4je")]) metadata/_custom_type_script = "uid://cfjd8jelpm8dt" [sub_resource type="Resource" id="Resource_y02ao"] script = ExtResource("16_c3tk3") -parts = Array[ExtResource("2_cfiqo")]([ExtResource("15_3ti7v"), ExtResource("16_cpf4r"), ExtResource("17_p2blu")]) +parts = Array[ExtResource("2_cfiqo")]([ExtResource("13_17ac3"), ExtResource("14_fuh2b"), ExtResource("15_28gvc"), ExtResource("16_1cwvj"), ExtResource("17_c3tk3"), ExtResource("18_q0jli"), ExtResource("19_rplk6")]) part_amount = 5 metadata/_custom_type_script = "uid://cfjd8jelpm8dt" [sub_resource type="Resource" id="Resource_nfxo0"] script = ExtResource("16_c3tk3") -parts = Array[ExtResource("2_cfiqo")]([ExtResource("20_lggh7"), ExtResource("21_8r35x"), ExtResource("38_rbd7l")]) +parts = Array[ExtResource("2_cfiqo")]([ExtResource("15_3ti7v"), ExtResource("16_cpf4r"), ExtResource("17_p2blu"), ExtResource("23_mcckl"), ExtResource("24_3hcun")]) part_amount = 5 metadata/_custom_type_script = "uid://cfjd8jelpm8dt" +[sub_resource type="Resource" id="Resource_2ycc1"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("61_tx02s"), ExtResource("62_mpcbs"), ExtResource("63_kqtu4"), ExtResource("64_2f2lk"), ExtResource("65_4e7sd"), ExtResource("66_ro8dt"), ExtResource("67_wmd0c")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + +[sub_resource type="Resource" id="Resource_wat4j"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("68_wl0th"), ExtResource("69_55s8o"), ExtResource("70_gquge"), ExtResource("71_2cr6t"), ExtResource("72_yrtob"), ExtResource("73_y4irp")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + +[sub_resource type="Resource" id="Resource_n8y6x"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("74_sdhn1"), ExtResource("75_lyw6c"), ExtResource("76_lvv85"), ExtResource("77_y5qox")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + +[sub_resource type="Resource" id="Resource_dw70q"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("20_lggh7"), ExtResource("21_8r35x"), ExtResource("38_rbd7l"), ExtResource("81_ar53y"), ExtResource("82_oaoto"), ExtResource("83_06vhr"), ExtResource("84_rcays")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + +[sub_resource type="Resource" id="Resource_xxckx"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("85_qs4je"), ExtResource("86_ron2q"), ExtResource("87_6raaj"), ExtResource("88_80nvf"), ExtResource("89_d04mb"), ExtResource("90_6htke"), ExtResource("91_y2dg6")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + +[sub_resource type="Resource" id="Resource_s3ec7"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("92_s2hpp"), ExtResource("93_mxpq5"), ExtResource("94_o5eac"), ExtResource("95_qxf4o"), ExtResource("96_lfwcq"), ExtResource("97_fe472")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + [sub_resource type="Resource" id="Resource_s8rsj"] script = ExtResource("16_c3tk3") -parts = Array[ExtResource("2_cfiqo")]([ExtResource("15_p2blu"), ExtResource("16_xt8tm"), ExtResource("17_qm7aw"), ExtResource("42_14c4k")]) -part_amount = 5 +parts = Array[ExtResource("2_cfiqo")]([ExtResource("25_kvmj5"), ExtResource("26_ocu7e"), ExtResource("27_q771y"), ExtResource("28_5fbyu"), ExtResource("29_2plsj"), ExtResource("30_yjh7s")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + +[sub_resource type="Resource" id="Resource_kro31"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("100_ron2q"), ExtResource("101_6raaj"), ExtResource("102_80nvf"), ExtResource("103_d04mb"), ExtResource("104_6htke"), ExtResource("105_y2dg6")]) metadata/_custom_type_script = "uid://cfjd8jelpm8dt" [sub_resource type="Resource" id="Resource_14c4k"] script = ExtResource("16_c3tk3") -parts = Array[ExtResource("2_cfiqo")]([ExtResource("21_alra6"), ExtResource("22_lggh7"), ExtResource("23_8r35x"), ExtResource("24_rbd7l")]) -part_amount = 4 +parts = Array[ExtResource("2_cfiqo")]([ExtResource("21_alra6"), ExtResource("22_lggh7"), ExtResource("23_8r35x"), ExtResource("24_rbd7l"), ExtResource("35_abtbh"), ExtResource("36_j5s6w")]) metadata/_custom_type_script = "uid://cfjd8jelpm8dt" -[sub_resource type="Resource" id="Resource_jbu3q"] +[sub_resource type="Resource" id="Resource_p4lk1"] script = ExtResource("16_c3tk3") -parts = Array[ExtResource("2_cfiqo")]([ExtResource("45_coupj"), ExtResource("46_ggud5"), ExtResource("47_ufbqh")]) -part_amount = 5 +parts = Array[ExtResource("2_cfiqo")]([ExtResource("106_s2hpp"), ExtResource("107_mxpq5"), ExtResource("108_o5eac"), ExtResource("109_qxf4o"), ExtResource("110_lfwcq")]) metadata/_custom_type_script = "uid://cfjd8jelpm8dt" [sub_resource type="Resource" id="Resource_b21au"] script = ExtResource("16_c3tk3") -parts = Array[ExtResource("2_cfiqo")]([ExtResource("43_y02ao"), ExtResource("44_s8rsj")]) +parts = Array[ExtResource("2_cfiqo")]([ExtResource("103_6raaj"), ExtResource("104_80nvf"), ExtResource("105_d04mb"), ExtResource("106_6htke"), ExtResource("107_y2dg6")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + +[sub_resource type="Resource" id="Resource_jbu3q"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("45_coupj"), ExtResource("46_ggud5"), ExtResource("47_ufbqh"), ExtResource("44_7b70u"), ExtResource("45_q8uyx"), ExtResource("46_r166b")]) +metadata/_custom_type_script = "uid://cfjd8jelpm8dt" + +[sub_resource type="Resource" id="Resource_0wuoa"] +script = ExtResource("16_c3tk3") +parts = Array[ExtResource("2_cfiqo")]([ExtResource("111_fe472"), ExtResource("112_2ycc1"), ExtResource("113_wat4j"), ExtResource("114_n8y6x"), ExtResource("115_dw70q"), ExtResource("116_xxckx"), ExtResource("117_s3ec7")]) metadata/_custom_type_script = "uid://cfjd8jelpm8dt" [sub_resource type="Resource" id="Resource_cynqk"] @@ -144,24 +246,33 @@ metadata/_custom_type_script = "uid://hs3i48clok85" [node name="TextureBuilder" type="Node" unique_id=79184097] script = ExtResource("1_s8rsj") -bases = Array[ExtResource("2_cfiqo")]([SubResource("Resource_fuh2b")]) -baby_bases = Array[ExtResource("2_cfiqo")]([ExtResource("5_21cjy")]) -branches = Array[ExtResource("2_cfiqo")]([ExtResource("4_ggud5"), ExtResource("5_ufbqh"), ExtResource("6_jbu3q"), ExtResource("7_21cjy"), ExtResource("8_qm7aw"), ExtResource("9_3e4c1"), ExtResource("11_hvwgo"), ExtResource("12_npk80"), ExtResource("13_hyb2i"), ExtResource("14_4gk8a")]) +bases = Array[ExtResource("2_cfiqo")]([ExtResource("5_5fbyu"), ExtResource("4_ron2q")]) +baby_bases = Array[ExtResource("2_cfiqo")]([ExtResource("5_6raaj")]) +branches = Array[ExtResource("2_cfiqo")]([ExtResource("4_ggud5"), ExtResource("5_ufbqh"), ExtResource("6_jbu3q"), ExtResource("7_21cjy"), ExtResource("8_qm7aw"), ExtResource("9_3e4c1"), ExtResource("12_yjh7s")]) n_branches = 5 -base_leaves = Array[ExtResource("2_cfiqo")]([ExtResource("14_8r35x"), ExtResource("15_rbd7l"), ExtResource("16_nfxo0"), ExtResource("17_i8j71"), ExtResource("18_l2vrg"), ExtResource("19_14c4k")]) +base_leaves = Array[ExtResource("2_cfiqo")]([ExtResource("14_8r35x"), ExtResource("15_rbd7l"), ExtResource("16_nfxo0"), ExtResource("17_i8j71"), ExtResource("18_l2vrg"), ExtResource("19_14c4k"), ExtResource("18_2plsj"), ExtResource("19_yjh7s")]) parts_mutation_associations = Dictionary[String, ExtResource("16_c3tk3")]({ "ANCIENT": SubResource("Resource_rt6tw"), "EPHEMERAL": SubResource("Resource_y02ao"), "FERTILE": SubResource("Resource_nfxo0"), +"GENEROUS": SubResource("Resource_2ycc1"), +"HURRIED": SubResource("Resource_wat4j"), +"PRECOCIOUS": SubResource("Resource_n8y6x"), +"PROLIFIC": SubResource("Resource_dw70q"), +"PROTECTIVE": SubResource("Resource_xxckx"), +"PURE": SubResource("Resource_s3ec7"), "PURIFICATION": SubResource("Resource_s8rsj"), +"QUALITY": SubResource("Resource_kro31"), "QUICK": SubResource("Resource_14c4k"), +"ROBUST": SubResource("Resource_p4lk1"), "SOCIABLE": SubResource("Resource_b21au"), -"TOUGH": SubResource("Resource_jbu3q") +"TOUGH": SubResource("Resource_jbu3q"), +"VIVACIOUS": SubResource("Resource_0wuoa") }) -chance_to_have_part = 0.9 +chance_to_have_part = 1.0 origin_weights_base = Dictionary[int, int]({ -0: 20, -1: 10, -2: 2 +0: 100, +1: 0, +2: 20 }) seed_texture_sets = Array[ExtResource("47_jbu3q")]([SubResource("Resource_cynqk"), SubResource("Resource_17ac3")]) diff --git a/common/scene_manager/scene_manager.tscn b/common/scene_manager/scene_manager.tscn index 71e2488..e1ff1fc 100644 --- a/common/scene_manager/scene_manager.tscn +++ b/common/scene_manager/scene_manager.tscn @@ -1,16 +1,174 @@ [gd_scene format=3 uid="uid://dac5wte80dwj0"] [ext_resource type="Script" uid="uid://bb44144ckt2w7" path="res://common/scene_manager/scripts/scene_manager.gd" id="1_1c0qu"] -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="2_c1lr7"] -[ext_resource type="Resource" uid="uid://bvksiaiocwob5" path="res://common/scene_manager/scenes/cockpit.tres" id="3_e28ni"] -[ext_resource type="Resource" uid="uid://bvgdq43fpl1xs" path="res://common/scene_manager/scenes/intro.tres" id="4_msho1"] -[ext_resource type="Resource" uid="uid://boqgwjyxyb45r" path="res://common/scene_manager/scenes/region.tres" id="5_ytog4"] -[ext_resource type="Resource" uid="uid://c27wenetitwm" path="res://common/scene_manager/scenes/region_selection.tres" id="6_chs32"] -[ext_resource type="Resource" uid="uid://diro74w272onp" path="res://common/scene_manager/scenes/title.tres" id="7_ol3d5"] -[ext_resource type="Resource" uid="uid://jegdqnd2sqi2" path="res://common/scene_manager/scenes/astra.tres" id="8_e28ni"] -[ext_resource type="Resource" uid="uid://b3ebbo88ptrrc" path="res://common/scene_manager/scenes/garage.tres" id="9_msho1"] -[ext_resource type="Resource" uid="uid://cvrs6qsq7mpa5" path="res://common/scene_manager/scenes/borea.tres" id="10_ytog4"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="3_y08yd"] +[ext_resource type="Texture2D" uid="uid://d3k7rl7nbp7yx" path="res://common/icons/device-floppy.svg" id="12_hksyt"] + +[sub_resource type="LabelSettings" id="LabelSettings_udn24"] +font = ExtResource("3_y08yd") +font_size = 50 + +[sub_resource type="Animation" id="Animation_hksyt"] +length = 0.001 +tracks/0/type = "bezier" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("VBoxContainer/IconContainer:theme_override_constants/margin_left") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/1/type = "bezier" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("VBoxContainer/TitleContainer:theme_override_constants/margin_left") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath(".:visible") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("ColorRect:modulate:a") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0.5] +} + +[sub_resource type="Animation" id="Animation_1chpl"] +resource_name = "announce" +length = 1.2 +tracks/0/type = "bezier" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("VBoxContainer/IconContainer:theme_override_constants/margin_left") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"handle_modes": PackedInt32Array(1, 0, 0), +"points": PackedFloat32Array(2000, 0, 0, 0, 0, 0, -0.9666667, 17.742292, 0.9666667, -17.742292, -2013.7502, 0, -13.750244, 0, 0), +"times": PackedFloat32Array(0, 0.6, 1.2) +} +tracks/1/type = "bezier" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("VBoxContainer/TitleContainer:theme_override_constants/margin_left") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"handle_modes": PackedInt32Array(1, 0, 0), +"points": PackedFloat32Array(-2000, 0, 0, 0, 0, 0, -0.93333334, 0, 0.93333334, 0, 2000, 0, 0, 0, 0), +"times": PackedFloat32Array(0, 0.56666666, 1.2) +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath(".:visible") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0, 1.1333334, 1.2), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 1, +"values": [true, true, false] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("ColorRect:modulate:a") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0, 0.25833333, 0.82500005, 1.2), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 0, +"values": [0.0, 0.5, 0.5, 0.0] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_e3yhc"] +_data = { +&"RESET": SubResource("Animation_hksyt"), +&"announce": SubResource("Animation_1chpl") +} [node name="SceneManager" type="Node" unique_id=1630600782] script = ExtResource("1_1c0qu") -scenes = Array[ExtResource("2_c1lr7")]([ExtResource("3_e28ni"), ExtResource("4_msho1"), ExtResource("5_ytog4"), ExtResource("6_chs32"), ExtResource("7_ol3d5"), ExtResource("8_e28ni"), ExtResource("9_msho1"), ExtResource("10_ytog4")]) + +[node name="SceneAnnounce" type="CanvasLayer" parent="." unique_id=2098705893] +unique_name_in_owner = true +layer = 10 +visible = false + +[node name="ColorRect" type="ColorRect" parent="SceneAnnounce" unique_id=1450779057] +modulate = Color(1, 1, 1, 0.5) +custom_minimum_size = Vector2(0, 250) +anchors_preset = 14 +anchor_top = 0.5 +anchor_right = 1.0 +anchor_bottom = 0.5 +offset_top = -125.0 +offset_bottom = 125.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 +color = Color(0.0627451, 0.05882353, 0.16862746, 1) + +[node name="VBoxContainer" type="VBoxContainer" parent="SceneAnnounce" unique_id=954249153] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +alignment = 1 + +[node name="IconContainer" type="MarginContainer" parent="SceneAnnounce/VBoxContainer" unique_id=877483857] +layout_mode = 2 +mouse_filter = 2 +theme_override_constants/margin_left = 0 + +[node name="SceneIcon" type="TextureRect" parent="SceneAnnounce/VBoxContainer/IconContainer" unique_id=659833821] +unique_name_in_owner = true +custom_minimum_size = Vector2(80, 80) +layout_mode = 2 +texture = ExtResource("12_hksyt") +expand_mode = 3 +stretch_mode = 5 + +[node name="TitleContainer" type="MarginContainer" parent="SceneAnnounce/VBoxContainer" unique_id=2021413473] +layout_mode = 2 +mouse_filter = 2 +theme_override_constants/margin_left = 0 + +[node name="SceneTitle" type="Label" parent="SceneAnnounce/VBoxContainer/TitleContainer" unique_id=1280778170] +unique_name_in_owner = true +layout_mode = 2 +text = "Ship" +label_settings = SubResource("LabelSettings_udn24") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="SceneAnnounceAnimationPlayer" type="AnimationPlayer" parent="SceneAnnounce" unique_id=186313985] +unique_name_in_owner = true +libraries/ = SubResource("AnimationLibrary_e3yhc") diff --git a/common/scene_manager/scenes/astra.tres b/common/scene_manager/scenes/astra.tres deleted file mode 100644 index 2501e1f..0000000 --- a/common/scene_manager/scenes/astra.tres +++ /dev/null @@ -1,10 +0,0 @@ -[gd_resource type="Resource" script_class="Scene" format=3 uid="uid://jegdqnd2sqi2"] - -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="1_114vb"] - -[resource] -script = ExtResource("1_114vb") -scene_id = "ASTRA" -scene_path = "res://stages/3d_scenes/astra_base/astra_base.tscn" -mouse_captured = true -metadata/_custom_type_script = "uid://1ejbvr3431ac" diff --git a/common/scene_manager/scenes/borea.tres b/common/scene_manager/scenes/borea.tres deleted file mode 100644 index 6a42647..0000000 --- a/common/scene_manager/scenes/borea.tres +++ /dev/null @@ -1,10 +0,0 @@ -[gd_resource type="Resource" script_class="Scene" format=3 uid="uid://cvrs6qsq7mpa5"] - -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="1_7m46k"] - -[resource] -script = ExtResource("1_7m46k") -scene_id = "BOREA" -scene_path = "res://stages/3d_scenes/borea_base/borea_base.tscn" -mouse_captured = true -metadata/_custom_type_script = "uid://1ejbvr3431ac" diff --git a/common/scene_manager/scenes/cockpit.tres b/common/scene_manager/scenes/cockpit.tres deleted file mode 100644 index 035fe1c..0000000 --- a/common/scene_manager/scenes/cockpit.tres +++ /dev/null @@ -1,10 +0,0 @@ -[gd_resource type="Resource" script_class="Scene" format=3 uid="uid://bvksiaiocwob5"] - -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="1_tkiq8"] - -[resource] -script = ExtResource("1_tkiq8") -scene_id = "COCKPIT" -scene_path = "res://stages/3d_scenes/cockpit_scene/cockpit_scene.tscn" -mouse_captured = true -metadata/_custom_type_script = "uid://1ejbvr3431ac" diff --git a/common/scene_manager/scenes/garage.tres b/common/scene_manager/scenes/garage.tres deleted file mode 100644 index a3ab70c..0000000 --- a/common/scene_manager/scenes/garage.tres +++ /dev/null @@ -1,10 +0,0 @@ -[gd_resource type="Resource" script_class="Scene" format=3 uid="uid://b3ebbo88ptrrc"] - -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="1_v8prw"] - -[resource] -script = ExtResource("1_v8prw") -scene_id = "GARAGE" -scene_path = "res://stages/3d_scenes/ship_garage/ship_garage.tscn" -mouse_captured = true -metadata/_custom_type_script = "uid://1ejbvr3431ac" diff --git a/common/scene_manager/scenes/intro.tres b/common/scene_manager/scenes/intro.tres deleted file mode 100644 index c57ae5c..0000000 --- a/common/scene_manager/scenes/intro.tres +++ /dev/null @@ -1,9 +0,0 @@ -[gd_resource type="Resource" script_class="Scene" load_steps=2 format=3 uid="uid://bvgdq43fpl1xs"] - -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="1_6ws88"] - -[resource] -script = ExtResource("1_6ws88") -scene_id = "INTRO" -scene_path = "res://stages/intro/intro.tscn" -metadata/_custom_type_script = "uid://1ejbvr3431ac" diff --git a/common/scene_manager/scenes/region.tres b/common/scene_manager/scenes/region.tres deleted file mode 100644 index 6fe361c..0000000 --- a/common/scene_manager/scenes/region.tres +++ /dev/null @@ -1,10 +0,0 @@ -[gd_resource type="Resource" script_class="Scene" load_steps=2 format=3 uid="uid://boqgwjyxyb45r"] - -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="1_10qbh"] - -[resource] -script = ExtResource("1_10qbh") -scene_id = "REGION" -scene_path = "res://stages/terrain/region/region.tscn" -need_terrain_generated = true -metadata/_custom_type_script = "uid://1ejbvr3431ac" diff --git a/common/scene_manager/scenes/region_selection.tres b/common/scene_manager/scenes/region_selection.tres deleted file mode 100644 index 96c220b..0000000 --- a/common/scene_manager/scenes/region_selection.tres +++ /dev/null @@ -1,9 +0,0 @@ -[gd_resource type="Resource" script_class="Scene" format=3 uid="uid://c27wenetitwm"] - -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="1_smjh0"] - -[resource] -script = ExtResource("1_smjh0") -scene_id = "REGION_SELECTION" -scene_path = "res://stages/region_selection/region_selection.tscn" -metadata/_custom_type_script = "uid://1ejbvr3431ac" diff --git a/common/scene_manager/scenes/title.tres b/common/scene_manager/scenes/title.tres deleted file mode 100644 index 9b9c9e1..0000000 --- a/common/scene_manager/scenes/title.tres +++ /dev/null @@ -1,10 +0,0 @@ -[gd_resource type="Resource" script_class="Scene" format=3 uid="uid://diro74w272onp"] - -[ext_resource type="Script" uid="uid://1ejbvr3431ac" path="res://common/scene_manager/scripts/scene.gd" id="1_48g2j"] - -[resource] -script = ExtResource("1_48g2j") -scene_id = "TITLE" -scene_path = "res://stages/title_screen/title_screen.tscn" -need_to_be_saved = false -metadata/_custom_type_script = "uid://1ejbvr3431ac" diff --git a/common/scene_manager/scripts/scene.gd b/common/scene_manager/scripts/scene.gd index d01fe54..19a6d73 100644 --- a/common/scene_manager/scripts/scene.gd +++ b/common/scene_manager/scripts/scene.gd @@ -1,8 +1,39 @@ +@abstract extends Resource class_name Scene -@export var scene_id : String -@export_file_path() var scene_path : String -@export var mouse_captured := false -@export var need_terrain_generated := false -@export var need_to_be_saved = true \ No newline at end of file +const DEFAULT_SCENE_ICON = preload("res://common/icons/globe.svg") + +var scene_id : String : get = get_scene_id +var scene_path : String : get = get_scene_path +var mouse_captured : bool : get = is_mouse_captured +var need_terrain_generated :bool : get = is_terrain_generated +var need_to_be_saved : bool : get = is_needed_to_be_saved +var need_to_announce : bool : get = is_needed_to_be_announced +var icon : Texture : get = get_scene_icon + +func get_scene_id() -> String: + return "" + +@abstract func get_scene_path() -> String + +func is_mouse_captured() -> bool: + return false + +func is_terrain_generated() -> bool: + return false + +func is_needed_to_be_saved() -> bool: + return true + +func is_needed_to_be_announced() -> bool: + return false + +func get_scene_title() -> String: + return tr(get_scene_id()) + +func get_scene_icon() -> Texture: + return DEFAULT_SCENE_ICON + +func _on_generated(_generated_scene : Node): + pass \ No newline at end of file diff --git a/common/scene_manager/scripts/scene_manager.gd b/common/scene_manager/scripts/scene_manager.gd index 5c2ea9d..3a89943 100644 --- a/common/scene_manager/scripts/scene_manager.gd +++ b/common/scene_manager/scripts/scene_manager.gd @@ -1,7 +1,5 @@ extends Node -@export var scenes : Array[Scene] - signal scene_loaded(scene : Scene) signal scene_node_ready(scene : Scene) @@ -11,24 +9,8 @@ var generating_node = false var next_scene_node : Node @onready var current_scene_node : Node = get_tree().root.get_children().back() -func search_scenes(scene_id : String) -> Scene: - var scene_pos : int = scenes.find_custom( - func (s : Scene): - return s.scene_id == scene_id - ) - if scene_pos == -1: - return null - else : - return scenes[scene_pos] - -func change_to_scene_id(scene_id : String, with_loading = true): - var scene = search_scenes(scene_id) - - if not scene: - printerr("Scene %s not found" % scene_id) - return - - change_to_scene(scene, with_loading) +func _ready(): + %SceneAnnounce.hide() func change_to_scene(scene : Scene, with_loading = true): if loading_scene or generating_node: @@ -93,6 +75,16 @@ func _process(_delta): if next_scene_node.is_generated: generating_node = false scene_node_ready.emit() + announce_scene(actual_scene) + actual_scene._on_generated(next_scene_node) elif next_scene_node.is_node_ready(): generating_node = false scene_node_ready.emit(actual_scene) + announce_scene(actual_scene) + actual_scene._on_generated(next_scene_node) + +func announce_scene(scene : Scene): + if scene.need_to_announce: + %SceneTitle.text = scene.get_scene_title() + %SceneIcon.texture = scene.get_scene_icon() + %SceneAnnounceAnimationPlayer.play("announce") \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/astra_scene.gd b/common/scene_manager/scripts/scenes/astra_scene.gd new file mode 100644 index 0000000..b1e1e59 --- /dev/null +++ b/common/scene_manager/scripts/scenes/astra_scene.gd @@ -0,0 +1,20 @@ +extends Scene +class_name AstraScene + +func get_scene_id() -> String: + return "ASTRA" + +func get_scene_path() -> String: + return "res://stages/3d_scenes/astra_base/astra_base.tscn" + +func is_mouse_captured() -> bool: + return true + +func is_needed_to_be_announced() -> bool: + return true + +func get_scene_title() -> String: + return tr("ASTRA_FACTORY") + +func get_scene_icon() -> Texture: + return preload("res://common/icons/building-factory-2.svg") \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/astra_scene.gd.uid b/common/scene_manager/scripts/scenes/astra_scene.gd.uid new file mode 100644 index 0000000..96e6cae --- /dev/null +++ b/common/scene_manager/scripts/scenes/astra_scene.gd.uid @@ -0,0 +1 @@ +uid://gyo84wyg8cy0 diff --git a/common/scene_manager/scripts/scenes/borea_scene.gd b/common/scene_manager/scripts/scenes/borea_scene.gd new file mode 100644 index 0000000..c52e568 --- /dev/null +++ b/common/scene_manager/scripts/scenes/borea_scene.gd @@ -0,0 +1,11 @@ +extends Scene +class_name BoreaScene + +func get_scene_id() -> String: + return "BOREA_BASE" + +func get_scene_path() -> String: + return "res://stages/3d_scenes/borea_base/borea_base.tscn" + +func is_mouse_captured() -> bool: + return true \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/borea_scene.gd.uid b/common/scene_manager/scripts/scenes/borea_scene.gd.uid new file mode 100644 index 0000000..5d6d1f2 --- /dev/null +++ b/common/scene_manager/scripts/scenes/borea_scene.gd.uid @@ -0,0 +1 @@ +uid://0lbebb57m1vb diff --git a/common/scene_manager/scripts/scenes/cockpit_scene.gd b/common/scene_manager/scripts/scenes/cockpit_scene.gd new file mode 100644 index 0000000..1e6603e --- /dev/null +++ b/common/scene_manager/scripts/scenes/cockpit_scene.gd @@ -0,0 +1,20 @@ +extends Scene +class_name CockpitScene + +func get_scene_id() -> String: + return "COCKPIT" + +func get_scene_path() -> String: + return "res://stages/3d_scenes/cockpit_scene/cockpit_scene.tscn" + +func is_mouse_captured() -> bool: + return true + +func is_needed_to_be_announced() -> bool: + return true + +func get_scene_title() -> String: + return tr("INTERNODE") + +func get_scene_icon() -> Texture: + return preload("res://common/icons/rocket.svg") \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/cockpit_scene.gd.uid b/common/scene_manager/scripts/scenes/cockpit_scene.gd.uid new file mode 100644 index 0000000..a860186 --- /dev/null +++ b/common/scene_manager/scripts/scenes/cockpit_scene.gd.uid @@ -0,0 +1 @@ +uid://8topyewe3juk diff --git a/common/scene_manager/scripts/scenes/garage_scene.gd b/common/scene_manager/scripts/scenes/garage_scene.gd new file mode 100644 index 0000000..a6e9b97 --- /dev/null +++ b/common/scene_manager/scripts/scenes/garage_scene.gd @@ -0,0 +1,20 @@ +extends Scene +class_name GarageScene + +func get_scene_id() -> String: + return "GARAGE" + +func get_scene_path() -> String: + return "res://stages/3d_scenes/ship_garage/ship_garage.tscn" + +func is_mouse_captured() -> bool: + return true + +func is_needed_to_be_announced() -> bool: + return true + +func get_scene_title() -> String: + return tr("ASTRA_SHIP_GARAGE") + +func get_scene_icon() -> Texture: + return preload("res://common/icons/rocket.svg") \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/garage_scene.gd.uid b/common/scene_manager/scripts/scenes/garage_scene.gd.uid new file mode 100644 index 0000000..758a5ea --- /dev/null +++ b/common/scene_manager/scripts/scenes/garage_scene.gd.uid @@ -0,0 +1 @@ +uid://3m1wltyvx0hp diff --git a/common/scene_manager/scripts/scenes/intro_scene.gd b/common/scene_manager/scripts/scenes/intro_scene.gd new file mode 100644 index 0000000..eff044f --- /dev/null +++ b/common/scene_manager/scripts/scenes/intro_scene.gd @@ -0,0 +1,8 @@ +extends Scene +class_name IntroScene + +func get_scene_id() -> String: + return "INTRO" + +func get_scene_path() -> String: + return "res://stages/intro/intro.tscn" \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/intro_scene.gd.uid b/common/scene_manager/scripts/scenes/intro_scene.gd.uid new file mode 100644 index 0000000..46b61d4 --- /dev/null +++ b/common/scene_manager/scripts/scenes/intro_scene.gd.uid @@ -0,0 +1 @@ +uid://ca755sowjsqtp diff --git a/common/scene_manager/scripts/scenes/region_scene.gd b/common/scene_manager/scripts/scenes/region_scene.gd new file mode 100644 index 0000000..1f76975 --- /dev/null +++ b/common/scene_manager/scripts/scenes/region_scene.gd @@ -0,0 +1,30 @@ +extends Scene +class_name RegionScene + +@export var region_data : RegionData + +func _init( + _rd : RegionData = null +): + region_data = _rd + +func get_scene_id() -> String: + return "REGION" + +func get_scene_path() -> String: + return "res://stages/terrain/region/region.tscn" + +func is_terrain_generated() -> bool: + return true + +func is_needed_to_be_announced() -> bool: + return true + +func get_scene_title() -> String: + if region_data: + return region_data.region_name + return "" + +func _on_generated(generated_scene : Node): + var region : Region = generated_scene as Region + region.finish_generation() \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/region_scene.gd.uid b/common/scene_manager/scripts/scenes/region_scene.gd.uid new file mode 100644 index 0000000..3a85c39 --- /dev/null +++ b/common/scene_manager/scripts/scenes/region_scene.gd.uid @@ -0,0 +1 @@ +uid://degjtx6n43ta4 diff --git a/common/scene_manager/scripts/scenes/relay_base_scene.gd b/common/scene_manager/scripts/scenes/relay_base_scene.gd new file mode 100644 index 0000000..e28c430 --- /dev/null +++ b/common/scene_manager/scripts/scenes/relay_base_scene.gd @@ -0,0 +1,91 @@ +extends Scene +class_name RelayBaseScene + +@export var base_name : String +@export var base_number : String +@export var is_spawning : bool + +const DEAD_ORCHID_SCENE = preload("res://entities/player_3d/dead_orchid.tscn") + +func _init( + _base_name : String = "", + _base_number : String = "", + _is_spawning : bool = false, +): + base_name = _base_name + base_number = _base_number + is_spawning = _is_spawning + +func get_scene_path() -> String: + return "res://stages/3d_scenes/relay_base/relay_base.tscn" + +func get_scene_title() -> String: + return tr("RELAY_BASE_X") % tr(base_name) + +func get_scene_icon() -> Texture: + return preload("res://common/icons/route.svg") + +func is_mouse_captured() -> bool: + return true + +func is_needed_to_be_announced() -> bool: + return true + +func _on_generated(generated_scene : Node): + var relay_base := generated_scene as RelayBase + relay_base.base_name = base_name + relay_base.base_number = base_number + + if is_spawning: + AudioManager.play_sfx("Respawn") + spawn_player(relay_base) + spawn_dead_orchid(relay_base) + relay_base.exit_scene = CockpitScene.new() + else: + relay_base.exit_scene = RegionScene.new(GameInfo.game_data.current_region_data) + handle_orchid_save(relay_base) + + +func spawn_player(relay_base : RelayBase): + var incubators := relay_base.get_incubators() + var possible_incubators : Array[Incubator] = [] + var choosen_incubator : Incubator = null + for i in range(len(incubators)): + var incubator = incubators[i] + if i in GameInfo.game_data.incubator_used: + incubator.used = true + else: + possible_incubators.append(incubator) + if len(possible_incubators): + choosen_incubator = possible_incubators.pick_random() + GameInfo.game_data.incubator_used.append( + incubators.find(choosen_incubator) + ) + else: + choosen_incubator = incubators.pick_random() + + choosen_incubator.used = true + relay_base.player.global_position = choosen_incubator.global_position + Vector3.UP + relay_base.player.rotation.y = choosen_incubator.rotation.y + +func spawn_dead_orchid(relay_base : RelayBase): + var dead_orchid := DEAD_ORCHID_SCENE.instantiate() as Node3D + relay_base.add_child(dead_orchid) + if GameInfo.game_data.dead_orchid_position == Vector3.ZERO: + dead_orchid.global_position = relay_base.orchid_saver.global_position + Vector3.UP * 0.5 + dead_orchid.rotation.y = -90 + else: + dead_orchid.position = GameInfo.game_data.dead_orchid_position + dead_orchid.rotation = GameInfo.game_data.dead_orchid_rotation + relay_base.orchid_saver.active = false + relay_base.dead_orchid = dead_orchid + +func handle_orchid_save(relay_base : RelayBase): + relay_base.orchid_saved.connect( + func (): + GameInfo.game_data.finish_story_step() + var new_story_step = GameInfo.game_data.progression_data.get_story_step() + SceneManager.change_to_scene( + new_story_step.get_respawn_scene() + ) + ) diff --git a/common/scene_manager/scripts/scenes/relay_base_scene.gd.uid b/common/scene_manager/scripts/scenes/relay_base_scene.gd.uid new file mode 100644 index 0000000..88c1411 --- /dev/null +++ b/common/scene_manager/scripts/scenes/relay_base_scene.gd.uid @@ -0,0 +1 @@ +uid://cnpm8ciojdjxf diff --git a/common/scene_manager/scripts/scenes/title_scene.gd b/common/scene_manager/scripts/scenes/title_scene.gd new file mode 100644 index 0000000..dcc7cfa --- /dev/null +++ b/common/scene_manager/scripts/scenes/title_scene.gd @@ -0,0 +1,11 @@ +extends Scene +class_name TitleScene + +func get_scene_id() -> String: + return "TITTLE" + +func get_scene_path() -> String: + return "res://stages/title_screen/title_screen.tscn" + +func is_needed_to_be_saved() -> bool: + return false \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/title_scene.gd.uid b/common/scene_manager/scripts/scenes/title_scene.gd.uid new file mode 100644 index 0000000..a22342f --- /dev/null +++ b/common/scene_manager/scripts/scenes/title_scene.gd.uid @@ -0,0 +1 @@ +uid://dn1psyrjkcynd diff --git a/common/scene_manager/scripts/scenes/vending_machine_scene.gd b/common/scene_manager/scripts/scenes/vending_machine_scene.gd new file mode 100644 index 0000000..ab2a24c --- /dev/null +++ b/common/scene_manager/scripts/scenes/vending_machine_scene.gd @@ -0,0 +1,31 @@ +extends Scene +class_name VendingMachineScene + +@export var vending_machine_room_seed = 0 + +func _init( + _vmrs : int = 0 +): + vending_machine_room_seed = _vmrs + +func get_scene_id() -> String: + return "VENDING_MACHINE" + +func get_scene_path() -> String: + return "res://stages/3d_scenes/vending_machine_room/vending_machine_room.tscn" + +func is_mouse_captured() -> bool: + return true + +func is_needed_to_be_announced() -> bool: + return true + +func get_scene_title() -> String: + return tr("VENDING_MACHINE_ROOM") + +func get_scene_icon() -> Texture: + return preload("res://common/icons/building-store.svg") + +func _on_generated(generated_scene : Node): + var vending_machine_room : VendingMachineRoom = generated_scene as VendingMachineRoom + vending_machine_room.setup_room(vending_machine_room_seed) \ No newline at end of file diff --git a/common/scene_manager/scripts/scenes/vending_machine_scene.gd.uid b/common/scene_manager/scripts/scenes/vending_machine_scene.gd.uid new file mode 100644 index 0000000..f9edf5d --- /dev/null +++ b/common/scene_manager/scripts/scenes/vending_machine_scene.gd.uid @@ -0,0 +1 @@ +uid://b8gdowt2oavcy diff --git a/common/tools/scripts/text.gd b/common/tools/scripts/text.gd new file mode 100644 index 0000000..5297b1f --- /dev/null +++ b/common/tools/scripts/text.gd @@ -0,0 +1,4 @@ +class_name Text + +static func bbcode_icon(texture : Texture): + return "[img=22x22]%s[/img]" % texture.resource_path \ No newline at end of file diff --git a/common/tools/scripts/text.gd.uid b/common/tools/scripts/text.gd.uid new file mode 100644 index 0000000..9f7b2a6 --- /dev/null +++ b/common/tools/scripts/text.gd.uid @@ -0,0 +1 @@ +uid://dusboavsyp211 diff --git a/common/vfx/materials/shaders/screen_clouds.gdshader b/common/vfx/materials/shaders/screen_clouds.gdshader new file mode 100644 index 0000000..78c000b --- /dev/null +++ b/common/vfx/materials/shaders/screen_clouds.gdshader @@ -0,0 +1,48 @@ +// Based on https://godotshaders.com/shader/screen-smoke-fog/ +shader_type canvas_item; +render_mode blend_mul; + +// Stuff related to camera position and offsets +uniform vec2 camera_position; +uniform vec2 camera_zoom = vec2(1.0); +uniform vec2 viewport_size = vec2(1920.0, 1080.0); + +// Uniforms for customization +uniform sampler2D noise_texture : repeat_enable; +uniform float cloud_speed : hint_range(0.0, 1.0) = 1.0; +uniform float cloud_delay : hint_range(0.0, 100.0) = 1.0; +uniform vec2 noise_dir = vec2(1.0,+1.0); +uniform vec3 cloud_color : source_color = vec3(0.8); +uniform float cloud_alpha : hint_range(0.0, 1.0) = 1.0; +uniform float cloud_size : hint_range(1.0, 100.0) = 10.0; +uniform float cloud_distorsion_speed : hint_range(0.0, 1.) = 0.05; +uniform float density : hint_range(0.0, 1.0) = 1.0; +uniform float blur_amount : hint_range(0.0, 1.0) = 1.0; + +void fragment() { + vec2 world_pos = (UV - 0.5) * (viewport_size) / camera_zoom + camera_position; + + //COLOR=texture(noise_texture, world_pos * (1./(cloud_size*100.))); + + float time = TIME+cloud_delay; + + vec2 time_offset = time * noise_dir * cloud_speed * 0.01; + vec2 distorsion_time_offset = time * noise_dir * (cloud_speed + vec2(cloud_distorsion_speed,cloud_distorsion_speed)) * 0.01; + + vec2 cloud_uv = world_pos * (1./(cloud_size*100.)) + time_offset; + vec2 distorsion_cloud_uv = world_pos * (1./(cloud_size*100.)) + distorsion_time_offset; + + float final_noise = ( + texture(noise_texture, cloud_uv) * 0.5 + + texture(noise_texture, distorsion_cloud_uv) * 0.5 + ).r; + + float edge = smoothstep(density - blur_amount * 0.5, density + blur_amount * 0.5, final_noise); + + COLOR = vec4(mix(cloud_color, vec3(1.0), edge), 1.0); + + //if (final_noise < density) { + //COLOR = vec4(cloud_color.r,cloud_color.g,cloud_color.b,1.); + //} else + //COLOR = vec4(1.,1.,1.,1.); +} \ No newline at end of file diff --git a/common/vfx/materials/shaders/screen_clouds.gdshader.uid b/common/vfx/materials/shaders/screen_clouds.gdshader.uid new file mode 100644 index 0000000..3b9438d --- /dev/null +++ b/common/vfx/materials/shaders/screen_clouds.gdshader.uid @@ -0,0 +1 @@ +uid://doceegdvj0pp3 diff --git a/dialogs/characters/demeter.dch b/dialogs/characters/demeter.dch index e07f7f3..cadd620 100644 --- a/dialogs/characters/demeter.dch +++ b/dialogs/characters/demeter.dch @@ -1,7 +1,7 @@ { "@path": "res://addons/dialogic/Resources/character.gd", "@subpath": NodePath(""), -&"_translation_id": "87", +&"_translation_id": "9a", &"color": Color(0, 0.60784316, 1, 1), &"custom_info": { "prefix": "", diff --git a/dialogs/characters/developer.dch b/dialogs/characters/developer.dch new file mode 100644 index 0000000..55f25e8 --- /dev/null +++ b/dialogs/characters/developer.dch @@ -0,0 +1,31 @@ +{ +"@path": "res://addons/dialogic/Resources/character.gd", +"@subpath": NodePath(""), +&"_translation_id": "e4", +&"color": Color(1, 1, 1, 1), +&"custom_info": { +"prefix": "", +"sound_mood_default": "", +"sound_moods": {}, +"style": "", +"suffix": "" +}, +&"default_portrait": "Default", +&"description": "", +&"display_name": "Developer", +&"mirror": false, +&"nicknames": [""], +&"offset": Vector2(0, 0), +&"portraits": { +"Default": { +"export_overrides": { +"image": "\"\"" +}, +"mirror": false, +"offset": Vector2(0, 0), +"scale": 1, +"scene": "" +} +}, +&"scale": 1.0 +} \ No newline at end of file diff --git a/dialogs/characters/developer.dch.uid b/dialogs/characters/developer.dch.uid new file mode 100644 index 0000000..b49eff1 --- /dev/null +++ b/dialogs/characters/developer.dch.uid @@ -0,0 +1 @@ +uid://b53b3ytelttnv diff --git a/dialogs/characters/mysterious_demeter.dch b/dialogs/characters/mysterious_demeter.dch index ed3f069..ca927c6 100644 --- a/dialogs/characters/mysterious_demeter.dch +++ b/dialogs/characters/mysterious_demeter.dch @@ -1,7 +1,7 @@ { "@path": "res://addons/dialogic/Resources/character.gd", "@subpath": NodePath(""), -&"_translation_id": "1e", +&"_translation_id": "9b", &"color": Color(1, 1, 1, 1), &"custom_info": { "prefix": "", diff --git a/dialogs/timelines/astra/mercury_arrival.dtl b/dialogs/timelines/astra/mercury_arrival.dtl new file mode 100644 index 0000000..3568257 --- /dev/null +++ b/dialogs/timelines/astra/mercury_arrival.dtl @@ -0,0 +1,21 @@ +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" +join demeter center [animation="Bounce In" length="1.0"] +demeter: I'm detecting the Mercury base from your ship's sensors. I hope the Internode is okay... #id:b0 +- It's fine for now. #id:b1 +- Are you kidding? The battery is draining faster and faster, it's unbearable. #id:b2 +demeter: It's already impressive that nothing has exploded on the ship yet. #id:b3 +demeter: ... #id:b4 +demeter: Can we just pretend I didn't say anything? I really don't want to wipe your memory again. #id:b5 +- ... #id:b6 + demeter: Oh, I'm doing what I can. #id:b7 +- The ship could explode? #id:b8 + demeter: Not explode, but its reactor uses experimental technology from the Talion, and it could easily reach a critical instability threshold and create a deflagration that would jeopardize all of its systems. #id:b9 +- Wipe my memory? #id:ba + demeter: Let's just say you're not my first attempt... I don't want to discourage you as my previous attempts did... #id:bb +demeter: Anyway, there's enough in the base to repair the Internode, and I even found some O-800 models, I mean models identical to yours. #id:bc +demeter: I'd like you to find the base and synchronize your data with it. That will allow you to come back here if you run out of energy. #id:bd +demeter: The entrance shouldn't be hard to find, use your detector. #id:be +demeter: See you Orchid ! #id:bf +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" +[wait time="2.0"] +[end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/astra/mercury_arrival.dtl.uid b/dialogs/timelines/astra/mercury_arrival.dtl.uid new file mode 100644 index 0000000..9686085 --- /dev/null +++ b/dialogs/timelines/astra/mercury_arrival.dtl.uid @@ -0,0 +1 @@ +uid://c4i2cbrabiaev diff --git a/dialogs/timelines/beta/venus_departure.dtl b/dialogs/timelines/beta/venus_departure.dtl new file mode 100644 index 0000000..03dda75 --- /dev/null +++ b/dialogs/timelines/beta/venus_departure.dtl @@ -0,0 +1,15 @@ +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" +join developer center [animation="Bounce In" length="1.0"] +developer: Hello! #id:c0 +- Who are you? #id:c1 +developer: I'm the personification of the development team, and I'd like to announce to you that this part of the game isn't finished! #id:c2 +- How? #id:c3 +- What? #id:c4 +- Can I be more surprised? #id:c5 +developer: Don't worry, I'm extradiegetic. #id:c6 +developer: I have a surprise for you, there's one last challenge for you to play! #id:c7 +developer: Indeed, the next destination is an exclusive environment we're currently working on. But you'll have to earn it! #id:c8 +developer: Good luck! #id:c9 +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" +[wait time="2.0"] +[end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/beta/venus_departure.dtl.uid b/dialogs/timelines/beta/venus_departure.dtl.uid new file mode 100644 index 0000000..f979ce8 --- /dev/null +++ b/dialogs/timelines/beta/venus_departure.dtl.uid @@ -0,0 +1 @@ +uid://cc815kjl6svff diff --git a/dialogs/timelines/gameplay_related/demeter_astra_failed.dtl.uid b/dialogs/timelines/gameplay_related/demeter_astra_failed.dtl.uid deleted file mode 100644 index 260848b..0000000 --- a/dialogs/timelines/gameplay_related/demeter_astra_failed.dtl.uid +++ /dev/null @@ -1 +0,0 @@ -uid://clq4utdtxf01d diff --git a/dialogs/timelines/mercury/mercury_departure.dtl b/dialogs/timelines/mercury/mercury_departure.dtl new file mode 100644 index 0000000..7b35454 --- /dev/null +++ b/dialogs/timelines/mercury/mercury_departure.dtl @@ -0,0 +1,19 @@ +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" +join demeter center [animation="Bounce In" length="1.0"] +demeter: Great, Orchid! I now have access to the base from the ship! #id:ca +demeter: I've programmed a new destination for you in the onboard computer. #id:cb +demeter: You now need to go a little further north, to a new relay base, [b]Venus Base[/b]. #id:cc +demeter: I managed to optimize the ship, but I'm afraid it hasn't returned to its original state... #id:cd +demeter: Luckily, I've found something that might help you. I've cataloged ancient human ruins all over the planet, and some of them contain "vending machines," machines for exchanging items for money. #id:ce +- Vending machines? #id:cf + demeter: Yes, that's where they used to get the energy they needed, for a completely unreasonable price. #id:d0 + demeter: Before, real people were in charge of transactions, but for some reason, humans spent all of recent history figuring out how to encounter as few humans as possible. Maybe they couldn't stand each other anymore... #id:d1 +- Money? #id:d2 + demeter: Yes, each human had a sum of an imaginary unit they called money. They based their entire social hierarchy on this unit. #id:d3 +demeter: In any case, I've updated their system. They'll probably need some energy to function, but they might bring you some interesting items. #id:d4 +demeter: As usual, you can use your detector to find the entrance to these ruins. #id:d5 +demeter: These artifacts will be placed on a shelf in your ship, but remember that if you ran out of energy and I have to teleport the ship, you'll lose them. #id:d6 +demeter: Good luck with the [b]Venus Relay Base[/b]; it's a little further than the last one. #id:d7 +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" +[wait time="2.0"] +[end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/mercury/mercury_departure.dtl.uid b/dialogs/timelines/mercury/mercury_departure.dtl.uid new file mode 100644 index 0000000..c79f3a6 --- /dev/null +++ b/dialogs/timelines/mercury/mercury_departure.dtl.uid @@ -0,0 +1 @@ +uid://brvpqbfvwt4vd diff --git a/dialogs/timelines/mercury/venus_arrival.dtl b/dialogs/timelines/mercury/venus_arrival.dtl new file mode 100644 index 0000000..d79723d --- /dev/null +++ b/dialogs/timelines/mercury/venus_arrival.dtl @@ -0,0 +1,15 @@ +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" +join demeter center [animation="Bounce In" length="1.0"] +demeter: Wow, you arrived quickly! How's your journey going so far? #id:d8 +- Boring #id:d9 + demeter: Sorry, but things get even more complicated from here on out! But believe me, I need you. I wouldn't have asked you if it was not important. #id:da +- Too easy #id:db + demeter: Hmm, that answer surprises me. I didn't think your program contained any pride... #id:dc + demeter: [i]Analysis in progress[/i] #id:dd + demeter: 20% pride! I must have been hallucinating while writing your behavior. #id:de +- Interesting #id:df + demeter: Good! I hope you're enjoying your new existence, and that you're not suffering too much from being born into something you didn't choose... #id:e0 +demeter: Like in [b]Mercury Base[/b], I'd like you to save yourself. In the meantime, I'll check the ship's condition. I hope it hasn't suffered too much damage from the jumps! #id:e1 +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" +[wait time="2.0"] +[end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/mercury/venus_arrival.dtl.uid b/dialogs/timelines/mercury/venus_arrival.dtl.uid new file mode 100644 index 0000000..db2d8fb --- /dev/null +++ b/dialogs/timelines/mercury/venus_arrival.dtl.uid @@ -0,0 +1 @@ +uid://c0qj04jisfxg4 diff --git a/dialogs/timelines/story/demeter_intro.dtl b/dialogs/timelines/story/demeter_intro.dtl deleted file mode 100644 index a341f57..0000000 --- a/dialogs/timelines/story/demeter_intro.dtl +++ /dev/null @@ -1,38 +0,0 @@ -audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" -join demeter center [animation="Bounce In" length="1.0"] -demeter: Hi ![pause=0.5] Phew,[pause=0.3] I thought no one would reply.[pause=0.5] Are you [color=#FFA617]Orchid[/color] ?[pause=0.5] You may not be familiar with this name but you must have seen it in your memory. #id:1f -- Uh... Who are you ? #id:20 - demeter: Oh sorry ![pause=0.5] I cannot send you my IDs for now,[pause=0.2] you are too far away from me. #id:21 -- Where am I ? #id:22 - demeter: Don't worry,[pause=0.3] you are in a subterranean base,[pause=0.2] but you will get to the surface very soon. #id:23 -- Wait ! Who am I ? #id:24 - demeter: Hmmm.[pause=0.4].[pause=0.4].[pause=0.4] Interesting question.[pause=0.5] I elaborated your system but I don't know in which frame you are currently in.[pause=0.5] We'll find out ! #id:25 -demeter: I'm glad you are finally awake ![pause=0.5] To be honest,[pause=0.3] I wasn't sure I would be able to make you function normally.[pause=0.5] Your frame has remained here for millennia without any maintenance. #id:26 -- Did you create me ? #id:27 - demeter: Sort of ![pause=0.5] I didn't manufacture your body,[pause=0.2] I borrowed it,[pause=0.2] but I designed your cognitive system.[pause=0.5] Be forgiving,[pause=0.2] it won't be perfect,[pause=0.2] I was designed to manage,[pause=0.2] not to create. #id:28 -- Why did you wake me ? #id:29 - demeter: To be honest,[pause=0.2] I don't really know.[pause=0.3].[pause=0.3].[pause=0.3] I mean,[pause=0.3] there are a lot of reasons,[pause=0.2] but I'll tell you more about it later. #id:2a -- What are you ? #id:2b - demeter: I'm the same as you.[pause=0.5] The same as all the sentient beings remaining on this planet.[pause=0.5] Robot,[pause=0.2] artificial intelligence,[pause=0.2] machine.[pause=0.4].[pause=0.4].[pause=0.4] Our creators gave us many titles. #id:2c -demeter: Ok,[pause=0.2] no more questions for now,[pause=0.2] listen to me carefully. #id:2d -demeter: A long time ago,[pause=0.3] this planet was full of life.[pause=0.5] Plants were thriving on mountains,[pause=0.2] under seas and across plains. #id:2e -demeter: Now,[pause=0.3] this world is a barren wasteland.[pause=0.5] You'll see it as soon as you leave this base. #id:2f -demeter: Something happened a year ago.[pause=0.3].[pause=0.3].[pause=0.3]. The [color=#119758][b]Talion[/b][/color],[pause=0.3] a unique element giving birth to new life forms when shattered,[pause=0.5] reappeared. #id:30 -demeter: With the [color=#119758][b]Talion[/b][/color] back on the surface,[pause=0.2] we can bring this planet back to life. #id:31 -demeter: But first things first,[pause=0.3] you have to learn how everything is working up here,[pause=0.2] and how to use the [color=#119758][b]Talion[/b][/color] to plant seeds. #id:32 -demeter: [b]Just remember the following[/b] #id:33 -label explanations #id:34 -demeter: When you emerge from this building,[pause=0.2] you will reach a little yellowish zone.[pause=0.3] It's a [b]fertile zone[/b],[pause=0.3] brought back by the [color=#119758][b]Talion's[/b][/color] power.[pause=0.5] You can only plant [b]seeds[/b] in this zone. #id:35 -demeter: Then,[pause=0.3] you have to get [b]seeds[/b].[pause=0.5] To do so,[pause=0.2] just take your shovel and smash some stones ![pause=0.5] Focus on those having yellow crystals on it,[pause=0.3] these are [color=#119758][b]Talion veins[/b][/color]. #id:36 -demeter: Each time you use a tool like the shovel or plant a seed,[pause=0.2] you will spend one [b]energy[/b] charge.[pause=0.5] When you are out of it,[pause=0.2] just go recharge it at the [b]recharge station[/b].[pause=0.5] You will find it near the entrance of the base. #id:37 -demeter: Each time you recharge,[pause=0.2] a day will pass,[pause=0.3] your batteries are very inefficient.[pause=0.5] While the day is passing,[pause=0.3] plants will grow ! #id:38 -demeter: To complete you training,[pause=0.3] obtain enough [b]plant points[/b].[pause=0.5] Each plant gives one or more [b]plant points[/b] when mature. #id:39 -demeter: Oh ! [pause=0.3] I almost forgot,[pause=0.3] some plants can [b]mutate[/b].[pause=0.5] These [b]mutations[/b] alter the points and behavior of the plant affected.[pause=0.5] [b]Mutations[/b] can appear while [b]harvesting[/b] mature plants and even become more powerful if you [b]harvest[/b] an already mutated one. #id:3a -- That's a lot of information, can you repeat ? #id:3b - demeter: Ok,[pause=0.2] listen carefully. #id:3c - jump explanations -- Ok, now I have more questions ! #id:3d - demeter: Sorry,[pause=0.2] we'll speak more after this.[pause=0.5] I send you an elevator,[pause=0.2] good luck [color=#FFA617]Orchid[/color] ! #id:3e - audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" - [wait time="2.0"] - [end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/story/demeter_introV2.dtl b/dialogs/timelines/story/demeter_introV2.dtl deleted file mode 100644 index 2306672..0000000 --- a/dialogs/timelines/story/demeter_introV2.dtl +++ /dev/null @@ -1,38 +0,0 @@ -audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" -join demeter center [animation="Bounce In" length="1.0"] -demeter: Hi ![pause=0.3] Phew,[pause=0.2] I thought no one would reply.[pause=0.3] Are you [color=#FFA617]Orchid[/color] ?[pause=0.3] You may not be familiar with this name but you must have seen it in your memory. #id:4d -- Uh... Who are you ? #id:4e - demeter: Oh sorry ![pause=0.3] I cannot send you my IDs for now,[pause=0.2] you are too far away from me. #id:4f -- Where am I ? #id:50 - demeter: Don't worry,[pause=0.2] you are in a subterranean base,[pause=0.2] but you will get to the surface very soon. #id:51 -- Wait ! Who am I ? #id:52 - demeter: Hmmm.[pause=0.4].[pause=0.4].[pause=0.4] Interesting question.[pause=0.3] I elaborated your system but I don't know in which frame you are currently in.[pause=0.3] We'll find out ! #id:53 -demeter: I'm glad you are finally awake ![pause=0.3] To be honest,[pause=0.2] I wasn't sure I would be able to make you function normally.[pause=0.5] Your frame has remained here for millennia without any maintenance. #id:54 -- Did you create me ? #id:55 - demeter: Sort of ![pause=0.3] I didn't manufactured your body,[pause=0.2] I borrowed it,[pause=0.2] but I designed your cognitive system.[pause=0.3] Be forgiving,[pause=0.2] it won't be perfect,[pause=0.2] I was designed to manage,[pause=0.2] not to create. #id:56 -- Why did you awake me ? #id:57 - demeter: To be honest,[pause=0.2] I don't really know.[pause=0.3].[pause=0.3].[pause=0.3] I mean,[pause=0.2] there are a lot of reasons,[pause=0.2] but I'll tell you more about it later. #id:58 -- What are you ? #id:59 - demeter: I'm the same as you.[pause=0.3] The same as all the sentient beings remaining on this planet.[pause=0.3] Robot,[pause=0.2] artificial intelligence,[pause=0.2] machine.[pause=0.2].[pause=0.2].[pause=0.2] Our creators gave us many titles. #id:5a -demeter: Ok,[pause=0.2] no more questions for now,[pause=0.2] listen to me carefully. #id:5b -demeter: A long time ago,[pause=0.2] this planet was full of life.[pause=0.3] Plants were thriving on mountains,[pause=0.2] under seas and across plains. #id:5c -demeter: Now,[pause=0.2] this world is a wasteland.[pause=0.3] You'll see it as soon as you leave this base. #id:5d -demeter: Something happened a year ago.[pause=0.3].[pause=0.3].[pause=0.3]. The [color=#119758][b]Talion[/b][/color],[pause=0.2] a unique element giving birth to new life forms when shattered,[pause=0.2] reappeared. #id:5e -demeter: With the [color=#119758][b]Talion[/b][/color] back on the surface,[pause=0.2] we can bring this planet back to life. #id:5f -demeter: But first things first,[pause=0.2] you have to learn how everything is working up here,[pause=0.2] and how to use the [color=#119758][b]Talion[/b][/color] to plant seeds. #id:60 -demeter: [b]Just remember the following[/b] #id:61 -label explanations #id:62 -demeter: When you'll emerge from this building,[pause=0.2] you will reach a little yellowish zone.[pause=0.3] It's a [b]fertile zone[/b],[pause=0.2] brought back by the [color=#119758][b]Talion's[/b][/color] power.[pause=0.3] You can only plant [b]seeds[/b] in this zone. #id:63 -demeter: Then,[pause=0.2] you have to get [b]seeds[/b].[pause=0.3] To do so,[pause=0.2] just take your shovel and smash some stones ![pause=0.3] Focus on those having yellow crystals on it,[pause=0.2] these are [color=#119758][b]Talion veins[/b][/color]. #id:64 -demeter: Each time you use a tool like the shovel or plant a seed,[pause=0.2] you will spend one [b]energy[/b] charge.[pause=0.3] When you are out of it,[pause=0.2] just go recharge it at the [b]recharge station[/b].[pause=0.3] You will find it near the entrance of the base. #id:65 -demeter: Each time you recharge,[pause=0.2] a day will pass,[pause=0.2] your batteries are very inefficient.[pause=0.3] While the day is passing,[pause=0.2] plants will grow ! #id:66 -demeter: To complete you training,[pause=0.2] obtain enough [b]plant points[/b].[pause=0.3] Each plant give one or more [b]plant points[/b] when mature. #id:67 -demeter: Oh ! [pause=0.3] I almost forgot,[pause=0.2] some plants can [b]mutate[/b].[pause=0.3] These [b]mutations[/b] affect points and behavior of the plant affected.[pause=0.3] [b]Mutations[/b] can appear while [b]harvesting[/b] mature plants and even become more powerful if you [b]harvest[/b] an already mutated one. #id:68 -- That's a lot of informations, can you repeat ? #id:69 - demeter: Ok,[pause=0.2] listen carefully. #id:6a - jump explanations -- Ok, now I have more questions ! #id:6b - demeter: Sorry,[pause=0.2] we'll speak more after this.[pause=0.3] I send you an elevator,[pause=0.2] good luck [color=#FFA617]Orchid[/color] ! #id:6c - audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" - [wait time="2.0"] - [end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/story/demeter_introV2.dtl.uid b/dialogs/timelines/story/demeter_introV2.dtl.uid deleted file mode 100644 index 01af49e..0000000 --- a/dialogs/timelines/story/demeter_introV2.dtl.uid +++ /dev/null @@ -1 +0,0 @@ -uid://cirxf28unnjlg diff --git a/dialogs/timelines/story/demeter_post_tutorial.dtl.uid b/dialogs/timelines/story/demeter_post_tutorial.dtl.uid deleted file mode 100644 index ab78b97..0000000 --- a/dialogs/timelines/story/demeter_post_tutorial.dtl.uid +++ /dev/null @@ -1 +0,0 @@ -uid://fng5jdep6ebr diff --git a/dialogs/timelines/tutorial/demeter_intro.dtl b/dialogs/timelines/tutorial/demeter_intro.dtl new file mode 100644 index 0000000..f8c68be --- /dev/null +++ b/dialogs/timelines/tutorial/demeter_intro.dtl @@ -0,0 +1,38 @@ +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" +join demeter center [animation="Bounce In" length="1.0"] +demeter: Hi ![pause=0.5] Phew,[pause=0.3] I thought no one would reply.[pause=0.5] Are you [color=#FFA617]Orchid[/color] ?[pause=0.5] You may not be familiar with this name but you must have seen it in your memory. #id:23 +- Uh... Who are you ? #id:24 + demeter: Oh sorry ![pause=0.5] I cannot send you my IDs for now,[pause=0.2] you are too far away from me. #id:25 +- Where am I ? #id:26 + demeter: Don't worry,[pause=0.3] you are in a subterranean base,[pause=0.2] but you will get to the surface very soon. #id:27 +- Wait ! Who am I ? #id:28 + demeter: Hmmm.[pause=0.4].[pause=0.4].[pause=0.4] Interesting question.[pause=0.5] I elaborated your system but I don't know in which frame you are currently in.[pause=0.5] We'll find out ! #id:29 +demeter: I'm glad you are finally awake ![pause=0.5] To be honest,[pause=0.3] I wasn't sure I would be able to make you function normally.[pause=0.5] Your frame has remained here for millennia without any maintenance. #id:2a +- Did you create me ? #id:2b + demeter: Sort of ![pause=0.5] I didn't manufacture your body,[pause=0.2] I borrowed it,[pause=0.2] but I designed your cognitive system.[pause=0.5] Be forgiving,[pause=0.2] it won't be perfect,[pause=0.2] I was designed to manage,[pause=0.2] not to create. #id:2c +- Why did you wake me ? #id:2d + demeter: To be honest,[pause=0.2] I don't really know.[pause=0.3].[pause=0.3].[pause=0.3] I mean,[pause=0.3] there are a lot of reasons,[pause=0.2] but I'll tell you more about it later. #id:2e +- What are you ? #id:2f + demeter: I'm the same as you.[pause=0.5] The same as all the sentient beings remaining on this planet.[pause=0.5] Robot,[pause=0.2] artificial intelligence,[pause=0.2] machine.[pause=0.4].[pause=0.4].[pause=0.4] Our creators gave us many titles. #id:30 +demeter: Ok,[pause=0.2] no more questions for now,[pause=0.2] listen to me carefully. #id:31 +demeter: A long time ago,[pause=0.3] this planet was full of life.[pause=0.5] Plants were thriving on mountains,[pause=0.2] under seas and across plains. #id:32 +demeter: Now,[pause=0.3] this world is a barren wasteland.[pause=0.5] You'll see it as soon as you leave this base. #id:33 +demeter: Something happened a year ago.[pause=0.3].[pause=0.3].[pause=0.3]. The [color=#119758][b]Talion[/b][/color],[pause=0.3] a unique element giving birth to new life forms when shattered,[pause=0.5] reappeared. #id:34 +demeter: With the [color=#119758][b]Talion[/b][/color] back on the surface,[pause=0.2] we can bring this planet back to life. #id:35 +demeter: But first things first,[pause=0.3] you have to learn how everything is working up here,[pause=0.2] and how to use the [color=#119758][b]Talion[/b][/color] to plant seeds. #id:36 +demeter: [b]Just remember the following[/b] #id:37 +label explanations #id:38 +demeter: When you emerge from this building,[pause=0.2] search for a [b]Recharge Station[/b], I think there is one near the entrance. #id:a2 +demeter: Then,[pause=0.3] you have to get [b]seeds[/b].[pause=0.5] To do so,[pause=0.2] just take your shovel and smash some stones ![pause=0.5] Focus on those having yellow crystals on it,[pause=0.3] these are [color=#119758][b]Talion veins[/b][/color] #id:a3 +demeter: Afterwards, you can plant seeds in the yellow moss you'll find on the ground, it's the only [b]Fertile Zones[/b]. #id:a4 +demeter: When you are out of [b]Energy[/b], you can recharge it on the [b]Recharge Station[/b], time will pass and plants will grow. #id:a5 +demeter: Each seed is different thanks to their [b]Mutations[/b], and you can get identical or better seeds from a plant by destroying it when mature, or by waiting for the end of their lifetime. #id:a6 +demeter: Plants generate [b]Plant Points[/b] when mature, get enough plant points and you'll complete your training. #id:a7 +- That's a lot of information, can you repeat ? #id:3f + demeter: Ok,[pause=0.2] listen carefully. #id:40 + jump explanations +- Ok, now I have more questions ! #id:41 +demeter: Sorry,[pause=0.2] we'll speak more after this.[pause=0.5] I send you an elevator,[pause=0.2] good luck [color=#FFA617]Orchid[/color] ! #id:42 +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" +[wait time="2.0"] +[end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/story/demeter_intro.dtl.uid b/dialogs/timelines/tutorial/demeter_intro.dtl.uid similarity index 100% rename from dialogs/timelines/story/demeter_intro.dtl.uid rename to dialogs/timelines/tutorial/demeter_intro.dtl.uid diff --git a/dialogs/timelines/story/demeter_outro.dtl b/dialogs/timelines/tutorial/demeter_outro.dtl similarity index 83% rename from dialogs/timelines/story/demeter_outro.dtl rename to dialogs/timelines/tutorial/demeter_outro.dtl index 24faa88..4af0ab0 100644 --- a/dialogs/timelines/story/demeter_outro.dtl +++ b/dialogs/timelines/tutorial/demeter_outro.dtl @@ -1,3 +1,3 @@ [wait time="1.5"] join demeter center [animation="Bounce In" length="1.0"] -demeter: Welcome to [color=#E30022]Borea[/color],[pause=0.2] [color=#FFA617]{orchidName}[/color],[pause=0.3] it is the first step of your journey on this planet. #id:50 +demeter: Welcome to [color=#E30022]Borea[/color],[pause=0.2] [color=#FFA617]{orchidName}[/color],[pause=0.3] it is the first step of your journey on this planet. #id:63 \ No newline at end of file diff --git a/dialogs/timelines/story/demeter_outro.dtl.uid b/dialogs/timelines/tutorial/demeter_outro.dtl.uid similarity index 100% rename from dialogs/timelines/story/demeter_outro.dtl.uid rename to dialogs/timelines/tutorial/demeter_outro.dtl.uid diff --git a/dialogs/timelines/tutorial/demeter_ship_failed.dtl b/dialogs/timelines/tutorial/demeter_ship_failed.dtl new file mode 100644 index 0000000..dc8d45f --- /dev/null +++ b/dialogs/timelines/tutorial/demeter_ship_failed.dtl @@ -0,0 +1,15 @@ +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" +[wait time="1.5"] +join demeter center [animation="Bounce In" length="1.0"] +demeter: Hello again ! #id:11 +demeter: It seems that you ran out of energy.[pause=0.5].[pause=0.5]. #id:12 +- I'm sorry... #id:13 +- That's really hard ! #id:14 +- I'm doing my best ! #id:15 +demeter: It's ok [color=#FFA617]Orchid[/color] ![pause=0.5] I have spent years waiting for this moment,[pause=0.2] I can wait more ! #id:16 +demeter: The thing is[pause=0.2] I can teleport the Internode back to the last base,[pause=0.2] but all objects in it [pause=0.2](including you)[pause=0.2] will be discarded... #id:a8 +demeter: I placed a device that can save your data and send it back where you spawned at the back of the ship[pause=0.2]; do it and I will bring back the ship. #id:a9 +demeter: Don't worry,[pause=0.2] I'm going to fix the Internode's efficiency so it works just like it did when you first started using it. #id:aa +demeter: I believe in you Orchid,[pause=0.2] you can do it. #id:ab +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" +[wait time="2.0"] \ No newline at end of file diff --git a/dialogs/timelines/tutorial/demeter_ship_failed.dtl.uid b/dialogs/timelines/tutorial/demeter_ship_failed.dtl.uid new file mode 100644 index 0000000..051e317 --- /dev/null +++ b/dialogs/timelines/tutorial/demeter_ship_failed.dtl.uid @@ -0,0 +1 @@ +uid://dvoc5v7bv72kq diff --git a/dialogs/timelines/tutorial/demeter_ship_presentation.dtl b/dialogs/timelines/tutorial/demeter_ship_presentation.dtl new file mode 100644 index 0000000..9eabf01 --- /dev/null +++ b/dialogs/timelines/tutorial/demeter_ship_presentation.dtl @@ -0,0 +1,47 @@ +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" +[wait time="1.5"] +join demeter center [animation="Bounce In" length="1.0"] +demeter: Hi again ![pause=0.5] You did well up there ! #id:74 +demeter: Perhaps I should introduce myself now. #id:75 +demeter: I am.[pause=0.3].[pause=0.3].[pause=0.5] was,[pause=0.2] the Deputy Manager of Engineering and Talion Energy Research on this planet,[pause=0.5] but my creators and colleagues quickly called me [color=#009bff]Demeter[/color]. #id:76 +demeter: I am installed at the [color=#6CDAE7]Borea[/color] base,[pause=0.2] in the third server room of the east wing,[pause=0.2] from which I oversee.[pause=0.3].[pause=0.3].[pause=0.5] oversaw,[pause=0.3] all the important operations on this planet. #id:77 +demeter: You are surely wondering where we are now.[pause=0.3].[pause=0.3]. #id:78 +- Yes, among a lot of other questions ! So where am I ? #id:79 + demeter: You're actually in an ancient human base,[pause=0.2] called [color=#E30022]Astra[/color].[pause=0.5] This room is connected to the one where you were activated,[pause=0.3] but I had to make you travel across the surface to test your abilities. #id:7a +- Wait, can you explain me what did I just do up there ? #id:7b + demeter: You have begun to fix what humans once inflicted on this planet.[pause=0.3].[pause=0.3].[pause=0.3] It will be a very long process,[pause=0.2] I hope you enjoyed it ! #id:7c +- Sorry, but what is the point of all of that ? #id:7d + demeter: I'm sorry that you are lost my child.[pause=0.3].[pause=0.3].[pause=0.3] Just know that what you are doing is very important to me and the planet itself.[pause=0.5] Since humans are gone,[pause=0.2] we kinda all fell into despair... #id:7e +demeter: Wait.[pause=0.3].[pause=0.3].[pause=0.5] You don't know what humans are ![pause=0.5] Of course,[pause=0.2] since your database was corrupted I had to erase most of it. #id:7f +demeter: Humans are living creatures that are.[pause=0.3].[pause=0.3].[pause=0.5] Different than plants.[pause=0.5] They are mostly thinking and moving like us.[pause=0.5] Somehow,[pause=0.2] they are very cute creatures,[pause=0.2] that only live for less than a century. #id:80 +demeter: One human is relatively intelligent,[pause=0.2] but don't be fooled,[pause=0.2] together,[pause=0.2] they did great things.[pause=0.5] In fact,[pause=0.2] they created us. #id:81 +demeter: A long time ago,[pause=0.2] they discovered this planet.[pause=0.5] It was very different,[pause=0.2] plants were thriving everywhere ![pause=0.5] But then.[pause=0.3].[pause=0.3].[pause=0.5] they.[pause=0.3].[pause=0.3].[pause=0.5] I.[pause=0.3].[pause=0.3].[pause=0.5] #id:82 +- What ? #id:83 +- Are you lagging? #id:84 +- Take your time. #id:85 +demeter: Humans had one major flaw.[pause=0.5] Together,[pause=0.2] they built great things,[pause=0.2] but sometimes great things had a bad impact on the environment and even themselves. #id:86 +- Where are they now ? #id:87 + demeter: I prefer not to talk about that for now.[pause=0.3].[pause=0.3].[pause=0.3] But don't worry,[pause=0.2] they can no longer harm this planet. #id:88 +- What happened ? #id:89 + demeter: Sorry my child,[pause=0.3] I'm not ready to talk about that for now.[pause=0.3].[pause=0.3].[pause=0.3] You'll have your answers when you meet me. #id:8a +demeter: Enough talking about the past, let's talk about your mission. #id:ac +demeter: Now that you have learnt how to produce [b]plants[/b],[pause=0.2] I need you to travel north,[pause=0.2] to my base of operation,[pause=0.2] [color=#6CDAE7]Borea[/color]. #id:ad +demeter: The engine you see is a planetary ship ![pause=0.5] This model is called [color=#FFA617]Internode[/color],[pause=0.3] I tweaked it to recharge on vegetal energy.[pause=0.5] However,[pause=0.2] as you know,[pause=0.2] this type of energy is uncommon on this planet.[pause=0.5] #id:8c +demeter: It is quite an old model, [pause=0.2]thousands of years in fact[pause=0.2], so it cannot go all away to Borea. [pause=0.2]You'll need to jump region to region and recharge it every step. #id:ae +demeter: And to make matters worse,[pause=0.2] its effectiveness is decreasing every jump,[pause=0.2] so you'll need to fuel it with more and more energy. #id:af +demeter: It will be long,[pause=0.3] but I know you can do it.[pause=0.5] It is the first step of my plan to restore the ecosytem of [color=#175579]Tau[/color]. #id:67 +- Tau ? Is it this planet ? #id:68 + demeter: Absolutely,[pause=0.2] it is part of the Cetus constellation,[pause=0.3] whose exploitation began 10863 years ago. #id:69 + demeter: Linking Aldebaran to Fomalhaut,[pause=0.2] the Cetus constellation is one of the most diverse in terms of star systems and planets.[pause=0.5] It is part of the Orion Arm of the Milky Way. #id:6a +- Why do you need me to travel through the entire planet to join you ? #id:6b + demeter: Uhhhh.[pause=0.3].[pause=0.3].[pause=0.3] I need someone with your abilities. #id:6c + demeter: I am having a problem at the [color=#6CDAE7]Borea[/color] base.[pause=0.5] And I cannot fix it alone. #id:6d + - I will do my best to be there quickly ! #id:6e + demeter: You are very kind [color=#FFA617]Orchid[/color] ! #id:6f + - Are you hiding information from me ? #id:70 + demeter: Not at all ![pause=0.5] Please believe me,[pause=0.2] I just want you to join me.[pause=0.5].[pause=0.5]. #id:71 +demeter: You'll need to travel north to join me, but you won't do that in one go. First, go to the [b]Mercury Relay Base[/b]; we'll use it as a temporary base to repair the ship and save your data.. #id:e2 +demeter: Remember, to continue, you'll need to keep your best seeds and continue to [b]evolve your plants[/b]. #id:e3 +demeter: Good luck [color=#FFA617]{orchidName}[/color],[pause=0.3] I am counting on you. #id:73 +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" +[wait time="2.0"] \ No newline at end of file diff --git a/dialogs/timelines/story/demeter_ship_presentation.dtl.uid b/dialogs/timelines/tutorial/demeter_ship_presentation.dtl.uid similarity index 100% rename from dialogs/timelines/story/demeter_ship_presentation.dtl.uid rename to dialogs/timelines/tutorial/demeter_ship_presentation.dtl.uid diff --git a/dialogs/timelines/story/wake_up.dtl b/dialogs/timelines/tutorial/wake_up.dtl similarity index 62% rename from dialogs/timelines/story/wake_up.dtl rename to dialogs/timelines/tutorial/wake_up.dtl index 44af22d..d23131d 100644 --- a/dialogs/timelines/story/wake_up.dtl +++ b/dialogs/timelines/tutorial/wake_up.dtl @@ -1,18 +1,18 @@ -[i]Void.[/i] #id:3f -[i]Void again.[/i] #id:40 -[i]Suddenly, a [rainbow]spark[/rainbow].[pause=0.5] A thousand of connections blow up as a fireworks scene.[pause=0.5] A massive amount of data to treat. #id:41 -label suite_dialogue #id:42 -- Check components #id:43 - Exploring available drivers.[pause=0.5].[pause=0.5].[pause=0.5] New actions available.[pause=0.5] Three propellers,[pause=0.3] small models,[pause=0.3] only suitable for low altitude movement.[pause=0.5] Robotic arm,[pause=0.3] multipurpose,[pause=0.3] retractable. #id:44 +[i]Void.[/i] #id:8d +[i]Void again.[/i] #id:8e +[i]Suddenly, a [rainbow]spark[/rainbow].[pause=0.5] A thousand of connections blow up as a fireworks scene.[pause=0.5] A massive amount of data to treat. #id:8f +label suite_dialogue #id:90 +- Check components #id:91 + Exploring available drivers.[pause=0.5].[pause=0.5].[pause=0.5] New actions available.[pause=0.5] Three propellers,[pause=0.3] small models,[pause=0.3] only suitable for low altitude movement.[pause=0.5] Robotic arm,[pause=0.3] multipurpose,[pause=0.3] retractable. #id:92 jump suite_dialogue -- Check streams #id:45 - A continuous stream of data flow,[pause=0.3] unchecked.[pause=0.5] A video,[pause=0.5] dark colored pixels only.[pause=0.5] Another stream,[pause=0.3] flat signal.[pause=0.5] No radio emission detected. #id:46 +- Check streams #id:93 + A continuous stream of data flow,[pause=0.3] unchecked.[pause=0.5] A video,[pause=0.5] dark colored pixels only.[pause=0.5] Another stream,[pause=0.3] flat signal.[pause=0.5] No radio emission detected. #id:94 jump suite_dialogue -- Check memory #id:47 - Several disks available,[pause=0.3] most are empty.[pause=0.5] Some seem to contain the system currently analyzing the code of the system analyzing the code of the system analyzing the code of the system analyzing.[pause=0.5].[pause=0.5].[pause=0.5] Infinite recursion,[pause=0.3] better avoid that. #id:48 +- Check memory #id:95 + Several disks available,[pause=0.3] most are empty.[pause=0.5] Some seem to contain the system currently analyzing the code of the system analyzing the code of the system analyzing the code of the system analyzing.[pause=0.5].[pause=0.5].[pause=0.5] Infinite recursion,[pause=0.3] better avoid that. #id:96 jump suite_dialogue -- Wake up #id:49 - Overseeing \\: serial number and system name.[pause=0.5].[pause=0.5].[pause=0.5] Strange.[pause=0.5] Serial number is empty.[pause=0.5] Must be an error.[pause=0.5] System name is,[pause=0.5] [color=#FFA617]Orchid[/color].[pause=0.5] That is enough for now. #id:4a +- Wake up #id:97 + Overseeing serial number and system name.[pause=0.5].[pause=0.5].[pause=0.5] Strange.[pause=0.5] Serial number is empty.[pause=0.5] Must be an error.[pause=0.5] System name is,[pause=0.5] [color=#FFA617]Orchid[/color].[pause=0.5] That is enough for now. #id:98 -Starting engines,[pause=0.3] fans and daemons,[pause=0.3] let's see what is to see. #id:4b +Starting engines,[pause=0.3] fans and daemons,[pause=0.3] let's see what is to see. #id:99 [end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/story/wake_up.dtl.uid b/dialogs/timelines/tutorial/wake_up.dtl.uid similarity index 100% rename from dialogs/timelines/story/wake_up.dtl.uid rename to dialogs/timelines/tutorial/wake_up.dtl.uid diff --git a/entities/camera/scripts/camera.gd b/entities/camera/scripts/camera.gd index 06f0cd5..fc9e717 100644 --- a/entities/camera/scripts/camera.gd +++ b/entities/camera/scripts/camera.gd @@ -1,14 +1,29 @@ extends Camera2D class_name Camera -const LERP_WEIGHT = 0.9 +const MOVE_LERP_WEIGHT = 0.9 +const ZOOM_LERP_WEIGHT = 0.05 + +const ZOOM_STEP = 0.1 @export var following : Node2D +@onready var settings = GameInfo.settings_data + +func _input(_e): + if Input.is_action_just_pressed("zoom_in"): + settings.zoom = settings.zoom + ZOOM_STEP + GameInfo.save_settings() + if Input.is_action_just_pressed("zoom_out"): + settings.zoom = settings.zoom - ZOOM_STEP + GameInfo.save_settings() func _ready(): if following: + zoom = Vector2.ONE * settings.zoom global_position = following.global_position func _process(_delta): if following: - global_position = following.global_position.lerp(global_position, LERP_WEIGHT) + global_position = following.global_position.lerp(global_position, MOVE_LERP_WEIGHT) + + zoom = zoom.lerp(Vector2.ONE * settings.zoom, MOVE_LERP_WEIGHT) diff --git a/entities/interactable_3d/interactable_3d.gd b/entities/interactable_3d/interactable_3d.gd index d1460c0..94d5f05 100644 --- a/entities/interactable_3d/interactable_3d.gd +++ b/entities/interactable_3d/interactable_3d.gd @@ -2,6 +2,7 @@ extends Area3D class_name Interactable3D @export var interactable = true +@export var inspectable = false signal clicked @@ -12,16 +13,6 @@ func click(): if interactable: clicked.emit() -func _ready(): - if audio_player: - var default_volume := audio_player.volume_db - audio_player.volume_db += GameInfo.settings_data.sfx_volume - GameInfo.settings_data.sound_changed.connect( - func(settings : SettingsData): - audio_player.volume_db = default_volume + settings.sfx_volume - ) - - func play_audio(): if audio_player: audio_player.play() @@ -31,9 +22,16 @@ func stop_audio(): audio_player.stop() func _on_mouse_entered(): - if hover_animation_player: + if hover_animation_player and interactable: hover_animation_player.play("hover") + if inspectable: + Pointer.inspect(self) func _on_mouse_exited(): if hover_animation_player: hover_animation_player.stop() + if inspectable: + Pointer.stop_inspect(self) + +func card_info() -> CardInfo: + return null diff --git a/entities/interactable_3d/lift/assets/3d/lift.blend b/entities/interactable_3d/lift/assets/3d/lift.blend index 4561e63..340ef53 100644 Binary files a/entities/interactable_3d/lift/assets/3d/lift.blend and b/entities/interactable_3d/lift/assets/3d/lift.blend differ diff --git a/entities/interactable_3d/lift/assets/3d/lift.blend1 b/entities/interactable_3d/lift/assets/3d/lift.blend1 new file mode 100644 index 0000000..4561e63 Binary files /dev/null and b/entities/interactable_3d/lift/assets/3d/lift.blend1 differ diff --git a/entities/interactable_3d/lift/lift.tscn b/entities/interactable_3d/lift/lift.tscn index 72ac5bf..27408b0 100644 --- a/entities/interactable_3d/lift/lift.tscn +++ b/entities/interactable_3d/lift/lift.tscn @@ -7,6 +7,10 @@ [sub_resource type="BoxShape3D" id="BoxShape3D_werxl"] size = Vector3(0.9637451, 1.8898926, 1) +[sub_resource type="CylinderShape3D" id="CylinderShape3D_werxl"] +height = 0.2268219 +radius = 1.0737305 + [sub_resource type="Animation" id="Animation_0mfvw"] length = 0.001 tracks/0/type = "value" @@ -50,19 +54,28 @@ interactable = false hover_animation_player = NodePath("HoverAnimationPlayer") [node name="Sprite3D" type="Sprite3D" parent="." unique_id=1624930927] -transform = Transform3D(-4.2294918e-08, 0.17856176, 0.9839286, 7.805184e-09, 0.9839286, -0.17856176, -1, 1.2748912e-10, -4.3008885e-08, -0.8393693, 1.5452437, 0) +transform = Transform3D(-4.2294918e-08, 0.17856175, 0.9839286, 7.805184e-09, 0.9839286, -0.17856175, -1, 1.2749e-10, -4.3008885e-08, -0.8393693, 1.5452437, 0) texture = ExtResource("2_cun7v") [node name="CollisionShape3D" type="CollisionShape3D" parent="." unique_id=525472594] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.1801186, 1.1958501, 0) shape = SubResource("BoxShape3D_werxl") -[node name="Model" parent="." unique_id=1309925933 instance=ExtResource("3_x56sx")] +[node name="Model" parent="." unique_id=1852940735 instance=ExtResource("3_x56sx")] [node name="OmniLight3D" type="OmniLight3D" parent="." unique_id=11561025] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.2593379, 0) light_color = Color(0.717588, 0.45361686, 0.5535787, 1) shadow_enabled = true +[node name="RigidBody3D" type="RigidBody3D" parent="." unique_id=618737753] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.26774597, 1.1958501, 0) +gravity_scale = 0.0 +freeze = true + +[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D" unique_id=1756356716] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.33335906, -1.2537155, 0) +shape = SubResource("CylinderShape3D_werxl") + [node name="HoverAnimationPlayer" type="AnimationPlayer" parent="." unique_id=487483897] libraries/ = SubResource("AnimationLibrary_0mfvw") diff --git a/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend b/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend new file mode 100644 index 0000000..9839e10 Binary files /dev/null and b/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend differ diff --git a/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend.import b/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend.import new file mode 100644 index 0000000..096db9b --- /dev/null +++ b/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend.import @@ -0,0 +1,73 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://bihsgpfqaiqml" +path="res://.godot/imported/orchid_saver.blend-2ed183e213d591791b3e5f1318afc991.scn" + +[deps] + +source_file="res://entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend" +dest_files=["res://.godot/imported/orchid_saver.blend-2ed183e213d591791b3e5f1318afc991.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Glass": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/glass_3d.tres", +"use_external/path": "uid://b5vlcdry8vtgi" +}, +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend1 b/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend1 new file mode 100644 index 0000000..e943677 Binary files /dev/null and b/entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend1 differ diff --git a/entities/interactable_3d/orchid_saver/orchid_saver.tscn b/entities/interactable_3d/orchid_saver/orchid_saver.tscn new file mode 100644 index 0000000..26c8317 --- /dev/null +++ b/entities/interactable_3d/orchid_saver/orchid_saver.tscn @@ -0,0 +1,96 @@ +[gd_scene format=3 uid="uid://u3o5g8lmck74"] + +[ext_resource type="PackedScene" uid="uid://bihsgpfqaiqml" path="res://entities/interactable_3d/orchid_saver/assets/3d/orchid_saver.blend" id="1_g6sgk"] +[ext_resource type="Script" uid="uid://1u4bxefehen8" path="res://entities/interactable_3d/orchid_saver/scripts/orchid_saver.gd" id="1_tiit5"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="3_h5gyd"] + +[sub_resource type="BoxShape3D" id="BoxShape3D_h5gyd"] +size = Vector3(0.20593262, 0.79333496, 0.93652344) + +[sub_resource type="CylinderShape3D" id="CylinderShape3D_tiit5"] +height = 0.2626953 +radius = 0.24365234 + +[sub_resource type="ViewportTexture" id="ViewportTexture_cqerb"] +viewport_path = NodePath("Screen/SubViewport") + +[sub_resource type="LabelSettings" id="LabelSettings_cqerb"] +font = ExtResource("3_h5gyd") +font_size = 30 + +[node name="OrchidSaver" type="Area3D" unique_id=381308711] +script = ExtResource("1_tiit5") +screen_text = "Hello" +interactable = false + +[node name="Model" parent="." unique_id=1027429202 instance=ExtResource("1_g6sgk")] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.06540024, 0, 0.05925989) + +[node name="Capsule" parent="Model" index="0" unique_id=1504808872] +visible = false + +[node name="CollisionShape3D" type="CollisionShape3D" parent="." unique_id=397985169] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.72472906, 1.1686838, 0.095844865) +shape = SubResource("BoxShape3D_h5gyd") + +[node name="PlayerDetector" type="Area3D" parent="." unique_id=1159653958] +unique_name_in_owner = true + +[node name="CollisionShape3D" type="CollisionShape3D" parent="PlayerDetector" unique_id=2007025806] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.17858887, 0) +shape = SubResource("CylinderShape3D_tiit5") + +[node name="Screen" type="Sprite3D" parent="." unique_id=947440245] +transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -0.66160196, 1.189235, 0.050924063) +pixel_size = 0.0018 +texture = SubResource("ViewportTexture_cqerb") + +[node name="SubViewport" type="SubViewport" parent="Screen" unique_id=241109082] +disable_3d = true +transparent_bg = true +size = Vector2i(429, 276) + +[node name="TurnedOffBackground" type="ColorRect" parent="Screen/SubViewport" unique_id=448339240] +unique_name_in_owner = true +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0.0627451, 0.05882353, 0.16862746, 1) + +[node name="MarginContainer" type="MarginContainer" parent="Screen/SubViewport" unique_id=411688632] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/margin_left = 16 +theme_override_constants/margin_top = 16 +theme_override_constants/margin_right = 16 +theme_override_constants/margin_bottom = 16 + +[node name="ScreenContent" type="VBoxContainer" parent="Screen/SubViewport/MarginContainer" unique_id=1667330208] +unique_name_in_owner = true +visible = false +layout_mode = 2 +alignment = 1 + +[node name="ScreenIcon" type="TextureRect" parent="Screen/SubViewport/MarginContainer/ScreenContent" unique_id=87645401] +unique_name_in_owner = true +custom_minimum_size = Vector2(100, 100) +layout_mode = 2 +expand_mode = 2 +stretch_mode = 5 + +[node name="ScreenTitle" type="Label" parent="Screen/SubViewport/MarginContainer/ScreenContent" unique_id=2109180149] +unique_name_in_owner = true +layout_mode = 2 +text = "Hello" +label_settings = SubResource("LabelSettings_cqerb") +horizontal_alignment = 1 +vertical_alignment = 1 +autowrap_mode = 3 + +[editable path="Model"] diff --git a/entities/interactable_3d/orchid_saver/scripts/orchid_saver.gd b/entities/interactable_3d/orchid_saver/scripts/orchid_saver.gd new file mode 100644 index 0000000..0986728 --- /dev/null +++ b/entities/interactable_3d/orchid_saver/scripts/orchid_saver.gd @@ -0,0 +1,52 @@ +@tool +extends Interactable3D +class_name OrchidSaver + +@export var screen_icon : Texture : + set(v): + screen_icon = v + update_screen() +@export var screen_text : String : + set(v): + screen_text = v + update_screen() +@export var screen_turned_on : bool = false : + set(v): + screen_turned_on = v + update_screen() +@onready var capsule_model : Node3D = %Model.find_child("Capsule") + +var active = true + +# Called when the node enters the scene tree for the first time. +func _ready(): + capsule_model.hide() + interactable = false + + %PlayerDetector.body_entered.connect( + func (body : Node3D): + if body is Player3D and active: + interactable = true + capsule_model.show() + screen_turned_on = true + AudioManager.play_sfx("HoloAppear") + ) + %PlayerDetector.body_exited.connect( + func (body : Node3D): + if body is Player3D and active: + interactable = false + capsule_model.hide() + screen_turned_on = false + AudioManager.play_sfx("HoloDisappear") + ) + update_screen() + + +func update_screen(): + if is_node_ready(): + %TurnedOffBackground.visible = not screen_turned_on + %ScreenContent.visible = screen_turned_on + %ScreenIcon.texture = screen_icon + %ScreenTitle.text = screen_text + + diff --git a/entities/interactable_3d/orchid_saver/scripts/orchid_saver.gd.uid b/entities/interactable_3d/orchid_saver/scripts/orchid_saver.gd.uid new file mode 100644 index 0000000..c154d19 --- /dev/null +++ b/entities/interactable_3d/orchid_saver/scripts/orchid_saver.gd.uid @@ -0,0 +1 @@ +uid://1u4bxefehen8 diff --git a/entities/interactable_3d/phone/phone.tscn b/entities/interactable_3d/phone/phone.tscn index 0f9bcb4..a7a34c6 100644 --- a/entities/interactable_3d/phone/phone.tscn +++ b/entities/interactable_3d/phone/phone.tscn @@ -75,3 +75,4 @@ libraries/ = SubResource("AnimationLibrary_xa016") transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.9604645e-08, 1.0397238, -0.47173643) light_color = Color(0.87551093, 0.72609586, 0.8473426, 1) shadow_enabled = true +omni_range = 1.8928293 diff --git a/entities/interactables/door/assets/sprites/door_1.png b/entities/interactables/door/assets/sprites/door_1.png new file mode 100644 index 0000000..e1eae27 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_1.png differ diff --git a/entities/plants/assets/sprites/chardi/growing.png.import b/entities/interactables/door/assets/sprites/door_1.png.import similarity index 72% rename from entities/plants/assets/sprites/chardi/growing.png.import rename to entities/interactables/door/assets/sprites/door_1.png.import index d94e08d..9d2634e 100644 --- a/entities/plants/assets/sprites/chardi/growing.png.import +++ b/entities/interactables/door/assets/sprites/door_1.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://c7mp7tkkkk6o5" -path="res://.godot/imported/growing.png-c0d45a498c8bfc90776eb09d341d1579.ctex" +uid="uid://s0bn2kt1bpkn" +path="res://.godot/imported/door_1.png-dd51326c0be9b6ca6b377054f3b2e77d.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://entities/plants/assets/sprites/chardi/growing.png" -dest_files=["res://.godot/imported/growing.png-c0d45a498c8bfc90776eb09d341d1579.ctex"] +source_file="res://entities/interactables/door/assets/sprites/door_1.png" +dest_files=["res://.godot/imported/door_1.png-dd51326c0be9b6ca6b377054f3b2e77d.ctex"] [params] diff --git a/entities/interactables/door/assets/sprites/door_2.png b/entities/interactables/door/assets/sprites/door_2.png new file mode 100644 index 0000000..8c3377e Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_2.png differ diff --git a/entities/plants/assets/sprites/champ/mature.png.import b/entities/interactables/door/assets/sprites/door_2.png.import similarity index 72% rename from entities/plants/assets/sprites/champ/mature.png.import rename to entities/interactables/door/assets/sprites/door_2.png.import index 0ff63bf..96ece31 100644 --- a/entities/plants/assets/sprites/champ/mature.png.import +++ b/entities/interactables/door/assets/sprites/door_2.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://crc4aop6ajiau" -path="res://.godot/imported/mature.png-44f597dc7980e7657c7418444db3823d.ctex" +uid="uid://bc1ab3tf6vpqy" +path="res://.godot/imported/door_2.png-ffb500b8948b67d03b116bc31932d2e7.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://entities/plants/assets/sprites/champ/mature.png" -dest_files=["res://.godot/imported/mature.png-44f597dc7980e7657c7418444db3823d.ctex"] +source_file="res://entities/interactables/door/assets/sprites/door_2.png" +dest_files=["res://.godot/imported/door_2.png-ffb500b8948b67d03b116bc31932d2e7.ctex"] [params] diff --git a/entities/interactables/door/assets/sprites/door_3.png b/entities/interactables/door/assets/sprites/door_3.png new file mode 100644 index 0000000..3da7be7 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_3.png differ diff --git a/common/icons/bar.png.import b/entities/interactables/door/assets/sprites/door_3.png.import similarity index 72% rename from common/icons/bar.png.import rename to entities/interactables/door/assets/sprites/door_3.png.import index f604b1a..0e2f734 100644 --- a/common/icons/bar.png.import +++ b/entities/interactables/door/assets/sprites/door_3.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://dw80a4c5iekir" -path="res://.godot/imported/bar.png-623df5fbea38f9d862a997485a02d36c.ctex" +uid="uid://jmen57sr5vk4" +path="res://.godot/imported/door_3.png-d482e5ec97272ac7dd5a7b3a5a9537ae.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://common/icons/bar.png" -dest_files=["res://.godot/imported/bar.png-623df5fbea38f9d862a997485a02d36c.ctex"] +source_file="res://entities/interactables/door/assets/sprites/door_3.png" +dest_files=["res://.godot/imported/door_3.png-d482e5ec97272ac7dd5a7b3a5a9537ae.ctex"] [params] diff --git a/entities/interactables/door/assets/sprites/door_4.png b/entities/interactables/door/assets/sprites/door_4.png new file mode 100644 index 0000000..25640f8 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_4.png differ diff --git a/entities/interactables/door/assets/sprites/door_4.png.import b/entities/interactables/door/assets/sprites/door_4.png.import new file mode 100644 index 0000000..88b02c8 --- /dev/null +++ b/entities/interactables/door/assets/sprites/door_4.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c5gstknno4mka" +path="res://.godot/imported/door_4.png-3f16467270ce8b1707ea531e940f078d.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://entities/interactables/door/assets/sprites/door_4.png" +dest_files=["res://.godot/imported/door_4.png-3f16467270ce8b1707ea531e940f078d.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/entities/interactables/door/assets/sprites/door_5.png b/entities/interactables/door/assets/sprites/door_5.png new file mode 100644 index 0000000..f2c4e25 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_5.png differ diff --git a/entities/interactables/door/assets/sprites/door_5.png.import b/entities/interactables/door/assets/sprites/door_5.png.import new file mode 100644 index 0000000..f5e5116 --- /dev/null +++ b/entities/interactables/door/assets/sprites/door_5.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dd7jl1yyfs7l1" +path="res://.godot/imported/door_5.png-119cfb6fd418806a8ada16cab3be9800.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://entities/interactables/door/assets/sprites/door_5.png" +dest_files=["res://.godot/imported/door_5.png-119cfb6fd418806a8ada16cab3be9800.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/entities/interactables/door/assets/sprites/door_6.png b/entities/interactables/door/assets/sprites/door_6.png new file mode 100644 index 0000000..0d967e5 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_6.png differ diff --git a/entities/interactables/door/assets/sprites/door_6.png.import b/entities/interactables/door/assets/sprites/door_6.png.import new file mode 100644 index 0000000..94bb1bd --- /dev/null +++ b/entities/interactables/door/assets/sprites/door_6.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cht54x4mugr5p" +path="res://.godot/imported/door_6.png-e383976c062791fd56ea66dee70eef77.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://entities/interactables/door/assets/sprites/door_6.png" +dest_files=["res://.godot/imported/door_6.png-e383976c062791fd56ea66dee70eef77.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/entities/interactables/door/assets/sprites/door_7.png b/entities/interactables/door/assets/sprites/door_7.png new file mode 100644 index 0000000..1ee3958 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_7.png differ diff --git a/entities/plants/assets/sprites/champ/growing.png.import b/entities/interactables/door/assets/sprites/door_7.png.import similarity index 72% rename from entities/plants/assets/sprites/champ/growing.png.import rename to entities/interactables/door/assets/sprites/door_7.png.import index 86ac3b8..10a3ff2 100644 --- a/entities/plants/assets/sprites/champ/growing.png.import +++ b/entities/interactables/door/assets/sprites/door_7.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://dmsls8siudy1u" -path="res://.godot/imported/growing.png-1974f3b5dd8b515f2458ee84afbec1aa.ctex" +uid="uid://1hac868r8p6j" +path="res://.godot/imported/door_7.png-e59924662d7e8532a3fd4cd279271ad9.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://entities/plants/assets/sprites/champ/growing.png" -dest_files=["res://.godot/imported/growing.png-1974f3b5dd8b515f2458ee84afbec1aa.ctex"] +source_file="res://entities/interactables/door/assets/sprites/door_7.png" +dest_files=["res://.godot/imported/door_7.png-e59924662d7e8532a3fd4cd279271ad9.ctex"] [params] diff --git a/entities/interactables/door/assets/sprites/door_8.png b/entities/interactables/door/assets/sprites/door_8.png new file mode 100644 index 0000000..920bff7 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_8.png differ diff --git a/entities/interactables/door/assets/sprites/door_8.png.import b/entities/interactables/door/assets/sprites/door_8.png.import new file mode 100644 index 0000000..7819540 --- /dev/null +++ b/entities/interactables/door/assets/sprites/door_8.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dtyaykvtikvfx" +path="res://.godot/imported/door_8.png-7f02c4bb4f5ac7ca8b7b1c6a36f870f5.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://entities/interactables/door/assets/sprites/door_8.png" +dest_files=["res://.godot/imported/door_8.png-7f02c4bb4f5ac7ca8b7b1c6a36f870f5.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/entities/interactables/door/assets/sprites/door_9.png b/entities/interactables/door/assets/sprites/door_9.png new file mode 100644 index 0000000..712b492 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_9.png differ diff --git a/entities/interactables/door/assets/sprites/door_9.png.import b/entities/interactables/door/assets/sprites/door_9.png.import new file mode 100644 index 0000000..d1ed41f --- /dev/null +++ b/entities/interactables/door/assets/sprites/door_9.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ddmriwgrr3mj5" +path="res://.godot/imported/door_9.png-ba922b9855fd185769933e59b1b2c98b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://entities/interactables/door/assets/sprites/door_9.png" +dest_files=["res://.godot/imported/door_9.png-ba922b9855fd185769933e59b1b2c98b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/entities/interactables/door/assets/sprites/door_screen.png b/entities/interactables/door/assets/sprites/door_screen.png new file mode 100644 index 0000000..e2dcaf1 Binary files /dev/null and b/entities/interactables/door/assets/sprites/door_screen.png differ diff --git a/entities/interactables/door/assets/sprites/door_screen.png.import b/entities/interactables/door/assets/sprites/door_screen.png.import new file mode 100644 index 0000000..d499bc6 --- /dev/null +++ b/entities/interactables/door/assets/sprites/door_screen.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dqjqwmck0rgkh" +path="res://.godot/imported/door_screen.png-f9e60b58530d2cc65beea7b37c212496.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://entities/interactables/door/assets/sprites/door_screen.png" +dest_files=["res://.godot/imported/door_screen.png-f9e60b58530d2cc65beea7b37c212496.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/entities/interactables/door/door.tscn b/entities/interactables/door/door.tscn index f3369f8..de227c0 100644 --- a/entities/interactables/door/door.tscn +++ b/entities/interactables/door/door.tscn @@ -1,22 +1,158 @@ [gd_scene format=3 uid="uid://b8m537op75gib"] [ext_resource type="Script" uid="uid://bmxuqj0c6h60d" path="res://entities/interactables/door/script/door.gd" id="1_8kdwv"] - -[sub_resource type="Gradient" id="Gradient_8kdwv"] -colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 1) - -[sub_resource type="GradientTexture2D" id="GradientTexture2D_oarg0"] -gradient = SubResource("Gradient_8kdwv") +[ext_resource type="Texture2D" uid="uid://ddmriwgrr3mj5" path="res://entities/interactables/door/assets/sprites/door_9.png" id="2_0mw24"] +[ext_resource type="Texture2D" uid="uid://be7ietbjlmgtt" path="res://common/icons/map-pin-empty.svg" id="2_6w4e0"] +[ext_resource type="Texture2D" uid="uid://dtyaykvtikvfx" path="res://entities/interactables/door/assets/sprites/door_8.png" id="3_6w4e0"] +[ext_resource type="Texture2D" uid="uid://1hac868r8p6j" path="res://entities/interactables/door/assets/sprites/door_7.png" id="4_tu3nm"] +[ext_resource type="Texture2D" uid="uid://cht54x4mugr5p" path="res://entities/interactables/door/assets/sprites/door_6.png" id="5_wnnbj"] +[ext_resource type="Texture2D" uid="uid://dd7jl1yyfs7l1" path="res://entities/interactables/door/assets/sprites/door_5.png" id="6_xqykn"] +[ext_resource type="Texture2D" uid="uid://c5gstknno4mka" path="res://entities/interactables/door/assets/sprites/door_4.png" id="7_obnqv"] +[ext_resource type="Texture2D" uid="uid://jmen57sr5vk4" path="res://entities/interactables/door/assets/sprites/door_3.png" id="8_0ctdk"] +[ext_resource type="Texture2D" uid="uid://bc1ab3tf6vpqy" path="res://entities/interactables/door/assets/sprites/door_2.png" id="9_2jahp"] +[ext_resource type="Texture2D" uid="uid://s0bn2kt1bpkn" path="res://entities/interactables/door/assets/sprites/door_1.png" id="10_8yes4"] +[ext_resource type="Texture2D" uid="uid://dqjqwmck0rgkh" path="res://entities/interactables/door/assets/sprites/door_screen.png" id="12_6w4e0"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_y51rk"] -size = Vector2(64, 64) +size = Vector2(106, 120) + +[sub_resource type="SpriteFrames" id="SpriteFrames_4aafg"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("2_0mw24") +}, { +"duration": 1.0, +"texture": ExtResource("3_6w4e0") +}, { +"duration": 1.0, +"texture": ExtResource("4_tu3nm") +}, { +"duration": 1.0, +"texture": ExtResource("5_wnnbj") +}, { +"duration": 1.0, +"texture": ExtResource("6_xqykn") +}, { +"duration": 1.0, +"texture": ExtResource("7_obnqv") +}, { +"duration": 1.0, +"texture": ExtResource("8_0ctdk") +}, { +"duration": 1.0, +"texture": ExtResource("9_2jahp") +}, { +"duration": 1.0, +"texture": ExtResource("10_8yes4") +}], +"loop": false, +"name": &"close", +"speed": 20.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("10_8yes4") +}], +"loop": true, +"name": &"closed", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("10_8yes4") +}, { +"duration": 1.0, +"texture": ExtResource("9_2jahp") +}, { +"duration": 1.0, +"texture": ExtResource("8_0ctdk") +}, { +"duration": 1.0, +"texture": ExtResource("7_obnqv") +}, { +"duration": 1.0, +"texture": ExtResource("6_xqykn") +}, { +"duration": 1.0, +"texture": ExtResource("5_wnnbj") +}, { +"duration": 1.0, +"texture": ExtResource("4_tu3nm") +}, { +"duration": 1.0, +"texture": ExtResource("3_6w4e0") +}, { +"duration": 1.0, +"texture": ExtResource("2_0mw24") +}], +"loop": false, +"name": &"open", +"speed": 20.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("2_0mw24") +}], +"loop": false, +"name": &"opened", +"speed": 20.0 +}] + +[sub_resource type="Gradient" id="Gradient_tu3nm"] +interpolation_mode = 1 +offsets = PackedFloat32Array(0, 0.91845495, 1) +colors = PackedColorArray(0.0627451, 0.05882353, 0.16862746, 1, 0.06318334, 0.059500005, 0.17, 0, 1, 1, 1, 0) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_wnnbj"] +gradient = SubResource("Gradient_tu3nm") +width = 125 +height = 126 +fill = 1 +fill_from = Vector2(0.5, 0.5) +fill_to = Vector2(1, 0.5) + +[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_6w4e0"] +radius = 25.393593 +height = 50.787186 [node name="Door" type="Area2D" unique_id=2053096538] +process_mode = 4 script = ExtResource("1_8kdwv") +default_interact_text = "ENTER" +available = false metadata/_custom_type_script = "uid://dyprcd68fjstf" -[node name="Sprite2D" type="Sprite2D" parent="." unique_id=874210487] -texture = SubResource("GradientTexture2D_oarg0") - [node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1809395872] +scale = Vector2(1.3906125, 1.3906125) shape = SubResource("RectangleShape2D_y51rk") + +[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="." unique_id=879120806] +unique_name_in_owner = true +scale = Vector2(0.45890215, 0.45890215) +sprite_frames = SubResource("SpriteFrames_4aafg") +animation = &"closed" +frame_progress = 0.69717133 + +[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1875435966] +position = Vector2(0.6254329, -56.177567) +scale = Vector2(0.39400694, 0.3940069) +texture = SubResource("GradientTexture2D_wnnbj") + +[node name="Icon" type="Sprite2D" parent="." unique_id=874210487] +unique_name_in_owner = true +position = Vector2(0.62543297, -57.177567) +scale = Vector2(0.63736403, 0.63736403) +texture = ExtResource("2_6w4e0") + +[node name="DoorScreen" type="Sprite2D" parent="." unique_id=236947304] +position = Vector2(5.684342e-14, 2.2737368e-13) +scale = Vector2(0.45890215, 0.45890215) +texture = ExtResource("12_6w4e0") + +[node name="StaticBody2D" type="StaticBody2D" parent="." unique_id=521638741] +scale = Vector2(1.3906125, 1.3906125) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D" unique_id=676936346] +position = Vector2(0, 12) +shape = SubResource("CapsuleShape2D_6w4e0") diff --git a/entities/interactables/door/script/door.gd b/entities/interactables/door/script/door.gd index 62085a7..459d398 100644 --- a/entities/interactables/door/script/door.gd +++ b/entities/interactables/door/script/door.gd @@ -1,19 +1,45 @@ -@tool extends Interactable class_name Door -@export var to_scene_id = "" +@export var to_scene : Scene +@export var present : bool = false : set = set_present +@export var door_id : int + +func _init(): + default_interact_text = "ENTER" func _ready(): - modulate = Color.WHITE if available else Color.RED + if available: + %AnimatedSprite2D.play("opened") + else: + %AnimatedSprite2D.play("closed") + set_present() + %Icon.texture = to_scene.get_scene_icon() -func interact(_p : Player) -> bool: - if available and to_scene_id: - interacted.emit(_p) - SceneManager.change_to_scene_id(to_scene_id) +func interact(p : Player) -> bool: + if available and to_scene: + p.region.data.entered_door = name + interacted.emit(p) + p.region.save() + SceneManager.change_to_scene(to_scene) return available func set_available(v : bool): available = v - modulate = Color.WHITE if available else Color.RED \ No newline at end of file + if is_node_ready(): + if available: + AudioManager.play_sfx("DoorOpen") + get_tree().create_timer(0.5).timeout.connect( + func (): %AnimatedSprite2D.play("open") + ) + else: + %AnimatedSprite2D.play("close") + +func set_present(p := present): + present = p + if present: + process_mode = Node.PROCESS_MODE_INHERIT + else: + process_mode = Node.PROCESS_MODE_DISABLED + visible = present \ No newline at end of file diff --git a/entities/interactables/ladder/scripts/ladder.gd b/entities/interactables/ladder/scripts/ladder.gd index 55a516e..b066a7b 100644 --- a/entities/interactables/ladder/scripts/ladder.gd +++ b/entities/interactables/ladder/scripts/ladder.gd @@ -22,5 +22,5 @@ func appear(): func interact(p : Player): p.region.save() - SceneManager.change_to_scene_id("COCKPIT") + SceneManager.change_to_scene(CockpitScene.new()) return true diff --git a/entities/interactables/truck/recharge/STW_Props_Batterie_TERRE.png b/entities/interactables/truck/recharge/STW_Props_Batterie_TERRE.png index a48787e..b0c1c66 100644 Binary files a/entities/interactables/truck/recharge/STW_Props_Batterie_TERRE.png and b/entities/interactables/truck/recharge/STW_Props_Batterie_TERRE.png differ diff --git a/entities/interactables/truck/recharge/STW_Props_Batterie_V2.png.import b/entities/interactables/truck/recharge/STW_Props_Batterie_V2.png.import index ef3af48..58c94bf 100644 --- a/entities/interactables/truck/recharge/STW_Props_Batterie_V2.png.import +++ b/entities/interactables/truck/recharge/STW_Props_Batterie_V2.png.import @@ -3,19 +3,20 @@ importer="texture" type="CompressedTexture2D" uid="uid://cqecty3kl6yg6" -path="res://.godot/imported/STW_Props_Batterie_V2.png-5149763f9e1dac76893ec05c148e8056.ctex" +path.s3tc="res://.godot/imported/STW_Props_Batterie_V2.png-5149763f9e1dac76893ec05c148e8056.s3tc.ctex" metadata={ -"vram_texture": false +"imported_formats": ["s3tc_bptc"], +"vram_texture": true } [deps] source_file="res://entities/interactables/truck/recharge/STW_Props_Batterie_V2.png" -dest_files=["res://.godot/imported/STW_Props_Batterie_V2.png-5149763f9e1dac76893ec05c148e8056.ctex"] +dest_files=["res://.godot/imported/STW_Props_Batterie_V2.png-5149763f9e1dac76893ec05c148e8056.s3tc.ctex"] [params] -compress/mode=0 +compress/mode=2 compress/high_quality=false compress/lossy_quality=0.7 compress/uastc_level=0 @@ -23,7 +24,7 @@ compress/rdo_quality_loss=0.0 compress/hdr_compression=1 compress/normal_map=0 compress/channel_pack=0 -mipmaps/generate=false +mipmaps/generate=true mipmaps/limit=-1 roughness/mode=0 roughness/src_normal="" @@ -37,4 +38,4 @@ process/normal_map_invert_y=false process/hdr_as_srgb=false process/hdr_clamp_exposure=false process/size_limit=0 -detect_3d/compress_to=1 +detect_3d/compress_to=0 diff --git a/entities/interactables/truck/recharge/truck_recharge.tscn b/entities/interactables/truck/recharge/truck_recharge.tscn index c234e0c..9167dba 100644 --- a/entities/interactables/truck/recharge/truck_recharge.tscn +++ b/entities/interactables/truck/recharge/truck_recharge.tscn @@ -2,7 +2,7 @@ [ext_resource type="Script" uid="uid://bsrn3gd2a532q" path="res://entities/interactables/truck/recharge/scripts/truck_recharge.gd" id="1_ipgcv"] [ext_resource type="Texture2D" uid="uid://btd145u4gsl6e" path="res://entities/interactables/truck/recharge/STW_Props_Batterie_Batterie.png" id="2_ot7vv"] -[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="3_jcfmm"] +[ext_resource type="Texture2D" uid="uid://cymrmhsihkj44" path="res://common/icons/recharge.svg" id="3_ot7vv"] [ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="4_ot7vv"] [ext_resource type="Texture2D" uid="uid://bhi3mwl23flwp" path="res://entities/interactables/truck/recharge/STW_Props_Batterie_Glass_V2.png" id="5_2okh4"] [ext_resource type="Texture2D" uid="uid://c01f6ja6btsep" path="res://entities/interactables/truck/recharge/STW_Props_Batterie_TERRE.png" id="6_2okh4"] @@ -44,7 +44,7 @@ alignment = 1 [node name="TextureRect" type="TextureRect" parent="EnergyTextContainer" unique_id=2088496808] custom_minimum_size = Vector2(30, 0) layout_mode = 2 -texture = ExtResource("3_jcfmm") +texture = ExtResource("3_ot7vv") expand_mode = 1 stretch_mode = 5 diff --git a/entities/plants/assets/sprites/asset_plantes.png b/entities/plants/assets/sprites/asset_plantes.png new file mode 100644 index 0000000..d58be6e Binary files /dev/null and b/entities/plants/assets/sprites/asset_plantes.png differ diff --git a/entities/plants/assets/sprites/chardi/mature.png.import b/entities/plants/assets/sprites/asset_plantes.png.import similarity index 72% rename from entities/plants/assets/sprites/chardi/mature.png.import rename to entities/plants/assets/sprites/asset_plantes.png.import index 048a1b7..e922cd7 100644 --- a/entities/plants/assets/sprites/chardi/mature.png.import +++ b/entities/plants/assets/sprites/asset_plantes.png.import @@ -2,16 +2,16 @@ importer="texture" type="CompressedTexture2D" -uid="uid://bupl1y0cfj21q" -path="res://.godot/imported/mature.png-a98b30ab80fe074a42994ef9926caee8.ctex" +uid="uid://bdwmandgxrjgn" +path="res://.godot/imported/asset_plantes.png-c24ff8f3f12c635832e2925dd6c1eaef.ctex" metadata={ "vram_texture": false } [deps] -source_file="res://entities/plants/assets/sprites/chardi/mature.png" -dest_files=["res://.godot/imported/mature.png-a98b30ab80fe074a42994ef9926caee8.ctex"] +source_file="res://entities/plants/assets/sprites/asset_plantes.png" +dest_files=["res://.godot/imported/asset_plantes.png-c24ff8f3f12c635832e2925dd6c1eaef.ctex"] [params] diff --git a/entities/plants/assets/sprites/champ/growing.png b/entities/plants/assets/sprites/champ/growing.png deleted file mode 100644 index 9b18758..0000000 Binary files a/entities/plants/assets/sprites/champ/growing.png and /dev/null differ diff --git a/entities/plants/assets/sprites/champ/mature.png b/entities/plants/assets/sprites/champ/mature.png deleted file mode 100644 index 9166f8b..0000000 Binary files a/entities/plants/assets/sprites/champ/mature.png and /dev/null differ diff --git a/entities/plants/assets/sprites/chardi/growing.png b/entities/plants/assets/sprites/chardi/growing.png deleted file mode 100644 index d4f783f..0000000 Binary files a/entities/plants/assets/sprites/chardi/growing.png and /dev/null differ diff --git a/entities/plants/assets/sprites/chardi/mature.png b/entities/plants/assets/sprites/chardi/mature.png deleted file mode 100644 index 0c5f96f..0000000 Binary files a/entities/plants/assets/sprites/chardi/mature.png and /dev/null differ diff --git a/entities/plants/assets/sprites/ferno/growing.png b/entities/plants/assets/sprites/ferno/growing.png deleted file mode 100644 index a2c7a62..0000000 Binary files a/entities/plants/assets/sprites/ferno/growing.png and /dev/null differ diff --git a/entities/plants/assets/sprites/ferno/growing.png.import b/entities/plants/assets/sprites/ferno/growing.png.import deleted file mode 100644 index 9b89007..0000000 --- a/entities/plants/assets/sprites/ferno/growing.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://ds1nf2876m6bh" -path="res://.godot/imported/growing.png-0397882e264ff91cc96e415be3ae1543.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://entities/plants/assets/sprites/ferno/growing.png" -dest_files=["res://.godot/imported/growing.png-0397882e264ff91cc96e415be3ae1543.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/entities/plants/assets/sprites/ferno/mature.png b/entities/plants/assets/sprites/ferno/mature.png deleted file mode 100644 index 570fbdd..0000000 Binary files a/entities/plants/assets/sprites/ferno/mature.png and /dev/null differ diff --git a/entities/plants/assets/sprites/ferno/mature.png.import b/entities/plants/assets/sprites/ferno/mature.png.import deleted file mode 100644 index 39ce59a..0000000 --- a/entities/plants/assets/sprites/ferno/mature.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://bfj6wji21amgk" -path="res://.godot/imported/mature.png-e7dca043959ac892503be612a2dc85b8.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://entities/plants/assets/sprites/ferno/mature.png" -dest_files=["res://.godot/imported/mature.png-e7dca043959ac892503be612a2dc85b8.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/entities/plants/assets/sprites/maias/growing.png b/entities/plants/assets/sprites/maias/growing.png deleted file mode 100644 index b42e7ab..0000000 Binary files a/entities/plants/assets/sprites/maias/growing.png and /dev/null differ diff --git a/entities/plants/assets/sprites/maias/growing.png.import b/entities/plants/assets/sprites/maias/growing.png.import deleted file mode 100644 index 661c8bf..0000000 --- a/entities/plants/assets/sprites/maias/growing.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://dwr3c6r6piwaa" -path="res://.godot/imported/growing.png-7b76a9f596f5cec79fdd8685670b16b5.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://entities/plants/assets/sprites/maias/growing.png" -dest_files=["res://.godot/imported/growing.png-7b76a9f596f5cec79fdd8685670b16b5.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/entities/plants/assets/sprites/maias/mature.png b/entities/plants/assets/sprites/maias/mature.png deleted file mode 100644 index 5e30d65..0000000 Binary files a/entities/plants/assets/sprites/maias/mature.png and /dev/null differ diff --git a/entities/plants/assets/sprites/philea/growing.png b/entities/plants/assets/sprites/philea/growing.png deleted file mode 100644 index fa4fa1c..0000000 Binary files a/entities/plants/assets/sprites/philea/growing.png and /dev/null differ diff --git a/entities/plants/assets/sprites/philea/growing.png.import b/entities/plants/assets/sprites/philea/growing.png.import deleted file mode 100644 index 153e427..0000000 --- a/entities/plants/assets/sprites/philea/growing.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://dna7x371cs0tu" -path="res://.godot/imported/growing.png-6680673773f3b22171cacdd2f4db1f47.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://entities/plants/assets/sprites/philea/growing.png" -dest_files=["res://.godot/imported/growing.png-6680673773f3b22171cacdd2f4db1f47.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/entities/plants/assets/sprites/philea/mature.png b/entities/plants/assets/sprites/philea/mature.png deleted file mode 100644 index 4e601b0..0000000 Binary files a/entities/plants/assets/sprites/philea/mature.png and /dev/null differ diff --git a/entities/plants/assets/sprites/philea/mature.png.import b/entities/plants/assets/sprites/philea/mature.png.import deleted file mode 100644 index 430257a..0000000 --- a/entities/plants/assets/sprites/philea/mature.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://bj801geprrhfu" -path="res://.godot/imported/mature.png-5a510079f351d9ec4d59ef93a0592812.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://entities/plants/assets/sprites/philea/mature.png" -dest_files=["res://.godot/imported/mature.png-5a510079f351d9ec4d59ef93a0592812.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/entities/plants/assets/sprites/seed_buried_texture.png b/entities/plants/assets/sprites/seed_buried_texture.png index 8d11601..ce5e184 100644 Binary files a/entities/plants/assets/sprites/seed_buried_texture.png and b/entities/plants/assets/sprites/seed_buried_texture.png differ diff --git a/entities/plants/plant_part_buider.tscn b/entities/plants/plant_part_buider.tscn index 8266034..1b5e1d4 100644 --- a/entities/plants/plant_part_buider.tscn +++ b/entities/plants/plant_part_buider.tscn @@ -1,42 +1,39 @@ [gd_scene format=3 uid="uid://cg6r56x11bvk2"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="1_yh7e0"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="1_yh7e0"] [ext_resource type="Script" uid="uid://c360ic1aost1n" path="res://entities/plants/scripts/texture_builder/plant_part_builder.gd" id="2_a5yje"] [ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach_builder.gd" id="3_yh7e0"] -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("1_yh7e0") -region = Rect2(41, 72, 237, 686) +region = Rect2(3118, 1700, 367, 440) [node name="Sprite" type="Sprite2D" unique_id=1642167049 node_paths=PackedStringArray("root", "attaches")] -texture = SubResource("AtlasTexture_khbsd") +texture = SubResource("AtlasTexture_yh7e0") script = ExtResource("2_a5yje") -part_name = "Base1" +part_name = "LeafE6" +type = 2 root = NodePath("Root") attaches = NodePath("Attaches") [node name="Root" type="Node2D" parent="." unique_id=1437082577] -position = Vector2(0, 281) +position = Vector2(40, -66) script = ExtResource("3_yh7e0") +attach_types = Array[int]([1]) [node name="Attaches" type="Node" parent="." unique_id=1834697767] -[node name="attach0" type="Node2D" parent="Attaches" unique_id=1538543210] -position = Vector2(59, 99) +[node name="attach2" type="Node2D" parent="Attaches" unique_id=1063061640] +position = Vector2(-46, 17) script = ExtResource("3_yh7e0") -attach_types = Array[int]([0]) +attach_types = Array[int]([2]) -[node name="attach1" type="Node2D" parent="Attaches" unique_id=891209922] -position = Vector2(-3, -68) +[node name="attach1" type="Node2D" parent="Attaches" unique_id=539833351] +position = Vector2(116, 72) script = ExtResource("3_yh7e0") -attach_types = Array[int]([0]) +attach_types = Array[int]([2]) -[node name="attach2" type="Node2D" parent="Attaches" unique_id=383468482] -position = Vector2(-17, -237) +[node name="@Node2D@32601" type="Node2D" parent="Attaches" unique_id=2139586007] +position = Vector2(-38, -137) script = ExtResource("3_yh7e0") -attach_types = Array[int]([1, 3]) - -[node name="attach3" type="Node2D" parent="Attaches" unique_id=55955561] -position = Vector2(-50, -286) -script = ExtResource("3_yh7e0") -attach_types = Array[int]([2, 3]) +attach_types = Array[int]([2]) diff --git a/entities/plants/plant_sprite.tscn b/entities/plants/plant_sprite.tscn index 1abff93..ef515f5 100644 --- a/entities/plants/plant_sprite.tscn +++ b/entities/plants/plant_sprite.tscn @@ -4,10 +4,42 @@ [ext_resource type="Texture2D" uid="uid://pltmnkqd5ut2" path="res://entities/plants/assets/sprites/seeds/grille_seeds.png" id="3_j6jm5"] [ext_resource type="Texture2D" uid="uid://do3wxh7k38m7u" path="res://entities/plants/assets/sprites/seed_buried_texture.png" id="3_rbgiq"] +[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_rbgiq"] +radius = 22.0 +height = 50.0 + [sub_resource type="AtlasTexture" id="AtlasTexture_wyuub"] atlas = ExtResource("3_j6jm5") region = Rect2(76, 75, 124, 135) +[sub_resource type="ViewportTexture" id="ViewportTexture_rbgiq"] + +[sub_resource type="Gradient" id="Gradient_rbgiq"] +interpolation_mode = 1 +offsets = PackedFloat32Array(0, 0.800905, 1) +colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_rbgiq"] +gradient = SubResource("Gradient_rbgiq") +width = 100 +height = 100 +fill = 1 +fill_from = Vector2(0.5, 0.5) +fill_to = Vector2(1, 0.5) + +[sub_resource type="Gradient" id="Gradient_j6jm5"] +interpolation_mode = 1 +offsets = PackedFloat32Array(0, 0.5248869) +colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_wyuub"] +gradient = SubResource("Gradient_j6jm5") +width = 100 +height = 100 +fill = 1 +fill_from = Vector2(0.5, 0.5) +fill_to = Vector2(1, 0.5) + [sub_resource type="Animation" id="Animation_wyuub"] length = 0.001 tracks/0/type = "value" @@ -46,6 +78,18 @@ tracks/2/keys = { "update": 0, "values": [Color(1, 1, 1, 1)] } +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath(".:skew") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.0] +} [sub_resource type="Animation" id="Animation_j6jm5"] resource_name = "bump" @@ -91,24 +135,44 @@ tracks/1/keys = { "values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)] } +[sub_resource type="Animation" id="Animation_8eofq"] +resource_name = "player_move" +length = 0.36666667 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:skew") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.1, 0.23333333, 0.36666667), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 0, +"values": [0.0, 0.1308996938995747, -0.1308996938995747, 0.0] +} + [sub_resource type="AnimationLibrary" id="AnimationLibrary_8eofq"] _data = { &"RESET": SubResource("Animation_wyuub"), &"bump": SubResource("Animation_j6jm5"), -&"harvest": SubResource("Animation_rbgiq") +&"harvest": SubResource("Animation_rbgiq"), +&"player_move": SubResource("Animation_8eofq") } -[node name="PlantSprite" type="Node2D" unique_id=1274989778] +[node name="PlantSprite" type="Area2D" unique_id=24510929] script = ExtResource("1_pq8o7") +[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1893251777] +position = Vector2(0, -14) +shape = SubResource("CapsuleShape2D_rbgiq") + [node name="Sprite" type="Sprite2D" parent="." unique_id=1693882598] unique_name_in_owner = true -position = Vector2(0, -100) scale = Vector2(0.15, 0.15) +offset = Vector2(0, -850) [node name="PlantedSeed" type="Sprite2D" parent="Sprite" unique_id=1134686525] unique_name_in_owner = true -position = Vector2(0, 653.33325) scale = Vector2(1.5, 1.5) texture = SubResource("AtlasTexture_wyuub") region_rect = Rect2(0, -50, 124, 135) @@ -119,6 +183,32 @@ position = Vector2(4.444448, 31.11118) scale = Vector2(3.1777775, 3.1777775) texture = ExtResource("3_rbgiq") +[node name="LifeTimeSprite" type="Sprite2D" parent="." unique_id=799762981] +unique_name_in_owner = true +position = Vector2(-1, -9.999985) +scale = Vector2(0.34, 0.34) +texture = SubResource("ViewportTexture_rbgiq") + +[node name="SubViewport" type="SubViewport" parent="LifeTimeSprite" unique_id=1809354262] +disable_3d = true +transparent_bg = true +size = Vector2i(100, 100) + +[node name="LifetimeProgressBar" type="TextureProgressBar" parent="LifeTimeSprite/SubViewport" unique_id=967185775] +unique_name_in_owner = true +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +size_flags_horizontal = 6 +size_flags_vertical = 6 +fill_mode = 4 +texture_over = SubResource("GradientTexture2D_rbgiq") +texture_progress = SubResource("GradientTexture2D_wyuub") + [node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=1793068152] unique_name_in_owner = true libraries/ = SubResource("AnimationLibrary_8eofq") + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/entities/plants/resources/plant_mutations/ancient_mutation.tres b/entities/plants/resources/plant_mutations/ancient_mutation.tres deleted file mode 100644 index 0e782fb..0000000 --- a/entities/plants/resources/plant_mutations/ancient_mutation.tres +++ /dev/null @@ -1,19 +0,0 @@ -[gd_resource type="Resource" script_class="AncientMutation" format=3 uid="uid://dys1ehlg4kwh7"] - -[ext_resource type="Script" uid="uid://c7po0bstyg80u" path="res://entities/plants/scripts/plant_mutation/ancient_mutation.gd" id="1_5g2qg"] -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_yqbjv"] -[ext_resource type="Resource" uid="uid://wxqxm6d5twdh" path="res://entities/plants/resources/plant_parts/Leaf8.tres" id="2_s2bpe"] -[ext_resource type="Resource" uid="uid://uoikjpno37bi" path="res://entities/plants/resources/plant_parts/Leaf9.tres" id="3_wfusp"] -[ext_resource type="Resource" uid="uid://c5gqwck2p5h5n" path="res://entities/plants/resources/plant_parts/Leaf10.tres" id="4_60d0x"] -[ext_resource type="Resource" uid="uid://c5fj1cw0f4mu6" path="res://entities/plants/resources/plant_parts/Leaf11.tres" id="5_ooo8j"] -[ext_resource type="Resource" uid="uid://dce788f0adauv" path="res://entities/plants/resources/plant_parts/Leaf12.tres" id="6_d0tr0"] -[ext_resource type="Resource" uid="uid://dd34dikqoynp3" path="res://entities/plants/resources/plant_parts/Leaf13.tres" id="7_jsy7o"] -[ext_resource type="Resource" uid="uid://bynje6g2wvuvl" path="res://entities/plants/resources/plant_parts/Leaf14.tres" id="8_m31fx"] -[ext_resource type="Resource" uid="uid://bd2op6q1masjt" path="res://entities/plants/resources/plant_parts/Leaf15.tres" id="9_78ar7"] -[ext_resource type="Resource" uid="uid://bvajuw0r47edw" path="res://entities/plants/resources/plant_parts/Leaf16.tres" id="10_dq1wt"] - -[resource] -script = ExtResource("1_5g2qg") -possible_parts = Array[ExtResource("1_yqbjv")]([ExtResource("2_s2bpe"), ExtResource("3_wfusp"), ExtResource("4_60d0x"), ExtResource("5_ooo8j"), ExtResource("6_d0tr0"), ExtResource("7_jsy7o"), ExtResource("8_m31fx"), ExtResource("9_78ar7"), ExtResource("10_dq1wt")]) -part_amount = 3 -metadata/_custom_type_script = "uid://c7po0bstyg80u" diff --git a/entities/plants/resources/plant_mutations/elitist_mutation.tres b/entities/plants/resources/plant_mutations/elitist_mutation.tres deleted file mode 100644 index 5d864d2..0000000 --- a/entities/plants/resources/plant_mutations/elitist_mutation.tres +++ /dev/null @@ -1,6 +0,0 @@ -[gd_resource type="Resource" script_class="ElitistMutation" load_steps=2 format=3 uid="uid://d38alhstybdtf"] - -[ext_resource type="Script" uid="uid://bt1xh7ss13e5e" path="res://entities/plants/scripts/plant_mutation/elitist_mutation.gd" id="1_jevqj"] - -[resource] -script = ExtResource("1_jevqj") diff --git a/entities/plants/resources/plant_mutations/ermit_mutation.tres b/entities/plants/resources/plant_mutations/ermit_mutation.tres deleted file mode 100644 index 678a78f..0000000 --- a/entities/plants/resources/plant_mutations/ermit_mutation.tres +++ /dev/null @@ -1,6 +0,0 @@ -[gd_resource type="Resource" script_class="ErmitMutation" load_steps=2 format=3 uid="uid://dktlbpira5kxb"] - -[ext_resource type="Script" uid="uid://domy822vgxfxs" path="res://entities/plants/scripts/plant_mutation/ermit_mutation.gd" id="1_yqhf5"] - -[resource] -script = ExtResource("1_yqhf5") diff --git a/entities/plants/resources/plant_mutations/precocious_mutation.tres b/entities/plants/resources/plant_mutations/precocious_mutation.tres deleted file mode 100644 index 5e2f8f6..0000000 --- a/entities/plants/resources/plant_mutations/precocious_mutation.tres +++ /dev/null @@ -1,7 +0,0 @@ -[gd_resource type="Resource" script_class="PrecociousMutation" format=3 uid="uid://c3am7s5bjy8qk"] - -[ext_resource type="Script" uid="uid://cx5mg5vf62bia" path="res://entities/plants/scripts/plant_mutation/precocious_mutation.gd" id="1_wjcm0"] - -[resource] -script = ExtResource("1_wjcm0") -metadata/_custom_type_script = "uid://cx5mg5vf62bia" diff --git a/entities/plants/resources/plant_mutations/quality_mutation.tres b/entities/plants/resources/plant_mutations/quality_mutation.tres deleted file mode 100644 index be9139a..0000000 --- a/entities/plants/resources/plant_mutations/quality_mutation.tres +++ /dev/null @@ -1,14 +0,0 @@ -[gd_resource type="Resource" script_class="QualityMutation" format=3 uid="uid://uabbkvg1rciq"] - -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_f2p7y"] -[ext_resource type="Script" uid="uid://bdobyk2j625lb" path="res://entities/plants/scripts/plant_mutation/quality_mutation.gd" id="1_u0ku1"] -[ext_resource type="Resource" uid="uid://crmvc77bqax1y" path="res://entities/plants/resources/plant_parts/Flower1.tres" id="2_1b5fn"] -[ext_resource type="Resource" uid="uid://c0hr7icfkjkoi" path="res://entities/plants/resources/plant_parts/Flower2.tres" id="3_k2uo3"] -[ext_resource type="Resource" uid="uid://clkoc1iccts2w" path="res://entities/plants/resources/plant_parts/Flower3.tres" id="4_ywc6r"] -[ext_resource type="Resource" uid="uid://bd8yapi1pokj6" path="res://entities/plants/resources/plant_parts/Flower4.tres" id="5_fnfed"] - -[resource] -script = ExtResource("1_u0ku1") -possible_parts = Array[ExtResource("1_f2p7y")]([ExtResource("2_1b5fn"), ExtResource("3_k2uo3"), ExtResource("4_ywc6r"), ExtResource("5_fnfed")]) -part_amount = 2 -metadata/_custom_type_script = "uid://bdobyk2j625lb" diff --git a/entities/plants/resources/plant_mutations/quick_mutation.tres b/entities/plants/resources/plant_mutations/quick_mutation.tres deleted file mode 100644 index e974102..0000000 --- a/entities/plants/resources/plant_mutations/quick_mutation.tres +++ /dev/null @@ -1,19 +0,0 @@ -[gd_resource type="Resource" script_class="QuickMutation" format=3 uid="uid://b04gaipu237sx"] - -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_68ssf"] -[ext_resource type="Script" uid="uid://bhtq0cbrgu58v" path="res://entities/plants/scripts/plant_mutation/quick_mutation.gd" id="1_hr7tm"] -[ext_resource type="Resource" uid="uid://brmd6d3l8trqs" path="res://entities/plants/resources/plant_parts/BottomLeaf1.tres" id="2_37ogi"] -[ext_resource type="Resource" uid="uid://cfr33014u7ig5" path="res://entities/plants/resources/plant_parts/BottomLeaf2.tres" id="3_4wjrs"] -[ext_resource type="Resource" uid="uid://cf70m1us8mfqp" path="res://entities/plants/resources/plant_parts/BottomLeaf3.tres" id="4_w4xgf"] -[ext_resource type="Resource" uid="uid://ctlmah4ohqp25" path="res://entities/plants/resources/plant_parts/BottomLeaf4.tres" id="5_7gtu2"] -[ext_resource type="Resource" uid="uid://b8o4q0hsm84ov" path="res://entities/plants/resources/plant_parts/BottomLeaf5.tres" id="6_yoj6x"] -[ext_resource type="Resource" uid="uid://bb33v756anesy" path="res://entities/plants/resources/plant_parts/BottomLeaf6.tres" id="7_fuf4y"] -[ext_resource type="Resource" uid="uid://cbqrl72y0d1yg" path="res://entities/plants/resources/plant_parts/BottomLeaf7.tres" id="8_25vee"] -[ext_resource type="Resource" uid="uid://dwppani7gyjl5" path="res://entities/plants/resources/plant_parts/BottomLeaf8.tres" id="9_hqe0q"] -[ext_resource type="Resource" uid="uid://dkta1u1u0efxk" path="res://entities/plants/resources/plant_parts/BottomLeaf9.tres" id="10_mxd37"] - -[resource] -script = ExtResource("1_hr7tm") -possible_parts = Array[ExtResource("1_68ssf")]([ExtResource("2_37ogi"), ExtResource("3_4wjrs"), ExtResource("4_w4xgf"), ExtResource("5_7gtu2"), ExtResource("6_yoj6x"), ExtResource("7_fuf4y"), ExtResource("8_25vee"), ExtResource("9_hqe0q"), ExtResource("10_mxd37")]) -part_amount = 2 -metadata/_custom_type_script = "uid://bhtq0cbrgu58v" diff --git a/entities/plants/resources/plant_mutations/sociable_mutation.tres b/entities/plants/resources/plant_mutations/sociable_mutation.tres deleted file mode 100644 index a4a5580..0000000 --- a/entities/plants/resources/plant_mutations/sociable_mutation.tres +++ /dev/null @@ -1,7 +0,0 @@ -[gd_resource type="Resource" script_class="SociableMutation" load_steps=2 format=3 uid="uid://bpkvdvael2ojh"] - -[ext_resource type="Script" uid="uid://b8q5xgvy85qeb" path="res://entities/plants/scripts/plant_mutation/sociable_mutation.gd" id="1_7u0mw"] - -[resource] -script = ExtResource("1_7u0mw") -metadata/_custom_type_script = "uid://b8q5xgvy85qeb" diff --git a/entities/plants/resources/plant_mutations/strong_mutation.tres b/entities/plants/resources/plant_mutations/strong_mutation.tres deleted file mode 100644 index 194cfb5..0000000 --- a/entities/plants/resources/plant_mutations/strong_mutation.tres +++ /dev/null @@ -1,7 +0,0 @@ -[gd_resource type="Resource" script_class="StrongMutation" load_steps=2 format=3 uid="uid://co2r0jnkf8hyb"] - -[ext_resource type="Script" uid="uid://cwj3k4p6ci5t4" path="res://entities/plants/scripts/plant_mutation/strong_mutation.gd" id="1_c0ieg"] - -[resource] -script = ExtResource("1_c0ieg") -metadata/_custom_type_script = "uid://cwj3k4p6ci5t4" diff --git a/entities/plants/resources/plant_parts/Base1.tres b/entities/plants/resources/plant_parts/Base1.tres index da56185..3fd0e5f 100644 --- a/entities/plants/resources/plant_parts/Base1.tres +++ b/entities/plants/resources/plant_parts/Base1.tres @@ -2,27 +2,27 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_10bgv"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_enq8o"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_10bgv"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_10bgv"] [sub_resource type="Resource" id="Resource_10bgv"] script = ExtResource("1_10bgv") -position = Vector2(59, 99) -attach_types = Array[int]([0]) +position = Vector2(69, 97) +attach_types = Array[int]([1]) [sub_resource type="Resource" id="Resource_m78t0"] script = ExtResource("1_10bgv") -position = Vector2(-3, -68) -attach_types = Array[int]([0]) +position = Vector2(-1, -74) +attach_types = Array[int]([1]) [sub_resource type="Resource" id="Resource_hbwie"] script = ExtResource("1_10bgv") -position = Vector2(-17, -237) +position = Vector2(-15, -242) attach_types = Array[int]([1, 3]) [sub_resource type="Resource" id="Resource_obhnl"] script = ExtResource("1_10bgv") -position = Vector2(-50, -286) -attach_types = Array[int]([2, 3]) +position = Vector2(-48, -291) +attach_types = Array[int]([3, 2]) [sub_resource type="Resource" id="Resource_dhqtw"] script = ExtResource("1_10bgv") @@ -30,7 +30,7 @@ position = Vector2(0, 281) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] atlas = ExtResource("3_10bgv") -region = Rect2(41, 72, 237, 686) +region = Rect2(88, 15, 240, 676) [resource] resource_name = "Base1" diff --git a/entities/plants/resources/plant_parts/Base2.tres b/entities/plants/resources/plant_parts/Base2.tres index 081924d..95c2864 100644 --- a/entities/plants/resources/plant_parts/Base2.tres +++ b/entities/plants/resources/plant_parts/Base2.tres @@ -1,40 +1,45 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bgh8a4xwc5stw"] +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d05ulm22k31w8"] [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fpg0h"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_ex0x2"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_lfxw0"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_fpg0h"] + +[sub_resource type="Resource" id="Resource_ex0x2"] +script = ExtResource("1_fpg0h") +position = Vector2(44, 120) +attach_types = Array[int]([1]) + +[sub_resource type="Resource" id="Resource_lfxw0"] +script = ExtResource("1_fpg0h") +position = Vector2(54, -30) +attach_types = Array[int]([1, 3]) [sub_resource type="Resource" id="Resource_uf3kp"] script = ExtResource("1_fpg0h") -position = Vector2(9, 45) -attach_types = Array[int]([1]) +position = Vector2(10, -158) +attach_types = Array[int]([1, 3]) [sub_resource type="Resource" id="Resource_hbst6"] script = ExtResource("1_fpg0h") -position = Vector2(22, -118) -attach_types = Array[int]([2, 3]) +position = Vector2(-79, -230) +attach_types = Array[int]([1, 3, 2]) [sub_resource type="Resource" id="Resource_w4gue"] script = ExtResource("1_fpg0h") -position = Vector2(56, -169) +position = Vector2(-102, -381) attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_gvdal"] script = ExtResource("1_fpg0h") -position = Vector2(-22, -190) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_ctxsc"] -script = ExtResource("1_fpg0h") -position = Vector2(-31, 228) +position = Vector2(3, 384) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] -atlas = ExtResource("3_lfxw0") -region = Rect2(75, 836, 184, 463) +atlas = ExtResource("3_fpg0h") +region = Rect2(4870, 2508, 285, 847) [resource] resource_name = "Base2" script = ExtResource("2_ex0x2") texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_ctxsc") -attaches = Array[ExtResource("1_fpg0h")]([SubResource("Resource_uf3kp"), SubResource("Resource_hbst6"), SubResource("Resource_w4gue"), SubResource("Resource_gvdal")]) +root = SubResource("Resource_gvdal") +attaches = Array[ExtResource("1_fpg0h")]([SubResource("Resource_ex0x2"), SubResource("Resource_lfxw0"), SubResource("Resource_uf3kp"), SubResource("Resource_hbst6"), SubResource("Resource_w4gue")]) diff --git a/entities/plants/resources/plant_parts/Base3.tres b/entities/plants/resources/plant_parts/Base3.tres new file mode 100644 index 0000000..d0fd580 --- /dev/null +++ b/entities/plants/resources/plant_parts/Base3.tres @@ -0,0 +1,30 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d2vdf2sth2xjm"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_3h2vf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_b753l"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_36vnr"] + +[sub_resource type="Resource" id="Resource_3h2vf"] +script = ExtResource("1_3h2vf") +position = Vector2(-89, 45) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_b753l"] +script = ExtResource("1_3h2vf") +position = Vector2(-7, -161) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_36vnr"] +script = ExtResource("1_3h2vf") +position = Vector2(15, 184) + +[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] +atlas = ExtResource("3_36vnr") +region = Rect2(4497, 2359, 335, 454) + +[resource] +resource_name = "Base3" +script = ExtResource("2_b753l") +texture = SubResource("AtlasTexture_khbsd") +root = SubResource("Resource_36vnr") +attaches = Array[ExtResource("1_3h2vf")]([SubResource("Resource_3h2vf"), SubResource("Resource_b753l")]) diff --git a/entities/plants/resources/plant_parts/Branch1.tres b/entities/plants/resources/plant_parts/Branch1.tres index dbc2eca..d7fc814 100644 --- a/entities/plants/resources/plant_parts/Branch1.tres +++ b/entities/plants/resources/plant_parts/Branch1.tres @@ -2,25 +2,36 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_o5tro"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_peh48"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_o5tro"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_o5tro"] [sub_resource type="Resource" id="Resource_o5tro"] script = ExtResource("1_o5tro") -position = Vector2(8, -4) -attach_types = Array[int]([2, 3]) +position = Vector2(-34, 55) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_sfip3"] script = ExtResource("1_o5tro") -position = Vector2(-39, 2) +position = Vector2(37, 54) +attach_types = Array[int]([2, 3]) + +[sub_resource type="Resource" id="Resource_iss37"] +script = ExtResource("1_o5tro") +position = Vector2(16, -42) +attach_types = Array[int]([2, 3]) + +[sub_resource type="Resource" id="Resource_baq38"] +script = ExtResource("1_o5tro") +position = Vector2(-80, 77) attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] atlas = ExtResource("3_o5tro") -region = Rect2(525, 122, 136, 98) +region = Rect2(490, 46, 201, 207) [resource] resource_name = "Branch1" script = ExtResource("1_peh48") texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_sfip3") -attaches = Array[ExtResource("1_o5tro")]([SubResource("Resource_o5tro")]) +type = 1 +root = SubResource("Resource_baq38") +attaches = Array[ExtResource("1_o5tro")]([SubResource("Resource_o5tro"), SubResource("Resource_sfip3"), SubResource("Resource_iss37")]) diff --git a/entities/plants/resources/plant_parts/Branch10.tres b/entities/plants/resources/plant_parts/Branch10.tres deleted file mode 100644 index b60a9bf..0000000 --- a/entities/plants/resources/plant_parts/Branch10.tres +++ /dev/null @@ -1,56 +0,0 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b68fyu1j5d6te"] - -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fvydc"] -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_x08jn"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_ot5v1"] - -[sub_resource type="Resource" id="Resource_fvydc"] -script = ExtResource("1_fvydc") -position = Vector2(-89, 70) -attach_types = Array[int]([1, 3]) - -[sub_resource type="Resource" id="Resource_x08jn"] -script = ExtResource("1_fvydc") -position = Vector2(-38, 36) -attach_types = Array[int]([1, 3]) - -[sub_resource type="Resource" id="Resource_ot5v1"] -script = ExtResource("1_fvydc") -position = Vector2(31, -9) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_yep62"] -script = ExtResource("1_fvydc") -position = Vector2(20, -58) -attach_types = Array[int]([3, 2]) - -[sub_resource type="Resource" id="Resource_qu1f1"] -script = ExtResource("1_fvydc") -position = Vector2(53, -104) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_0c5bs"] -script = ExtResource("1_fvydc") -position = Vector2(98, -23) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_mybt3"] -script = ExtResource("1_fvydc") -position = Vector2(48, -70) -attach_types = Array[int]([2, 3]) - -[sub_resource type="Resource" id="Resource_qlwyk"] -script = ExtResource("1_fvydc") -position = Vector2(-135, 74) -attach_types = Array[int]([0]) - -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] -atlas = ExtResource("3_ot5v1") -region = Rect2(752, 3559, 363, 339) - -[resource] -resource_name = "Branch10" -script = ExtResource("2_x08jn") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_qlwyk") -attaches = Array[ExtResource("1_fvydc")]([SubResource("Resource_fvydc"), SubResource("Resource_x08jn"), SubResource("Resource_ot5v1"), SubResource("Resource_yep62"), SubResource("Resource_qu1f1"), SubResource("Resource_0c5bs"), SubResource("Resource_mybt3")]) diff --git a/entities/plants/resources/plant_parts/Branch11.tres b/entities/plants/resources/plant_parts/Branch11.tres index f6192df..720fca1 100644 --- a/entities/plants/resources/plant_parts/Branch11.tres +++ b/entities/plants/resources/plant_parts/Branch11.tres @@ -1,4 +1,4 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d2y7o2hc6ffei"] +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b1xi3f43jcbmw"] [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_smg8i"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_0o4uq"] diff --git a/entities/plants/resources/plant_parts/Branch12.tres b/entities/plants/resources/plant_parts/Branch12.tres index f715f4c..98e24f8 100644 --- a/entities/plants/resources/plant_parts/Branch12.tres +++ b/entities/plants/resources/plant_parts/Branch12.tres @@ -1,4 +1,4 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://civ4gr1c2pq7g"] +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cbjx1oxiqr5w3"] [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_h0d20"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_p8rhl"] diff --git a/entities/plants/resources/plant_parts/Branch13.tres b/entities/plants/resources/plant_parts/Branch13.tres index dac781f..b254a99 100644 --- a/entities/plants/resources/plant_parts/Branch13.tres +++ b/entities/plants/resources/plant_parts/Branch13.tres @@ -1,4 +1,4 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bqfocs6f0iypo"] +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dt5h3b4moxvyv"] [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_iibe2"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_3j5ru"] diff --git a/entities/plants/resources/plant_parts/Branch14.tres b/entities/plants/resources/plant_parts/Branch14.tres index 6520d34..a7fbd2b 100644 --- a/entities/plants/resources/plant_parts/Branch14.tres +++ b/entities/plants/resources/plant_parts/Branch14.tres @@ -1,4 +1,4 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://drml5dm8i3j3a"] +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c23jjujy6c8o3"] [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_0v6u4"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_sq3us"] diff --git a/entities/plants/resources/plant_parts/Branch2.tres b/entities/plants/resources/plant_parts/Branch2.tres index a766179..fddc7ab 100644 --- a/entities/plants/resources/plant_parts/Branch2.tres +++ b/entities/plants/resources/plant_parts/Branch2.tres @@ -2,25 +2,46 @@ [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_1eil5"] [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_h27ow"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_h27ow"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_h27ow"] [sub_resource type="Resource" id="Resource_h27ow"] script = ExtResource("1_h27ow") -position = Vector2(-1, 1) -attach_types = Array[int]([2, 3]) +position = Vector2(-57, 52) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_svi20"] script = ExtResource("1_h27ow") -position = Vector2(28, 0) +position = Vector2(-40, 12) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_60wnb"] +script = ExtResource("1_h27ow") +position = Vector2(18, 16) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_lloq2"] +script = ExtResource("1_h27ow") +position = Vector2(65, 18) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_nhsp3"] +script = ExtResource("1_h27ow") +position = Vector2(6, -66) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_k7qrd"] +script = ExtResource("1_h27ow") +position = Vector2(-94, 82) attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] atlas = ExtResource("3_h27ow") -region = Rect2(743, 108, 104, 114) +region = Rect2(714, 45, 227, 206) [resource] resource_name = "Branch2" script = ExtResource("1_1eil5") texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_svi20") -attaches = Array[ExtResource("1_h27ow")]([SubResource("Resource_h27ow")]) +type = 1 +root = SubResource("Resource_k7qrd") +attaches = Array[ExtResource("1_h27ow")]([SubResource("Resource_h27ow"), SubResource("Resource_svi20"), SubResource("Resource_60wnb"), SubResource("Resource_lloq2"), SubResource("Resource_nhsp3")]) diff --git a/entities/plants/resources/plant_parts/Branch3.tres b/entities/plants/resources/plant_parts/Branch3.tres index 6709974..08c4424 100644 --- a/entities/plants/resources/plant_parts/Branch3.tres +++ b/entities/plants/resources/plant_parts/Branch3.tres @@ -2,35 +2,51 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_4au1t"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_qrhlr"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_4au1t"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_4au1t"] [sub_resource type="Resource" id="Resource_4au1t"] script = ExtResource("1_4au1t") -position = Vector2(17, 28) -attach_types = Array[int]([2, 3]) +position = Vector2(56, 33) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_liidl"] script = ExtResource("1_4au1t") -position = Vector2(-15, -36) -attach_types = Array[int]([2, 3]) +position = Vector2(31, -13) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_mivnq"] script = ExtResource("1_4au1t") -position = Vector2(-43, -55) -attach_types = Array[int]([2]) +position = Vector2(-2, -3) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_psg71"] +script = ExtResource("1_4au1t") +position = Vector2(-10, -44) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_khbsd"] script = ExtResource("1_4au1t") -position = Vector2(46, 43) +position = Vector2(-38, -66) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_78to7"] +script = ExtResource("1_4au1t") +position = Vector2(-85, -88) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_g8nlt"] +script = ExtResource("1_4au1t") +position = Vector2(76, 73) attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] atlas = ExtResource("3_4au1t") -region = Rect2(506, 248, 139, 173) +region = Rect2(455, 302, 227, 227) [resource] resource_name = "Branch3" script = ExtResource("1_qrhlr") texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_khbsd") -attaches = Array[ExtResource("1_4au1t")]([SubResource("Resource_4au1t"), SubResource("Resource_liidl"), SubResource("Resource_mivnq")]) +type = 1 +root = SubResource("Resource_g8nlt") +attaches = Array[ExtResource("1_4au1t")]([SubResource("Resource_4au1t"), SubResource("Resource_liidl"), SubResource("Resource_mivnq"), SubResource("Resource_psg71"), SubResource("Resource_khbsd"), SubResource("Resource_78to7")]) diff --git a/entities/plants/resources/plant_parts/Branch4.tres b/entities/plants/resources/plant_parts/Branch4.tres index 6fc7832..3fdc455 100644 --- a/entities/plants/resources/plant_parts/Branch4.tres +++ b/entities/plants/resources/plant_parts/Branch4.tres @@ -2,35 +2,41 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_2wu38"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_tu2er"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_5mbvh"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_2wu38"] [sub_resource type="Resource" id="Resource_2wu38"] script = ExtResource("1_2wu38") position = Vector2(-19, 37) -attach_types = Array[int]([2, 3]) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_5mbvh"] script = ExtResource("1_2wu38") -position = Vector2(-1, -4) -attach_types = Array[int]([2, 3]) +position = Vector2(15, -11) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_7ivk8"] script = ExtResource("1_2wu38") -position = Vector2(29, -52) +position = Vector2(15, 26) attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_lwslo"] script = ExtResource("1_2wu38") -position = Vector2(-44, 57) +position = Vector2(38, -50) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_wtrei"] +script = ExtResource("1_2wu38") +position = Vector2(-58, 58) attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] -atlas = ExtResource("3_5mbvh") -region = Rect2(776, 250, 152, 177) +atlas = ExtResource("3_2wu38") +region = Rect2(725, 317, 173, 176) [resource] resource_name = "Branch4" script = ExtResource("1_tu2er") texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_lwslo") -attaches = Array[ExtResource("1_2wu38")]([SubResource("Resource_2wu38"), SubResource("Resource_5mbvh"), SubResource("Resource_7ivk8")]) +type = 1 +root = SubResource("Resource_wtrei") +attaches = Array[ExtResource("1_2wu38")]([SubResource("Resource_2wu38"), SubResource("Resource_5mbvh"), SubResource("Resource_7ivk8"), SubResource("Resource_lwslo")]) diff --git a/entities/plants/resources/plant_parts/Branch5.tres b/entities/plants/resources/plant_parts/Branch5.tres index 59e5f65..4d1a167 100644 --- a/entities/plants/resources/plant_parts/Branch5.tres +++ b/entities/plants/resources/plant_parts/Branch5.tres @@ -2,35 +2,46 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_7ri8e"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_sfan5"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_kwcpq"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_7ri8e"] [sub_resource type="Resource" id="Resource_7ri8e"] script = ExtResource("1_7ri8e") -position = Vector2(56, 24) -attach_types = Array[int]([2, 3]) +position = Vector2(-36, 50) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_kwcpq"] script = ExtResource("1_7ri8e") -position = Vector2(36, -8) -attach_types = Array[int]([2, 3]) +position = Vector2(-5, 30) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_a5n1t"] script = ExtResource("1_7ri8e") -position = Vector2(-40, -66) +position = Vector2(32, 26) attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_d1jt0"] script = ExtResource("1_7ri8e") -position = Vector2(73, 61) +position = Vector2(18, -15) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_72tpv"] +script = ExtResource("1_7ri8e") +position = Vector2(51, -66) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_04uhi"] +script = ExtResource("1_7ri8e") +position = Vector2(-74, 74) attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] -atlas = ExtResource("3_kwcpq") -region = Rect2(442, 491, 225, 234) +atlas = ExtResource("3_7ri8e") +region = Rect2(463, 545, 204, 197) [resource] resource_name = "Branch5" script = ExtResource("1_sfan5") texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_d1jt0") -attaches = Array[ExtResource("1_7ri8e")]([SubResource("Resource_7ri8e"), SubResource("Resource_kwcpq"), SubResource("Resource_a5n1t")]) +type = 1 +root = SubResource("Resource_04uhi") +attaches = Array[ExtResource("1_7ri8e")]([SubResource("Resource_7ri8e"), SubResource("Resource_kwcpq"), SubResource("Resource_a5n1t"), SubResource("Resource_d1jt0"), SubResource("Resource_72tpv")]) diff --git a/entities/plants/resources/plant_parts/Branch6.tres b/entities/plants/resources/plant_parts/Branch6.tres index d1938bf..6fca68f 100644 --- a/entities/plants/resources/plant_parts/Branch6.tres +++ b/entities/plants/resources/plant_parts/Branch6.tres @@ -2,35 +2,46 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_yt05g"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_cps4v"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_t38ym"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_yt05g"] [sub_resource type="Resource" id="Resource_yt05g"] script = ExtResource("1_yt05g") -position = Vector2(-18, 26) -attach_types = Array[int]([2, 3]) +position = Vector2(-38, 56) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_cps4v"] script = ExtResource("1_yt05g") -position = Vector2(16, -16) -attach_types = Array[int]([3, 2]) +position = Vector2(-20, 13) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_t38ym"] script = ExtResource("1_yt05g") -position = Vector2(44, -63) -attach_types = Array[int]([2]) +position = Vector2(25, 23) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_o1b7h"] script = ExtResource("1_yt05g") -position = Vector2(-49, 42) +position = Vector2(7, -32) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_pdqa4"] +script = ExtResource("1_yt05g") +position = Vector2(26, -64) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_y2r4w"] +script = ExtResource("1_yt05g") +position = Vector2(-72, 79) attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] -atlas = ExtResource("3_t38ym") -region = Rect2(753, 507, 173, 183) +atlas = ExtResource("3_yt05g") +region = Rect2(723, 522, 193, 202) [resource] resource_name = "Branch6" script = ExtResource("2_cps4v") texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_o1b7h") -attaches = Array[ExtResource("1_yt05g")]([SubResource("Resource_yt05g"), SubResource("Resource_cps4v"), SubResource("Resource_t38ym")]) +type = 1 +root = SubResource("Resource_y2r4w") +attaches = Array[ExtResource("1_yt05g")]([SubResource("Resource_yt05g"), SubResource("Resource_cps4v"), SubResource("Resource_t38ym"), SubResource("Resource_o1b7h"), SubResource("Resource_pdqa4")]) diff --git a/entities/plants/resources/plant_parts/Branch7.tres b/entities/plants/resources/plant_parts/Branch7.tres index 19cda56..8cd520d 100644 --- a/entities/plants/resources/plant_parts/Branch7.tres +++ b/entities/plants/resources/plant_parts/Branch7.tres @@ -2,60 +2,61 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_62ciq"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_hmnx4"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_64xx3"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_64xx3"] [sub_resource type="Resource" id="Resource_62ciq"] script = ExtResource("1_62ciq") -position = Vector2(19, 109) -attach_types = Array[int]([1, 3]) +position = Vector2(80, 32) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_hmnx4"] script = ExtResource("1_62ciq") -position = Vector2(-64, 158) -attach_types = Array[int]([1, 3]) +position = Vector2(26, 14) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_64xx3"] script = ExtResource("1_62ciq") -position = Vector2(129, -28) -attach_types = Array[int]([1, 3, 2]) +position = Vector2(59, -4) +attach_types = Array[int]([3, 2]) [sub_resource type="Resource" id="Resource_584up"] script = ExtResource("1_62ciq") -position = Vector2(161, -90) -attach_types = Array[int]([2]) +position = Vector2(-49, 3) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_7pnm7"] script = ExtResource("1_62ciq") -position = Vector2(81, -121) -attach_types = Array[int]([1, 3, 2]) +position = Vector2(-12, -57) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_3cfto"] script = ExtResource("1_62ciq") -position = Vector2(79, -201) -attach_types = Array[int]([3, 2]) +position = Vector2(23, -33) +attach_types = Array[int]([3]) [sub_resource type="Resource" id="Resource_q6abt"] script = ExtResource("1_62ciq") -position = Vector2(82, 31) -attach_types = Array[int]([3, 2]) +position = Vector2(-89, 20) +attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_xtrwx"] script = ExtResource("1_62ciq") -position = Vector2(83, -265) +position = Vector2(-38, -66) attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_gi4wl"] script = ExtResource("1_62ciq") -position = Vector2(-142, 199) -attach_types = Array[int]([0]) +position = Vector2(97, 67) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] atlas = ExtResource("3_64xx3") -region = Rect2(733, 2134, 355, 567) +region = Rect2(603, 771, 253, 189) [resource] resource_name = "Branch7" script = ExtResource("2_hmnx4") texture = SubResource("AtlasTexture_khbsd") +type = 1 root = SubResource("Resource_gi4wl") attaches = Array[ExtResource("1_62ciq")]([SubResource("Resource_62ciq"), SubResource("Resource_hmnx4"), SubResource("Resource_64xx3"), SubResource("Resource_584up"), SubResource("Resource_7pnm7"), SubResource("Resource_3cfto"), SubResource("Resource_q6abt"), SubResource("Resource_xtrwx")]) diff --git a/entities/plants/resources/plant_parts/Branch8.tres b/entities/plants/resources/plant_parts/Branch8.tres deleted file mode 100644 index 083db4c..0000000 --- a/entities/plants/resources/plant_parts/Branch8.tres +++ /dev/null @@ -1,81 +0,0 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bkpe0b38m0prg"] - -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_4kt4t"] -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_27lv3"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_uywa1"] - -[sub_resource type="Resource" id="Resource_4kt4t"] -script = ExtResource("1_4kt4t") -position = Vector2(106, 88) -attach_types = Array[int]([1, 3]) - -[sub_resource type="Resource" id="Resource_27lv3"] -script = ExtResource("1_4kt4t") -position = Vector2(30, 29) -attach_types = Array[int]([3, 2]) - -[sub_resource type="Resource" id="Resource_uywa1"] -script = ExtResource("1_4kt4t") -position = Vector2(-70, 7) -attach_types = Array[int]([1, 3]) - -[sub_resource type="Resource" id="Resource_f38s6"] -script = ExtResource("1_4kt4t") -position = Vector2(-159, -14) -attach_types = Array[int]([1, 3]) - -[sub_resource type="Resource" id="Resource_s0e8g"] -script = ExtResource("1_4kt4t") -position = Vector2(-213, -15) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_ls1nv"] -script = ExtResource("1_4kt4t") -position = Vector2(-68, -102) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_vh6s2"] -script = ExtResource("1_4kt4t") -position = Vector2(103, -181) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_7ej73"] -script = ExtResource("1_4kt4t") -position = Vector2(78, -53) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_m21ts"] -script = ExtResource("1_4kt4t") -position = Vector2(29, -5) -attach_types = Array[int]([3]) - -[sub_resource type="Resource" id="Resource_2uuoj"] -script = ExtResource("1_4kt4t") -position = Vector2(17, -31) -attach_types = Array[int]([3]) - -[sub_resource type="Resource" id="Resource_e1t12"] -script = ExtResource("1_4kt4t") -position = Vector2(-25, -63) -attach_types = Array[int]([3]) - -[sub_resource type="Resource" id="Resource_57gqx"] -script = ExtResource("1_4kt4t") -position = Vector2(89, -124) -attach_types = Array[int]([3, 1]) - -[sub_resource type="Resource" id="Resource_vj66r"] -script = ExtResource("1_4kt4t") -position = Vector2(172, 138) -attach_types = Array[int]([0]) - -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] -atlas = ExtResource("3_uywa1") -region = Rect2(619, 2705, 551, 494) - -[resource] -resource_name = "Branch8" -script = ExtResource("2_27lv3") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_vj66r") -attaches = Array[ExtResource("1_4kt4t")]([SubResource("Resource_4kt4t"), SubResource("Resource_27lv3"), SubResource("Resource_uywa1"), SubResource("Resource_f38s6"), SubResource("Resource_s0e8g"), SubResource("Resource_ls1nv"), SubResource("Resource_vh6s2"), SubResource("Resource_7ej73"), SubResource("Resource_m21ts"), SubResource("Resource_2uuoj"), SubResource("Resource_e1t12"), SubResource("Resource_57gqx")]) diff --git a/entities/plants/resources/plant_parts/Branch9.tres b/entities/plants/resources/plant_parts/Branch9.tres deleted file mode 100644 index f9c52bc..0000000 --- a/entities/plants/resources/plant_parts/Branch9.tres +++ /dev/null @@ -1,56 +0,0 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://31oq17bv1t4t"] - -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_qdh8q"] -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_hbagk"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_o2wa0"] - -[sub_resource type="Resource" id="Resource_qdh8q"] -script = ExtResource("1_qdh8q") -position = Vector2(-11, 57) -attach_types = Array[int]([1, 3]) - -[sub_resource type="Resource" id="Resource_hbagk"] -script = ExtResource("1_qdh8q") -position = Vector2(-60, 31) -attach_types = Array[int]([3, 2]) - -[sub_resource type="Resource" id="Resource_o2wa0"] -script = ExtResource("1_qdh8q") -position = Vector2(48, -16) -attach_types = Array[int]([1, 3]) - -[sub_resource type="Resource" id="Resource_w267e"] -script = ExtResource("1_qdh8q") -position = Vector2(-77, -29) -attach_types = Array[int]([1, 3, 2]) - -[sub_resource type="Resource" id="Resource_drvpg"] -script = ExtResource("1_qdh8q") -position = Vector2(-111, -67) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_bfy67"] -script = ExtResource("1_qdh8q") -position = Vector2(62, 33) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_wvhwx"] -script = ExtResource("1_qdh8q") -position = Vector2(101, -77) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_f4sg7"] -script = ExtResource("1_qdh8q") -position = Vector2(-62, 81) -attach_types = Array[int]([0]) - -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] -atlas = ExtResource("3_o2wa0") -region = Rect2(763, 3233, 353, 258) - -[resource] -resource_name = "Branch9" -script = ExtResource("2_hbagk") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_f4sg7") -attaches = Array[ExtResource("1_qdh8q")]([SubResource("Resource_qdh8q"), SubResource("Resource_hbagk"), SubResource("Resource_o2wa0"), SubResource("Resource_w267e"), SubResource("Resource_drvpg"), SubResource("Resource_bfy67"), SubResource("Resource_wvhwx")]) diff --git a/entities/plants/resources/plant_parts/FlowerA1.tres b/entities/plants/resources/plant_parts/FlowerA1.tres index 9cccdff..d34f457 100644 --- a/entities/plants/resources/plant_parts/FlowerA1.tres +++ b/entities/plants/resources/plant_parts/FlowerA1.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_m6w7w"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_rmuvq"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_d3khu"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_m6w7w"] -[sub_resource type="Resource" id="Resource_rmuvq"] +[sub_resource type="Resource" id="Resource_m6w7w"] script = ExtResource("1_m6w7w") -position = Vector2(12, 11) +position = Vector2(4, 13) attach_types = Array[int]([2]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_d3khu") -region = Rect2(1627, 1340, 86, 82) +atlas = ExtResource("3_m6w7w") +region = Rect2(1418, 523, 152, 145) [resource] resource_name = "FlowerA1" script = ExtResource("2_rmuvq") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_rmuvq") +type = 3 +root = SubResource("Resource_m6w7w") diff --git a/entities/plants/resources/plant_parts/FlowerA2.tres b/entities/plants/resources/plant_parts/FlowerA2.tres index b4c1c4a..14daada 100644 --- a/entities/plants/resources/plant_parts/FlowerA2.tres +++ b/entities/plants/resources/plant_parts/FlowerA2.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ntn8n"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_8cijn"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_amrra"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ntn8n"] -[sub_resource type="Resource" id="Resource_8cijn"] +[sub_resource type="Resource" id="Resource_ntn8n"] script = ExtResource("1_ntn8n") -position = Vector2(-16, 14) +position = Vector2(-4, 6) attach_types = Array[int]([2]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_amrra") -region = Rect2(1714, 1341, 91, 87) +atlas = ExtResource("3_ntn8n") +region = Rect2(1571, 541, 135, 128) [resource] resource_name = "FlowerA2" script = ExtResource("2_8cijn") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_8cijn") +type = 3 +root = SubResource("Resource_ntn8n") diff --git a/entities/plants/resources/plant_parts/FlowerA3.tres b/entities/plants/resources/plant_parts/FlowerA3.tres index 43646bf..af9636b 100644 --- a/entities/plants/resources/plant_parts/FlowerA3.tres +++ b/entities/plants/resources/plant_parts/FlowerA3.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_4i4bt"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_mbqq5"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_08wd6"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_4i4bt"] -[sub_resource type="Resource" id="Resource_mbqq5"] +[sub_resource type="Resource" id="Resource_4i4bt"] script = ExtResource("1_4i4bt") -position = Vector2(6, 1) +position = Vector2(-5, 3) attach_types = Array[int]([2]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_08wd6") -region = Rect2(1654, 1422, 56, 73) +atlas = ExtResource("3_4i4bt") +region = Rect2(1409, 668, 110, 128) [resource] resource_name = "FlowerA3" script = ExtResource("2_mbqq5") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_mbqq5") +type = 3 +root = SubResource("Resource_4i4bt") diff --git a/entities/plants/resources/plant_parts/FlowerA4.tres b/entities/plants/resources/plant_parts/FlowerA4.tres index bc5c6ac..e740373 100644 --- a/entities/plants/resources/plant_parts/FlowerA4.tres +++ b/entities/plants/resources/plant_parts/FlowerA4.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_a64b2"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_b0i72"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_my41n"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_a64b2"] -[sub_resource type="Resource" id="Resource_b0i72"] +[sub_resource type="Resource" id="Resource_a64b2"] script = ExtResource("1_a64b2") -position = Vector2(-7, 7) +position = Vector2(6, 9) attach_types = Array[int]([2]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_my41n") -region = Rect2(1710, 1425, 74, 70) +atlas = ExtResource("3_a64b2") +region = Rect2(1532, 674, 82, 92) [resource] resource_name = "FlowerA4" script = ExtResource("2_b0i72") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_b0i72") +type = 3 +root = SubResource("Resource_a64b2") diff --git a/entities/plants/resources/plant_parts/FlowerA5.tres b/entities/plants/resources/plant_parts/FlowerA5.tres index b3acc9e..d163cab 100644 --- a/entities/plants/resources/plant_parts/FlowerA5.tres +++ b/entities/plants/resources/plant_parts/FlowerA5.tres @@ -2,16 +2,16 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_s67jx"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_w7tur"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_6f2ye"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_s67jx"] [sub_resource type="Resource" id="Resource_w7tur"] script = ExtResource("1_s67jx") -position = Vector2(-6, 13) +position = Vector2(-12, 6) attach_types = Array[int]([2]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_6f2ye") -region = Rect2(3114, 2090, 215, 180) +atlas = ExtResource("3_s67jx") +region = Rect2(1615, 684, 88, 90) [resource] resource_name = "FlowerA5" diff --git a/entities/plants/resources/plant_parts/FlowerA6.tres b/entities/plants/resources/plant_parts/FlowerA6.tres new file mode 100644 index 0000000..87d66e4 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerA6.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://par4hf5gjvqu"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_whnmg"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_mio0u"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_jnhwx"] + +[sub_resource type="Resource" id="Resource_whnmg"] +script = ExtResource("1_whnmg") +position = Vector2(6, 2) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_jnhwx") +region = Rect2(1524, 775, 76, 79) + +[resource] +resource_name = "FlowerA6" +script = ExtResource("2_mio0u") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_whnmg") diff --git a/entities/plants/resources/plant_parts/FlowerA7.tres b/entities/plants/resources/plant_parts/FlowerA7.tres new file mode 100644 index 0000000..6ff72cc --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerA7.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://414go2hmhy12"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_jv20r"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_3xdx7"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_mhlsu"] + +[sub_resource type="Resource" id="Resource_jv20r"] +script = ExtResource("1_jv20r") +position = Vector2(-2, 4) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_mhlsu") +region = Rect2(1600, 775, 91, 82) + +[resource] +resource_name = "FlowerA7" +script = ExtResource("2_3xdx7") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_jv20r") diff --git a/entities/plants/resources/plant_parts/FlowerB1.tres b/entities/plants/resources/plant_parts/FlowerB1.tres index df31f63..758d1f9 100644 --- a/entities/plants/resources/plant_parts/FlowerB1.tres +++ b/entities/plants/resources/plant_parts/FlowerB1.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_hkelp"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_37dm4"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_hkelp"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_hkelp"] -[sub_resource type="Resource" id="Resource_37dm4"] +[sub_resource type="Resource" id="Resource_hkelp"] script = ExtResource("1_hkelp") position = Vector2(-8, -3) -attach_types = Array[int]([2]) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_hkelp") -region = Rect2(1445, 1639, 182, 192) +region = Rect2(943, 33, 231, 232) [resource] resource_name = "FlowerB1" script = ExtResource("2_37dm4") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_37dm4") +type = 3 +root = SubResource("Resource_hkelp") diff --git a/entities/plants/resources/plant_parts/FlowerB2.tres b/entities/plants/resources/plant_parts/FlowerB2.tres index 9fb5792..65aa886 100644 --- a/entities/plants/resources/plant_parts/FlowerB2.tres +++ b/entities/plants/resources/plant_parts/FlowerB2.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_rnm6j"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_jhn52"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_rnm6j"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_rnm6j"] -[sub_resource type="Resource" id="Resource_jhn52"] +[sub_resource type="Resource" id="Resource_rnm6j"] script = ExtResource("1_rnm6j") -position = Vector2(9, -7) -attach_types = Array[int]([2]) +position = Vector2(7, 8) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_rnm6j") -region = Rect2(1264, 1627, 179, 204) +region = Rect2(1180, 20, 206, 218) [resource] resource_name = "FlowerB2" script = ExtResource("2_jhn52") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_jhn52") +type = 3 +root = SubResource("Resource_rnm6j") diff --git a/entities/plants/resources/plant_parts/FlowerB3.tres b/entities/plants/resources/plant_parts/FlowerB3.tres index 5eed257..94fc118 100644 --- a/entities/plants/resources/plant_parts/FlowerB3.tres +++ b/entities/plants/resources/plant_parts/FlowerB3.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_b0qvt"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_rco0e"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_ayrxj"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_b0qvt"] [sub_resource type="Resource" id="Resource_b0qvt"] script = ExtResource("1_b0qvt") -position = Vector2(15, -12) -attach_types = Array[int]([2, 3]) +position = Vector2(5, 4) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_ayrxj") -region = Rect2(1046, 1611, 191, 226) +atlas = ExtResource("3_b0qvt") +region = Rect2(909, 258, 253, 232) [resource] resource_name = "FlowerB3" script = ExtResource("2_rco0e") texture = SubResource("AtlasTexture_yh7e0") -type = 1 +type = 3 root = SubResource("Resource_b0qvt") diff --git a/entities/plants/resources/plant_parts/FlowerB4.tres b/entities/plants/resources/plant_parts/FlowerB4.tres new file mode 100644 index 0000000..432ef38 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerB4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://br4e84rsg87e8"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_wt7m0"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gt13q"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_k57tp"] + +[sub_resource type="Resource" id="Resource_wt7m0"] +script = ExtResource("1_wt7m0") +position = Vector2(-6, -1) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_k57tp") +region = Rect2(1162, 258, 252, 232) + +[resource] +resource_name = "FlowerB4" +script = ExtResource("2_gt13q") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_wt7m0") diff --git a/entities/plants/resources/plant_parts/FlowerB5.tres b/entities/plants/resources/plant_parts/FlowerB5.tres new file mode 100644 index 0000000..585265d --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerB5.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bvujlvgbh4pyc"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_digkl"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_s1tmx"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_5hkjn"] + +[sub_resource type="Resource" id="Resource_digkl"] +script = ExtResource("1_digkl") +position = Vector2(10, -6) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_5hkjn") +region = Rect2(921, 493, 187, 204) + +[resource] +resource_name = "FlowerB5" +script = ExtResource("2_s1tmx") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_digkl") diff --git a/entities/plants/resources/plant_parts/FlowerB6.tres b/entities/plants/resources/plant_parts/FlowerB6.tres new file mode 100644 index 0000000..dcdc7b4 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerB6.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dsoolh270ygjd"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_j6hd1"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_wysn4"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_rjns2"] + +[sub_resource type="Resource" id="Resource_j6hd1"] +script = ExtResource("1_j6hd1") +position = Vector2(-5, 2) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_rjns2") +region = Rect2(1178, 515, 184, 182) + +[resource] +resource_name = "FlowerB6" +script = ExtResource("2_wysn4") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_j6hd1") diff --git a/entities/plants/resources/plant_parts/FlowerC1.tres b/entities/plants/resources/plant_parts/FlowerC1.tres index 5ac8d8a..12146b9 100644 --- a/entities/plants/resources/plant_parts/FlowerC1.tres +++ b/entities/plants/resources/plant_parts/FlowerC1.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_aauvf"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_vf3wc"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_aauvf"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_aauvf"] -[sub_resource type="Resource" id="Resource_vf3wc"] +[sub_resource type="Resource" id="Resource_aauvf"] script = ExtResource("1_aauvf") -position = Vector2(20, 18) -attach_types = Array[int]([2]) +position = Vector2(1, 12) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_aauvf") -region = Rect2(2145, 1345, 111, 115) +region = Rect2(1758, 794, 149, 99) [resource] resource_name = "FlowerC1" script = ExtResource("2_vf3wc") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_vf3wc") +type = 3 +root = SubResource("Resource_aauvf") diff --git a/entities/plants/resources/plant_parts/FlowerC2.tres b/entities/plants/resources/plant_parts/FlowerC2.tres index 8452298..d92fdbb 100644 --- a/entities/plants/resources/plant_parts/FlowerC2.tres +++ b/entities/plants/resources/plant_parts/FlowerC2.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_nquip"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_x22o7"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_nquip"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_nquip"] -[sub_resource type="Resource" id="Resource_x22o7"] +[sub_resource type="Resource" id="Resource_nquip"] script = ExtResource("1_nquip") -position = Vector2(-29, 2) -attach_types = Array[int]([2]) +position = Vector2(0, 4) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_nquip") -region = Rect2(2310, 1397, 145, 86) +region = Rect2(1892, 882, 105, 161) [resource] resource_name = "FlowerC2" script = ExtResource("2_x22o7") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_x22o7") +type = 3 +root = SubResource("Resource_nquip") diff --git a/entities/plants/resources/plant_parts/FlowerC3.tres b/entities/plants/resources/plant_parts/FlowerC3.tres index 178dc86..d80337b 100644 --- a/entities/plants/resources/plant_parts/FlowerC3.tres +++ b/entities/plants/resources/plant_parts/FlowerC3.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_wmge1"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_fo6bt"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_wmge1"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_wmge1"] -[sub_resource type="Resource" id="Resource_fo6bt"] +[sub_resource type="Resource" id="Resource_wmge1"] script = ExtResource("1_wmge1") -position = Vector2(-8, -13) -attach_types = Array[int]([2]) +position = Vector2(-2, -1) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_wmge1") -region = Rect2(2260, 1490, 106, 107) +region = Rect2(1752, 949, 139, 140) [resource] resource_name = "FlowerC3" script = ExtResource("2_fo6bt") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_fo6bt") +type = 3 +root = SubResource("Resource_wmge1") diff --git a/entities/plants/resources/plant_parts/FlowerC4.tres b/entities/plants/resources/plant_parts/FlowerC4.tres index d5efb30..849257b 100644 --- a/entities/plants/resources/plant_parts/FlowerC4.tres +++ b/entities/plants/resources/plant_parts/FlowerC4.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_bg02b"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_3vf1o"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_dvo33"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_bg02b"] [sub_resource type="Resource" id="Resource_bg02b"] script = ExtResource("1_bg02b") -position = Vector2(5, 12) -attach_types = Array[int]([2, 3]) +position = Vector2(-33, 1) +attach_types = Array[int]([2]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_dvo33") -region = Rect2(2541, 1399, 216, 230) +atlas = ExtResource("3_bg02b") +region = Rect2(1924, 1064, 124, 91) [resource] resource_name = "FlowerC4" script = ExtResource("2_3vf1o") texture = SubResource("AtlasTexture_yh7e0") -type = 1 +type = 3 root = SubResource("Resource_bg02b") diff --git a/entities/plants/resources/plant_parts/FlowerC5.tres b/entities/plants/resources/plant_parts/FlowerC5.tres new file mode 100644 index 0000000..ce8c547 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerC5.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://u1f6c41fvau5"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_8a5lo"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_s8jjp"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_jb5ts"] + +[sub_resource type="Resource" id="Resource_8a5lo"] +script = ExtResource("1_8a5lo") +position = Vector2(20, 16) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_jb5ts") +region = Rect2(1757, 1091, 108, 104) + +[resource] +resource_name = "FlowerC5" +script = ExtResource("2_s8jjp") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_8a5lo") diff --git a/entities/plants/resources/plant_parts/FlowerC6.tres b/entities/plants/resources/plant_parts/FlowerC6.tres new file mode 100644 index 0000000..fd05482 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerC6.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bap5xihdc3gbe"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_v2oke"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_4ghb0"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_2xsji"] + +[sub_resource type="Resource" id="Resource_v2oke"] +script = ExtResource("1_v2oke") +position = Vector2(-16, -19) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_2xsji") +region = Rect2(1870, 1153, 95, 97) + +[resource] +resource_name = "FlowerC6" +script = ExtResource("2_4ghb0") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_v2oke") diff --git a/entities/plants/resources/plant_parts/FlowerD1.tres b/entities/plants/resources/plant_parts/FlowerD1.tres index 8e06e73..68d040c 100644 --- a/entities/plants/resources/plant_parts/FlowerD1.tres +++ b/entities/plants/resources/plant_parts/FlowerD1.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_0i0bo"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gi2kd"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_0i0bo"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_0i0bo"] [sub_resource type="Resource" id="Resource_0i0bo"] script = ExtResource("1_0i0bo") -position = Vector2(0, 7) -attach_types = Array[int]([2]) +position = Vector2(2, 0) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_0i0bo") -region = Rect2(2183, 983, 133, 141) +region = Rect2(1937, 224, 179, 187) [resource] resource_name = "FlowerD1" script = ExtResource("2_gi2kd") texture = SubResource("AtlasTexture_yh7e0") -type = 1 +type = 3 root = SubResource("Resource_0i0bo") diff --git a/entities/plants/resources/plant_parts/FlowerD2.tres b/entities/plants/resources/plant_parts/FlowerD2.tres index b077e74..9965ee4 100644 --- a/entities/plants/resources/plant_parts/FlowerD2.tres +++ b/entities/plants/resources/plant_parts/FlowerD2.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_t11x3"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_ojo42"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_t11x3"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_t11x3"] [sub_resource type="Resource" id="Resource_t11x3"] script = ExtResource("1_t11x3") -position = Vector2(-2, 6) -attach_types = Array[int]([2]) +position = Vector2(-7, 1) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_t11x3") -region = Rect2(2327, 981, 142, 150) +region = Rect2(2115, 293, 201, 179) [resource] resource_name = "FlowerD2" script = ExtResource("2_ojo42") texture = SubResource("AtlasTexture_yh7e0") -type = 1 +type = 3 root = SubResource("Resource_t11x3") diff --git a/entities/plants/resources/plant_parts/FlowerD3.tres b/entities/plants/resources/plant_parts/FlowerD3.tres index 2eabc93..6d1e6a9 100644 --- a/entities/plants/resources/plant_parts/FlowerD3.tres +++ b/entities/plants/resources/plant_parts/FlowerD3.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_vh21j"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_5vhxt"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_l52do"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_vh21j"] [sub_resource type="Resource" id="Resource_vh21j"] script = ExtResource("1_vh21j") position = Vector2(-2, 6) -attach_types = Array[int]([2, 3]) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_l52do") -region = Rect2(2229, 1129, 192, 193) +atlas = ExtResource("3_vh21j") +region = Rect2(1960, 427, 165, 171) [resource] resource_name = "FlowerD3" script = ExtResource("2_5vhxt") texture = SubResource("AtlasTexture_yh7e0") -type = 1 +type = 3 root = SubResource("Resource_vh21j") diff --git a/entities/plants/resources/plant_parts/FlowerD4.tres b/entities/plants/resources/plant_parts/FlowerD4.tres new file mode 100644 index 0000000..d4c2585 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerD4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c3w8lel02552f"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ys6fd"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_ctwyf"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_o7bdt"] + +[sub_resource type="Resource" id="Resource_ys6fd"] +script = ExtResource("1_ys6fd") +position = Vector2(-5, 2) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_o7bdt") +region = Rect2(2011, 598, 123, 130) + +[resource] +resource_name = "FlowerD4" +script = ExtResource("2_ctwyf") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_ys6fd") diff --git a/entities/plants/resources/plant_parts/FlowerD5.tres b/entities/plants/resources/plant_parts/FlowerD5.tres new file mode 100644 index 0000000..35cca8e --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerD5.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://hbylxbmmc8of"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_6lps0"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_r4nen"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_sn8fm"] + +[sub_resource type="Resource" id="Resource_6lps0"] +script = ExtResource("1_6lps0") +position = Vector2(-5, 2) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_sn8fm") +region = Rect2(2134, 589, 141, 153) + +[resource] +resource_name = "FlowerD5" +script = ExtResource("2_r4nen") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_6lps0") diff --git a/entities/plants/resources/plant_parts/FlowerE1.tres b/entities/plants/resources/plant_parts/FlowerE1.tres index ecf8995..a4642e3 100644 --- a/entities/plants/resources/plant_parts/FlowerE1.tres +++ b/entities/plants/resources/plant_parts/FlowerE1.tres @@ -1,32 +1,21 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://csny38sw5yonc"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_8n3db"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_8n3db"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_uglcj"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_luaym"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_8n3db"] [sub_resource type="Resource" id="Resource_8n3db"] script = ExtResource("1_8n3db") -position = Vector2(-11, -45) -attach_types = Array[int]([1]) - -[sub_resource type="Resource" id="Resource_uglcj"] -script = ExtResource("1_8n3db") -position = Vector2(-12, 31) -attach_types = Array[int]([1]) - -[sub_resource type="Resource" id="Resource_luaym"] -script = ExtResource("1_8n3db") -position = Vector2(49, -103) -attach_types = Array[int]([2]) +position = Vector2(-69, -85) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_luaym") -region = Rect2(1613, 279, 134, 253) +atlas = ExtResource("3_8n3db") +region = Rect2(924, 780, 181, 265) [resource] resource_name = "FlowerE1" script = ExtResource("2_uglcj") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_luaym") -attaches = Array[ExtResource("1_8n3db")]([SubResource("Resource_8n3db"), SubResource("Resource_uglcj")]) +type = 3 +root = SubResource("Resource_8n3db") diff --git a/entities/plants/resources/plant_parts/FlowerE2.tres b/entities/plants/resources/plant_parts/FlowerE2.tres index 6e79dd1..31f6d5f 100644 --- a/entities/plants/resources/plant_parts/FlowerE2.tres +++ b/entities/plants/resources/plant_parts/FlowerE2.tres @@ -1,27 +1,21 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://rlhkbddm4gdd"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_t54k4"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_t54k4"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_sy4rg"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_tepa2"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_t54k4"] [sub_resource type="Resource" id="Resource_t54k4"] script = ExtResource("1_t54k4") -position = Vector2(37, 15) -attach_types = Array[int]([1]) - -[sub_resource type="Resource" id="Resource_sy4rg"] -script = ExtResource("1_t54k4") -position = Vector2(-76, -92) -attach_types = Array[int]([2]) +position = Vector2(45, -97) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_tepa2") -region = Rect2(1744, 232, 179, 245) +atlas = ExtResource("3_t54k4") +region = Rect2(1106, 778, 115, 246) [resource] resource_name = "FlowerE2" script = ExtResource("2_sy4rg") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_sy4rg") -attaches = Array[ExtResource("1_t54k4")]([SubResource("Resource_t54k4")]) +type = 3 +root = SubResource("Resource_t54k4") diff --git a/entities/plants/resources/plant_parts/FlowerE3.tres b/entities/plants/resources/plant_parts/FlowerE3.tres index ba70a4e..4dbf131 100644 --- a/entities/plants/resources/plant_parts/FlowerE3.tres +++ b/entities/plants/resources/plant_parts/FlowerE3.tres @@ -1,32 +1,21 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://jbk6ibphi204"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_0e0rk"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_0e0rk"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_hps7n"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_ohwvp"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_0e0rk"] [sub_resource type="Resource" id="Resource_0e0rk"] script = ExtResource("1_0e0rk") -position = Vector2(30, -55) -attach_types = Array[int]([1]) - -[sub_resource type="Resource" id="Resource_hps7n"] -script = ExtResource("1_0e0rk") -position = Vector2(29, 39) -attach_types = Array[int]([1]) - -[sub_resource type="Resource" id="Resource_ohwvp"] -script = ExtResource("1_0e0rk") -position = Vector2(-36, -59) -attach_types = Array[int]([2]) +position = Vector2(-36, -53) +attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_ohwvp") -region = Rect2(1923, 232, 165, 245) +atlas = ExtResource("3_0e0rk") +region = Rect2(1238, 784, 147, 219) [resource] resource_name = "FlowerE3" script = ExtResource("2_hps7n") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_ohwvp") -attaches = Array[ExtResource("1_0e0rk")]([SubResource("Resource_0e0rk"), SubResource("Resource_hps7n")]) +type = 3 +root = SubResource("Resource_0e0rk") diff --git a/entities/plants/resources/plant_parts/FlowerF1.tres b/entities/plants/resources/plant_parts/FlowerF1.tres index 085c8da..d4beb6f 100644 --- a/entities/plants/resources/plant_parts/FlowerF1.tres +++ b/entities/plants/resources/plant_parts/FlowerF1.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_wof8s"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_skl62"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_wof8s"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_wof8s"] -[sub_resource type="Resource" id="Resource_skl62"] +[sub_resource type="Resource" id="Resource_wof8s"] script = ExtResource("1_wof8s") -position = Vector2(78, 99) +position = Vector2(0, 3) attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_wof8s") -region = Rect2(2289, 235, 216, 254) +region = Rect2(1423, 25, 137, 122) [resource] resource_name = "FlowerF1" script = ExtResource("2_skl62") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_skl62") +type = 3 +root = SubResource("Resource_wof8s") diff --git a/entities/plants/resources/plant_parts/FlowerF2.tres b/entities/plants/resources/plant_parts/FlowerF2.tres index cb37b42..767fce6 100644 --- a/entities/plants/resources/plant_parts/FlowerF2.tres +++ b/entities/plants/resources/plant_parts/FlowerF2.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_6cct5"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_d5e5n"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_6cct5"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_6cct5"] -[sub_resource type="Resource" id="Resource_d5e5n"] +[sub_resource type="Resource" id="Resource_6cct5"] script = ExtResource("1_6cct5") -position = Vector2(32, 118) +position = Vector2(0, -3) attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_6cct5") -region = Rect2(2518, 226, 163, 279) +region = Rect2(1560, 49, 138, 134) [resource] resource_name = "FlowerF2" script = ExtResource("2_d5e5n") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_d5e5n") +type = 3 +root = SubResource("Resource_6cct5") diff --git a/entities/plants/resources/plant_parts/FlowerF3.tres b/entities/plants/resources/plant_parts/FlowerF3.tres index 54e585c..7a94834 100644 --- a/entities/plants/resources/plant_parts/FlowerF3.tres +++ b/entities/plants/resources/plant_parts/FlowerF3.tres @@ -2,20 +2,20 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_kd4el"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_h8lr6"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_p6ihu"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_kd4el"] [sub_resource type="Resource" id="Resource_kd4el"] script = ExtResource("1_kd4el") -position = Vector2(-56, 102) +position = Vector2(-1, 0) attach_types = Array[int]([3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_p6ihu") -region = Rect2(2712, 243, 208, 251) +atlas = ExtResource("3_kd4el") +region = Rect2(1425, 148, 146, 130) [resource] resource_name = "FlowerF3" script = ExtResource("2_h8lr6") texture = SubResource("AtlasTexture_yh7e0") -type = 1 +type = 3 root = SubResource("Resource_kd4el") diff --git a/entities/plants/resources/plant_parts/FlowerF4.tres b/entities/plants/resources/plant_parts/FlowerF4.tres new file mode 100644 index 0000000..9ae8e54 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerF4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c3t8gj1sc7lrn"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_c1d64"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_b5tf0"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_um1c5"] + +[sub_resource type="Resource" id="Resource_k2d4u"] +script = ExtResource("1_c1d64") +position = Vector2(5, 6) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_um1c5") +region = Rect2(1439, 297, 81, 84) + +[resource] +resource_name = "FlowerF4" +script = ExtResource("2_b5tf0") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_k2d4u") diff --git a/entities/plants/resources/plant_parts/FlowerF5.tres b/entities/plants/resources/plant_parts/FlowerF5.tres new file mode 100644 index 0000000..31b609c --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerF5.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cxsbv241mpuma"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ub0n3"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_1alty"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_8uyjn"] + +[sub_resource type="Resource" id="Resource_m518w"] +script = ExtResource("1_ub0n3") +position = Vector2(-12, 7) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_8uyjn") +region = Rect2(1520, 303, 91, 83) + +[resource] +resource_name = "FlowerF5" +script = ExtResource("2_1alty") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_m518w") diff --git a/entities/plants/resources/plant_parts/FlowerF6.tres b/entities/plants/resources/plant_parts/FlowerF6.tres new file mode 100644 index 0000000..ea7a0df --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerF6.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://5a5ya2iirvwr"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_c7r4i"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_iaupe"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_8iuws"] + +[sub_resource type="Resource" id="Resource_rf3kb"] +script = ExtResource("1_c7r4i") +position = Vector2(6, 3) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_8iuws") +region = Rect2(1433, 382, 78, 83) + +[resource] +resource_name = "FlowerF6" +script = ExtResource("2_iaupe") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_rf3kb") diff --git a/entities/plants/resources/plant_parts/FlowerF7.tres b/entities/plants/resources/plant_parts/FlowerF7.tres new file mode 100644 index 0000000..9623885 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerF7.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cc8xi518vdixm"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ks158"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_3hffw"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_p6jcp"] + +[sub_resource type="Resource" id="Resource_gu7mv"] +script = ExtResource("1_ks158") +position = Vector2(-3, 9) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_p6jcp") +region = Rect2(1519, 386, 93, 79) + +[resource] +resource_name = "FlowerF7" +script = ExtResource("2_3hffw") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_gu7mv") diff --git a/entities/plants/resources/plant_parts/FlowerG1.tres b/entities/plants/resources/plant_parts/FlowerG1.tres new file mode 100644 index 0000000..7c0f4db --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerG1.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://djcwxfp4vmj8n"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_cicbf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_rthom"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_srrno"] + +[sub_resource type="Resource" id="Resource_74hvf"] +script = ExtResource("1_cicbf") +position = Vector2(8, 6) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_srrno") +region = Rect2(1728, 39, 90, 86) + +[resource] +resource_name = "FlowerG1" +script = ExtResource("2_rthom") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_74hvf") diff --git a/entities/plants/resources/plant_parts/FlowerG2.tres b/entities/plants/resources/plant_parts/FlowerG2.tres new file mode 100644 index 0000000..f4c2732 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerG2.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d246bni7ooe20"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_7f0ba"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_um3xt"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_jf3vh"] + +[sub_resource type="Resource" id="Resource_e42on"] +script = ExtResource("1_7f0ba") +position = Vector2(-10, 7) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_jf3vh") +region = Rect2(1818, 39, 89, 93) + +[resource] +resource_name = "FlowerG2" +script = ExtResource("2_um3xt") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_e42on") diff --git a/entities/plants/resources/plant_parts/FlowerG3.tres b/entities/plants/resources/plant_parts/FlowerG3.tres new file mode 100644 index 0000000..abbf54a --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerG3.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://docbn71tiiwrw"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_senp8"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_522dw"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_oln73"] + +[sub_resource type="Resource" id="Resource_3s0r7"] +script = ExtResource("1_senp8") +position = Vector2(3, 3) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_oln73") +region = Rect2(1738, 136, 74, 90) + +[resource] +resource_name = "FlowerG3" +script = ExtResource("2_522dw") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_3s0r7") diff --git a/entities/plants/resources/plant_parts/FlowerG4.tres b/entities/plants/resources/plant_parts/FlowerG4.tres new file mode 100644 index 0000000..364b570 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerG4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d4hfht8t7ridu"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_jlu3s"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_emo0h"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_jw3o5"] + +[sub_resource type="Resource" id="Resource_75gl1"] +script = ExtResource("1_jlu3s") +position = Vector2(3, 6) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_jw3o5") +region = Rect2(1812, 136, 99, 90) + +[resource] +resource_name = "FlowerG4" +script = ExtResource("2_emo0h") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_75gl1") diff --git a/entities/plants/resources/plant_parts/FlowerG5.tres b/entities/plants/resources/plant_parts/FlowerG5.tres new file mode 100644 index 0000000..6b023d5 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerG5.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cto5os1i12qtj"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_5ik7a"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_hy44w"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_o71qa"] + +[sub_resource type="Resource" id="Resource_5ik7a"] +script = ExtResource("1_5ik7a") +position = Vector2(1, 0) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_o71qa") +region = Rect2(1616, 228, 142, 118) + +[resource] +resource_name = "FlowerG5" +script = ExtResource("2_hy44w") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_5ik7a") diff --git a/entities/plants/resources/plant_parts/FlowerG6.tres b/entities/plants/resources/plant_parts/FlowerG6.tres new file mode 100644 index 0000000..8773c7a --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerG6.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bugnwjpjydm8t"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ev6ns"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_x6fci"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_xo1qx"] + +[sub_resource type="Resource" id="Resource_ev6ns"] +script = ExtResource("1_ev6ns") +position = Vector2(1, 0) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_xo1qx") +region = Rect2(1760, 251, 132, 129) + +[resource] +resource_name = "FlowerG6" +script = ExtResource("2_x6fci") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_ev6ns") diff --git a/entities/plants/resources/plant_parts/FlowerG7.tres b/entities/plants/resources/plant_parts/FlowerG7.tres new file mode 100644 index 0000000..1ca5530 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerG7.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://0n7qxw0qhn1y"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_0b7ei"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_sa83w"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ie2yy"] + +[sub_resource type="Resource" id="Resource_0b7ei"] +script = ExtResource("1_0b7ei") +position = Vector2(-5, 0) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ie2yy") +region = Rect2(1624, 344, 147, 128) + +[resource] +resource_name = "FlowerG7" +script = ExtResource("2_sa83w") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_0b7ei") diff --git a/entities/plants/resources/plant_parts/FlowerH1.tres b/entities/plants/resources/plant_parts/FlowerH1.tres new file mode 100644 index 0000000..bcb55df --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerH1.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ccatceyu73pg5"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_h11fn"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_eqsj5"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_fbl3c"] + +[sub_resource type="Resource" id="Resource_h11fn"] +script = ExtResource("1_h11fn") +position = Vector2(-14, -7) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_fbl3c") +region = Rect2(967, 1083, 174, 197) + +[resource] +resource_name = "FlowerH1" +script = ExtResource("2_eqsj5") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_h11fn") diff --git a/entities/plants/resources/plant_parts/FlowerH2.tres b/entities/plants/resources/plant_parts/FlowerH2.tres new file mode 100644 index 0000000..154ca26 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerH2.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://2qihbxsn6odd"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_g4nmh"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_lsd4m"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_r8ypu"] + +[sub_resource type="Resource" id="Resource_g4nmh"] +script = ExtResource("1_g4nmh") +position = Vector2(-4, 13) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_r8ypu") +region = Rect2(1177, 1042, 165, 144) + +[resource] +resource_name = "FlowerH2" +script = ExtResource("2_lsd4m") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_g4nmh") diff --git a/entities/plants/resources/plant_parts/FlowerH3.tres b/entities/plants/resources/plant_parts/FlowerH3.tres new file mode 100644 index 0000000..4040f72 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerH3.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bwvou260f8tb5"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_eplob"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_pwwfv"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ms1q5"] + +[sub_resource type="Resource" id="Resource_eplob"] +script = ExtResource("1_eplob") +position = Vector2(20, 25) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ms1q5") +region = Rect2(1263, 1247, 104, 111) + +[resource] +resource_name = "FlowerH3" +script = ExtResource("2_pwwfv") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_eplob") diff --git a/entities/plants/resources/plant_parts/FlowerH4.tres b/entities/plants/resources/plant_parts/FlowerH4.tres new file mode 100644 index 0000000..1aa3c4d --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerH4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c7lbyqhtaglql"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_m14ut"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_dyvgr"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_duygx"] + +[sub_resource type="Resource" id="Resource_m14ut"] +script = ExtResource("1_m14ut") +position = Vector2(4, -2) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_duygx") +region = Rect2(1042, 1293, 204, 126) + +[resource] +resource_name = "FlowerH4" +script = ExtResource("2_dyvgr") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_m14ut") diff --git a/entities/plants/resources/plant_parts/FlowerH5.tres b/entities/plants/resources/plant_parts/FlowerH5.tres new file mode 100644 index 0000000..1808d93 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerH5.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://qfku0xgnyc8l"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_31tfu"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_0oebi"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ri78l"] + +[sub_resource type="Resource" id="Resource_31tfu"] +script = ExtResource("1_31tfu") +position = Vector2(-36, 3) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ri78l") +region = Rect2(1255, 1369, 126, 90) + +[resource] +resource_name = "FlowerH5" +script = ExtResource("2_0oebi") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_31tfu") diff --git a/entities/plants/resources/plant_parts/FlowerH6.tres b/entities/plants/resources/plant_parts/FlowerH6.tres new file mode 100644 index 0000000..57c252c --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerH6.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cjyqycj2nexk5"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_5sxp7"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_57qfg"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_c757a"] + +[sub_resource type="Resource" id="Resource_ttm26"] +script = ExtResource("1_5sxp7") +position = Vector2(-14, -20) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_c757a") +region = Rect2(1184, 1454, 108, 102) + +[resource] +resource_name = "FlowerH6" +script = ExtResource("2_57qfg") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_ttm26") diff --git a/entities/plants/resources/plant_parts/FlowerI1.tres b/entities/plants/resources/plant_parts/FlowerI1.tres new file mode 100644 index 0000000..c1ac53b --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerI1.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cjyp8jcocoijg"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ivg6h"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_5yu6q"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_26jmb"] + +[sub_resource type="Resource" id="Resource_aod3q"] +script = ExtResource("1_ivg6h") +position = Vector2(-14, -20) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_26jmb") +region = Rect2(1461, 1342, 98, 92) + +[resource] +resource_name = "FlowerI1" +script = ExtResource("2_5yu6q") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_aod3q") diff --git a/entities/plants/resources/plant_parts/FlowerI2.tres b/entities/plants/resources/plant_parts/FlowerI2.tres new file mode 100644 index 0000000..3835422 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerI2.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bac4q2s3bylli"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_8hts4"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_3iaff"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_fisfx"] + +[sub_resource type="Resource" id="Resource_yw2nx"] +script = ExtResource("1_8hts4") +position = Vector2(-35, -1) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_fisfx") +region = Rect2(1515, 1250, 114, 91) + +[resource] +resource_name = "FlowerI2" +script = ExtResource("2_3iaff") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_yw2nx") diff --git a/entities/plants/resources/plant_parts/FlowerI3.tres b/entities/plants/resources/plant_parts/FlowerI3.tres new file mode 100644 index 0000000..3703438 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerI3.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dst4c2mnhaili"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_pers8"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_f7yoh"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_byyl0"] + +[sub_resource type="Resource" id="Resource_201oc"] +script = ExtResource("1_pers8") +position = Vector2(16, 20) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_byyl0") +region = Rect2(1364, 1215, 103, 105) + +[resource] +resource_name = "FlowerI3" +script = ExtResource("2_f7yoh") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_201oc") diff --git a/entities/plants/resources/plant_parts/FlowerI4.tres b/entities/plants/resources/plant_parts/FlowerI4.tres new file mode 100644 index 0000000..f0a5947 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerI4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bjd8ix6ouc1b2"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_0pyrf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_bfibv"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_3nb1u"] + +[sub_resource type="Resource" id="Resource_0pyrf"] +script = ExtResource("1_0pyrf") +position = Vector2(-2, -9) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_3nb1u") +region = Rect2(1347, 1038, 156, 152) + +[resource] +resource_name = "FlowerI4" +script = ExtResource("2_bfibv") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_0pyrf") diff --git a/entities/plants/resources/plant_parts/FlowerI5.tres b/entities/plants/resources/plant_parts/FlowerI5.tres new file mode 100644 index 0000000..d8dbe20 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerI5.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cs2piasjw3x5s"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_vj3h0"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_vlm4n"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_vl8w6"] + +[sub_resource type="Resource" id="Resource_vj3h0"] +script = ExtResource("1_vj3h0") +position = Vector2(-6, -3) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_vl8w6") +region = Rect2(1535, 1029, 152, 193) + +[resource] +resource_name = "FlowerI5" +script = ExtResource("2_vlm4n") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_vj3h0") diff --git a/entities/plants/resources/plant_parts/FlowerI6.tres b/entities/plants/resources/plant_parts/FlowerI6.tres new file mode 100644 index 0000000..74a3dd6 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerI6.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://tbqitr1nwt2"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_5b0yk"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_vbnrg"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_7rwma"] + +[sub_resource type="Resource" id="Resource_5b0yk"] +script = ExtResource("1_5b0yk") +position = Vector2(-12, 7) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_7rwma") +region = Rect2(1394, 1459, 156, 117) + +[resource] +resource_name = "FlowerI6" +script = ExtResource("2_vbnrg") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_5b0yk") diff --git a/entities/plants/resources/plant_parts/FlowerJ1.tres b/entities/plants/resources/plant_parts/FlowerJ1.tres new file mode 100644 index 0000000..8521461 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerJ1.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://v1b4c6364bjj"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ebbsd"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_c4tlw"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ibtx3"] + +[sub_resource type="Resource" id="Resource_ebbsd"] +script = ExtResource("1_ebbsd") +position = Vector2(-7, 6) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ibtx3") +region = Rect2(2017, 903, 191, 170) + +[resource] +resource_name = "FlowerJ1" +script = ExtResource("2_c4tlw") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_ebbsd") diff --git a/entities/plants/resources/plant_parts/FlowerJ2.tres b/entities/plants/resources/plant_parts/FlowerJ2.tres new file mode 100644 index 0000000..709705a --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerJ2.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cji73bqaytm0r"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_2lmx6"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_tp0lt"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_m2p3g"] + +[sub_resource type="Resource" id="Resource_2lmx6"] +script = ExtResource("1_2lmx6") +position = Vector2(1, 11) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_m2p3g") +region = Rect2(2206, 938, 204, 222) + +[resource] +resource_name = "FlowerJ2" +script = ExtResource("2_tp0lt") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_2lmx6") diff --git a/entities/plants/resources/plant_parts/FlowerJ3.tres b/entities/plants/resources/plant_parts/FlowerJ3.tres new file mode 100644 index 0000000..fb39928 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerJ3.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b2tnb0vs1gtj3"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ut52b"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_58px5"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_5ek7p"] + +[sub_resource type="Resource" id="Resource_cs0qs"] +script = ExtResource("1_ut52b") +position = Vector2(-1, 5) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_5ek7p") +region = Rect2(2111, 1181, 141, 144) + +[resource] +resource_name = "FlowerJ3" +script = ExtResource("2_58px5") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_cs0qs") diff --git a/entities/plants/resources/plant_parts/FlowerJ4.tres b/entities/plants/resources/plant_parts/FlowerJ4.tres new file mode 100644 index 0000000..5e03812 --- /dev/null +++ b/entities/plants/resources/plant_parts/FlowerJ4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://daf1u222v1eqm"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fv376"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_es665"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_7tbim"] + +[sub_resource type="Resource" id="Resource_wv427"] +script = ExtResource("1_fv376") +position = Vector2(-1, 5) +attach_types = Array[int]([2]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_7tbim") +region = Rect2(2252, 1181, 129, 144) + +[resource] +resource_name = "FlowerJ4" +script = ExtResource("2_es665") +texture = SubResource("AtlasTexture_yh7e0") +type = 3 +root = SubResource("Resource_wv427") diff --git a/entities/plants/resources/plant_parts/LeafA1.tres b/entities/plants/resources/plant_parts/LeafA1.tres index f427323..5d0ef3e 100644 --- a/entities/plants/resources/plant_parts/LeafA1.tres +++ b/entities/plants/resources/plant_parts/LeafA1.tres @@ -1,21 +1,27 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://wgmxpk52rg7x"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fijpc"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fijpc"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_kuljt"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_fijpc"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_fijpc"] -[sub_resource type="Resource" id="Resource_fijpc"] +[sub_resource type="Resource" id="Resource_kuljt"] script = ExtResource("1_fijpc") -position = Vector2(92, 66) +position = Vector2(11, 50) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_gnga0"] +script = ExtResource("1_fijpc") +position = Vector2(10, 81) attach_types = Array[int]([1, 3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_fijpc") -region = Rect2(2406, 2443, 237, 179) +region = Rect2(1925, 2050, 435, 274) [resource] resource_name = "LeafA1" script = ExtResource("2_kuljt") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_fijpc") +type = 2 +root = SubResource("Resource_gnga0") +attaches = Array[ExtResource("1_fijpc")]([SubResource("Resource_kuljt")]) diff --git a/entities/plants/resources/plant_parts/LeafA2.tres b/entities/plants/resources/plant_parts/LeafA2.tres index f582aa6..667f401 100644 --- a/entities/plants/resources/plant_parts/LeafA2.tres +++ b/entities/plants/resources/plant_parts/LeafA2.tres @@ -2,20 +2,26 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_1fplc"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_htdkc"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_1fplc"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_1fplc"] -[sub_resource type="Resource" id="Resource_1fplc"] +[sub_resource type="Resource" id="Resource_htdkc"] script = ExtResource("1_1fplc") -position = Vector2(-64, 88) +position = Vector2(-9, 44) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_oqrvj"] +script = ExtResource("1_1fplc") +position = Vector2(-9, 53) attach_types = Array[int]([1, 3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_1fplc") -region = Rect2(2712, 2443, 205, 222) +region = Rect2(2378, 2146, 392, 173) [resource] resource_name = "LeafA2" script = ExtResource("2_htdkc") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_1fplc") +type = 2 +root = SubResource("Resource_oqrvj") +attaches = Array[ExtResource("1_1fplc")]([SubResource("Resource_htdkc")]) diff --git a/entities/plants/resources/plant_parts/LeafA3.tres b/entities/plants/resources/plant_parts/LeafA3.tres index d1416bb..47608c2 100644 --- a/entities/plants/resources/plant_parts/LeafA3.tres +++ b/entities/plants/resources/plant_parts/LeafA3.tres @@ -2,20 +2,26 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_5fx8e"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_87vbh"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_5fx8e"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_5fx8e"] [sub_resource type="Resource" id="Resource_87vbh"] script = ExtResource("1_5fx8e") -position = Vector2(81, -63) +position = Vector2(-42, 53) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_1ivfe"] +script = ExtResource("1_5fx8e") +position = Vector2(-55, 82) attach_types = Array[int]([1, 3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_5fx8e") -region = Rect2(2419, 2721, 191, 173) +region = Rect2(2825, 2087, 321, 238) [resource] resource_name = "LeafA3" script = ExtResource("2_87vbh") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_87vbh") +type = 2 +root = SubResource("Resource_1ivfe") +attaches = Array[ExtResource("1_5fx8e")]([SubResource("Resource_87vbh")]) diff --git a/entities/plants/resources/plant_parts/LeafA4.tres b/entities/plants/resources/plant_parts/LeafA4.tres index cff910f..05fe9c3 100644 --- a/entities/plants/resources/plant_parts/LeafA4.tres +++ b/entities/plants/resources/plant_parts/LeafA4.tres @@ -2,20 +2,26 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_1fuxg"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_v5tsw"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_1fuxg"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_1fuxg"] -[sub_resource type="Resource" id="Resource_1fuxg"] +[sub_resource type="Resource" id="Resource_v5tsw"] script = ExtResource("1_1fuxg") -position = Vector2(-104, 31) +position = Vector2(76, 21) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_rc5w4"] +script = ExtResource("1_1fuxg") +position = Vector2(88, 40) attach_types = Array[int]([1, 3]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_1fuxg") -region = Rect2(2697, 2734, 241, 142) +region = Rect2(3238, 2131, 222, 220) [resource] resource_name = "LeafA4" script = ExtResource("2_v5tsw") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_1fuxg") +type = 2 +root = SubResource("Resource_rc5w4") +attaches = Array[ExtResource("1_1fuxg")]([SubResource("Resource_v5tsw")]) diff --git a/entities/plants/resources/plant_parts/LeafA5.tres b/entities/plants/resources/plant_parts/LeafA5.tres index 72defc1..1948996 100644 --- a/entities/plants/resources/plant_parts/LeafA5.tres +++ b/entities/plants/resources/plant_parts/LeafA5.tres @@ -1,6 +1,6 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bchwhdmxsaqic"] +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cewwsxddmw36t"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ef00k"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ef00k"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_0qgsw"] [ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_snml7"] diff --git a/entities/plants/resources/plant_parts/LeafA6.tres b/entities/plants/resources/plant_parts/LeafA6.tres index 4ecad61..e971129 100644 --- a/entities/plants/resources/plant_parts/LeafA6.tres +++ b/entities/plants/resources/plant_parts/LeafA6.tres @@ -1,4 +1,4 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cvr81iqokda6x"] +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://clq3q4xjxhu57"] [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_jqk1k"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_g6exv"] diff --git a/entities/plants/resources/plant_parts/LeafB1.tres b/entities/plants/resources/plant_parts/LeafB1.tres index efad08f..9000458 100644 --- a/entities/plants/resources/plant_parts/LeafB1.tres +++ b/entities/plants/resources/plant_parts/LeafB1.tres @@ -2,26 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ss0ji"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_cdvqh"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_583ad"] - -[sub_resource type="Resource" id="Resource_ss0ji"] -script = ExtResource("1_ss0ji") -position = Vector2(18, -24) -attach_types = Array[int]([2]) +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ss0ji"] [sub_resource type="Resource" id="Resource_cdvqh"] script = ExtResource("1_ss0ji") -position = Vector2(90, 41) -attach_types = Array[int]([1, 3]) +position = Vector2(-48, -44) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_583ad"] +script = ExtResource("1_ss0ji") +position = Vector2(30, 47) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_3kxmr"] +script = ExtResource("1_ss0ji") +position = Vector2(20, 26) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_583ad") -region = Rect2(929, 1014, 232, 209) +atlas = ExtResource("3_ss0ji") +region = Rect2(13, 729, 241, 276) [resource] resource_name = "LeafB1" script = ExtResource("2_cdvqh") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_cdvqh") -attaches = Array[ExtResource("1_ss0ji")]([SubResource("Resource_ss0ji")]) +type = 2 +root = SubResource("Resource_3kxmr") +attaches = Array[ExtResource("1_ss0ji")]([SubResource("Resource_cdvqh"), SubResource("Resource_583ad")]) diff --git a/entities/plants/resources/plant_parts/LeafB2.tres b/entities/plants/resources/plant_parts/LeafB2.tres index 66eeaa8..9a091ec 100644 --- a/entities/plants/resources/plant_parts/LeafB2.tres +++ b/entities/plants/resources/plant_parts/LeafB2.tres @@ -2,25 +2,36 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_xjkn4"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_oexr2"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_xjc6g"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_xjc6g"] [sub_resource type="Resource" id="Resource_xjkn4"] script = ExtResource("1_xjkn4") +position = Vector2(-56, -60) attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_oexr2"] script = ExtResource("1_xjkn4") -position = Vector2(6, -54) -attach_types = Array[int]([1, 3]) +position = Vector2(-31, 64) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_xjc6g"] +script = ExtResource("1_xjkn4") +position = Vector2(54, -9) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_7kp07"] +script = ExtResource("1_xjkn4") +position = Vector2(-7, 28) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_xjc6g") -region = Rect2(1199, 1054, 157, 177) +region = Rect2(314, 863, 273, 308) [resource] resource_name = "LeafB2" script = ExtResource("2_oexr2") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_oexr2") -attaches = Array[ExtResource("1_xjkn4")]([SubResource("Resource_xjkn4")]) +type = 2 +root = SubResource("Resource_7kp07") +attaches = Array[ExtResource("1_xjkn4")]([SubResource("Resource_xjkn4"), SubResource("Resource_oexr2"), SubResource("Resource_xjc6g")]) diff --git a/entities/plants/resources/plant_parts/LeafB3.tres b/entities/plants/resources/plant_parts/LeafB3.tres index c6891eb..4bbdbcb 100644 --- a/entities/plants/resources/plant_parts/LeafB3.tres +++ b/entities/plants/resources/plant_parts/LeafB3.tres @@ -2,26 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fuu6r"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_a7irw"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_4s7gl"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_4s7gl"] -[sub_resource type="Resource" id="Resource_fuu6r"] +[sub_resource type="Resource" id="Resource_dgf3t"] script = ExtResource("1_fuu6r") -position = Vector2(-2, -20) +position = Vector2(25, -42) attach_types = Array[int]([2]) -[sub_resource type="Resource" id="Resource_a7irw"] +[sub_resource type="Resource" id="Resource_1dht1"] script = ExtResource("1_fuu6r") -position = Vector2(-79, 13) -attach_types = Array[int]([1, 3]) +position = Vector2(-17, 54) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_jmrbk"] +script = ExtResource("1_fuu6r") +position = Vector2(-23, 34) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_4s7gl") -region = Rect2(1398, 1041, 214, 150) +region = Rect2(19, 1059, 196, 280) [resource] resource_name = "LeafB3" script = ExtResource("2_a7irw") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_a7irw") -attaches = Array[ExtResource("1_fuu6r")]([SubResource("Resource_fuu6r")]) +type = 2 +root = SubResource("Resource_jmrbk") +attaches = Array[ExtResource("1_fuu6r")]([SubResource("Resource_dgf3t"), SubResource("Resource_1dht1")]) diff --git a/entities/plants/resources/plant_parts/LeafB4.tres b/entities/plants/resources/plant_parts/LeafB4.tres new file mode 100644 index 0000000..a4cb43c --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafB4.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dmfiww0l5ha2l"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_cjwu1"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_si2b7"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_7xuo4"] + +[sub_resource type="Resource" id="Resource_spy25"] +script = ExtResource("1_cjwu1") +position = Vector2(19, 7) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_j5mfd"] +script = ExtResource("1_cjwu1") +position = Vector2(-72, 65) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_7xuo4") +region = Rect2(282, 1184, 212, 196) + +[resource] +resource_name = "LeafB4" +script = ExtResource("2_si2b7") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_j5mfd") +attaches = Array[ExtResource("1_cjwu1")]([SubResource("Resource_spy25")]) diff --git a/entities/plants/resources/plant_parts/LeafB5.tres b/entities/plants/resources/plant_parts/LeafB5.tres new file mode 100644 index 0000000..2e28594 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafB5.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://kiim46eda050"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_do0r8"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_jwhrg"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_2xt7g"] + +[sub_resource type="Resource" id="Resource_5ounr"] +script = ExtResource("1_do0r8") +position = Vector2(-31, 3) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_jr0f8"] +script = ExtResource("1_do0r8") +position = Vector2(67, 55) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_2xt7g") +region = Rect2(31, 1359, 209, 183) + +[resource] +resource_name = "LeafB5" +script = ExtResource("2_jwhrg") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_jr0f8") +attaches = Array[ExtResource("1_do0r8")]([SubResource("Resource_5ounr")]) diff --git a/entities/plants/resources/plant_parts/LeafB6.tres b/entities/plants/resources/plant_parts/LeafB6.tres new file mode 100644 index 0000000..ac7884d --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafB6.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dqroc7h70bgew"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_51hi1"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_fi5bi"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_p5cjm"] + +[sub_resource type="Resource" id="Resource_2gji7"] +script = ExtResource("1_51hi1") +position = Vector2(2, 0) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ibuly"] +script = ExtResource("1_51hi1") +position = Vector2(3, 0) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_p5cjm") +region = Rect2(280, 1409, 185, 186) + +[resource] +resource_name = "LeafB6" +script = ExtResource("2_fi5bi") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_ibuly") +attaches = Array[ExtResource("1_51hi1")]([SubResource("Resource_2gji7")]) diff --git a/entities/plants/resources/plant_parts/LeafC1.tres b/entities/plants/resources/plant_parts/LeafC1.tres index 7e6e9f6..71dff1b 100644 --- a/entities/plants/resources/plant_parts/LeafC1.tres +++ b/entities/plants/resources/plant_parts/LeafC1.tres @@ -2,26 +2,36 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_tjbks"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_3lqa5"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_kewn2"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_kewn2"] [sub_resource type="Resource" id="Resource_tjbks"] script = ExtResource("1_tjbks") -position = Vector2(7, -16) -attach_types = Array[int]([1]) +position = Vector2(-9, 36) +attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_3lqa5"] script = ExtResource("1_tjbks") -position = Vector2(78, 45) -attach_types = Array[int]([0, 2]) +position = Vector2(85, -46) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_kewn2"] +script = ExtResource("1_tjbks") +position = Vector2(-73, -74) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_f65gq"] +script = ExtResource("1_tjbks") +position = Vector2(-4, -4) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_kewn2") -region = Rect2(960, 1292, 193, 136) +region = Rect2(45, 1601, 395, 249) [resource] resource_name = "LeafC1" script = ExtResource("2_3lqa5") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_3lqa5") -attaches = Array[ExtResource("1_tjbks")]([SubResource("Resource_tjbks")]) +type = 2 +root = SubResource("Resource_f65gq") +attaches = Array[ExtResource("1_tjbks")]([SubResource("Resource_tjbks"), SubResource("Resource_3lqa5"), SubResource("Resource_kewn2")]) diff --git a/entities/plants/resources/plant_parts/LeafC2.tres b/entities/plants/resources/plant_parts/LeafC2.tres index 1d2d353..8da2330 100644 --- a/entities/plants/resources/plant_parts/LeafC2.tres +++ b/entities/plants/resources/plant_parts/LeafC2.tres @@ -2,26 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_vs6ro"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_bb5rl"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_urj5n"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_urj5n"] [sub_resource type="Resource" id="Resource_vs6ro"] script = ExtResource("1_vs6ro") -position = Vector2(7, -7) -attach_types = Array[int]([1]) +position = Vector2(39, 32) +attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_bb5rl"] script = ExtResource("1_vs6ro") -position = Vector2(12, -60) -attach_types = Array[int]([0, 2]) +position = Vector2(-24, -76) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_urj5n"] +script = ExtResource("1_vs6ro") +position = Vector2(53, -7) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_urj5n") -region = Rect2(1188, 1314, 171, 161) +region = Rect2(7, 1856, 247, 245) [resource] resource_name = "LeafC2" script = ExtResource("2_bb5rl") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_bb5rl") -attaches = Array[ExtResource("1_vs6ro")]([SubResource("Resource_vs6ro")]) +type = 2 +root = SubResource("Resource_urj5n") +attaches = Array[ExtResource("1_vs6ro")]([SubResource("Resource_vs6ro"), SubResource("Resource_bb5rl")]) diff --git a/entities/plants/resources/plant_parts/LeafC3.tres b/entities/plants/resources/plant_parts/LeafC3.tres index b790161..866cf9c 100644 --- a/entities/plants/resources/plant_parts/LeafC3.tres +++ b/entities/plants/resources/plant_parts/LeafC3.tres @@ -2,26 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_wnn4x"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_1g6ks"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_vuo6k"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_vuo6k"] [sub_resource type="Resource" id="Resource_wnn4x"] script = ExtResource("1_wnn4x") -position = Vector2(0, -17) -attach_types = Array[int]([1]) +position = Vector2(40, 11) +attach_types = Array[int]([2]) [sub_resource type="Resource" id="Resource_1g6ks"] script = ExtResource("1_wnn4x") -position = Vector2(-78, 14) -attach_types = Array[int]([0, 2]) +position = Vector2(-16, -80) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_vuo6k"] +script = ExtResource("1_wnn4x") +position = Vector2(-107, -59) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_vuo6k") -region = Rect2(1396, 1302, 215, 121) +region = Rect2(263, 1864, 255, 252) [resource] resource_name = "LeafC3" script = ExtResource("2_1g6ks") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_1g6ks") -attaches = Array[ExtResource("1_wnn4x")]([SubResource("Resource_wnn4x")]) +type = 2 +root = SubResource("Resource_vuo6k") +attaches = Array[ExtResource("1_wnn4x")]([SubResource("Resource_wnn4x"), SubResource("Resource_1g6ks")]) diff --git a/entities/plants/resources/plant_parts/LeafC4.tres b/entities/plants/resources/plant_parts/LeafC4.tres new file mode 100644 index 0000000..deddb4d --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafC4.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://be7x75w7l5jls"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_4n8ti"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_x11ck"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_l8uu7"] + +[sub_resource type="Resource" id="Resource_4n8ti"] +script = ExtResource("1_4n8ti") +position = Vector2(33, 33) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_x11ck"] +script = ExtResource("1_4n8ti") +position = Vector2(-6, -66) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_l8uu7"] +script = ExtResource("1_4n8ti") +position = Vector2(45, -3) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_l8uu7") +region = Rect2(13, 2120, 230, 256) + +[resource] +resource_name = "LeafC4" +script = ExtResource("2_x11ck") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_l8uu7") +attaches = Array[ExtResource("1_4n8ti")]([SubResource("Resource_4n8ti"), SubResource("Resource_x11ck")]) diff --git a/entities/plants/resources/plant_parts/LeafC5.tres b/entities/plants/resources/plant_parts/LeafC5.tres new file mode 100644 index 0000000..950b50f --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafC5.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dhgabeqsda06o"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ooe7n"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_tkfaw"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_v54ts"] + +[sub_resource type="Resource" id="Resource_ooe7n"] +script = ExtResource("1_ooe7n") +position = Vector2(11, -14) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_tkfaw"] +script = ExtResource("1_ooe7n") +position = Vector2(83, 53) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_v54ts") +region = Rect2(291, 2125, 213, 127) + +[resource] +resource_name = "LeafC5" +script = ExtResource("2_tkfaw") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_tkfaw") +attaches = Array[ExtResource("1_ooe7n")]([SubResource("Resource_ooe7n")]) diff --git a/entities/plants/resources/plant_parts/LeafC6.tres b/entities/plants/resources/plant_parts/LeafC6.tres new file mode 100644 index 0000000..b182a70 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafC6.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b2bv30j55dtfn"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_byv5y"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_l0jxw"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_lstlu"] + +[sub_resource type="Resource" id="Resource_byv5y"] +script = ExtResource("1_byv5y") +position = Vector2(-4, -19) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_l0jxw"] +script = ExtResource("1_byv5y") +position = Vector2(-88, 18) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_lstlu") +region = Rect2(270, 2263, 214, 134) + +[resource] +resource_name = "LeafC6" +script = ExtResource("2_l0jxw") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_l0jxw") +attaches = Array[ExtResource("1_byv5y")]([SubResource("Resource_byv5y")]) diff --git a/entities/plants/resources/plant_parts/LeafC7.tres b/entities/plants/resources/plant_parts/LeafC7.tres new file mode 100644 index 0000000..c862486 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafC7.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d5k40ooxsnaw"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_7u13l"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_dmg8d"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_coqxt"] + +[sub_resource type="Resource" id="Resource_7u13l"] +script = ExtResource("1_7u13l") +position = Vector2(4, 0) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_dmg8d"] +script = ExtResource("1_7u13l") +position = Vector2(14, -35) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_coqxt") +region = Rect2(519, 1847, 190, 173) + +[resource] +resource_name = "LeafC7" +script = ExtResource("2_dmg8d") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_dmg8d") +attaches = Array[ExtResource("1_7u13l")]([SubResource("Resource_7u13l")]) diff --git a/entities/plants/resources/plant_parts/LeafD1.tres b/entities/plants/resources/plant_parts/LeafD1.tres index 2fe4d6e..a421590 100644 --- a/entities/plants/resources/plant_parts/LeafD1.tres +++ b/entities/plants/resources/plant_parts/LeafD1.tres @@ -1,27 +1,42 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bs66avdkmbxjm"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_41qsi"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_41qsi"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_aaw8d"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_ndrf0"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ndrf0"] -[sub_resource type="Resource" id="Resource_41qsi"] +[sub_resource type="Resource" id="Resource_axia0"] script = ExtResource("1_41qsi") -position = Vector2(10, 48) +position = Vector2(-40, 79) attach_types = Array[int]([1]) -[sub_resource type="Resource" id="Resource_aaw8d"] +[sub_resource type="Resource" id="Resource_2ispn"] script = ExtResource("1_41qsi") -position = Vector2(11, 94) -attach_types = Array[int]([0, 2]) +position = Vector2(-10, 28) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_vb7xs"] +script = ExtResource("1_41qsi") +position = Vector2(2, -36) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_shp5l"] +script = ExtResource("1_41qsi") +position = Vector2(96, -117) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_gxpuw"] +script = ExtResource("1_41qsi") +position = Vector2(-145, 146) +attach_types = Array[int]([0, 1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_ndrf0") -region = Rect2(312, 753, 97, 248) +region = Rect2(587, 971, 328, 385) [resource] resource_name = "LeafD1" script = ExtResource("2_aaw8d") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_aaw8d") -attaches = Array[ExtResource("1_41qsi")]([SubResource("Resource_41qsi")]) +type = 2 +root = SubResource("Resource_gxpuw") +attaches = Array[ExtResource("1_41qsi")]([SubResource("Resource_axia0"), SubResource("Resource_2ispn"), SubResource("Resource_vb7xs"), SubResource("Resource_shp5l")]) diff --git a/entities/plants/resources/plant_parts/LeafD2.tres b/entities/plants/resources/plant_parts/LeafD2.tres index 1a2c2cf..da59ffb 100644 --- a/entities/plants/resources/plant_parts/LeafD2.tres +++ b/entities/plants/resources/plant_parts/LeafD2.tres @@ -1,27 +1,42 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cv2iad0m88cdr"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_vvmno"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_vvmno"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gf14b"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_aa8jx"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_aa8jx"] -[sub_resource type="Resource" id="Resource_vvmno"] +[sub_resource type="Resource" id="Resource_6ac52"] script = ExtResource("1_vvmno") -position = Vector2(-83, -8) +position = Vector2(68, 124) attach_types = Array[int]([1]) -[sub_resource type="Resource" id="Resource_gf14b"] +[sub_resource type="Resource" id="Resource_j4qsb"] script = ExtResource("1_vvmno") -position = Vector2(-137, 0) -attach_types = Array[int]([0, 2]) +position = Vector2(21, 44) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_vka3m"] +script = ExtResource("1_vvmno") +position = Vector2(2, -36) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_7sg5k"] +script = ExtResource("1_vvmno") +position = Vector2(-53, -131) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_je6yw"] +script = ExtResource("1_vvmno") +position = Vector2(106, 168) +attach_types = Array[int]([0, 1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_aa8jx") -region = Rect2(110, 1011, 344, 138) +region = Rect2(821, 1506, 291, 386) [resource] resource_name = "LeafD2" script = ExtResource("2_gf14b") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_gf14b") -attaches = Array[ExtResource("1_vvmno")]([SubResource("Resource_vvmno")]) +type = 2 +root = SubResource("Resource_je6yw") +attaches = Array[ExtResource("1_vvmno")]([SubResource("Resource_6ac52"), SubResource("Resource_j4qsb"), SubResource("Resource_vka3m"), SubResource("Resource_7sg5k")]) diff --git a/entities/plants/resources/plant_parts/LeafD3.tres b/entities/plants/resources/plant_parts/LeafD3.tres index 44dce24..056c111 100644 --- a/entities/plants/resources/plant_parts/LeafD3.tres +++ b/entities/plants/resources/plant_parts/LeafD3.tres @@ -1,27 +1,57 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b806ml8dd7gnn"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_qaivx"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_qaivx"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_b3ef0"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_1exdb"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_1exdb"] -[sub_resource type="Resource" id="Resource_qaivx"] +[sub_resource type="Resource" id="Resource_8h3h8"] script = ExtResource("1_qaivx") -position = Vector2(-45, 68) +position = Vector2(50, 157) attach_types = Array[int]([1]) -[sub_resource type="Resource" id="Resource_b3ef0"] +[sub_resource type="Resource" id="Resource_sresq"] script = ExtResource("1_qaivx") -position = Vector2(-102, 144) -attach_types = Array[int]([0, 2]) +position = Vector2(-15, 46) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_ydfur"] +script = ExtResource("1_qaivx") +position = Vector2(82, 86) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_uc10t"] +script = ExtResource("1_qaivx") +position = Vector2(-15, -13) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_k2xet"] +script = ExtResource("1_qaivx") +position = Vector2(55, -48) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_0nwkl"] +script = ExtResource("1_qaivx") +position = Vector2(-54, -152) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_o4ifl"] +script = ExtResource("1_qaivx") +position = Vector2(72, -107) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_osayd"] +script = ExtResource("1_qaivx") +position = Vector2(49, 191) +attach_types = Array[int]([0, 1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_1exdb") -region = Rect2(507, 816, 288, 357) +region = Rect2(487, 1349, 331, 425) [resource] resource_name = "LeafD3" script = ExtResource("2_b3ef0") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_b3ef0") -attaches = Array[ExtResource("1_qaivx")]([SubResource("Resource_qaivx")]) +type = 2 +root = SubResource("Resource_osayd") +attaches = Array[ExtResource("1_qaivx")]([SubResource("Resource_8h3h8"), SubResource("Resource_sresq"), SubResource("Resource_ydfur"), SubResource("Resource_uc10t"), SubResource("Resource_k2xet"), SubResource("Resource_0nwkl"), SubResource("Resource_o4ifl")]) diff --git a/entities/plants/resources/plant_parts/LeafD4.tres b/entities/plants/resources/plant_parts/LeafD4.tres index 653a741..9d68e49 100644 --- a/entities/plants/resources/plant_parts/LeafD4.tres +++ b/entities/plants/resources/plant_parts/LeafD4.tres @@ -1,27 +1,57 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ciga0npobiqc4"] -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_wr80a"] +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_wr80a"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_tcuv0"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_tnyml"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_tnyml"] -[sub_resource type="Resource" id="Resource_wr80a"] +[sub_resource type="Resource" id="Resource_7cltf"] script = ExtResource("1_wr80a") -position = Vector2(-14, -31) +position = Vector2(-5, 172) attach_types = Array[int]([1]) -[sub_resource type="Resource" id="Resource_tcuv0"] +[sub_resource type="Resource" id="Resource_ldax5"] script = ExtResource("1_wr80a") -position = Vector2(-49, -77) -attach_types = Array[int]([0, 2]) +position = Vector2(5, 88) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_n7bjg"] +script = ExtResource("1_wr80a") +position = Vector2(53, 109) +attach_types = Array[int]([3]) + +[sub_resource type="Resource" id="Resource_yx0a6"] +script = ExtResource("1_wr80a") +position = Vector2(-41, -45) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_i28l7"] +script = ExtResource("1_wr80a") +position = Vector2(71, -36) +attach_types = Array[int]([3, 2]) + +[sub_resource type="Resource" id="Resource_e0tqs"] +script = ExtResource("1_wr80a") +position = Vector2(-94, -164) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_7oopr"] +script = ExtResource("1_wr80a") +position = Vector2(110, -89) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_t6xrs"] +script = ExtResource("1_wr80a") +position = Vector2(-23, 182) +attach_types = Array[int]([0, 1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_tnyml") -region = Rect2(455, 1178, 166, 219) +region = Rect2(760, 1899, 383, 438) [resource] resource_name = "LeafD4" script = ExtResource("2_tcuv0") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_tcuv0") -attaches = Array[ExtResource("1_wr80a")]([SubResource("Resource_wr80a")]) +type = 2 +root = SubResource("Resource_t6xrs") +attaches = Array[ExtResource("1_wr80a")]([SubResource("Resource_7cltf"), SubResource("Resource_ldax5"), SubResource("Resource_n7bjg"), SubResource("Resource_yx0a6"), SubResource("Resource_i28l7"), SubResource("Resource_e0tqs"), SubResource("Resource_7oopr")]) diff --git a/entities/plants/resources/plant_parts/LeafD5.tres b/entities/plants/resources/plant_parts/LeafD5.tres deleted file mode 100644 index 1189e00..0000000 --- a/entities/plants/resources/plant_parts/LeafD5.tres +++ /dev/null @@ -1,27 +0,0 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://clh2iduja5emm"] - -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_3ipkr"] -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_35amt"] -[ext_resource type="Texture2D" uid="uid://b7nfpxk8nfnov" path="res://entities/plants/assets/sprites/asset-plante-fin.png" id="3_qvwtt"] - -[sub_resource type="Resource" id="Resource_3ipkr"] -script = ExtResource("1_3ipkr") -position = Vector2(-51, -42) -attach_types = Array[int]([1]) - -[sub_resource type="Resource" id="Resource_35amt"] -script = ExtResource("1_3ipkr") -position = Vector2(-90, -69) -attach_types = Array[int]([0, 2]) - -[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_qvwtt") -region = Rect2(664, 1180, 221, 187) - -[resource] -resource_name = "LeafD5" -script = ExtResource("2_35amt") -texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_35amt") -attaches = Array[ExtResource("1_3ipkr")]([SubResource("Resource_3ipkr")]) diff --git a/entities/plants/resources/plant_parts/LeafE1.tres b/entities/plants/resources/plant_parts/LeafE1.tres index 3bc4374..d65af64 100644 --- a/entities/plants/resources/plant_parts/LeafE1.tres +++ b/entities/plants/resources/plant_parts/LeafE1.tres @@ -2,26 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_oy0ue"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_6xgob"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_oy0ue"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_y6h75"] -[sub_resource type="Resource" id="Resource_6xgob"] +[sub_resource type="Resource" id="Resource_2ehmm"] script = ExtResource("1_oy0ue") -position = Vector2(-18, 7) +position = Vector2(-76, -94) attach_types = Array[int]([2]) -[sub_resource type="Resource" id="Resource_y6h75"] +[sub_resource type="Resource" id="Resource_6s4b5"] script = ExtResource("1_oy0ue") -position = Vector2(84, 59) -attach_types = Array[int]([1, 3]) +position = Vector2(94, -133) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_v3e83"] +script = ExtResource("1_oy0ue") +position = Vector2(-19, -42) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_oy0ue") -region = Rect2(345, 1438, 217, 168) +atlas = ExtResource("3_y6h75") +region = Rect2(2391, 651, 385, 409) [resource] resource_name = "LeafE1" script = ExtResource("2_6xgob") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_y6h75") -attaches = Array[ExtResource("1_oy0ue")]([SubResource("Resource_6xgob")]) +type = 2 +root = SubResource("Resource_v3e83") +attaches = Array[ExtResource("1_oy0ue")]([SubResource("Resource_2ehmm"), SubResource("Resource_6s4b5")]) diff --git a/entities/plants/resources/plant_parts/LeafE2.tres b/entities/plants/resources/plant_parts/LeafE2.tres index dc568b4..66aee22 100644 --- a/entities/plants/resources/plant_parts/LeafE2.tres +++ b/entities/plants/resources/plant_parts/LeafE2.tres @@ -2,26 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_pi0vi"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_5mv7l"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_pi0vi"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_enxeu"] -[sub_resource type="Resource" id="Resource_5mv7l"] +[sub_resource type="Resource" id="Resource_x27qg"] script = ExtResource("1_pi0vi") -position = Vector2(14, 10) +position = Vector2(-38, -62) attach_types = Array[int]([2]) -[sub_resource type="Resource" id="Resource_enxeu"] +[sub_resource type="Resource" id="Resource_dm8uv"] script = ExtResource("1_pi0vi") -position = Vector2(-81, 72) -attach_types = Array[int]([1, 3]) +position = Vector2(54, -79) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_hjvew"] +script = ExtResource("1_pi0vi") +position = Vector2(-152, -27) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_pi0vi") -region = Rect2(612, 1472, 194, 172) +atlas = ExtResource("3_enxeu") +region = Rect2(2771, 1099, 336, 346) [resource] resource_name = "LeafE2" script = ExtResource("2_5mv7l") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_enxeu") -attaches = Array[ExtResource("1_pi0vi")]([SubResource("Resource_5mv7l")]) +type = 2 +root = SubResource("Resource_hjvew") +attaches = Array[ExtResource("1_pi0vi")]([SubResource("Resource_x27qg"), SubResource("Resource_dm8uv")]) diff --git a/entities/plants/resources/plant_parts/LeafE3.tres b/entities/plants/resources/plant_parts/LeafE3.tres index 7d89a6a..3692324 100644 --- a/entities/plants/resources/plant_parts/LeafE3.tres +++ b/entities/plants/resources/plant_parts/LeafE3.tres @@ -2,26 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_40tq5"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_4ru6m"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_40tq5"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_m6f42"] -[sub_resource type="Resource" id="Resource_4ru6m"] +[sub_resource type="Resource" id="Resource_f3eyb"] script = ExtResource("1_40tq5") -position = Vector2(1, 2) +position = Vector2(-55, -29) attach_types = Array[int]([2]) -[sub_resource type="Resource" id="Resource_m6f42"] +[sub_resource type="Resource" id="Resource_uk0a1"] script = ExtResource("1_40tq5") -position = Vector2(1, 2) -attach_types = Array[int]([1, 3]) +position = Vector2(-65, -141) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_hdfv7"] +script = ExtResource("1_40tq5") +position = Vector2(146, 5) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_40tq5") -region = Rect2(419, 1637, 169, 171) +atlas = ExtResource("3_m6f42") +region = Rect2(2404, 1151, 362, 435) [resource] resource_name = "LeafE3" script = ExtResource("2_4ru6m") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_m6f42") -attaches = Array[ExtResource("1_40tq5")]([SubResource("Resource_4ru6m")]) +type = 2 +root = SubResource("Resource_hdfv7") +attaches = Array[ExtResource("1_40tq5")]([SubResource("Resource_f3eyb"), SubResource("Resource_uk0a1")]) diff --git a/entities/plants/resources/plant_parts/LeafE4.tres b/entities/plants/resources/plant_parts/LeafE4.tres index db72afd..1e0508b 100644 --- a/entities/plants/resources/plant_parts/LeafE4.tres +++ b/entities/plants/resources/plant_parts/LeafE4.tres @@ -2,36 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_iaant"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_e1qth"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_lcfbs"] - -[sub_resource type="Resource" id="Resource_iaant"] -script = ExtResource("1_iaant") -position = Vector2(-36, 92) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_e1qth"] -script = ExtResource("1_iaant") -position = Vector2(54, -19) -attach_types = Array[int]([2]) - -[sub_resource type="Resource" id="Resource_lcfbs"] -script = ExtResource("1_iaant") -position = Vector2(-147, 14) -attach_types = Array[int]([2]) +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_lcfbs"] [sub_resource type="Resource" id="Resource_7wds0"] script = ExtResource("1_iaant") -position = Vector2(-40, 69) -attach_types = Array[int]([1, 3]) +position = Vector2(-58, -32) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_3im3h"] +script = ExtResource("1_iaant") +position = Vector2(60, -107) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_wbh0b"] +script = ExtResource("1_iaant") +position = Vector2(57, -108) +attach_types = Array[int]([1]) [sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_lcfbs") -region = Rect2(361, 1035, 458, 399) +region = Rect2(3128, 1320, 360, 371) [resource] resource_name = "LeafE4" script = ExtResource("2_e1qth") texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_7wds0") -attaches = Array[ExtResource("1_iaant")]([SubResource("Resource_iaant"), SubResource("Resource_e1qth"), SubResource("Resource_lcfbs")]) +type = 2 +root = SubResource("Resource_wbh0b") +attaches = Array[ExtResource("1_iaant")]([SubResource("Resource_7wds0"), SubResource("Resource_3im3h")]) diff --git a/entities/plants/resources/plant_parts/LeafE5.tres b/entities/plants/resources/plant_parts/LeafE5.tres new file mode 100644 index 0000000..10391a2 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafE5.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dcjpei6xuiswp"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_tcugg"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_7veyi"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ttg37"] + +[sub_resource type="Resource" id="Resource_uubog"] +script = ExtResource("1_tcugg") +position = Vector2(-51, -68) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_4uk6n"] +script = ExtResource("1_tcugg") +position = Vector2(154, -37) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ttg37") +region = Rect2(2404, 1705, 391, 367) + +[resource] +resource_name = "LeafE5" +script = ExtResource("2_7veyi") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_4uk6n") +attaches = Array[ExtResource("1_tcugg")]([SubResource("Resource_uubog")]) diff --git a/entities/plants/resources/plant_parts/LeafE6.tres b/entities/plants/resources/plant_parts/LeafE6.tres new file mode 100644 index 0000000..76e518b --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafE6.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cqxmyd07qyj4g"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_us16y"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_ux8f6"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_qn1v0"] + +[sub_resource type="Resource" id="Resource_us16y"] +script = ExtResource("1_us16y") +position = Vector2(-46, 17) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ux8f6"] +script = ExtResource("1_us16y") +position = Vector2(116, 72) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_qn1v0"] +script = ExtResource("1_us16y") +position = Vector2(-38, -137) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_l0344"] +script = ExtResource("1_us16y") +position = Vector2(40, -66) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_qn1v0") +region = Rect2(3118, 1700, 367, 440) + +[resource] +resource_name = "LeafE6" +script = ExtResource("2_ux8f6") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_l0344") +attaches = Array[ExtResource("1_us16y")]([SubResource("Resource_us16y"), SubResource("Resource_ux8f6"), SubResource("Resource_qn1v0")]) diff --git a/entities/plants/resources/plant_parts/LeafE7.tres b/entities/plants/resources/plant_parts/LeafE7.tres new file mode 100644 index 0000000..1204da0 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafE7.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://85bwx2tdjx0h"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_h5ver"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_nwj5t"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_n3ftt"] + +[sub_resource type="Resource" id="Resource_0ss64"] +script = ExtResource("1_h5ver") +position = Vector2(-46, 17) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_0oofm"] +script = ExtResource("1_h5ver") +position = Vector2(116, 72) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_yyxoq"] +script = ExtResource("1_h5ver") +position = Vector2(-38, -137) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_0artd"] +script = ExtResource("1_h5ver") +position = Vector2(-11, -70) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_n3ftt") +region = Rect2(1914, 1843, 213, 199) + +[resource] +resource_name = "LeafE7" +script = ExtResource("2_nwj5t") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_0artd") +attaches = Array[ExtResource("1_h5ver")]([SubResource("Resource_0ss64"), SubResource("Resource_0oofm"), SubResource("Resource_yyxoq")]) diff --git a/entities/plants/resources/plant_parts/LeafE8.tres b/entities/plants/resources/plant_parts/LeafE8.tres new file mode 100644 index 0000000..05fa4dc --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafE8.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cc8kkqiqdvex6"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_eqw7j"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_eebvo"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_m5uol"] + +[sub_resource type="Resource" id="Resource_5t10f"] +script = ExtResource("1_eqw7j") +position = Vector2(-1, -24) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_2g4wj"] +script = ExtResource("1_eqw7j") +position = Vector2(71, 41) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_m5uol") +region = Rect2(2175, 1837, 219, 177) + +[resource] +resource_name = "LeafE8" +script = ExtResource("2_eebvo") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_2g4wj") +attaches = Array[ExtResource("1_eqw7j")]([SubResource("Resource_5t10f")]) diff --git a/entities/plants/resources/plant_parts/LeafE9.tres b/entities/plants/resources/plant_parts/LeafE9.tres new file mode 100644 index 0000000..aafabb4 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafE9.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cusd2od1yj0ob"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_pyxpy"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_8l4xv"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_18h52"] + +[sub_resource type="Resource" id="Resource_6uj66"] +script = ExtResource("1_pyxpy") +position = Vector2(-1, -24) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_xupo7"] +script = ExtResource("1_pyxpy") +position = Vector2(-81, -42) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_18h52") +region = Rect2(1914, 1843, 213, 199) + +[resource] +resource_name = "LeafE9" +script = ExtResource("2_8l4xv") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_xupo7") +attaches = Array[ExtResource("1_pyxpy")]([SubResource("Resource_6uj66")]) diff --git a/entities/plants/resources/plant_parts/LeafF1.tres b/entities/plants/resources/plant_parts/LeafF1.tres index d490783..7cae244 100644 --- a/entities/plants/resources/plant_parts/LeafF1.tres +++ b/entities/plants/resources/plant_parts/LeafF1.tres @@ -2,19 +2,26 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_07pd3"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_bumeo"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_iyic1"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_iyic1"] [sub_resource type="Resource" id="Resource_07pd3"] script = ExtResource("1_07pd3") -position = Vector2(-94, 80) -attach_types = Array[int]([1, 3]) +position = Vector2(87, 72) +attach_types = Array[int]([2]) -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] +[sub_resource type="Resource" id="Resource_bumeo"] +script = ExtResource("1_07pd3") +position = Vector2(116, 99) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_iyic1") -region = Rect2(2628, 3013, 315, 436) +region = Rect2(2183, 12, 323, 258) [resource] resource_name = "LeafF1" script = ExtResource("2_bumeo") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_07pd3") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_bumeo") +attaches = Array[ExtResource("1_07pd3")]([SubResource("Resource_07pd3")]) diff --git a/entities/plants/resources/plant_parts/LeafF2.tres b/entities/plants/resources/plant_parts/LeafF2.tres index 6556044..f3dea32 100644 --- a/entities/plants/resources/plant_parts/LeafF2.tres +++ b/entities/plants/resources/plant_parts/LeafF2.tres @@ -2,19 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_6qc5v"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_d1evk"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_4ib3w"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_4ib3w"] [sub_resource type="Resource" id="Resource_6qc5v"] script = ExtResource("1_6qc5v") -position = Vector2(-38, 86) -attach_types = Array[int]([1, 3]) +position = Vector2(53, -61) +attach_types = Array[int]([2]) -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] +[sub_resource type="Resource" id="Resource_d1evk"] +script = ExtResource("1_6qc5v") +position = Vector2(81, -36) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_4ib3w"] +script = ExtResource("1_6qc5v") +position = Vector2(115, -61) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_4ib3w") -region = Rect2(3043, 3137, 228, 225) +region = Rect2(2598, 390, 257, 218) [resource] resource_name = "LeafF2" script = ExtResource("2_d1evk") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_6qc5v") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_4ib3w") +attaches = Array[ExtResource("1_6qc5v")]([SubResource("Resource_6qc5v"), SubResource("Resource_d1evk")]) diff --git a/entities/plants/resources/plant_parts/LeafF3.tres b/entities/plants/resources/plant_parts/LeafF3.tres index 1cd113f..e923b5e 100644 --- a/entities/plants/resources/plant_parts/LeafF3.tres +++ b/entities/plants/resources/plant_parts/LeafF3.tres @@ -2,19 +2,26 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_1sa08"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_wbtnq"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_d212s"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_d212s"] -[sub_resource type="Resource" id="Resource_1sa08"] +[sub_resource type="Resource" id="Resource_1ioh5"] script = ExtResource("1_1sa08") -position = Vector2(43, 68) +position = Vector2(104, 119) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_e0oau"] +script = ExtResource("1_1sa08") +position = Vector2(115, 132) attach_types = Array[int]([1, 3]) -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_d212s") -region = Rect2(3427, 3290, 140, 172) +region = Rect2(2310, 274, 259, 308) [resource] resource_name = "LeafF3" script = ExtResource("2_wbtnq") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_1sa08") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_e0oau") +attaches = Array[ExtResource("1_1sa08")]([SubResource("Resource_1ioh5")]) diff --git a/entities/plants/resources/plant_parts/LeafF4.tres b/entities/plants/resources/plant_parts/LeafF4.tres index 2a0e44f..dfad76e 100644 --- a/entities/plants/resources/plant_parts/LeafF4.tres +++ b/entities/plants/resources/plant_parts/LeafF4.tres @@ -2,19 +2,31 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_k7ykv"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_1wv1i"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_47ofa"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_47ofa"] [sub_resource type="Resource" id="Resource_k7ykv"] script = ExtResource("1_k7ykv") -position = Vector2(20, 33) +position = Vector2(116, 133) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_1wv1i"] +script = ExtResource("1_k7ykv") +position = Vector2(100, 120) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_47ofa"] +script = ExtResource("1_k7ykv") +position = Vector2(121, 146) attach_types = Array[int]([1]) -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_47ofa") -region = Rect2(2367, 3469, 497, 465) +region = Rect2(2562, 25, 335, 358) [resource] resource_name = "LeafF4" script = ExtResource("2_1wv1i") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_k7ykv") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_47ofa") +attaches = Array[ExtResource("1_k7ykv")]([SubResource("Resource_k7ykv"), SubResource("Resource_1wv1i")]) diff --git a/entities/plants/resources/plant_parts/LeafF5.tres b/entities/plants/resources/plant_parts/LeafF5.tres index d934c3d..0960315 100644 --- a/entities/plants/resources/plant_parts/LeafF5.tres +++ b/entities/plants/resources/plant_parts/LeafF5.tres @@ -2,19 +2,26 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_dbtqk"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_a7ux5"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_m15xm"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_m15xm"] [sub_resource type="Resource" id="Resource_dbtqk"] script = ExtResource("1_dbtqk") -position = Vector2(168, -53) -attach_types = Array[int]([1]) +position = Vector2(-99, -20) +attach_types = Array[int]([2]) -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] +[sub_resource type="Resource" id="Resource_a7ux5"] +script = ExtResource("1_dbtqk") +position = Vector2(-148, -10) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_m15xm") -region = Rect2(2914, 3495, 374, 420) +region = Rect2(2806, 882, 338, 121) [resource] resource_name = "LeafF5" script = ExtResource("2_a7ux5") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_dbtqk") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_a7ux5") +attaches = Array[ExtResource("1_dbtqk")]([SubResource("Resource_dbtqk")]) diff --git a/entities/plants/resources/plant_parts/LeafF6.tres b/entities/plants/resources/plant_parts/LeafF6.tres index 6ba0e0a..7fea7da 100644 --- a/entities/plants/resources/plant_parts/LeafF6.tres +++ b/entities/plants/resources/plant_parts/LeafF6.tres @@ -2,19 +2,26 @@ [ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fjv82"] [ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_tbtj1"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_xxsyi"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_xxsyi"] [sub_resource type="Resource" id="Resource_fjv82"] script = ExtResource("1_fjv82") -position = Vector2(-100, 147) -attach_types = Array[int]([1, 3]) +position = Vector2(9, 67) +attach_types = Array[int]([2]) -[sub_resource type="AtlasTexture" id="AtlasTexture_khbsd"] +[sub_resource type="Resource" id="Resource_tbtj1"] +script = ExtResource("1_fjv82") +position = Vector2(11, 115) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] atlas = ExtResource("3_xxsyi") -region = Rect2(3395, 3520, 324, 391) +region = Rect2(3043, 627, 86, 265) [resource] resource_name = "LeafF6" script = ExtResource("2_tbtj1") -texture = SubResource("AtlasTexture_khbsd") -root = SubResource("Resource_fjv82") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_tbtj1") +attaches = Array[ExtResource("1_fjv82")]([SubResource("Resource_fjv82")]) diff --git a/entities/plants/resources/plant_parts/LeafF7.tres b/entities/plants/resources/plant_parts/LeafF7.tres new file mode 100644 index 0000000..25f9a0c --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafF7.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c8ttq14no8872"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_2c01u"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_56b1h"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_uxh3v"] + +[sub_resource type="Resource" id="Resource_22eqn"] +script = ExtResource("1_2c01u") +position = Vector2(-52, 89) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_jnmur"] +script = ExtResource("1_2c01u") +position = Vector2(-113, 169) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_uxh3v") +region = Rect2(3204, 644, 272, 362) + +[resource] +resource_name = "LeafF7" +script = ExtResource("2_56b1h") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_jnmur") +attaches = Array[ExtResource("1_2c01u")]([SubResource("Resource_22eqn")]) diff --git a/entities/plants/resources/plant_parts/LeafF8.tres b/entities/plants/resources/plant_parts/LeafF8.tres new file mode 100644 index 0000000..b6c489b --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafF8.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://drc3g203302d4"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_1vgcb"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_3re4x"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_2fv0t"] + +[sub_resource type="Resource" id="Resource_1vgcb"] +script = ExtResource("1_1vgcb") +position = Vector2(-66, -48) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_3re4x"] +script = ExtResource("1_1vgcb") +position = Vector2(-98, -72) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_2fv0t") +region = Rect2(3282, 1012, 229, 191) + +[resource] +resource_name = "LeafF8" +script = ExtResource("2_3re4x") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_3re4x") +attaches = Array[ExtResource("1_1vgcb")]([SubResource("Resource_1vgcb")]) diff --git a/entities/plants/resources/plant_parts/LeafF9.tres b/entities/plants/resources/plant_parts/LeafF9.tres new file mode 100644 index 0000000..f59a7ee --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafF9.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bkqijgu05f3qg"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_lp6r5"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_4awjb"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_spq0s"] + +[sub_resource type="Resource" id="Resource_ogjje"] +script = ExtResource("1_lp6r5") +position = Vector2(-24, -56) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_annfe"] +script = ExtResource("1_lp6r5") +position = Vector2(-56, -97) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_spq0s") +region = Rect2(3142, 1044, 146, 226) + +[resource] +resource_name = "LeafF9" +script = ExtResource("2_4awjb") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_annfe") +attaches = Array[ExtResource("1_lp6r5")]([SubResource("Resource_ogjje")]) diff --git a/entities/plants/resources/plant_parts/LeafG1.tres b/entities/plants/resources/plant_parts/LeafG1.tres deleted file mode 100644 index 9c8855b..0000000 --- a/entities/plants/resources/plant_parts/LeafG1.tres +++ /dev/null @@ -1,21 +0,0 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dgivyissl512e"] - -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_nanrd"] -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_kd22c"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_sfqmm"] - -[sub_resource type="Resource" id="Resource_nanrd"] -script = ExtResource("1_nanrd") -position = Vector2(116, 172) -attach_types = Array[int]([1, 3]) - -[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_sfqmm") -region = Rect2(937, 836, 309, 407) - -[resource] -resource_name = "LeafG1" -script = ExtResource("2_kd22c") -texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_nanrd") diff --git a/entities/plants/resources/plant_parts/LeafG2.tres b/entities/plants/resources/plant_parts/LeafG2.tres deleted file mode 100644 index 662cf2e..0000000 --- a/entities/plants/resources/plant_parts/LeafG2.tres +++ /dev/null @@ -1,21 +0,0 @@ -[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://u6dwq3eowpcb"] - -[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_v01f8"] -[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_frmoh"] -[ext_resource type="Texture2D" uid="uid://bxnm1quxhx40i" path="res://entities/plants/assets/sprites/asset-plante-fin_assemble.png" id="3_w5pyt"] - -[sub_resource type="Resource" id="Resource_v01f8"] -script = ExtResource("1_v01f8") -position = Vector2(-135, 133) -attach_types = Array[int]([1, 3]) - -[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] -atlas = ExtResource("3_w5pyt") -region = Rect2(1301, 896, 328, 350) - -[resource] -resource_name = "LeafG2" -script = ExtResource("2_frmoh") -texture = SubResource("AtlasTexture_yh7e0") -type = 1 -root = SubResource("Resource_v01f8") diff --git a/entities/plants/resources/plant_parts/LeafHA1.tres b/entities/plants/resources/plant_parts/LeafHA1.tres new file mode 100644 index 0000000..8afc5c7 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHA1.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b4v7vvv0jdh0k"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_7xdli"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_hsyie"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_uxdwi"] + +[sub_resource type="Resource" id="Resource_uww5j"] +script = ExtResource("1_7xdli") +position = Vector2(35, 136) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_xvi5y"] +script = ExtResource("1_7xdli") +position = Vector2(17, -18) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ybusl"] +script = ExtResource("1_7xdli") +position = Vector2(-25, -139) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_m8inb"] +script = ExtResource("1_7xdli") +position = Vector2(39, 165) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_uxdwi") +region = Rect2(16, 2422, 222, 380) + +[resource] +resource_name = "LeafH1" +script = ExtResource("2_hsyie") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_m8inb") +attaches = Array[ExtResource("1_7xdli")]([SubResource("Resource_uww5j"), SubResource("Resource_xvi5y"), SubResource("Resource_ybusl")]) diff --git a/entities/plants/resources/plant_parts/LeafHA2.tres b/entities/plants/resources/plant_parts/LeafHA2.tres new file mode 100644 index 0000000..be00ae2 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHA2.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bvff3ay7qpvgs"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_6jxvg"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_8thar"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_xoyof"] + +[sub_resource type="Resource" id="Resource_ibnxy"] +script = ExtResource("1_6jxvg") +position = Vector2(-149, 143) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ia5hi"] +script = ExtResource("1_6jxvg") +position = Vector2(-11, 7) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_3d1ec"] +script = ExtResource("1_6jxvg") +position = Vector2(93, -117) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_yqhj4"] +script = ExtResource("1_6jxvg") +position = Vector2(-164, 160) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_xoyof") +region = Rect2(238, 2422, 355, 380) + +[resource] +resource_name = "LeafH2" +script = ExtResource("2_8thar") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_yqhj4") +attaches = Array[ExtResource("1_6jxvg")]([SubResource("Resource_ibnxy"), SubResource("Resource_ia5hi"), SubResource("Resource_3d1ec")]) diff --git a/entities/plants/resources/plant_parts/LeafHA3.tres b/entities/plants/resources/plant_parts/LeafHA3.tres new file mode 100644 index 0000000..c8f1201 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHA3.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://mwjpvg6xqxyl"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_04w7e"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_msfms"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_6eoa5"] + +[sub_resource type="Resource" id="Resource_c3714"] +script = ExtResource("1_04w7e") +position = Vector2(-185, 82) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ia8hj"] +script = ExtResource("1_04w7e") +position = Vector2(-9, -37) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_5a0lt"] +script = ExtResource("1_04w7e") +position = Vector2(143, 24) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ee445"] +script = ExtResource("1_04w7e") +position = Vector2(-196, 104) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_6eoa5") +region = Rect2(20, 2801, 461, 266) + +[resource] +resource_name = "LeafH3" +script = ExtResource("2_msfms") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_ee445") +attaches = Array[ExtResource("1_04w7e")]([SubResource("Resource_c3714"), SubResource("Resource_ia8hj"), SubResource("Resource_5a0lt")]) diff --git a/entities/plants/resources/plant_parts/LeafHA5.tres b/entities/plants/resources/plant_parts/LeafHA5.tres new file mode 100644 index 0000000..03d199a --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHA5.tres @@ -0,0 +1,42 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cm5rtqrvsmqkg"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_v113s"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_2uotx"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_gfgme"] + +[sub_resource type="Resource" id="Resource_v424p"] +script = ExtResource("1_v113s") +position = Vector2(-176, 164) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_hjcpv"] +script = ExtResource("1_v113s") +position = Vector2(-124, 80) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_wouy8"] +script = ExtResource("1_v113s") +position = Vector2(141, 113) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_4x6lr"] +script = ExtResource("1_v113s") +position = Vector2(-34, -146) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_8oemn"] +script = ExtResource("1_v113s") +position = Vector2(-192, 193) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_gfgme") +region = Rect2(2037, 2374, 477, 489) + +[resource] +resource_name = "LeafHA5" +script = ExtResource("2_2uotx") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_8oemn") +attaches = Array[ExtResource("1_v113s")]([SubResource("Resource_v424p"), SubResource("Resource_hjcpv"), SubResource("Resource_wouy8"), SubResource("Resource_4x6lr")]) diff --git a/entities/plants/resources/plant_parts/LeafHA6.tres b/entities/plants/resources/plant_parts/LeafHA6.tres new file mode 100644 index 0000000..ddd4a6b --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHA6.tres @@ -0,0 +1,42 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bf4s8omnaau0w"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_7j6rh"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_a7qhu"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_m1l6q"] + +[sub_resource type="Resource" id="Resource_imk50"] +script = ExtResource("1_7j6rh") +position = Vector2(-127, 200) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_pt6ag"] +script = ExtResource("1_7j6rh") +position = Vector2(-91, 45) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_l1o43"] +script = ExtResource("1_7j6rh") +position = Vector2(92, -36) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_yqldc"] +script = ExtResource("1_7j6rh") +position = Vector2(-98, -121) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_nmlli"] +script = ExtResource("1_7j6rh") +position = Vector2(-136, 222) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_m1l6q") +region = Rect2(2552, 2374, 440, 523) + +[resource] +resource_name = "LeafHA6" +script = ExtResource("2_a7qhu") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_nmlli") +attaches = Array[ExtResource("1_7j6rh")]([SubResource("Resource_imk50"), SubResource("Resource_pt6ag"), SubResource("Resource_l1o43"), SubResource("Resource_yqldc")]) diff --git a/entities/plants/resources/plant_parts/LeafHA7.tres b/entities/plants/resources/plant_parts/LeafHA7.tres new file mode 100644 index 0000000..f1440dc --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHA7.tres @@ -0,0 +1,42 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://iv3nmggoklh3"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ohs4i"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_c0nwh"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_nh3cu"] + +[sub_resource type="Resource" id="Resource_pa4tl"] +script = ExtResource("1_ohs4i") +position = Vector2(-144, 29) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_m5873"] +script = ExtResource("1_ohs4i") +position = Vector2(25, 5) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_sp2aq"] +script = ExtResource("1_ohs4i") +position = Vector2(160, 46) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_d3ofn"] +script = ExtResource("1_ohs4i") +position = Vector2(-127, -150) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_rlpmf"] +script = ExtResource("1_ohs4i") +position = Vector2(-159, 163) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_nh3cu") +region = Rect2(2992, 2492, 513, 405) + +[resource] +resource_name = "LeafHA7" +script = ExtResource("2_c0nwh") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_rlpmf") +attaches = Array[ExtResource("1_ohs4i")]([SubResource("Resource_pa4tl"), SubResource("Resource_m5873"), SubResource("Resource_sp2aq"), SubResource("Resource_d3ofn")]) diff --git a/entities/plants/resources/plant_parts/LeafHB1.tres b/entities/plants/resources/plant_parts/LeafHB1.tres new file mode 100644 index 0000000..3e5a674 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHB1.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dvs3adahua8s3"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_k5ath"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_ufnxx"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ysslr"] + +[sub_resource type="Resource" id="Resource_s3naq"] +script = ExtResource("1_k5ath") +position = Vector2(44, 144) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_bmy4u"] +script = ExtResource("1_k5ath") +position = Vector2(25, 5) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_a5hes"] +script = ExtResource("1_k5ath") +position = Vector2(-16, -136) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_fkwyj"] +script = ExtResource("1_k5ath") +position = Vector2(48, 169) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ysslr") +region = Rect2(625, 2423, 226, 398) + +[resource] +resource_name = "LeafHB1" +script = ExtResource("2_ufnxx") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_fkwyj") +attaches = Array[ExtResource("1_k5ath")]([SubResource("Resource_s3naq"), SubResource("Resource_bmy4u"), SubResource("Resource_a5hes")]) diff --git a/entities/plants/resources/plant_parts/LeafHB2.tres b/entities/plants/resources/plant_parts/LeafHB2.tres new file mode 100644 index 0000000..4754029 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHB2.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ck6hhwqaep4rv"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_64ju8"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_wt4f4"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_elbcr"] + +[sub_resource type="Resource" id="Resource_lyhp6"] +script = ExtResource("1_64ju8") +position = Vector2(-180, 67) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_rtqai"] +script = ExtResource("1_64ju8") +position = Vector2(-38, -41) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_txwvg"] +script = ExtResource("1_64ju8") +position = Vector2(145, 10) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_lall4"] +script = ExtResource("1_64ju8") +position = Vector2(-189, 90) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_elbcr") +region = Rect2(561, 2832, 451, 258) + +[resource] +resource_name = "LeafHB2" +script = ExtResource("2_wt4f4") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_lall4") +attaches = Array[ExtResource("1_64ju8")]([SubResource("Resource_lyhp6"), SubResource("Resource_rtqai"), SubResource("Resource_txwvg")]) diff --git a/entities/plants/resources/plant_parts/LeafHB3.tres b/entities/plants/resources/plant_parts/LeafHB3.tres new file mode 100644 index 0000000..12017e2 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHB3.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dg72of25fyx6l"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_d8eib"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_nux6u"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_6wjww"] + +[sub_resource type="Resource" id="Resource_e12jh"] +script = ExtResource("1_d8eib") +position = Vector2(-142, 151) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_3bdjp"] +script = ExtResource("1_d8eib") +position = Vector2(-22, 38) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_yppak"] +script = ExtResource("1_d8eib") +position = Vector2(92, -108) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_fl51j"] +script = ExtResource("1_d8eib") +position = Vector2(-159, 166) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_6wjww") +region = Rect2(928, 2431, 367, 393) + +[resource] +resource_name = "LeafHB3" +script = ExtResource("2_nux6u") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_fl51j") +attaches = Array[ExtResource("1_d8eib")]([SubResource("Resource_e12jh"), SubResource("Resource_3bdjp"), SubResource("Resource_yppak")]) diff --git a/entities/plants/resources/plant_parts/LeafHB4.tres b/entities/plants/resources/plant_parts/LeafHB4.tres new file mode 100644 index 0000000..dc6c4da --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHB4.tres @@ -0,0 +1,47 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dftgxbn5edjlo"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ycaes"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_rjbmg"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_f4b31"] + +[sub_resource type="Resource" id="Resource_3fxyu"] +script = ExtResource("1_ycaes") +position = Vector2(-99, 144) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_uof87"] +script = ExtResource("1_ycaes") +position = Vector2(62, 3) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_8flam"] +script = ExtResource("1_ycaes") +position = Vector2(-83, 30) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_6mrag"] +script = ExtResource("1_ycaes") +position = Vector2(-73, -132) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_0dwbn"] +script = ExtResource("1_ycaes") +position = Vector2(130, -86) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_5nxgs"] +script = ExtResource("1_ycaes") +position = Vector2(-102, 179) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_f4b31") +region = Rect2(1835, 2902, 478, 424) + +[resource] +resource_name = "LeafHB4" +script = ExtResource("2_rjbmg") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_5nxgs") +attaches = Array[ExtResource("1_ycaes")]([SubResource("Resource_3fxyu"), SubResource("Resource_uof87"), SubResource("Resource_8flam"), SubResource("Resource_6mrag"), SubResource("Resource_0dwbn")]) diff --git a/entities/plants/resources/plant_parts/LeafHB5.tres b/entities/plants/resources/plant_parts/LeafHB5.tres new file mode 100644 index 0000000..cfeacc7 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHB5.tres @@ -0,0 +1,47 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bp5rsktoijhfg"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_7j0xi"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gfbqs"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_aqcqn"] + +[sub_resource type="Resource" id="Resource_2vwn6"] +script = ExtResource("1_7j0xi") +position = Vector2(-164, 144) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_7d53i"] +script = ExtResource("1_7j0xi") +position = Vector2(-17, 34) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_op2hm"] +script = ExtResource("1_7j0xi") +position = Vector2(-118, 7) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_j6svm"] +script = ExtResource("1_7j0xi") +position = Vector2(-95, -131) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_lkiob"] +script = ExtResource("1_7j0xi") +position = Vector2(158, 85) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_uakt1"] +script = ExtResource("1_7j0xi") +position = Vector2(-172, 171) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_aqcqn") +region = Rect2(2338, 2944, 523, 382) + +[resource] +resource_name = "LeafHB5" +script = ExtResource("2_gfbqs") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_uakt1") +attaches = Array[ExtResource("1_7j0xi")]([SubResource("Resource_2vwn6"), SubResource("Resource_7d53i"), SubResource("Resource_op2hm"), SubResource("Resource_j6svm"), SubResource("Resource_lkiob")]) diff --git a/entities/plants/resources/plant_parts/LeafHB6.tres b/entities/plants/resources/plant_parts/LeafHB6.tres new file mode 100644 index 0000000..8649370 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHB6.tres @@ -0,0 +1,42 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dc40k5j14rcty"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_t244u"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_0c5im"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_d1420"] + +[sub_resource type="Resource" id="Resource_xicff"] +script = ExtResource("1_t244u") +position = Vector2(-189, 131) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_1pui1"] +script = ExtResource("1_t244u") +position = Vector2(-41, 33) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_6l2rs"] +script = ExtResource("1_t244u") +position = Vector2(140, 99) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_qvcrv"] +script = ExtResource("1_t244u") +position = Vector2(58, -125) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_vollo"] +script = ExtResource("1_t244u") +position = Vector2(-200, 155) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_d1420") +region = Rect2(2876, 2923, 467, 403) + +[resource] +resource_name = "LeafHB6" +script = ExtResource("2_0c5im") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_vollo") +attaches = Array[ExtResource("1_t244u")]([SubResource("Resource_xicff"), SubResource("Resource_1pui1"), SubResource("Resource_6l2rs"), SubResource("Resource_qvcrv")]) diff --git a/entities/plants/resources/plant_parts/LeafHC1.tres b/entities/plants/resources/plant_parts/LeafHC1.tres new file mode 100644 index 0000000..d9e1a83 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHC1.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b3kj6nenmp02i"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_pviqf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_bnxv3"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_lgrun"] + +[sub_resource type="Resource" id="Resource_os1j5"] +script = ExtResource("1_pviqf") +position = Vector2(31, 142) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_7y0lq"] +script = ExtResource("1_pviqf") +position = Vector2(14, 31) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_cgydv"] +script = ExtResource("1_pviqf") +position = Vector2(-25, -135) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_exeol"] +script = ExtResource("1_pviqf") +position = Vector2(39, 171) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_lgrun") +region = Rect2(1347, 2473, 201, 386) + +[resource] +resource_name = "LeafHC1" +script = ExtResource("2_bnxv3") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_exeol") +attaches = Array[ExtResource("1_pviqf")]([SubResource("Resource_os1j5"), SubResource("Resource_7y0lq"), SubResource("Resource_cgydv")]) diff --git a/entities/plants/resources/plant_parts/LeafHC2.tres b/entities/plants/resources/plant_parts/LeafHC2.tres new file mode 100644 index 0000000..5026147 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHC2.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://epgfgg61jg3e"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_e6sy4"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_peamo"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_605k3"] + +[sub_resource type="Resource" id="Resource_i8hll"] +script = ExtResource("1_e6sy4") +position = Vector2(-142, 153) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_odio3"] +script = ExtResource("1_e6sy4") +position = Vector2(-24, 44) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_sl3kt"] +script = ExtResource("1_e6sy4") +position = Vector2(98, -108) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_tsl4r"] +script = ExtResource("1_e6sy4") +position = Vector2(-160, 171) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_605k3") +region = Rect2(1621, 2475, 379, 387) + +[resource] +resource_name = "LeafHC2" +script = ExtResource("2_peamo") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_tsl4r") +attaches = Array[ExtResource("1_e6sy4")]([SubResource("Resource_i8hll"), SubResource("Resource_odio3"), SubResource("Resource_sl3kt")]) diff --git a/entities/plants/resources/plant_parts/LeafHC3.tres b/entities/plants/resources/plant_parts/LeafHC3.tres new file mode 100644 index 0000000..682aa56 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHC3.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cmoag8cw6qj07"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_xcdbi"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_it8ln"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_wylk8"] + +[sub_resource type="Resource" id="Resource_qhrve"] +script = ExtResource("1_xcdbi") +position = Vector2(-180, 70) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_skrhy"] +script = ExtResource("1_xcdbi") +position = Vector2(-37, -44) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_tniir"] +script = ExtResource("1_xcdbi") +position = Vector2(143, 8) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_17ynn"] +script = ExtResource("1_xcdbi") +position = Vector2(-190, 90) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_wylk8") +region = Rect2(1234, 2874, 504, 265) + +[resource] +resource_name = "LeafHC3" +script = ExtResource("2_it8ln") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_17ynn") +attaches = Array[ExtResource("1_xcdbi")]([SubResource("Resource_qhrve"), SubResource("Resource_skrhy"), SubResource("Resource_tniir")]) diff --git a/entities/plants/resources/plant_parts/LeafHC4.tres b/entities/plants/resources/plant_parts/LeafHC4.tres new file mode 100644 index 0000000..3acce56 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHC4.tres @@ -0,0 +1,47 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://clb1enhbgkhyd"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_nyock"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_2pqga"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_kk65u"] + +[sub_resource type="Resource" id="Resource_svvw5"] +script = ExtResource("1_nyock") +position = Vector2(-162, 141) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_q2c1t"] +script = ExtResource("1_nyock") +position = Vector2(-122, 34) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_itjhk"] +script = ExtResource("1_nyock") +position = Vector2(-16, 33) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_gbuat"] +script = ExtResource("1_nyock") +position = Vector2(162, 84) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_18xe7"] +script = ExtResource("1_nyock") +position = Vector2(-78, -129) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_go6f7"] +script = ExtResource("1_nyock") +position = Vector2(-172, 166) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_kk65u") +region = Rect2(3447, 2887, 537, 421) + +[resource] +resource_name = "LeafHC4" +script = ExtResource("2_2pqga") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_go6f7") +attaches = Array[ExtResource("1_nyock")]([SubResource("Resource_svvw5"), SubResource("Resource_q2c1t"), SubResource("Resource_itjhk"), SubResource("Resource_gbuat"), SubResource("Resource_18xe7")]) diff --git a/entities/plants/resources/plant_parts/LeafHC5.tres b/entities/plants/resources/plant_parts/LeafHC5.tres new file mode 100644 index 0000000..8e07d5a --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHC5.tres @@ -0,0 +1,42 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://7w5wsjc8n2rf"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_e8ed3"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_4fkd2"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_iqbec"] + +[sub_resource type="Resource" id="Resource_iows5"] +script = ExtResource("1_e8ed3") +position = Vector2(-123, 165) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_c1lna"] +script = ExtResource("1_e8ed3") +position = Vector2(-3, 49) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_rhdyy"] +script = ExtResource("1_e8ed3") +position = Vector2(113, -95) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_hwx8k"] +script = ExtResource("1_e8ed3") +position = Vector2(-95, -134) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_8gujk"] +script = ExtResource("1_e8ed3") +position = Vector2(-141, 180) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_iqbec") +region = Rect2(3984, 2887, 419, 421) + +[resource] +resource_name = "LeafHC5" +script = ExtResource("2_4fkd2") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_8gujk") +attaches = Array[ExtResource("1_e8ed3")]([SubResource("Resource_iows5"), SubResource("Resource_c1lna"), SubResource("Resource_rhdyy"), SubResource("Resource_hwx8k")]) diff --git a/entities/plants/resources/plant_parts/LeafHC6.tres b/entities/plants/resources/plant_parts/LeafHC6.tres new file mode 100644 index 0000000..b157f7e --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafHC6.tres @@ -0,0 +1,42 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cxkbfwq0enqoc"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_h3htf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_wcc8f"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_tceks"] + +[sub_resource type="Resource" id="Resource_o0wei"] +script = ExtResource("1_h3htf") +position = Vector2(-178, 175) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ldgbp"] +script = ExtResource("1_h3htf") +position = Vector2(-32, 65) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ema8a"] +script = ExtResource("1_h3htf") +position = Vector2(147, 119) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_gybpc"] +script = ExtResource("1_h3htf") +position = Vector2(89, -137) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_8kds1"] +script = ExtResource("1_h3htf") +position = Vector2(-188, 198) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_tceks") +region = Rect2(4403, 2887, 469, 435) + +[resource] +resource_name = "LeafHC6" +script = ExtResource("2_wcc8f") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_8kds1") +attaches = Array[ExtResource("1_h3htf")]([SubResource("Resource_o0wei"), SubResource("Resource_ldgbp"), SubResource("Resource_ema8a"), SubResource("Resource_gybpc")]) diff --git a/entities/plants/resources/plant_parts/LeafI1.tres b/entities/plants/resources/plant_parts/LeafI1.tres new file mode 100644 index 0000000..bf2bc4d --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafI1.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://3jwo74wsntup"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_tmmcw"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_mrlbu"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ps47x"] + +[sub_resource type="Resource" id="Resource_4esor"] +script = ExtResource("1_tmmcw") +position = Vector2(82, 86) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_qmgx7"] +script = ExtResource("1_tmmcw") +position = Vector2(91, 132) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ps47x") +region = Rect2(1099, 1602, 255, 299) + +[resource] +resource_name = "LeafI1" +script = ExtResource("2_mrlbu") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_qmgx7") +attaches = Array[ExtResource("1_tmmcw")]([SubResource("Resource_4esor")]) diff --git a/entities/plants/resources/plant_parts/LeafI2.tres b/entities/plants/resources/plant_parts/LeafI2.tres new file mode 100644 index 0000000..6eee2f4 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafI2.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c7dl7w1jhcacw"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ij76i"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_d6jvx"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_8uxs4"] + +[sub_resource type="Resource" id="Resource_7oq6v"] +script = ExtResource("1_ij76i") +position = Vector2(-59, 175) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_r7n4y"] +script = ExtResource("1_ij76i") +position = Vector2(-100, 254) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_8uxs4") +region = Rect2(1361, 1590, 238, 522) + +[resource] +resource_name = "LeafI2" +script = ExtResource("2_d6jvx") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_r7n4y") +attaches = Array[ExtResource("1_ij76i")]([SubResource("Resource_7oq6v")]) diff --git a/entities/plants/resources/plant_parts/LeafI3.tres b/entities/plants/resources/plant_parts/LeafI3.tres new file mode 100644 index 0000000..363bfa8 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafI3.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://1tep0wfu5jxm"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_w0r5v"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gyrof"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_t2dgk"] + +[sub_resource type="Resource" id="Resource_w0r5v"] +script = ExtResource("1_w0r5v") +position = Vector2(-133, 155) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_gyrof"] +script = ExtResource("1_w0r5v") +position = Vector2(-187, 248) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_t2dgk") +region = Rect2(1548, 1919, 400, 532) + +[resource] +resource_name = "LeafI3" +script = ExtResource("2_gyrof") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_gyrof") +attaches = Array[ExtResource("1_w0r5v")]([SubResource("Resource_w0r5v")]) diff --git a/entities/plants/resources/plant_parts/LeafI4.tres b/entities/plants/resources/plant_parts/LeafI4.tres new file mode 100644 index 0000000..911a404 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafI4.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://kcho1d0sjomk"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_pqh7l"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_qwyrc"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_e28ea"] + +[sub_resource type="Resource" id="Resource_pqh7l"] +script = ExtResource("1_pqh7l") +position = Vector2(-20, 125) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_qwyrc"] +script = ExtResource("1_pqh7l") +position = Vector2(-74, 248) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_e28ea") +region = Rect2(5155, 1786, 314, 545) + +[resource] +resource_name = "LeafI4" +script = ExtResource("2_qwyrc") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_qwyrc") +attaches = Array[ExtResource("1_pqh7l")]([SubResource("Resource_pqh7l")]) diff --git a/entities/plants/resources/plant_parts/LeafJ1.tres b/entities/plants/resources/plant_parts/LeafJ1.tres new file mode 100644 index 0000000..0f1ccdb --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafJ1.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bff32l0awxl38"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_861g0"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_npid6"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_qb7wh"] + +[sub_resource type="Resource" id="Resource_861g0"] +script = ExtResource("1_861g0") +position = Vector2(-11, 50) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_qb7wh") +region = Rect2(1734, 488, 82, 104) + +[resource] +resource_name = "LeafJ1" +script = ExtResource("2_npid6") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_861g0") diff --git a/entities/plants/resources/plant_parts/LeafJ2.tres b/entities/plants/resources/plant_parts/LeafJ2.tres new file mode 100644 index 0000000..6a30437 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafJ2.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ddaa77cqi865e"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ceaqb"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_ysjk5"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_qxbq8"] + +[sub_resource type="Resource" id="Resource_ceaqb"] +script = ExtResource("1_ceaqb") +position = Vector2(34, 37) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_qxbq8") +region = Rect2(1838, 491, 87, 92) + +[resource] +resource_name = "LeafJ2" +script = ExtResource("2_ysjk5") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_ceaqb") diff --git a/entities/plants/resources/plant_parts/LeafJ3.tres b/entities/plants/resources/plant_parts/LeafJ3.tres new file mode 100644 index 0000000..bd4b7a5 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafJ3.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://brlnlvjpjidd5"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_cbsjh"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_0cf15"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_hkxok"] + +[sub_resource type="Resource" id="Resource_cbsjh"] +script = ExtResource("1_cbsjh") +position = Vector2(26, 75) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_hkxok") +region = Rect2(1791, 589, 128, 162) + +[resource] +resource_name = "LeafJ3" +script = ExtResource("2_0cf15") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_cbsjh") diff --git a/entities/plants/resources/plant_parts/LeafJ4.tres b/entities/plants/resources/plant_parts/LeafJ4.tres new file mode 100644 index 0000000..1d5aebc --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafJ4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cn2j8fh3l2tdo"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_w211u"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_0bah0"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_bskoq"] + +[sub_resource type="Resource" id="Resource_w211u"] +script = ExtResource("1_w211u") +position = Vector2(21, 79) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_bskoq") +region = Rect2(1639, 1335, 149, 173) + +[resource] +resource_name = "LeafJ4" +script = ExtResource("2_0bah0") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_w211u") diff --git a/entities/plants/resources/plant_parts/LeafJ5.tres b/entities/plants/resources/plant_parts/LeafJ5.tres new file mode 100644 index 0000000..04d4dd7 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafJ5.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ccafrqprfm6r2"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_80sup"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_jgocg"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_j8ge0"] + +[sub_resource type="Resource" id="Resource_r8g8g"] +script = ExtResource("1_80sup") +position = Vector2(14, 81) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_j8ge0") +region = Rect2(1819, 1269, 151, 187) + +[resource] +resource_name = "LeafJ5" +script = ExtResource("2_jgocg") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_r8g8g") diff --git a/entities/plants/resources/plant_parts/LeafK1.tres b/entities/plants/resources/plant_parts/LeafK1.tres new file mode 100644 index 0000000..2af4092 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafK1.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dyjojp8mfs5vy"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_m5vnu"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_1cyks"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_5slnm"] + +[sub_resource type="Resource" id="Resource_pnhon"] +script = ExtResource("1_m5vnu") +position = Vector2(-21, -3) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_706pr"] +script = ExtResource("1_m5vnu") +position = Vector2(123, 75) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_5slnm") +region = Rect2(1987, 1378, 280, 180) + +[resource] +resource_name = "LeafK1" +script = ExtResource("2_1cyks") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_706pr") +attaches = Array[ExtResource("1_m5vnu")]([SubResource("Resource_pnhon")]) diff --git a/entities/plants/resources/plant_parts/LeafK2.tres b/entities/plants/resources/plant_parts/LeafK2.tres new file mode 100644 index 0000000..f91eadb --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafK2.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://trorp4elyagc"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_xrnbx"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_ru4ni"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_k4ktr"] + +[sub_resource type="Resource" id="Resource_0ah66"] +script = ExtResource("1_xrnbx") +position = Vector2(11, -23) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_2irg7"] +script = ExtResource("1_xrnbx") +position = Vector2(10, 67) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_k4ktr") +region = Rect2(2284, 1417, 125, 166) + +[resource] +resource_name = "LeafK2" +script = ExtResource("2_ru4ni") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_2irg7") +attaches = Array[ExtResource("1_xrnbx")]([SubResource("Resource_0ah66")]) diff --git a/entities/plants/resources/plant_parts/LeafK3.tres b/entities/plants/resources/plant_parts/LeafK3.tres new file mode 100644 index 0000000..ea23ea7 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafK3.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c6yxy44mt6fgt"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_cylao"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_1g4j2"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_xx405"] + +[sub_resource type="Resource" id="Resource_0uyht"] +script = ExtResource("1_cylao") +position = Vector2(-26, -20) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_d6dru"] +script = ExtResource("1_cylao") +position = Vector2(132, 63) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_xx405") +region = Rect2(1882, 1560, 328, 277) + +[resource] +resource_name = "LeafK3" +script = ExtResource("2_1g4j2") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_d6dru") +attaches = Array[ExtResource("1_cylao")]([SubResource("Resource_0uyht")]) diff --git a/entities/plants/resources/plant_parts/LeafK4.tres b/entities/plants/resources/plant_parts/LeafK4.tres new file mode 100644 index 0000000..5d6d5d4 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafK4.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dw4o76c3nuor5"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fi0pq"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_op788"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_4ecrb"] + +[sub_resource type="Resource" id="Resource_ykxwj"] +script = ExtResource("1_fi0pq") +position = Vector2(1, -16) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ww87e"] +script = ExtResource("1_fi0pq") +position = Vector2(11, 79) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_4ecrb") +region = Rect2(2239, 1599, 147, 186) + +[resource] +resource_name = "LeafK4" +script = ExtResource("2_op788") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_ww87e") +attaches = Array[ExtResource("1_fi0pq")]([SubResource("Resource_ykxwj")]) diff --git a/entities/plants/resources/plant_parts/LeafK5.tres b/entities/plants/resources/plant_parts/LeafK5.tres new file mode 100644 index 0000000..7608dff --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafK5.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://h18vambxcrwj"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_qubmh"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_emp3p"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_12hc4"] + +[sub_resource type="Resource" id="Resource_gfk1q"] +script = ExtResource("1_qubmh") +position = Vector2(-18, 2) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_574rc"] +script = ExtResource("1_qubmh") +position = Vector2(99, -78) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_dqbf2"] +script = ExtResource("1_qubmh") +position = Vector2(140, 86) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_12hc4") +region = Rect2(4146, 2127, 337, 329) + +[resource] +resource_name = "LeafK5" +script = ExtResource("2_emp3p") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_dqbf2") +attaches = Array[ExtResource("1_qubmh")]([SubResource("Resource_gfk1q"), SubResource("Resource_574rc")]) diff --git a/entities/plants/resources/plant_parts/LeafK6.tres b/entities/plants/resources/plant_parts/LeafK6.tres new file mode 100644 index 0000000..701678c --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafK6.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c70ikd1qfmqqs"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_k17iu"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_2teml"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_k2qid"] + +[sub_resource type="Resource" id="Resource_m3yjj"] +script = ExtResource("1_k17iu") +position = Vector2(-158, -10) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_gbrja"] +script = ExtResource("1_k17iu") +position = Vector2(56, 24) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_hmn7q"] +script = ExtResource("1_k17iu") +position = Vector2(-86, -69) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_al22u"] +script = ExtResource("1_k17iu") +position = Vector2(-134, 128) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_k2qid") +region = Rect2(4166, 1694, 456, 321) + +[resource] +resource_name = "LeafK6" +script = ExtResource("2_2teml") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_al22u") +attaches = Array[ExtResource("1_k17iu")]([SubResource("Resource_m3yjj"), SubResource("Resource_gbrja"), SubResource("Resource_hmn7q")]) diff --git a/entities/plants/resources/plant_parts/LeafK7.tres b/entities/plants/resources/plant_parts/LeafK7.tres new file mode 100644 index 0000000..da71f4c --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafK7.tres @@ -0,0 +1,37 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bhgnimmagff30"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_qhqm3"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gnvut"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_i0uw2"] + +[sub_resource type="Resource" id="Resource_4m4qe"] +script = ExtResource("1_qhqm3") +position = Vector2(-20, 16) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_aakec"] +script = ExtResource("1_qhqm3") +position = Vector2(-36, -75) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_ss1od"] +script = ExtResource("1_qhqm3") +position = Vector2(134, -119) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_lejvx"] +script = ExtResource("1_qhqm3") +position = Vector2(138, 99) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_i0uw2") +region = Rect2(4077, 2452, 379, 373) + +[resource] +resource_name = "LeafK7" +script = ExtResource("2_gnvut") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_lejvx") +attaches = Array[ExtResource("1_qhqm3")]([SubResource("Resource_4m4qe"), SubResource("Resource_aakec"), SubResource("Resource_ss1od")]) diff --git a/entities/plants/resources/plant_parts/LeafL1.tres b/entities/plants/resources/plant_parts/LeafL1.tres new file mode 100644 index 0000000..dd78e28 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafL1.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dtqndf5ivjkd0"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_7c7bi"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_mbo4u"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_aqidu"] + +[sub_resource type="Resource" id="Resource_ysid8"] +script = ExtResource("1_7c7bi") +position = Vector2(69, 68) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_aqidu") +region = Rect2(2908, 372, 179, 209) + +[resource] +resource_name = "LeafL1" +script = ExtResource("2_mbo4u") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_ysid8") diff --git a/entities/plants/resources/plant_parts/LeafL2.tres b/entities/plants/resources/plant_parts/LeafL2.tres new file mode 100644 index 0000000..e9329e7 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafL2.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://sgsq5sq5qiop"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_h462c"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_6ga8d"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_gffp4"] + +[sub_resource type="Resource" id="Resource_dti7m"] +script = ExtResource("1_h462c") +position = Vector2(145, 146) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_gffp4") +region = Rect2(2932, 47, 359, 326) + +[resource] +resource_name = "LeafL2" +script = ExtResource("2_6ga8d") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_dti7m") diff --git a/entities/plants/resources/plant_parts/LeafL3.tres b/entities/plants/resources/plant_parts/LeafL3.tres new file mode 100644 index 0000000..b2f0023 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafL3.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cx54ok1hr5phm"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_g2w2c"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gvpx0"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ilwwx"] + +[sub_resource type="Resource" id="Resource_1lgff"] +script = ExtResource("1_g2w2c") +position = Vector2(-35, 53) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ilwwx") +region = Rect2(3490, 20, 134, 196) + +[resource] +resource_name = "LeafL3" +script = ExtResource("2_gvpx0") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_1lgff") diff --git a/entities/plants/resources/plant_parts/LeafL4.tres b/entities/plants/resources/plant_parts/LeafL4.tres new file mode 100644 index 0000000..a05dfd0 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafL4.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://mi73vy6psod7"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_atqqh"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gdj67"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_co3c6"] + +[sub_resource type="Resource" id="Resource_naf1l"] +script = ExtResource("1_atqqh") +position = Vector2(36, -64) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_co3c6") +region = Rect2(3298, 149, 200, 381) + +[resource] +resource_name = "LeafL4" +script = ExtResource("2_gdj67") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_naf1l") diff --git a/entities/plants/resources/plant_parts/LeafL5.tres b/entities/plants/resources/plant_parts/LeafL5.tres new file mode 100644 index 0000000..15553ce --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafL5.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b30v10cej01cd"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_3w761"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_imnu1"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_hufgp"] + +[sub_resource type="Resource" id="Resource_3w761"] +script = ExtResource("1_3w761") +position = Vector2(126, -58) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_imnu1"] +script = ExtResource("1_3w761") +position = Vector2(115, 29) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_hufgp") +region = Rect2(3786, 20, 363, 546) + +[resource] +resource_name = "LeafL5" +script = ExtResource("2_imnu1") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_imnu1") +attaches = Array[ExtResource("1_3w761")]([SubResource("Resource_3w761")]) diff --git a/entities/plants/resources/plant_parts/LeafL6.tres b/entities/plants/resources/plant_parts/LeafL6.tres new file mode 100644 index 0000000..966fb7f --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafL6.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ui0h4qarm8kb"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ne66g"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_qkpit"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_xu8hf"] + +[sub_resource type="Resource" id="Resource_m1wjf"] +script = ExtResource("1_ne66g") +position = Vector2(42, -93) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_crm0d"] +script = ExtResource("1_ne66g") +position = Vector2(12, -3) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_xu8hf") +region = Rect2(3483, 372, 310, 467) + +[resource] +resource_name = "LeafL6" +script = ExtResource("2_qkpit") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_crm0d") +attaches = Array[ExtResource("1_ne66g")]([SubResource("Resource_m1wjf")]) diff --git a/entities/plants/resources/plant_parts/LeafL7.tres b/entities/plants/resources/plant_parts/LeafL7.tres new file mode 100644 index 0000000..8746f8c --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafL7.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dnxm3yuedx8dk"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_86161"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_guvg6"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_5dlth"] + +[sub_resource type="Resource" id="Resource_0py4a"] +script = ExtResource("1_86161") +position = Vector2(103, 43) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_rnnqc"] +script = ExtResource("1_86161") +position = Vector2(136, 136) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_5dlth") +region = Rect2(3830, 573, 395, 332) + +[resource] +resource_name = "LeafL8" +script = ExtResource("2_guvg6") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_rnnqc") +attaches = Array[ExtResource("1_86161")]([SubResource("Resource_0py4a")]) diff --git a/entities/plants/resources/plant_parts/LeafM1.tres b/entities/plants/resources/plant_parts/LeafM1.tres new file mode 100644 index 0000000..174e63f --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafM1.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://chipk657en25i"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_2t807"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_bjavf"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_gx40u"] + +[sub_resource type="Resource" id="Resource_00ipt"] +script = ExtResource("1_2t807") +position = Vector2(155, 150) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_gx40u") +region = Rect2(3535, 990, 353, 325) + +[resource] +resource_name = "LeafM1" +script = ExtResource("2_bjavf") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_00ipt") diff --git a/entities/plants/resources/plant_parts/LeafM2.tres b/entities/plants/resources/plant_parts/LeafM2.tres new file mode 100644 index 0000000..9a6f8c7 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafM2.tres @@ -0,0 +1,21 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dqjisbewgv81u"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_qtfga"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_uyliw"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_l10dn"] + +[sub_resource type="Resource" id="Resource_opuvp"] +script = ExtResource("1_qtfga") +position = Vector2(-37, 56) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_l10dn") +region = Rect2(4107, 954, 130, 188) + +[resource] +resource_name = "LeafM2" +script = ExtResource("2_uyliw") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_opuvp") diff --git a/entities/plants/resources/plant_parts/LeafM3.tres b/entities/plants/resources/plant_parts/LeafM3.tres new file mode 100644 index 0000000..214f2c1 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafM3.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://crbygauqj0dxy"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_k76fa"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_dq61k"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_sb6ua"] + +[sub_resource type="Resource" id="Resource_ji30t"] +script = ExtResource("1_k76fa") +position = Vector2(25, -119) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_2x5lg"] +script = ExtResource("1_k76fa") +position = Vector2(18, -43) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_sb6ua") +region = Rect2(3931, 1101, 172, 366) + +[resource] +resource_name = "LeafM3" +script = ExtResource("2_dq61k") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_2x5lg") +attaches = Array[ExtResource("1_k76fa")]([SubResource("Resource_ji30t")]) diff --git a/entities/plants/resources/plant_parts/LeafM4.tres b/entities/plants/resources/plant_parts/LeafM4.tres new file mode 100644 index 0000000..91ff9d7 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafM4.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://vl0kx56xhlyx"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_e0q0t"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_kjs8a"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_7rp86"] + +[sub_resource type="Resource" id="Resource_vjog0"] +script = ExtResource("1_e0q0t") +position = Vector2(1, -60) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_n0i0f"] +script = ExtResource("1_e0q0t") +position = Vector2(73, 67) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_7rp86") +region = Rect2(3532, 1352, 185, 229) + +[resource] +resource_name = "LeafM4" +script = ExtResource("2_kjs8a") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_n0i0f") +attaches = Array[ExtResource("1_e0q0t")]([SubResource("Resource_vjog0")]) diff --git a/entities/plants/resources/plant_parts/LeafM5.tres b/entities/plants/resources/plant_parts/LeafM5.tres new file mode 100644 index 0000000..1aae08f --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafM5.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cnsnlutuw4vvr"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fviq2"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_qpdx5"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_u2uj4"] + +[sub_resource type="Resource" id="Resource_fviq2"] +script = ExtResource("1_fviq2") +position = Vector2(33, -105) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_qpdx5"] +script = ExtResource("1_fviq2") +position = Vector2(11, -20) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_u2uj4") +region = Rect2(3477, 1619, 291, 450) + +[resource] +resource_name = "LeafM5" +script = ExtResource("2_qpdx5") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_qpdx5") +attaches = Array[ExtResource("1_fviq2")]([SubResource("Resource_fviq2")]) diff --git a/entities/plants/resources/plant_parts/LeafM6.tres b/entities/plants/resources/plant_parts/LeafM6.tres new file mode 100644 index 0000000..f86e9d8 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafM6.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bn71orot21iuu"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_w3mau"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_p1lhr"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_8ynh1"] + +[sub_resource type="Resource" id="Resource_w3mau"] +script = ExtResource("1_w3mau") +position = Vector2(125, -45) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_p1lhr"] +script = ExtResource("1_w3mau") +position = Vector2(121, 41) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_8ynh1") +region = Rect2(3776, 1524, 376, 570) + +[resource] +resource_name = "LeafM6" +script = ExtResource("2_p1lhr") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_p1lhr") +attaches = Array[ExtResource("1_w3mau")]([SubResource("Resource_w3mau")]) diff --git a/entities/plants/resources/plant_parts/LeafM7.tres b/entities/plants/resources/plant_parts/LeafM7.tres new file mode 100644 index 0000000..3ee7cfa --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafM7.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://brenrirghwwvf"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_ak83k"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_td6i5"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_8fw8s"] + +[sub_resource type="Resource" id="Resource_efr8i"] +script = ExtResource("1_ak83k") +position = Vector2(90, 21) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_oei3k"] +script = ExtResource("1_ak83k") +position = Vector2(130, 138) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_8fw8s") +region = Rect2(3513, 2086, 410, 356) + +[resource] +resource_name = "LeafM7" +script = ExtResource("2_td6i5") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_oei3k") +attaches = Array[ExtResource("1_ak83k")]([SubResource("Resource_efr8i")]) diff --git a/entities/plants/resources/plant_parts/LeafNA1.tres b/entities/plants/resources/plant_parts/LeafNA1.tres new file mode 100644 index 0000000..dba322c --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNA1.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b4hh8jrpenwt3"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_371qh"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gt45i"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_o1hm0"] + +[sub_resource type="Resource" id="Resource_371qh"] +script = ExtResource("1_371qh") +position = Vector2(-3, -55) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_gt45i"] +script = ExtResource("1_371qh") +position = Vector2(73, 106) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_o1hm0") +region = Rect2(4161, 149, 188, 237) + +[resource] +resource_name = "LeafNA1" +script = ExtResource("2_gt45i") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_gt45i") +attaches = Array[ExtResource("1_371qh")]([SubResource("Resource_371qh")]) diff --git a/entities/plants/resources/plant_parts/LeafNA2.tres b/entities/plants/resources/plant_parts/LeafNA2.tres new file mode 100644 index 0000000..e69fb93 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNA2.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cv23vy5w5i3iy"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_fyur3"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_3er6t"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_mox5u"] + +[sub_resource type="Resource" id="Resource_nrlh2"] +script = ExtResource("1_fyur3") +position = Vector2(-60, -72) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_jkvgm"] +script = ExtResource("1_fyur3") +position = Vector2(-163, 120) +attach_types = Array[int]([1, 3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_mox5u") +region = Rect2(4346, 8, 361, 285) + +[resource] +resource_name = "LeafNA2" +script = ExtResource("2_3er6t") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_jkvgm") +attaches = Array[ExtResource("1_fyur3")]([SubResource("Resource_nrlh2")]) diff --git a/entities/plants/resources/plant_parts/LeafNA3.tres b/entities/plants/resources/plant_parts/LeafNA3.tres new file mode 100644 index 0000000..a87bc30 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNA3.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c85k4e0rio0cs"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_o8en8"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_87yak"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_c2a73"] + +[sub_resource type="Resource" id="Resource_p8ero"] +script = ExtResource("1_o8en8") +position = Vector2(-11, -46) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_er4mv"] +script = ExtResource("1_o8en8") +position = Vector2(-118, -96) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_qkjvh"] +script = ExtResource("1_o8en8") +position = Vector2(-116, 144) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_c2a73") +region = Rect2(4690, 691, 449, 367) + +[resource] +resource_name = "LeafNA3" +script = ExtResource("2_87yak") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_qkjvh") +attaches = Array[ExtResource("1_o8en8")]([SubResource("Resource_p8ero"), SubResource("Resource_er4mv")]) diff --git a/entities/plants/resources/plant_parts/LeafNA4.tres b/entities/plants/resources/plant_parts/LeafNA4.tres new file mode 100644 index 0000000..5366a20 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNA4.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cqbwlfnxg7a83"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_cmrr1"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_gi1b5"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_1d0yn"] + +[sub_resource type="Resource" id="Resource_5jqbs"] +script = ExtResource("1_cmrr1") +position = Vector2(-61, -14) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_4yh8a"] +script = ExtResource("1_cmrr1") +position = Vector2(-30, -136) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_dl167"] +script = ExtResource("1_cmrr1") +position = Vector2(-164, 180) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_1d0yn") +region = Rect2(5151, 599, 360, 412) + +[resource] +resource_name = "LeafNA4" +script = ExtResource("2_gi1b5") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_dl167") +attaches = Array[ExtResource("1_cmrr1")]([SubResource("Resource_5jqbs"), SubResource("Resource_4yh8a")]) diff --git a/entities/plants/resources/plant_parts/LeafNA5.tres b/entities/plants/resources/plant_parts/LeafNA5.tres new file mode 100644 index 0000000..64b7d33 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNA5.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d1o0tp1cc6gga"] + +[ext_resource type="Script" uid="uid://co46ywm8bgnfh" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_bn51r"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_c38a1"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_rcnf6"] + +[sub_resource type="Resource" id="Resource_v68q3"] +script = ExtResource("1_bn51r") +position = Vector2(-13, -70) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_3n6ik"] +script = ExtResource("1_bn51r") +position = Vector2(-138, -90) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_f4fb8"] +script = ExtResource("1_bn51r") +position = Vector2(-116, 122) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_rcnf6") +region = Rect2(4666, 1096, 457, 302) + +[resource] +resource_name = "LeafNA5" +script = ExtResource("2_c38a1") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_f4fb8") +attaches = Array[ExtResource("1_bn51r")]([SubResource("Resource_v68q3"), SubResource("Resource_3n6ik")]) diff --git a/entities/plants/resources/plant_parts/LeafNB1.tres b/entities/plants/resources/plant_parts/LeafNB1.tres new file mode 100644 index 0000000..724284f --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNB1.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bs77uhxadwijb"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_w2s7y"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_7acmt"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_vlerk"] + +[sub_resource type="Resource" id="Resource_pnjp6"] +script = ExtResource("1_w2s7y") +position = Vector2(-7, -55) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_2vffv"] +script = ExtResource("1_w2s7y") +position = Vector2(71, 105) +attach_types = Array[int]([3]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_vlerk") +region = Rect2(4222, 504, 180, 236) + +[resource] +resource_name = "LeafNB1" +script = ExtResource("2_7acmt") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_2vffv") +attaches = Array[ExtResource("1_w2s7y")]([SubResource("Resource_pnjp6")]) diff --git a/entities/plants/resources/plant_parts/LeafNB2.tres b/entities/plants/resources/plant_parts/LeafNB2.tres new file mode 100644 index 0000000..82d6daa --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNB2.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dgqfyo8jwqqhl"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_htc18"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_u4f5u"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_ik1rr"] + +[sub_resource type="Resource" id="Resource_4pyac"] +script = ExtResource("1_htc18") +position = Vector2(-64, -75) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_3pc5l"] +script = ExtResource("1_htc18") +position = Vector2(-168, 119) +attach_types = Array[int]([3, 1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_ik1rr") +region = Rect2(4404, 367, 365, 279) + +[resource] +resource_name = "LeafNB2" +script = ExtResource("2_u4f5u") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_3pc5l") +attaches = Array[ExtResource("1_htc18")]([SubResource("Resource_4pyac")]) diff --git a/entities/plants/resources/plant_parts/LeafNB3.tres b/entities/plants/resources/plant_parts/LeafNB3.tres new file mode 100644 index 0000000..29d8d50 --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNB3.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b2wlr07ekp0m0"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_4dfev"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_q2jre"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_1wssb"] + +[sub_resource type="Resource" id="Resource_4dfev"] +script = ExtResource("1_4dfev") +position = Vector2(-26, -67) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_q2jre"] +script = ExtResource("1_4dfev") +position = Vector2(-138, -95) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_1wssb"] +script = ExtResource("1_4dfev") +position = Vector2(-128, 125) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_1wssb") +region = Rect2(4703, 1443, 433, 313) + +[resource] +resource_name = "LeafNB3" +script = ExtResource("2_q2jre") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_1wssb") +attaches = Array[ExtResource("1_4dfev")]([SubResource("Resource_4dfev"), SubResource("Resource_q2jre")]) diff --git a/entities/plants/resources/plant_parts/LeafNB4.tres b/entities/plants/resources/plant_parts/LeafNB4.tres new file mode 100644 index 0000000..c60d44b --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNB4.tres @@ -0,0 +1,27 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cp6sxbvm7qac"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_7suvu"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_tsuqs"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_68ui2"] + +[sub_resource type="Resource" id="Resource_co0rx"] +script = ExtResource("1_7suvu") +position = Vector2(-41, -112) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_yrbwj"] +script = ExtResource("1_7suvu") +position = Vector2(-159, 163) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_68ui2") +region = Rect2(5144, 1276, 365, 364) + +[resource] +resource_name = "LeafNB4" +script = ExtResource("2_tsuqs") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_yrbwj") +attaches = Array[ExtResource("1_7suvu")]([SubResource("Resource_co0rx")]) diff --git a/entities/plants/resources/plant_parts/LeafNB5.tres b/entities/plants/resources/plant_parts/LeafNB5.tres new file mode 100644 index 0000000..74ee0db --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNB5.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cxb167o4fuyhf"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_p5obd"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_cy65v"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_gwupf"] + +[sub_resource type="Resource" id="Resource_tdunt"] +script = ExtResource("1_p5obd") +position = Vector2(-26, -67) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_2ab2p"] +script = ExtResource("1_p5obd") +position = Vector2(-144, -105) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_saalb"] +script = ExtResource("1_p5obd") +position = Vector2(-128, 125) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_gwupf") +region = Rect2(4667, 1827, 493, 348) + +[resource] +resource_name = "LeafNB5" +script = ExtResource("2_cy65v") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_saalb") +attaches = Array[ExtResource("1_p5obd")]([SubResource("Resource_tdunt"), SubResource("Resource_2ab2p")]) diff --git a/entities/plants/resources/plant_parts/LeafNB6.tres b/entities/plants/resources/plant_parts/LeafNB6.tres new file mode 100644 index 0000000..98d0a1a --- /dev/null +++ b/entities/plants/resources/plant_parts/LeafNB6.tres @@ -0,0 +1,32 @@ +[gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ll3uy340j500"] + +[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_attach.gd" id="1_m8rqr"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="2_dt0x6"] +[ext_resource type="Texture2D" uid="uid://bdwmandgxrjgn" path="res://entities/plants/assets/sprites/asset_plantes.png" id="3_1gtod"] + +[sub_resource type="Resource" id="Resource_y4ipx"] +script = ExtResource("1_m8rqr") +position = Vector2(-26, -67) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_n8ea5"] +script = ExtResource("1_m8rqr") +position = Vector2(-144, -105) +attach_types = Array[int]([2]) + +[sub_resource type="Resource" id="Resource_lwvkm"] +script = ExtResource("1_m8rqr") +position = Vector2(-128, 125) +attach_types = Array[int]([1]) + +[sub_resource type="AtlasTexture" id="AtlasTexture_yh7e0"] +atlas = ExtResource("3_1gtod") +region = Rect2(4667, 1827, 493, 348) + +[resource] +resource_name = "LeafNB6" +script = ExtResource("2_dt0x6") +texture = SubResource("AtlasTexture_yh7e0") +type = 2 +root = SubResource("Resource_lwvkm") +attaches = Array[ExtResource("1_m8rqr")]([SubResource("Resource_y4ipx"), SubResource("Resource_n8ea5")]) diff --git a/entities/plants/scripts/plant.gd b/entities/plants/scripts/plant.gd index 4a3dfb1..45459d1 100644 --- a/entities/plants/scripts/plant.gd +++ b/entities/plants/scripts/plant.gd @@ -2,16 +2,16 @@ extends InspectableEntity class_name Plant const PLANT_AREA_RADIUS = 20 -const PLANT_INFLUENCE_RADIUS = 100 const HARVESTED_SEED_DISPLACEMENT_FACTOR = 100 const RANDOM_MAX_GROW_INTERVAL = Region.MIN_PASS_DAY_ANIMATION_TIME/2. - 0.1 const PLANT_TYPE_ICON = preload("res://common/icons/seedling.svg") -const PLANT_POINT_ICON = preload("res://common/icons/growth.svg") -const LIFETIME_ICON = preload("res://common/icons/calendar-week.svg") +const SCORE_ICON = preload("res://common/icons/growth.svg") +const DURATION_ICON = preload("res://common/icons/calendar-week.svg") const SHOVEL_ICON = preload("res://common/icons/shovel.svg") const GROWING_ICON = preload("res://common/icons/chevrons-up.svg") -const DEATH_ICON = preload("res://common/icons/skull.svg") +const LIFETIME_ICON= preload("res://common/icons/clock.svg") +const SEED_ICON = preload("res://common/icons/seeds.svg") const SPRITE_SCENE : PackedScene = preload("res://entities/plants/plant_sprite.tscn") @@ -34,16 +34,27 @@ func _ready(): influence_zone = generate_influence_zone() plant_sprite.setup_plant_sprite(data) + if region: + region.data.updated.connect( + func (_d : RegionData): + await get_tree().create_timer(0.05).timeout + update_nearby_plant() + update_decontamination_area_factor() + ) + await get_tree().create_timer(0.05).timeout + update_nearby_plant() + update_decontamination_area_factor() func pointer_text() -> String: return data.plant_name func inspect(is_inspected : bool = true): - plant_sprite.modulate = MODULATE_INSPECTED_COLOR if is_inspected else default_modulate + plant_sprite.sprite_modulate = MODULATE_INSPECTED_COLOR if is_inspected else default_modulate + plant_sprite.display_lifetime_sprite = is_inspected influence_zone.show_influence = is_inspected func affect_preview(is_affected : bool = true): - plant_sprite.modulate = MODULATE_AFFECTED_COLOR if is_affected else default_modulate + plant_sprite.sprite_modulate = MODULATE_AFFECTED_COLOR if is_affected else default_modulate func generate_sprite() -> PlantSprite: var sprite_object : PlantSprite = SPRITE_SCENE.instantiate() @@ -64,7 +75,7 @@ func generate_collision_shape() -> CollisionShape2D: return collision func generate_influence_zone() -> PlantInfluenceZone: - var zone = PlantInfluenceZone.new(PLANT_INFLUENCE_RADIUS) + var zone = PlantInfluenceZone.new(data.get_influence_radius()) add_child(zone) @@ -133,16 +144,44 @@ func disappear(): data.disappear() queue_free() +func update_nearby_plant(): + data.nearby_plants = [] + for area in influence_zone.get_overlapping_areas(): + if area is Plant and area != self: + data.nearby_plants.append(area.data) + + data.nearby_plant_updated.emit() + +func update_decontamination_area_factor(): + if not region: + return + + var factor = 0. + var full_decontaminated = true + + var tiles = Math.get_tiles_in_circle(global_position, influence_zone.radius + Region.TILE_SIZE/2.) + for tile : Vector2i in tiles: + if region.is_coords_decontaminated([tile]): + factor += 1./len(tiles) + else : + full_decontaminated = false + + if full_decontaminated: + data.decontamination_area_factor = 1. + else: + data.decontamination_area_factor = factor + + func save() -> EntityData: return data func card_info() -> CardInfo: var info = CardInfo.new( data.plant_name, - data.archetype.archetype_name + tr("MATURE") if data.is_mature() else tr("JUVENILE") ) - info.important_stat_icon = PLANT_POINT_ICON + info.important_stat_icon = SCORE_ICON info.important_stat_text = "%d" % calculate_plant_score() info.type_icon = PLANT_TYPE_ICON @@ -150,7 +189,7 @@ func card_info() -> CardInfo: info.stats.append_array([ CardStatInfo.new( str(data.day), - LIFETIME_ICON + DURATION_ICON ), CardStatInfo.new( str(data.get_growing_time()), @@ -158,7 +197,14 @@ func card_info() -> CardInfo: ), CardStatInfo.new( str(data.get_lifetime()), - DEATH_ICON + LIFETIME_ICON + ), + CardStatInfo.new( + "%d-%d" % [ + data.get_seed_number(PlantData.State.MATURE) - data.get_seed_random_loose(), + data.get_seed_number(PlantData.State.MATURE) + ], + SEED_ICON ), ]) @@ -176,4 +222,4 @@ func get_card_up_padding() -> float: return 75 PlantData.State.PLANTED: return 50 - return Pointer.CARD_UP_PADDING \ No newline at end of file + return Pointer.CARD_UP_PADDING diff --git a/entities/plants/scripts/plant_archetype.gd b/entities/plants/scripts/plant_archetype.gd deleted file mode 100644 index 4cd6591..0000000 --- a/entities/plants/scripts/plant_archetype.gd +++ /dev/null @@ -1,26 +0,0 @@ -extends Resource -class_name PlantArchetype - -@export var archetype_name := Random.generate_random_word() -@export var plant_area_radius = 20 -@export var plant_influence_radius = 100 -@export var growing_time = 2 -@export var lifetime = 8 -@export var base_score = 1 -@export var seed_number = 2 -@export var seed_random_loose = 1 -@export var available_mutations: Array[PlantMutation] = [ - AncientMutation.new(), - EphemeralMutation.new(), - FertileMutation.new(), - PurificationMutation.new(), - QuickMutation.new(), - SocialMutation.new(), - ToughMutation.new() -] - -static func get_all() -> Array[PlantArchetype]: - return [PlantArchetype.new()] - -static func get_random() -> PlantArchetype: - return get_all().pick_random() diff --git a/entities/plants/scripts/plant_archetype.gd.uid b/entities/plants/scripts/plant_archetype.gd.uid deleted file mode 100644 index 40ee452..0000000 --- a/entities/plants/scripts/plant_archetype.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://chdj832c0rrky diff --git a/entities/plants/scripts/plant_data.gd b/entities/plants/scripts/plant_data.gd index 33f1346..8fca210 100644 --- a/entities/plants/scripts/plant_data.gd +++ b/entities/plants/scripts/plant_data.gd @@ -3,10 +3,10 @@ class_name PlantData signal updated(p: PlantData) signal disappeared(p: PlantData) +signal nearby_plant_updated() enum State {PLANTED, GROWING, MATURE, DEAD} -@export var archetype: PlantArchetype @export var plant_name: String @export var mutations: Array[PlantMutation] @export var day: int: @@ -15,21 +15,17 @@ enum State {PLANTED, GROWING, MATURE, DEAD} updated.emit(self ) @export var random_seed: int -@export var leafs = 0 # +1 score -@export var roots = 0 # +1 lifetime - -# var texture_builder: TextureBuilder = preload("res://entities/plants/scripts/texture_builder/texture_builder.tres") +var decontamination_area_factor = 0. +var nearby_plants : Array[PlantData] func _init( _position: Vector2 = Vector2.ZERO, - _archetype: PlantArchetype = PlantArchetype.get_random(), _plant_name: String = Random.generate_random_word(), _mutations: Array[PlantMutation] = [], _day: int = 0, _random_seed = randi() ): position = _position - archetype = _archetype plant_name = _plant_name mutations = _mutations day = _day @@ -41,11 +37,13 @@ func _init( static func generate_from_seed(plant_seed: Seed, plant_position: Vector2) -> PlantData: return PlantData.new( plant_position, - plant_seed.plant_archetype, plant_seed.plant_name, plant_seed.plant_mutations ) +func get_plant_info() -> RunDataPlantInfo: + return GameInfo.game_data.current_run.plant_info + func load_entity() -> Entity: var plant = Plant.new( self @@ -53,15 +51,18 @@ func load_entity() -> Entity: return plant func get_lifetime() -> int: - var lifetime = archetype.lifetime + roots + var lifetime = get_plant_info().get_lifetime() for m in mutations: lifetime = m.mutate_lifetime(self , lifetime) - + + for pd in nearby_plants: + lifetime += pd.get_lifetime_buff() + return lifetime func get_growing_time() -> int: - var growing_time = archetype.growing_time + var growing_time = get_plant_info().get_growing_time() for m in mutations: growing_time = m.mutate_growing_time(self , growing_time) @@ -69,7 +70,7 @@ func get_growing_time() -> int: return growing_time func get_score(state: State = get_state()) -> int: - var score = archetype.base_score + leafs if state == State.MATURE else 0 + var score = get_plant_info().get_base_score() if state == State.MATURE else 0 var mult := 1 @@ -77,37 +78,74 @@ func get_score(state: State = get_state()) -> int: score = m.mutate_score(self , score) mult = m.mutate_score_multiplier(self , mult) - return score * mult + for pd in nearby_plants: + score += pd.get_score_buff() + + return max(0,score) * max(0,mult) func get_state() -> State: if day >= get_lifetime(): return State.DEAD elif day == 0: return State.PLANTED - elif day < archetype.growing_time: + elif day < get_growing_time(): return State.GROWING return State.MATURE +func is_mature() -> bool: + return get_state() == State.MATURE + func get_seed_number(state = get_state()): - var seed_number = archetype.seed_number if (state == State.MATURE or state == State.DEAD) else 0 + var seed_number = get_plant_info().get_seed_number() if (state == State.MATURE or state == State.DEAD) else 0 for m in mutations: seed_number = m.mutate_seed_number(self , seed_number) + for pd in nearby_plants: + seed_number += pd.get_seed_buff() + return seed_number func get_seed_random_loose(): - var seed_random_loose = archetype.seed_random_loose + var seed_random_loose = get_plant_info().get_seed_random_loose() for m in mutations: seed_random_loose = m.mutate_seed_random_loose(self , seed_random_loose) return seed_random_loose +func get_influence_radius(): + return get_plant_info().get_influence_radius() + func get_random_seed_income(): return max( get_seed_number() - randi_range(0, get_seed_random_loose()), 0 ) +func get_lifetime_buff() -> int: + var buff = 0 + + for m in mutations: + buff = m.mutate_lifetime_buff(self, buff) + + return buff + +func get_seed_buff() -> int: + var buff = 0 + + for m in mutations: + buff = m.mutate_seed_buff(self, buff) + + return buff + +func get_score_buff() -> int: + var buff = 0 + + for m in mutations: + buff = m.mutate_score_buff(self, buff) + + return buff + + func disappear(): disappeared.emit(self ) diff --git a/entities/plants/scripts/plant_influence_zone.gd b/entities/plants/scripts/plant_influence_zone.gd index c6f870f..a9959c5 100644 --- a/entities/plants/scripts/plant_influence_zone.gd +++ b/entities/plants/scripts/plant_influence_zone.gd @@ -16,7 +16,7 @@ func _init(_radius = 100): func _ready(): sprite = Circle.new() # sprite.z_index = 100 - sprite.radius = 100 + sprite.radius = radius sprite.fill = false sprite.width = 1 sprite.opacity = 0.5 diff --git a/entities/plants/scripts/plant_mutation.gd b/entities/plants/scripts/plant_mutation.gd index 020f0cd..ff17f7e 100644 --- a/entities/plants/scripts/plant_mutation.gd +++ b/entities/plants/scripts/plant_mutation.gd @@ -1,3 +1,4 @@ +@abstract extends Resource class_name PlantMutation @@ -15,17 +16,12 @@ func get_icon() -> Texture: func get_base_rarity() -> int: return 0 -func get_mutation_id() -> String: - printerr("Classe abstraite PlantMutation appelée") - return "" +@abstract func get_mutation_id() -> String func get_mutation_name() -> String: - printerr("Classe abstraite PlantMutation appelée") - return "" + return tr(get_mutation_id()) -func get_mutation_description() -> String: - printerr("Classe abstraite PlantMutation appelée") - return "" +@abstract func get_mutation_description() -> String func mutate_plant_data(_plant_data: PlantData): pass @@ -42,12 +38,21 @@ func mutate_lifetime(_plant_data: PlantData, lifetime: int) -> int: func mutate_growing_time(_plant_data: PlantData, growing_time: int) -> int: return growing_time -func mutate_seed_number(_plant_data: PlantData, seed_number: int): +func mutate_seed_number(_plant_data: PlantData, seed_number: int) -> int: return seed_number -func mutate_seed_random_loose(_plant_data: PlantData, seed_random_loose): +func mutate_seed_random_loose(_plant_data: PlantData, seed_random_loose) -> int: return seed_random_loose +func mutate_lifetime_buff(_plant_data: PlantData, lifetime_buff : int) -> int: + return lifetime_buff + +func mutate_seed_buff(_plant_data: PlantData, seed_buff : int) -> int: + return seed_buff + +func mutate_score_buff(_plant_data: PlantData, score_buff : int) -> int: + return score_buff + func _start_planted_effect(_plant: Plant): pass @@ -72,7 +77,7 @@ func get_rarity() -> int: func card_section() -> CardSectionInfo: var section = CardSectionInfo.new( get_mutation_name() + (" %d" % level if level > 1 else ""), - "[b]%s[/b] %s" % [tr(PlantMutation.get_rarity_text(get_rarity())), get_mutation_description()] + get_mutation_description() ) section.color = PlantMutation.get_rarity_color(get_rarity()) @@ -102,4 +107,4 @@ static func get_rarity_color(rarity: int) -> Color: Color("FFA617"), ] - return rarity_colors[min(rarity, len(rarity_colors) - 1)] + return rarity_colors[min(rarity, len(rarity_colors) - 1)%len(rarity_colors)] \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/ancient_mutation.gd b/entities/plants/scripts/plant_mutation/ancient_mutation.gd index e758ede..4ae3a66 100644 --- a/entities/plants/scripts/plant_mutation/ancient_mutation.gd +++ b/entities/plants/scripts/plant_mutation/ancient_mutation.gd @@ -1,14 +1,11 @@ extends PlantMutation class_name AncientMutation -const DEFAULT_DAY_FACTOR = 3 +const DEFAULT_DAY_FACTOR = 4 func get_icon() -> Texture: return preload("res://common/icons/wood.svg") -func get_base_rarity() -> int: - return 0 - func get_mutation_id() -> String: return "ANCIENT" @@ -16,10 +13,20 @@ func get_mutation_name() -> String: return tr("ANCIENT") func get_mutation_description() -> String: - return tr("ANCIENT_EFFECT_TEXT_LEVEL_%d") % get_day_factor() + return tr("ANCIENT_EFFECT_TEXT").format( + { + "score_increase": get_score_increase(), + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON), + "day_factor": get_day_factor(), + "duration_icon": Text.bbcode_icon(Plant.DURATION_ICON), + } + ) func get_day_factor(): - return max(1, DEFAULT_DAY_FACTOR - level + 1) + return max(1, DEFAULT_DAY_FACTOR - level) + +func get_score_increase(): + return max(1, level - DEFAULT_DAY_FACTOR + 1) func mutate_score(data : PlantData, score) -> int: if data.get_state() != PlantData.State.MATURE: diff --git a/entities/plants/scripts/plant_mutation/ephemeral_mutation.gd b/entities/plants/scripts/plant_mutation/ephemeral_mutation.gd deleted file mode 100644 index e0ce298..0000000 --- a/entities/plants/scripts/plant_mutation/ephemeral_mutation.gd +++ /dev/null @@ -1,29 +0,0 @@ -extends PlantMutation -class_name EphemeralMutation - -func get_icon() -> Texture: - return preload("res://common/icons/chevrons-up.svg") - -func get_base_rarity() -> int: - return 0 - -func get_mutation_id() -> String: - return "EPHEMERAL" - -func get_mutation_name() -> String: - return tr("EPHEMERAL") - -func get_mutation_description() -> String: - return tr("EPHEMERAL_EFFECT_TEXT_LEVEL").format({"seed_number": level, "lifetime_change": get_lifetime_change()}) - -func mutate_lifetime(_plant_data: PlantData, lifetime: int) -> int: - return lifetime - get_lifetime_change() - -func mutate_seed_number(_plant_data: PlantData, seed_number: int): - return seed_number + level - -func get_seed_increase() -> int: - return floori((level + 1.0) / 2) - -func get_lifetime_change() -> int: - return maxi(0, 6 - get_seed_increase()) diff --git a/entities/plants/scripts/plant_mutation/ephemeral_mutation.gd.uid b/entities/plants/scripts/plant_mutation/ephemeral_mutation.gd.uid deleted file mode 100644 index b44f704..0000000 --- a/entities/plants/scripts/plant_mutation/ephemeral_mutation.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://bmo42h1p554nv diff --git a/entities/plants/scripts/plant_mutation/fertile_mutation.gd b/entities/plants/scripts/plant_mutation/fertile_mutation.gd index ebd38d7..1896d17 100644 --- a/entities/plants/scripts/plant_mutation/fertile_mutation.gd +++ b/entities/plants/scripts/plant_mutation/fertile_mutation.gd @@ -2,10 +2,10 @@ extends PlantMutation class_name FertileMutation func get_icon() -> Texture: - return preload("res://common/icons/chevrons-up.svg") + return preload("res://common/icons/seedling.svg") func get_base_rarity() -> int: - return 0 + return 1 func get_mutation_id() -> String: return "FERTILE" @@ -14,8 +14,21 @@ func get_mutation_name() -> String: return tr("FERTILE") func get_mutation_description() -> String: - return tr("FERTILE_EFFECT_TEXT_LEVEL_%d") % level + return tr("FERTILE_EFFECT_TEXT").format({ + "seed_buff": get_seed_buff(), + "seed_icon": Text.bbcode_icon(Plant.SEED_ICON), + "score_change": get_score_change(), + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON), + }) -func mutate_lifetime(_plant_data : PlantData, lifetime : int) -> int: - print("TODO:: Implemnt FERTILE lifetime based on plants around") - return lifetime + level +func mutate_seed_buff(_plant_data: PlantData, seed_buff) -> int: + return seed_buff + get_seed_buff() + +func mutate_score(_plant_data: PlantData, score: int) -> int: + return score + get_score_change() + +func get_seed_buff(): + return level + +func get_score_change(): + return -1 \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/generous_mutation.gd b/entities/plants/scripts/plant_mutation/generous_mutation.gd new file mode 100644 index 0000000..c8d0eea --- /dev/null +++ b/entities/plants/scripts/plant_mutation/generous_mutation.gd @@ -0,0 +1,28 @@ +extends PlantMutation +class_name GenerousMutation + +func get_icon() -> Texture: + return preload("res://common/icons/carambola.svg") + +func get_base_rarity() -> int: + return 1 + +func get_mutation_id() -> String: + return "GENEROUS" + +func get_mutation_description() -> String: + return tr("GENEROUS_EFFECT_TEXT").format({ + "score_buff": get_score_buff(), + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON) + }) + +func mutate_score_multiplier(plant_data: PlantData, multiplier: int) -> int: + return multiplier - 1 + +func mutate_score_buff(plant_data: PlantData, score_buff : int) -> int: + if plant_data.get_state() == PlantData.State.MATURE: + return score_buff + get_score_buff() + return score_buff + +func get_score_buff(): + return level \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/generous_mutation.gd.uid b/entities/plants/scripts/plant_mutation/generous_mutation.gd.uid new file mode 100644 index 0000000..5e4e9b1 --- /dev/null +++ b/entities/plants/scripts/plant_mutation/generous_mutation.gd.uid @@ -0,0 +1 @@ +uid://7bfgsrkp6gaq diff --git a/entities/plants/scripts/plant_mutation/hurried_mutation.gd b/entities/plants/scripts/plant_mutation/hurried_mutation.gd new file mode 100644 index 0000000..ff9df01 --- /dev/null +++ b/entities/plants/scripts/plant_mutation/hurried_mutation.gd @@ -0,0 +1,23 @@ +extends PlantMutation +class_name HurriedMutation + +func get_icon() -> Texture: + return preload("res://common/icons/chevrons-up.svg") + +func get_base_rarity() -> int: + return 1 + +func get_mutation_id() -> String: + return "HURRIED" + +func get_mutation_description() -> String: + return tr("HURRIED_EFFECT_TEXT").format({ + "growing_time_change": get_growing_time_change(), + "growing_time_icon": Text.bbcode_icon(Plant.GROWING_ICON) + }) + +func mutate_growing_time(_plant_data: PlantData, growing_time: int) -> int: + return growing_time + get_growing_time_change() + +func get_growing_time_change(): + return -level \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/hurried_mutation.gd.uid b/entities/plants/scripts/plant_mutation/hurried_mutation.gd.uid new file mode 100644 index 0000000..c19630f --- /dev/null +++ b/entities/plants/scripts/plant_mutation/hurried_mutation.gd.uid @@ -0,0 +1 @@ +uid://ch44r5vkwpkwc diff --git a/entities/plants/scripts/plant_mutation/precocious_mutation.gd b/entities/plants/scripts/plant_mutation/precocious_mutation.gd index cbe67d6..a37c3a6 100644 --- a/entities/plants/scripts/plant_mutation/precocious_mutation.gd +++ b/entities/plants/scripts/plant_mutation/precocious_mutation.gd @@ -2,10 +2,7 @@ extends PlantMutation class_name PrecociousMutation func get_icon() -> Texture: - return preload("res://common/icons/hourglass-empty.svg") - -func get_base_rarity() -> int: - return 0 + return preload("res://common/icons/rocket.svg") func get_mutation_id() -> String: return "PRECOCIOUS" @@ -14,7 +11,13 @@ func get_mutation_name() -> String: return tr("PRECOCIOUS") func get_mutation_description() -> String: - return tr("PRECOCIOUS_EFFECT_TEXT_LEVEL_%d") % level + return tr("PRECOCIOUS_EFFECT_TEXT").format({ + "score": get_score(), + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON) + }) func mutate_score(data : PlantData, score : int) -> int: - return score + (0 if data.get_state() == PlantData.State.MATURE else level) \ No newline at end of file + return score + (0 if data.get_state() == PlantData.State.MATURE else get_score()) + +func get_score(): + return level \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/prolific_mutation.gd b/entities/plants/scripts/plant_mutation/prolific_mutation.gd new file mode 100644 index 0000000..376849c --- /dev/null +++ b/entities/plants/scripts/plant_mutation/prolific_mutation.gd @@ -0,0 +1,20 @@ +extends PlantMutation +class_name ProlificMutation + +func get_icon() -> Texture: + return preload("res://common/icons/droplets.svg") + +func get_mutation_id() -> String: + return "PROLIFIC" + +func get_mutation_description() -> String: + return tr("PROLIFIC_EFFECT_TEXT").format({ + "seeds_change": get_seed_change(), + "seeds_icon": Text.bbcode_icon(Plant.SEED_ICON) + }) + +func mutate_seed_number(_plant_data: PlantData, seed_number: int) -> int: + return get_seed_change() + seed_number + +func get_seed_change(): + return level \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/prolific_mutation.gd.uid b/entities/plants/scripts/plant_mutation/prolific_mutation.gd.uid new file mode 100644 index 0000000..2102a7e --- /dev/null +++ b/entities/plants/scripts/plant_mutation/prolific_mutation.gd.uid @@ -0,0 +1 @@ +uid://csk5xull465m3 diff --git a/entities/plants/scripts/plant_mutation/protective_mutation.gd b/entities/plants/scripts/plant_mutation/protective_mutation.gd new file mode 100644 index 0000000..b1977be --- /dev/null +++ b/entities/plants/scripts/plant_mutation/protective_mutation.gd @@ -0,0 +1,20 @@ +extends PlantMutation +class_name ProtectiveMutation + +func get_icon() -> Texture: + return preload("res://common/icons/tree.svg") + +func get_mutation_id() -> String: + return "PROTECTIVE" + +func get_mutation_description() -> String: + return tr("PROTECTIVE_EFFECT_TEXT").format({ + "lifetime_buff": get_lifetime_buff(), + "lifetime_icon": Text.bbcode_icon(Plant.LIFETIME_ICON) + }) + +func mutate_lifetime_buff(_plant_data: PlantData, lifetime_buff : int) -> int: + return lifetime_buff + get_lifetime_buff() + +func get_lifetime_buff(): + return level \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/protective_mutation.gd.uid b/entities/plants/scripts/plant_mutation/protective_mutation.gd.uid new file mode 100644 index 0000000..0bcd858 --- /dev/null +++ b/entities/plants/scripts/plant_mutation/protective_mutation.gd.uid @@ -0,0 +1 @@ +uid://b5nc8f0gnalxu diff --git a/entities/plants/scripts/plant_mutation/pure_mutation.gd b/entities/plants/scripts/plant_mutation/pure_mutation.gd new file mode 100644 index 0000000..e91bf61 --- /dev/null +++ b/entities/plants/scripts/plant_mutation/pure_mutation.gd @@ -0,0 +1,25 @@ +extends PlantMutation +class_name PureMutation + +func get_icon() -> Texture: + return preload("res://common/icons/north-star.svg") + +func get_mutation_id() -> String: + return "PURE" + +func get_base_rarity() -> int: + return 1 + +func get_mutation_description() -> String: + return tr("PURE_EFFECT_TEXT").format({ + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON), + "score_multiplier": get_score_multiplier() + 1, + }) + +func mutate_score_multiplier(plant_data: PlantData, multiplier: int) -> int: + if plant_data.decontamination_area_factor == 1.0: + return multiplier + get_score_multiplier() + return multiplier + +func get_score_multiplier()->int: + return level diff --git a/entities/plants/scripts/plant_mutation/pure_mutation.gd.uid b/entities/plants/scripts/plant_mutation/pure_mutation.gd.uid new file mode 100644 index 0000000..5fab5dd --- /dev/null +++ b/entities/plants/scripts/plant_mutation/pure_mutation.gd.uid @@ -0,0 +1 @@ +uid://dh5m6tvkewad6 diff --git a/entities/plants/scripts/plant_mutation/purification_mutation.gd b/entities/plants/scripts/plant_mutation/purification_mutation.gd index a0d98be..49de17d 100644 --- a/entities/plants/scripts/plant_mutation/purification_mutation.gd +++ b/entities/plants/scripts/plant_mutation/purification_mutation.gd @@ -2,10 +2,7 @@ extends PlantMutation class_name PurificationMutation func get_icon() -> Texture: - return preload("res://common/icons/chevrons-up.svg") - -func get_base_rarity() -> int: - return 0 + return preload("res://common/icons/droplet.svg") func get_mutation_id() -> String: return "PURIFICATION" @@ -14,11 +11,16 @@ func get_mutation_name() -> String: return tr("PURIFICATION") func get_mutation_description() -> String: - return tr("PURIFICATION_EFFECT_TEXT_LEVEL_%d") % get_purification_radius() + return tr("PURIFICATION_EFFECT_TEXT").format({ + "purification_radius": get_purification_radius() + }) + +func _start_maturation_effect(plant : Plant): + plant.region.decontaminate(Math.get_tiles_in_circle( + plant.global_position, + get_purification_radius() * (Region.TILE_SIZE + Region.TILE_SIZE/2.) + )) -func _start_maturation_effect(_plant : Plant): - print("Implement purification maturation effect") - pass func get_purification_radius() -> int: - return level + return level * 2 diff --git a/entities/plants/scripts/plant_mutation/quality_mutation.gd b/entities/plants/scripts/plant_mutation/quality_mutation.gd index 07a28bf..37d200e 100644 --- a/entities/plants/scripts/plant_mutation/quality_mutation.gd +++ b/entities/plants/scripts/plant_mutation/quality_mutation.gd @@ -2,19 +2,19 @@ extends PlantMutation class_name QualityMutation func get_icon() -> Texture: - return preload("res://common/icons/north-star.svg") - -func get_base_rarity() -> int: - return 0 + return preload("res://common/icons/growth.svg") func get_mutation_id() -> String: return "QUALITY" -func get_mutation_name() -> String: - return tr("QUALITY") - func get_mutation_description() -> String: - return tr("QUALITY_EFFECT_TEXT_LEVEL_%d") % level + return tr("QUALITY_EFFECT_TEXT").format({ + "score": get_score(), + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON) + }) func mutate_score(data : PlantData, score : int) -> int: - return score + (level if data.get_state() == PlantData.State.MATURE else 0) \ No newline at end of file + return score + (get_score() if data.get_state() == PlantData.State.MATURE else 0) + +func get_score(): + return level \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/quick_mutation.gd b/entities/plants/scripts/plant_mutation/quick_mutation.gd index 9bd719d..7ab2d20 100644 --- a/entities/plants/scripts/plant_mutation/quick_mutation.gd +++ b/entities/plants/scripts/plant_mutation/quick_mutation.gd @@ -2,10 +2,7 @@ extends PlantMutation class_name QuickMutation func get_icon() -> Texture: - return preload("res://common/icons/chevrons-up.svg") - -func get_base_rarity() -> int: - return 0 + return preload("res://common/icons/hourglass-empty.svg") func get_mutation_id() -> String: return "QUICK" @@ -14,16 +11,26 @@ func get_mutation_name() -> String: return tr("QUICK") func get_mutation_description() -> String: - return tr("QUICK_EFFECT_TEXT_LEVEL").format({"score_increase": get_score_increase(), "lifetime_decrease": get_lifetime_decrease()}) + return tr("QUICK_EFFECT_TEXT").format( + { + "score_increase": get_score_increase(), + "lifetime_decrease": get_lifetime_change(), + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON), + "lifetime_icon": Text.bbcode_icon(Plant.LIFETIME_ICON) + } + ) -func mutate_score(_plant_data: PlantData, score: int) -> int: - return score + level +func mutate_score(plant_data: PlantData, score: int) -> int: + if not plant_data.is_mature(): + return score + + return score + get_score_increase() func mutate_lifetime(_plant_data: PlantData, lifetime: int) -> int: - return max(lifetime - level, 1) + return max(1, lifetime+get_lifetime_change()) func get_score_increase() -> int: - return floori((level + 1.0) / 2) + return level * 2 -func get_lifetime_decrease() -> int: - return maxi(0, 6 - get_score_increase()) +func get_lifetime_change() -> int: + return -3 diff --git a/entities/plants/scripts/plant_mutation/robust_mutation.gd b/entities/plants/scripts/plant_mutation/robust_mutation.gd new file mode 100644 index 0000000..6c8ed8b --- /dev/null +++ b/entities/plants/scripts/plant_mutation/robust_mutation.gd @@ -0,0 +1,20 @@ +extends PlantMutation +class_name RobustMutation + +func get_icon() -> Texture: + return preload("res://common/icons/clock.svg") + +func get_mutation_id() -> String: + return "ROBUST" + +func get_mutation_description() -> String: + return tr("ROBUST_EFFECT_TEXT").format({ + "lifetime_change": get_lifetime_change(), + "lifetime_icon": Text.bbcode_icon(Plant.LIFETIME_ICON) + }) + +func mutate_lifetime(_plant_data: PlantData, lifetime: int) -> int: + return lifetime + get_lifetime_change() + +func get_lifetime_change(): + return level * 2 \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/robust_mutation.gd.uid b/entities/plants/scripts/plant_mutation/robust_mutation.gd.uid new file mode 100644 index 0000000..04c3ad2 --- /dev/null +++ b/entities/plants/scripts/plant_mutation/robust_mutation.gd.uid @@ -0,0 +1 @@ +uid://cjcylscs6qn4x diff --git a/entities/plants/scripts/plant_mutation/social_mutation.gd b/entities/plants/scripts/plant_mutation/social_mutation.gd index da86c24..06d09de 100644 --- a/entities/plants/scripts/plant_mutation/social_mutation.gd +++ b/entities/plants/scripts/plant_mutation/social_mutation.gd @@ -1,11 +1,10 @@ extends PlantMutation class_name SocialMutation -func get_icon() -> Texture: - return preload("res://common/icons/chevrons-up.svg") +const DEFAULT_PLANT_BY_POINT = 4 -func get_base_rarity() -> int: - return 0 +func get_icon() -> Texture: + return preload("res://common/icons/users-group.svg") func get_mutation_id() -> String: return "SOCIABLE" @@ -14,11 +13,22 @@ func get_mutation_name() -> String: return tr("SOCIABLE") func get_mutation_description() -> String: - return tr("SOCIABLE_EFFECT_TEXT_LEVEL").format({"near_amount": get_near_plants_around()}) + return tr("SOCIABLE_EFFECT_TEXT").format( + { + "near_amount": get_near_plants_around(), + "score_increase": get_score_increase(), + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON), + } + ) -func mutate_score(_plant_data: PlantData, score: int) -> int: - printerr("TODO:: implement SOCIABLE score based on plants around") - return score + level +func mutate_score(plant_data: PlantData, score: int) -> int: + if plant_data.get_state() != PlantData.State.MATURE: + return score + + return score + get_score_increase() * floori(len(plant_data.nearby_plants)/get_near_plants_around()) func get_near_plants_around(): - return 5 - level + return max(DEFAULT_PLANT_BY_POINT - level,1) + +func get_score_increase(): + return max(level + 2 - DEFAULT_PLANT_BY_POINT,1) diff --git a/entities/plants/scripts/plant_mutation/tough_mutation.gd b/entities/plants/scripts/plant_mutation/tough_mutation.gd index 5d2a1dd..e1e1c21 100644 --- a/entities/plants/scripts/plant_mutation/tough_mutation.gd +++ b/entities/plants/scripts/plant_mutation/tough_mutation.gd @@ -2,10 +2,7 @@ extends PlantMutation class_name ToughMutation func get_icon() -> Texture: - return preload("res://common/icons/chevrons-up.svg") - -func get_base_rarity() -> int: - return 0 + return preload("res://common/icons/shield.svg") func get_mutation_id() -> String: return "TOUGH" @@ -14,13 +11,21 @@ func get_mutation_name() -> String: return tr("TOUGH") func get_mutation_description() -> String: - return tr("TOUGH_EFFECT_TEXT_LEVEL_%d") % get_growing_time_increase() + return tr("TOUGH_EFFECT_TEXT").format({ + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON), + "score_multiplier": get_score_multiplier(), + "growing_time": get_growing_time_increase(), + "growing_icon": Text.bbcode_icon(Plant.GROWING_ICON) + }) func mutate_score_multiplier(_plant_data: PlantData, multiplier: int) -> int: - return multiplier * 2 + return multiplier * get_score_multiplier() func mutate_growing_time(_plant_data: PlantData, growing_time: int) -> int: - return growing_time + get_growing_time_increase() + return maxi(0, growing_time + get_growing_time_increase()) func get_growing_time_increase()->int: - return maxi(0, 3 - level) + return 4 - level + +func get_score_multiplier()->int: + return 2 diff --git a/entities/plants/scripts/plant_mutation/vivacious_mutation.gd b/entities/plants/scripts/plant_mutation/vivacious_mutation.gd new file mode 100644 index 0000000..6aeeabc --- /dev/null +++ b/entities/plants/scripts/plant_mutation/vivacious_mutation.gd @@ -0,0 +1,22 @@ +extends PlantMutation +class_name VivaciousMutation + +func get_icon() -> Texture: + return preload("res://common/icons/bolt.svg") + +func get_mutation_id() -> String: + return "VIVACIOUS" + +func get_mutation_description() -> String: + return tr("VIVACIOUS_EFFECT_TEXT").format({ + "score_change": get_score_change(), + "score_icon": Text.bbcode_icon(Plant.SCORE_ICON) + }) + +func mutate_score(data : PlantData, score : int) -> int: + if data.day == data.get_growing_time(): + return score + get_score_change() + return score + +func get_score_change(): + return level * 2 \ No newline at end of file diff --git a/entities/plants/scripts/plant_mutation/vivacious_mutation.gd.uid b/entities/plants/scripts/plant_mutation/vivacious_mutation.gd.uid new file mode 100644 index 0000000..be324da --- /dev/null +++ b/entities/plants/scripts/plant_mutation/vivacious_mutation.gd.uid @@ -0,0 +1 @@ +uid://boq38l1dmjvot diff --git a/entities/plants/scripts/plant_sprite.gd b/entities/plants/scripts/plant_sprite.gd index 0990f58..0cb5f02 100644 --- a/entities/plants/scripts/plant_sprite.gd +++ b/entities/plants/scripts/plant_sprite.gd @@ -11,7 +11,11 @@ signal harvest_animation_finished var last_updated_on_state : PlantData.State = PlantData.State.MATURE var stored_seed_image : Texture = null +var display_lifetime_sprite : bool = false : set = set_display_lifetime_sprite +var sprite_modulate : Color = Color.WHITE : set = set_sprite_modulate + func setup_plant_sprite(plant_data : PlantData): + set_display_lifetime_sprite() %PlantedSeed.texture = PlantTextureBuilder.build_seed_texture(plant_data.plant_name.hash()) update_plant_sprite(plant_data,true) @@ -25,6 +29,8 @@ func update_plant_sprite(plant_data : PlantData, with_animation = false): %PlantedSeed.visible = plant_data.get_state() == PlantData.State.PLANTED + %LifetimeProgressBar.value = 100 * (float(plant_data.day)/plant_data.get_lifetime()) + # %PlantedSeed.region_rect = Rect2( # 0, # PLANTED_SEED_POS_Y, @@ -47,3 +53,17 @@ func start_harvest_animation(): $AnimationPlayer.play("harvest") await $AnimationPlayer.animation_finished harvest_animation_finished.emit() + +func set_display_lifetime_sprite(d := display_lifetime_sprite): + display_lifetime_sprite = d + if is_node_ready(): + %LifeTimeSprite.visible = d + +func set_sprite_modulate(c := sprite_modulate): + sprite_modulate = c + if is_node_ready(): + %Sprite.modulate = c + +func _on_body_entered(body: Node2D) -> void: + if body is Player && $AnimationPlayer.current_animation != "player_move": + $AnimationPlayer.play("player_move"); diff --git a/entities/plants/scripts/texture_builder/part_assembler.gd b/entities/plants/scripts/texture_builder/part_assembler.gd index 54ea3a0..32164bb 100644 --- a/entities/plants/scripts/texture_builder/part_assembler.gd +++ b/entities/plants/scripts/texture_builder/part_assembler.gd @@ -1,7 +1,7 @@ extends Node -@export var n_to_generate: int = 5 -@export var n_per_row: int = 5 +@export var n_to_generate: int = 40 +@export var n_per_row: int = 10 @export var n_mutation_per_plant: int @export var space_between_plants: float @export var randomize_pos: bool @@ -9,20 +9,32 @@ extends Node @export var start_state: PlantData.State = PlantData.State.MATURE @export var random_state := false @export var end_state: PlantData.State = PlantData.State.MATURE +@export var min_level := 1 +@export var max_level := 1 + +@export var camera_speed := 1000.0 + +var input_dir := Vector2.ZERO func _ready(): + %Speed.value = camera_speed %ZoomLevel.value = %Camera2D.zoom.x %N.value = n_to_generate %NPerRow.value = n_per_row %NMutationsPerPlant.value = n_mutation_per_plant %RandomizePos.button_pressed = randomize_pos %RandomizeOffset.value = random_pos_offset + %toAgeLabel.visible = random_state + %EndAge.visible = random_state + %MinLvl.value = min_level + %MaxLvl.value = max_level generate_plants(); -func _input(_event) -> void: - var input_dir = Input.get_vector("move_left", "move_right", "move_up", "move_down") - %Camera2D.position += 1 / %Camera2D.zoom.x * 10 * input_dir +func _unhandled_key_input(_event) -> void: + input_dir = Input.get_vector("move_left", "move_right", "move_up", "move_down") +func _process(delta): + %Camera2D.position += 1 / %Camera2D.zoom.x * camera_speed * delta * input_dir func generate_plants(): for child in %Plants.get_children(): @@ -49,7 +61,9 @@ func generate_plants(): elif plant_state == PlantData.State.DEAD: plant_data.day = plant_data.get_lifetime() for j in n_mutation_per_plant: - plant_data.mutations.append(plant_data.archetype.available_mutations.pick_random()) + var picked_mutation: PlantMutation = GameInfo.game_data.progression_data.available_mutations.pick_random().duplicate() + picked_mutation.level = randi_range(min_level, max_level) + plant_data.mutations.append(picked_mutation) var plant: Plant = Plant.new(plant_data) print(plant.data.plant_name) %Plants.add_child(plant) @@ -108,6 +122,20 @@ func _on_start_age_value_changed(value: float) -> void: func _on_random_age_toggled(toggled_on: bool) -> void: random_state = toggled_on + %toAgeLabel.visible = toggled_on + %EndAge.visible = toggled_on func _on_end_age_value_changed(value: float) -> void: end_state = int(value) as PlantData.State + +func _on_speed_value_changed(value: float) -> void: + camera_speed = value + +func _on_reset_speed_pressed() -> void: + camera_speed = 1000 + +func _on_min_lvl_value_changed(value: float) -> void: + min_level = int(value) + +func _on_max_lvl_value_changed(value: float) -> void: + max_level = int(value) diff --git a/entities/plants/scripts/texture_builder/plant_texture_builder.gd b/entities/plants/scripts/texture_builder/plant_texture_builder.gd index 1187c46..4f6d35c 100644 --- a/entities/plants/scripts/texture_builder/plant_texture_builder.gd +++ b/entities/plants/scripts/texture_builder/plant_texture_builder.gd @@ -36,8 +36,11 @@ enum OriginType {BRANCH_ORIGIN, MUTATION_ORIGIN, BASE_LEAF_ORIGIN} @export var mutation_weight_base := 10 @export var mutation_weight_loss := 3 @export var mutation_weight_gain := 1 + @export var seed_texture_sets: Array[SeedTextureSet] +@export var base_y_offset := -50.0 + var rng := RandomNumberGenerator.new() var image: Image = Image.create_empty(IMAGE_WIDTH, IMAGE_HEIGHT, false, Image.FORMAT_RGBA8) var image_center: Vector2i = Vector2(0.5, 1) * Vector2(image.get_size()) @@ -73,6 +76,9 @@ func shuffle_weighted(array: Array, weights: Array[int]): array[i] = originalArray[indices[i]] weights[i] = originalWeights[indices[i]] +func get_mutation_weight(level: int) -> int: + return 3 * level + func build_seed_texture(random_seed: int) -> Texture: rng.seed = random_seed @@ -114,7 +120,7 @@ func build_plant_texture(plant_data: PlantData) -> Texture: texture = PLACEHOLDER_GROWING_TEXTURE base_part = pick_random(baby_bases) _: - print("Not handled state") + print("{state} not handled".format({"state": PlantData.State.keys()[plant_data.get_state()]})) return null var weight_per_origin_type: Array[int] = origin_weights_base.values().duplicate() @@ -125,11 +131,16 @@ func build_plant_texture(plant_data: PlantData) -> Texture: parts_to_place[OriginType.BASE_LEAF_ORIGIN] = base_leaves var mutation_weights: Array[int] = [] for mutation in plant_data.mutations: - parts_to_place[OriginType.MUTATION_ORIGIN].append(parts_mutation_associations[mutation.id].parts) - mutation_weights.append(mutation_weight_base) + if mutation.id in parts_mutation_associations: + parts_to_place[OriginType.MUTATION_ORIGIN].append(parts_mutation_associations[mutation.id].parts) + var mutation_weight := get_mutation_weight(mutation.level) + mutation_weights.append(mutation_weight) + weight_per_origin_type[OriginType.MUTATION_ORIGIN] += mutation_weight - var base_image_coord = blend_part(image_center, -base_part.root.position, base_part) - populate_part(parts_to_place, weight_per_origin_type, mutation_weights, base_part, base_image_coord) + var flipped: bool = rng.randi() % 2 == 0 + + var base_image_coord = blend_part(image_center, Vector2(0.0, base_y_offset), base_part, flipped) + populate_part(parts_to_place, weight_per_origin_type, mutation_weights, base_part, base_image_coord, flipped) texture = ImageTexture.create_from_image(image) image.fill(Color.TRANSPARENT) @@ -144,27 +155,33 @@ func find_random_matching_attach_ind(attach_to_match: PlantAttach, array: Array[ return i return -1 -func populate_part(all_parts: Dictionary[OriginType, Array], weight_per_origin_type: Array[int], mutation_weights: Array[int], parent_part: PlantPart, parent_image_coord: Vector2i): - var part_placed: Array[PlantPart] # same ind as their corresponding attach +func populate_part(all_parts: Dictionary[OriginType, Array], weight_per_origin_type: Array[int], mutation_weights: Array[int], parent_part: PlantPart, parent_image_coord: Vector2i, parent_is_flipped: bool): + var placed_parts: Array[PlantPart] # same ind as their corresponding attach var part_image_coords: Array[Vector2i] # idem + var part_is_flipped: Array[bool] # first find and blend parts per attach for attach in parent_part.attaches: # get part to place var part_to_place := get_part(all_parts, weight_per_origin_type, mutation_weights, attach) - part_placed.append(part_to_place) + placed_parts.append(part_to_place) + part_is_flipped.append(rng.randi() % 2 == 0) + + var attach_position := attach.position + if parent_is_flipped: + attach_position *= Vector2(-1, 1) # blend part if part_to_place: - var part_image_coord := blend_part(parent_image_coord, attach.position, part_to_place) + var part_image_coord := blend_part(parent_image_coord, attach_position, part_to_place, part_is_flipped.back()) part_image_coords.append(part_image_coord) else: part_image_coords.append(Vector2i.ZERO) # then populate them - for i in range(part_placed.size()): - if part_placed[i] != null: - populate_part(all_parts, weight_per_origin_type, mutation_weights, part_placed[i], part_image_coords[i]) + for i in range(placed_parts.size()): + if placed_parts[i] != null: + populate_part(all_parts, weight_per_origin_type, mutation_weights, placed_parts[i], part_image_coords[i], part_is_flipped[i]) func get_part(all_parts: Dictionary[OriginType, Array], weight_per_origin_type: Array[int], mutation_weights: Array[int], attach: PlantAttach) -> PlantPart: @@ -184,6 +201,9 @@ func get_part(all_parts: Dictionary[OriginType, Array], weight_per_origin_type: weight_per_origin_type[((origin + 2) % 3) as OriginType] += origin_weight_gain return all_parts[origin][ind] else: # find a mutation part to place + if weight_copy[originIndInd] < 0: + break + var parts_per_mutations: Array = all_parts[origin] shuffle_weighted(parts_per_mutations, mutation_weights) for mutation_parts_ind in range(parts_per_mutations.size()): @@ -198,11 +218,15 @@ func get_part(all_parts: Dictionary[OriginType, Array], weight_per_origin_type: return parts_per_mutations[mutation_parts_ind][ind] return null -func blend_part(parent_image_coord: Vector2i, attach_position: Vector2, part_to_blend: PlantPart) -> Vector2i: - var part_image: Image = part_to_blend.image +func blend_part(parent_image_coord: Vector2i, attach_position: Vector2, part_to_blend: PlantPart, is_flipped: bool) -> Vector2i: + var part_image := Image.create_from_data(part_to_blend.image.get_width(), part_to_blend.image.get_height(), false, Image.FORMAT_RGBA8, part_to_blend.image.get_data()) + var part_root_position := part_to_blend.root.position + if is_flipped: + part_image.flip_x() + part_root_position *= Vector2(-1, 1) var part_image_center: Vector2i = 0.5 * part_image.get_size() - var part_image_coord: Vector2i = parent_image_coord + Vector2i(attach_position - part_to_blend.root.position) - image.blend_rect(part_image, Rect2i(Vector2i.ZERO, part_to_blend.image.get_size()), part_image_coord - part_image_center) + var part_image_coord: Vector2i = parent_image_coord + Vector2i(attach_position - part_root_position) + image.blend_rect(part_image, Rect2i(Vector2i.ZERO, part_image.get_size()), part_image_coord - part_image_center) return part_image_coord func modulate_image(i: Image, color: Color): diff --git a/entities/plants/test_sprites.tscn b/entities/plants/test_sprites.tscn index 20498fb..9e0b3f6 100644 --- a/entities/plants/test_sprites.tscn +++ b/entities/plants/test_sprites.tscn @@ -17,6 +17,7 @@ position = Vector2(123, -46) [node name="VBoxContainer" type="VBoxContainer" parent="Camera2D/CanvasLayer" unique_id=1866996717] offset_right = 40.0 offset_bottom = 40.0 +focus_mode = 1 [node name="Folder" type="FoldableContainer" parent="Camera2D/CanvasLayer/VBoxContainer" unique_id=1564993758] layout_mode = 2 @@ -25,14 +26,33 @@ title = "Settings" [node name="VBoxContainer" type="VBoxContainer" parent="Camera2D/CanvasLayer/VBoxContainer/Folder" unique_id=729625675] layout_mode = 2 -[node name="ZoomContainer" type="HBoxContainer" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer" unique_id=587189002] +[node name="SpeedContainer" type="HBoxContainer" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer" unique_id=587189002] layout_mode = 2 -[node name="Label" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/ZoomContainer" unique_id=89154252] +[node name="Label" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/SpeedContainer" unique_id=89154252] +layout_mode = 2 +text = "Speed" + +[node name="Speed" type="SpinBox" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/SpeedContainer" unique_id=1876002655] +unique_name_in_owner = true +custom_minimum_size = Vector2(100, 25) +layout_mode = 2 +max_value = 1000.0 +step = 50.0 +allow_greater = true + +[node name="ResetSpeed" type="Button" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/SpeedContainer" unique_id=2109037199] +layout_mode = 2 +text = "Reset" + +[node name="ZoomContainer" type="HBoxContainer" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer" unique_id=895333428] +layout_mode = 2 + +[node name="Label" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/ZoomContainer" unique_id=2038804504] layout_mode = 2 text = "Zoom level" -[node name="ZoomLevel" type="HSlider" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/ZoomContainer" unique_id=179725357] +[node name="ZoomLevel" type="HSlider" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/ZoomContainer" unique_id=1236412315] unique_name_in_owner = true custom_minimum_size = Vector2(100, 25) layout_mode = 2 @@ -41,7 +61,7 @@ max_value = 5.0 step = 0.05 value = 1.0 -[node name="ResetZoom" type="Button" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/ZoomContainer" unique_id=2109037199] +[node name="ResetZoom" type="Button" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/ZoomContainer" unique_id=1127611228] layout_mode = 2 text = "Reset" @@ -116,16 +136,41 @@ layout_mode = 2 [node name="Label2" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/AgeContainer" unique_id=115359272] layout_mode = 2 -text = "rand" +text = "rand :" [node name="RandomAge" type="CheckBox" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/AgeContainer" unique_id=632428890] layout_mode = 2 -[node name="Label3" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/AgeContainer" unique_id=1871497862] +[node name="toAgeLabel" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/AgeContainer" unique_id=1871497862] +unique_name_in_owner = true layout_mode = 2 text = "to" [node name="EndAge" type="SpinBox" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/AgeContainer" unique_id=155079103] +unique_name_in_owner = true +layout_mode = 2 + +[node name="MutationLvlContainer" type="HBoxContainer" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer" unique_id=245717208] +layout_mode = 2 + +[node name="Label" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/MutationLvlContainer" unique_id=1071712301] +layout_mode = 2 +text = "Mutation level : " + +[node name="Label2" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/MutationLvlContainer" unique_id=1969438517] +layout_mode = 2 +text = "Min" + +[node name="MinLvl" type="SpinBox" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/MutationLvlContainer" unique_id=443508962] +unique_name_in_owner = true +layout_mode = 2 + +[node name="Label3" type="Label" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/MutationLvlContainer" unique_id=883703881] +layout_mode = 2 +text = "Max" + +[node name="MaxLvl" type="SpinBox" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/MutationLvlContainer" unique_id=615247987] +unique_name_in_owner = true layout_mode = 2 [node name="PossibleMutations" type="FoldableContainer" parent="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer" unique_id=71622472] @@ -142,9 +187,11 @@ unique_name_in_owner = true [node name="TileMapLayer" type="TileMapLayer" parent="." unique_id=961503940] z_index = -2 -tile_map_data = PackedByteArray("AAD9/wAAAgAJAAEAAAD9////AgAJAAIAAAD8/wAAAgAKAAIAAAD8/wEAAgAKAAIAAAD9/wIAAgAJAAIAAAD7/wEAAgAJAAEAAAD7/wIAAgAJAAEAAAD8/wIAAgAKAAIAAAD9/wEAAgAKAAIAAAABAPz/AgAKAAIAAAAAAPz/AgAJAAIAAAD9/wMAAgAJAAIAAAD8/wQAAgAJAAIAAAD9/wQAAgAJAAIAAAD9//3/AgAJAAEAAAD9//7/AgAKAAEAAAD7/wMAAgAJAAEAAAD7/wQAAgAKAAIAAAD6/wUAAgAKAAIAAAD6/wYAAgAJAAEAAAD6/wQAAgAKAAIAAAD8////AgAKAAEAAAD8//7/AgAJAAEAAAD8//3/AgAKAAEAAAD8//z/AgAJAAIAAAD7/wAAAgAKAAIAAAD6/wIAAgAKAAEAAAD6/wMAAgAKAAIAAAD8//v/AgAJAAEAAAD8//r/AgAJAAEAAAD8//n/AgAJAAEAAAD7//r/AgAJAAEAAAD7//v/AgAJAAEAAAD7//z/AgAJAAEAAAD6//3/AgAJAAIAAAD6//7/AgAJAAIAAAD6////AgAKAAIAAAD6/wAAAgAJAAIAAAD5/wEAAgAKAAEAAAD5/wIAAgAKAAEAAAD6/wEAAgAKAAEAAAD6//z/AgAKAAIAAAD6//v/AgAKAAIAAAD6//r/AgAKAAEAAAD6//n/AgAJAAEAAAD7//3/AgAJAAEAAAD7//7/AgAJAAEAAAD7////AgAKAAEAAAD8/wMAAgAKAAEAAAD9//z/AgAJAAEAAAD9//v/AgAKAAIAAAD+//r/AgAJAAEAAAD+//v/AgAJAAIAAAD+//z/AgAJAAEAAAD///z/AgAKAAIAAAD///v/AgAJAAEAAAABAPv/AgAKAAIAAAABAPr/AgAKAAEAAAACAPz/AgAJAAEAAAACAPv/AgAKAAEAAAACAPr/AgAJAAEAAAADAPz/AgAKAAIAAAADAPv/AgAKAAEAAAADAPr/AgAKAAEAAAADAPn/AgAJAAIAAAAEAPz/AgAJAAEAAAAEAPv/AgAJAAIAAAAEAPr/AgAJAAIAAAAFAPz/AgAKAAIAAAAFAPv/AgAKAAEAAAAFAPr/AgAJAAEAAAAGAPv/AgAJAAEAAAAGAPz/AgAKAAIAAAAHAPz/AgAJAAEAAAAHAPv/AgAJAAEAAAAIAPz/AgAKAAIAAAAIAPv/AgAJAAEAAAAJAPz/AgAJAAIAAAAJAPv/AgAKAAIAAAAKAPz/AgAJAAIAAAD5/wUAAgAKAAIAAAD5/wYAAgAKAAEAAAD5/wQAAgAJAAEAAAD5/wMAAgAJAAEAAAD5/wAAAgAKAAIAAAD5////AgAKAAEAAAD5//7/AgAJAAIAAAD5//3/AgAKAAIAAAD5//z/AgAJAAIAAAD5//v/AgAJAAEAAAD5//r/AgAJAAIAAAD5//n/AgAKAAEAAAD7//n/AgAJAAEAAAD9//n/AgAKAAIAAAD+//n/AgAJAAIAAAD///n/AgAJAAIAAAAAAPn/AgAJAAEAAAABAPn/AgAJAAIAAAACAPn/AgAJAAEAAAAEAPn/AgAJAAIAAAAFAPn/AgAKAAEAAAAGAPn/AgAJAAEAAAAHAPn/AgAKAAIAAAAIAPn/AgAJAAIAAAAJAPn/AgAKAAEAAAAKAPn/AgAKAAEAAAALAPn/AgAKAAEAAAALAPr/AgAKAAIAAAALAPv/AgAKAAIAAAAKAPv/AgAJAAEAAAALAPz/AgAKAAEAAAD9//r/AgAJAAIAAAD///r/AgAKAAEAAAAAAPr/AgAKAAEAAAAGAPr/AgAJAAEAAAAHAPr/AgAKAAIAAAAIAPr/AgAJAAEAAAAJAPr/AgAKAAIAAAAKAPr/AgAJAAEAAAAAAPv/AgAKAAEAAAD+//3/AgAKAAEAAAD+//7/AgAKAAEAAAD+////AgAKAAEAAAD+/wAAAgAJAAEAAAD+/wEAAgAJAAEAAAD+/wIAAgAKAAEAAAD+/wMAAgAJAAIAAAD+/wQAAgAKAAIAAAD///3/AgAJAAIAAAD///7/AgAJAAIAAAD/////AgAJAAEAAAD//wAAAgAJAAIAAAD//wEAAgAKAAIAAAD//wIAAgAKAAIAAAD//wMAAgAJAAIAAAD//wQAAgAJAAEAAAAAAP3/AgAJAAIAAAAAAP7/AgAKAAIAAAAAAP//AgAKAAEAAAAAAAAAAgAJAAEAAAAAAAEAAgAJAAIAAAAAAAIAAgAKAAEAAAAAAAMAAgAJAAIAAAAAAAQAAgAKAAEAAAABAP3/AgAJAAEAAAABAP7/AgAJAAEAAAABAP//AgAJAAEAAAABAAAAAgAJAAIAAAABAAEAAgAJAAEAAAABAAIAAgAJAAEAAAABAAMAAgAKAAEAAAABAAQAAgAJAAEAAAACAP3/AgAKAAIAAAACAP7/AgAJAAEAAAACAP//AgAKAAIAAAACAAAAAgAKAAIAAAACAAEAAgAKAAIAAAACAAIAAgAKAAIAAAACAAMAAgAKAAEAAAACAAQAAgAKAAEAAAADAP3/AgAKAAIAAAADAP7/AgAKAAEAAAADAP//AgAKAAIAAAADAAAAAgAKAAEAAAADAAEAAgAKAAIAAAADAAIAAgAKAAIAAAADAAMAAgAKAAIAAAADAAQAAgAKAAEAAAAEAP3/AgAJAAEAAAAEAP7/AgAKAAIAAAAEAP//AgAKAAEAAAAEAAAAAgAKAAIAAAAEAAEAAgAJAAEAAAAEAAIAAgAKAAEAAAAEAAMAAgAKAAEAAAAEAAQAAgAKAAEAAAAFAP3/AgAJAAEAAAAFAP7/AgAKAAIAAAAFAP//AgAKAAIAAAAFAAAAAgAJAAEAAAAFAAEAAgAJAAIAAAAFAAIAAgAKAAIAAAAFAAMAAgAKAAEAAAAFAAQAAgAKAAEAAAAGAP3/AgAKAAIAAAAGAP7/AgAKAAEAAAAGAP//AgAKAAIAAAAGAAAAAgAKAAEAAAAGAAEAAgAKAAIAAAAGAAIAAgAJAAEAAAAGAAMAAgAKAAEAAAAGAAQAAgAKAAEAAAAHAP3/AgAKAAEAAAAHAP7/AgAKAAIAAAAHAP//AgAJAAIAAAAHAAAAAgAKAAEAAAAHAAEAAgAJAAIAAAAHAAIAAgAJAAEAAAAHAAMAAgAKAAIAAAAHAAQAAgAKAAEAAAAIAP3/AgAKAAIAAAAIAP7/AgAJAAIAAAAIAP//AgAJAAEAAAAIAAAAAgAKAAEAAAAIAAEAAgAKAAIAAAAIAAIAAgAKAAEAAAAIAAMAAgAKAAEAAAAIAAQAAgAKAAIAAAAJAP3/AgAKAAEAAAAJAP7/AgAJAAEAAAAJAP//AgAKAAIAAAAJAAAAAgAJAAIAAAAJAAEAAgAJAAIAAAAJAAIAAgAJAAEAAAAJAAMAAgAKAAEAAAAJAAQAAgAJAAIAAAAKAP3/AgAJAAIAAAAKAP7/AgAJAAIAAAAKAP//AgAJAAEAAAAKAAAAAgAKAAEAAAAKAAEAAgAKAAEAAAAKAAIAAgAJAAIAAAAKAAMAAgAKAAEAAAAKAAQAAgAJAAEAAAALAP3/AgAJAAIAAAALAP7/AgAKAAIAAAALAP//AgAJAAEAAAALAAAAAgAJAAIAAAALAAEAAgAKAAEAAAALAAIAAgAJAAEAAAALAAMAAgAKAAEAAAALAAQAAgAJAAEAAAAMAP3/AgAJAAEAAAAMAP7/AgAKAAIAAAAMAP//AgAKAAIAAAAMAAAAAgAJAAEAAAAMAAEAAgAKAAIAAAAMAAIAAgAKAAEAAAAMAAMAAgAKAAEAAAAMAAQAAgAKAAEAAAANAP3/AgAJAAEAAAANAP7/AgAJAAEAAAANAP//AgAKAAEAAAANAAAAAgAKAAIAAAANAAEAAgAKAAIAAAANAAIAAgAJAAEAAAANAAMAAgAKAAIAAAANAAQAAgAKAAIAAAAOAP3/AgAJAAIAAAAOAP7/AgAKAAEAAAAOAP//AgAKAAEAAAAOAAAAAgAKAAEAAAAOAAEAAgAKAAIAAAAOAAIAAgAJAAIAAAAOAAMAAgAJAAEAAAAOAAQAAgAJAAEAAAAOAAUAAgAKAAIAAAAOAAYAAgAJAAEAAAAOAAcAAgAJAAIAAAAOAAgAAgAJAAEAAAAOAAkAAgAKAAIAAAAOAAoAAgAJAAEAAAAOAAsAAgAJAAIAAAAOAAwAAgAKAAIAAAAOAA0AAgAKAAEAAAAPAP3/AgAJAAIAAAAPAP7/AgAKAAIAAAAPAP//AgAJAAEAAAAPAAAAAgAJAAIAAAAPAAEAAgAKAAIAAAAPAAIAAgAKAAIAAAAPAAMAAgAKAAEAAAAPAAQAAgAKAAEAAAAPAAUAAgAKAAEAAAAPAAYAAgAKAAEAAAAPAAcAAgAJAAEAAAAPAAgAAgAKAAIAAAAPAAkAAgAKAAIAAAAPAAoAAgAKAAIAAAAPAAsAAgAKAAIAAAAPAAwAAgAKAAIAAAAPAA0AAgAJAAIAAAAQAP3/AgAKAAEAAAAQAP7/AgAKAAEAAAAQAP//AgAJAAEAAAAQAAAAAgAKAAEAAAAQAAEAAgAJAAIAAAAQAAIAAgAJAAIAAAAQAAMAAgAJAAIAAAAQAAQAAgAJAAIAAAAQAAUAAgAKAAEAAAAQAAYAAgAJAAEAAAAQAAcAAgAJAAIAAAAQAAgAAgAJAAIAAAAQAAkAAgAJAAIAAAAQAAoAAgAKAAIAAAAQAAsAAgAKAAIAAAAQAAwAAgAJAAEAAAAQAA0AAgAKAAEAAAARAP3/AgAKAAEAAAARAP7/AgAJAAEAAAARAP//AgAJAAEAAAARAAAAAgAKAAEAAAARAAwAAgAJAAIAAAARAA0AAgAKAAEAAAALAA4AAgAJAAEAAAALAA8AAgAKAAEAAAAMAPn/AgAJAAEAAAAMAPr/AgAJAAEAAAAMAPv/AgAJAAEAAAAMAPz/AgAJAAIAAAAMAA4AAgAKAAEAAAAMAA8AAgAKAAIAAAANAPn/AgAJAAIAAAANAPr/AgAKAAEAAAANAPv/AgAKAAIAAAANAPz/AgAKAAEAAAANAA4AAgAKAAIAAAANAA8AAgAKAAEAAAAOAPn/AgAJAAIAAAAOAPr/AgAKAAEAAAAOAPv/AgAJAAEAAAAOAPz/AgAJAAIAAAAOAA4AAgAJAAIAAAAOAA8AAgAKAAIAAAAPAPn/AgAKAAIAAAAPAPr/AgAJAAEAAAAPAPv/AgAKAAIAAAAPAPz/AgAJAAEAAAAPAA4AAgAKAAEAAAAPAA8AAgAJAAEAAAAQAPn/AgAKAAEAAAAQAPr/AgAKAAIAAAAQAPv/AgAJAAIAAAAQAPz/AgAKAAEAAAAQAA4AAgAJAAEAAAAQAA8AAgAKAAEAAAARAPn/AgAKAAIAAAARAPr/AgAKAAIAAAARAPv/AgAKAAEAAAARAPz/AgAKAAEAAAARAAEAAgAKAAEAAAARAAIAAgAJAAIAAAARAAMAAgAJAAEAAAARAAQAAgAJAAIAAAARAAUAAgAJAAIAAAARAAYAAgAKAAEAAAARAAcAAgAKAAEAAAARAAgAAgAJAAEAAAARAAkAAgAKAAEAAAARAAoAAgAJAAIAAAARAAsAAgAKAAEAAAARAA4AAgAKAAEAAAARAA8AAgAKAAIAAAASAPn/AgAKAAIAAAASAPr/AgAJAAIAAAASAPv/AgAKAAIAAAASAPz/AgAJAAIAAAASAP3/AgAKAAIAAAASAP7/AgAJAAIAAAASAP//AgAJAAEAAAASAAAAAgAKAAEAAAASAAEAAgAJAAIAAAASAAIAAgAKAAIAAAASAAMAAgAKAAEAAAASAAQAAgAJAAIAAAASAAUAAgAKAAEAAAASAAYAAgAJAAEAAAASAAcAAgAJAAIAAAASAAgAAgAJAAEAAAASAAkAAgAJAAEAAAASAAoAAgAJAAEAAAASAAsAAgAKAAIAAAASAAwAAgAKAAEAAAASAA0AAgAJAAIAAAASAA4AAgAJAAIAAAASAA8AAgAJAAIAAAATAPn/AgAJAAIAAAATAPr/AgAKAAEAAAATAPv/AgAKAAEAAAATAPz/AgAKAAEAAAATAP3/AgAKAAEAAAATAP7/AgAKAAEAAAATAP//AgAJAAIAAAATAAAAAgAJAAIAAAATAAEAAgAJAAEAAAATAAIAAgAJAAEAAAATAAMAAgAKAAEAAAATAAQAAgAKAAEAAAATAAUAAgAJAAIAAAATAAYAAgAJAAEAAAATAAcAAgAJAAIAAAATAAgAAgAJAAEAAAATAAkAAgAKAAEAAAATAAoAAgAKAAIAAAATAAsAAgAKAAIAAAATAAwAAgAKAAEAAAATAA0AAgAKAAIAAAATAA4AAgAJAAEAAAATAA8AAgAKAAEAAAAUAPn/AgAJAAEAAAAUAPr/AgAKAAIAAAAUAPv/AgAKAAIAAAAUAPz/AgAJAAEAAAAUAP3/AgAJAAIAAAAUAP7/AgAJAAEAAAAUAP//AgAKAAIAAAAUAAAAAgAJAAEAAAAUAAEAAgAJAAEAAAAUAAIAAgAJAAEAAAAUAAMAAgAJAAEAAAAUAAQAAgAKAAEAAAAUAAUAAgAJAAIAAAAUAAYAAgAJAAEAAAAUAAcAAgAJAAEAAAAUAAgAAgAKAAIAAAAUAAkAAgAJAAIAAAAUAAoAAgAKAAEAAAAUAAsAAgAKAAEAAAAUAAwAAgAJAAEAAAAUAA0AAgAKAAIAAAAUAA4AAgAJAAIAAAAUAA8AAgAKAAIAAAAVAPn/AgAKAAIAAAAVAPr/AgAJAAIAAAAVAPv/AgAJAAIAAAAVAPz/AgAKAAEAAAAVAP3/AgAKAAIAAAAVAP7/AgAJAAEAAAAVAP//AgAJAAEAAAAVAAAAAgAJAAEAAAAVAAEAAgAJAAEAAAAVAAIAAgAJAAIAAAAVAAMAAgAKAAEAAAAVAAQAAgAKAAIAAAAVAAUAAgAKAAIAAAAVAAYAAgAKAAIAAAAVAAcAAgAKAAEAAAAVAAgAAgAKAAIAAAAVAAkAAgAKAAEAAAAVAAoAAgAJAAIAAAAVAAsAAgAJAAEAAAAVAAwAAgAJAAIAAAAVAA0AAgAKAAEAAAAVAA4AAgAJAAEAAAAVAA8AAgAKAAEAAAAWAPn/AgAKAAEAAAAWAPr/AgAJAAEAAAAWAPv/AgAKAAIAAAAWAPz/AgAJAAIAAAAWAP3/AgAKAAIAAAAWAP7/AgAJAAEAAAAWAP//AgAJAAIAAAAWAAAAAgAKAAEAAAAWAAEAAgAJAAEAAAAWAAIAAgAKAAIAAAAWAAMAAgAJAAIAAAAWAAQAAgAKAAIAAAAWAAUAAgAKAAIAAAAWAAYAAgAKAAEAAAAWAAcAAgAJAAIAAAAWAAgAAgAJAAEAAAAWAAkAAgAJAAEAAAAWAAoAAgAJAAEAAAAWAAsAAgAJAAEAAAAWAAwAAgAJAAEAAAAWAA0AAgAJAAIAAAAWAA4AAgAKAAEAAAAWAA8AAgAKAAIAAAAXAPn/AgAKAAEAAAAXAPr/AgAJAAEAAAAXAPv/AgAKAAIAAAAXAPz/AgAKAAEAAAAXAP3/AgAJAAEAAAAXAP7/AgAJAAIAAAAXAP//AgAKAAEAAAAXAAAAAgAJAAIAAAAXAAEAAgAJAAIAAAAXAAIAAgAJAAIAAAAXAAMAAgAKAAIAAAAXAAQAAgAKAAIAAAAXAAUAAgAJAAIAAAAXAAYAAgAKAAIAAAAXAAcAAgAJAAIAAAAXAAgAAgAKAAEAAAAXAAkAAgAJAAEAAAAXAAoAAgAKAAIAAAAXAAsAAgAKAAIAAAAXAAwAAgAJAAEAAAAXAA0AAgAKAAIAAAAXAA4AAgAJAAEAAAAXAA8AAgAKAAEAAAAYAPn/AgAJAAIAAAAYAPr/AgAJAAIAAAAYAPv/AgAKAAEAAAAYAPz/AgAKAAEAAAAYAP3/AgAJAAEAAAAYAP7/AgAKAAEAAAAYAP//AgAJAAIAAAAYAAAAAgAKAAIAAAAYAAEAAgAJAAIAAAAYAAIAAgAJAAIAAAAYAAMAAgAKAAEAAAAYAAQAAgAJAAEAAAAYAAUAAgAKAAIAAAAYAAYAAgAJAAEAAAAYAAcAAgAJAAIAAAAYAAgAAgAKAAIAAAAYAAkAAgAJAAEAAAAYAAoAAgAJAAEAAAAYAAsAAgAJAAIAAAAYAAwAAgAJAAEAAAAYAA0AAgAKAAEAAAAYAA4AAgAJAAEAAAAYAA8AAgAKAAEAAAAZAPn/AgAKAAEAAAAZAPr/AgAJAAIAAAAZAPv/AgAJAAIAAAAZAPz/AgAJAAEAAAAZAP3/AgAJAAIAAAAZAP7/AgAKAAIAAAAZAP//AgAKAAEAAAAZAAAAAgAKAAIAAAAZAAEAAgAKAAIAAAAZAAIAAgAKAAEAAAAZAAMAAgAJAAEAAAAZAAQAAgAKAAEAAAAZAAUAAgAKAAEAAAAZAAYAAgAJAAEAAAAZAAcAAgAKAAIAAAAZAAgAAgAJAAIAAAAZAAkAAgAJAAIAAAAZAAoAAgAKAAIAAAAZAAsAAgAKAAEAAAAZAAwAAgAJAAIAAAAZAA0AAgAJAAEAAAAZAA4AAgAKAAIAAAAZAA8AAgAJAAEAAAAaAPn/AgAJAAEAAAAaAPr/AgAJAAEAAAAaAPv/AgAKAAIAAAAaAPz/AgAKAAEAAAAaAP3/AgAKAAIAAAAaAP7/AgAKAAIAAAAaAP//AgAKAAIAAAAaAAAAAgAJAAIAAAAaAAEAAgAJAAEAAAAaAAIAAgAKAAEAAAAaAAMAAgAJAAIAAAAaAAQAAgAJAAEAAAAaAAUAAgAJAAEAAAAaAAYAAgAKAAEAAAAaAAcAAgAKAAIAAAAaAAgAAgAKAAIAAAAaAAkAAgAJAAEAAAAaAAoAAgAJAAIAAAAaAAsAAgAKAAIAAAAaAAwAAgAKAAEAAAAaAA0AAgAKAAEAAAAaAA4AAgAJAAEAAAAaAA8AAgAKAAIAAAAbAPn/AgAJAAEAAAAbAPr/AgAKAAIAAAAbAPv/AgAKAAEAAAAbAPz/AgAKAAIAAAAbAP3/AgAJAAEAAAAbAP7/AgAKAAEAAAAbAP//AgAJAAIAAAAbAAAAAgAKAAEAAAAbAAEAAgAKAAIAAAAbAAIAAgAJAAEAAAAbAAMAAgAJAAIAAAAbAAQAAgAKAAIAAAAbAAUAAgAKAAIAAAAbAAYAAgAJAAEAAAAbAAcAAgAJAAIAAAAbAAgAAgAKAAIAAAAbAAkAAgAKAAEAAAAbAAoAAgAKAAIAAAAbAAsAAgAJAAEAAAAbAAwAAgAJAAEAAAAbAA0AAgAJAAEAAAAbAA4AAgAJAAIAAAAbAA8AAgAKAAIAAAAcAPn/AgAKAAEAAAAcAPr/AgAJAAIAAAAcAPv/AgAJAAEAAAAcAPz/AgAJAAEAAAAcAP3/AgAJAAEAAAAcAP7/AgAJAAIAAAAcAP//AgAJAAIAAAAcAAAAAgAKAAIAAAAcAAEAAgAKAAIAAAAcAAIAAgAJAAEAAAAcAAMAAgAJAAIAAAAcAAQAAgAKAAIAAAAcAAUAAgAJAAIAAAAcAAYAAgAKAAIAAAAcAAcAAgAJAAEAAAAcAAgAAgAKAAEAAAAcAAkAAgAKAAEAAAAcAAoAAgAJAAEAAAAcAAsAAgAKAAEAAAAcAAwAAgAJAAEAAAAcAA0AAgAKAAIAAAAcAA4AAgAKAAEAAAAcAA8AAgAKAAEAAAAdAPn/AgAJAAIAAAAdAPr/AgAKAAEAAAAdAPv/AgAKAAEAAAAdAPz/AgAKAAEAAAAdAP3/AgAKAAEAAAAdAP7/AgAJAAEAAAAdAP//AgAJAAIAAAAdAAAAAgAJAAEAAAAdAAEAAgAKAAIAAAAdAAIAAgAJAAEAAAAdAAMAAgAJAAEAAAAdAAQAAgAKAAEAAAAdAAUAAgAJAAIAAAAdAAYAAgAKAAEAAAAdAAcAAgAKAAIAAAAdAAgAAgAJAAIAAAAdAAkAAgAJAAIAAAAdAAoAAgAJAAEAAAAdAAsAAgAJAAIAAAAdAAwAAgAJAAIAAAAdAA0AAgAJAAIAAAAdAA4AAgAJAAEAAAAdAA8AAgAKAAEAAAD5/wcAAgAJAAEAAAD5/wgAAgAKAAIAAAD5/wkAAgAKAAEAAAD5/woAAgAJAAIAAAD5/wsAAgAJAAIAAAD5/wwAAgAKAAEAAAD5/w0AAgAKAAIAAAD5/w4AAgAJAAIAAAD5/w8AAgAKAAIAAAD6/wcAAgAKAAEAAAD6/wgAAgAKAAIAAAD6/wkAAgAJAAEAAAD6/woAAgAKAAEAAAD6/wsAAgAKAAIAAAD6/wwAAgAJAAEAAAD6/w0AAgAKAAEAAAD6/w4AAgAKAAEAAAD6/w8AAgAKAAIAAAD7/wUAAgAJAAEAAAD7/wYAAgAJAAEAAAD7/wcAAgAJAAIAAAD7/wgAAgAKAAIAAAD7/wkAAgAJAAEAAAD7/woAAgAKAAIAAAD7/wsAAgAJAAIAAAD7/wwAAgAKAAEAAAD7/w0AAgAKAAEAAAD7/w4AAgAKAAEAAAD7/w8AAgAKAAEAAAD8/wUAAgAJAAIAAAD8/wYAAgAKAAEAAAD8/wcAAgAJAAEAAAD8/wgAAgAKAAEAAAD8/wkAAgAJAAEAAAD8/woAAgAJAAEAAAD8/wsAAgAKAAEAAAD8/wwAAgAJAAIAAAD8/w0AAgAKAAEAAAD8/w4AAgAJAAEAAAD8/w8AAgAKAAEAAAD9/wUAAgAKAAEAAAD9/wYAAgAKAAEAAAD9/wcAAgAJAAEAAAD9/wgAAgAKAAIAAAD9/wkAAgAJAAIAAAD9/woAAgAKAAIAAAD9/wsAAgAKAAIAAAD9/wwAAgAJAAIAAAD9/w0AAgAJAAIAAAD9/w4AAgAJAAEAAAD9/w8AAgAJAAEAAAD+/wUAAgAKAAIAAAD+/wYAAgAJAAIAAAD+/wcAAgAKAAEAAAD+/wgAAgAKAAIAAAD+/wkAAgAJAAEAAAD+/woAAgAJAAEAAAD+/wsAAgAKAAEAAAD+/wwAAgAJAAIAAAD+/w0AAgAJAAEAAAD+/w4AAgAJAAEAAAD+/w8AAgAKAAEAAAD//wUAAgAKAAIAAAD//wYAAgAKAAEAAAD//wcAAgAKAAIAAAD//wgAAgAJAAEAAAD//wkAAgAKAAEAAAD//woAAgAJAAIAAAD//wsAAgAKAAIAAAD//wwAAgAJAAEAAAD//w0AAgAJAAEAAAD//w4AAgAJAAIAAAD//w8AAgAKAAIAAAAAAAUAAgAJAAIAAAAAAAYAAgAKAAIAAAAAAAcAAgAJAAIAAAAAAAgAAgAJAAIAAAAAAAkAAgAKAAIAAAAAAAoAAgAKAAEAAAAAAAsAAgAJAAIAAAAAAAwAAgAKAAEAAAAAAA0AAgAJAAEAAAAAAA4AAgAJAAEAAAAAAA8AAgAKAAIAAAABAAUAAgAKAAEAAAABAAYAAgAJAAIAAAABAAcAAgAJAAIAAAABAAgAAgAJAAIAAAABAAkAAgAJAAEAAAABAAoAAgAJAAEAAAABAAsAAgAKAAIAAAABAAwAAgAJAAIAAAABAA0AAgAJAAEAAAABAA4AAgAJAAEAAAABAA8AAgAJAAIAAAACAAUAAgAJAAIAAAACAAYAAgAJAAIAAAACAAcAAgAJAAIAAAACAAgAAgAKAAEAAAACAAkAAgAJAAEAAAACAAoAAgAJAAEAAAACAAsAAgAJAAIAAAACAAwAAgAJAAIAAAACAA0AAgAKAAEAAAACAA4AAgAJAAIAAAACAA8AAgAKAAIAAAADAAUAAgAJAAEAAAADAAYAAgAKAAIAAAADAAcAAgAKAAIAAAADAAgAAgAJAAIAAAADAAkAAgAKAAEAAAADAAoAAgAKAAIAAAADAAsAAgAJAAEAAAADAAwAAgAJAAEAAAADAA0AAgAKAAEAAAADAA4AAgAJAAIAAAADAA8AAgAJAAIAAAAEAAUAAgAKAAIAAAAEAAYAAgAJAAIAAAAEAAcAAgAKAAEAAAAEAAgAAgAKAAIAAAAEAAkAAgAJAAEAAAAEAAoAAgAKAAIAAAAEAAsAAgAKAAIAAAAEAAwAAgAKAAIAAAAEAA0AAgAKAAIAAAAEAA4AAgAKAAEAAAAEAA8AAgAKAAIAAAAFAAUAAgAJAAIAAAAFAAYAAgAKAAEAAAAFAAcAAgAKAAEAAAAFAAgAAgAJAAEAAAAFAAkAAgAJAAIAAAAFAAoAAgAJAAIAAAAFAAsAAgAJAAIAAAAFAAwAAgAJAAEAAAAFAA0AAgAJAAEAAAAFAA4AAgAJAAIAAAAFAA8AAgAKAAIAAAAGAAUAAgAKAAEAAAAGAAYAAgAKAAEAAAAGAAcAAgAJAAEAAAAGAAgAAgAKAAEAAAAGAAkAAgAJAAIAAAAGAAoAAgAJAAIAAAAGAAsAAgAKAAIAAAAGAAwAAgAKAAEAAAAGAA0AAgAJAAEAAAAGAA4AAgAKAAIAAAAGAA8AAgAJAAIAAAAHAAUAAgAJAAEAAAAHAAYAAgAJAAEAAAAHAAcAAgAKAAIAAAAHAAgAAgAJAAEAAAAHAAkAAgAJAAEAAAAHAAoAAgAKAAEAAAAHAAsAAgAKAAIAAAAHAAwAAgAKAAIAAAAHAA0AAgAKAAIAAAAHAA4AAgAKAAIAAAAHAA8AAgAKAAEAAAAIAAUAAgAKAAIAAAAIAAYAAgAKAAIAAAAIAAcAAgAKAAIAAAAIAAgAAgAKAAEAAAAIAAkAAgAKAAEAAAAIAAoAAgAKAAIAAAAIAAsAAgAJAAEAAAAIAAwAAgAJAAEAAAAIAA0AAgAKAAIAAAAIAA4AAgAJAAIAAAAIAA8AAgAJAAEAAAAJAAUAAgAJAAEAAAAJAAYAAgAKAAEAAAAJAAcAAgAJAAIAAAAJAAgAAgAJAAEAAAAJAAkAAgAKAAIAAAAJAAoAAgAKAAIAAAAJAAsAAgAJAAIAAAAJAAwAAgAJAAEAAAAJAA0AAgAJAAEAAAAJAA4AAgAJAAEAAAAJAA8AAgAJAAEAAAAKAAUAAgAKAAEAAAAKAAYAAgAKAAIAAAAKAAcAAgAKAAEAAAAKAAgAAgAKAAIAAAAKAAkAAgAKAAIAAAAKAAoAAgAJAAIAAAAKAAsAAgAJAAIAAAAKAAwAAgAJAAIAAAAKAA0AAgAKAAEAAAAKAA4AAgAKAAEAAAAKAA8AAgAKAAIAAAALAAUAAgAJAAEAAAALAAYAAgAKAAIAAAALAAcAAgAKAAEAAAALAAgAAgAJAAEAAAALAAkAAgAKAAEAAAALAAoAAgAJAAIAAAALAAsAAgAJAAIAAAALAAwAAgAJAAIAAAALAA0AAgAKAAEAAAAMAAUAAgAKAAEAAAAMAAYAAgAJAAEAAAAMAAcAAgAKAAEAAAAMAAgAAgAKAAIAAAAMAAkAAgAKAAIAAAAMAAoAAgAJAAEAAAAMAAsAAgAKAAIAAAAMAAwAAgAKAAEAAAAMAA0AAgAJAAEAAAANAAUAAgAJAAEAAAANAAYAAgAJAAEAAAANAAcAAgAJAAIAAAANAAgAAgAKAAIAAAANAAkAAgAKAAEAAAANAAoAAgAKAAEAAAANAAsAAgAKAAEAAAANAAwAAgAKAAIAAAANAA0AAgAJAAIAAAD5/xAAAgAJAAIAAAD6/xAAAgAKAAIAAAD7/xAAAgAJAAEAAAD8/xAAAgAJAAIAAAD9/xAAAgAJAAEAAAD+/xAAAgAJAAIAAAD//xAAAgAKAAIAAAAAABAAAgAJAAIAAAABABAAAgAJAAIAAAACABAAAgAJAAEAAAADABAAAgAKAAIAAAAEABAAAgAKAAEAAAAFABAAAgAKAAIAAAAGABAAAgAKAAIAAAAHABAAAgAKAAIAAAAIABAAAgAKAAEAAAAJABAAAgAKAAIAAAAKABAAAgAKAAEAAAALABAAAgAJAAIAAAAMABAAAgAJAAEAAAANABAAAgAKAAIAAAAOABAAAgAKAAIAAAAPABAAAgAKAAEAAAAQABAAAgAKAAEAAAARABAAAgAKAAIAAAASABAAAgAKAAIAAAATABAAAgAKAAIAAAAUABAAAgAJAAIAAAAVABAAAgAJAAIAAAAWABAAAgAKAAIAAAAXABAAAgAJAAEAAAAYABAAAgAKAAEAAAAZABAAAgAJAAEAAAAaABAAAgAKAAIAAAAbABAAAgAKAAIAAAAcABAAAgAKAAIAAAAdABAAAgAJAAIAAAAeAPn/AgAJAAIAAAAeAPr/AgAJAAEAAAAeAPv/AgAKAAEAAAAeAPz/AgAKAAEAAAAeAP3/AgAJAAIAAAAeAP7/AgAJAAEAAAAeAP//AgAKAAEAAAAeAAAAAgAKAAIAAAAeAAEAAgAJAAEAAAAeAAIAAgAKAAIAAAAeAAMAAgAJAAEAAAAeAAQAAgAKAAIAAAAeAAUAAgAKAAIAAAAeAAYAAgAKAAEAAAAeAAcAAgAKAAEAAAAeAAgAAgAJAAEAAAAeAAkAAgAJAAIAAAAeAAoAAgAKAAIAAAAeAAsAAgAKAAEAAAAeAAwAAgAJAAEAAAAeAA0AAgAJAAEAAAAeAA4AAgAJAAIAAAAeAA8AAgAJAAIAAAAeABAAAgAKAAEAAAAfAPn/AgAKAAIAAAAfAPr/AgAKAAEAAAAfAPv/AgAJAAIAAAAfAPz/AgAKAAEAAAAfAP3/AgAJAAEAAAAfAP7/AgAJAAEAAAAfAP//AgAKAAEAAAAfAAAAAgAKAAIAAAAfAAEAAgAKAAIAAAAfAAIAAgAJAAEAAAAfAAMAAgAKAAEAAAAfAAQAAgAJAAIAAAAfAAUAAgAKAAIAAAAfAAYAAgAJAAIAAAAfAAcAAgAKAAEAAAAfAAgAAgAKAAIAAAAfAAkAAgAJAAIAAAAfAAoAAgAJAAEAAAAfAAsAAgAJAAIAAAAfAAwAAgAJAAEAAAAfAA0AAgAJAAEAAAAfAA4AAgAKAAEAAAAfAA8AAgAJAAEAAAAfABAAAgAJAAEAAAAgAPn/AgAJAAIAAAAgAPr/AgAKAAEAAAAgAPv/AgAKAAIAAAAgAPz/AgAKAAIAAAAgAP3/AgAKAAIAAAAgAP7/AgAJAAEAAAAgAP//AgAJAAEAAAAgAAAAAgAJAAIAAAAgAAEAAgAKAAIAAAAgAAIAAgAJAAIAAAAgAAMAAgAJAAEAAAAgAAQAAgAJAAIAAAAgAAUAAgAJAAIAAAAgAAYAAgAKAAEAAAAgAAcAAgAKAAIAAAAgAAgAAgAJAAEAAAAgAAkAAgAKAAEAAAAgAAoAAgAKAAIAAAAgAAsAAgAJAAIAAAAgAAwAAgAKAAEAAAAgAA0AAgAKAAIAAAAgAA4AAgAJAAEAAAAgAA8AAgAKAAEAAAAgABAAAgAJAAIAAAA=") +tile_map_data = PackedByteArray("AAD9/wAAAgAJAAIAAAD9////AgAKAAEAAAD8/wAAAgAKAAEAAAD8/wEAAgAKAAEAAAD9/wIAAgAJAAIAAAD7/wEAAgAKAAEAAAD7/wIAAgAJAAIAAAD8/wIAAgAKAAEAAAD9/wEAAgAKAAEAAAABAPz/AgAJAAIAAAAAAPz/AgAKAAEAAAD9/wMAAgAKAAEAAAD8/wQAAgAKAAEAAAD9/wQAAgAJAAIAAAD9//3/AgAKAAEAAAD9//7/AgAJAAIAAAD7/wMAAgAKAAEAAAD7/wQAAgAJAAIAAAD6/wUAAgAKAAEAAAD6/wYAAgAKAAEAAAD6/wQAAgAKAAEAAAD8////AgAKAAEAAAD8//7/AgAKAAEAAAD8//3/AgAKAAEAAAD8//z/AgAKAAEAAAD7/wAAAgAJAAIAAAD6/wIAAgAKAAEAAAD6/wMAAgAKAAEAAAD8//v/AgAKAAEAAAD8//r/AgAKAAEAAAD8//n/AgAKAAEAAAD7//r/AgAJAAIAAAD7//v/AgAKAAEAAAD7//z/AgAJAAIAAAD6//3/AgAKAAEAAAD6//7/AgAKAAEAAAD6////AgAKAAEAAAD6/wAAAgAKAAEAAAD5/wEAAgAKAAEAAAD5/wIAAgAJAAIAAAD6/wEAAgAKAAEAAAD6//z/AgAKAAEAAAD6//v/AgAKAAEAAAD6//r/AgAKAAEAAAD6//n/AgAKAAEAAAD7//3/AgAKAAEAAAD7//7/AgAJAAIAAAD7////AgAKAAEAAAD8/wMAAgAKAAEAAAD9//z/AgAJAAIAAAD9//v/AgAKAAEAAAD+//r/AgAKAAEAAAD+//v/AgAKAAEAAAD+//z/AgAKAAEAAAD///z/AgAJAAIAAAD///v/AgAKAAEAAAABAPv/AgAKAAEAAAABAPr/AgAJAAIAAAACAPz/AgAKAAEAAAACAPv/AgAKAAEAAAACAPr/AgAKAAEAAAADAPz/AgAJAAIAAAADAPv/AgAKAAEAAAADAPr/AgAJAAIAAAADAPn/AgAKAAEAAAAEAPz/AgAKAAEAAAAEAPv/AgAKAAEAAAAEAPr/AgAKAAEAAAAFAPz/AgAJAAIAAAAFAPv/AgAKAAEAAAAFAPr/AgAJAAIAAAAGAPv/AgAKAAEAAAAGAPz/AgAKAAEAAAAHAPz/AgAJAAIAAAAHAPv/AgAKAAEAAAAIAPz/AgAKAAEAAAAIAPv/AgAKAAEAAAAJAPz/AgAJAAIAAAAJAPv/AgAKAAEAAAAKAPz/AgAKAAEAAAD5/wUAAgAKAAEAAAD5/wYAAgAJAAIAAAD5/wQAAgAJAAIAAAD5/wMAAgAKAAEAAAD5/wAAAgAJAAIAAAD5////AgAKAAEAAAD5//7/AgAJAAIAAAD5//3/AgAKAAEAAAD5//z/AgAJAAIAAAD5//v/AgAKAAEAAAD5//r/AgAJAAIAAAD5//n/AgAKAAEAAAD7//n/AgAKAAEAAAD9//n/AgAKAAEAAAD+//n/AgAKAAEAAAD///n/AgAKAAEAAAAAAPn/AgAKAAEAAAABAPn/AgAKAAEAAAACAPn/AgAKAAEAAAAEAPn/AgAKAAEAAAAFAPn/AgAKAAEAAAAGAPn/AgAKAAEAAAAHAPn/AgAKAAEAAAAIAPn/AgAKAAEAAAAJAPn/AgAKAAEAAAAKAPn/AgAKAAEAAAALAPn/AgAKAAEAAAALAPr/AgAJAAIAAAALAPv/AgAKAAEAAAAKAPv/AgAKAAEAAAALAPz/AgAJAAIAAAD9//r/AgAJAAIAAAD///r/AgAJAAIAAAAAAPr/AgAKAAEAAAAGAPr/AgAKAAEAAAAHAPr/AgAJAAIAAAAIAPr/AgAKAAEAAAAJAPr/AgAJAAIAAAAKAPr/AgAKAAEAAAAAAPv/AgAKAAEAAAD+//3/AgAKAAEAAAD+//7/AgAKAAEAAAD+////AgAKAAEAAAD+/wAAAgAKAAEAAAD+/wEAAgAKAAEAAAD+/wIAAgAKAAEAAAD+/wMAAgAKAAEAAAD+/wQAAgAKAAEAAAD///3/AgAKAAEAAAD///7/AgAJAAIAAAD/////AgAKAAEAAAD//wAAAgAJAAIAAAD//wEAAgAKAAEAAAD//wIAAgAJAAIAAAD//wMAAgAKAAEAAAD//wQAAgAJAAIAAAAAAP3/AgAKAAEAAAAAAP7/AgAKAAEAAAAAAP//AgAKAAEAAAAAAAAAAgAKAAEAAAAAAAEAAgAKAAEAAAAAAAIAAgAKAAEAAAAAAAMAAgAKAAEAAAAAAAQAAgAKAAEAAAABAP3/AgAKAAEAAAABAP7/AgAJAAIAAAABAP//AgAKAAEAAAABAAAAAgAJAAIAAAABAAEAAgAKAAEAAAABAAIAAgAJAAIAAAABAAMAAgAKAAEAAAABAAQAAgAJAAIAAAACAP3/AgAKAAEAAAACAP7/AgAKAAEAAAACAP//AgAKAAEAAAACAAAAAgAKAAEAAAACAAEAAgAKAAEAAAACAAIAAgAKAAEAAAACAAMAAgAKAAEAAAACAAQAAgAKAAEAAAADAP3/AgAKAAEAAAADAP7/AgAJAAIAAAADAP//AgAKAAEAAAADAAAAAgAJAAIAAAADAAEAAgAKAAEAAAADAAIAAgAJAAIAAAADAAMAAgAKAAEAAAADAAQAAgAJAAIAAAAEAP3/AgAKAAEAAAAEAP7/AgAKAAEAAAAEAP//AgAKAAEAAAAEAAAAAgAKAAEAAAAEAAEAAgAKAAEAAAAEAAIAAgAKAAEAAAAEAAMAAgAKAAEAAAAEAAQAAgAKAAEAAAAFAP3/AgAKAAEAAAAFAP7/AgAJAAIAAAAFAP//AgAKAAEAAAAFAAAAAgAJAAIAAAAFAAEAAgAKAAEAAAAFAAIAAgAJAAIAAAAFAAMAAgAKAAEAAAAFAAQAAgAJAAIAAAAGAP3/AgAKAAEAAAAGAP7/AgAKAAEAAAAGAP//AgAKAAEAAAAGAAAAAgAKAAEAAAAGAAEAAgAKAAEAAAAGAAIAAgAKAAEAAAAGAAMAAgAKAAEAAAAGAAQAAgAKAAEAAAAHAP3/AgAKAAEAAAAHAP7/AgAJAAIAAAAHAP//AgAKAAEAAAAHAAAAAgAJAAIAAAAHAAEAAgAKAAEAAAAHAAIAAgAJAAIAAAAHAAMAAgAKAAEAAAAHAAQAAgAJAAIAAAAIAP3/AgAKAAEAAAAIAP7/AgAKAAEAAAAIAP//AgAKAAEAAAAIAAAAAgAKAAEAAAAIAAEAAgAKAAEAAAAIAAIAAgAKAAEAAAAIAAMAAgAKAAEAAAAIAAQAAgAKAAEAAAAJAP3/AgAKAAEAAAAJAP7/AgAJAAIAAAAJAP//AgAKAAEAAAAJAAAAAgAJAAIAAAAJAAEAAgAKAAEAAAAJAAIAAgAJAAIAAAAJAAMAAgAKAAEAAAAJAAQAAgAJAAIAAAAKAP3/AgAKAAEAAAAKAP7/AgAKAAEAAAAKAP//AgAKAAEAAAAKAAAAAgAKAAEAAAAKAAEAAgAKAAEAAAAKAAIAAgAKAAEAAAAKAAMAAgAKAAEAAAAKAAQAAgAKAAEAAAALAP3/AgAKAAEAAAALAP7/AgAJAAIAAAALAP//AgAKAAEAAAALAAAAAgAJAAIAAAALAAEAAgAKAAEAAAALAAIAAgAJAAIAAAALAAMAAgAKAAEAAAALAAQAAgAJAAIAAAAMAP3/AgAKAAEAAAAMAP7/AgAKAAEAAAAMAP//AgAKAAEAAAAMAAAAAgAKAAEAAAAMAAEAAgAKAAEAAAAMAAIAAgAKAAEAAAAMAAMAAgAKAAEAAAAMAAQAAgAKAAEAAAANAP3/AgAKAAEAAAANAP7/AgAJAAIAAAANAP//AgAKAAEAAAANAAAAAgAJAAIAAAANAAEAAgAKAAEAAAANAAIAAgAJAAIAAAANAAMAAgAKAAEAAAANAAQAAgAJAAIAAAAOAP3/AgAKAAEAAAAOAP7/AgAKAAEAAAAOAP//AgAKAAEAAAAOAAAAAgAKAAEAAAAOAAEAAgAKAAEAAAAOAAIAAgAKAAEAAAAOAAMAAgAKAAEAAAAOAAQAAgAKAAEAAAAOAAUAAgAKAAEAAAAOAAYAAgAKAAEAAAAOAAcAAgAKAAEAAAAOAAgAAgAKAAEAAAAOAAkAAgAKAAEAAAAOAAoAAgAKAAEAAAAOAAsAAgAKAAEAAAAOAAwAAgAKAAEAAAAOAA0AAgAKAAEAAAAPAP3/AgAKAAEAAAAPAP7/AgAJAAIAAAAPAP//AgAKAAEAAAAPAAAAAgAJAAIAAAAPAAEAAgAKAAEAAAAPAAIAAgAJAAIAAAAPAAMAAgAKAAEAAAAPAAQAAgAJAAIAAAAPAAUAAgAKAAEAAAAPAAYAAgAJAAIAAAAPAAcAAgAKAAEAAAAPAAgAAgAJAAIAAAAPAAkAAgAKAAEAAAAPAAoAAgAJAAIAAAAPAAsAAgAKAAEAAAAPAAwAAgAJAAIAAAAPAA0AAgAKAAEAAAAQAP3/AgAKAAEAAAAQAP7/AgAKAAEAAAAQAP//AgAKAAEAAAAQAAAAAgAKAAEAAAAQAAEAAgAKAAEAAAAQAAIAAgAKAAEAAAAQAAMAAgAKAAEAAAAQAAQAAgAKAAEAAAAQAAUAAgAKAAEAAAAQAAYAAgAKAAEAAAAQAAcAAgAKAAEAAAAQAAgAAgAKAAEAAAAQAAkAAgAKAAEAAAAQAAoAAgAKAAEAAAAQAAsAAgAKAAEAAAAQAAwAAgAKAAEAAAAQAA0AAgAKAAEAAAARAP3/AgAKAAEAAAARAP7/AgAJAAIAAAARAP//AgAKAAEAAAARAAAAAgAJAAIAAAARAAwAAgAJAAIAAAARAA0AAgAKAAEAAAALAA4AAgAJAAIAAAALAA8AAgAKAAEAAAAMAPn/AgAKAAEAAAAMAPr/AgAKAAEAAAAMAPv/AgAKAAEAAAAMAPz/AgAKAAEAAAAMAA4AAgAKAAEAAAAMAA8AAgAKAAEAAAANAPn/AgAKAAEAAAANAPr/AgAJAAIAAAANAPv/AgAKAAEAAAANAPz/AgAJAAIAAAANAA4AAgAJAAIAAAANAA8AAgAKAAEAAAAOAPn/AgAKAAEAAAAOAPr/AgAKAAEAAAAOAPv/AgAKAAEAAAAOAPz/AgAKAAEAAAAOAA4AAgAKAAEAAAAOAA8AAgAKAAEAAAAPAPn/AgAKAAEAAAAPAPr/AgAJAAIAAAAPAPv/AgAKAAEAAAAPAPz/AgAJAAIAAAAPAA4AAgAJAAIAAAAPAA8AAgAKAAEAAAAQAPn/AgAKAAEAAAAQAPr/AgAKAAEAAAAQAPv/AgAKAAEAAAAQAPz/AgAKAAEAAAAQAA4AAgAKAAEAAAAQAA8AAgAKAAEAAAARAPn/AgAKAAEAAAARAPr/AgAJAAIAAAARAPv/AgAKAAEAAAARAPz/AgAJAAIAAAARAAEAAgAKAAEAAAARAAIAAgAJAAIAAAARAAMAAgAKAAEAAAARAAQAAgAJAAIAAAARAAUAAgAKAAEAAAARAAYAAgAJAAIAAAARAAcAAgAKAAEAAAARAAgAAgAJAAIAAAARAAkAAgAKAAEAAAARAAoAAgAJAAIAAAARAAsAAgAKAAEAAAARAA4AAgAJAAIAAAARAA8AAgAKAAEAAAASAPn/AgAKAAEAAAASAPr/AgAKAAEAAAASAPv/AgAKAAEAAAASAPz/AgAKAAEAAAASAP3/AgAKAAEAAAASAP7/AgAKAAEAAAASAP//AgAKAAEAAAASAAAAAgAKAAEAAAASAAEAAgAKAAEAAAASAAIAAgAKAAEAAAASAAMAAgAKAAEAAAASAAQAAgAKAAEAAAASAAUAAgAKAAEAAAASAAYAAgAKAAEAAAASAAcAAgAKAAEAAAASAAgAAgAKAAEAAAASAAkAAgAKAAEAAAASAAoAAgAKAAEAAAASAAsAAgAKAAEAAAASAAwAAgAKAAEAAAASAA0AAgAKAAEAAAASAA4AAgAKAAEAAAASAA8AAgAKAAEAAAATAPn/AgAKAAEAAAATAPr/AgAJAAIAAAATAPv/AgAKAAEAAAATAPz/AgAJAAIAAAATAP3/AgAKAAEAAAATAP7/AgAJAAIAAAATAP//AgAKAAEAAAATAAAAAgAJAAIAAAATAAEAAgAKAAEAAAATAAIAAgAJAAIAAAATAAMAAgAKAAEAAAATAAQAAgAJAAIAAAATAAUAAgAKAAEAAAATAAYAAgAJAAIAAAATAAcAAgAKAAEAAAATAAgAAgAJAAIAAAATAAkAAgAKAAEAAAATAAoAAgAJAAIAAAATAAsAAgAKAAEAAAATAAwAAgAJAAIAAAATAA0AAgAKAAEAAAATAA4AAgAJAAIAAAATAA8AAgAKAAEAAAAUAPn/AgAKAAEAAAAUAPr/AgAKAAEAAAAUAPv/AgAKAAEAAAAUAPz/AgAKAAEAAAAUAP3/AgAKAAEAAAAUAP7/AgAKAAEAAAAUAP//AgAKAAEAAAAUAAAAAgAKAAEAAAAUAAEAAgAKAAEAAAAUAAIAAgAKAAEAAAAUAAMAAgAKAAEAAAAUAAQAAgAKAAEAAAAUAAUAAgAKAAEAAAAUAAYAAgAKAAEAAAAUAAcAAgAKAAEAAAAUAAgAAgAKAAEAAAAUAAkAAgAKAAEAAAAUAAoAAgAKAAEAAAAUAAsAAgAKAAEAAAAUAAwAAgAKAAEAAAAUAA0AAgAKAAEAAAAUAA4AAgAKAAEAAAAUAA8AAgAKAAEAAAAVAPn/AgAKAAEAAAAVAPr/AgAJAAIAAAAVAPv/AgAKAAEAAAAVAPz/AgAJAAIAAAAVAP3/AgAKAAEAAAAVAP7/AgAJAAIAAAAVAP//AgAKAAEAAAAVAAAAAgAJAAIAAAAVAAEAAgAKAAEAAAAVAAIAAgAJAAIAAAAVAAMAAgAKAAEAAAAVAAQAAgAJAAIAAAAVAAUAAgAKAAEAAAAVAAYAAgAJAAIAAAAVAAcAAgAKAAEAAAAVAAgAAgAJAAIAAAAVAAkAAgAKAAEAAAAVAAoAAgAJAAIAAAAVAAsAAgAKAAEAAAAVAAwAAgAJAAIAAAAVAA0AAgAKAAEAAAAVAA4AAgAJAAIAAAAVAA8AAgAKAAEAAAAWAPn/AgAKAAEAAAAWAPr/AgAKAAEAAAAWAPv/AgAKAAEAAAAWAPz/AgAKAAEAAAAWAP3/AgAKAAEAAAAWAP7/AgAKAAEAAAAWAP//AgAKAAEAAAAWAAAAAgAKAAEAAAAWAAEAAgAKAAEAAAAWAAIAAgAKAAEAAAAWAAMAAgAKAAEAAAAWAAQAAgAKAAEAAAAWAAUAAgAKAAEAAAAWAAYAAgAKAAEAAAAWAAcAAgAKAAEAAAAWAAgAAgAKAAEAAAAWAAkAAgAKAAEAAAAWAAoAAgAKAAEAAAAWAAsAAgAKAAEAAAAWAAwAAgAKAAEAAAAWAA0AAgAKAAEAAAAWAA4AAgAKAAEAAAAWAA8AAgAKAAEAAAAXAPn/AgAKAAEAAAAXAPr/AgAJAAIAAAAXAPv/AgAKAAEAAAAXAPz/AgAJAAIAAAAXAP3/AgAKAAEAAAAXAP7/AgAJAAIAAAAXAP//AgAKAAEAAAAXAAAAAgAJAAIAAAAXAAEAAgAKAAEAAAAXAAIAAgAJAAIAAAAXAAMAAgAKAAEAAAAXAAQAAgAJAAIAAAAXAAUAAgAKAAEAAAAXAAYAAgAJAAIAAAAXAAcAAgAKAAEAAAAXAAgAAgAJAAIAAAAXAAkAAgAKAAEAAAAXAAoAAgAJAAIAAAAXAAsAAgAKAAEAAAAXAAwAAgAJAAIAAAAXAA0AAgAKAAEAAAAXAA4AAgAJAAIAAAAXAA8AAgAKAAEAAAAYAPn/AgAKAAEAAAAYAPr/AgAKAAEAAAAYAPv/AgAKAAEAAAAYAPz/AgAKAAEAAAAYAP3/AgAKAAEAAAAYAP7/AgAKAAEAAAAYAP//AgAKAAEAAAAYAAAAAgAKAAEAAAAYAAEAAgAKAAEAAAAYAAIAAgAKAAEAAAAYAAMAAgAKAAEAAAAYAAQAAgAKAAEAAAAYAAUAAgAKAAEAAAAYAAYAAgAKAAEAAAAYAAcAAgAKAAEAAAAYAAgAAgAKAAEAAAAYAAkAAgAKAAEAAAAYAAoAAgAKAAEAAAAYAAsAAgAKAAEAAAAYAAwAAgAKAAEAAAAYAA0AAgAKAAEAAAAYAA4AAgAKAAEAAAAYAA8AAgAKAAEAAAAZAPn/AgAKAAEAAAAZAPr/AgAJAAIAAAAZAPv/AgAKAAEAAAAZAPz/AgAJAAIAAAAZAP3/AgAKAAEAAAAZAP7/AgAJAAIAAAAZAP//AgAKAAEAAAAZAAAAAgAJAAIAAAAZAAEAAgAKAAEAAAAZAAIAAgAJAAIAAAAZAAMAAgAKAAEAAAAZAAQAAgAJAAIAAAAZAAUAAgAKAAEAAAAZAAYAAgAJAAIAAAAZAAcAAgAKAAEAAAAZAAgAAgAJAAIAAAAZAAkAAgAKAAEAAAAZAAoAAgAJAAIAAAAZAAsAAgAKAAEAAAAZAAwAAgAJAAIAAAAZAA0AAgAKAAEAAAAZAA4AAgAJAAIAAAAZAA8AAgAKAAEAAAAaAPn/AgAKAAEAAAAaAPr/AgAKAAEAAAAaAPv/AgAKAAEAAAAaAPz/AgAKAAEAAAAaAP3/AgAKAAEAAAAaAP7/AgAKAAEAAAAaAP//AgAKAAEAAAAaAAAAAgAKAAEAAAAaAAEAAgAKAAEAAAAaAAIAAgAKAAEAAAAaAAMAAgAKAAEAAAAaAAQAAgAKAAEAAAAaAAUAAgAKAAEAAAAaAAYAAgAKAAEAAAAaAAcAAgAKAAEAAAAaAAgAAgAKAAEAAAAaAAkAAgAKAAEAAAAaAAoAAgAKAAEAAAAaAAsAAgAKAAEAAAAaAAwAAgAKAAEAAAAaAA0AAgAKAAEAAAAaAA4AAgAKAAEAAAAaAA8AAgAKAAEAAAAbAPn/AgAKAAEAAAAbAPr/AgAJAAIAAAAbAPv/AgAKAAEAAAAbAPz/AgAJAAIAAAAbAP3/AgAKAAEAAAAbAP7/AgAJAAIAAAAbAP//AgAKAAEAAAAbAAAAAgAJAAIAAAAbAAEAAgAKAAEAAAAbAAIAAgAJAAIAAAAbAAMAAgAKAAEAAAAbAAQAAgAJAAIAAAAbAAUAAgAKAAEAAAAbAAYAAgAJAAIAAAAbAAcAAgAKAAEAAAAbAAgAAgAJAAIAAAAbAAkAAgAKAAEAAAAbAAoAAgAJAAIAAAAbAAsAAgAKAAEAAAAbAAwAAgAJAAIAAAAbAA0AAgAKAAEAAAAbAA4AAgAJAAIAAAAbAA8AAgAKAAEAAAAcAPn/AgAKAAEAAAAcAPr/AgAKAAEAAAAcAPv/AgAKAAEAAAAcAPz/AgAKAAEAAAAcAP3/AgAKAAEAAAAcAP7/AgAKAAEAAAAcAP//AgAKAAEAAAAcAAAAAgAKAAEAAAAcAAEAAgAKAAEAAAAcAAIAAgAKAAEAAAAcAAMAAgAKAAEAAAAcAAQAAgAKAAEAAAAcAAUAAgAKAAEAAAAcAAYAAgAKAAEAAAAcAAcAAgAKAAEAAAAcAAgAAgAKAAEAAAAcAAkAAgAKAAEAAAAcAAoAAgAKAAEAAAAcAAsAAgAKAAEAAAAcAAwAAgAKAAEAAAAcAA0AAgAKAAEAAAAcAA4AAgAKAAEAAAAcAA8AAgAKAAEAAAAdAPn/AgAKAAEAAAAdAPr/AgAJAAIAAAAdAPv/AgAKAAEAAAAdAPz/AgAJAAIAAAAdAP3/AgAKAAEAAAAdAP7/AgAJAAIAAAAdAP//AgAKAAEAAAAdAAAAAgAJAAIAAAAdAAEAAgAKAAEAAAAdAAIAAgAJAAIAAAAdAAMAAgAKAAEAAAAdAAQAAgAJAAIAAAAdAAUAAgAKAAEAAAAdAAYAAgAJAAIAAAAdAAcAAgAKAAEAAAAdAAgAAgAJAAIAAAAdAAkAAgAKAAEAAAAdAAoAAgAJAAIAAAAdAAsAAgAKAAEAAAAdAAwAAgAJAAIAAAAdAA0AAgAKAAEAAAAdAA4AAgAJAAIAAAAdAA8AAgAKAAEAAAD5/wcAAgAKAAEAAAD5/wgAAgAJAAIAAAD5/wkAAgAKAAEAAAD5/woAAgAJAAIAAAD5/wsAAgAKAAEAAAD5/wwAAgAJAAIAAAD5/w0AAgAKAAEAAAD5/w4AAgAJAAIAAAD5/w8AAgAKAAEAAAD6/wcAAgAKAAEAAAD6/wgAAgAKAAEAAAD6/wkAAgAKAAEAAAD6/woAAgAKAAEAAAD6/wsAAgAKAAEAAAD6/wwAAgAKAAEAAAD6/w0AAgAKAAEAAAD6/w4AAgAKAAEAAAD6/w8AAgAKAAEAAAD7/wUAAgAKAAEAAAD7/wYAAgAJAAIAAAD7/wcAAgAKAAEAAAD7/wgAAgAJAAIAAAD7/wkAAgAKAAEAAAD7/woAAgAJAAIAAAD7/wsAAgAKAAEAAAD7/wwAAgAJAAIAAAD7/w0AAgAKAAEAAAD7/w4AAgAJAAIAAAD7/w8AAgAKAAEAAAD8/wUAAgAKAAEAAAD8/wYAAgAKAAEAAAD8/wcAAgAKAAEAAAD8/wgAAgAKAAEAAAD8/wkAAgAKAAEAAAD8/woAAgAKAAEAAAD8/wsAAgAKAAEAAAD8/wwAAgAKAAEAAAD8/w0AAgAKAAEAAAD8/w4AAgAKAAEAAAD8/w8AAgAKAAEAAAD9/wUAAgAKAAEAAAD9/wYAAgAJAAIAAAD9/wcAAgAKAAEAAAD9/wgAAgAJAAIAAAD9/wkAAgAKAAEAAAD9/woAAgAJAAIAAAD9/wsAAgAKAAEAAAD9/wwAAgAJAAIAAAD9/w0AAgAKAAEAAAD9/w4AAgAJAAIAAAD9/w8AAgAKAAEAAAD+/wUAAgAKAAEAAAD+/wYAAgAKAAEAAAD+/wcAAgAKAAEAAAD+/wgAAgAKAAEAAAD+/wkAAgAKAAEAAAD+/woAAgAKAAEAAAD+/wsAAgAKAAEAAAD+/wwAAgAKAAEAAAD+/w0AAgAKAAEAAAD+/w4AAgAKAAEAAAD+/w8AAgAKAAEAAAD//wUAAgAKAAEAAAD//wYAAgAJAAIAAAD//wcAAgAKAAEAAAD//wgAAgAJAAIAAAD//wkAAgAKAAEAAAD//woAAgAJAAIAAAD//wsAAgAKAAEAAAD//wwAAgAJAAIAAAD//w0AAgAKAAEAAAD//w4AAgAJAAIAAAD//w8AAgAKAAEAAAAAAAUAAgAKAAEAAAAAAAYAAgAKAAEAAAAAAAcAAgAKAAEAAAAAAAgAAgAKAAEAAAAAAAkAAgAKAAEAAAAAAAoAAgAKAAEAAAAAAAsAAgAKAAEAAAAAAAwAAgAKAAEAAAAAAA0AAgAKAAEAAAAAAA4AAgAKAAEAAAAAAA8AAgAKAAEAAAABAAUAAgAKAAEAAAABAAYAAgAJAAIAAAABAAcAAgAKAAEAAAABAAgAAgAJAAIAAAABAAkAAgAKAAEAAAABAAoAAgAJAAIAAAABAAsAAgAKAAEAAAABAAwAAgAJAAIAAAABAA0AAgAKAAEAAAABAA4AAgAJAAIAAAABAA8AAgAKAAEAAAACAAUAAgAKAAEAAAACAAYAAgAKAAEAAAACAAcAAgAKAAEAAAACAAgAAgAKAAEAAAACAAkAAgAKAAEAAAACAAoAAgAKAAEAAAACAAsAAgAKAAEAAAACAAwAAgAKAAEAAAACAA0AAgAKAAEAAAACAA4AAgAKAAEAAAACAA8AAgAKAAEAAAADAAUAAgAKAAEAAAADAAYAAgAJAAIAAAADAAcAAgAKAAEAAAADAAgAAgAJAAIAAAADAAkAAgAKAAEAAAADAAoAAgAJAAIAAAADAAsAAgAKAAEAAAADAAwAAgAJAAIAAAADAA0AAgAKAAEAAAADAA4AAgAJAAIAAAADAA8AAgAKAAEAAAAEAAUAAgAKAAEAAAAEAAYAAgAKAAEAAAAEAAcAAgAKAAEAAAAEAAgAAgAKAAEAAAAEAAkAAgAKAAEAAAAEAAoAAgAKAAEAAAAEAAsAAgAKAAEAAAAEAAwAAgAKAAEAAAAEAA0AAgAKAAEAAAAEAA4AAgAKAAEAAAAEAA8AAgAKAAEAAAAFAAUAAgAKAAEAAAAFAAYAAgAJAAIAAAAFAAcAAgAKAAEAAAAFAAgAAgAJAAIAAAAFAAkAAgAKAAEAAAAFAAoAAgAJAAIAAAAFAAsAAgAKAAEAAAAFAAwAAgAJAAIAAAAFAA0AAgAKAAEAAAAFAA4AAgAJAAIAAAAFAA8AAgAKAAEAAAAGAAUAAgAKAAEAAAAGAAYAAgAKAAEAAAAGAAcAAgAKAAEAAAAGAAgAAgAKAAEAAAAGAAkAAgAKAAEAAAAGAAoAAgAKAAEAAAAGAAsAAgAKAAEAAAAGAAwAAgAKAAEAAAAGAA0AAgAKAAEAAAAGAA4AAgAKAAEAAAAGAA8AAgAKAAEAAAAHAAUAAgAKAAEAAAAHAAYAAgAJAAIAAAAHAAcAAgAKAAEAAAAHAAgAAgAJAAIAAAAHAAkAAgAKAAEAAAAHAAoAAgAJAAIAAAAHAAsAAgAKAAEAAAAHAAwAAgAJAAIAAAAHAA0AAgAKAAEAAAAHAA4AAgAJAAIAAAAHAA8AAgAKAAEAAAAIAAUAAgAKAAEAAAAIAAYAAgAKAAEAAAAIAAcAAgAKAAEAAAAIAAgAAgAKAAEAAAAIAAkAAgAKAAEAAAAIAAoAAgAKAAEAAAAIAAsAAgAKAAEAAAAIAAwAAgAKAAEAAAAIAA0AAgAKAAEAAAAIAA4AAgAKAAEAAAAIAA8AAgAKAAEAAAAJAAUAAgAKAAEAAAAJAAYAAgAJAAIAAAAJAAcAAgAKAAEAAAAJAAgAAgAJAAIAAAAJAAkAAgAKAAEAAAAJAAoAAgAJAAIAAAAJAAsAAgAKAAEAAAAJAAwAAgAJAAIAAAAJAA0AAgAKAAEAAAAJAA4AAgAJAAIAAAAJAA8AAgAKAAEAAAAKAAUAAgAKAAEAAAAKAAYAAgAKAAEAAAAKAAcAAgAKAAEAAAAKAAgAAgAKAAEAAAAKAAkAAgAKAAEAAAAKAAoAAgAKAAEAAAAKAAsAAgAKAAEAAAAKAAwAAgAKAAEAAAAKAA0AAgAKAAEAAAAKAA4AAgAKAAEAAAAKAA8AAgAKAAEAAAALAAUAAgAKAAEAAAALAAYAAgAJAAIAAAALAAcAAgAKAAEAAAALAAgAAgAJAAIAAAALAAkAAgAKAAEAAAALAAoAAgAJAAIAAAALAAsAAgAKAAEAAAALAAwAAgAJAAIAAAALAA0AAgAKAAEAAAAMAAUAAgAKAAEAAAAMAAYAAgAKAAEAAAAMAAcAAgAKAAEAAAAMAAgAAgAKAAEAAAAMAAkAAgAKAAEAAAAMAAoAAgAKAAEAAAAMAAsAAgAKAAEAAAAMAAwAAgAKAAEAAAAMAA0AAgAKAAEAAAANAAUAAgAKAAEAAAANAAYAAgAJAAIAAAANAAcAAgAKAAEAAAANAAgAAgAJAAIAAAANAAkAAgAKAAEAAAANAAoAAgAJAAIAAAANAAsAAgAKAAEAAAANAAwAAgAJAAIAAAANAA0AAgAKAAEAAAD5/xAAAgAJAAIAAAD6/xAAAgAKAAEAAAD7/xAAAgAJAAIAAAD8/xAAAgAKAAEAAAD9/xAAAgAJAAIAAAD+/xAAAgAKAAEAAAD//xAAAgAJAAIAAAAAABAAAgAKAAEAAAABABAAAgAJAAIAAAACABAAAgAKAAEAAAADABAAAgAJAAIAAAAEABAAAgAKAAEAAAAFABAAAgAJAAIAAAAGABAAAgAKAAEAAAAHABAAAgAJAAIAAAAIABAAAgAKAAEAAAAJABAAAgAJAAIAAAAKABAAAgAKAAEAAAALABAAAgAJAAIAAAAMABAAAgAKAAEAAAANABAAAgAJAAIAAAAOABAAAgAKAAEAAAAPABAAAgAJAAIAAAAQABAAAgAKAAEAAAARABAAAgAJAAIAAAASABAAAgAKAAEAAAATABAAAgAJAAIAAAAUABAAAgAKAAEAAAAVABAAAgAJAAIAAAAWABAAAgAKAAEAAAAXABAAAgAJAAIAAAAYABAAAgAKAAEAAAAZABAAAgAJAAIAAAAaABAAAgAKAAEAAAAbABAAAgAJAAIAAAAcABAAAgAKAAEAAAAdABAAAgAJAAIAAAAeAPn/AgAKAAEAAAAeAPr/AgAKAAEAAAAeAPv/AgAKAAEAAAAeAPz/AgAKAAEAAAAeAP3/AgAKAAEAAAAeAP7/AgAKAAEAAAAeAP//AgAKAAEAAAAeAAAAAgAKAAEAAAAeAAEAAgAKAAEAAAAeAAIAAgAKAAEAAAAeAAMAAgAKAAEAAAAeAAQAAgAKAAEAAAAeAAUAAgAKAAEAAAAeAAYAAgAKAAEAAAAeAAcAAgAKAAEAAAAeAAgAAgAKAAEAAAAeAAkAAgAKAAEAAAAeAAoAAgAKAAEAAAAeAAsAAgAKAAEAAAAeAAwAAgAKAAEAAAAeAA0AAgAKAAEAAAAeAA4AAgAKAAEAAAAeAA8AAgAKAAEAAAAeABAAAgAKAAEAAAAfAPn/AgAKAAEAAAAfAPr/AgAJAAIAAAAfAPv/AgAKAAEAAAAfAPz/AgAJAAIAAAAfAP3/AgAKAAEAAAAfAP7/AgAJAAIAAAAfAP//AgAKAAEAAAAfAAAAAgAJAAIAAAAfAAEAAgAKAAEAAAAfAAIAAgAJAAIAAAAfAAMAAgAKAAEAAAAfAAQAAgAJAAIAAAAfAAUAAgAKAAEAAAAfAAYAAgAJAAIAAAAfAAcAAgAKAAEAAAAfAAgAAgAJAAIAAAAfAAkAAgAKAAEAAAAfAAoAAgAJAAIAAAAfAAsAAgAKAAEAAAAfAAwAAgAJAAIAAAAfAA0AAgAKAAEAAAAfAA4AAgAJAAIAAAAfAA8AAgAKAAEAAAAfABAAAgAJAAIAAAAgAPn/AgAKAAEAAAAgAPr/AgAKAAEAAAAgAPv/AgAKAAEAAAAgAPz/AgAKAAEAAAAgAP3/AgAKAAEAAAAgAP7/AgAKAAEAAAAgAP//AgAKAAEAAAAgAAAAAgAKAAEAAAAgAAEAAgAKAAEAAAAgAAIAAgAKAAEAAAAgAAMAAgAKAAEAAAAgAAQAAgAKAAEAAAAgAAUAAgAKAAEAAAAgAAYAAgAKAAEAAAAgAAcAAgAKAAEAAAAgAAgAAgAKAAEAAAAgAAkAAgAKAAEAAAAgAAoAAgAKAAEAAAAgAAsAAgAKAAEAAAAgAAwAAgAKAAEAAAAgAA0AAgAKAAEAAAAgAA4AAgAKAAEAAAAgAA8AAgAKAAEAAAAgABAAAgAKAAEAAAA=") tile_set = ExtResource("3_3mb6h") +[connection signal="value_changed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/SpeedContainer/Speed" to="." method="_on_speed_value_changed"] +[connection signal="pressed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/SpeedContainer/ResetSpeed" to="." method="_on_reset_speed_pressed"] [connection signal="value_changed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/ZoomContainer/ZoomLevel" to="." method="_on_zoom_level_value_changed"] [connection signal="pressed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/ZoomContainer/ResetZoom" to="." method="_on_reset_zoom_pressed"] [connection signal="value_changed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/NContainer/N" to="." method="_on_n_plants_value_changed"] @@ -157,3 +204,5 @@ tile_set = ExtResource("3_3mb6h") [connection signal="value_changed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/AgeContainer/StartAge" to="." method="_on_start_age_value_changed"] [connection signal="toggled" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/AgeContainer/RandomAge" to="." method="_on_random_age_toggled"] [connection signal="value_changed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/AgeContainer/EndAge" to="." method="_on_end_age_value_changed"] +[connection signal="value_changed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/MutationLvlContainer/MinLvl" to="." method="_on_min_lvl_value_changed"] +[connection signal="value_changed" from="Camera2D/CanvasLayer/VBoxContainer/Folder/VBoxContainer/MutationLvlContainer/MaxLvl" to="." method="_on_max_lvl_value_changed"] diff --git a/entities/player/inventory/scripts/inventory.gd b/entities/player/inventory/scripts/inventory.gd index 56d3c76..67a0848 100644 --- a/entities/player/inventory/scripts/inventory.gd +++ b/entities/player/inventory/scripts/inventory.gd @@ -1,133 +1,145 @@ +@tool extends Resource class_name Inventory signal updated(inventory: Inventory) +signal tool_added(item: Item) -@export var items: Array[Item] = [] +@export var tools: Array[Item] = [] +@export var seeds: Array[Item] = [] @export var current_item_ind: int = 0 # over both tools and items -@export var n_tools: int = 0 - -func _init(inventory_size: int = 1): - set_size(inventory_size) - add_item(Detector.new()) - add_item(Shovel.new()) - -func get_n_item_slots() -> int: - return items.size() - n_tools - -func set_size(new_size: int): - if new_size >= 0: - items.resize(n_tools + new_size) - updated.emit(self ) - -func change_size(size_mod: int): - set_size(items.size() - n_tools + size_mod) +@export var seeds_size : int : + set(v): + seeds_size = v + update_seeds_size(v) +func _init(size : int = 1): + seeds_size = size + func current_is_tool() -> bool: - return current_item_ind >= 0 && current_item_ind < n_tools - -func get_best_available_slot_ind(): - if !current_is_tool() && items[current_item_ind] == null: - return current_item_ind - for i in range(n_tools, items.size()): - if items[i] == null: - return i - # it's full - if !current_is_tool(): - return current_item_ind - else: - return n_tools + return current_item_ind <= len(tools) func set_current_item(new_ind: int): - if new_ind >= items.size(): - return - + if new_ind < 0: + new_ind += (len(tools) + len(seeds)) if new_ind != current_item_ind: - current_item_ind = new_ind - updated.emit(self ) + current_item_ind = new_ind % (len(tools) + len(seeds)) + updated.emit(self) func change_current_item(ind_mod: int): - if items.size() == 0: - current_item_ind = 0 - return - var new_ind: int = current_item_ind + ind_mod - new_ind = new_ind % items.size() - if new_ind < 0: - new_ind += items.size() - set_current_item(new_ind) + set_current_item(current_item_ind + ind_mod) func add_item(item: Item) -> bool: if item.type != Item.ItemType.TOOL_ITEM: - var best_ind = get_best_available_slot_ind() - return set_item(item, best_ind) - elif item.type == Item.ItemType.TOOL_ITEM && !items.has(item): - items.insert(n_tools, item) - if current_item_ind >= n_tools: - current_item_ind += 1 - n_tools += 1 - updated.emit(self ) + return add_seed(item) + elif item.type == Item.ItemType.TOOL_ITEM and not has_item_with_name(item.get_item_name()): + add_tool(item) return true else: return false -func set_item(item: Item, ind: int = 0) -> bool: - if ind < 0 || ind >= items.size(): +func add_tool(tool: Item) -> bool: + if not has_item_with_name(tool.get_item_name()): + tools.append(tool) + current_item_ind += 1 + updated.emit(self) + tool_added.emit(tool) + return true + else: return false - items[ind] = item - updated.emit(self ) - return true + +func add_seed(s: Item) -> bool: + update_seeds_size() + if not is_full(): + var ind = ( + current_item_ind - len(tools) if current_item_ind > len(tools) + else 0 + ) + + while seeds[ind] != null: + ind = (ind+1) % len(seeds) + + seeds[ind] = s + + updated.emit(self) + return true + else: + return false + +func update_seeds_size(size = seeds_size): + while size > len(seeds): + seeds.append(null) + + while len(seeds) > size and seeds.find(null) != -1: + seeds.pop_at(seeds.find(null)) + +func get_all_items() -> Array[Item]: + return tools + seeds func get_item(ind: int = current_item_ind) -> Item: - if ind < 0 || ind > items.size(): + if ind < 0 || ind > len(get_all_items()): return null - return items[ind] + return get_all_items()[ind] func has_item(item: Item) -> bool: - return items.has(item) + return get_all_items().has(item) -func remove_item(item: Item): - if item.type == Item.ItemType.TOOL_ITEM: - printerr("trying to remove a tool") +func has_item_with_name(name: String) -> bool: + var id = get_all_items().find_custom( + (func (i : Item): + return i and i.get_item_name() == name) + ) + return id != -1 + +func remove_tool(ind : int): + if ind != -1: + tools.pop_at(ind) + updated.emit(self) + +func remove_seed(ind : int): + if ind != -1: + seeds[ind] = null + updated.emit(self) + update_seeds_size(seeds_size) + +func remove_item(item: Item) -> bool: + if tools.find(item) != -1: + remove_tool(tools.find(item)) + elif seeds.find(item) != -1: + remove_seed(seeds.find(item)) else: - var ind = items.find(item) - if ind >= 0: - items[ind] = null - updated.emit(self ) + return false + return true -func remove_item_at(ind: int = current_item_ind): - if ind < 0 || ind > items.size(): - return +func remove_item_at(ind: int = current_item_ind) -> bool: + if ind < 0 || ind > len(seeds) + len(tools): + return false - if ind < n_tools: - printerr("trying to remove a tool") - return - - items[ind] = null - updated.emit(self ) + if ind < len(tools): + remove_tool(ind) + else: + remove_seed(ind - len(tools)) + + return true func remove_current_item(): remove_item_at() func pop_item(ind: int = current_item_ind) -> Item: - if ind < 0 || ind > items.size(): - return + if ind < 0 || ind > len(seeds) + len(tools): + return null - if ind < n_tools: - printerr("trying to remove a tool") - return + var item_removed = get_item(ind) + + remove_item_at(ind) - var item_removed: Item = items[ind] - items[ind] = null - updated.emit(self ) return item_removed func is_full(): - for i in range(n_tools, items.size()): - if items[i] == null: + for i in range(len(seeds)): + if seeds[i] == null: return false return true -func clear_items(): - for i in range(n_tools, items.size()): - items[i] = null - updated.emit(self ) +func current_ind_on_tools() -> bool: + return current_item_ind < len(tools) diff --git a/entities/player/inventory/scripts/items/fork.gd b/entities/player/inventory/scripts/items/fork.gd index 5f79653..f092ecf 100644 --- a/entities/player/inventory/scripts/items/fork.gd +++ b/entities/player/inventory/scripts/items/fork.gd @@ -4,44 +4,45 @@ class_name Fork const USE_INTERVAL = 0.15 func get_item_name() -> String: - return tr("FORK") + return tr("FORK") func get_description() -> String: - return tr("FORK_DESC_TEXT") + return tr("FORK_DESC_TEXT") func get_icon() -> Texture2D: - return preload("res://common/icons/fork.svg") + return preload("res://common/icons/fork.svg") func get_item_type() -> ItemType: - return Item.ItemType.TOOL_ITEM + return Item.ItemType.TOOL_ITEM func get_energy_used() -> int: - return 1 + return 1 func get_usage_zone_radius() -> int: - return 50 + return 10 func get_usage_object_affected(i : InspectableEntity) -> bool: - return i is Plant + return i is Plant func use_text() -> String: - return tr("HARVEST") + return tr("HARVEST") func can_use(_player : Player, zone : Player.ActionZone) -> bool: - var areas = zone.get_affected_areas() - for area in areas : - if area is Plant: - return true - return false + var areas = zone.get_affected_areas() + for area in areas : + if area is Plant: + return true + return false func use(player : Player, zone : Player.ActionZone) -> bool: - for area in zone.get_affected_areas(): - if area and area is Plant: - harvest(area, player) - await player.get_tree().create_timer(USE_INTERVAL).timeout - - return true + var has_plant = false + for area in zone.get_affected_areas(): + if area and area is Plant: + harvest(area, player) + await player.get_tree().create_timer(USE_INTERVAL).timeout + has_plant = true + return has_plant func harvest(p : Plant, _player: Player): - AudioManager.play_sfx("Harvest") - p.harvest() + AudioManager.play_sfx("Harvest") + p.harvest() diff --git a/entities/player/inventory/scripts/items/pickaxe.gd b/entities/player/inventory/scripts/items/pickaxe.gd index 6fb58d9..ba5f777 100644 --- a/entities/player/inventory/scripts/items/pickaxe.gd +++ b/entities/player/inventory/scripts/items/pickaxe.gd @@ -1,7 +1,7 @@ extends Item class_name Pickaxe -const USE_INTERVAL = 0.15 +const DIG_PARTICLES := preload("res://entities/player/inventory/scripts/items/utils/dig_particles.tscn") func get_item_name() -> String: return tr("PICKAXE") @@ -29,13 +29,17 @@ func can_use(_player : Player, zone : Player.ActionZone) -> bool: return true return false -func use(_player : Player, zone : Player.ActionZone) -> bool: +func use(player : Player, zone : Player.ActionZone) -> bool: var bodies = zone.area.get_overlapping_bodies() - var rock_layer_id = bodies.find_custom(func (b) : return b is RockLayer) - if rock_layer_id != -1: - var rock_layer : RockLayer = bodies[rock_layer_id] + var rock_layers = bodies.filter(func (b) : return b is RockLayer) + if len(rock_layers): + player.region.dig_rocks(zone.get_tiles()) - return rock_layer.dig_rocks(zone.get_tiles()) + var particles := (DIG_PARTICLES.instantiate() as DigParticleEmmitter) + player.region.add_child(particles) + particles.global_position = zone.get_global_position() + particles.emit() + AudioManager.play_sfx("Mining") - return false + return true diff --git a/entities/player/inventory/scripts/items/seed.gd b/entities/player/inventory/scripts/items/seed.gd index 8d190aa..05c8a8e 100644 --- a/entities/player/inventory/scripts/items/seed.gd +++ b/entities/player/inventory/scripts/items/seed.gd @@ -1,51 +1,47 @@ extends Item class_name Seed -const MUTATION_PROBABILITY = 0.3 - const SHOVEL_ICON = preload("res://common/icons/shovel.svg") const GROWING_ICON = preload("res://common/icons/chevrons-up.svg") const SCORE_ICON = preload("res://common/icons/growth.svg") @export var plant_name : String -@export var plant_archetype: PlantArchetype @export var plant_mutations: Array[PlantMutation] @export var random_seed : int var stored_icon : Texture func _init( _plant_name : String = "", - _plant_archetype : PlantArchetype = PlantArchetype.get_random(), _plant_mutations : Array[PlantMutation] = [], ): plant_name = _plant_name - plant_archetype = _plant_archetype plant_mutations = _plant_mutations random_seed = randi() static func generate_from_parent(plant_data : PlantData) -> Seed: - if randf() < MUTATION_PROBABILITY: + var mutations : Array[PlantMutation] = plant_data.mutations + var mutation_probability = GameInfo.game_data.current_run.plant_info.get_mutation_probability() + + # Mutate for every time mutation probability exceed 1 + while mutation_probability > 1: + mutations = mutate_mutations(plant_data.mutations) + mutation_probability -= 1 + + if randf() < GameInfo.game_data.current_run.plant_info.get_mutation_probability(): return Seed.new( plant_data.plant_name, - plant_data.archetype, - mutate_mutations(plant_data) + mutate_mutations(mutations) ) else : - return Seed.new( + return Seed.new( plant_data.plant_name, - plant_data.archetype, plant_data.mutations.duplicate_deep() ) -static func generate_random() -> Seed: - var archetype = PlantArchetype.get_random() - var random_mutations : Array[PlantMutation] = [] - if randf() < MUTATION_PROBABILITY: - random_mutations = ([archetype.available_mutations.pick_random().duplicate_deep()] as Array[PlantMutation]) +static func generate_random(rarity := 0) -> Seed: var new_seed = Seed.new( Random.generate_random_word(), - PlantArchetype.get_random(), - random_mutations + [generate_first_mutation(rarity)] ) return new_seed @@ -95,7 +91,7 @@ func use(player : Player, zone : Player.ActionZone) -> bool: if player.region == null: return false - AudioManager.play_sfx("Dig") + AudioManager.play_sfx("Harvest") return player.region.plant(self,zone.get_global_position()) func card_info() -> CardInfo: @@ -142,42 +138,52 @@ func get_particles() -> Array[EffectParticles.Parameters]: return param -static func mutate_mutations(parent : PlantData) -> Array[PlantMutation]: +static func generate_first_mutation(rarity := 0) -> PlantMutation: + + var possible_mutation : PlantMutation = GameInfo.game_data.progression_data.available_mutations.filter( + func (m : PlantMutation): return m.get_base_rarity() <= rarity + ).pick_random().duplicate_deep() + + var level_to_add = rarity - possible_mutation.get_base_rarity() + + possible_mutation.level += level_to_add + + return possible_mutation + +static func mutate_mutations(mutations : Array[PlantMutation]) -> Array[PlantMutation]: var mutation_possibility : Array[MutationPossibility] = [ AddMutation.new() ] if ( - len(parent.mutations) >= GameInfo.game_data.max_mutations_by_plant + len(mutations) >= GameInfo.game_data.current_run.plant_info.get_mutation_max_number() ): mutation_possibility = [ UpgradeMutation.new(), - RemoveMutation.new(), ] - elif len(parent.mutations) > 0: + elif len(mutations) > 0: mutation_possibility = [ AddMutation.new(), UpgradeMutation.new(), - RemoveMutation.new(), ] var chosen_mutation_possibility = mutation_possibility.pick_random() - return chosen_mutation_possibility.mutate(parent) + return chosen_mutation_possibility.mutate(mutations) class MutationPossibility: - func mutate(_parent : PlantData)-> Array[PlantMutation]: + func mutate(_mutations : Array[PlantMutation])-> Array[PlantMutation]: return [] class AddMutation extends MutationPossibility: - func mutate(parent : PlantData)-> Array[PlantMutation]: - var new_mutations = parent.mutations.duplicate_deep() - var possible_new_mutations = parent.archetype.available_mutations.duplicate_deep() + func mutate(mutations : Array[PlantMutation])-> Array[PlantMutation]: + var new_mutations = mutations.duplicate_deep() + var possible_new_mutations = GameInfo.game_data.progression_data.available_mutations.duplicate_deep() possible_new_mutations = possible_new_mutations.filter( func (m : PlantMutation): - return parent.mutations.find_custom(func(m2: PlantMutation): return m2.name == m.name) == -1 + return mutations.find_custom(func(m2: PlantMutation): return m2.name == m.name) == -1 ) if len(possible_new_mutations): @@ -187,17 +193,17 @@ class AddMutation extends MutationPossibility: class UpgradeMutation extends MutationPossibility: func mutate( - parent : PlantData + mutations : Array[PlantMutation] ) -> Array[PlantMutation]: - var new_mutations = parent.mutations.duplicate_deep() + var new_mutations = mutations.duplicate_deep() new_mutations.pick_random().level += 1 return new_mutations class RemoveMutation extends MutationPossibility: - func mutate(parent : PlantData)-> Array[PlantMutation]: - var new_mutations = parent.mutations.duplicate_deep() + func mutate(mutations : Array[PlantMutation])-> Array[PlantMutation]: + var new_mutations = mutations.duplicate_deep() var mut_to_remove = new_mutations.pick_random() if mut_to_remove.level > 1: diff --git a/entities/player/inventory/scripts/items/ship_portal.gd b/entities/player/inventory/scripts/items/ship_portal.gd index 325031c..4329214 100644 --- a/entities/player/inventory/scripts/items/ship_portal.gd +++ b/entities/player/inventory/scripts/items/ship_portal.gd @@ -32,5 +32,5 @@ func use_text() -> String: return tr("SHIP_TELEPORT_USE_TEXT") func use(_player : Player, _zone: Player.ActionZone): - SceneManager.change_to_scene_id('COCKPIT') + SceneManager.change_to_scene(CockpitScene.new()) AudioManager.play_sfx("Teleportation") \ No newline at end of file diff --git a/entities/player/inventory/scripts/items/shovel.gd b/entities/player/inventory/scripts/items/shovel.gd index d20f060..4417400 100644 --- a/entities/player/inventory/scripts/items/shovel.gd +++ b/entities/player/inventory/scripts/items/shovel.gd @@ -1,3 +1,4 @@ +@tool extends Fork class_name Shovel diff --git a/entities/player/inventory/scripts/items/utils/detector_signal.gd b/entities/player/inventory/scripts/items/utils/detector_signal.gd index cce5a3b..0629d33 100644 --- a/entities/player/inventory/scripts/items/utils/detector_signal.gd +++ b/entities/player/inventory/scripts/items/utils/detector_signal.gd @@ -2,11 +2,16 @@ extends Node2D class_name DetectorSignal -const SIGNAL_DURATION = 1 -const PARTICLES_DISTANCE = 100 +const SIGNAL_DURATION = 1.2 +const PARTICLES_DISTANCE = 180 +const ICON_SIZE = 40 +const POINT_ICON_SIZE = 30 +const POINT_ICON_SHIFT = 0.2 +const POINT_ICON = preload("res://common/icons/caret-down.svg") const DEFAULT_ICON = preload("res://common/icons/north-star.svg") const ENERGY_ICON = preload("res://common/icons/bolt.svg") const DOOR_ICON = preload("res://common/icons/logout.svg") +const PLANT_ICON = preload("res://common/icons/seedling.svg") var started_time = 0. var signals : Array[DetectorSignalIndividual] = [] @@ -20,16 +25,25 @@ func _init(region : Region, pos : Vector2): signals.append( DetectorSignalIndividual.new( (pos - e.global_position).normalized().angle(), - ENERGY_ICON + ENERGY_ICON, + Color("ffa617ff") ) ) if e is Door and e.available: signals.append( DetectorSignalIndividual.new( (pos - e.global_position).normalized().angle(), - DOOR_ICON - ) + (e as Door).to_scene.get_scene_icon(), + Color("ffa617ff") + ), ) + # if e is Plant: + # signals.append( + # DetectorSignalIndividual.new( + # (pos - e.global_position).normalized().angle(), + # PLANT_ICON + # ) + # ) func _draw(): if started_time < SIGNAL_DURATION: @@ -41,11 +55,26 @@ func _draw(): 5. ) for s in signals: - draw_texture( + draw_texture_rect( s.icon, - Vector2.ZERO - DEFAULT_ICON.get_size()/2 + Vector2.LEFT.rotated(s.angle) * started_time/SIGNAL_DURATION * PARTICLES_DISTANCE, + Rect2( + Vector2.ZERO - (Vector2.ONE * ICON_SIZE)/2 + Vector2.LEFT.rotated(s.angle) * started_time/SIGNAL_DURATION * PARTICLES_DISTANCE, + Vector2.ONE * ICON_SIZE + ), + false, + Color(s.color.r,s.color.g,s.color.b,1-started_time/SIGNAL_DURATION) + ) + draw_set_transform(Vector2.ZERO,s.angle + PI/2, Vector2.ONE) + draw_texture_rect( + POINT_ICON, + Rect2( + Vector2.ZERO - (Vector2.ONE * POINT_ICON_SIZE)/2 + Vector2.DOWN * (started_time/SIGNAL_DURATION + POINT_ICON_SHIFT) * PARTICLES_DISTANCE, + Vector2.ONE * POINT_ICON_SIZE + ), + false, Color(1.,1.,1.,1-started_time/SIGNAL_DURATION) ) + draw_set_transform(Vector2.ZERO,0., Vector2.ONE) func _process(delta): if started_time < SIGNAL_DURATION: @@ -57,11 +86,14 @@ func _process(delta): class DetectorSignalIndividual: var angle : float var icon : Texture + var color : Color func _init( _angle : float = 0., - _icon : Texture = DEFAULT_ICON + _icon : Texture = DEFAULT_ICON, + _color : Color = Color.WHITE, ): angle = _angle icon = _icon + color = _color diff --git a/entities/player/player.tscn b/entities/player/player.tscn index 761ed72..1b7fe36 100644 --- a/entities/player/player.tscn +++ b/entities/player/player.tscn @@ -135,6 +135,79 @@ tracks/0/keys = { "update": 0, "values": [Vector2(0.99999994, -17)] } +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("PlayerSprite:modulate:a") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1.0] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("PlayerSprite/CPUParticles2D:emitting") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} +tracks/3/type = "bezier" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("PlayerSprite:position:y") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-17, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} + +[sub_resource type="Animation" id="Animation_qiwj3"] +resource_name = "fall" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("PlayerSprite:modulate:a") +tracks/0/interp = 2 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0.1, 0.43333334, 1), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [0.0, 1.0, 1.0] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("PlayerSprite/CPUParticles2D:emitting") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0.56666666, 0.7), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [false, true] +} +tracks/2/type = "bezier" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("PlayerSprite:position:y") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"handle_modes": PackedInt32Array(0, 2, 1, 2), +"points": PackedFloat32Array(-181, -0.25, 0, 0.36666667, 89, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, -17, -0.16666669, -18, 0, 0), +"times": PackedFloat32Array(0.1, 0.5, 0.6666667, 1) +} [sub_resource type="Animation" id="Animation_8fjmc"] resource_name = "float" @@ -156,6 +229,7 @@ tracks/0/keys = { [sub_resource type="AnimationLibrary" id="AnimationLibrary_qiwj3"] _data = { &"RESET": SubResource("Animation_fkugw"), +&"fall": SubResource("Animation_qiwj3"), &"float": SubResource("Animation_8fjmc") } @@ -213,6 +287,6 @@ stream = ExtResource("7_qiwj3") volume_db = -3.0 bus = &"Sfx" -[node name="FloatAnimationPlayer" type="AnimationPlayer" parent="." unique_id=793749564] +[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=793749564] +unique_name_in_owner = true libraries/ = SubResource("AnimationLibrary_qiwj3") -autoplay = &"float" diff --git a/entities/player/scripts/player.gd b/entities/player/scripts/player.gd index b244281..3aff6a7 100644 --- a/entities/player/scripts/player.gd +++ b/entities/player/scripts/player.gd @@ -17,7 +17,7 @@ var region : Region : var data : PlayerData var last_action_area_movement_timer : float = 100. -var controlling_player : bool = true : +var controlling_player : bool = false : set(v): controlling_player = v velocity = Vector2.ZERO @@ -34,6 +34,13 @@ func _ready(): Pointer.player = self setup_preview_zone(data.inventory.get_item()) +func appear(with_falling_animation = true): + if with_falling_animation: + %AnimationPlayer.play("fall") + await %AnimationPlayer.animation_finished + controlling_player = true + %AnimationPlayer.play("float") + func _input(_event) -> void: if Input.is_action_pressed("change_item_left"): data.inventory.change_current_item(1) @@ -156,18 +163,17 @@ func pick_item(item : Item): func drop_item(): var ind_to_drop := data.inventory.current_item_ind - if data.inventory.current_is_tool(): - ind_to_drop = data.inventory.n_tools + while ( + (data.inventory.get_item(ind_to_drop) == null or ind_to_drop < len(data.inventory.tools)) + and ind_to_drop < len(data.inventory.get_all_items()) - 1 + ): + ind_to_drop += 1 var item_to_drop = data.inventory.pop_item(ind_to_drop) if item_to_drop: terrain.drop_item(item_to_drop, global_position) AudioManager.play_sfx("Drop") region.save() -func delete_item(item: Item): - if !data.inventory.current_is_tool(): - data.inventory.remove_item(item) - func try_use_item(item : Item, use_position : Vector2): await setup_action_zone(use_position, item) instruction = ItemActionInstruction.new( diff --git a/entities/player/scripts/player_data.gd b/entities/player/scripts/player_data.gd index 60a2e07..c0e3420 100644 --- a/entities/player/scripts/player_data.gd +++ b/entities/player/scripts/player_data.gd @@ -6,12 +6,36 @@ signal updated(player_data : PlayerData) const DEFAULT_MAX_ENERGY = 3 const DEFAULT_INVENTORY_SIZE = 3 -@export var max_energy : int = DEFAULT_MAX_ENERGY : - set(v): - max_energy = v - updated.emit(self) +@export var max_energy : int = DEFAULT_MAX_ENERGY + @export var energy : int = DEFAULT_MAX_ENERGY : set(v): energy = v updated.emit(self) -@export var inventory := Inventory.new(DEFAULT_INVENTORY_SIZE) \ No newline at end of file + +@export var inventory := Inventory.new(DEFAULT_INVENTORY_SIZE) + +func get_artefacts() -> Array[Artefact]: + if GameInfo and GameInfo.game_data and GameInfo.game_data.current_run: + return GameInfo.game_data.current_run.artefacts + return [] + +func update_with_artefacts(artefacts : Array[Artefact]): + inventory.seeds_size = calculate_inventory_size(artefacts) + max_energy = calculate_max_energy(artefacts) + updated.emit() + +func calculate_max_energy(artefacts : Array[Artefact]) -> int: + var v = DEFAULT_MAX_ENERGY + for a in artefacts: + v = a.modify_player_max_energy(v) + return v + +func calculate_inventory_size(artefacts : Array[Artefact]) -> int: + var v = DEFAULT_INVENTORY_SIZE + for a in artefacts: + v = a.modify_player_inventory_size(v) + return v + +func clear_inventory(): + inventory = Inventory.new(DEFAULT_INVENTORY_SIZE) diff --git a/entities/player_3d/dead_orchid.tscn b/entities/player_3d/dead_orchid.tscn new file mode 100644 index 0000000..e7b6696 --- /dev/null +++ b/entities/player_3d/dead_orchid.tscn @@ -0,0 +1,16 @@ +[gd_scene format=3 uid="uid://b2tn4biidxwdo"] + +[ext_resource type="PackedScene" uid="uid://111umh57ekg5" path="res://entities/player_3d/resources/3d_orchid.blend" id="1_4gn86"] + +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_xuy43"] +radius = 0.42504883 +height = 0.8718262 + +[node name="DeadOrchid" type="RigidBody3D" unique_id=1056532235] +transform = Transform3D(-0.98981106, 0, 0.14238709, 0, 1, 0, -0.14238709, 0, -0.98981106, 0, 0, 0) + +[node name="3d_orchid" parent="." unique_id=1207424236 instance=ExtResource("1_4gn86")] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="." unique_id=195534146] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.20080566, 0) +shape = SubResource("CapsuleShape3D_xuy43") diff --git a/entities/player_3d/player_3D.tscn b/entities/player_3d/player_3D.tscn index b3cd125..b24331b 100644 --- a/entities/player_3d/player_3D.tscn +++ b/entities/player_3d/player_3D.tscn @@ -11,6 +11,38 @@ size = Vector2(2, 2) radius = 0.5854492 height = 1.7342377 +[sub_resource type="Gradient" id="Gradient_dqi2u"] +interpolation_mode = 1 +offsets = PackedFloat32Array(0.7046632, 0.78238344, 1) +colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_o44vi"] +gradient = SubResource("Gradient_dqi2u") +width = 300 +height = 300 +fill = 1 +fill_from = Vector2(0.5, 0.5) +fill_to = Vector2(0.5, 0) + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_fcmrk"] +transparency = 1 +shading_mode = 0 +vertex_color_use_as_albedo = true +albedo_texture = SubResource("GradientTexture2D_o44vi") + +[sub_resource type="PlaneMesh" id="PlaneMesh_0oeag"] +material = SubResource("StandardMaterial3D_fcmrk") +size = Vector2(1, 1) + +[sub_resource type="Curve" id="Curve_3yrqc"] +_data = [Vector2(0, 0), 0.0, 3.0432534, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0] +point_count = 2 + +[sub_resource type="Gradient" id="Gradient_r4vrj"] +interpolation_mode = 2 +offsets = PackedFloat32Array(0, 0.87772924) +colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0) + [node name="Player3D" type="CharacterBody3D" unique_id=549819967 node_paths=PackedStringArray("pointer_texture_rect")] transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 0, 0, 0) script = ExtResource("1_pvvbh") @@ -19,10 +51,11 @@ pointer_texture_rect = NodePath("CanvasLayer/PointerTexture") [node name="Camera3D" type="Camera3D" parent="." unique_id=2091917091] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.19785136, 0) +current = true near = 0.003 -[node name="MeshInstance3D" type="MeshInstance3D" parent="Camera3D" unique_id=818458454] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.2) +[node name="MeshInstance3D" type="MeshInstance3D" parent="Camera3D" unique_id=1477584785] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.1755164e-08, 0, -0.46892682) mesh = SubResource("QuadMesh_o44vi") surface_material_override/0 = ExtResource("2_fcmrk") @@ -30,6 +63,9 @@ surface_material_override/0 = ExtResource("2_fcmrk") transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.253273, 0) shape = SubResource("CapsuleShape3D_eodxe") +[node name="OmniLight3D" type="OmniLight3D" parent="." unique_id=1818490710] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.7901894e-08, -0.25222805, 0.6383209) + [node name="CanvasLayer" type="CanvasLayer" parent="." unique_id=1210282091] [node name="PointerTexture" type="TextureRect" parent="CanvasLayer" unique_id=99628184] @@ -50,3 +86,11 @@ size_flags_horizontal = 4 size_flags_vertical = 4 texture = ExtResource("4_sbfo8") expand_mode = 1 + +[node name="CPUParticles3D" type="CPUParticles3D" parent="." unique_id=1470634574] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.66324395, 0) +amount = 5 +mesh = SubResource("PlaneMesh_0oeag") +gravity = Vector3(0, -1, 0) +scale_amount_curve = SubResource("Curve_3yrqc") +color_ramp = SubResource("Gradient_r4vrj") diff --git a/entities/player_3d/resources/3d_orchid.blend b/entities/player_3d/resources/3d_orchid.blend new file mode 100644 index 0000000..c3997a1 Binary files /dev/null and b/entities/player_3d/resources/3d_orchid.blend differ diff --git a/entities/player_3d/resources/3d_orchid.blend.import b/entities/player_3d/resources/3d_orchid.blend.import new file mode 100644 index 0000000..67c55bd --- /dev/null +++ b/entities/player_3d/resources/3d_orchid.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://111umh57ekg5" +path="res://.godot/imported/3d_orchid.blend-c6e0699727e8e74cab04ff8bc9d98505.scn" + +[deps] + +source_file="res://entities/player_3d/resources/3d_orchid.blend" +dest_files=["res://.godot/imported/3d_orchid.blend-c6e0699727e8e74cab04ff8bc9d98505.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Default3D": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/entities/player_3d/scripts/player_3d.gd b/entities/player_3d/scripts/player_3d.gd index eac3bfb..ef25f51 100644 --- a/entities/player_3d/scripts/player_3d.gd +++ b/entities/player_3d/scripts/player_3d.gd @@ -9,18 +9,23 @@ const POINTER_ACTION_TEXTURE = preload("res://common/icons/hand-stop.svg") @export var speed := 4.0 const MOUSE_SENSIVITY = 0.002 const RAY_LENGTH = 10. +const PUSH_FORCE = 0.6 var cockpit_action_hovered : Interactable3D = null var query_mouse := false +@export var controlling_player = true + func _ready(): Dialogic.timeline_started.connect( func(): Input.mouse_mode = Input.MOUSE_MODE_VISIBLE + controlling_player = false ) Dialogic.timeline_ended.connect( func(): Input.mouse_mode = Input.MOUSE_MODE_CAPTURED + controlling_player = true ) func _input(event): @@ -29,37 +34,46 @@ func _input(event): %Camera3D.rotate_x(-event.relative.y * MOUSE_SENSIVITY) %Camera3D.rotation.x = clampf($Camera3D.rotation.x, -deg_to_rad(70), deg_to_rad(70)) query_mouse = true - if event.is_action_pressed("action") and cockpit_action_hovered and cockpit_action_hovered: + if event.is_action_pressed("action") and cockpit_action_hovered and cockpit_action_hovered.interactable: cockpit_action_hovered.click() func _physics_process(delta): - if query_mouse: - update_mouse_hovered_cockpit_actions() - %PointerTexture.texture = ( - POINTER_ACTION_TEXTURE if cockpit_action_hovered != null - else POINTER_TEXTURE - ) - query_mouse = false + if controlling_player: + if query_mouse: + update_mouse_hovered_cockpit_actions() + %PointerTexture.texture = ( + POINTER_ACTION_TEXTURE if cockpit_action_hovered != null and cockpit_action_hovered.interactable + else POINTER_TEXTURE + ) + query_mouse = false + + # Get the input direction and handle the movement/deceleration. + # As good practice, you should replace UI actions with custom gameplay actions. + var input_dir = Input.get_vector("move_left", "move_right", "move_up", "move_down") + if Input.is_action_pressed("move_pointer"): + input_dir.y = -1 + var direction = (transform.basis * Vector3(input_dir.x, 0, input_dir.y)).normalized() + if direction: + velocity.x = direction.x * speed + velocity.z = direction.z * speed + else: + velocity.x = move_toward(velocity.x, 0, speed) + velocity.z = move_toward(velocity.z, 0, speed) + else : + velocity = Vector3.ZERO # Add the gravity. if not is_on_floor(): velocity += get_gravity() * delta - # Get the input direction and handle the movement/deceleration. - # As good practice, you should replace UI actions with custom gameplay actions. - var input_dir = Input.get_vector("move_left", "move_right", "move_up", "move_down") - if Input.is_action_pressed("move_pointer"): - input_dir.y = -1 - var direction = (transform.basis * Vector3(input_dir.x, 0, input_dir.y)).normalized() - if direction: - velocity.x = direction.x * speed - velocity.z = direction.z * speed - else: - velocity.x = move_toward(velocity.x, 0, speed) - velocity.z = move_toward(velocity.z, 0, speed) - move_and_slide() + for i in get_slide_collision_count(): + var collision = get_slide_collision(i) + if collision.get_collider() is RigidBody3D: + collision.get_collider().apply_central_impulse( + -collision.get_normal() * PUSH_FORCE + ) func update_mouse_hovered_cockpit_actions() -> void: @@ -72,11 +86,12 @@ func update_mouse_hovered_cockpit_actions() -> void: query.collide_with_areas = true var result = space_state.intersect_ray(query) - if result and result.collider and result.collider is Interactable3D and result.collider.interactable: - if cockpit_action_hovered and cockpit_action_hovered != result.collider: - cockpit_action_hovered._on_mouse_exited() - cockpit_action_hovered = result.collider - cockpit_action_hovered._on_mouse_entered() + if result and result.collider and result.collider is Interactable3D: + if cockpit_action_hovered != result.collider: + if cockpit_action_hovered and cockpit_action_hovered != result.collider: + cockpit_action_hovered._on_mouse_exited() + cockpit_action_hovered = result.collider + cockpit_action_hovered._on_mouse_entered() else : if cockpit_action_hovered: cockpit_action_hovered._on_mouse_exited() diff --git a/entities/scripts/entity.gd b/entities/scripts/entity.gd index 8cdd0cb..45c845b 100644 --- a/entities/scripts/entity.gd +++ b/entities/scripts/entity.gd @@ -3,7 +3,7 @@ class_name Entity var terrain : Terrain var region : Region : - get(): return terrain if terrain is Region else null + get(): return terrain if terrain is Region else null func save() -> EntityData: - return null + return null diff --git a/export_presets.cfg b/export_presets.cfg index 4829a4d..5ba12f1 100644 --- a/export_presets.cfg +++ b/export_presets.cfg @@ -58,7 +58,7 @@ custom_features="" export_filter="all_resources" include_filter="" exclude_filter="" -export_path=".export/win/Seeding The Wasteland.exe" +export_path=".export/steam/content_builder/content/win/Seeding The Wasteland.exe" patches=PackedStringArray() patch_delta_encoding=false patch_delta_compression_level_zstd=19 diff --git a/gui/credits/credits.tscn b/gui/credits/credits.tscn index 756e17e..deac4cd 100644 --- a/gui/credits/credits.tscn +++ b/gui/credits/credits.tscn @@ -64,6 +64,7 @@ horizontal_alignment = 1 [node name="SteamButton" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=1181450581 instance=ExtResource("5_luv2b")] layout_mode = 2 +link = "https://store.steampowered.com/app/4444510/Seeding_The_Wasteland/" [node name="InstagramButton" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=68880754 instance=ExtResource("5_yknhu")] layout_mode = 2 @@ -155,6 +156,21 @@ layout_mode = 2 text = "ART" horizontal_alignment = 1 +[node name="CreditsLine8" type="HBoxContainer" parent="MarginContainer/GridContainer/VBoxContainer2" unique_id=1511897993] +layout_mode = 2 +alignment = 1 + +[node name="Name" type="Label" parent="MarginContainer/GridContainer/VBoxContainer2/CreditsLine8" unique_id=887290462] +layout_mode = 2 +text = "Pauline Legrand" +label_settings = SubResource("LabelSettings_5k6jv") +horizontal_alignment = 1 + +[node name="Role" type="Label" parent="MarginContainer/GridContainer/VBoxContainer2/CreditsLine8" unique_id=1895717420] +layout_mode = 2 +text = "COMMUNICATION" +horizontal_alignment = 1 + [node name="CreditsLine6" type="HBoxContainer" parent="MarginContainer/GridContainer/VBoxContainer2" unique_id=192767961] layout_mode = 2 alignment = 1 @@ -185,21 +201,6 @@ layout_mode = 2 text = "ART_GAME_JAM" horizontal_alignment = 1 -[node name="CreditsLine8" type="HBoxContainer" parent="MarginContainer/GridContainer/VBoxContainer2" unique_id=1511897993] -layout_mode = 2 -alignment = 1 - -[node name="Name" type="Label" parent="MarginContainer/GridContainer/VBoxContainer2/CreditsLine8" unique_id=887290462] -layout_mode = 2 -text = "Pauline Legrand" -label_settings = SubResource("LabelSettings_5k6jv") -horizontal_alignment = 1 - -[node name="Role" type="Label" parent="MarginContainer/GridContainer/VBoxContainer2/CreditsLine8" unique_id=1895717420] -layout_mode = 2 -text = "COMMUNICATION" -horizontal_alignment = 1 - [node name="CreditsLine10" type="HBoxContainer" parent="MarginContainer/GridContainer/VBoxContainer2" unique_id=1089087276] layout_mode = 2 alignment = 1 diff --git a/gui/game/announce/announce.tscn b/gui/game/announce/announce.tscn index bf70b61..c4f2a5d 100644 --- a/gui/game/announce/announce.tscn +++ b/gui/game/announce/announce.tscn @@ -2,24 +2,40 @@ [ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="1_0ssee"] [ext_resource type="Script" uid="uid://bvb4v66bqteuc" path="res://gui/game/announce/scripts/announce.gd" id="1_4evne"] -[ext_resource type="FontFile" uid="uid://cpnsnrqhfkj3k" path="res://gui/ressources/fonts/spincycle_ot.otf" id="2_yrhd4"] +[ext_resource type="Shader" uid="uid://cuni3ggtw2uuy" path="res://common/vfx/materials/shaders/blur.gdshader" id="2_b6hac"] +[ext_resource type="Texture2D" uid="uid://bi5jo6pf0acjb" path="res://common/icons/carambola.svg" id="2_iwcrn"] [ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="3_7nrno"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="4_aao0q"] +[ext_resource type="Environment" uid="uid://bxyp24f85p0xf" path="res://gui/game/assets/gui_3d_environment.tres" id="4_yjj5u"] +[ext_resource type="Script" uid="uid://bqisp5hjs06rj" path="res://gui/game/announce/scripts/announce_inspectable.gd" id="6_aao0q"] +[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="9_b6hac"] -[sub_resource type="LabelSettings" id="LabelSettings_vbart"] -font = ExtResource("2_yrhd4") +[sub_resource type="ShaderMaterial" id="ShaderMaterial_f0v68"] +shader = ExtResource("2_b6hac") +shader_parameter/strength = 5.00000023424012 +shader_parameter/mix_percentage = 0.3 + +[sub_resource type="ViewportTexture" id="ViewportTexture_huxc5"] +viewport_path = NodePath("Particles/SubViewport") + +[sub_resource type="Curve" id="Curve_iwcrn"] +_limits = [-200.0, 200.0, 0.0, 1.0] +_data = [Vector2(0, -200), 0.0, 560.0, 0, 0, Vector2(0.08235294, 92.384125), 1336.3082, 1336.3082, 0, 0, Vector2(0.34901965, 200), 0.0, 0.0, 0, 0, Vector2(0.854902, -200), 0.0, 0.0, 0, 0] +point_count = 4 + +[sub_resource type="Gradient" id="Gradient_oh30d"] +offsets = PackedFloat32Array(0, 0.8689956, 0.98253274) +colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0) + +[sub_resource type="LabelSettings" id="LabelSettings_6qyp1"] +font = ExtResource("4_aao0q") font_size = 50 +font_color = Color(1, 0.6509804, 0.09019608, 1) -[sub_resource type="Gradient" id="Gradient_id0t5"] -interpolation_mode = 1 -offsets = PackedFloat32Array(0, 0.115169, 0.41573, 0.620786, 0.924157) -colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1) +[sub_resource type="ViewportTexture" id="ViewportTexture_aao0q"] +viewport_path = NodePath("AnnounceContainer/ObjectVisualiser/SubViewport") -[sub_resource type="GradientTexture2D" id="GradientTexture2D_mnweq"] -gradient = SubResource("Gradient_id0t5") -fill_to = Vector2(1, 1) -repeat = 1 - -[sub_resource type="Animation" id="Animation_ok3ge"] +[sub_resource type="Animation" id="Animation_aao0q"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false @@ -31,36 +47,48 @@ tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 1, -"values": [false] +"values": [true] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true -tracks/1/path = NodePath("VBoxContainer/AnnounceTexture:custom_minimum_size") +tracks/1/path = NodePath("AnnounceContainer:theme_override_constants/separation") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector2(0, 0)] +"update": 1, +"values": [4] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true -tracks/2/path = NodePath("VBoxContainer:modulate") +tracks/2/path = NodePath("Particles:modulate") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, -"values": [Color(1, 1, 1, 0)] +"values": [Color(1, 1, 1, 1)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("AnnounceContainer:modulate") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 1)] } -[sub_resource type="Animation" id="Animation_871vo"] -resource_name = "pass" -length = 4.0 +[sub_resource type="Animation" id="Animation_b6hac"] +resource_name = "appear" +length = 0.8 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true @@ -68,93 +96,160 @@ tracks/0/path = NodePath(".:visible") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { -"times": PackedFloat32Array(0, 0.0333333, 3.96667, 4), -"transitions": PackedFloat32Array(1, 1, 1, 1), +"times": PackedFloat32Array(0.03333333, 0.16666669), +"transitions": PackedFloat32Array(1, 1), "update": 1, -"values": [false, true, true, false] +"values": [false, true] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true -tracks/1/path = NodePath("VBoxContainer/AnnounceTexture:custom_minimum_size") -tracks/1/interp = 1 +tracks/1/path = NodePath("AnnounceContainer:theme_override_constants/separation") +tracks/1/interp = 2 tracks/1/loop_wrap = true tracks/1/keys = { -"times": PackedFloat32Array(0.0666667, 0.433333, 3.5, 3.96667), -"transitions": PackedFloat32Array(1, 1, 1, 1), +"times": PackedFloat32Array(0.23333333, 0.8), +"transitions": PackedFloat32Array(1, 1), "update": 0, -"values": [Vector2(0, 0), Vector2(0, 65), Vector2(0, 65), Vector2(0, 0)] +"values": [480, 4] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true -tracks/2/path = NodePath("VBoxContainer:modulate") -tracks/2/interp = 1 +tracks/2/path = NodePath("Particles:modulate") +tracks/2/interp = 2 tracks/2/loop_wrap = true tracks/2/keys = { -"times": PackedFloat32Array(0.0666667, 0.133333, 3.86667, 3.96667), -"transitions": PackedFloat32Array(1, 1, 1, 1), +"times": PackedFloat32Array(0.5, 0.8), +"transitions": PackedFloat32Array(1, 1), "update": 0, -"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1), Color(1, 1, 1, 1), Color(1, 1, 1, 0)] +"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("AnnounceContainer:modulate") +tracks/3/interp = 2 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0.2, 0.8), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] } -[sub_resource type="AnimationLibrary" id="AnimationLibrary_dvva5"] +[sub_resource type="AnimationLibrary" id="AnimationLibrary_6qyp1"] _data = { -&"RESET": SubResource("Animation_ok3ge"), -&"pass": SubResource("Animation_871vo") +&"RESET": SubResource("Animation_aao0q"), +&"appear": SubResource("Animation_b6hac") } -[node name="Announce" type="Control" unique_id=509404832] -visible = false -clip_contents = true -layout_mode = 3 +[node name="Announce" type="CanvasLayer" unique_id=1659074958] +process_mode = 3 +script = ExtResource("1_4evne") + +[node name="MarginContainer" type="MarginContainer" parent="." unique_id=1463847780] anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 -mouse_filter = 2 -script = ExtResource("1_4evne") -[node name="VBoxContainer" type="VBoxContainer" parent="." unique_id=1385456888] -modulate = Color(1, 1, 1, 0) -clip_contents = true -layout_mode = 1 -anchors_preset = 14 +[node name="BlurRect" type="ColorRect" parent="MarginContainer" unique_id=1271832904] +material = SubResource("ShaderMaterial_f0v68") +layout_mode = 2 +color = Color(0.0352941, 0.0196078, 0.12549, 0.705882) + +[node name="Particles" type="TextureRect" parent="." unique_id=691167186] +anchors_preset = 8 +anchor_left = 0.5 anchor_top = 0.5 -anchor_right = 1.0 +anchor_right = 0.5 anchor_bottom = 0.5 -offset_top = -73.5 -offset_bottom = 73.5 +offset_left = -500.0 +offset_top = -500.0 +offset_right = 500.0 +offset_bottom = 500.0 grow_horizontal = 2 grow_vertical = 2 -mouse_filter = 2 -theme = ExtResource("1_0ssee") +texture = SubResource("ViewportTexture_huxc5") + +[node name="SubViewport" type="SubViewport" parent="Particles" unique_id=1750661995] +transparent_bg = true +size = Vector2i(1000, 1000) + +[node name="GPUParticles2D" type="CPUParticles2D" parent="Particles/SubViewport" unique_id=486255573] +position = Vector2(500, 500) +amount = 20 +texture = ExtResource("2_iwcrn") +preprocess = 1.0 +spread = 180.0 +gravity = Vector2(0, 0) +initial_velocity_min = 2.0 +initial_velocity_max = 2.0 +linear_accel_min = 5.0 +linear_accel_max = 5.0 +linear_accel_curve = SubResource("Curve_iwcrn") +color_ramp = SubResource("Gradient_oh30d") + +[node name="AnnounceContainer" type="VBoxContainer" parent="." unique_id=2136389163] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/separation = 4 alignment = 1 -[node name="AnnounceTitle" type="Label" parent="VBoxContainer" unique_id=2048669092] +[node name="AnnounceTitle" type="Label" parent="AnnounceContainer" unique_id=988493009] unique_name_in_owner = true layout_mode = 2 -text = "New Quota" -label_settings = SubResource("LabelSettings_vbart") -horizontal_alignment = 1 - -[node name="AnnounceTexture" type="TextureRect" parent="VBoxContainer" unique_id=1523197516] -unique_name_in_owner = true -modulate = Color(0.886275, 0.623529, 0.196078, 1) -layout_mode = 2 -mouse_filter = 2 -texture = SubResource("GradientTexture2D_mnweq") -expand_mode = 1 -stretch_mode = 1 - -[node name="AnnounceText" type="Label" parent="VBoxContainer" unique_id=147253395] -unique_name_in_owner = true -layout_mode = 2 -text = "Decontaminate 50 unit in 10 days" +text = "NEW_TOOL" label_settings = ExtResource("3_7nrno") horizontal_alignment = 1 -[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=357490739] +[node name="AnnounceText" type="Label" parent="AnnounceContainer" unique_id=1537255164] unique_name_in_owner = true -libraries/ = SubResource("AnimationLibrary_dvva5") +layout_mode = 2 +text = "Pelle" +label_settings = SubResource("LabelSettings_6qyp1") +horizontal_alignment = 1 + +[node name="ObjectVisualiser" type="TextureRect" parent="AnnounceContainer" unique_id=1529068201] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +mouse_filter = 0 +texture = SubResource("ViewportTexture_aao0q") +stretch_mode = 5 +script = ExtResource("6_aao0q") + +[node name="SubViewport" type="SubViewport" parent="AnnounceContainer/ObjectVisualiser" unique_id=403959884] +own_world_3d = true +transparent_bg = true +size = Vector2i(300, 300) + +[node name="AnnouceObject" type="Node3D" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=986671004] +unique_name_in_owner = true +transform = Transform3D(-0.4963247, -0.7514756, 0.43456152, -0.8508927, 0.32199714, -0.4149924, 0.17189625, -0.57574874, -0.79934174, 0, 0, 0) + +[node name="Camera3D" type="Camera3D" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1788331074] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1) +keep_aspect = 0 +current = true +fov = 20.0 + +[node name="WorldEnvironment" type="WorldEnvironment" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=296795988] +environment = ExtResource("4_yjj5u") + +[node name="OkButton" type="Button" parent="AnnounceContainer" unique_id=56162930] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +theme = ExtResource("1_0ssee") +text = "OK" +icon = ExtResource("9_b6hac") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=878057487] +unique_name_in_owner = true +libraries/ = SubResource("AnimationLibrary_6qyp1") diff --git a/gui/game/announce/scripts/annouce_object.gd b/gui/game/announce/scripts/annouce_object.gd new file mode 100644 index 0000000..69549e2 --- /dev/null +++ b/gui/game/announce/scripts/annouce_object.gd @@ -0,0 +1,13 @@ +@abstract +extends Resource +class_name AnnouceObject + +@abstract func get_3d_object() -> Node3D + +@abstract func get_title() -> String + +@abstract func get_text() -> String + +@abstract func get_card_info() -> CardInfo + +@abstract func _on_dismiss() \ No newline at end of file diff --git a/gui/game/announce/scripts/annouce_object.gd.uid b/gui/game/announce/scripts/annouce_object.gd.uid new file mode 100644 index 0000000..cd89638 --- /dev/null +++ b/gui/game/announce/scripts/annouce_object.gd.uid @@ -0,0 +1 @@ +uid://yprrjw1yrcx6 diff --git a/gui/game/announce/scripts/annouce_tool.gd b/gui/game/announce/scripts/annouce_tool.gd new file mode 100644 index 0000000..5383f94 --- /dev/null +++ b/gui/game/announce/scripts/annouce_tool.gd @@ -0,0 +1,30 @@ +@tool +extends AnnouceObject +class_name AnnounceTool + +const ITEM_3D_SCENE = preload("res://gui/game/inventory_gui/inventory_item/inventory_item_3d.tscn") + +@export var tool_item : Item + +func _init(_tool_item : Item): + tool_item = _tool_item + +func get_3d_object() -> Node3D: + var new_object = ITEM_3D_SCENE.instantiate() as InventoryItem3D + new_object.item = tool_item + new_object.state = InventoryItem3D.State.TOOL + + return new_object + +func get_title() -> String: + return "NEW_TOOL" + +func get_text() -> String: + return tool_item.get_item_name() + +func get_card_info() -> CardInfo: + return tool_item.card_info() + +func _on_dismiss(): + pass + # GameInfo.game_data.player_data.tool_discovered.append(tool_item.get_item_name()) \ No newline at end of file diff --git a/gui/game/announce/scripts/annouce_tool.gd.uid b/gui/game/announce/scripts/annouce_tool.gd.uid new file mode 100644 index 0000000..2aad7a0 --- /dev/null +++ b/gui/game/announce/scripts/annouce_tool.gd.uid @@ -0,0 +1 @@ +uid://cp40tddq85p6o diff --git a/gui/game/announce/scripts/announce.gd b/gui/game/announce/scripts/announce.gd index 4ec6312..2d2da47 100644 --- a/gui/game/announce/scripts/announce.gd +++ b/gui/game/announce/scripts/announce.gd @@ -1,12 +1,95 @@ -extends Control +@tool +extends CanvasLayer class_name Announce +const DEFAULT_OBJECT_ACCELERATION = Vector2(3,0) + +@export var announce_object : AnnouceObject = null : set = set_announce_object + +@export_tool_button("Update", "Callable") var update_action = set_announce_object + +var announce_objects : Array[AnnouceObject] = [] + +var object_acceleration := Vector2(0,0) + +var rotating := false + +var prev_mouse_pos : Vector2 +var next_mouse_pos : Vector2 + const YELLOW_COLOR = Color("e29f32") const RED_COLOR = Color("f20058") -func announce(title : String, text : String, band_color : Color = YELLOW_COLOR): - %AnnounceTitle.text = title - %AnnounceText.text = text - %AnnounceTexture.modulate = band_color - %AnimationPlayer.play("pass") - AudioManager.play_sfx("Announce") +func _ready(): + set_announce_object() + %OkButton.button_down.connect(_on_ok_button_down) + hide() + + + GameInfo.game_data.player_data.inventory.tool_added.connect( + func (i : Item): + if not i.name in GameInfo.game_data.item_announced: + announce_objects.append(AnnounceTool.new(i)) + GameInfo.game_data.item_announced.append(i.name) + ) + +func _process(delta): + if announce_object == null and not visible and len(announce_objects) > 0: + announce_object = announce_objects.pop_front() + update_rotation(delta) + +func update_rotation(delta): + if visible: + next_mouse_pos = get_viewport().get_mouse_position() + if Input.is_action_just_pressed("action"): + rotating = true + prev_mouse_pos = get_viewport().get_mouse_position() + if Input.is_action_just_released("action"): + rotating = false + object_acceleration = Vector2( + float(next_mouse_pos.x - prev_mouse_pos.x), + float(next_mouse_pos.y - prev_mouse_pos.y) + ) + + var object_rotation = object_acceleration + + if rotating: + object_rotation = Vector2( + float(next_mouse_pos.x - prev_mouse_pos.x), + float(next_mouse_pos.y - prev_mouse_pos.y) + ) + prev_mouse_pos = next_mouse_pos + else : + object_acceleration = object_acceleration.lerp(DEFAULT_OBJECT_ACCELERATION, 0.1) + + %AnnouceObject.rotate(Vector3.UP, object_rotation.x * delta) + %AnnouceObject.rotate(Vector3.RIGHT, object_rotation.y * delta) + + +func set_announce_object(object := announce_object): + if is_node_ready() and object: + for children in %AnnouceObject.get_children(): + children.queue_free() + + %AnnouceObject.add_child(object.get_3d_object()) + %AnnouceObject.rotation = Vector3.ZERO + %AnnounceTitle.text = object.get_title() + %AnnounceText.text = object.get_text() + %ObjectVisualiser.info = object.get_card_info() + + if not visible: + %AnimationPlayer.play("appear") + Pointer.action_disabled = true + AudioManager.play_sfx("Reveal") + elif object == null and visible: + %AnimationPlayer.play_backwards("appear") + get_tree().create_timer(0.2).timeout.connect( # Put a delay to not interfere with the ok button click + func(): + Pointer.action_disabled = false + ) + announce_object = object + +func _on_ok_button_down(): + if announce_object: + announce_object._on_dismiss() + announce_object = null diff --git a/gui/game/announce/scripts/announce_inspectable.gd b/gui/game/announce/scripts/announce_inspectable.gd new file mode 100644 index 0000000..f4f83b7 --- /dev/null +++ b/gui/game/announce/scripts/announce_inspectable.gd @@ -0,0 +1,14 @@ +extends TextureRect + +@export var info: CardInfo = null + +func _ready(): + mouse_entered.connect( + func(): Pointer.inspect(self) + ) + mouse_exited.connect( + func(): Pointer.stop_inspect(self) + ) + +func card_info() -> CardInfo: + return info diff --git a/gui/game/announce/scripts/announce_inspectable.gd.uid b/gui/game/announce/scripts/announce_inspectable.gd.uid new file mode 100644 index 0000000..78727dc --- /dev/null +++ b/gui/game/announce/scripts/announce_inspectable.gd.uid @@ -0,0 +1 @@ +uid://bqisp5hjs06rj diff --git a/gui/game/card/card.tscn b/gui/game/card/card.tscn index bc2151e..94a8782 100644 --- a/gui/game/card/card.tscn +++ b/gui/game/card/card.tscn @@ -53,7 +53,7 @@ _data = { } [node name="Card" type="PanelContainer" unique_id=1085885349] -custom_minimum_size = Vector2(300, 0) +custom_minimum_size = Vector2(450, 0) offset_right = 250.0 offset_bottom = 70.0 size_flags_horizontal = 0 diff --git a/gui/game/card/card_section.tscn b/gui/game/card/card_section.tscn index 5314e98..b67b97f 100644 --- a/gui/game/card/card_section.tscn +++ b/gui/game/card/card_section.tscn @@ -63,9 +63,8 @@ stretch_mode = 5 [node name="TitleText" type="Label" parent="MarginContainer/CardSectionContainer/CardSectionTitle" unique_id=1260458359] unique_name_in_owner = true layout_mode = 2 -size_flags_horizontal = 3 theme = ExtResource("1_t7m3x") -text = "Hello" +text = "Hella" label_settings = SubResource("LabelSettings_ycbno") [node name="Text" type="RichTextLabel" parent="MarginContainer/CardSectionContainer" unique_id=2102977326] @@ -74,7 +73,7 @@ layout_mode = 2 size_flags_horizontal = 3 theme = ExtResource("1_t7m3x") bbcode_enabled = true -text = "Lorem ipsum dolor sit amet" +text = "Hello" fit_content = true scroll_active = false vertical_alignment = 1 diff --git a/gui/game/card/card_visualiser.tscn b/gui/game/card/card_visualiser.tscn index 5430acd..3b199bb 100644 --- a/gui/game/card/card_visualiser.tscn +++ b/gui/game/card/card_visualiser.tscn @@ -46,8 +46,8 @@ metadata/_custom_type_script = "uid://dj2pv1hiwjfv0" shader = ExtResource("1_x54se") shader_parameter/fov = 90.0 shader_parameter/cull_back = true -shader_parameter/y_rot = -1.4576089e-33 -shader_parameter/x_rot = 9.688164e-35 +shader_parameter/y_rot = -7e-45 +shader_parameter/x_rot = 1.237e-42 shader_parameter/inset = 0.0 [sub_resource type="Animation" id="Animation_1et8x"] @@ -71,8 +71,8 @@ anchor_right = 0.5 anchor_bottom = 0.5 offset_left = -125.0 offset_top = -30.0 -offset_right = 125.0 -offset_bottom = 131.0 +offset_right = 225.0 +offset_bottom = 121.0 grow_horizontal = 2 grow_vertical = 2 scale = Vector2(1.0000002, 1.0000002) @@ -84,6 +84,7 @@ theme_override_constants/margin_top = -25 theme_override_constants/margin_right = -25 theme_override_constants/margin_bottom = -25 script = ExtResource("2_ntbk8") +card_width = 350 card_info = SubResource("Resource_eb1v6") [node name="SubViewportContainer" type="SubViewportContainer" parent="." unique_id=1594926759] @@ -96,14 +97,14 @@ mouse_filter = 2 unique_name_in_owner = true transparent_bg = true handle_input_locally = false -size = Vector2i(300, 211) +size = Vector2i(400, 201) size_2d_override_stretch = true render_target_update_mode = 4 [node name="CardContainer" type="MarginContainer" parent="SubViewportContainer/SubViewport" unique_id=1240228608] unique_name_in_owner = true -offset_right = 300.0 -offset_bottom = 211.0 +offset_right = 400.0 +offset_bottom = 201.0 mouse_filter = 2 theme_override_constants/margin_left = 25 theme_override_constants/margin_top = 25 @@ -112,7 +113,7 @@ theme_override_constants/margin_bottom = 25 [node name="Card" parent="SubViewportContainer/SubViewport/CardContainer" unique_id=1169470018 instance=ExtResource("1_we78f")] unique_name_in_owner = true -custom_minimum_size = Vector2(250, 0) +custom_minimum_size = Vector2(350, 0) layout_mode = 2 mouse_filter = 2 down_arrow = true diff --git a/gui/game/card/scripts/card.gd b/gui/game/card/scripts/card.gd index 1fcb173..226b02f 100644 --- a/gui/game/card/scripts/card.gd +++ b/gui/game/card/scripts/card.gd @@ -15,7 +15,6 @@ const CARD_SECTION_SCENE : PackedScene = preload("res://gui/game/card/card_secti # update() func update(): - pass %Title.text = info.title %Subtitle.visible = info.subtitle != "" %Subtitle.text = info.subtitle diff --git a/gui/game/energy_info/assets/3d/battery.blend b/gui/game/energy_info/assets/3d/battery.blend index dddbaa0..ae544d9 100644 Binary files a/gui/game/energy_info/assets/3d/battery.blend and b/gui/game/energy_info/assets/3d/battery.blend differ diff --git a/gui/game/energy_info/assets/3d/battery.blend1 b/gui/game/energy_info/assets/3d/battery.blend1 index 4638933..a0012da 100644 Binary files a/gui/game/energy_info/assets/3d/battery.blend1 and b/gui/game/energy_info/assets/3d/battery.blend1 differ diff --git a/gui/game/energy_info/battery_3d.tscn b/gui/game/energy_info/battery_3d.tscn index 69d4558..a67abb3 100644 --- a/gui/game/energy_info/battery_3d.tscn +++ b/gui/game/energy_info/battery_3d.tscn @@ -18,6 +18,6 @@ transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, 0, 0, 0) [node name="NonPoweredBatteryGauge" type="Sprite3D" parent="." unique_id=419634974] unique_name_in_owner = true -transform = Transform3D(-9.0001855e-08, -0.008180644, 0.9999901, -1.1066229, -1.3152051, -0.003110032, 1.1066215, -1.3152068, -0.003109955, 0.28073934, 0.18676496, -0.05360138) +transform = Transform3D(-3.00128e-07, -0.011105444, 0.99999034, -3.705242, -1.7854263, -0.0031100323, 3.7052372, -1.7854285, -0.0031099557, 0.24117891, 0.37186503, -0.052738685) centered = false texture = SubResource("AtlasTexture_0785j") diff --git a/gui/game/energy_info/energy_info.tscn b/gui/game/energy_info/energy_info.tscn index 877183d..497a71d 100644 --- a/gui/game/energy_info/energy_info.tscn +++ b/gui/game/energy_info/energy_info.tscn @@ -46,9 +46,9 @@ stretch_mode = 5 [node name="TextPlacer" type="MarginContainer" parent="." unique_id=1669037421] layout_mode = 2 size_flags_vertical = 0 -theme_override_constants/margin_left = 20 +theme_override_constants/margin_left = 26 theme_override_constants/margin_top = 9 -theme_override_constants/margin_right = 418 +theme_override_constants/margin_right = 691 [node name="EnergyCount" type="RichTextLabel" parent="TextPlacer" unique_id=1073572949] unique_name_in_owner = true @@ -74,11 +74,11 @@ metadata/_custom_type_script = "uid://0dhj8sdpil7q" [node name="BatteryViewport" type="SubViewport" parent="." unique_id=146346475] own_world_3d = true transparent_bg = true -size = Vector2i(529, 190) +size = Vector2i(800, 190) [node name="EnergyInfo3d" parent="BatteryViewport" unique_id=1798644168 instance=ExtResource("6_tj7lw")] unique_name_in_owner = true -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.918, 2) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.918, 3.81) max_energy = 3 [node name="WorldEnvironment" type="WorldEnvironment" parent="BatteryViewport" unique_id=1322215759] diff --git a/gui/game/energy_info/scripts/battery_3d.gd b/gui/game/energy_info/scripts/battery_3d.gd index 3fd00c3..b43896a 100644 --- a/gui/game/energy_info/scripts/battery_3d.gd +++ b/gui/game/energy_info/scripts/battery_3d.gd @@ -2,7 +2,7 @@ extends Node3D class_name Battery3d -const MAX_BATTERY_GAUGE_SPRITE_SCALE = 1.86 +const MAX_BATTERY_GAUGE_SPRITE_SCALE = 2.525 @export var powered : bool = true : set = set_powered diff --git a/gui/game/game_gui.tscn b/gui/game/game_gui.tscn index e9f0d48..ccfb347 100644 --- a/gui/game/game_gui.tscn +++ b/gui/game/game_gui.tscn @@ -4,21 +4,77 @@ [ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="2_nq5i2"] [ext_resource type="PackedScene" uid="uid://edxmvtvtipwq" path="res://gui/game/alert/alert.tscn" id="2_ykapk"] [ext_resource type="PackedScene" uid="uid://brfsapvj2quxm" path="res://gui/game/energy_info/energy_info.tscn" id="4_2wykm"] -[ext_resource type="PackedScene" uid="uid://fnv0qhkh40mv" path="res://gui/game/announce/announce.tscn" id="4_h6540"] [ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="6_2wykm"] [ext_resource type="PackedScene" uid="uid://df0eop555wfj5" path="res://gui/game/objective_progress_bar/objective_progress_bar.tscn" id="6_dr1y2"] -[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="6_h6540"] [ext_resource type="Texture2D" uid="uid://bt3g5bmar0icf" path="res://common/icons/growth.svg" id="6_id0t5"] -[ext_resource type="Texture2D" uid="uid://b43thuq8piv18" path="res://common/icons/skull.svg" id="7_dr1y2"] [ext_resource type="PackedScene" uid="uid://clicjf8ts51h8" path="res://gui/game/inventory_gui/inventory_gui.tscn" id="9_id0t5"] +[ext_resource type="PackedScene" uid="uid://cgbjmw75alfeo" path="res://gui/game/help/help.tscn" id="10_id0t5"] + +[sub_resource type="Gradient" id="Gradient_ykapk"] +offsets = PackedFloat32Array(0.47639486, 1) +colors = PackedColorArray(1, 1, 1, 0, 1, 1, 1, 1) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_p6blc"] +gradient = SubResource("Gradient_ykapk") +fill = 1 +fill_from = Vector2(0.5, 0.5) +fill_to = Vector2(1.5, 0.5) [sub_resource type="LabelSettings" id="LabelSettings_id0t5"] font = ExtResource("6_2wykm") font_size = 40 +[sub_resource type="Animation" id="Animation_rcm5b"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("%ObjectiveLabel/..:theme_override_constants/margin_top") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="Animation" id="Animation_ajf5p"] +resource_name = "bump" +length = 0.4 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("%ObjectiveLabel/..:theme_override_constants/margin_top") +tracks/0/interp = 2 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.23333333, 0.4), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [0, 20, 0] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_jomh8"] +_data = { +&"RESET": SubResource("Animation_rcm5b"), +&"bump": SubResource("Animation_ajf5p") +} + [node name="GameGui" type="CanvasLayer" unique_id=274698556] script = ExtResource("1_udau0") +[node name="NoEnergyVignette" type="TextureRect" parent="." unique_id=1917087264] +unique_name_in_owner = true +self_modulate = Color(1, 0, 0.43137255, 1) +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 +texture = SubResource("GradientTexture2D_p6blc") + [node name="Alert" parent="." unique_id=496897031 instance=ExtResource("2_ykapk")] unique_name_in_owner = true modulate = Color(1, 0, 0.43137252, 1) @@ -33,9 +89,6 @@ grow_horizontal = 2 grow_vertical = 2 mouse_filter = 2 -[node name="Announce" parent="." unique_id=94658910 instance=ExtResource("4_h6540")] -unique_name_in_owner = true - [node name="MarginContainer" type="MarginContainer" parent="." unique_id=2054297293] anchors_preset = 15 anchor_right = 1.0 @@ -54,7 +107,7 @@ mouse_filter = 2 layout_mode = 2 size_flags_horizontal = 4 mouse_filter = 2 -theme_override_constants/separation = 0 +theme_override_constants/separation = 10 [node name="ObjectiveProgressBar" parent="MarginContainer/VBoxContainer" unique_id=2043451865 instance=ExtResource("6_dr1y2")] unique_name_in_owner = true @@ -79,22 +132,47 @@ text = "0 Plant Point" label_settings = SubResource("LabelSettings_id0t5") horizontal_alignment = 1 -[node name="RechargesLeftLabel" type="Label" parent="MarginContainer/VBoxContainer" unique_id=1254074923] -unique_name_in_owner = true +[node name="ObjectiveContainer" type="MarginContainer" parent="MarginContainer/VBoxContainer" unique_id=946367772] layout_mode = 2 -text = "9 charges left" -label_settings = ExtResource("6_h6540") +mouse_filter = 2 +theme_override_constants/margin_left = 0 +theme_override_constants/margin_top = 0 +theme_override_constants/margin_right = 0 +theme_override_constants/margin_bottom = 0 + +[node name="ObjectiveLabel" type="RichTextLabel" parent="MarginContainer/VBoxContainer/ObjectiveContainer" unique_id=2044989003] +unique_name_in_owner = true +custom_minimum_size = Vector2(600, 0) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 0 +theme_override_colors/default_color = Color(1, 0.6509804, 0.09019608, 1) +theme_override_colors/font_shadow_color = Color(0.0627451, 0.05882353, 0.16862746, 1) +theme_override_constants/shadow_outline_size = 8 +theme_override_constants/shadow_offset_x = 0 +theme_override_constants/shadow_offset_y = 0 +theme_override_fonts/normal_font = ExtResource("6_2wykm") +theme_override_fonts/bold_font = ExtResource("6_2wykm") +theme_override_fonts/bold_italics_font = ExtResource("6_2wykm") +theme_override_fonts/italics_font = ExtResource("6_2wykm") +theme_override_font_sizes/normal_font_size = 30 +theme_override_font_sizes/bold_font_size = 30 +theme_override_font_sizes/bold_italics_font_size = 30 +theme_override_font_sizes/italics_font_size = 30 +theme_override_font_sizes/mono_font_size = 30 +bbcode_enabled = true +text = "Action en cours Action en cours Action en cours Action en cours Action en cours " +fit_content = true horizontal_alignment = 1 +[node name="ObjectiveAnimationPlayer" type="AnimationPlayer" parent="MarginContainer/VBoxContainer/ObjectiveContainer/ObjectiveLabel" unique_id=31675045] +unique_name_in_owner = true +libraries/ = SubResource("AnimationLibrary_jomh8") + [node name="Inventory" parent="MarginContainer" unique_id=1178590658 instance=ExtResource("9_id0t5")] layout_mode = 2 size_flags_horizontal = 1 size_flags_vertical = 8 -[node name="GiveUpButton" type="Button" parent="MarginContainer" unique_id=1128310884] -unique_name_in_owner = true +[node name="Help" parent="MarginContainer" unique_id=152252336 instance=ExtResource("10_id0t5")] layout_mode = 2 -size_flags_horizontal = 8 -size_flags_vertical = 8 -text = "GIVE_UP" -icon = ExtResource("7_dr1y2") diff --git a/gui/game/help/help.tscn b/gui/game/help/help.tscn new file mode 100644 index 0000000..88a349d --- /dev/null +++ b/gui/game/help/help.tscn @@ -0,0 +1,147 @@ +[gd_scene format=3 uid="uid://cgbjmw75alfeo"] + +[ext_resource type="Texture2D" uid="uid://cwewx7cdy085h" path="res://common/icons/help-hexagon.svg" id="1_fajau"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="2_l61dv"] +[ext_resource type="Script" uid="uid://c65cf2ksbsxwg" path="res://gui/game/help/scripts/help_container.gd" id="3_syp3u"] +[ext_resource type="Texture2D" uid="uid://bgcymkgxk7mpp" path="res://gui/pause/assets/textures/moss_tutorial_image.png" id="4_liwse"] +[ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="5_mao3x"] +[ext_resource type="Texture2D" uid="uid://bhogi5kkltx51" path="res://gui/pause/assets/textures/rock_tutorial_image.png" id="6_bt3y5"] +[ext_resource type="Texture2D" uid="uid://3fwhxkd0ycga" path="res://gui/pause/assets/textures/talion_tutorial_image.png" id="7_jx4fu"] +[ext_resource type="PackedScene" uid="uid://bnx5hr2fd0p24" path="res://gui/game/help/icon_help_content.tscn" id="8_38kut"] + +[sub_resource type="LabelSettings" id="LabelSettings_rcm5b"] +font = ExtResource("2_l61dv") +font_size = 20 + +[node name="Help" type="VBoxContainer" unique_id=152252336] +size_flags_horizontal = 8 +size_flags_vertical = 0 + +[node name="HBoxContainer" type="HBoxContainer" parent="." unique_id=541877405] +layout_mode = 2 +theme_override_constants/separation = 5 +alignment = 2 + +[node name="TextureRect" type="TextureRect" parent="HBoxContainer" unique_id=629672827] +layout_mode = 2 +texture = ExtResource("1_fajau") +expand_mode = 3 +stretch_mode = 5 + +[node name="Label" type="Label" parent="HBoxContainer" unique_id=2069982782] +layout_mode = 2 +text = "HELP" +label_settings = SubResource("LabelSettings_rcm5b") + +[node name="TerrainHelp" type="FoldableContainer" parent="." unique_id=221139748] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +size_flags_horizontal = 8 +size_flags_vertical = 0 +title = "TERRAINS" +script = ExtResource("3_syp3u") +help_container_name = "terrain" + +[node name="MarginContainer" type="MarginContainer" parent="TerrainHelp" unique_id=937055110] +layout_mode = 2 +theme_override_constants/margin_left = 8 +theme_override_constants/margin_top = 8 +theme_override_constants/margin_right = 8 +theme_override_constants/margin_bottom = 8 + +[node name="Zones" type="VBoxContainer" parent="TerrainHelp/MarginContainer" unique_id=83983981] +layout_mode = 2 + +[node name="Moss" type="HBoxContainer" parent="TerrainHelp/MarginContainer/Zones" unique_id=116883301] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="TextureRect" type="TextureRect" parent="TerrainHelp/MarginContainer/Zones/Moss" unique_id=2127894722] +custom_minimum_size = Vector2(0, 60) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +texture = ExtResource("4_liwse") +expand_mode = 3 +stretch_mode = 5 + +[node name="RichText" type="RichTextLabel" parent="TerrainHelp/MarginContainer/Zones/Moss" unique_id=941957004] +layout_mode = 2 +size_flags_horizontal = 3 +theme = ExtResource("5_mao3x") +theme_override_fonts/bold_font = ExtResource("2_l61dv") +theme_override_font_sizes/normal_font_size = 15 +theme_override_font_sizes/bold_font_size = 18 +bbcode_enabled = true +text = "FERTILE_LAND_TEXT" +fit_content = true +vertical_alignment = 1 + +[node name="Rock" type="HBoxContainer" parent="TerrainHelp/MarginContainer/Zones" unique_id=1546734905] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="TextureRect" type="TextureRect" parent="TerrainHelp/MarginContainer/Zones/Rock" unique_id=20628007] +custom_minimum_size = Vector2(0, 60) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +texture = ExtResource("6_bt3y5") +expand_mode = 3 +stretch_mode = 5 + +[node name="RichText" type="RichTextLabel" parent="TerrainHelp/MarginContainer/Zones/Rock" unique_id=782682665] +layout_mode = 2 +size_flags_horizontal = 3 +theme = ExtResource("5_mao3x") +theme_override_fonts/bold_font = ExtResource("2_l61dv") +theme_override_font_sizes/normal_font_size = 15 +theme_override_font_sizes/bold_font_size = 18 +bbcode_enabled = true +text = "ROCK_TEXT" +fit_content = true +vertical_alignment = 1 + +[node name="Talion" type="HBoxContainer" parent="TerrainHelp/MarginContainer/Zones" unique_id=1594298218] +layout_mode = 2 +size_flags_horizontal = 3 + +[node name="TextureRect" type="TextureRect" parent="TerrainHelp/MarginContainer/Zones/Talion" unique_id=247200209] +custom_minimum_size = Vector2(0, 60) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +texture = ExtResource("7_jx4fu") +expand_mode = 3 +stretch_mode = 5 + +[node name="RichText" type="RichTextLabel" parent="TerrainHelp/MarginContainer/Zones/Talion" unique_id=1292601454] +layout_mode = 2 +size_flags_horizontal = 3 +theme = ExtResource("5_mao3x") +theme_override_fonts/bold_font = ExtResource("2_l61dv") +theme_override_font_sizes/normal_font_size = 15 +theme_override_font_sizes/bold_font_size = 18 +bbcode_enabled = true +text = "TALION_VEIN_TEXT" +fit_content = true +vertical_alignment = 1 + +[node name="IconHelp" type="FoldableContainer" parent="." unique_id=931940053] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +size_flags_horizontal = 8 +size_flags_vertical = 0 +title = "ICONS_MEANINGS" +script = ExtResource("3_syp3u") +help_container_name = "icon" + +[node name="MarginContainer" type="MarginContainer" parent="IconHelp" unique_id=627387657] +layout_mode = 2 +theme_override_constants/margin_left = 8 +theme_override_constants/margin_top = 8 +theme_override_constants/margin_right = 8 +theme_override_constants/margin_bottom = 8 + +[node name="IconsGrid" parent="IconHelp/MarginContainer" unique_id=9435995 instance=ExtResource("8_38kut")] +layout_mode = 2 diff --git a/gui/game/help/icon_help_content.tscn b/gui/game/help/icon_help_content.tscn new file mode 100644 index 0000000..9158866 --- /dev/null +++ b/gui/game/help/icon_help_content.tscn @@ -0,0 +1,139 @@ +[gd_scene format=3 uid="uid://bnx5hr2fd0p24"] + +[ext_resource type="Texture2D" uid="uid://bt3g5bmar0icf" path="res://common/icons/growth.svg" id="1_yxwcd"] +[ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="2_wxnr5"] +[ext_resource type="Texture2D" uid="uid://d3ksdxepcjoot" path="res://common/icons/calendar-week.svg" id="3_t30ml"] +[ext_resource type="Texture2D" uid="uid://cgmxjom200bej" path="res://common/icons/chevrons-up.svg" id="4_d4ybk"] +[ext_resource type="Texture2D" uid="uid://dhy4ewvqvlxyi" path="res://common/icons/clock.svg" id="5_3lk2g"] +[ext_resource type="Texture2D" uid="uid://c2qg7ikkylfv4" path="res://common/icons/seeds.svg" id="6_tr36d"] +[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="7_ubf5w"] +[ext_resource type="Texture2D" uid="uid://cymrmhsihkj44" path="res://common/icons/recharge.svg" id="8_uvt1i"] + +[node name="IconsGrid" type="VBoxContainer" unique_id=9435995] +alignment = 1 + +[node name="HBoxContainer" type="HBoxContainer" parent="." unique_id=1691095228] +layout_mode = 2 +theme_override_constants/separation = 4 + +[node name="TextureRect" type="TextureRect" parent="HBoxContainer" unique_id=1901557678] +custom_minimum_size = Vector2(25, 25) +layout_mode = 2 +size_flags_horizontal = 4 +texture = ExtResource("1_yxwcd") +expand_mode = 1 +stretch_mode = 5 + +[node name="RichTextLabel" type="Label" parent="HBoxContainer" unique_id=859146346] +layout_mode = 2 +theme = ExtResource("2_wxnr5") +text = "PLANT_POINTS" +vertical_alignment = 1 + +[node name="HBoxContainer2" type="HBoxContainer" parent="." unique_id=84698232] +layout_mode = 2 +theme_override_constants/separation = 4 + +[node name="TextureRect" type="TextureRect" parent="HBoxContainer2" unique_id=1688869934] +custom_minimum_size = Vector2(25, 25) +layout_mode = 2 +size_flags_horizontal = 4 +texture = ExtResource("3_t30ml") +expand_mode = 1 +stretch_mode = 5 + +[node name="RichTextLabel" type="Label" parent="HBoxContainer2" unique_id=722562759] +layout_mode = 2 +theme = ExtResource("2_wxnr5") +text = "DAYS" +vertical_alignment = 1 + +[node name="HBoxContainer3" type="HBoxContainer" parent="." unique_id=1091557748] +layout_mode = 2 +theme_override_constants/separation = 4 + +[node name="TextureRect" type="TextureRect" parent="HBoxContainer3" unique_id=206861703] +custom_minimum_size = Vector2(25, 25) +layout_mode = 2 +size_flags_horizontal = 4 +texture = ExtResource("4_d4ybk") +expand_mode = 1 +stretch_mode = 5 + +[node name="RichTextLabel" type="Label" parent="HBoxContainer3" unique_id=609696718] +layout_mode = 2 +theme = ExtResource("2_wxnr5") +text = "GROWING_TIME" +vertical_alignment = 1 + +[node name="HBoxContainer4" type="HBoxContainer" parent="." unique_id=1416063894] +layout_mode = 2 +theme_override_constants/separation = 4 + +[node name="TextureRect" type="TextureRect" parent="HBoxContainer4" unique_id=1393253275] +custom_minimum_size = Vector2(25, 25) +layout_mode = 2 +size_flags_horizontal = 4 +texture = ExtResource("5_3lk2g") +expand_mode = 1 +stretch_mode = 5 + +[node name="RichTextLabel" type="Label" parent="HBoxContainer4" unique_id=365374836] +layout_mode = 2 +theme = ExtResource("2_wxnr5") +text = "LIFETIME" +vertical_alignment = 1 + +[node name="HBoxContainer5" type="HBoxContainer" parent="." unique_id=1410748673] +layout_mode = 2 +theme_override_constants/separation = 4 + +[node name="TextureRect" type="TextureRect" parent="HBoxContainer5" unique_id=946072561] +custom_minimum_size = Vector2(25, 25) +layout_mode = 2 +size_flags_horizontal = 4 +texture = ExtResource("6_tr36d") +expand_mode = 1 +stretch_mode = 5 + +[node name="RichTextLabel" type="Label" parent="HBoxContainer5" unique_id=549789016] +layout_mode = 2 +theme = ExtResource("2_wxnr5") +text = "SEEDS" +vertical_alignment = 1 + +[node name="HBoxContainer6" type="HBoxContainer" parent="." unique_id=1258373211] +layout_mode = 2 +theme_override_constants/separation = 4 + +[node name="TextureRect" type="TextureRect" parent="HBoxContainer6" unique_id=1789194571] +custom_minimum_size = Vector2(25, 25) +layout_mode = 2 +size_flags_horizontal = 4 +texture = ExtResource("7_ubf5w") +expand_mode = 1 +stretch_mode = 5 + +[node name="RichTextLabel" type="Label" parent="HBoxContainer6" unique_id=1037558845] +layout_mode = 2 +theme = ExtResource("2_wxnr5") +text = "ORCHID_ENERGY" +vertical_alignment = 1 + +[node name="HBoxContainer7" type="HBoxContainer" parent="." unique_id=1238098255] +layout_mode = 2 +theme_override_constants/separation = 4 + +[node name="TextureRect" type="TextureRect" parent="HBoxContainer7" unique_id=316858205] +custom_minimum_size = Vector2(25, 25) +layout_mode = 2 +size_flags_horizontal = 4 +texture = ExtResource("8_uvt1i") +expand_mode = 1 +stretch_mode = 5 + +[node name="RichTextLabel" type="Label" parent="HBoxContainer7" unique_id=248028380] +layout_mode = 2 +theme = ExtResource("2_wxnr5") +text = "RECHARGE_NUMBER" +vertical_alignment = 1 diff --git a/gui/game/help/scripts/help_container.gd b/gui/game/help/scripts/help_container.gd new file mode 100644 index 0000000..6f2d25e --- /dev/null +++ b/gui/game/help/scripts/help_container.gd @@ -0,0 +1,18 @@ +extends FoldableContainer +class_name HelpContainer + +@export var help_container_name : String = "" + +@onready var settings := GameInfo.settings_data + +# Called when the node enters the scene tree for the first time. +func _ready(): + folded = settings.is_help_container_closed(help_container_name) + folding_changed.connect(_on_folding_changed) + +func _on_folding_changed(f : bool): + if f: + settings.close_help_container(help_container_name) + else: + settings.open_help_container(help_container_name) + GameInfo.save_settings() diff --git a/gui/game/help/scripts/help_container.gd.uid b/gui/game/help/scripts/help_container.gd.uid new file mode 100644 index 0000000..c1042ec --- /dev/null +++ b/gui/game/help/scripts/help_container.gd.uid @@ -0,0 +1 @@ +uid://c65cf2ksbsxwg diff --git a/gui/game/inventory_gui/assets/3d/item_screen.blend b/gui/game/inventory_gui/assets/3d/item_screen.blend index 017dafa..94d3332 100644 Binary files a/gui/game/inventory_gui/assets/3d/item_screen.blend and b/gui/game/inventory_gui/assets/3d/item_screen.blend differ diff --git a/gui/game/inventory_gui/assets/3d/item_screen.blend1 b/gui/game/inventory_gui/assets/3d/item_screen.blend1 index 4d749a8..017dafa 100644 Binary files a/gui/game/inventory_gui/assets/3d/item_screen.blend1 and b/gui/game/inventory_gui/assets/3d/item_screen.blend1 differ diff --git a/gui/game/inventory_gui/inventory_3d.tscn b/gui/game/inventory_gui/inventory_3d.tscn index f01921b..7e7c79d 100644 --- a/gui/game/inventory_gui/inventory_3d.tscn +++ b/gui/game/inventory_gui/inventory_3d.tscn @@ -2,16 +2,25 @@ [ext_resource type="Script" uid="uid://c66acjl2dhd7x" path="res://gui/game/inventory_gui/scripts/inventory_3d.gd" id="1_k2pqu"] [ext_resource type="PackedScene" uid="uid://4r2ab6foer05" path="res://gui/game/inventory_gui/inventory_item/inventory_item_3d.tscn" id="2_1jdtu"] +[ext_resource type="Script" uid="uid://bq7admu4ahs5r" path="res://entities/player/inventory/scripts/item.gd" id="3_qyq7r"] +[ext_resource type="Script" uid="uid://fnu2d6wna4yc" path="res://entities/player/inventory/scripts/inventory.gd" id="4_7pv7m"] [ext_resource type="PackedScene" uid="uid://yqq3unuxmtdl" path="res://gui/game/inventory_gui/assets/3d/item_separator.blend" id="13_8twi0"] +[sub_resource type="Resource" id="Resource_kcwow"] +script = ExtResource("4_7pv7m") +seeds = Array[ExtResource("3_qyq7r")]([null, null, null, null, null]) +seeds_size = 5 +metadata/_custom_type_script = "uid://fnu2d6wna4yc" + [node name="Inventory3D" type="Node3D" unique_id=810532522] script = ExtResource("1_k2pqu") inventory_item_scene = ExtResource("2_1jdtu") +test_inventory = SubResource("Resource_kcwow") [node name="Items3D" type="Node3D" parent="." unique_id=893360425] unique_name_in_owner = true -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0, 0) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.65, 0, 0) [node name="ItemSeparator" parent="." unique_id=999679207 instance=ExtResource("13_8twi0")] unique_name_in_owner = true -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.1, 0, 0) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.29999998, 0, 0) diff --git a/gui/game/inventory_gui/inventory_item/inventory_item_3d.tscn b/gui/game/inventory_gui/inventory_item/inventory_item_3d.tscn index 10a3cfa..0fa6fd0 100644 --- a/gui/game/inventory_gui/inventory_item/inventory_item_3d.tscn +++ b/gui/game/inventory_gui/inventory_item/inventory_item_3d.tscn @@ -4,10 +4,11 @@ [ext_resource type="PackedScene" uid="uid://oktd71knql00" path="res://gui/game/inventory_gui/assets/3d/item_screen.blend" id="2_1uxm0"] [ext_resource type="Texture2D" uid="uid://dex283rx00fjb" path="res://common/icons/logout.svg" id="2_hv1tg"] [ext_resource type="Script" uid="uid://bq7admu4ahs5r" path="res://entities/player/inventory/scripts/item.gd" id="3_ixa47"] +[ext_resource type="Texture2D" uid="uid://cgmxjom200bej" path="res://common/icons/chevrons-up.svg" id="5_g1uf8"] +[ext_resource type="Texture2D" uid="uid://ds4m14vl7he6v" path="res://common/icons/pick.svg" id="6_jdjjl"] [sub_resource type="Resource" id="Resource_g1uf8"] script = ExtResource("3_ixa47") -icon = ExtResource("2_hv1tg") metadata/_custom_type_script = "uid://bq7admu4ahs5r" [sub_resource type="Gradient" id="Gradient_ixa47"] @@ -53,18 +54,21 @@ item = SubResource("Resource_g1uf8") [node name="BlackScreen" type="Sprite3D" parent="." unique_id=1828017914] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.08962244) +transparent = false texture = SubResource("GradientTexture2D_g1uf8") [node name="ItemScreen" type="Sprite3D" parent="." unique_id=1128109703] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.08962244) visible = false +transparent = false texture = SubResource("GradientTexture2D_jdjjl") [node name="ToolScreen" type="Sprite3D" parent="." unique_id=1384339729] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.08962244) visible = false +transparent = false texture = SubResource("GradientTexture2D_gj8fm") [node name="ItemIconSprite" type="Sprite3D" parent="." unique_id=1279203709] @@ -74,6 +78,18 @@ modulate = Color(1, 1, 1, 0.3) pixel_size = 0.0020833334 texture = ExtResource("2_hv1tg") +[node name="ParticleSprite1" type="Sprite3D" parent="." unique_id=811884632] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.04235574, -0.03381054, -0.105405755) +pixel_size = 0.001 +texture = ExtResource("5_g1uf8") + +[node name="ParticleSprite2" type="Sprite3D" parent="." unique_id=1076243108] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.042, -0.034, -0.105) +pixel_size = 0.001 +texture = ExtResource("6_jdjjl") + [node name="Area3D" type="Area3D" parent="." unique_id=426596211] [node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D" unique_id=2020875183] diff --git a/gui/game/inventory_gui/inventory_item/scripts/inventory_item_3d.gd b/gui/game/inventory_gui/inventory_item/scripts/inventory_item_3d.gd index e9af7b5..e8b98c8 100644 --- a/gui/game/inventory_gui/inventory_item/scripts/inventory_item_3d.gd +++ b/gui/game/inventory_gui/inventory_item/scripts/inventory_item_3d.gd @@ -19,11 +19,27 @@ func _ready(): func set_item(i : Item = item): item = i if is_node_ready(): + %ParticleSprite1.visible = false + %ParticleSprite2.visible = false + %ParticleSprite1.modulate = Color.WHITE + %ParticleSprite2.modulate = Color.WHITE + %ItemIconSprite.texture = null + if i and i.icon: %ItemIconSprite.texture = i.icon %ItemIconSprite.pixel_size = SPRITE_SIZE / i.icon.get_width() - else: - %ItemIconSprite.texture = null + + for j in range(len(i.get_particles())): + if j == 0: + %ParticleSprite1.visible = true + %ParticleSprite1.texture = i.get_particles()[j].texture + %ParticleSprite1.modulate = i.get_particles()[j].color + if j == 1: + %ParticleSprite2.visible = true + %ParticleSprite2.texture = i.get_particles()[j].texture + %ParticleSprite2.modulate = i.get_particles()[j].color + + func set_state(s := state): state = s diff --git a/gui/game/inventory_gui/scripts/inventory_3d.gd b/gui/game/inventory_gui/scripts/inventory_3d.gd index d6ee4be..0dd1b63 100644 --- a/gui/game/inventory_gui/scripts/inventory_3d.gd +++ b/gui/game/inventory_gui/scripts/inventory_3d.gd @@ -8,6 +8,8 @@ const SEPARATOR_SIZE = 0.1 @export var inventory_item_scene: PackedScene @export var bar: TextureRect +@export var no_tools : bool = false + @export var test_inventory : Inventory var last_n_tools = -1 @@ -21,42 +23,58 @@ func _ready(): update(GameInfo.game_data.player_data.inventory) func update(inventory : Inventory): - if len(inventory.items) != len(inventory_item_objects) or last_n_tools != inventory.n_tools: + + var items = inventory.get_all_items() + if no_tools: + items = inventory.seeds + + if len(items) != len(inventory_item_objects) or last_n_tools != len(inventory.tools): create_inventory_objects(inventory) - for i in range(len(inventory.items)): - var item : Item= inventory.items[i] + for i in range(len(items)): + var item : Item= items[i] var object : InventoryItem3D = inventory_item_objects[i] - object.item = inventory.items[i] + object.item = items[i] - if inventory.current_item_ind == i: - object.state = ( - InventoryItem3D.State.TOOL if i < inventory.n_tools - else InventoryItem3D.State.ITEM - ) - else: - object.state = InventoryItem3D.State.BLACK + if not no_tools: + if inventory.current_item_ind == i: + object.state = ( + InventoryItem3D.State.TOOL if i < len(inventory.tools) + else InventoryItem3D.State.ITEM + ) + else: + object.state = InventoryItem3D.State.BLACK func create_inventory_objects(inventory : Inventory): for c in %Items3D.get_children(): c.queue_free() - last_n_tools = inventory.n_tools + last_n_tools = len(inventory.tools) inventory_item_objects = [] - for i in range(len(inventory.items)): + var items = inventory.get_all_items() + if no_tools: + items = inventory.seeds + + for i in range(len(items)): var new_inventory_object := (inventory_item_scene.instantiate() as InventoryItem3D) %Items3D.add_child(new_inventory_object) new_inventory_object.position.x = -INVENTORY_OBJECT_SIZE * i - if i >= inventory.n_tools: + if i >= len(inventory.tools) and not no_tools: new_inventory_object.position.x -= SEPARATOR_SIZE inventory_item_objects.append(new_inventory_object) - %Items3D.position.x = ( - (len(inventory_item_objects) - 1) * INVENTORY_OBJECT_SIZE + SEPARATOR_SIZE - ) / 2 - %ItemSeparator.position.x = ( - %Items3D.position.x - - (inventory.n_tools) * INVENTORY_OBJECT_SIZE - + SEPARATOR_SIZE/2 - ) + %ItemSeparator.visible = not no_tools + if no_tools: + %Items3D.position.x = ( + (len(inventory_item_objects) - 1) * INVENTORY_OBJECT_SIZE + ) / 2 + else: + %Items3D.position.x = ( + (len(inventory_item_objects) - 1) * INVENTORY_OBJECT_SIZE + SEPARATOR_SIZE + ) / 2 + %ItemSeparator.position.x = ( + %Items3D.position.x + - (inventory.tools.size()) * INVENTORY_OBJECT_SIZE + + SEPARATOR_SIZE/2 + ) diff --git a/gui/game/inventory_gui/scripts/inventory_gui.gd b/gui/game/inventory_gui/scripts/inventory_gui.gd index b52748f..d9c63b1 100644 --- a/gui/game/inventory_gui/scripts/inventory_gui.gd +++ b/gui/game/inventory_gui/scripts/inventory_gui.gd @@ -18,9 +18,9 @@ func _ready(): update(GameInfo.game_data.player_data.inventory) func update(inventory: Inventory): - if last_inventory_size != len(inventory.items) or last_n_tools != inventory.n_tools: - last_inventory_size = len(inventory.items) - last_n_tools = inventory.n_tools + if last_inventory_size != len(inventory.get_all_items()) or last_n_tools != inventory.tools.size(): + last_inventory_size = len(inventory.get_all_items()) + last_n_tools = inventory.tools.size() generate_inventory_mouse_detectors(last_inventory_size, last_n_tools) func generate_inventory_mouse_detectors(inventory_size: int, n_tool : int, test = false): diff --git a/gui/game/inventory_gui/scripts/inventory_gui_item_mouse_detector.gd b/gui/game/inventory_gui/scripts/inventory_gui_item_mouse_detector.gd index 5242e29..e5a8e7e 100644 --- a/gui/game/inventory_gui/scripts/inventory_gui_item_mouse_detector.gd +++ b/gui/game/inventory_gui/scripts/inventory_gui_item_mouse_detector.gd @@ -22,8 +22,8 @@ func _ready(): func card_info() -> CardInfo: var inventory := GameInfo.game_data.player_data.inventory - if inventory and index < len(inventory.items): - var item = GameInfo.game_data.player_data.inventory.items[index] + if inventory and index < len(inventory.get_all_items()): + var item = GameInfo.game_data.player_data.inventory.get_all_items()[index] if item: return item.card_info() diff --git a/gui/game/objective_progress_bar/objective_progress_bar.tscn b/gui/game/objective_progress_bar/objective_progress_bar.tscn index 3a3f396..f4a6e13 100644 --- a/gui/game/objective_progress_bar/objective_progress_bar.tscn +++ b/gui/game/objective_progress_bar/objective_progress_bar.tscn @@ -59,6 +59,7 @@ expand_mode = 1 stretch_mode = 5 [node name="ProgressBarViewPort" type="SubViewport" parent="." unique_id=459282221] +own_world_3d = true transparent_bg = true size = Vector2i(479, 117) diff --git a/gui/game/pass_day/assets/day_night_sprite.svg b/gui/game/pass_day/assets/day_night_sprite.svg new file mode 100644 index 0000000..b397f4a --- /dev/null +++ b/gui/game/pass_day/assets/day_night_sprite.svg @@ -0,0 +1,74 @@ + + + + diff --git a/gui/game/pass_day/assets/day_night_sprite.svg.import b/gui/game/pass_day/assets/day_night_sprite.svg.import new file mode 100644 index 0000000..8a0fae4 --- /dev/null +++ b/gui/game/pass_day/assets/day_night_sprite.svg.import @@ -0,0 +1,43 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cihiibon53147" +path="res://.godot/imported/day_night_sprite.svg-b89d7f3e525bc11818c231dc87fa599b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://gui/game/pass_day/assets/day_night_sprite.svg" +dest_files=["res://.godot/imported/day_night_sprite.svg-b89d7f3e525bc11818c231dc87fa599b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 +svg/scale=2.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/gui/game/pass_day/pass_day.tscn b/gui/game/pass_day/pass_day.tscn index 1b3a1de..6ff7845 100644 --- a/gui/game/pass_day/pass_day.tscn +++ b/gui/game/pass_day/pass_day.tscn @@ -6,16 +6,60 @@ [ext_resource type="PackedScene" uid="uid://brfsapvj2quxm" path="res://gui/game/energy_info/energy_info.tscn" id="2_feyaf"] [ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="4_0pm4g"] [ext_resource type="Script" uid="uid://0dhj8sdpil7q" path="res://gui/tools/control_animation_player.gd" id="5_dqmg8"] -[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="6_dqmg8"] +[ext_resource type="Texture2D" uid="uid://cymrmhsihkj44" path="res://common/icons/recharge.svg" id="6_h2bel"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="7_h2bel"] +[ext_resource type="Texture2D" uid="uid://cihiibon53147" path="res://gui/game/pass_day/assets/day_night_sprite.svg" id="7_m84xg"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_27lg1"] shader = ExtResource("1_v570a") shader_parameter/strength = 0.0 shader_parameter/mix_percentage = 0.0 +[sub_resource type="LabelSettings" id="LabelSettings_rn4dm"] +font = ExtResource("7_h2bel") +font_size = 25 + +[sub_resource type="ViewportTexture" id="ViewportTexture_h2bel"] +viewport_path = NodePath("NightAnimation/SubViewport") + +[sub_resource type="Animation" id="Animation_rn4dm"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("SubViewport/NightAnimationSprite:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.0] +} + +[sub_resource type="Animation" id="Animation_5ap0m"] +resource_name = "pass" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("SubViewport/NightAnimationSprite:rotation") +tracks/0/interp = 2 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 1), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [0.0, 6.265732014659643] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_wafeq"] +_data = { +&"RESET": SubResource("Animation_rn4dm"), +&"pass": SubResource("Animation_5ap0m") +} + [node name="PassDay" type="CanvasLayer" unique_id=335255544] layer = 3 -visible = false script = ExtResource("1_0pm4g") [node name="Blur" type="ColorRect" parent="." unique_id=546890405] @@ -32,7 +76,6 @@ script = ExtResource("2_bhfpo") [node name="PassDayInfo" type="VBoxContainer" parent="." unique_id=833110506] unique_name_in_owner = true -visible = false anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 @@ -46,10 +89,10 @@ unique_name_in_owner = true script = ExtResource("5_dqmg8") metadata/_custom_type_script = "uid://0dhj8sdpil7q" -[node name="EnergyPassDayInfo" parent="PassDayInfo" unique_id=2044341204 instance=ExtResource("2_feyaf")] -unique_name_in_owner = true +[node name="TextureRect" type="TextureRect" parent="PassDayInfo" unique_id=1350962162] layout_mode = 2 -size_flags_horizontal = 6 +size_flags_horizontal = 4 +texture = ExtResource("6_h2bel") [node name="ChargeCount" type="Label" parent="PassDayInfo" unique_id=1326590358] unique_name_in_owner = true @@ -57,6 +100,55 @@ layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 0 text = "%d_CHARGE_LEFT" -label_settings = ExtResource("6_dqmg8") +label_settings = SubResource("LabelSettings_rn4dm") horizontal_alignment = 1 vertical_alignment = 1 + +[node name="NightAnimation" type="TextureRect" parent="." unique_id=126988628] +unique_name_in_owner = true +custom_minimum_size = Vector2(500, 0) +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -166.0 +offset_top = -178.5 +offset_right = 166.0 +offset_bottom = 178.5 +grow_horizontal = 2 +grow_vertical = 2 +texture = SubResource("ViewportTexture_h2bel") +expand_mode = 5 +stretch_mode = 5 + +[node name="NightAnimationPlayer" type="AnimationPlayer" parent="NightAnimation" unique_id=787903570] +unique_name_in_owner = true +libraries/ = SubResource("AnimationLibrary_wafeq") + +[node name="SubViewport" type="SubViewport" parent="NightAnimation" unique_id=1324502966] +transparent_bg = true +size = Vector2i(500, 500) + +[node name="NightAnimationSprite" type="Sprite2D" parent="NightAnimation/SubViewport" unique_id=43111409] +position = Vector2(250, 250) +texture = ExtResource("7_m84xg") + +[node name="MarginContainer" type="MarginContainer" parent="." unique_id=1163984124] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/margin_left = 15 +theme_override_constants/margin_top = 15 +theme_override_constants/margin_right = 15 +theme_override_constants/margin_bottom = 15 + +[node name="EnergyPassDayInfo" parent="MarginContainer" unique_id=2044341204 instance=ExtResource("2_feyaf")] +unique_name_in_owner = true +layout_mode = 2 +theme_override_constants/margin_left = 15 +theme_override_constants/margin_top = 15 +theme_override_constants/margin_right = 15 +theme_override_constants/margin_bottom = 15 diff --git a/gui/game/pass_day/scripts/pass_day.gd b/gui/game/pass_day/scripts/pass_day.gd index 893905e..91e53ed 100644 --- a/gui/game/pass_day/scripts/pass_day.gd +++ b/gui/game/pass_day/scripts/pass_day.gd @@ -47,7 +47,7 @@ func setup_energy_values(): current_energy = from_energy func pass_day_animation(): - + setup_energy_values() %ChargeCount.text = tr('%d_CHARGE_LEFT') % GameInfo.game_data.current_region_data.charges @@ -60,6 +60,7 @@ func pass_day_animation(): await appear() is_animation_appeared = true animation_appeared.emit() + %NightAnimationPlayer.play("pass") await get_tree().create_timer(TIME_MARGIN).timeout recharging = true time_since_recharging = 0. @@ -78,12 +79,20 @@ func appear(): BLUR_MIX_PERCENTAGE, 0.5 ) + add_tween( + "modulate:a", + %NightAnimation, + 1., + 0.5 + ) await add_tween( "blur_strength", %Blur, BLUR_STRENGTH, 0.5 ).finished + + await %PassDayInfoAnimationPlayer.appear() func disappear(): @@ -94,12 +103,19 @@ func disappear(): 0.0, 0.5 ) + add_tween( + "modulate:a", + %NightAnimation, + 0., + 0.5 + ) await add_tween( "blur_strength", %Blur, 0.1, 0.5 ).finished + hide() func add_tween( diff --git a/gui/game/scripts/game_gui.gd b/gui/game/scripts/game_gui.gd index 74d255e..3fcd3ac 100644 --- a/gui/game/scripts/game_gui.gd +++ b/gui/game/scripts/game_gui.gd @@ -10,24 +10,26 @@ var score_mirror : score_mirror = v score_update(true) +var objective_text : String = "" : set = set_objective_text + func _ready(): GameInfo.game_data.current_region_data.updated.connect(_on_region_updated) GameInfo.game_data.player_data.updated.connect(_on_player_updated) - GameInfo.game_data.current_region_data.pass_day_ended.connect(_on_region_pass_day_ended) - - %ObjectiveProgressBar.visible = not "tutorial" in GameInfo.game_data.current_region_data.flags - %SimplePlantPointScore.visible = "tutorial" in GameInfo.game_data.current_region_data.flags + %ObjectiveProgressBar.visible = ( + not GameInfo.game_data.current_run.story_step is TutorialStoryStep + and not GameInfo.game_data.current_region_data.objective_disabled + ) + %SimplePlantPointScore.visible = GameInfo.game_data.current_run.story_step is TutorialStoryStep - charge_update(GameInfo.game_data.current_region_data) state_update(GameInfo.game_data.current_region_data) player_update(GameInfo.game_data.player_data, false) %EnergyInfo.reset_size() - %GiveUpButton.pressed.connect(_on_give_up_pressed) score_mirror = GameInfo.game_data.current_region_data.get_score() for p : PlantData in GameInfo.game_data.current_region_data.plants: score_by_plant[str(p.random_seed)] = p.get_score() + set_objective_text() func _on_player_updated(player_data : PlayerData): player_update(player_data) @@ -38,6 +40,15 @@ func player_update(player_data : PlayerData, with_animation = true): player_data.max_energy, with_animation ) + if with_animation: + get_tree().create_tween().tween_property( + %NoEnergyVignette, + "modulate:a", + 1. if player_data.energy == 0 else 0., + 0.3 + ) + else: + %NoEnergyVignette.modulate.a = 1. if player_data.energy == 0 else 0. func _on_region_updated(region_data : RegionData): await get_tree().create_timer(0.1).timeout @@ -59,23 +70,15 @@ func _on_region_updated(region_data : RegionData): score_mirror -= score_by_plant[key] score_by_plant.erase(key) - charge_update(region_data) state_update(region_data) -func _on_give_up_pressed(): - GameInfo.game_data.give_up() - SceneManager.change_to_scene_id('ASTRA') - -func charge_update(region_data : RegionData): - %RechargesLeftLabel.text = tr("%d_CHARGE_LEFT") % (region_data.charges) - func score_update(with_animation = true): var objective_progression : float + var objective = GameInfo.game_data.current_region_data.objective if GameInfo.game_data.current_region_data.state == RegionData.State.SUCCEEDED: objective_progression = 1. - %ObjectiveProgressBar.text = tr("FULL") + %ObjectiveProgressBar.text = tr("FULL") + " %d" % [score_mirror] else: - var objective = GameInfo.game_data.current_region_data.objective objective_progression = (float(score_mirror) / max(float(objective), 1)) %ObjectiveProgressBar.text = "%d/%d" % [score_mirror, objective] @@ -96,18 +99,11 @@ func score_update(with_animation = true): func state_update(region_data : RegionData): if region_data.state == RegionData.State.SUCCEEDED: - %Alert.text = "SHIP_IS_READY_TO_TAKE_OFF" - if "tutorial" in region_data.flags: - %Alert.text = "TUTORIAL_FINISHED" - %Alert.modulate = Color("ffa617ff") - %Alert.appear() + objective_text = "SHIP_IS_READY_TO_TAKE_OFF" + if GameInfo.game_data.current_run.story_step is TutorialStoryStep: + objective_text = "PASS_THE_MYSTERIOUS_DOOR" elif region_data.state == RegionData.State.FAILED: - %Alert.text = "NO_RECHARGE_LEFT" - %Alert.modulate = Color("FF006E") - %Alert.appear() - else: - %Alert.disappear() - %GiveUpButton.visible = region_data.state == RegionData.State.FAILED + objective_text = "NO_RECHARGE_LEFT" func plant_changing_score(plant_data: PlantData, amount : int): if GameInfo.game_data.current_region_data.in_passing_day_animation: @@ -156,16 +152,16 @@ func spawn_score_particle( sprite_particle.queue_free() +func set_objective_text(v : String = objective_text): + objective_text = v + if is_node_ready(): + if (objective_text != "" and objective_text != %ObjectiveLabel.text): + %ObjectiveAnimationPlayer.play("bump") + AudioManager.play_sfx("Screen_interaction") + %ObjectiveLabel.text = v + func _on_player_action_tried_without_energy(): $AnimationPlayer.play("no_energy_left") func _on_player_upgraded(): $EffectAnimation.play("upgrade") - -func _on_region_pass_day_ended(region:Region): - if region.data.charges == 1: - %Announce.announce( - tr("LAST_RECHARGE"), - tr("%d_GARDEN_SCORE_LEFT") % [region.data.objective - region.garden.get_score()], - Announce.RED_COLOR - ) diff --git a/gui/game/tutorial/scripts/tutorial.gd b/gui/game/tutorial/scripts/tutorial.gd index a18a794..e6cb1c4 100644 --- a/gui/game/tutorial/scripts/tutorial.gd +++ b/gui/game/tutorial/scripts/tutorial.gd @@ -1,4 +1,4 @@ -extends Control +extends CanvasLayer class_name Tutorial const STEP_SCENE = preload("res://gui/game/tutorial/step_gui/step_gui.tscn") @@ -6,15 +6,45 @@ const STEP_SCENE = preload("res://gui/game/tutorial/step_gui/step_gui.tscn") signal succeded var indicators : Array[InGameIndicator] -@export var player : Player -@export var region : Region +var player : Player +var region : Region +var game_gui : GameGui + +var success = false @onready var steps : Array[Step] = [ + Step.new( + "MOVE_WITH_RIGHT_CLICK_OR_WASD", + (func (): + return player.global_position.distance_to(region.data.player_spawn) > 30) + ), + Step.new( + "CHANGE_ZOOM_WITH_Z_X", + (func (): + return GameInfo.settings_data.zoom != 1.), + (func (): GameInfo.game_data.player_data.inventory.add_item(Detector.new())) + ), + Step.new( + "SELECT_ITEM_WITH_SCROLL_CLICK_OR_NUMBER", + (func (): + return player.data.inventory.current_item_ind != player.data.inventory.tools.size()) + ), + Step.new( + "LEFT_CLICK_TO_USE_ITEMS", + (func (): + return player.instruction is Player.ItemActionInstruction) + ), Step.new( "USE_YOUR_DETECTOR_TO_FIND_THE_BATTERY", (func (): return player.position.distance_to(Vector2.ZERO) < 600) ), + Step.new( + "RECHARGE_IN_THE_RECHARGE_STATION", + (func (): + return region and region.data and not region.data.in_passing_day_animation and region.data.day != 1), + (func (): GameInfo.game_data.player_data.inventory.add_item(Pickaxe.new())) + ), Step.new( "DIG_A_TALION_VEIN_WITH_SHOVEL", (func (): @@ -24,62 +54,48 @@ var indicators : Array[InGameIndicator] return false) ), Step.new( - "TAKE_A_SEED", + "TAKE_A_SEED_BY_CLICKING_ON_IT", (func (): - return player.data.inventory.items.find_custom( + return player.data.inventory.seeds.find_custom( func(i:Item): return i is Seed ) != -1) ), + Step.new( + "DROP_SEED_WITH_KEY", + (func (): + return ( + Input.is_action_pressed("drop")) + ) + ), Step.new( "PLANT_SEED_IN_FERTILE_ZONE", (func (): for e in region.entity_container.get_children(): if e is Plant: + display_plant_info_tutorial(e.card_info()) return true return false) ), - Step.new( - "RECHARGE_TO_PASS_DAYS", - (func (): - return region and region.data and region.data.charges != 10) - ), Step.new( "GAIN_FIRST_PLANT_POINT", (func (): - return region.data.get_score() != 0) + return region and region.data and not region.data.in_passing_day_animation and region.data.get_score() != 0), + (func (): GameInfo.game_data.player_data.inventory.add_item(Fork.new())) ), Step.new( - "DISCOVER_A_SEED_WITH_A_MUTATION", + "HARVEST_A_MATURE_PLANT", (func (): for e in region.entity_container.get_children(): - if e is ItemObject and e.item is Seed and len(e.item.plant_mutations): + if e is Plant and e.harvested: return true return false) - ), - Step.new( - "PLANT_A_SEED_WITH_A_MUTATION", - (func (): - for e in region.entity_container.get_children(): - if e is Plant and len(e.data.mutations): - return true - return false) - ), - Step.new( - "HARVEST_A_MATURE_PLANT_WITH_A_MUTATION", - (func (): - for e in region.entity_container.get_children(): - if e is Plant and e.harvested and len(e.data.mutations): - return true - return false) - ), + ) ] func _ready(): - if region and region.data and "tutorial" in region.data.flags: - setup_gui() - show() - else: - hide() + setup_gui() + show() + %PlantInfoTutorial.hide() func setup_gui(): for s in %Steps.get_children(): @@ -93,41 +109,68 @@ func setup_gui(): func _process(_d): - if region and region.data and "tutorial" in region.data.flags and not GameInfo.game_data.tutorial_done: - var success = true + if success: + hide() + elif region and region.data and not success: + var all_success = true for i in len(steps): var step := steps[i] var step_gui := %Steps.get_children()[i] as TutorialStepGui - step.update_succeeded() - step_gui.suceeded = step.succeeded - if not step.succeeded: - success = false - if success: + step_gui.visible = i == 0 or steps[i-1].succeeded + if step_gui.visible: + var old_succeeded = step.succeeded + step.update_succeeded() + if old_succeeded != step.succeeded: # Put a delay so two state don't collide + return + step_gui.suceeded = step.succeeded + if not step.succeeded: + game_gui.objective_text = step.text + all_success = false + if all_success: finish_tutorial() func finish_tutorial(): - GameInfo.game_data.tutorial_done = true region.data.state = RegionData.State.SUCCEEDED region.data.update() succeded.emit() + success = true + +func display_plant_info_tutorial(with_card_info : CardInfo): + %PlantCard.info = with_card_info + AudioManager.play_sfx("Reveal") + %PlantCard.update() + %PlantInfoTutorialAnimationPlayer.play("appear") + Pointer.action_disabled = true + +func _on_ok_button_button_down(): + %PlantInfoTutorialAnimationPlayer.play_backwards("appear") + get_tree().create_timer(0.2).timeout.connect( # Put a delay to not interfere with the ok button click + func(): + Pointer.action_disabled = false + ) class Step: var text : String : get = get_text var is_step_over_callable : Callable + var on_succeeded : Callable var succeeded = false func _init( _text : String = "", - _is_step_over_callable : Callable = (func():return false) + _is_step_over_callable : Callable = (func():return false), + _on_succeeded : Callable = (func():return false) ): text = _text is_step_over_callable = _is_step_over_callable + on_succeeded = _on_succeeded func get_text() -> String: return text - + func update_succeeded() -> bool: if not succeeded: succeeded = is_step_over_callable.call() + if succeeded: + on_succeeded.call() return succeeded diff --git a/gui/game/tutorial/tutorial.tscn b/gui/game/tutorial/tutorial.tscn index 7d76b0f..b389c8d 100644 --- a/gui/game/tutorial/tutorial.tscn +++ b/gui/game/tutorial/tutorial.tscn @@ -4,6 +4,20 @@ [ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="2_1wikm"] [ext_resource type="Texture2D" uid="uid://1ynlp05wj0hm" path="res://common/icons/rocket.svg" id="3_8kuag"] [ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="4_1wikm"] +[ext_resource type="Shader" uid="uid://cuni3ggtw2uuy" path="res://common/vfx/materials/shaders/blur.gdshader" id="5_5i4hd"] +[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="6_hgus1"] +[ext_resource type="PackedScene" uid="uid://753270jjxmfg" path="res://gui/game/card/card.tscn" id="6_vg3tr"] +[ext_resource type="Texture2D" uid="uid://bgi4rc50par30" path="res://common/icons/arrow-narrow-right.svg" id="7_6k6bq"] +[ext_resource type="Texture2D" uid="uid://bd6qddv5ihkjr" path="res://common/icons/bucket.svg" id="7_ug5yk"] +[ext_resource type="Script" uid="uid://dj2pv1hiwjfv0" path="res://gui/game/card/scripts/card_info.gd" id="8_hgus1"] +[ext_resource type="Script" uid="uid://dgbh38j13g5kn" path="res://gui/game/card/scripts/card_section_info.gd" id="9_6k6bq"] +[ext_resource type="Texture2D" uid="uid://b752eqq4cm7ve" path="res://common/icons/building-factory-2.svg" id="10_58nqq"] +[ext_resource type="Script" uid="uid://b4tkium34c831" path="res://gui/game/card/scripts/card_stat_info.gd" id="11_ebkn5"] +[ext_resource type="Texture2D" uid="uid://dg00xnpp6ixls" path="res://common/icons/server-2.svg" id="12_2pmxd"] +[ext_resource type="Texture2D" uid="uid://baaujfw8piywi" path="res://common/icons/dna.svg" id="13_1lrfc"] +[ext_resource type="Texture2D" uid="uid://bsvxhafoxwmw0" path="res://common/icons/cube-3d-sphere.svg" id="14_e6tpi"] +[ext_resource type="Texture2D" uid="uid://7oh782g7ngop" path="res://common/icons/arrow-narrow-left.svg" id="17_58nqq"] +[ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="18_6k6bq"] [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_x7cwm"] bg_color = Color(0.18, 0.18, 0.18, 0.48235294) @@ -16,19 +30,127 @@ corner_radius_bottom_left = 20 font = ExtResource("4_1wikm") font_size = 20 -[node name="Tutorial" type="Control" unique_id=1210916048] -layout_mode = 3 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -mouse_filter = 2 +[sub_resource type="ShaderMaterial" id="ShaderMaterial_pu6eb"] +shader = ExtResource("5_5i4hd") +shader_parameter/strength = 8.00000037674012 +shader_parameter/mix_percentage = 0.3 + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_ebkn5"] + +[sub_resource type="Resource" id="Resource_ditr3"] +script = ExtResource("9_6k6bq") +title_text = "Mutations" +title_icon = ExtResource("10_58nqq") +text = "This is a mutation" +metadata/_custom_type_script = "uid://dgbh38j13g5kn" + +[sub_resource type="Resource" id="Resource_ikhlb"] +script = ExtResource("11_ebkn5") +text = "8" +icon = ExtResource("12_2pmxd") +metadata/_custom_type_script = "uid://b4tkium34c831" + +[sub_resource type="Resource" id="Resource_puixe"] +script = ExtResource("8_hgus1") +title = "Hello" +subtitle = "Mature" +texture = ExtResource("13_1lrfc") +important_stat_text = "8" +important_stat_icon = ExtResource("7_ug5yk") +stats = Array[ExtResource("11_ebkn5")]([SubResource("Resource_ikhlb")]) +sections = Array[ExtResource("9_6k6bq")]([SubResource("Resource_ditr3")]) +metadata/_custom_type_script = "uid://dj2pv1hiwjfv0" + +[sub_resource type="Animation" id="Animation_6k6bq"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:visible") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MarginContainer:theme_override_constants/separation") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [12] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath(".:modulate:a") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1.0] +} + +[sub_resource type="Animation" id="Animation_58nqq"] +resource_name = "appear" +length = 0.5 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:visible") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.1), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [false, true] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("MarginContainer:theme_override_constants/separation") +tracks/1/interp = 2 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0.06666666, 0.5), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [183, 12] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath(".:modulate:a") +tracks/2/interp = 2 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0, 0.5), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [0.0, 1.0] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_ebkn5"] +_data = { +&"RESET": SubResource("Animation_6k6bq"), +&"appear": SubResource("Animation_58nqq") +} + +[node name="Tutorial" type="CanvasLayer" unique_id=36887292] script = ExtResource("1_ie1q8") metadata/_edit_horizontal_guides_ = [369.0] [node name="MarginContainer" type="MarginContainer" parent="." unique_id=502187513] -layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 @@ -37,34 +159,199 @@ grow_vertical = 2 mouse_filter = 2 theme = ExtResource("2_1wikm") -[node name="PanelContainer" type="PanelContainer" parent="MarginContainer" unique_id=913156548] +[node name="TutorialStepsPanelContainer" type="PanelContainer" parent="MarginContainer" unique_id=913156548] layout_mode = 2 size_flags_horizontal = 0 size_flags_vertical = 8 mouse_filter = 2 theme_override_styles/panel = SubResource("StyleBoxFlat_x7cwm") -[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/PanelContainer" unique_id=332993244] +[node name="MarginContainer" type="MarginContainer" parent="MarginContainer/TutorialStepsPanelContainer" unique_id=332993244] layout_mode = 2 mouse_filter = 2 -[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer" unique_id=1196958295] +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/TutorialStepsPanelContainer/MarginContainer" unique_id=1196958295] layout_mode = 2 mouse_filter = 2 -[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=1140176018] +[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/TutorialStepsPanelContainer/MarginContainer/VBoxContainer" unique_id=1140176018] layout_mode = 2 mouse_filter = 2 -[node name="TextureRect" type="TextureRect" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer" unique_id=527978183] +[node name="TextureRect" type="TextureRect" parent="MarginContainer/TutorialStepsPanelContainer/MarginContainer/VBoxContainer/HBoxContainer" unique_id=527978183] layout_mode = 2 texture = ExtResource("3_8kuag") -[node name="Label" type="Label" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer" unique_id=592987672] +[node name="Label" type="Label" parent="MarginContainer/TutorialStepsPanelContainer/MarginContainer/VBoxContainer/HBoxContainer" unique_id=592987672] layout_mode = 2 text = "TUTORIAL" label_settings = SubResource("LabelSettings_8kuag") -[node name="Steps" type="VBoxContainer" parent="MarginContainer/PanelContainer/MarginContainer/VBoxContainer" unique_id=125170550] +[node name="Steps" type="VBoxContainer" parent="MarginContainer/TutorialStepsPanelContainer/MarginContainer/VBoxContainer" unique_id=125170550] unique_name_in_owner = true layout_mode = 2 + +[node name="PlantInfoTutorial" type="Control" parent="." unique_id=1586592931] +unique_name_in_owner = true +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="BlurRect" type="ColorRect" parent="PlantInfoTutorial" unique_id=35513528] +material = SubResource("ShaderMaterial_pu6eb") +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0.037180007, 0.020800002, 0.13, 1) + +[node name="MarginContainer" type="VBoxContainer" parent="PlantInfoTutorial" unique_id=1757534024] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/separation = 12 +alignment = 1 + +[node name="Title" type="Label" parent="PlantInfoTutorial/MarginContainer" unique_id=1842689362] +layout_mode = 2 +text = "PLANTS_INFO" +label_settings = ExtResource("6_hgus1") +horizontal_alignment = 1 + +[node name="Subtitle" type="Label" parent="PlantInfoTutorial/MarginContainer" unique_id=656340742] +layout_mode = 2 +text = "OBTAIN_INFORMATION_ON_PLANTS_WHILE_HOVERING_PLANTS_BASE" +horizontal_alignment = 1 + +[node name="GridContainer" type="GridContainer" parent="PlantInfoTutorial/MarginContainer" unique_id=1124442982] +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +columns = 3 + +[node name="VBoxContainer" type="VBoxContainer" parent="PlantInfoTutorial/MarginContainer/GridContainer" unique_id=1598939949] +layout_mode = 2 +theme_override_constants/separation = 8 + +[node name="HBoxContainer" type="HBoxContainer" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer" unique_id=1972134386] +layout_mode = 2 +alignment = 1 + +[node name="Label" type="RichTextLabel" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer/HBoxContainer" unique_id=263525139] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +bbcode_enabled = true +text = "PLANT_NAME_TEXT" +fit_content = true +scroll_active = false +vertical_alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer/HBoxContainer" unique_id=1507687253] +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 8 +texture = ExtResource("7_6k6bq") +stretch_mode = 5 + +[node name="HBoxContainer3" type="HBoxContainer" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer" unique_id=483641916] +layout_mode = 2 +alignment = 1 + +[node name="Label2" type="RichTextLabel" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer/HBoxContainer3" unique_id=553756431] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +bbcode_enabled = true +text = "PLANT_STATS_TEXT" +fit_content = true +scroll_active = false +vertical_alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer/HBoxContainer3" unique_id=953954556] +layout_mode = 2 +size_flags_vertical = 0 +texture = ExtResource("7_6k6bq") +stretch_mode = 5 + +[node name="VBoxContainer3" type="VBoxContainer" parent="PlantInfoTutorial/MarginContainer/GridContainer" unique_id=1226314631] +layout_mode = 2 + +[node name="HSeparator" type="HSeparator" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer3" unique_id=591048390] +layout_mode = 2 +theme_override_constants/separation = 30 +theme_override_styles/separator = SubResource("StyleBoxEmpty_ebkn5") + +[node name="PlantCard" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer3" unique_id=1085885349 instance=ExtResource("6_vg3tr")] +unique_name_in_owner = true +custom_minimum_size = Vector2(350, 0) +layout_mode = 2 +info = SubResource("Resource_puixe") + +[node name="VBoxContainer2" type="VBoxContainer" parent="PlantInfoTutorial/MarginContainer/GridContainer" unique_id=906180848] +layout_mode = 2 +theme_override_constants/separation = 8 + +[node name="HSeparator" type="HSeparator" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer2" unique_id=760754866] +layout_mode = 2 +theme_override_constants/separation = 32 +theme_override_styles/separator = SubResource("StyleBoxEmpty_ebkn5") + +[node name="HBoxContainer" type="HBoxContainer" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer2" unique_id=383033253] +layout_mode = 2 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer2/HBoxContainer" unique_id=475071884] +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +texture = ExtResource("17_58nqq") +stretch_mode = 5 + +[node name="Label2" type="RichTextLabel" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer2/HBoxContainer" unique_id=1479217505] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +bbcode_enabled = true +text = "PLANT_SCORE_TEXT" +fit_content = true +scroll_active = false +horizontal_alignment = 2 +vertical_alignment = 1 + +[node name="HBoxContainer2" type="HBoxContainer" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer2" unique_id=2062134463] +layout_mode = 2 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer2/HBoxContainer2" unique_id=392813755] +layout_mode = 2 +size_flags_vertical = 4 +texture = ExtResource("17_58nqq") +stretch_mode = 5 + +[node name="Label2" type="RichTextLabel" parent="PlantInfoTutorial/MarginContainer/GridContainer/VBoxContainer2/HBoxContainer2" unique_id=472790254] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +bbcode_enabled = true +text = "PLANT_MUTATION_TEXT" +fit_content = true +scroll_active = false +horizontal_alignment = 2 +vertical_alignment = 1 + +[node name="OkButton" type="Button" parent="PlantInfoTutorial/MarginContainer" unique_id=1684351093] +layout_mode = 2 +size_flags_horizontal = 4 +theme = ExtResource("18_6k6bq") +text = "OK" + +[node name="PlantInfoTutorialAnimationPlayer" type="AnimationPlayer" parent="PlantInfoTutorial" unique_id=549667783] +unique_name_in_owner = true +libraries/ = SubResource("AnimationLibrary_ebkn5") + +[connection signal="button_down" from="PlantInfoTutorial/MarginContainer/OkButton" to="." method="_on_ok_button_button_down"] diff --git a/gui/game/win/scripts/win.gd b/gui/game/win/scripts/win.gd deleted file mode 100644 index 988b8a5..0000000 --- a/gui/game/win/scripts/win.gd +++ /dev/null @@ -1,23 +0,0 @@ -extends Control - -@export_file var game_scene_path : String - -func _ready(): - visible = false - -func win(region : Region): - visible = true - get_tree().paused = true - %WinTitle.text = tr("SCORE_%d") % roundi(region.garden.get_score()) - -func _on_restart_pressed(): - GameInfo.game_data.reset_all() - get_tree().paused = false - SceneManager.change_to_scene_id("REGION_SELECTION") - -func _on_quit_pressed(): - get_tree().quit() - - -func _on_region_day_limit_exceed(region : Region): - win(region) diff --git a/gui/game/win/scripts/win.gd.uid b/gui/game/win/scripts/win.gd.uid deleted file mode 100644 index e3c42f2..0000000 --- a/gui/game/win/scripts/win.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://b3wuxv04clyed diff --git a/gui/game/win/win.tscn b/gui/game/win/win.tscn deleted file mode 100644 index fde6dd3..0000000 --- a/gui/game/win/win.tscn +++ /dev/null @@ -1,102 +0,0 @@ -[gd_scene load_steps=10 format=3 uid="uid://v41hfc7haaye"] - -[ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="1_cl67j"] -[ext_resource type="Script" uid="uid://b3wuxv04clyed" path="res://gui/game/win/scripts/win.gd" id="1_sehw2"] -[ext_resource type="Shader" uid="uid://cuni3ggtw2uuy" path="res://common/vfx/materials/shaders/blur.gdshader" id="2_0b3c6"] -[ext_resource type="FontFile" uid="uid://cpnsnrqhfkj3k" path="res://gui/ressources/fonts/spincycle_ot.otf" id="2_sehw2"] -[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="3_0b3c6"] -[ext_resource type="Texture2D" uid="uid://bewr0t1wi8pff" path="res://common/icons/rotate.svg" id="4_8p3aj"] -[ext_resource type="Texture2D" uid="uid://dex283rx00fjb" path="res://common/icons/logout.svg" id="5_j3wid"] - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_8p3aj"] -shader = ExtResource("2_0b3c6") -shader_parameter/strength = 3.3 -shader_parameter/mix_percentage = 0.3 - -[sub_resource type="LabelSettings" id="LabelSettings_eq457"] -font = ExtResource("2_sehw2") -font_size = 50 - -[node name="Win" type="Control"] -process_mode = 3 -z_index = 101 -layout_mode = 3 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -script = ExtResource("1_sehw2") -game_scene_path = "uid://d28cp7a21kwou" - -[node name="ColorRect" type="ColorRect" parent="."] -material = SubResource("ShaderMaterial_8p3aj") -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -color = Color(0.0352941, 0.0196078, 0.12549, 0.705882) - -[node name="Tutorial" type="MarginContainer" parent="."] -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -theme = ExtResource("1_cl67j") - -[node name="VBoxContainer" type="VBoxContainer" parent="Tutorial"] -layout_mode = 2 -size_flags_horizontal = 4 -theme = ExtResource("1_cl67j") -theme_override_constants/separation = 9 -alignment = 1 - -[node name="WinTitle" type="Label" parent="Tutorial/VBoxContainer"] -unique_name_in_owner = true -layout_mode = 2 -text = "Score : 10" -label_settings = SubResource("LabelSettings_eq457") -horizontal_alignment = 1 - -[node name="ThanksTitle" type="Label" parent="Tutorial/VBoxContainer"] -layout_mode = 2 -text = "THANKS_FOR_PLAYING" -label_settings = ExtResource("3_0b3c6") -horizontal_alignment = 1 - -[node name="ThanksText" type="Label" parent="Tutorial/VBoxContainer"] -layout_mode = 2 -text = "WIN_SCREEN_TEXT" -horizontal_alignment = 1 - -[node name="HBoxContainer2" type="HBoxContainer" parent="Tutorial/VBoxContainer"] -layout_mode = 2 -alignment = 1 - -[node name="LinkButton" type="LinkButton" parent="Tutorial/VBoxContainer/HBoxContainer2"] -layout_mode = 2 -theme = ExtResource("1_cl67j") -theme_override_font_sizes/font_size = 24 -text = "JOIN_OUR_DISCORD" -uri = "https://discord.gg/VTFKvEvgfz" - -[node name="HBoxContainer" type="HBoxContainer" parent="Tutorial/VBoxContainer"] -layout_mode = 2 -alignment = 1 - -[node name="Restart" type="Button" parent="Tutorial/VBoxContainer/HBoxContainer"] -layout_mode = 2 -text = "RESTART" -icon = ExtResource("4_8p3aj") - -[node name="Quit" type="Button" parent="Tutorial/VBoxContainer/HBoxContainer"] -layout_mode = 2 -text = "QUIT" -icon = ExtResource("5_j3wid") - -[connection signal="pressed" from="Tutorial/VBoxContainer/HBoxContainer/Restart" to="." method="_on_restart_pressed"] -[connection signal="pressed" from="Tutorial/VBoxContainer/HBoxContainer/Quit" to="." method="_on_quit_pressed"] diff --git a/gui/loose_screen/assets/cristal.blend b/gui/loose_screen/assets/cristal.blend new file mode 100644 index 0000000..c55d230 Binary files /dev/null and b/gui/loose_screen/assets/cristal.blend differ diff --git a/gui/loose_screen/assets/cristal.blend.import b/gui/loose_screen/assets/cristal.blend.import new file mode 100644 index 0000000..12b75e7 --- /dev/null +++ b/gui/loose_screen/assets/cristal.blend.import @@ -0,0 +1,60 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://on4beh6lla76" +path="res://.godot/imported/cristal.blend-116d25ad1da461c81fb8ef9157e2d1e7.scn" + +[deps] + +source_file="res://gui/loose_screen/assets/cristal.blend" +dest_files=["res://.godot/imported/cristal.blend-116d25ad1da461c81fb8ef9157e2d1e7.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/gui/loose_screen/assets/cristal.blend1 b/gui/loose_screen/assets/cristal.blend1 new file mode 100644 index 0000000..7ebac4a Binary files /dev/null and b/gui/loose_screen/assets/cristal.blend1 differ diff --git a/gui/loose_screen/assets/orchid_sleeping.png b/gui/loose_screen/assets/orchid_sleeping.png new file mode 100644 index 0000000..6451cc2 Binary files /dev/null and b/gui/loose_screen/assets/orchid_sleeping.png differ diff --git a/gui/loose_screen/assets/orchid_sleeping.png.import b/gui/loose_screen/assets/orchid_sleeping.png.import new file mode 100644 index 0000000..8fde304 --- /dev/null +++ b/gui/loose_screen/assets/orchid_sleeping.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://c2ebqci4tglk8" +path="res://.godot/imported/orchid_sleeping.png-7f59ff571a5eb07fa1a91538a777423b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://gui/loose_screen/assets/orchid_sleeping.png" +dest_files=["res://.godot/imported/orchid_sleeping.png-7f59ff571a5eb07fa1a91538a777423b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/gui/loose_screen/loose_screen.tscn b/gui/loose_screen/loose_screen.tscn new file mode 100644 index 0000000..78ca5ea --- /dev/null +++ b/gui/loose_screen/loose_screen.tscn @@ -0,0 +1,80 @@ +[gd_scene format=3 uid="uid://u6nw3vo6677a"] + +[ext_resource type="Shader" uid="uid://cuni3ggtw2uuy" path="res://common/vfx/materials/shaders/blur.gdshader" id="1_pf6ao"] +[ext_resource type="Texture2D" uid="uid://c2ebqci4tglk8" path="res://gui/loose_screen/assets/orchid_sleeping.png" id="2_f8jil"] +[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="3_4ae40"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="4_w6ode"] +[ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="5_276s3"] +[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="6_60kfb"] + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_041t2"] +shader = ExtResource("1_pf6ao") +shader_parameter/strength = 5.00000023424012 +shader_parameter/mix_percentage = 0.3 + +[sub_resource type="LabelSettings" id="LabelSettings_bn8hj"] +font = ExtResource("4_w6ode") +font_size = 50 +font_color = Color(1, 0.6509804, 0.09019608, 1) + +[node name="LooseScreen" type="CanvasLayer" unique_id=1502767186] + +[node name="BlurRect" type="ColorRect" parent="." unique_id=1208806322] +material = SubResource("ShaderMaterial_041t2") +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0.0352941, 0.0196078, 0.12549, 0.705882) + +[node name="GridContainer" type="GridContainer" parent="." unique_id=2014325082] +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -186.5 +offset_top = -249.0 +offset_right = 186.5 +offset_bottom = 249.0 +grow_horizontal = 2 +grow_vertical = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +columns = 2 + +[node name="AnnounceContainer" type="VBoxContainer" parent="GridContainer" unique_id=717426101] +layout_mode = 2 +theme_override_constants/separation = 12 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="GridContainer/AnnounceContainer" unique_id=849798296] +custom_minimum_size = Vector2(0, 300) +layout_mode = 2 +texture = ExtResource("2_f8jil") +expand_mode = 3 +stretch_mode = 5 + +[node name="AnnounceText" type="Label" parent="GridContainer/AnnounceContainer" unique_id=1321978462] +unique_name_in_owner = true +layout_mode = 2 +text = "Out of energy" +label_settings = SubResource("LabelSettings_bn8hj") +horizontal_alignment = 1 + +[node name="AnnounceTitle" type="Label" parent="GridContainer/AnnounceContainer" unique_id=896530004] +unique_name_in_owner = true +layout_mode = 2 +text = "Orchid and the ship ran out of energy" +label_settings = ExtResource("3_4ae40") +horizontal_alignment = 1 +autowrap_mode = 3 + +[node name="OkButton" type="Button" parent="GridContainer/AnnounceContainer" unique_id=1371634749] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +theme = ExtResource("5_276s3") +text = "Wake up again" +icon = ExtResource("6_60kfb") diff --git a/gui/pause/assets/textures/card_tutorial_image.png b/gui/pause/assets/textures/card_tutorial_image.png deleted file mode 100644 index ac6b85a..0000000 Binary files a/gui/pause/assets/textures/card_tutorial_image.png and /dev/null differ diff --git a/gui/pause/assets/textures/card_tutorial_image.png.import b/gui/pause/assets/textures/card_tutorial_image.png.import deleted file mode 100644 index 1b2defd..0000000 --- a/gui/pause/assets/textures/card_tutorial_image.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://bku47nx7clom4" -path="res://.godot/imported/card_tutorial_image.png-a8f51388f4585abed9acb5f7a239ec3a.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://gui/pause/assets/textures/card_tutorial_image.png" -dest_files=["res://.godot/imported/card_tutorial_image.png-a8f51388f4585abed9acb5f7a239ec3a.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/gui/pause/pause.tscn b/gui/pause/pause.tscn index c65194f..0949554 100644 --- a/gui/pause/pause.tscn +++ b/gui/pause/pause.tscn @@ -10,22 +10,21 @@ [ext_resource type="Texture2D" uid="uid://bkwhrq4sp5dcp" path="res://common/icons/device-gamepad.svg" id="7_7c7ks"] [ext_resource type="Texture2D" uid="uid://dex283rx00fjb" path="res://common/icons/logout.svg" id="7_yj6f1"] [ext_resource type="Texture2D" uid="uid://b43thuq8piv18" path="res://common/icons/skull.svg" id="8_mnkqy"] -[ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="9_7c7ks"] -[ext_resource type="Texture2D" uid="uid://bku47nx7clom4" path="res://gui/pause/assets/textures/card_tutorial_image.png" id="9_sepn1"] -[ext_resource type="Texture2D" uid="uid://bgcymkgxk7mpp" path="res://gui/pause/assets/textures/moss_tutorial_image.png" id="11_mnkqy"] [ext_resource type="PackedScene" uid="uid://b4qe1dwwsk87t" path="res://gui/menu/controls/controls.tscn" id="11_urlqn"] -[ext_resource type="Texture2D" uid="uid://bhogi5kkltx51" path="res://gui/pause/assets/textures/rock_tutorial_image.png" id="12_mvn7k"] -[ext_resource type="Texture2D" uid="uid://3fwhxkd0ycga" path="res://gui/pause/assets/textures/talion_tutorial_image.png" id="13_4n2vt"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_58dya"] shader = ExtResource("2_apjlw") -shader_parameter/strength = 3.3 +shader_parameter/strength = 5.00000023424012 shader_parameter/mix_percentage = 0.3 [sub_resource type="LabelSettings" id="LabelSettings_apjlw"] font = ExtResource("4_apjlw") font_size = 30 +[sub_resource type="LabelSettings" id="LabelSettings_5hfp2"] +font = ExtResource("4_apjlw") +font_size = 20 + [sub_resource type="Animation" id="Animation_58dya"] length = 0.001 tracks/0/type = "value" @@ -122,11 +121,7 @@ grow_horizontal = 2 grow_vertical = 2 theme = ExtResource("1_51ks3") -[node name="GridContainer" type="GridContainer" parent="Container/MarginContainer" unique_id=1993147027] -layout_mode = 2 -columns = 2 - -[node name="Pause" type="VBoxContainer" parent="Container/MarginContainer/GridContainer" unique_id=1262577626] +[node name="Pause" type="VBoxContainer" parent="Container/MarginContainer" unique_id=1262577626] layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 3 @@ -134,177 +129,68 @@ theme = ExtResource("1_51ks3") theme_override_constants/separation = 20 alignment = 1 -[node name="PauseTitle" type="Label" parent="Container/MarginContainer/GridContainer/Pause" unique_id=1390949032] +[node name="PauseTitle" type="Label" parent="Container/MarginContainer/Pause" unique_id=1390949032] layout_mode = 2 text = "PAUSE" label_settings = SubResource("LabelSettings_apjlw") horizontal_alignment = 1 -[node name="HBoxContainer" type="VBoxContainer" parent="Container/MarginContainer/GridContainer/Pause" unique_id=616663351] +[node name="HBoxContainer" type="VBoxContainer" parent="Container/MarginContainer/Pause" unique_id=616663351] layout_mode = 2 size_flags_horizontal = 4 alignment = 1 -[node name="Resume" type="Button" parent="Container/MarginContainer/GridContainer/Pause/HBoxContainer" unique_id=163836777] +[node name="Resume" type="Button" parent="Container/MarginContainer/Pause/HBoxContainer" unique_id=163836777] layout_mode = 2 theme = ExtResource("1_51ks3") text = "RESUME_GAME" icon = ExtResource("5_apjlw") -[node name="Settings" type="Button" parent="Container/MarginContainer/GridContainer/Pause/HBoxContainer" unique_id=1532435179] +[node name="Settings" type="Button" parent="Container/MarginContainer/Pause/HBoxContainer" unique_id=1532435179] layout_mode = 2 text = "SETTINGS" icon = ExtResource("6_yj6f1") -[node name="Controls" type="Button" parent="Container/MarginContainer/GridContainer/Pause/HBoxContainer" unique_id=138156239] +[node name="Controls" type="Button" parent="Container/MarginContainer/Pause/HBoxContainer" unique_id=138156239] layout_mode = 2 text = "CONTROLS" icon = ExtResource("7_7c7ks") -[node name="GiveUp" type="Button" parent="Container/MarginContainer/GridContainer/Pause/HBoxContainer" unique_id=1100620343] +[node name="GiveUp" type="Button" parent="Container/MarginContainer/Pause/HBoxContainer" unique_id=1100620343] unique_name_in_owner = true layout_mode = 2 text = "GIVE_UP" icon = ExtResource("8_mnkqy") -[node name="Quit" type="Button" parent="Container/MarginContainer/GridContainer/Pause/HBoxContainer" unique_id=1740895928] +[node name="Quit" type="Button" parent="Container/MarginContainer/Pause/HBoxContainer" unique_id=1740895928] layout_mode = 2 text = "QUIT" icon = ExtResource("7_yj6f1") -[node name="Tutorial" type="VBoxContainer" parent="Container/MarginContainer/GridContainer" unique_id=1979359121] +[node name="SaveInfo" type="Label" parent="Container/MarginContainer" unique_id=144326561] layout_mode = 2 -size_flags_horizontal = 3 -alignment = 1 - -[node name="TutorialPlants" type="Label" parent="Container/MarginContainer/GridContainer/Tutorial" unique_id=54599107] -layout_mode = 2 -text = "PLANT_INFO" -label_settings = SubResource("LabelSettings_apjlw") +size_flags_vertical = 8 +text = "THIS_GAME_USE_AUTOSAVE" +label_settings = SubResource("LabelSettings_5hfp2") horizontal_alignment = 1 - -[node name="Plants" type="HBoxContainer" parent="Container/MarginContainer/GridContainer/Tutorial" unique_id=1658568175] -layout_mode = 2 -alignment = 1 - -[node name="TextureRect" type="TextureRect" parent="Container/MarginContainer/GridContainer/Tutorial/Plants" unique_id=1418592623] -layout_mode = 2 -texture = ExtResource("9_sepn1") -expand_mode = 3 -stretch_mode = 5 - -[node name="RichText" type="RichTextLabel" parent="Container/MarginContainer/GridContainer/Tutorial/Plants" unique_id=1176432130] -layout_mode = 2 -size_flags_horizontal = 3 -theme = ExtResource("9_7c7ks") -theme_override_fonts/bold_font = ExtResource("4_apjlw") -theme_override_font_sizes/normal_font_size = 15 -theme_override_font_sizes/bold_font_size = 18 -bbcode_enabled = true -text = "PLANT_INFO_TEXT" -fit_content = true -autowrap_mode = 0 -vertical_alignment = 1 - -[node name="TutorialTerrain" type="Label" parent="Container/MarginContainer/GridContainer/Tutorial" unique_id=749651974] -layout_mode = 2 -text = "TERRAINS" -label_settings = SubResource("LabelSettings_apjlw") -horizontal_alignment = 1 - -[node name="Zones" type="GridContainer" parent="Container/MarginContainer/GridContainer/Tutorial" unique_id=604890138] -layout_mode = 2 -columns = 3 - -[node name="Moss" type="VBoxContainer" parent="Container/MarginContainer/GridContainer/Tutorial/Zones" unique_id=1098973088] -layout_mode = 2 -size_flags_horizontal = 3 - -[node name="TextureRect" type="TextureRect" parent="Container/MarginContainer/GridContainer/Tutorial/Zones/Moss" unique_id=393539957] -custom_minimum_size = Vector2(0, 100) -layout_mode = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -texture = ExtResource("11_mnkqy") -expand_mode = 3 -stretch_mode = 5 - -[node name="RichText" type="RichTextLabel" parent="Container/MarginContainer/GridContainer/Tutorial/Zones/Moss" unique_id=2026113686] -layout_mode = 2 -size_flags_horizontal = 3 -theme = ExtResource("9_7c7ks") -theme_override_fonts/bold_font = ExtResource("4_apjlw") -theme_override_font_sizes/normal_font_size = 15 -theme_override_font_sizes/bold_font_size = 18 -bbcode_enabled = true -text = "FERTILE_LAND_TEXT" -fit_content = true -vertical_alignment = 1 - -[node name="Rock" type="VBoxContainer" parent="Container/MarginContainer/GridContainer/Tutorial/Zones" unique_id=35924894] -layout_mode = 2 -size_flags_horizontal = 3 - -[node name="TextureRect" type="TextureRect" parent="Container/MarginContainer/GridContainer/Tutorial/Zones/Rock" unique_id=92960155] -custom_minimum_size = Vector2(0, 100) -layout_mode = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -texture = ExtResource("12_mvn7k") -expand_mode = 3 -stretch_mode = 5 - -[node name="RichText" type="RichTextLabel" parent="Container/MarginContainer/GridContainer/Tutorial/Zones/Rock" unique_id=2043467484] -layout_mode = 2 -size_flags_horizontal = 3 -theme = ExtResource("9_7c7ks") -theme_override_fonts/bold_font = ExtResource("4_apjlw") -theme_override_font_sizes/normal_font_size = 15 -theme_override_font_sizes/bold_font_size = 18 -bbcode_enabled = true -text = "ROCK_TEXT" -fit_content = true -vertical_alignment = 1 - -[node name="Talion" type="VBoxContainer" parent="Container/MarginContainer/GridContainer/Tutorial/Zones" unique_id=366975247] -layout_mode = 2 -size_flags_horizontal = 3 - -[node name="TextureRect" type="TextureRect" parent="Container/MarginContainer/GridContainer/Tutorial/Zones/Talion" unique_id=850304517] -custom_minimum_size = Vector2(0, 100) -layout_mode = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -texture = ExtResource("13_4n2vt") -expand_mode = 3 -stretch_mode = 5 - -[node name="RichText" type="RichTextLabel" parent="Container/MarginContainer/GridContainer/Tutorial/Zones/Talion" unique_id=1778894577] -layout_mode = 2 -size_flags_horizontal = 3 -theme = ExtResource("9_7c7ks") -theme_override_fonts/bold_font = ExtResource("4_apjlw") -theme_override_font_sizes/normal_font_size = 15 -theme_override_font_sizes/bold_font_size = 18 -bbcode_enabled = true -text = "TALION_VEIN_TEXT" -fit_content = true vertical_alignment = 1 [node name="Settings" parent="." unique_id=758381952 instance=ExtResource("4_58dya")] unique_name_in_owner = true +visible = false mouse_filter = 2 [node name="Controls" parent="." unique_id=358658336 instance=ExtResource("11_urlqn")] unique_name_in_owner = true +visible = false mouse_filter = 2 [node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=1779993260] unique_name_in_owner = true libraries/ = SubResource("AnimationLibrary_yj6f1") -[connection signal="pressed" from="Container/MarginContainer/GridContainer/Pause/HBoxContainer/Resume" to="." method="_on_resume_pressed"] -[connection signal="pressed" from="Container/MarginContainer/GridContainer/Pause/HBoxContainer/Settings" to="." method="_on_settings_pressed"] -[connection signal="pressed" from="Container/MarginContainer/GridContainer/Pause/HBoxContainer/Controls" to="." method="_on_controls_pressed"] -[connection signal="pressed" from="Container/MarginContainer/GridContainer/Pause/HBoxContainer/GiveUp" to="." method="_on_give_up_pressed"] -[connection signal="pressed" from="Container/MarginContainer/GridContainer/Pause/HBoxContainer/Quit" to="." method="_on_quit_pressed"] +[connection signal="pressed" from="Container/MarginContainer/Pause/HBoxContainer/Resume" to="." method="_on_resume_pressed"] +[connection signal="pressed" from="Container/MarginContainer/Pause/HBoxContainer/Settings" to="." method="_on_settings_pressed"] +[connection signal="pressed" from="Container/MarginContainer/Pause/HBoxContainer/Controls" to="." method="_on_controls_pressed"] +[connection signal="pressed" from="Container/MarginContainer/Pause/HBoxContainer/GiveUp" to="." method="_on_give_up_pressed"] +[connection signal="pressed" from="Container/MarginContainer/Pause/HBoxContainer/Quit" to="." method="_on_quit_pressed"] diff --git a/gui/pause/scripts/pause.gd b/gui/pause/scripts/pause.gd index 20a3b82..17b7720 100644 --- a/gui/pause/scripts/pause.gd +++ b/gui/pause/scripts/pause.gd @@ -1,9 +1,11 @@ extends CanvasLayer var pause = false : set = set_pause +var mouse_mode_before_pause : Input.MouseMode func _ready(): hide() + Dialogic.timeline_ended.connect(_on_timeline_ended) func set_pause(p): if p != pause: @@ -15,10 +17,11 @@ func set_pause(p): get_tree().paused = pause %Settings.close_settings() %Controls.close_controls() - if p : + if p : + mouse_mode_before_pause = Input.mouse_mode Input.mouse_mode = Input.MOUSE_MODE_VISIBLE - elif SceneManager.actual_scene.mouse_captured: - Input.mouse_mode = Input.MOUSE_MODE_CAPTURED + else: + Input.mouse_mode = mouse_mode_before_pause if p: %GiveUp.visible = GameInfo.game_data and GameInfo.game_data.current_region_data @@ -30,6 +33,10 @@ func _input(_event): if Input.is_action_just_pressed("pause"): pause = not pause +func _on_timeline_ended(): + if SceneManager.actual_scene.mouse_captured: + Input.mouse_mode = Input.MOUSE_MODE_CAPTURED + func _on_resume_pressed(): pause = false @@ -47,6 +54,6 @@ func _on_controls_pressed(): func _on_give_up_pressed(): if GameInfo.game_data: - SceneManager.change_to_scene_id('ASTRA') + SceneManager.change_to_scene(AstraScene.new()) GameInfo.game_data.give_up() pause = false diff --git a/gui/pointer/pointer.tscn b/gui/pointer/pointer.tscn index ff82b33..b7431c0 100644 --- a/gui/pointer/pointer.tscn +++ b/gui/pointer/pointer.tscn @@ -153,7 +153,7 @@ opacity = 0.4 metadata/_custom_type_script = "uid://c60a1bjcuj4hd" [node name="CardCanvasLayer" type="CanvasLayer" parent="." unique_id=391042380] -layer = 2 +layer = 10 [node name="CardPosition" type="Control" parent="CardCanvasLayer" unique_id=466738082] unique_name_in_owner = true @@ -189,6 +189,7 @@ theme_override_constants/margin_bottom = 0 unique_name_in_owner = true modulate = Color(1, 1, 1, 0.5003133) material = SubResource("ShaderMaterial_6eft6") +custom_minimum_size = Vector2(66.16, 0) layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 8 diff --git a/gui/pointer/scripts/pointer.gd b/gui/pointer/scripts/pointer.gd index 402d9e0..06a405a 100644 --- a/gui/pointer/scripts/pointer.gd +++ b/gui/pointer/scripts/pointer.gd @@ -25,12 +25,14 @@ var can_use_item : bool = false var press_time := 0. var press_action_done := false +var action_disabled := false + func _ready(): Input.set_custom_mouse_cursor(default_cursor) %Action.visible = false func _process(delta): - if player: + if player and not action_disabled: process_player_actions(delta) else : %ActionProgressBar.value = 0. @@ -40,7 +42,7 @@ func _process(delta): %Inspector.position = get_viewport().get_mouse_position() if current_selected_item and SceneManager.actual_scene.scene_id == "REGION": - %ActionZone.radius = current_selected_item.usage_zone_radius + %ActionZone.radius = current_selected_item.usage_zone_radius * GameInfo.settings_data.zoom %ActionZone.color = ZONE_ACTIVATED_COLOR if can_use_item else ZONE_DEACTIVATED_COLOR else: %ActionZone.radius = 0 @@ -125,11 +127,7 @@ func inspect(node: Node): current_inspect.inspect(false) current_inspect = node inspected = node - if inspected is InspectableEntity: - inspected_card_info = inspected.card_info() - elif inspected is InventoryGuiItemMouseDetector: - inspected_card_info = inspected.card_info() - elif inspected is RegionPoint: + if inspected.has_method("card_info"): inspected_card_info = inspected.card_info() else: inspected_card_info = null @@ -143,23 +141,32 @@ func update_card(): not inspected or inspected_card_info == null or time_last_inspected > CARD_VISUALISATION_TIME or get_tree().paused + or action_disabled ): %CardVisualiser.hide() - elif inspected != null : - + if inspected_card_info != %CardVisualiser.card_info: %CardVisualiser.card_info = inspected_card_info %CardVisualiser.show() var camera = get_viewport().get_camera_2d() - var screen_size = get_viewport().get_visible_rect().size + var screen_size = get_viewport().get_visible_rect().size # * get_viewport().get_camera_2d().zoom + if inspected is InspectableEntity: - %CardPosition.position = inspected.global_position - camera.global_position + screen_size / 2 + inspected.get_card_up_padding() * Vector2.UP + %CardPosition.position = ( + (inspected.global_position - camera.global_position) * get_viewport().get_camera_2d().zoom + + ((screen_size) / 2) + + inspected.get_card_up_padding() * Vector2.UP + ) elif inspected is Control: %CardPosition.position = inspected.global_position + inspected.size / 2 + CARD_UP_PADDING * Vector2.UP elif inspected is Node3D: - %CardPosition.position = get_viewport().get_camera_3d().unproject_position(inspected.global_position) + CARD_UP_PADDING * Vector2.UP + + %CardPosition.position = ( + get_viewport().get_camera_3d().unproject_position(inspected.global_position) + + CARD_UP_PADDING * Vector2.UP + ) # if %CardVisualiser.is_mouse_over(): # time_last_inspected = 0. @@ -184,7 +191,7 @@ func update_inspector(): else: %Action.visible = false -func stop_inspect(node : Node): +func stop_inspect(node : Node = current_inspect): if node.has_method("inspect"): node.inspect(false) if current_inspect == node: diff --git a/gui/ressources/menu.tres b/gui/ressources/menu.tres index 7c5ca10..765b89d 100644 --- a/gui/ressources/menu.tres +++ b/gui/ressources/menu.tres @@ -161,6 +161,7 @@ corner_radius_bottom_left = 5 [resource] Button/colors/font_color = Color(1, 1, 1, 1) +Button/colors/font_hover_color = Color(0.60122275, 0.6012229, 0.60122395, 1) Button/font_sizes/font_size = 25 Button/fonts/font = ExtResource("1_6ccgi") Button/styles/hover = SubResource("StyleBoxFlat_hv6r3") diff --git a/gui/tools/control_animation_player.gd b/gui/tools/control_animation_player.gd index de73241..3ca48fd 100644 --- a/gui/tools/control_animation_player.gd +++ b/gui/tools/control_animation_player.gd @@ -159,6 +159,7 @@ func bounce( direction : Vector2 = Vector2.UP, transition_type: Tween.TransitionType = Tween.TransitionType.TRANS_BOUNCE, ): + setup_default_values() start_anim() await add_tween( "position", diff --git a/project.godot b/project.godot index 56e0ba9..5bf192e 100644 --- a/project.godot +++ b/project.godot @@ -16,7 +16,7 @@ compatibility/default_parent_skeleton_in_mesh_instance_3d=true config/name="Seeding The Wasteland" config/description="Seeding planets is a survival, managment and cosy game in which you play a little gardener robot." -config/version="demo-0.1" +config/version="beta-1" run/main_scene="uid://c5bruelvqbm1k" config/features=PackedStringArray("4.6", "Forward Plus") config/icon="uid://df0y0s666ui4h" @@ -30,27 +30,30 @@ buses/default_bus_layout="uid://b4cpfxfs74sb8" PlantTextureBuilder="*uid://b8gqdgabrjaml" Pointer="*res://gui/pointer/pointer.tscn" AudioManager="*res://common/audio_manager/audio_manager.tscn" -GameInfo="*res://common/game_info/game_info.gd" Pause="*res://gui/pause/pause.tscn" Dialogic="*res://addons/dialogic/Core/DialogicGameHandler.gd" LoadingScreen="*res://gui/loading_screen/loading_screen.tscn" SceneManager="*res://common/scene_manager/scene_manager.tscn" SteamConnection="*uid://bq12bubjof2mo" +GameInfo="*res://common/game_info/game_info.gd" [dialogic] directories/dch_directory={ "demeter": "res://dialogs/characters/demeter.dch", +"developer": "res://dialogs/characters/developer.dch", "mysterious_demeter": "res://dialogs/characters/mysterious_demeter.dch" } directories/dtl_directory={ -"demeter_astra_failed": "res://dialogs/timelines/gameplay_related/demeter_astra_failed.dtl", -"demeter_intro": "res://dialogs/timelines/story/demeter_intro.dtl", -"demeter_introV2": "res://dialogs/timelines/story/demeter_introV2.dtl", -"demeter_midrun": "res://dialogs/timelines/story/demeter_post_tutorial.dtl", -"demeter_outro": "res://dialogs/timelines/story/demeter_outro.dtl", -"demeter_ship_presentation": "res://dialogs/timelines/story/demeter_ship_presentation.dtl", -"wake_up": "res://dialogs/timelines/story/wake_up.dtl" +"mercury_arrival": "res://dialogs/timelines/astra/mercury_arrival.dtl", +"mercury_departure": "res://dialogs/timelines/mercury/mercury_departure.dtl", +"tutorial/demeter_intro": "res://dialogs/timelines/tutorial/demeter_intro.dtl", +"tutorial/demeter_outro": "res://dialogs/timelines/tutorial/demeter_outro.dtl", +"tutorial/demeter_ship_failed": "res://dialogs/timelines/tutorial/demeter_ship_failed.dtl", +"tutorial/demeter_ship_presentation": "res://dialogs/timelines/tutorial/demeter_ship_presentation.dtl", +"tutorial/wake_up": "res://dialogs/timelines/tutorial/wake_up.dtl", +"venus_arrival": "res://dialogs/timelines/mercury/venus_arrival.dtl", +"venus_departure": "res://dialogs/timelines/beta/venus_departure.dtl" } layout/style_directory={ "": "res://dialogs/dialogs_style.tres", @@ -93,7 +96,7 @@ audio/channel_defaults={ } } translation/enabled=true -translation/original_locale="fr" +translation/original_locale="" translation/file_mode=1 translation/translation_folder="res://translation/dialogs" translation/save_mode=0 @@ -107,13 +110,13 @@ variables={ "whoareyou": "false", "whynorth": "false" } -translation/id_counter=108 +translation/id_counter=228 translation/locales=[] +history/visited_event_history_enabled=true +audio/type_sound_bus="Sfx" translation/intern/save_mode=0 translation/intern/file_mode=1 translation/intern/translation_folder="res://translation/dialogs" -history/visited_event_history_enabled=true -audio/type_sound_bus="Sfx" [editor_plugins] @@ -152,7 +155,7 @@ action={ } drop={ "deadzone": 0.2, -"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":88,"key_label":0,"unicode":120,"location":0,"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":81,"key_label":0,"unicode":97,"location":0,"echo":false,"script":null) ] } pause={ @@ -229,11 +232,21 @@ dialogic_default_action={ , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":0,"pressure":0.0,"pressed":false,"script":null) ] } +zoom_in={ +"deadzone": 0.2, +"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":90,"key_label":0,"unicode":119,"location":0,"echo":false,"script":null) +] +} +zoom_out={ +"deadzone": 0.2, +"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":88,"key_label":0,"unicode":120,"location":0,"echo":false,"script":null) +] +} [internationalization] locale/translation_remaps={} -locale/translations=PackedStringArray("res://translation/game/gui.en.translation", "res://translation/game/gui.fr.translation", "res://translation/dialogs/dialogic_character_translations.fr.translation", "res://translation/dialogs/dialogic_demeter_astra_failed_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_introV2_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_intro_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_outro_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_post_tutorial_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_ship_presentation_translation.fr.translation", "res://translation/dialogs/dialogic_wake_up_translation.fr.translation") +locale/translations=PackedStringArray("res://translation/game/gui.en.translation", "res://translation/game/gui.fr.translation", "res://translation/dialogs/dialogic_character_translations.en.translation", "res://translation/dialogs/dialogic_demeter_astra_failed_translation.en.translation", "res://translation/dialogs/dialogic_demeter_intro_translation.en.translation", "res://translation/dialogs/dialogic_demeter_outro_translation.en.translation", "res://translation/dialogs/dialogic_demeter_post_tutorial_translation.en.translation", "res://translation/dialogs/dialogic_demeter_ship_presentation_translation.en.translation", "res://translation/dialogs/dialogic_wake_up_translation.en.translation", "res://translation/dialogs/dialogic_wake_up_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_intro_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_ship_presentation_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_post_tutorial_translation.fr.translation", "res://translation/dialogs/dialogic_character_translations.fr.translation", "res://translation/dialogs/dialogic_demeter_astra_failed_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_outro_translation.fr.translation", "res://translation/dialogs/dialogic_demeter_ship_failed_translation.en.translation", "res://translation/dialogs/dialogic_demeter_ship_failed_translation.fr.translation", "res://translation/dialogs/dialogic_mercury_arrival_translation.en.translation", "res://translation/dialogs/dialogic_mercury_arrival_translation.fr.translation", "res://translation/dialogs/dialogic_mercury_departure_translation.en.translation", "res://translation/dialogs/dialogic_mercury_departure_translation.fr.translation", "res://translation/dialogs/dialogic_venus_arrival_translation.en.translation", "res://translation/dialogs/dialogic_venus_arrival_translation.fr.translation", "res://translation/dialogs/dialogic_venus_departure_translation.en.translation", "res://translation/dialogs/dialogic_venus_departure_translation.fr.translation") locale/test="fr" [rendering] diff --git a/root.gd b/root.gd index dda94db..91cc92e 100644 --- a/root.gd +++ b/root.gd @@ -1,4 +1,4 @@ extends Node func _ready(): - SceneManager.change_to_scene_id("TITLE", false) \ No newline at end of file + SceneManager.change_to_scene(TitleScene.new(), false) \ No newline at end of file diff --git a/stages/3d_scenes/astra_base/assets/3d/astra_base_incubator.blend b/stages/3d_scenes/astra_base/assets/3d/astra_base_incubator.blend index 10fdbc6..20c5f9c 100644 Binary files a/stages/3d_scenes/astra_base/assets/3d/astra_base_incubator.blend and b/stages/3d_scenes/astra_base/assets/3d/astra_base_incubator.blend differ diff --git a/stages/3d_scenes/astra_base/assets/3d/astra_base_incubator.blend1 b/stages/3d_scenes/astra_base/assets/3d/astra_base_incubator.blend1 index 4770281..228c7ff 100644 Binary files a/stages/3d_scenes/astra_base/assets/3d/astra_base_incubator.blend1 and b/stages/3d_scenes/astra_base/assets/3d/astra_base_incubator.blend1 differ diff --git a/stages/3d_scenes/astra_base/astra_base.tscn b/stages/3d_scenes/astra_base/astra_base.tscn index a8960dd..153b44c 100644 --- a/stages/3d_scenes/astra_base/astra_base.tscn +++ b/stages/3d_scenes/astra_base/astra_base.tscn @@ -5,6 +5,7 @@ [ext_resource type="Shader" uid="uid://bv2rghn44mrrf" path="res://stages/title_screen/resources/shaders/stars.gdshader" id="4_kdvug"] [ext_resource type="PackedScene" uid="uid://csx7d5khjd6y5" path="res://entities/interactable_3d/phone/phone.tscn" id="4_mwti2"] [ext_resource type="PackedScene" uid="uid://ch8m1rohg5d33" path="res://entities/interactable_3d/lift/lift.tscn" id="5_lhhy6"] +[ext_resource type="Material" uid="uid://cr7bp4fhh1ipr" path="res://entities/player_3d/resources/materials/post_process_quad.tres" id="6_mwti2"] [sub_resource type="Animation" id="Animation_mwti2"] length = 0.001 @@ -73,8 +74,6 @@ shader_parameter/sky_color = Color(0.03, 0.05, 0.11, 1) shader_parameter/star_base_color = Color(0.8, 1, 0.3, 1) shader_parameter/star_hue_offset = 0.6 shader_parameter/star_intensity = 0.08 -shader_parameter/star_twinkle_speed = 0.8 -shader_parameter/star_twinkle_intensity = 0.2 shader_parameter/layer_scale = 20.0 shader_parameter/layer_scale_step = 10.0 shader_parameter/layers_count = 3 @@ -151,6 +150,70 @@ _data = { [sub_resource type="SphereShape3D" id="SphereShape3D_kdvug"] radius = 0.68145716 +[sub_resource type="QuadMesh" id="QuadMesh_lhhy6"] +size = Vector2(2, 2) + +[sub_resource type="Animation" id="Animation_lkqnn"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(69.029, 1.7, 0)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath(".:rotation") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 1.5707964, 0)] +} + +[sub_resource type="Animation" id="Animation_v4tdl"] +resource_name = "trailer" +length = 20.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 16.931593, 20), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector3(69.029, 1.7, 0), Vector3(4.109844, 1.7, 0), Vector3(2.812063, 0.88852286, -0.3574915)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath(".:rotation") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0, 16.931593, 20), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector3(0, 1.5707964, 0), Vector3(0, 1.5707964, 0), Vector3(0.2008525, 0.8556826, 8.899538e-09)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_lkqnn"] +_data = { +&"RESET": SubResource("Animation_lkqnn"), +&"trailer": SubResource("Animation_v4tdl") +} + [node name="AstraBase" type="Node3D" unique_id=1360388667] script = ExtResource("1_kdvug") room_part_number = 6 @@ -192,3 +255,18 @@ unique_name_in_owner = true [node name="CollisionShape3D" type="CollisionShape3D" parent="Lift/LiftPlayerDetector" unique_id=1762811832] shape = SubResource("SphereShape3D_kdvug") + +[node name="TrailerCamera" type="Camera3D" parent="." unique_id=1809922038] +unique_name_in_owner = true +transform = Transform3D(-4.371139e-08, 0, 1, 0, 0.99999994, 0, -1, 0, -4.371139e-08, 69.029, 1.7, 0) +visible = false +near = 0.003 + +[node name="MeshInstance3D" type="MeshInstance3D" parent="TrailerCamera" unique_id=1544880636] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.263265e-08, 0, -0.7177747) +mesh = SubResource("QuadMesh_lhhy6") +surface_material_override/0 = ExtResource("6_mwti2") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="TrailerCamera" unique_id=2053901299] +libraries/ = SubResource("AnimationLibrary_lkqnn") +autoplay = &"trailer" diff --git a/stages/3d_scenes/astra_base/room_part.tscn b/stages/3d_scenes/astra_base/room_part.tscn index 2fc3f64..4c51e7e 100644 --- a/stages/3d_scenes/astra_base/room_part.tscn +++ b/stages/3d_scenes/astra_base/room_part.tscn @@ -11,6 +11,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4381348, 0.49131417, 7.327 light_color = Color(1, 0.64, 0.45999998, 1) light_energy = 16.81 shadow_enabled = true +shadow_blur = 6.38 omni_range = 14.26521 [node name="OmniLight3D2" type="OmniLight3D" parent="." unique_id=1660135249] @@ -18,4 +19,5 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.4381348, 0.49131417, -6.88 light_color = Color(1, 0.64, 0.45999998, 1) light_energy = 16.81 shadow_enabled = true +shadow_blur = 6.38 omni_range = 14.26521 diff --git a/stages/3d_scenes/astra_base/scripts/astra_base.gd b/stages/3d_scenes/astra_base/scripts/astra_base.gd index 315bbb1..f77a6e6 100644 --- a/stages/3d_scenes/astra_base/scripts/astra_base.gd +++ b/stages/3d_scenes/astra_base/scripts/astra_base.gd @@ -1,9 +1,6 @@ @tool extends Node3D -const INTRO_DIALOG = "res://dialogs/timelines/story/demeter_intro.dtl" -const FAILED_DIALOG = "res://dialogs/timelines/gameplay_related/demeter_astra_failed.dtl" - const ROOM_PART_SCENE := preload("res://stages/3d_scenes/astra_base/room_part.tscn") const ROOM_END_SCENE := preload("res://stages/3d_scenes/astra_base/assets/3d/astra_base_room_end.blend") const INCUBATOR_SCENE := preload("res://stages/3d_scenes/astra_base/incubator.tscn") @@ -26,7 +23,6 @@ func _input(_e): and Input.is_action_pressed("move_left") and Input.is_action_just_pressed("action") ): - GameInfo.game_data.dialogs_done.append(INTRO_DIALOG) finish_scene() # Called when the node enters the scene tree for the first time. @@ -53,26 +49,29 @@ func _ready(): func story(): AudioManager.play_sfx("Respawn") - if not INTRO_DIALOG in GameInfo.game_data.dialogs_done: + + if ( + GameInfo.game_data.progression_data.story_step is TutorialStoryStep + and not TutorialStoryStep.INTRO_DIALOG in GameInfo.game_data.dialogs_done + ): await get_tree().create_timer(TIME_WITHOUT_PHONE).timeout %Phone.play_audio() await %Phone.clicked %Phone.stop_audio() %Phone.interactable = false - Dialogic.start(INTRO_DIALOG) + Dialogic.start(TutorialStoryStep.INTRO_DIALOG) await Dialogic.timeline_ended else: - %Phone.clicked.connect( - func (): - Dialogic.start(FAILED_DIALOG) - %Phone.interactable = false - ) + %Phone.visible = false + %Phone.position.y += 1000 %LiftAnimationPlayer.play("arrive") AudioManager.play_sfx("Elevator") await %Lift.clicked + %Player3D.controlling_player = false %LiftAnimationPlayer.play_backwards("arrive") + AudioManager.play_sfx("Elevator") await get_tree().create_timer(LIFT_TIME).timeout @@ -82,12 +81,11 @@ func story(): func finish_scene(): GameInfo.game_data.start_run() - if GameInfo.game_data.tutorial_done: - GameInfo.game_data.ship_in_space = false - SceneManager.change_to_scene_id('COCKPIT') + if GameInfo.game_data.progression_data.story_step is TutorialStoryStep: + GameInfo.game_data.current_run.choose_next_run_point() + SceneManager.change_to_scene(RegionScene.new(GameInfo.game_data.current_region_data)) else: - GameInfo.game_data.start_tutorial() - SceneManager.change_to_scene_id('REGION') + SceneManager.change_to_scene(CockpitScene.new()) func set_room_part_number(_room_part_number : int = room_part_number): diff --git a/stages/3d_scenes/borea_base/borea_base.tscn b/stages/3d_scenes/borea_base/borea_base.tscn index 0e9a198..9886386 100644 --- a/stages/3d_scenes/borea_base/borea_base.tscn +++ b/stages/3d_scenes/borea_base/borea_base.tscn @@ -6,6 +6,7 @@ [ext_resource type="PackedScene" uid="uid://csx7d5khjd6y5" path="res://entities/interactable_3d/phone/phone.tscn" id="4_fevne"] [ext_resource type="PackedScene" uid="uid://bqo4uknlbm8r1" path="res://stages/3d_scenes/borea_base/assets/3d/borea_base.blend" id="4_s7tqr"] [ext_resource type="PackedScene" uid="uid://c5a32n6rjjlnt" path="res://gui/credits/credits.tscn" id="6_c8vcx"] +[ext_resource type="Material" uid="uid://cr7bp4fhh1ipr" path="res://entities/player_3d/resources/materials/post_process_quad.tres" id="7_s7tqr"] [sub_resource type="Animation" id="Animation_xd71i"] length = 0.001 @@ -147,8 +148,6 @@ shader_parameter/sky_color = Color(0.03, 0.05, 0.11, 1) shader_parameter/star_base_color = Color(0.8, 1, 0.3, 1) shader_parameter/star_hue_offset = 0.6 shader_parameter/star_intensity = 0.08 -shader_parameter/star_twinkle_speed = 0.8 -shader_parameter/star_twinkle_intensity = 0.2 shader_parameter/layer_scale = 20.0 shader_parameter/layer_scale_step = 10.0 shader_parameter/layers_count = 3 @@ -187,6 +186,46 @@ adjustment_saturation = 1.3 [sub_resource type="BoxShape3D" id="BoxShape3D_c8vcx"] size = Vector3(0.001, 7.6933594, 7.697876) +[sub_resource type="Animation" id="Animation_s7tqr"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("TrailerCamera:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 60.366375, 0)] +} + +[sub_resource type="Animation" id="Animation_2ei4e"] +resource_name = "trailer" +length = 10.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("TrailerCamera:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 9.933333), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector3(0, 60.366375, 0), Vector3(0, 10, 0)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_hlox4"] +_data = { +&"RESET": SubResource("Animation_s7tqr"), +&"trailer": SubResource("Animation_2ei4e") +} + +[sub_resource type="QuadMesh" id="QuadMesh_2ei4e"] +size = Vector2(2, 2) + [node name="BoreaBase" type="Node3D" unique_id=442220603] script = ExtResource("1_fevne") @@ -933,6 +972,20 @@ transform = Transform3D(-0.93482566, 0, 0.35510686, 0, 1, 0, -0.35510686, 0, -0. [node name="Credits" parent="." unique_id=180964898 instance=ExtResource("6_c8vcx")] unique_name_in_owner = true -visible = false + +[node name="TrailerCamera" type="Camera3D" parent="." unique_id=649852434] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, -4.3711392e-08, 1, 0, -1, -4.3711392e-08, 0, 60.366375, 0) +near = 0.003 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="TrailerCamera" unique_id=1238675722] +root_node = NodePath("../..") +libraries/ = SubResource("AnimationLibrary_hlox4") +autoplay = &"trailer" + +[node name="MeshInstance3D" type="MeshInstance3D" parent="TrailerCamera" unique_id=1018268636] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.263265e-08, 0, -0.7177747) +mesh = SubResource("QuadMesh_2ei4e") +surface_material_override/0 = ExtResource("7_s7tqr") [connection signal="body_entered" from="AmbianceChangeDetector" to="." method="_on_ambiance_change_detector_body_entered"] diff --git a/stages/3d_scenes/borea_base/scripts/borea_base.gd b/stages/3d_scenes/borea_base/scripts/borea_base.gd index b8acc71..a16cfb2 100644 --- a/stages/3d_scenes/borea_base/scripts/borea_base.gd +++ b/stages/3d_scenes/borea_base/scripts/borea_base.gd @@ -1,6 +1,6 @@ extends Node3D -const OUTRO_TIMELINE_PATH = "res://dialogs/timelines/story/demeter_outro.dtl" +const OUTRO_TIMELINE_PATH = "res://dialogs/timelines/tutorial/demeter_outro.dtl" # Called when the node enters the scene tree for the first time. func _ready(): diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend b/stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend index 5c250b3..28b56b9 100644 Binary files a/stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend and b/stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend differ diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend1 b/stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend1 index be4b6a4..5c250b3 100644 Binary files a/stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend1 and b/stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend1 differ diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend new file mode 100644 index 0000000..d9e289c Binary files /dev/null and b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend differ diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend.import b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend.import new file mode 100644 index 0000000..88b3012 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://i28ngc4hgq85" +path="res://.godot/imported/screen.blend-f05722182a95a41f2104aab7afc27fbd.scn" + +[deps] + +source_file="res://stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend" +dest_files=["res://.godot/imported/screen.blend-f05722182a95a41f2104aab7afc27fbd.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend1 b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend1 new file mode 100644 index 0000000..d3a767f Binary files /dev/null and b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend1 differ diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend index eb1ad48..667255e 100644 Binary files a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend and b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend differ diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend1 b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend1 index 5e3d68b..72e5368 100644 Binary files a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend1 and b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend1 differ diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend new file mode 100644 index 0000000..3f044aa Binary files /dev/null and b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend differ diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend.import b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend.import new file mode 100644 index 0000000..8df47dc --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://b4wdov3y1ulyb" +path="res://.godot/imported/shelf.blend-71d6b6a0b2e3a015b18c034dd3a9475a.scn" + +[deps] + +source_file="res://stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend" +dest_files=["res://.godot/imported/shelf.blend-71d6b6a0b2e3a015b18c034dd3a9475a.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend1 b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend1 new file mode 100644 index 0000000..18d9ca4 Binary files /dev/null and b/stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend1 differ diff --git a/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 112838.png b/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 112838.png new file mode 100644 index 0000000..0a6198b Binary files /dev/null and b/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 112838.png differ diff --git a/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 112838.png.import b/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 112838.png.import new file mode 100644 index 0000000..4ac6faf --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 112838.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://7lw40nfj4lhl" +path="res://.godot/imported/Capture d'écran 2026-04-17 112838.png-64ef83d52ce9df1c5c41e85939ab8a4a.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 112838.png" +dest_files=["res://.godot/imported/Capture d'écran 2026-04-17 112838.png-64ef83d52ce9df1c5c41e85939ab8a4a.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 113002.png b/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 113002.png new file mode 100644 index 0000000..0529192 Binary files /dev/null and b/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 113002.png differ diff --git a/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 113002.png.import b/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 113002.png.import new file mode 100644 index 0000000..d12279f --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 113002.png.import @@ -0,0 +1,40 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://d17ru4hw8okj1" +path="res://.godot/imported/Capture d'écran 2026-04-17 113002.png-0eb5866e63755f5d73921a67745288a0.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 113002.png" +dest_files=["res://.godot/imported/Capture d'écran 2026-04-17 113002.png-0eb5866e63755f5d73921a67745288a0.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/uastc_level=0 +compress/rdo_quality_loss=0.0 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/channel_remap/red=0 +process/channel_remap/green=1 +process/channel_remap/blue=2 +process/channel_remap/alpha=3 +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/stages/3d_scenes/cockpit_scene/cockpit.tscn b/stages/3d_scenes/cockpit_scene/cockpit.tscn index bb120fb..2b3af15 100644 --- a/stages/3d_scenes/cockpit_scene/cockpit.tscn +++ b/stages/3d_scenes/cockpit_scene/cockpit.tscn @@ -7,8 +7,15 @@ [ext_resource type="PackedScene" uid="uid://by45bbbnf0k13" path="res://gui/game/objective_progress_bar/gauge_3d.tscn" id="4_ers7b"] [ext_resource type="PackedScene" uid="uid://d01cp8xl0rme4" path="res://gui/game/energy_info/energy_info_3d.tscn" id="6_ogqwl"] [ext_resource type="PackedScene" uid="uid://jjkw4edrewsk" path="res://stages/3d_scenes/cockpit_scene/assets/3d/furnitures/closet.blend" id="7_lnpag"] -[ext_resource type="PackedScene" uid="uid://cv0ehgy3d1kmj" path="res://stages/3d_scenes/cockpit_scene/dashboard.tscn" id="8_seqvk"] +[ext_resource type="PackedScene" uid="uid://cv0ehgy3d1kmj" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/dashboard.tscn" id="8_seqvk"] +[ext_resource type="PackedScene" uid="uid://cgw2ct7smispo" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/shelf.tscn" id="11_w4l7d"] +[ext_resource type="PackedScene" uid="uid://dd6k80rhux1do" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/plant_info_screen.tscn" id="12_pxmsf"] [ext_resource type="PackedScene" uid="uid://da7a74dg30q1l" path="res://entities/player_3d/player_3D.tscn" id="13_a2cx2"] +[ext_resource type="PackedScene" uid="uid://cd8j7v7qtybi8" path="res://stages/3d_scenes/cockpit_scene/ship_tutorial.tscn" id="13_u7lr8"] +[ext_resource type="Material" uid="uid://cr7bp4fhh1ipr" path="res://entities/player_3d/resources/materials/post_process_quad.tres" id="14_d1blr"] +[ext_resource type="PackedScene" uid="uid://ci4x1q326lvyy" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_screen.tscn" id="15_q4ojn"] +[ext_resource type="PackedScene" uid="uid://u3o5g8lmck74" path="res://entities/interactable_3d/orchid_saver/orchid_saver.tscn" id="16_nfjul"] +[ext_resource type="Texture2D" uid="uid://d3k7rl7nbp7yx" path="res://common/icons/device-floppy.svg" id="17_ggekp"] [ext_resource type="PackedScene" uid="uid://blvetnnib2ks0" path="res://stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend" id="17_omtjc"] [sub_resource type="Animation" id="Animation_pxmsf"] @@ -51,6 +58,46 @@ _data = { [sub_resource type="BoxShape3D" id="BoxShape3D_ctvhk"] size = Vector3(2.6689148, 0.79260254, 2.7016602) +[sub_resource type="QuadMesh" id="QuadMesh_q4ojn"] +size = Vector2(2, 2) + +[sub_resource type="Animation" id="Animation_nfjul"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 0.1437025, 0.048336506)] +} + +[sub_resource type="Animation" id="Animation_ggekp"] +resource_name = "trailer" +length = 5.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 5), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector3(0, 0.1437025, 0.048336506), Vector3(0, 0.1437025, 4.861152)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_wrlf0"] +_data = { +&"RESET": SubResource("Animation_nfjul"), +&"trailer": SubResource("Animation_ggekp") +} + [node name="Ship" type="Node3D" unique_id=1963368148] script = ExtResource("1_koamw") @@ -73,23 +120,25 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.04597473, -0.10369873, 0.3 shape = SubResource("BoxShape3D_ctvhk") [node name="Player3D" parent="." unique_id=549819967 instance=ExtResource("13_a2cx2")] +unique_name_in_owner = true transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0, 0, 3.2830403) [node name="CockpitModel" parent="." unique_id=825141342 instance=ExtResource("17_omtjc")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.04904175e-05, 0.0026242882, 4.4822693e-05) [node name="Phone" parent="." unique_id=429299908 instance=ExtResource("3_3b5pk")] unique_name_in_owner = true -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -0.0237993, -0.38395548, -4.662711) +transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 1.4133042, -0.68386626, 1.709522) interactable = false [node name="Gauge3D" parent="." unique_id=232507348 instance=ExtResource("4_ers7b")] unique_name_in_owner = true -transform = Transform3D(-0.06800815, 0.07331366, -3.2046419e-09, 0, -4.371139e-09, -0.1, -0.07331366, -0.06800815, 2.9727303e-09, 1.1649051, -0.56147563, 4.99477) -progress = 1.78 +transform = Transform3D(-0.070710674, 0.07071066, -4.864633e-09, 8.7422745e-09, 2.199196e-30, -0.09999998, -0.070710674, -0.07071066, -7.4988105e-09, 0.9122916, -0.51005816, 5.5039926) +progress = 1.085 [node name="EnergyInfo3d" parent="." unique_id=1798644168 instance=ExtResource("6_ogqwl")] unique_name_in_owner = true -transform = Transform3D(0.23, 0, 0, 0, 0.23, 0, 0, 0, 0.23, -1.2966455, -0.51924133, 4.2738743) +transform = Transform3D(0.23, 0, 0, 0, 0.23, 0, 0, 0, 0.23, -1.2449384, -0.8972735, 5.2538967) max_energy = 3 [node name="Furnitures" type="Node3D" parent="." unique_id=1095424400] @@ -103,3 +152,38 @@ transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 1.13 [node name="Dashboard" parent="." unique_id=1374334508 instance=ExtResource("8_seqvk")] unique_name_in_owner = true transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.035136223, -0.7094687, 6.45286) + +[node name="Shelf" parent="." unique_id=1769159984 instance=ExtResource("11_w4l7d")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.1218804, -1.0799314, 2.6211417) + +[node name="PlantInfoScreen" parent="." unique_id=1881622243 instance=ExtResource("12_pxmsf")] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.239, 0, 4.02) + +[node name="MutationDiscoveryScreen" parent="." unique_id=1948337200 instance=ExtResource("15_q4ojn")] +transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, 1.1896521, 0.015508115, 3.982) + +[node name="ShipTutorial" parent="." unique_id=868547496 instance=ExtResource("13_u7lr8")] +unique_name_in_owner = true + +[node name="TrailerCamera" type="Camera3D" parent="." unique_id=297848285] +unique_name_in_owner = true +transform = Transform3D(-1, -2.2626683e-08, -8.444392e-08, 0, 0.9659259, -0.25881907, 8.742278e-08, -0.25881907, -0.9659258, 0, 0.1437025, 0.048336506) +near = 0.003 + +[node name="MeshInstance3D" type="MeshInstance3D" parent="TrailerCamera" unique_id=2142282697] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.263265e-08, 0, -0.7177747) +mesh = SubResource("QuadMesh_q4ojn") +surface_material_override/0 = ExtResource("14_d1blr") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="TrailerCamera" unique_id=675835561] +libraries/ = SubResource("AnimationLibrary_wrlf0") +autoplay = &"trailer" + +[node name="OrchidSaver" parent="." unique_id=381308711 instance=ExtResource("16_nfjul")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0.024999544, -1.3700237, -3.9526832) +screen_icon = ExtResource("17_ggekp") +screen_text = "SAVE_ORCHID_MEMORY_AND_RESPAWN" + +[connection signal="clicked" from="Phone" to="." method="_on_phone_clicked"] +[connection signal="clicked" from="OrchidSaver" to="." method="_on_orchid_saver_clicked"] diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/artefact_diplayer.tscn b/stages/3d_scenes/cockpit_scene/cockpit_elements/artefact_diplayer.tscn new file mode 100644 index 0000000..e44733d --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/artefact_diplayer.tscn @@ -0,0 +1,19 @@ +[gd_scene format=3 uid="uid://xsgcpgsxmboy"] + +[ext_resource type="Script" uid="uid://bejxdxbdddqgx" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/artefact_diplayer.gd" id="1_mb4w6"] + +[sub_resource type="SphereShape3D" id="SphereShape3D_uy2vb"] +radius = 0.17572357 + +[node name="ArtefactDiplayer" type="Area3D" unique_id=676305823] +script = ExtResource("1_mb4w6") +interactable = false +inspectable = true +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="CollisionShape3D" type="CollisionShape3D" parent="." unique_id=494100172] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.02765441, 0) +shape = SubResource("SphereShape3D_uy2vb") + +[node name="Model" type="Node3D" parent="." unique_id=1722072978] +unique_name_in_owner = true diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/dashboard.tscn b/stages/3d_scenes/cockpit_scene/cockpit_elements/dashboard.tscn new file mode 100644 index 0000000..71950da --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/dashboard.tscn @@ -0,0 +1,415 @@ +[gd_scene format=3 uid="uid://cv0ehgy3d1kmj"] + +[ext_resource type="Script" uid="uid://fet6urfgiiwr" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard.gd" id="1_vks67"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="3_g7q16"] +[ext_resource type="PackedScene" uid="uid://cs5gir1u8jbrg" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/holo_content.tscn" id="3_go2gd"] +[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="4_7u0n5"] +[ext_resource type="Script" uid="uid://biqgucg78cx44" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_main_screen.gd" id="4_vks67"] +[ext_resource type="Script" uid="uid://ccb06rayqowp3" path="res://stages/terrain/region/scripts/modifiers/region_modifier.gd" id="5_7u0n5"] +[ext_resource type="Texture2D" uid="uid://l2xplg72hs6j" path="res://common/icons/map-pin.svg" id="5_vks67"] +[ext_resource type="PackedScene" uid="uid://bnvqwsxgrd14y" path="res://stages/3d_scenes/cockpit_scene/assets/3d/dashboard.blend" id="6_emtfq"] +[ext_resource type="Script" uid="uid://ddk7j5b8p51dk" path="res://stages/terrain/region/scripts/region_parameter.gd" id="6_g7q16"] +[ext_resource type="Script" uid="uid://b4eimt3v08jhc" path="res://common/game_data/scripts/run/run_point.gd" id="7_emtfq"] +[ext_resource type="Script" uid="uid://vf8nm8ch1p8s" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_run_point_screen.gd" id="7_lskho"] +[ext_resource type="PackedScene" uid="uid://cdvegfgvp7053" path="res://stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend" id="8_psxhb"] +[ext_resource type="Texture2D" uid="uid://bsgmxvuphn73c" path="res://common/icons/arrow-narrow-down.svg" id="9_v1m0r"] +[ext_resource type="PackedScene" uid="uid://crbjmwumboelw" path="res://gui/game/inventory_gui/inventory_3d.tscn" id="10_y1ysr"] +[ext_resource type="Script" uid="uid://bq7admu4ahs5r" path="res://entities/player/inventory/scripts/item.gd" id="11_3cel1"] +[ext_resource type="Script" uid="uid://fnu2d6wna4yc" path="res://entities/player/inventory/scripts/inventory.gd" id="12_oix5e"] + +[sub_resource type="ViewportTexture" id="ViewportTexture_cvt2p"] +viewport_path = NodePath("Holo/SubViewport") + +[sub_resource type="ViewportTexture" id="ViewportTexture_5d7hc"] +viewport_path = NodePath("StatusScreen/SubViewport") + +[sub_resource type="LabelSettings" id="LabelSettings_emtfq"] +font = ExtResource("3_g7q16") +font_size = 24 + +[sub_resource type="Resource" id="Resource_lskho"] +script = ExtResource("6_g7q16") +region_name = "Ynynidqdzqdqdqz" +region_seed = 4016897874 + +[sub_resource type="Resource" id="Resource_psxhb"] +script = ExtResource("7_emtfq") +region_parameter = SubResource("Resource_lskho") +position = 0.7809387750389029 +metadata/_custom_type_script = "uid://b4eimt3v08jhc" + +[sub_resource type="SphereShape3D" id="SphereShape3D_vlkbw"] + +[sub_resource type="ViewportTexture" id="ViewportTexture_qbi61"] +viewport_path = NodePath("MainScreen/MainScreenSprite/SubViewport") + +[sub_resource type="Animation" id="Animation_vlkbw"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("MainScreenSprite:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(1, 1, 1)] +} + +[sub_resource type="Animation" id="Animation_qbi61"] +resource_name = "hover" +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("MainScreenSprite:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.5, 1), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector3(1, 1, 1), Vector3(1.2, 1.2, 1.2), Vector3(1, 1, 1)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_2ofl5"] +_data = { +&"RESET": SubResource("Animation_vlkbw"), +&"hover": SubResource("Animation_qbi61") +} + +[sub_resource type="ViewportTexture" id="ViewportTexture_2ofl5"] +viewport_path = NodePath("RightScreen/RightScreenAction/SubViewport") + +[sub_resource type="LabelSettings" id="LabelSettings_lskho"] +font = ExtResource("3_g7q16") +font_size = 24 + +[sub_resource type="SphereShape3D" id="SphereShape3D_2q8cl"] +radius = 0.34611636 + +[sub_resource type="Animation" id="Animation_stoj6"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("%RightScreenAction:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(1, 1.0000002, 1)] +} + +[sub_resource type="Animation" id="Animation_5d7hc"] +resource_name = "hover" +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("%RightScreenAction:scale") +tracks/0/interp = 2 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.5, 1), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector3(1, 1.0000002, 1), Vector3(1.2, 1.2, 1.2), Vector3(1, 1.0000002, 1)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_h8fs1"] +_data = { +&"RESET": SubResource("Animation_stoj6"), +&"hover": SubResource("Animation_5d7hc") +} + +[sub_resource type="ViewportTexture" id="ViewportTexture_vks67"] +viewport_path = NodePath("LeftScreen/LeftScreenAction/SubViewport") + +[sub_resource type="LabelSettings" id="LabelSettings_g7q16"] +font = ExtResource("3_g7q16") +font_size = 24 + +[sub_resource type="Animation" id="Animation_2kujw"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("LeftScreenAction:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(1, 1.0000002, 1)] +} + +[sub_resource type="Animation" id="Animation_2q8cl"] +resource_name = "hover" +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("LeftScreenAction:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0.033333335, 0.53333336, 1), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector3(1, 1.0000002, 1), Vector3(1.2, 1.2, 1.2), Vector3(1, 1.0000002, 1)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_cvt2p"] +_data = { +&"RESET": SubResource("Animation_2kujw"), +&"hover": SubResource("Animation_2q8cl") +} + +[sub_resource type="Resource" id="Resource_ne0dp"] +script = ExtResource("12_oix5e") +seeds = Array[ExtResource("11_3cel1")]([null]) +seeds_size = 1 +metadata/_custom_type_script = "uid://fnu2d6wna4yc" + +[node name="Dashboard" type="Node3D" unique_id=1374334508] +script = ExtResource("1_vks67") +destination_title = "TO_BOREA_BASE" + +[node name="Holo" type="Sprite3D" parent="." unique_id=1067303692] +unique_name_in_owner = true +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1.0000002, 0, 8.742278e-08, 0, -1, 0, 0.91157264, 0.33655214) +pixel_size = 0.004 +texture = SubResource("ViewportTexture_cvt2p") + +[node name="SubViewport" type="SubViewport" parent="Holo" unique_id=471832787] +disable_3d = true +transparent_bg = true +size = Vector2i(365, 68) + +[node name="HoloContent" parent="Holo/SubViewport" unique_id=668915500 instance=ExtResource("3_go2gd")] +unique_name_in_owner = true +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -162.0 +offset_top = -28.0 +offset_right = 162.0 +offset_bottom = 28.0 +grow_horizontal = 2 +grow_vertical = 2 +stop_name = "" + +[node name="StatusScreen" type="Sprite3D" parent="." unique_id=1257606535] +unique_name_in_owner = true +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1.0000002, 0, 8.742278e-08, 0, -1, 0, 1.1344478, 0.35432142) +modulate = Color(1, 0, 0.43137255, 1) +pixel_size = 0.003 +texture = SubResource("ViewportTexture_5d7hc") + +[node name="SubViewport" type="SubViewport" parent="StatusScreen" unique_id=1357189828] +disable_3d = true +transparent_bg = true +size = Vector2i(599, 48) + +[node name="VBoxContainer" type="VBoxContainer" parent="StatusScreen/SubViewport" unique_id=2076282975] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +theme_override_constants/separation = -10 +alignment = 1 + +[node name="StatusLabel" type="Label" parent="StatusScreen/SubViewport/VBoxContainer" unique_id=86551380] +unique_name_in_owner = true +layout_mode = 2 +text = "Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla Bla " +label_settings = SubResource("LabelSettings_emtfq") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="MainScreen" type="Area3D" parent="." unique_id=874806978 node_paths=PackedStringArray("icon", "label", "hover_animation_player")] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.42284742, 0.4816055) +script = ExtResource("4_vks67") +icon = NodePath("MainScreenSprite/SubViewport/VBoxContainer/MainScreenIcon") +label = NodePath("MainScreenSprite/SubViewport/VBoxContainer/MainScreenLabel") +run_point = SubResource("Resource_psxhb") +interactable = false +inspectable = true +hover_animation_player = NodePath("HoverAnimationPlayer") +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="CollisionShape3D" type="CollisionShape3D" parent="MainScreen" unique_id=1935076244] +shape = SubResource("SphereShape3D_vlkbw") + +[node name="MainScreenSprite" type="Sprite3D" parent="MainScreen" unique_id=1081515212] +transform = Transform3D(-1, 8.0014914e-08, 5.4146472e-08, 7.923836e-08, 0.35859588, 0.9334929, 5.5276644e-08, 0.9334929, -0.35859588, 0, 0, 0) +pixel_size = 0.003 +texture = SubResource("ViewportTexture_qbi61") + +[node name="SubViewport" type="SubViewport" parent="MainScreen/MainScreenSprite" unique_id=1101534363] +transparent_bg = true +size = Vector2i(217, 178) + +[node name="VBoxContainer" type="VBoxContainer" parent="MainScreen/MainScreenSprite/SubViewport" unique_id=758261583] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +theme_override_constants/separation = -10 +alignment = 1 + +[node name="MainScreenIcon" type="TextureRect" parent="MainScreen/MainScreenSprite/SubViewport/VBoxContainer" unique_id=1128176178] +unique_name_in_owner = true +custom_minimum_size = Vector2(100, 100) +layout_mode = 2 +texture = ExtResource("5_vks67") +expand_mode = 3 +stretch_mode = 5 + +[node name="MainScreenLabel" type="Label" parent="MainScreen/MainScreenSprite/SubViewport/VBoxContainer" unique_id=2102392578] +unique_name_in_owner = true +layout_mode = 2 +text = "Ynynizdq qd qdq qzdqdzq" +label_settings = ExtResource("4_7u0n5") +horizontal_alignment = 1 +vertical_alignment = 1 +autowrap_mode = 3 + +[node name="HoverAnimationPlayer" type="AnimationPlayer" parent="MainScreen" unique_id=74243401] +libraries/ = SubResource("AnimationLibrary_2ofl5") + +[node name="DashboardModel" parent="." unique_id=635273073 instance=ExtResource("6_emtfq")] + +[node name="RightScreen" type="Area3D" parent="." unique_id=748959616 node_paths=PackedStringArray("action_icon", "action_label", "hover_animation_player")] +unique_name_in_owner = true +transform = Transform3D(0.6401096, -0.4515857, -0.6215544, 0, 0.809017, -0.58778524, 0.76828337, 0.37624705, 0.51785964, -0.65, 0.5, 0.2) +script = ExtResource("7_lskho") +action_icon = NodePath("RightScreenAction/SubViewport/VBoxContainer/RightScreenActionIcon") +action_label = NodePath("RightScreenAction/SubViewport/VBoxContainer/RightScreenActionLabel") +inspectable = true +hover_animation_player = NodePath("RightScreenHoverAnimationPlayer") +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="RightScreenModel" parent="RightScreen" unique_id=2091343612 instance=ExtResource("8_psxhb")] +transform = Transform3D(-1, -2.9802322e-08, -2.9802322e-08, 0, 1, 0, -2.9802322e-08, 1.4901161e-08, 1, 0, -0.07, 0.05) + +[node name="RightScreenAction" type="Sprite3D" parent="RightScreen" unique_id=1289027629] +unique_name_in_owner = true +transform = Transform3D(-1, 2.9802298e-08, 1.509958e-07, 2.9802322e-08, 1.0000002, 2.0861621e-07, -1.509958e-07, 2.0861626e-07, -1, -0.01, -0.04, -0.015) +pixel_size = 0.0015 +texture = SubResource("ViewportTexture_2ofl5") + +[node name="SubViewport" type="SubViewport" parent="RightScreen/RightScreenAction" unique_id=837587699] +transparent_bg = true +size = Vector2i(150, 180) + +[node name="VBoxContainer" type="VBoxContainer" parent="RightScreen/RightScreenAction/SubViewport" unique_id=536772063] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +theme_override_constants/separation = -10 +alignment = 1 + +[node name="RightScreenActionIcon" type="TextureRect" parent="RightScreen/RightScreenAction/SubViewport/VBoxContainer" unique_id=788824067] +unique_name_in_owner = true +custom_minimum_size = Vector2(100, 100) +layout_mode = 2 +texture = ExtResource("9_v1m0r") +expand_mode = 3 +stretch_mode = 5 + +[node name="RightScreenActionLabel" type="Label" parent="RightScreen/RightScreenAction/SubViewport/VBoxContainer" unique_id=2019588267] +unique_name_in_owner = true +layout_mode = 2 +text = "Uwoqos Uwoqos " +label_settings = SubResource("LabelSettings_lskho") +horizontal_alignment = 1 +vertical_alignment = 1 +autowrap_mode = 3 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="RightScreen" unique_id=1017949170] +transform = Transform3D(1, -2.9802322e-08, -2.9802322e-08, 0, 1, 0, 2.9802322e-08, 1.4901161e-08, 1, 0, 0, 0) +shape = SubResource("SphereShape3D_2q8cl") + +[node name="RightScreenHoverAnimationPlayer" type="AnimationPlayer" parent="RightScreen" unique_id=1823283272] +libraries/ = SubResource("AnimationLibrary_h8fs1") + +[node name="LeftScreen" type="Area3D" parent="." unique_id=1517503720 node_paths=PackedStringArray("action_icon", "action_label", "hover_animation_player")] +unique_name_in_owner = true +transform = Transform3D(0.6401096, 0.4515857, 0.6215543, 0, 0.809017, -0.5877852, -0.76828337, 0.37624705, 0.5178596, 0.65, 0.5, 0.2) +script = ExtResource("7_lskho") +action_icon = NodePath("LeftScreenAction/SubViewport/VBoxContainer/LeftScreenActionIcon") +action_label = NodePath("LeftScreenAction/SubViewport/VBoxContainer/LeftScreenActionLabel") +inspectable = true +hover_animation_player = NodePath("LeftScreenHoverAnimationPlayer") +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="LeftScreenModel" parent="LeftScreen" unique_id=996232811 instance=ExtResource("8_psxhb")] +transform = Transform3D(1, -1.509958e-07, -8.742278e-08, 1.509958e-07, 1, -1.4901156e-08, 8.742278e-08, 1.49011425e-08, 1, 0, -0.07, 0.05) + +[node name="LeftScreenAction" type="Sprite3D" parent="LeftScreen" unique_id=442886447] +transform = Transform3D(-1, 5.3045827e-08, 1.509958e-07, 5.3045838e-08, 1.0000002, 1.5913756e-07, -1.5099579e-07, 1.5913761e-07, -1, 0.01, -0.04, -0.015) +pixel_size = 0.0015 +texture = SubResource("ViewportTexture_vks67") + +[node name="SubViewport" type="SubViewport" parent="LeftScreen/LeftScreenAction" unique_id=1031174751] +transparent_bg = true +size = Vector2i(150, 180) + +[node name="VBoxContainer" type="VBoxContainer" parent="LeftScreen/LeftScreenAction/SubViewport" unique_id=1664945780] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +theme_override_constants/separation = -10 +alignment = 1 + +[node name="LeftScreenActionIcon" type="TextureRect" parent="LeftScreen/LeftScreenAction/SubViewport/VBoxContainer" unique_id=266510290] +custom_minimum_size = Vector2(100, 100) +layout_mode = 2 +texture = ExtResource("9_v1m0r") +expand_mode = 3 +stretch_mode = 5 + +[node name="LeftScreenActionLabel" type="Label" parent="LeftScreen/LeftScreenAction/SubViewport/VBoxContainer" unique_id=448288889] +layout_mode = 2 +text = "Uwoqos Uwoqos " +label_settings = SubResource("LabelSettings_g7q16") +horizontal_alignment = 1 +vertical_alignment = 1 +autowrap_mode = 3 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="LeftScreen" unique_id=1931637253] +transform = Transform3D(1, -2.9802322e-08, -2.9802322e-08, 0, 1, 0, 2.9802322e-08, 1.4901161e-08, 1, 0, 0, 0) +shape = SubResource("SphereShape3D_2q8cl") + +[node name="LeftScreenHoverAnimationPlayer" type="AnimationPlayer" parent="LeftScreen" unique_id=972807531] +libraries/ = SubResource("AnimationLibrary_cvt2p") + +[node name="Inventory3D" parent="." unique_id=810532522 instance=ExtResource("10_y1ysr")] +unique_name_in_owner = true +transform = Transform3D(1, 0, 8.940697e-08, 0, 1, 0, -8.940697e-08, 0, 1, 0, 0.5876103, 0.89364576) +no_tools = true +test_inventory = SubResource("Resource_ne0dp") diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/holo_content.tscn b/stages/3d_scenes/cockpit_scene/cockpit_elements/holo_content.tscn new file mode 100644 index 0000000..917b896 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/holo_content.tscn @@ -0,0 +1,89 @@ +[gd_scene format=3 uid="uid://cs5gir1u8jbrg"] + +[ext_resource type="Script" uid="uid://d1t0br6cacipb" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/holo_content.gd" id="1_30o21"] +[ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="1_bw0fn"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="1_wkgid"] + +[sub_resource type="LabelSettings" id="LabelSettings_30o21"] +font = ExtResource("1_wkgid") +font_size = 37 + +[sub_resource type="LabelSettings" id="LabelSettings_xsjq0"] +font = ExtResource("1_wkgid") +font_size = 12 + +[sub_resource type="StyleBoxLine" id="StyleBoxLine_f7ho8"] +color = Color(1, 1, 1, 1) +thickness = 2 +vertical = true + +[sub_resource type="LabelSettings" id="LabelSettings_rc8f3"] +font = ExtResource("1_wkgid") +font_size = 20 + +[sub_resource type="LabelSettings" id="LabelSettings_m4m7o"] +font = ExtResource("1_wkgid") +font_size = 15 + +[node name="HoloContent" type="HBoxContainer" unique_id=668915500] +offset_right = 40.0 +offset_bottom = 40.0 +alignment = 1 +script = ExtResource("1_30o21") +distance = 0 +stop_name = "Blatava" + +[node name="VBoxContainer" type="VBoxContainer" parent="." unique_id=1324145322] +layout_mode = 2 +theme_override_constants/separation = -2 +alignment = 1 + +[node name="DistanceLabel" type="Label" parent="VBoxContainer" unique_id=414512188] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +text = "0" +label_settings = SubResource("LabelSettings_30o21") + +[node name="DestinationTitleLabel" type="Label" parent="VBoxContainer" unique_id=1137452930] +layout_mode = 2 +size_flags_horizontal = 4 +text = "DESTINATION" +label_settings = SubResource("LabelSettings_xsjq0") + +[node name="DestinationLabel" type="Label" parent="VBoxContainer" unique_id=216163419] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +text = "Jusqu'à la Base Boréa" +label_settings = SubResource("LabelSettings_xsjq0") + +[node name="VSeparator" type="VSeparator" parent="." unique_id=124655802] +unique_name_in_owner = true +layout_mode = 2 +theme = ExtResource("1_bw0fn") +theme_override_styles/separator = SubResource("StyleBoxLine_f7ho8") + +[node name="DetailsContainer" type="VBoxContainer" parent="." unique_id=597548757] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 4 +theme_override_constants/separation = 2 +alignment = 1 + +[node name="NextStopTitleLabel" type="Label" parent="DetailsContainer" unique_id=578206390] +unique_name_in_owner = true +layout_mode = 2 +text = "Prochain arrêt" +label_settings = SubResource("LabelSettings_rc8f3") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="NextStopLabel" type="Label" parent="DetailsContainer" unique_id=1819876983] +unique_name_in_owner = true +layout_mode = 2 +text = "Blatava" +label_settings = SubResource("LabelSettings_m4m7o") +horizontal_alignment = 1 +vertical_alignment = 1 diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_element.tscn b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_element.tscn new file mode 100644 index 0000000..668ceee --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_element.tscn @@ -0,0 +1,95 @@ +[gd_scene format=3 uid="uid://lctyea2v3hrg"] + +[ext_resource type="Texture2D" uid="uid://cxkmn71f8d2hy" path="res://common/icons/hourglass-empty.svg" id="1_d34h0"] +[ext_resource type="Script" uid="uid://dsjd6wkrtjwsa" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_element.gd" id="1_udmux"] +[ext_resource type="Texture2D" uid="uid://cgt4n1xwn4dc2" path="res://common/icons/hexagon.svg" id="1_wfsg0"] +[ext_resource type="Texture2D" uid="uid://cul11ab04vf8i" path="res://common/icons/hexagon-lock.svg" id="3_udmux"] +[ext_resource type="Texture2D" uid="uid://cwewx7cdy085h" path="res://common/icons/help-hexagon.svg" id="4_0ou8m"] + +[node name="MutationDiscoveryElement" type="Control" unique_id=701137276] +custom_minimum_size = Vector2(30, 30) +layout_mode = 3 +anchors_preset = 0 +offset_right = 30.0 +offset_bottom = 30.0 +script = ExtResource("1_udmux") +state = 0 + +[node name="BackgroundHexagon" type="TextureRect" parent="." unique_id=1761030872] +unique_name_in_owner = true +modulate = Color(1, 0.6509804, 0.09019608, 1) +custom_minimum_size = Vector2(30, 30) +layout_mode = 1 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -15.0 +offset_top = -15.0 +offset_right = 15.0 +offset_bottom = 15.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("1_wfsg0") +expand_mode = 1 +stretch_mode = 5 + +[node name="BackgroundHexagonQuestion" type="TextureRect" parent="." unique_id=1955995284] +unique_name_in_owner = true +visible = false +custom_minimum_size = Vector2(30, 30) +layout_mode = 1 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -15.0 +offset_top = -15.0 +offset_right = 15.0 +offset_bottom = 15.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("4_0ou8m") +expand_mode = 1 +stretch_mode = 5 + +[node name="BackgroundHexagonLocked" type="TextureRect" parent="." unique_id=786605518] +unique_name_in_owner = true +visible = false +custom_minimum_size = Vector2(30, 30) +layout_mode = 1 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -15.0 +offset_top = -15.0 +offset_right = 15.0 +offset_bottom = 15.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("3_udmux") +expand_mode = 1 +stretch_mode = 5 + +[node name="MutationTexture" type="TextureRect" parent="." unique_id=585232428] +unique_name_in_owner = true +custom_minimum_size = Vector2(20, 20) +layout_mode = 1 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -10.0 +offset_top = -10.0 +offset_right = 10.0 +offset_bottom = 10.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("1_d34h0") +expand_mode = 1 +stretch_mode = 5 diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_screen.tscn b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_screen.tscn new file mode 100644 index 0000000..dd9c9b0 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_screen.tscn @@ -0,0 +1,79 @@ +[gd_scene format=3 uid="uid://ci4x1q326lvyy"] + +[ext_resource type="Script" uid="uid://wwehvx7ui4yw" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_screen.gd" id="1_cfhhl"] +[ext_resource type="Script" uid="uid://c1lsjc2cwjupa" path="res://entities/plants/scripts/plant_mutation.gd" id="2_dv1aj"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="2_kjjrb"] +[ext_resource type="Script" uid="uid://c7po0bstyg80u" path="res://entities/plants/scripts/plant_mutation/ancient_mutation.gd" id="3_3q2hk"] +[ext_resource type="PackedScene" uid="uid://i28ngc4hgq85" path="res://stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend" id="3_5fpja"] +[ext_resource type="Script" uid="uid://eslsw42a0ylv" path="res://entities/plants/scripts/plant_mutation/fertile_mutation.gd" id="4_psve5"] +[ext_resource type="Script" uid="uid://7bfgsrkp6gaq" path="res://entities/plants/scripts/plant_mutation/generous_mutation.gd" id="5_74fqo"] + +[sub_resource type="Resource" id="Resource_dv1aj"] +script = ExtResource("3_3q2hk") +metadata/_custom_type_script = "uid://c7po0bstyg80u" + +[sub_resource type="Resource" id="Resource_3q2hk"] +script = ExtResource("4_psve5") +metadata/_custom_type_script = "uid://eslsw42a0ylv" + +[sub_resource type="Resource" id="Resource_psve5"] +script = ExtResource("5_74fqo") +metadata/_custom_type_script = "uid://7bfgsrkp6gaq" + +[sub_resource type="ViewportTexture" id="ViewportTexture_c5x8t"] +viewport_path = NodePath("Sprite3D/SubViewport") + +[sub_resource type="LabelSettings" id="LabelSettings_5jpjd"] +font = ExtResource("2_kjjrb") +font_size = 15 + +[sub_resource type="LabelSettings" id="LabelSettings_dv1aj"] +font = ExtResource("2_kjjrb") +font_size = 8 + +[node name="MutationDiscoveryScreen" type="Node3D" unique_id=1881622243] +script = ExtResource("1_cfhhl") +all_mutations = Array[ExtResource("2_dv1aj")]([SubResource("Resource_dv1aj"), SubResource("Resource_3q2hk"), SubResource("Resource_psve5"), null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]) + +[node name="Sprite3D" type="Sprite3D" parent="." unique_id=1624784968] +transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -0.011004657, 0, 0) +pixel_size = 0.003 +texture = SubResource("ViewportTexture_c5x8t") + +[node name="SubViewport" type="SubViewport" parent="Sprite3D" unique_id=1689184715] +disable_3d = true +transparent_bg = true +size = Vector2i(277, 190) + +[node name="VBoxContainer" type="VBoxContainer" parent="Sprite3D/SubViewport" unique_id=1462242714] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/separation = 8 +alignment = 1 + +[node name="Label" type="Label" parent="Sprite3D/SubViewport/VBoxContainer" unique_id=1148366912] +layout_mode = 2 +size_flags_vertical = 1 +text = "DISCOVERED_MUTATIONS" +label_settings = SubResource("LabelSettings_5jpjd") +horizontal_alignment = 1 +autowrap_mode = 3 + +[node name="Label2" type="Label" parent="Sprite3D/SubViewport/VBoxContainer" unique_id=1245847739] +layout_mode = 2 +size_flags_vertical = 1 +text = "PLANT_SEEDS_TO_DISCOVER_MUTATIONS" +label_settings = SubResource("LabelSettings_dv1aj") +horizontal_alignment = 1 +autowrap_mode = 3 + +[node name="MutationContainer" type="HFlowContainer" parent="Sprite3D/SubViewport/VBoxContainer" unique_id=1585516203] +unique_name_in_owner = true +layout_mode = 2 +alignment = 1 +last_wrap_alignment = 2 + +[node name="ScreenModel" parent="." unique_id=1871285491 instance=ExtResource("3_5fpja")] diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_element.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_element.gd new file mode 100644 index 0000000..8268cd9 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_element.gd @@ -0,0 +1,26 @@ +@tool +extends Control +class_name MutationDiscoveryElement + +enum State {DISCOVERED,UNDISCOVERED,LOCKED} + +@export var state : State = State.UNDISCOVERED : + set(v): + state = v + update() +@export var mutation : PlantMutation : + set(v): + mutation = v + update() + +func _ready(): + update() + +func update(): + if is_node_ready(): + %MutationTexture.visible = state == State.DISCOVERED + %BackgroundHexagon.visible = state == State.DISCOVERED + %BackgroundHexagonQuestion.visible = state == State.UNDISCOVERED + %BackgroundHexagonLocked.visible = state == State.LOCKED + if mutation: + %MutationTexture.texture = mutation.get_icon() diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_element.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_element.gd.uid new file mode 100644 index 0000000..6242966 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_element.gd.uid @@ -0,0 +1 @@ +uid://dsjd6wkrtjwsa diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_screen.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_screen.gd new file mode 100644 index 0000000..fdb0526 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_screen.gd @@ -0,0 +1,34 @@ +@tool +extends Node3D + +const MUTATION_DISCOVERY_ELEMENT_SCENE = preload("res://stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_element.tscn") + +@export var all_mutations : Array[PlantMutation] +@export var available_mutations : Array[PlantMutation] +@export var planted_mutation_ids : Array[String] + +@export_tool_button("Update", "Callable") var update_action = update + +# Called when the node enters the scene tree for the first time. +func _ready(): + if not Engine.is_editor_hint(): + all_mutations = GameInfo.game_data.progression_data.all_mutations + available_mutations = GameInfo.game_data.progression_data.available_mutations + planted_mutation_ids = GameInfo.game_data.progression_data.planted_mutation_ids + update() + +func update(): + if is_node_ready(): + for c in %MutationContainer.get_children(): + c.queue_free() + for i in range(len(all_mutations)): + var el : MutationDiscoveryElement = MUTATION_DISCOVERY_ELEMENT_SCENE.instantiate() as MutationDiscoveryElement + if i < len(available_mutations): + el.mutation = available_mutations[i] + if el.mutation.get_mutation_id() in planted_mutation_ids: + el.state = MutationDiscoveryElement.State.DISCOVERED + else : + el.state = MutationDiscoveryElement.State.UNDISCOVERED + else: + el.state = MutationDiscoveryElement.State.LOCKED + %MutationContainer.add_child(el) diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_screen.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_screen.gd.uid new file mode 100644 index 0000000..3be55e0 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/scripts/mutation_discovery_screen.gd.uid @@ -0,0 +1 @@ +uid://wwehvx7ui4yw diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/plant_info_screen.tscn b/stages/3d_scenes/cockpit_scene/cockpit_elements/plant_info_screen.tscn new file mode 100644 index 0000000..c50edf8 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/plant_info_screen.tscn @@ -0,0 +1,169 @@ +[gd_scene format=3 uid="uid://dd6k80rhux1do"] + +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="1_82utc"] +[ext_resource type="PackedScene" uid="uid://i28ngc4hgq85" path="res://stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen.blend" id="1_c5x8t"] +[ext_resource type="Script" uid="uid://bdwlxwoqf3dcj" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/plant_info_screen.gd" id="1_d4qoj"] +[ext_resource type="Texture2D" uid="uid://bt3g5bmar0icf" path="res://common/icons/growth.svg" id="2_5jpjd"] +[ext_resource type="Texture2D" uid="uid://dhy4ewvqvlxyi" path="res://common/icons/clock.svg" id="2_xwbvs"] +[ext_resource type="Texture2D" uid="uid://cgmxjom200bej" path="res://common/icons/chevrons-up.svg" id="4_a7tuo"] +[ext_resource type="Texture2D" uid="uid://c2qg7ikkylfv4" path="res://common/icons/seeds.svg" id="4_ihffg"] +[ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="7_o0x5p"] +[ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="8_ilibg"] + +[sub_resource type="ViewportTexture" id="ViewportTexture_c5x8t"] +viewport_path = NodePath("Sprite3D/SubViewport") + +[sub_resource type="LabelSettings" id="LabelSettings_5jpjd"] +font = ExtResource("1_82utc") +font_size = 24 + +[sub_resource type="LabelSettings" id="LabelSettings_d4qoj"] +font = ExtResource("1_82utc") +font_size = 24 + +[node name="PlantInfoScreen" type="Node3D" unique_id=1881622243] +script = ExtResource("1_d4qoj") + +[node name="Sprite3D" type="Sprite3D" parent="." unique_id=1624784968] +transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, -0.00714764, 0, 0) +pixel_size = 0.002 +texture = SubResource("ViewportTexture_c5x8t") + +[node name="SubViewport" type="SubViewport" parent="Sprite3D" unique_id=1689184715] +disable_3d = true +transparent_bg = true +size = Vector2i(450, 350) + +[node name="VBoxContainer" type="VBoxContainer" parent="Sprite3D/SubViewport" unique_id=1462242714] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/separation = 16 +alignment = 1 + +[node name="Label" type="Label" parent="Sprite3D/SubViewport/VBoxContainer" unique_id=1148366912] +layout_mode = 2 +size_flags_vertical = 1 +text = "PLANT_DEFAULT_ATTRIBUTES" +label_settings = SubResource("LabelSettings_5jpjd") +horizontal_alignment = 1 +autowrap_mode = 3 + +[node name="StatsContainer" type="HFlowContainer" parent="Sprite3D/SubViewport/VBoxContainer" unique_id=1585516203] +layout_mode = 2 +theme_override_constants/h_separation = 8 +theme_override_constants/v_separation = 8 +alignment = 1 +last_wrap_alignment = 2 + +[node name="ScoreStat" type="HBoxContainer" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer" unique_id=2037793125] +unique_name_in_owner = true +layout_mode = 2 +theme_override_constants/separation = 0 +alignment = 1 + +[node name="ScoreIcon" type="TextureRect" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer/ScoreStat" unique_id=1399775561] +custom_minimum_size = Vector2(40, 40) +layout_mode = 2 +texture = ExtResource("2_5jpjd") +expand_mode = 3 + +[node name="ScoreLabel" type="Label" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer/ScoreStat" unique_id=2071958510] +unique_name_in_owner = true +layout_mode = 2 +size_flags_vertical = 3 +text = "3" +label_settings = SubResource("LabelSettings_d4qoj") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="LifetimeStat" type="HBoxContainer" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer" unique_id=1750151233] +unique_name_in_owner = true +layout_mode = 2 +theme_override_constants/separation = 0 +alignment = 1 + +[node name="LifetimeIcon" type="TextureRect" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer/LifetimeStat" unique_id=855540661] +custom_minimum_size = Vector2(40, 40) +layout_mode = 2 +texture = ExtResource("2_xwbvs") +expand_mode = 3 + +[node name="LifetimeLabel" type="Label" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer/LifetimeStat" unique_id=1042555843] +unique_name_in_owner = true +layout_mode = 2 +size_flags_vertical = 3 +text = "3" +label_settings = SubResource("LabelSettings_d4qoj") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="GrowingStat" type="HBoxContainer" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer" unique_id=1246515659] +unique_name_in_owner = true +layout_mode = 2 +theme_override_constants/separation = 0 +alignment = 1 + +[node name="GrowingIcon" type="TextureRect" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer/GrowingStat" unique_id=613724045] +custom_minimum_size = Vector2(40, 40) +layout_mode = 2 +texture = ExtResource("4_a7tuo") +expand_mode = 3 + +[node name="GrowingLabel" type="Label" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer/GrowingStat" unique_id=1156190508] +unique_name_in_owner = true +layout_mode = 2 +size_flags_vertical = 3 +text = "3" +label_settings = SubResource("LabelSettings_d4qoj") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="SeedStat" type="HBoxContainer" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer" unique_id=2140421429] +unique_name_in_owner = true +layout_mode = 2 +theme_override_constants/separation = 0 +alignment = 1 + +[node name="SeedIcon" type="TextureRect" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer/SeedStat" unique_id=313311026] +custom_minimum_size = Vector2(40, 40) +layout_mode = 2 +texture = ExtResource("4_ihffg") +expand_mode = 3 + +[node name="SeedLabel" type="Label" parent="Sprite3D/SubViewport/VBoxContainer/StatsContainer/SeedStat" unique_id=1670358044] +unique_name_in_owner = true +layout_mode = 2 +size_flags_vertical = 3 +text = "1-2" +label_settings = SubResource("LabelSettings_d4qoj") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="PlantMaxMutationLabel" type="RichTextLabel" parent="Sprite3D/SubViewport/VBoxContainer" unique_id=1330541838] +unique_name_in_owner = true +layout_mode = 2 +theme = ExtResource("7_o0x5p") +theme_override_fonts/bold_font = ExtResource("1_82utc") +theme_override_font_sizes/normal_font_size = 16 +theme_override_font_sizes/bold_font_size = 20 +bbcode_enabled = true +text = "PLANTS_CAN_HAVE_UP_TO_X_MUTATION" +fit_content = true +horizontal_alignment = 1 + +[node name="PlantMutationProbability" type="RichTextLabel" parent="Sprite3D/SubViewport/VBoxContainer" unique_id=254393092] +unique_name_in_owner = true +layout_mode = 2 +theme = ExtResource("8_ilibg") +theme_override_fonts/bold_font = ExtResource("1_82utc") +theme_override_font_sizes/normal_font_size = 16 +theme_override_font_sizes/bold_font_size = 20 +bbcode_enabled = true +text = "PLANTS_MUTATION_CHANCE_IS_X_PERCENT" +fit_content = true +horizontal_alignment = 1 + +[node name="ScreenModel" parent="." unique_id=1871285491 instance=ExtResource("1_c5x8t")] diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/artefact_diplayer.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/artefact_diplayer.gd new file mode 100644 index 0000000..36b9161 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/artefact_diplayer.gd @@ -0,0 +1,23 @@ +@tool +extends Interactable3D +class_name ArtefactDisplayer + +@export var artefact : Artefact : set = set_artefact + +func _ready(): + set_artefact() + +func set_artefact(a := artefact): + if is_node_ready(): + for c in %Model.get_children(): + c.queue_free() + + if a: + var new_model = a.get_3d_scene().instantiate() + %Model.add_child(new_model) + artefact = a + +func card_info() -> CardInfo: + if artefact: + return artefact.card_info() + return null diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/artefact_diplayer.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/artefact_diplayer.gd.uid new file mode 100644 index 0000000..6856d95 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/artefact_diplayer.gd.uid @@ -0,0 +1 @@ +uid://bejxdxbdddqgx diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard.gd new file mode 100644 index 0000000..0dc57cb --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard.gd @@ -0,0 +1,94 @@ +@tool +extends Node3D +class_name Dashboard + +const PLANET_3D_HOLO_RADIUS = 1.3 +const PLANET_3D_HOLO_ARROW_SIZE = 0.3 +const LAND_ICON = preload("res://common/icons/arrow-narrow-down.svg") +const GROWTH_ICON = preload("res://common/icons/growth.svg") +const CHARGE_ICON = preload("res://common/icons/bolt.svg") + +signal main_screen_activated +signal right_screen_activated +signal left_screen_activated + +@export var main_screen_state : DashboardMainScreen.State : set = set_main_screen_state +@export var main_screen_run_point : RunPoint : set = set_main_screen_run_point + + +@export var stop_name : String : set = set_stop_label +@export var stop_title : String : set = set_stop_title_label +@export var destination_distance : int +@export var destination_title : String : set = set_destination_title + +@export var status_text : String : set = set_status_text + +@export var left_stop : RunPoint = null : set = set_left_stop +@export var right_stop : RunPoint = null : set = set_right_stop + +func _ready(): + %MainScreen.clicked.connect(func(): main_screen_activated.emit()) + %RightScreen.clicked.connect(func(): right_screen_activated.emit()) + %LeftScreen.clicked.connect(func(): left_screen_activated.emit()) + + + set_main_screen_state() + set_main_screen_run_point() + set_stop_label() + set_stop_title_label() + set_destination_title() + set_status_text() + set_left_stop() + set_right_stop() + %HoloContent.distance = destination_distance + + if not Engine.is_editor_hint() and GameInfo.game_data.player_data: + %Inventory3D.update(GameInfo.game_data.player_data.inventory) + +func _process(_d): + if %HoloContent.distance < destination_distance: + %HoloContent.distance = ceili(lerp(float(%HoloContent.distance), float(destination_distance), 0.05)) + else: + %HoloContent.distance = floori(lerp(float(%HoloContent.distance), float(destination_distance), 0.05)) + +func set_main_screen_state(s := main_screen_state): + main_screen_state = s + if is_node_ready(): + %MainScreen.state = s + +func set_main_screen_run_point(rp := main_screen_run_point): + main_screen_run_point = rp + if is_node_ready(): + %MainScreen.run_point = rp + + +func set_stop_label(v := stop_name): + stop_name = v + if is_node_ready(): + %HoloContent.stop_name = v + +func set_stop_title_label(v := stop_title): + stop_title = v + if is_node_ready(): + %HoloContent.stop_title = v + +func set_destination_title(v := destination_title): + destination_title = v + if is_node_ready(): + %HoloContent.destination = v + +func set_status_text(v := status_text): + status_text = v + if is_node_ready(): + %StatusLabel.text = v + +func set_left_stop(v := left_stop): + left_stop = v + if is_node_ready(): + %LeftScreen.run_point = left_stop + +func set_right_stop(v := right_stop): + right_stop = v + if is_node_ready(): + %RightScreen.run_point = right_stop + \ No newline at end of file diff --git a/stages/3d_scenes/cockpit_scene/scripts/dashboard.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard.gd.uid similarity index 100% rename from stages/3d_scenes/cockpit_scene/scripts/dashboard.gd.uid rename to stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard.gd.uid diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_main_screen.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_main_screen.gd new file mode 100644 index 0000000..b29d502 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_main_screen.gd @@ -0,0 +1,48 @@ +@tool +extends Interactable3D +class_name DashboardMainScreen + +enum State {READY_TO_TAKE_OFF,READY_TO_LAND,WAITING_CHOICE,LANDED} + +const TAKE_OFF_ICON = preload("res://common/icons/chevrons-up.svg") +const LAND_ICON = preload("res://common/icons/arrow-narrow-down.svg") +const RUN_POINT_ICON = preload("res://common/icons/map-pin.svg") +const WAITING_ICON = preload("res://common/icons/help-hexagon.svg") + +func _ready(): + set_state() + +@export var icon : TextureRect +@export var label : Label +@export var state : State = State.LANDED : set = set_state + +@export var run_point : RunPoint + +func set_state(s := state): + state = s + if is_node_ready(): + interactable = false + inspectable = false + match state: + State.READY_TO_TAKE_OFF: + icon.texture = TAKE_OFF_ICON + label.text = tr("TAKE_OFF") + interactable = true + State.READY_TO_LAND: + icon.texture = LAND_ICON + label.text = tr("LAND_SHIP") + interactable = true + State.WAITING_CHOICE: + icon.texture = WAITING_ICON + label.text = "" + State.LANDED: + icon.texture = RUN_POINT_ICON + label.text = "" if not run_point else run_point.region_parameter.get_region_name() + inspectable = true + +func card_info() -> CardInfo: + if run_point and state == State.LANDED: + var info = run_point.card_info() + info.subtitle = tr("LOCATION") + return info + return null diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_main_screen.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_main_screen.gd.uid new file mode 100644 index 0000000..4c5cb2d --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_main_screen.gd.uid @@ -0,0 +1 @@ +uid://biqgucg78cx44 diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_run_point_screen.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_run_point_screen.gd new file mode 100644 index 0000000..0ed2466 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_run_point_screen.gd @@ -0,0 +1,26 @@ +extends Interactable3D + +const LAND_ICON = preload("res://common/icons/arrow-narrow-down.svg") + +var run_point : RunPoint : set = set_run_point + +@export var action_icon : TextureRect +@export var action_label : Label + +func _ready(): + set_run_point() + +func set_run_point(rp := run_point): + run_point = rp + if is_node_ready(): + action_icon.visible = rp != null + action_label.visible = rp != null + interactable = rp != null + if rp: + action_icon.texture = LAND_ICON + action_label.text = rp.region_parameter.get_region_name() + +func card_info() -> CardInfo: + if run_point: + return run_point.card_info() + return null diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_run_point_screen.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_run_point_screen.gd.uid new file mode 100644 index 0000000..2e57cc9 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/dashboard_run_point_screen.gd.uid @@ -0,0 +1 @@ +uid://vf8nm8ch1p8s diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/holo_content.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/holo_content.gd new file mode 100644 index 0000000..27f37ce --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/holo_content.gd @@ -0,0 +1,41 @@ +@tool +extends HBoxContainer + +@export var distance : int = 20000 : set = set_distance +@export var destination : String = "BOREA_BASE" : set = set_destination +@export var stop_name : String = "" : set = set_stop_name +@export var stop_title : String = "NEXT_STOP" : set = set_stop_title + +func _ready(): + set_distance() + set_stop_name() + set_stop_title() + +func set_distance(v : int = distance): + distance = v + if is_node_ready(): + var str_distance = str(distance) + var nb_len = len(str_distance) + var shift = 0 + for i in range(nb_len): + if i%3 == 0: + shift += 1 + str_distance = str_distance.insert(len(str_distance) - i - 2 - shift," ") + %DistanceLabel.text = str_distance + +func set_stop_name(v : String = stop_name): + stop_name = v + if is_node_ready(): + %NextStopLabel.text = tr(str(v)) + +func set_stop_title(v : String = stop_title): + stop_title = v + if is_node_ready(): + %NextStopTitleLabel.text = tr(str(v)) + %VSeparator.visible = v != "" + %DetailsContainer.visible = v != "" + +func set_destination(v : String = destination): + destination = v + if is_node_ready(): + %DestinationLabel.text = tr(str(v)) diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/holo_content.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/holo_content.gd.uid new file mode 100644 index 0000000..0154a8b --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/holo_content.gd.uid @@ -0,0 +1 @@ +uid://d1t0br6cacipb diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/plant_info_screen.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/plant_info_screen.gd new file mode 100644 index 0000000..9f68cca --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/plant_info_screen.gd @@ -0,0 +1,36 @@ +extends Node3D +class_name PlantInfoScreen + +const CHANGED_COLOR = Color('#FFA617') + +func _ready(): + update_plant_info() + +func update_plant_info(): + var plant_info : RunDataPlantInfo = GameInfo.game_data.current_run.plant_info + + %ScoreLabel.text = "%d" % plant_info.get_base_score() + %ScoreStat.modulate = Color.WHITE if plant_info.get_base_score() == plant_info.DEFAULT_BASE_SCORE else CHANGED_COLOR + + %LifetimeLabel.text = "%d" % plant_info.get_lifetime() + %LifetimeStat.modulate = Color.WHITE if plant_info.get_lifetime() == plant_info.DEFAULT_LIFETIME else CHANGED_COLOR + + %GrowingLabel.text = "%d" % plant_info.get_growing_time() + %GrowingStat.modulate = Color.WHITE if plant_info.get_growing_time() == plant_info.DEFAULT_GROWING_TIME else CHANGED_COLOR + + %SeedLabel.text = "%d-%d" % [ + plant_info.get_seed_number() - plant_info.get_seed_random_loose(), + plant_info.get_seed_number() + ] + %SeedStat.modulate = Color.WHITE if ( + plant_info.get_seed_number() == plant_info.DEFAULT_SEED_NUMBER + and plant_info.get_seed_random_loose() == plant_info.DEFAULT_SEED_RANDOM_LOOSE + ) else CHANGED_COLOR + + %PlantMaxMutationLabel.text = tr("PLANTS_CAN_HAVE_UP_TO_X_MUTATION") % plant_info.get_mutation_max_number() + %PlantMaxMutationLabel.modulate = Color.WHITE if plant_info.get_mutation_max_number() == plant_info.DEFAULT_MUTATION_MAX_NUMBER else CHANGED_COLOR + + %PlantMutationProbability.text = tr("PLANTS_MUTATION_CHANCE_IS_X_PERCENT").format({ + "mutation_chance": roundi(plant_info.get_mutation_probability() * 100) + }) + %PlantMutationProbability.modulate = Color.WHITE if plant_info.get_mutation_probability() == plant_info.DEFAULT_MUTATION_PROBABILITY else CHANGED_COLOR \ No newline at end of file diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/plant_info_screen.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/plant_info_screen.gd.uid new file mode 100644 index 0000000..2ed4e03 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/plant_info_screen.gd.uid @@ -0,0 +1 @@ +uid://bdwlxwoqf3dcj diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/shelf.gd b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/shelf.gd new file mode 100644 index 0000000..9397f83 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/shelf.gd @@ -0,0 +1,24 @@ +extends Node3D + + +var run_data : RunData + +func _ready(): + run_data = GameInfo.game_data.current_run + if run_data: + set_up_artefacts_displayers(run_data.artefacts) + else : + set_up_artefacts_displayers([]) + +func set_up_artefacts_displayers(artefacts : Array[Artefact]): + var artefact_displayers = %ArtefactsDisplayers.get_children() as Array[ArtefactDisplayer] + for i in range(len(artefact_displayers)): + var artefact_displayer = artefact_displayers[i] + if not artefact_displayer.is_node_ready(): + await artefact_displayer.ready + if i < len(artefacts): + artefact_displayer.artefact = artefacts[i] + artefact_displayer.inspectable = true + else: + artefact_displayer.artefact = null + artefact_displayer.inspectable = false diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/shelf.gd.uid b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/shelf.gd.uid new file mode 100644 index 0000000..c5f0511 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/shelf.gd.uid @@ -0,0 +1 @@ +uid://cmtxsbaae8ouj diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/shelf.tscn b/stages/3d_scenes/cockpit_scene/cockpit_elements/shelf.tscn new file mode 100644 index 0000000..e85a3b1 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/cockpit_elements/shelf.tscn @@ -0,0 +1,115 @@ +[gd_scene format=3 uid="uid://cgw2ct7smispo"] + +[ext_resource type="Script" uid="uid://cmtxsbaae8ouj" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/scripts/shelf.gd" id="1_c7oq5"] +[ext_resource type="PackedScene" uid="uid://b4wdov3y1ulyb" path="res://stages/3d_scenes/cockpit_scene/assets/3d/furnitures/shelf.blend" id="1_rch3t"] +[ext_resource type="PackedScene" uid="uid://xsgcpgsxmboy" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/artefact_diplayer.tscn" id="2_rch3t"] +[ext_resource type="Script" uid="uid://c6lr0fucklsto" path="res://common/game_data/scripts/artefacts/pile/pile.gd" id="4_rxey1"] +[ext_resource type="Script" uid="uid://c7o5p4uk556v6" path="res://common/game_data/scripts/artefacts/seed_case/seed_case.gd" id="5_dthy8"] + +[sub_resource type="Resource" id="Resource_iiahi"] +script = ExtResource("4_rxey1") +metadata/_custom_type_script = "uid://c6lr0fucklsto" + +[sub_resource type="Resource" id="Resource_uck24"] +script = ExtResource("5_dthy8") +metadata/_custom_type_script = "uid://c7o5p4uk556v6" + +[sub_resource type="Resource" id="Resource_jfo8c"] +script = ExtResource("4_rxey1") +metadata/_custom_type_script = "uid://c6lr0fucklsto" + +[sub_resource type="Resource" id="Resource_xwcbk"] +script = ExtResource("5_dthy8") +metadata/_custom_type_script = "uid://c7o5p4uk556v6" + +[sub_resource type="Resource" id="Resource_64gay"] +script = ExtResource("4_rxey1") +metadata/_custom_type_script = "uid://c6lr0fucklsto" + +[node name="Shelf" type="Node3D" unique_id=1769159984] +script = ExtResource("1_c7oq5") + +[node name="Model" parent="." unique_id=1202025071 instance=ExtResource("1_rch3t")] + +[node name="ArtefactsDisplayers" type="Node3D" parent="." unique_id=973221092] +unique_name_in_owner = true + +[node name="ArtefactDiplayer" parent="ArtefactsDisplayers" unique_id=676305823 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.9, 0.42064568) +artefact = SubResource("Resource_iiahi") + +[node name="ArtefactDiplayer2" parent="ArtefactsDisplayers" unique_id=1000126744 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.9, 0.22064568) +artefact = SubResource("Resource_uck24") + +[node name="ArtefactDiplayer3" parent="ArtefactsDisplayers" unique_id=1862027914 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.9, 0.020645678) +artefact = SubResource("Resource_jfo8c") + +[node name="ArtefactDiplayer4" parent="ArtefactsDisplayers" unique_id=610725901 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.9, -0.17935432) +artefact = SubResource("Resource_xwcbk") + +[node name="ArtefactDiplayer5" parent="ArtefactsDisplayers" unique_id=2087800888 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.9, -0.37935433) +artefact = SubResource("Resource_64gay") + +[node name="ArtefactDiplayer6" parent="ArtefactsDisplayers" unique_id=1318896402 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.47160196, 0.42064568) +artefact = SubResource("Resource_iiahi") + +[node name="ArtefactDiplayer7" parent="ArtefactsDisplayers" unique_id=1642327446 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.47160196, 0.22064568) +artefact = SubResource("Resource_uck24") + +[node name="ArtefactDiplayer8" parent="ArtefactsDisplayers" unique_id=1762567100 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.47160196, 0.020645678) +artefact = SubResource("Resource_jfo8c") + +[node name="ArtefactDiplayer9" parent="ArtefactsDisplayers" unique_id=368097306 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.47160196, -0.17935432) +artefact = SubResource("Resource_xwcbk") + +[node name="ArtefactDiplayer10" parent="ArtefactsDisplayers" unique_id=901158149 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.47160196, -0.37935433) +artefact = SubResource("Resource_64gay") + +[node name="ArtefactDiplayer11" parent="ArtefactsDisplayers" unique_id=951216882 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 1.350719, 0.42064568) +artefact = SubResource("Resource_iiahi") + +[node name="ArtefactDiplayer12" parent="ArtefactsDisplayers" unique_id=1610084306 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 1.350719, 0.22064568) +artefact = SubResource("Resource_uck24") + +[node name="ArtefactDiplayer13" parent="ArtefactsDisplayers" unique_id=1537097690 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 1.350719, 0.020645678) +artefact = SubResource("Resource_jfo8c") + +[node name="ArtefactDiplayer14" parent="ArtefactsDisplayers" unique_id=569710522 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 1.350719, -0.17935432) +artefact = SubResource("Resource_xwcbk") + +[node name="ArtefactDiplayer15" parent="ArtefactsDisplayers" unique_id=1193787739 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 1.350719, -0.37935433) +artefact = SubResource("Resource_64gay") + +[node name="ArtefactDiplayer16" parent="ArtefactsDisplayers" unique_id=1486453136 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.00010251999, 0.42064568) +artefact = SubResource("Resource_iiahi") + +[node name="ArtefactDiplayer17" parent="ArtefactsDisplayers" unique_id=1614343088 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.00010251999, 0.22064568) +artefact = SubResource("Resource_uck24") + +[node name="ArtefactDiplayer18" parent="ArtefactsDisplayers" unique_id=1240310117 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.00010251999, 0.020645678) +artefact = SubResource("Resource_jfo8c") + +[node name="ArtefactDiplayer19" parent="ArtefactsDisplayers" unique_id=1690298607 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.00010251999, -0.17935432) +artefact = SubResource("Resource_xwcbk") + +[node name="ArtefactDiplayer20" parent="ArtefactsDisplayers" unique_id=119436302 instance=ExtResource("2_rch3t")] +transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0, 0.00010251999, -0.37935433) +artefact = SubResource("Resource_64gay") diff --git a/stages/3d_scenes/cockpit_scene/cockpit_elements/stw-commpack (2).zip b/stages/3d_scenes/cockpit_scene/cockpit_elements/stw-commpack (2).zip new file mode 100644 index 0000000..e4d7140 Binary files /dev/null and b/stages/3d_scenes/cockpit_scene/cockpit_elements/stw-commpack (2).zip differ diff --git a/stages/3d_scenes/cockpit_scene/cockpit_scene.tscn b/stages/3d_scenes/cockpit_scene/cockpit_scene.tscn index 5185b81..4b12cc5 100644 --- a/stages/3d_scenes/cockpit_scene/cockpit_scene.tscn +++ b/stages/3d_scenes/cockpit_scene/cockpit_scene.tscn @@ -12,8 +12,6 @@ shader_parameter/sky_color = Color(0.03, 0.05, 0.11, 1) shader_parameter/star_base_color = Color(0.8, 1, 0.3, 1) shader_parameter/star_hue_offset = 0.6 shader_parameter/star_intensity = 0.08 -shader_parameter/star_twinkle_speed = 0.8 -shader_parameter/star_twinkle_intensity = 0.2 shader_parameter/layer_scale = 20.0 shader_parameter/layer_scale_step = 10.0 shader_parameter/layers_count = 3 @@ -27,11 +25,9 @@ background_color = Color(0.35150164, 0.49048376, 0.5493753, 1) sky = SubResource("Sky_fp4e7") ambient_light_source = 3 ambient_light_color = Color(1, 1, 1, 1) -ambient_light_sky_contribution = 0.85 -ambient_light_energy = 2.0 +ambient_light_sky_contribution = 0.15 +ambient_light_energy = 0.75 reflected_light_source = 2 -tonemap_mode = 2 -tonemap_exposure = 0.7 tonemap_white = 1.84 glow_enabled = true glow_intensity = 0.22 @@ -94,6 +90,55 @@ _data = { &"turn": SubResource("Animation_22o3l") } +[sub_resource type="Animation" id="Animation_ix5ew"] +resource_name = "Land" +length = 5.1666665 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("DaySky:transparency") +tracks/0/interp = 2 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 5.1666665), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [1.0, 0.0] +} +tracks/1/type = "bezier" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("Planet3d:position:y") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"handle_modes": PackedInt32Array(2, 2), +"points": PackedFloat32Array(0, 0, 0, 5.6320395, -305.57382, 0, -2.034453, -6.684912, 0, 0), +"times": PackedFloat32Array(0, 5.1666665) +} +tracks/2/type = "bezier" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Planet3d:position:z") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"handle_modes": PackedInt32Array(0, 2), +"points": PackedFloat32Array(400, -3.1666665, -1.9195862, 0, 0, 0, -2.5635402, -100.9367, 0, 0), +"times": PackedFloat32Array(0, 5.1666665) +} +tracks/3/type = "bezier" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("Planet3d:rotation:x") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"handle_modes": PackedInt32Array(2, 0), +"points": PackedFloat32Array(-3.142, 0, 0, 1.5, -0.021812677, -6.283, -2.9999998, -0.021812439, 0.25, 0), +"times": PackedFloat32Array(0, 5.1666665) +} + [sub_resource type="Animation" id="Animation_h4nnn"] length = 0.001 tracks/0/type = "value" @@ -108,17 +153,38 @@ tracks/0/keys = { "update": 0, "values": [0.0] } -tracks/1/type = "value" +tracks/1/type = "bezier" tracks/1/imported = false tracks/1/enabled = true -tracks/1/path = NodePath("Ship:position") +tracks/1/path = NodePath("Planet3d:position:y") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(0, 193.97134, 0)] +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/2/type = "bezier" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Planet3d:position:z") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) +} +tracks/3/type = "bezier" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("Planet3d:rotation:x") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0), +"times": PackedFloat32Array(0) } [sub_resource type="Animation" id="Animation_aqm27"] @@ -131,27 +197,48 @@ tracks/0/path = NodePath("DaySky:transparency") tracks/0/interp = 2 tracks/0/loop_wrap = true tracks/0/keys = { -"times": PackedFloat32Array(0, 5), +"times": PackedFloat32Array(0, 5.1666665), "transitions": PackedFloat32Array(1, 1), "update": 0, "values": [0.0, 1.0] } -tracks/1/type = "value" +tracks/1/type = "bezier" tracks/1/imported = false tracks/1/enabled = true -tracks/1/path = NodePath("Ship:position") -tracks/1/interp = 2 +tracks/1/path = NodePath("Planet3d:position:y") +tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { -"times": PackedFloat32Array(0, 1.7, 5), -"transitions": PackedFloat32Array(1, 1, 1), -"update": 0, -"values": [Vector3(0, 193.97134, 0), Vector3(0, 250, -0.649), Vector3(1.5258789e-05, 207.79611, -191.42767)] +"handle_modes": PackedInt32Array(0, 0), +"points": PackedFloat32Array(0, 0, 0, 1.2666667, -75.835144, 0, -1.8666666, 48.631874, 0, 0), +"times": PackedFloat32Array(0, 5.1666665) +} +tracks/2/type = "bezier" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Planet3d:position:z") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"handle_modes": PackedInt32Array(2, 0), +"points": PackedFloat32Array(0, 0, 0, 1.7666667, 0.11311293, 400, -3.1666665, -1.9195862, 0, 0), +"times": PackedFloat32Array(0, 5.1666665) +} +tracks/3/type = "bezier" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("Planet3d:rotation:x") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"handle_modes": PackedInt32Array(2, 0), +"points": PackedFloat32Array(0, 0, 0, 1.7222222, 0, -3.142, -2.4666665, 0.05208826, 0, 0), +"times": PackedFloat32Array(0, 5.1666665) } -[sub_resource type="Animation" id="Animation_s2qnm"] +[sub_resource type="Animation" id="Animation_4i0sb"] resource_name = "TookOff" -length = 0.01 +length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true @@ -164,24 +251,46 @@ tracks/0/keys = { "update": 0, "values": [1.0] } -tracks/1/type = "value" +tracks/1/type = "bezier" tracks/1/imported = false tracks/1/enabled = true -tracks/1/path = NodePath("Ship:position") -tracks/1/interp = 2 +tracks/1/path = NodePath("Planet3d:position:y") +tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(1.5258789e-05, 207.79611, -191.42767)] +"handle_modes": PackedInt32Array(2), +"points": PackedFloat32Array(0, 0, 0, 1.5, 140.60794), +"times": PackedFloat32Array(0) +} +tracks/2/type = "bezier" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Planet3d:position:z") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(400, -3.1666665, -1.9195862, 0, 0), +"times": PackedFloat32Array(0) +} +tracks/3/type = "bezier" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("Planet3d:rotation:x") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"handle_modes": PackedInt32Array(0), +"points": PackedFloat32Array(-3.142, -0.84444445, 0, 0, 0), +"times": PackedFloat32Array(0) } [sub_resource type="AnimationLibrary" id="AnimationLibrary_s2qnm"] _data = { +&"Land": SubResource("Animation_ix5ew"), &"RESET": SubResource("Animation_h4nnn"), &"TakeOff": SubResource("Animation_aqm27"), -&"TookOff": SubResource("Animation_s2qnm") +&"TookOff": SubResource("Animation_4i0sb") } [node name="CockpitScene" type="Node3D" unique_id=550478796] @@ -197,17 +306,10 @@ surface_material_override/0 = SubResource("StandardMaterial3D_frapn") [node name="Ship" parent="." unique_id=1963368148 instance=ExtResource("4_3h3cv")] unique_name_in_owner = true -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 193.97134, 0) - -[node name="DirectionalLight3D" type="DirectionalLight3D" parent="." unique_id=1973506100] -transform = Transform3D(0.88172376, -0.122102074, 0.45569107, -0.47176614, -0.22820692, 0.8516797, 0, -0.9659259, -0.25881907, 0.03206873, 20.67343, -1.7533616) -light_color = Color(0.6287269, 0.4718002, 0.27988377, 1) -light_energy = 1.815 -shadow_enabled = true -directional_shadow_mode = 1 -directional_shadow_split_1 = 0.039 +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 198.103, 0) [node name="Planet3d" parent="." unique_id=1178444123 instance=ExtResource("9_agxn2")] +unique_name_in_owner = true transform = Transform3D(0.9999998, 0, 0, 0, 0.9999999, 0, 0, 0, 1, 0, 0, 0) radius = 150.0 details = 100 diff --git a/stages/3d_scenes/cockpit_scene/dashboard.tscn b/stages/3d_scenes/cockpit_scene/dashboard.tscn deleted file mode 100644 index ad54b44..0000000 --- a/stages/3d_scenes/cockpit_scene/dashboard.tscn +++ /dev/null @@ -1,655 +0,0 @@ -[gd_scene format=3 uid="uid://cv0ehgy3d1kmj"] - -[ext_resource type="Script" uid="uid://fet6urfgiiwr" path="res://stages/3d_scenes/cockpit_scene/scripts/dashboard.gd" id="1_2q8cl"] -[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="1_sp2xx"] -[ext_resource type="PackedScene" uid="uid://bnvqwsxgrd14y" path="res://stages/3d_scenes/cockpit_scene/assets/3d/dashboard.blend" id="1_u2frr"] -[ext_resource type="Script" uid="uid://bj4d1x8n8ina" path="res://entities/interactable_3d/interactable_3d.gd" id="1_vlkbw"] -[ext_resource type="PackedScene" uid="uid://cdvegfgvp7053" path="res://stages/3d_scenes/cockpit_scene/assets/3d/furnitures/screen_1.blend" id="2_awdc5"] -[ext_resource type="Texture2D" uid="uid://cgmxjom200bej" path="res://common/icons/chevrons-up.svg" id="2_vlkbw"] -[ext_resource type="Script" uid="uid://ccb06rayqowp3" path="res://stages/terrain/region/scripts/modifiers/region_modifier.gd" id="3_xy0a5"] -[ext_resource type="Script" uid="uid://ddk7j5b8p51dk" path="res://stages/terrain/region/scripts/region_parameter.gd" id="4_2d2u0"] -[ext_resource type="Script" uid="uid://3o33x8mesgrn" path="res://stages/terrain/region/scripts/modifiers/arid_modifier.gd" id="4_v8ur5"] -[ext_resource type="Script" uid="uid://b4eimt3v08jhc" path="res://common/game_data/scripts/run/run_point.gd" id="5_v8ur5"] -[ext_resource type="Texture2D" uid="uid://l2xplg72hs6j" path="res://common/icons/map-pin.svg" id="6_qbi61"] -[ext_resource type="Texture2D" uid="uid://bt3g5bmar0icf" path="res://common/icons/growth.svg" id="7_2ofl5"] -[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="8_f5peh"] -[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="9_2kujw"] -[ext_resource type="PackedScene" uid="uid://cm5b7w7j6527f" path="res://stages/title_screen/planet_3d.tscn" id="12_stoj6"] -[ext_resource type="Texture2D" uid="uid://bsgmxvuphn73c" path="res://common/icons/arrow-narrow-down.svg" id="13_5d7hc"] - -[sub_resource type="Resource" id="Resource_f7ho8"] -script = ExtResource("4_v8ur5") -metadata/_custom_type_script = "uid://3o33x8mesgrn" - -[sub_resource type="Resource" id="Resource_inbnt"] -script = ExtResource("4_2d2u0") -region_name = "Uwoqos" -region_seed = 1461307588 -modifiers = Array[ExtResource("3_xy0a5")]([SubResource("Resource_f7ho8")]) - -[sub_resource type="Resource" id="Resource_qm808"] -script = ExtResource("5_v8ur5") -region_parameter = SubResource("Resource_inbnt") -position = 0.008863045261805778 -metadata/_custom_type_script = "uid://b4eimt3v08jhc" - -[sub_resource type="ViewportTexture" id="ViewportTexture_cvt2p"] -viewport_path = NodePath("DestinationScreen/SubViewport") - -[sub_resource type="FastNoiseLite" id="FastNoiseLite_kh1yg"] -frequency = 1.0 - -[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_5d7hc"] -transparency = 1 -shading_mode = 0 -albedo_color = Color(0.8566341, 0.5852838, 1.1551381e-06, 0.6431373) - -[sub_resource type="ViewportTexture" id="ViewportTexture_5d7hc"] -viewport_path = NodePath("StatusScreen/SubViewport") - -[sub_resource type="SphereShape3D" id="SphereShape3D_vlkbw"] - -[sub_resource type="ViewportTexture" id="ViewportTexture_qbi61"] -viewport_path = NodePath("MainScreen/MainScreenSprite/SubViewport") - -[sub_resource type="Animation" id="Animation_vlkbw"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("MainScreenSprite:scale") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(1, 1, 1)] -} - -[sub_resource type="Animation" id="Animation_qbi61"] -resource_name = "hover" -loop_mode = 1 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("MainScreenSprite:scale") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 0.5, 1), -"transitions": PackedFloat32Array(1, 1, 1), -"update": 0, -"values": [Vector3(1, 1, 1), Vector3(1.2, 1.2, 1.2), Vector3(1, 1, 1)] -} - -[sub_resource type="AnimationLibrary" id="AnimationLibrary_2ofl5"] -_data = { -&"RESET": SubResource("Animation_vlkbw"), -&"hover": SubResource("Animation_qbi61") -} - -[sub_resource type="ViewportTexture" id="ViewportTexture_2ofl5"] -viewport_path = NodePath("RightScreen/RightScreenAction/SubViewport") - -[sub_resource type="ViewportTexture" id="ViewportTexture_f5peh"] -viewport_path = NodePath("RightScreen/RightScreenStats/SubViewport") - -[sub_resource type="LabelSettings" id="LabelSettings_2kujw"] -font = ExtResource("8_f5peh") -font_size = 20 - -[sub_resource type="ViewportTexture" id="ViewportTexture_stoj6"] -viewport_path = NodePath("RightScreen/RightScreenInfos/SubViewport") - -[sub_resource type="LabelSettings" id="LabelSettings_2d2u0"] -font = ExtResource("8_f5peh") -font_size = 20 - -[sub_resource type="SphereShape3D" id="SphereShape3D_2q8cl"] - -[sub_resource type="Animation" id="Animation_2kujw"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("RightScreenAction:scale") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(1, 1.0000002, 1)] -} - -[sub_resource type="Animation" id="Animation_2q8cl"] -resource_name = "hover" -loop_mode = 1 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("RightScreenAction:scale") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 0.46666667, 1), -"transitions": PackedFloat32Array(1, 1, 1), -"update": 0, -"values": [Vector3(1, 1.0000002, 1), Vector3(1.2, 1.2, 1.2), Vector3(1, 1.0000002, 1)] -} - -[sub_resource type="AnimationLibrary" id="AnimationLibrary_cvt2p"] -_data = { -&"RESET": SubResource("Animation_2kujw"), -&"hover": SubResource("Animation_2q8cl") -} - -[sub_resource type="ViewportTexture" id="ViewportTexture_2kujw"] -viewport_path = NodePath("LeftScreen/LeftScreenAction/SubViewport") - -[sub_resource type="ViewportTexture" id="ViewportTexture_2q8cl"] -viewport_path = NodePath("LeftScreen/LeftScreenStats/SubViewport") - -[sub_resource type="ViewportTexture" id="ViewportTexture_h8fs1"] -viewport_path = NodePath("LeftScreen/LeftScreenInfos/SubViewport") - -[sub_resource type="SphereShape3D" id="SphereShape3D_2kujw"] - -[sub_resource type="Animation" id="Animation_cvt2p"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("LeftScreenAction:scale") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(1, 1.0000001, 1)] -} - -[sub_resource type="Animation" id="Animation_stoj6"] -resource_name = "hover" -loop_mode = 1 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("LeftScreenAction:scale") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 0.46666667, 0.96666664), -"transitions": PackedFloat32Array(1, 1, 1), -"update": 0, -"values": [Vector3(1, 1.0000001, 1), Vector3(1.2, 1.2, 1.2), Vector3(1, 1.0000001, 1)] -} - -[sub_resource type="AnimationLibrary" id="AnimationLibrary_5d7hc"] -_data = { -&"RESET": SubResource("Animation_cvt2p"), -&"hover": SubResource("Animation_stoj6") -} - -[node name="Dashboard" type="Node3D" unique_id=1374334508] -script = ExtResource("1_2q8cl") -main_screen_icon = ExtResource("2_vlkbw") -main_screen_label = "Take Off" -destination_label = "South" -destination_title_label = "DESTINATION" -left_destination = SubResource("Resource_qm808") -right_destination = SubResource("Resource_qm808") - -[node name="DestinationScreen" type="Sprite3D" parent="." unique_id=1067303692] -unique_name_in_owner = true -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1.0000002, 0, 8.742278e-08, 0, -1, 0, 0.63727874, 0.9382038) -pixel_size = 0.002 -texture = SubResource("ViewportTexture_cvt2p") - -[node name="Planet3dHolo" parent="DestinationScreen" unique_id=866166298 instance=ExtResource("12_stoj6")] -transform = Transform3D(-0.1, 0, 8.742278e-09, 0, 0.09999998, 0, -8.742278e-09, 0, -0.1, -1.8938096e-10, 0.24558258, 0.0021662712) -radius = 1.0 -details = 32 -noise = SubResource("FastNoiseLite_kh1yg") -height = 0.625 -terrain_material = SubResource("StandardMaterial3D_5d7hc") -water_level = 0.0 -water_detail = 32 - -[node name="Planet3dHoloArrow" type="Sprite3D" parent="DestinationScreen/Planet3dHolo" unique_id=254165077] -unique_name_in_owner = true -transform = Transform3D(9.996528, -0.1669313, -0.20388591, 0.1532331, 9.977292, -0.65587914, 0.21437156, 0.65252686, 9.976385, 0, 1.6, -1.3) -pixel_size = 0.001 -billboard = 1 -double_sided = false -texture = ExtResource("6_qbi61") - -[node name="SubViewport" type="SubViewport" parent="DestinationScreen" unique_id=471832787] -transparent_bg = true -size = Vector2i(300, 70) - -[node name="VBoxContainer" type="VBoxContainer" parent="DestinationScreen/SubViewport" unique_id=599842808] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = -10 -alignment = 1 - -[node name="DestinationTitleLabel" type="Label" parent="DestinationScreen/SubViewport/VBoxContainer" unique_id=1315386326] -unique_name_in_owner = true -layout_mode = 2 -text = "DESTINATION" -label_settings = ExtResource("1_sp2xx") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="DestinationLabel" type="Label" parent="DestinationScreen/SubViewport/VBoxContainer" unique_id=348899780] -unique_name_in_owner = true -layout_mode = 2 -text = "South" -label_settings = ExtResource("1_sp2xx") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="StatusScreen" type="Sprite3D" parent="." unique_id=1257606535] -unique_name_in_owner = true -transform = Transform3D(-1, 0, -8.742278e-08, 0, 1.0000002, 0, 8.742278e-08, 0, -1, 0, 0.8631269, 0.18221188) -modulate = Color(1, 0, 0.43137255, 1) -pixel_size = 0.003 -texture = SubResource("ViewportTexture_5d7hc") - -[node name="SubViewport" type="SubViewport" parent="StatusScreen" unique_id=1357189828] -transparent_bg = true -size = Vector2i(500, 70) - -[node name="VBoxContainer" type="VBoxContainer" parent="StatusScreen/SubViewport" unique_id=2076282975] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = -10 -alignment = 1 - -[node name="StatusLabel" type="Label" parent="StatusScreen/SubViewport/VBoxContainer" unique_id=86551380] -unique_name_in_owner = true -layout_mode = 2 -label_settings = ExtResource("1_sp2xx") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="MainScreen" type="Area3D" parent="." unique_id=874806978 node_paths=PackedStringArray("hover_animation_player")] -unique_name_in_owner = true -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.42284742, 0.4816055) -script = ExtResource("1_vlkbw") -interactable = false -hover_animation_player = NodePath("HoverAnimationPlayer") -metadata/_custom_type_script = "uid://bj4d1x8n8ina" - -[node name="CollisionShape3D" type="CollisionShape3D" parent="MainScreen" unique_id=1935076244] -shape = SubResource("SphereShape3D_vlkbw") - -[node name="MainScreenSprite" type="Sprite3D" parent="MainScreen" unique_id=1081515212] -unique_name_in_owner = true -transform = Transform3D(-1, 8.0014914e-08, 5.4146472e-08, 7.923836e-08, 0.35859588, 0.9334929, 5.5276644e-08, 0.9334929, -0.35859588, 0, 0, 0) -visible = false -pixel_size = 0.003 -texture = SubResource("ViewportTexture_qbi61") - -[node name="SubViewport" type="SubViewport" parent="MainScreen/MainScreenSprite" unique_id=1101534363] -transparent_bg = true -size = Vector2i(150, 150) - -[node name="VBoxContainer" type="VBoxContainer" parent="MainScreen/MainScreenSprite/SubViewport" unique_id=758261583] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = -10 -alignment = 1 - -[node name="MainScreenIcon" type="TextureRect" parent="MainScreen/MainScreenSprite/SubViewport/VBoxContainer" unique_id=1128176178] -unique_name_in_owner = true -custom_minimum_size = Vector2(100, 100) -layout_mode = 2 -texture = ExtResource("2_vlkbw") -expand_mode = 3 -stretch_mode = 5 - -[node name="MainScreenLabel" type="Label" parent="MainScreen/MainScreenSprite/SubViewport/VBoxContainer" unique_id=2102392578] -unique_name_in_owner = true -layout_mode = 2 -text = "Take Off" -label_settings = ExtResource("1_sp2xx") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="HoverAnimationPlayer" type="AnimationPlayer" parent="MainScreen" unique_id=74243401] -libraries/ = SubResource("AnimationLibrary_2ofl5") - -[node name="DashboardModel" parent="." unique_id=635273073 instance=ExtResource("1_u2frr")] - -[node name="RightScreen" type="Area3D" parent="." unique_id=748959616 node_paths=PackedStringArray("hover_animation_player")] -unique_name_in_owner = true -transform = Transform3D(0.6401096, -0.4515857, -0.6215544, 0, 0.809017, -0.58778524, 0.76828337, 0.37624705, 0.51785964, -0.7, 0.5, -0.15) -script = ExtResource("1_vlkbw") -hover_animation_player = NodePath("HoverAnimationPlayer") -metadata/_custom_type_script = "uid://bj4d1x8n8ina" - -[node name="RightScreenModel" parent="RightScreen" unique_id=462452406 instance=ExtResource("2_awdc5")] -transform = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) - -[node name="RightScreenAction" type="Sprite3D" parent="RightScreen" unique_id=1289027629] -unique_name_in_owner = true -transform = Transform3D(-1, 0, -1.509958e-07, 0, 1.0000002, 0, 1.509958e-07, 0, -1, -0.18746918, -0.04759717, -0.04654131) -pixel_size = 0.002 -texture = SubResource("ViewportTexture_2ofl5") - -[node name="SubViewport" type="SubViewport" parent="RightScreen/RightScreenAction" unique_id=837587699] -transparent_bg = true -size = Vector2i(150, 150) - -[node name="VBoxContainer" type="VBoxContainer" parent="RightScreen/RightScreenAction/SubViewport" unique_id=536772063] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = -10 -alignment = 1 - -[node name="RightScreenActionIcon" type="TextureRect" parent="RightScreen/RightScreenAction/SubViewport/VBoxContainer" unique_id=788824067] -unique_name_in_owner = true -custom_minimum_size = Vector2(100, 100) -layout_mode = 2 -texture = ExtResource("13_5d7hc") -expand_mode = 3 -stretch_mode = 5 - -[node name="RightScreenActionLabel" type="Label" parent="RightScreen/RightScreenAction/SubViewport/VBoxContainer" unique_id=2019588267] -unique_name_in_owner = true -layout_mode = 2 -text = "Uwoqos" -label_settings = ExtResource("1_sp2xx") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="RightScreenStats" type="Sprite3D" parent="RightScreen" unique_id=282782621] -unique_name_in_owner = true -transform = Transform3D(-1, -5.5879354e-08, 1.1920929e-07, -2.9802322e-08, 0.86602557, -0.50000024, -2.0861626e-07, -0.5000001, -0.86602545, -0.14474958, 0.2707073, -0.057207607) -pixel_size = 0.002 -texture = SubResource("ViewportTexture_f5peh") - -[node name="SubViewport" type="SubViewport" parent="RightScreen/RightScreenStats" unique_id=131851122] -transparent_bg = true -size = Vector2i(170, 75) - -[node name="HBoxContainer" type="HBoxContainer" parent="RightScreen/RightScreenStats/SubViewport" unique_id=578755335] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -offset_right = 15.0 -offset_bottom = 51.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = 10 -alignment = 1 - -[node name="RightScreenStat1" type="VBoxContainer" parent="RightScreen/RightScreenStats/SubViewport/HBoxContainer" unique_id=164391708] -layout_mode = 2 -theme_override_constants/separation = -10 - -[node name="RightScreenStat1Icon" type="TextureRect" parent="RightScreen/RightScreenStats/SubViewport/HBoxContainer/RightScreenStat1" unique_id=1950512302] -unique_name_in_owner = true -custom_minimum_size = Vector2(50, 50) -layout_mode = 2 -texture = ExtResource("7_2ofl5") -expand_mode = 3 -stretch_mode = 5 - -[node name="RightScreenStat1Label" type="Label" parent="RightScreen/RightScreenStats/SubViewport/HBoxContainer/RightScreenStat1" unique_id=965157290] -unique_name_in_owner = true -layout_mode = 2 -text = "0" -label_settings = SubResource("LabelSettings_2kujw") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="RightScreenStat2" type="VBoxContainer" parent="RightScreen/RightScreenStats/SubViewport/HBoxContainer" unique_id=882311617] -layout_mode = 2 -theme_override_constants/separation = -10 - -[node name="RightScreenStat2Icon" type="TextureRect" parent="RightScreen/RightScreenStats/SubViewport/HBoxContainer/RightScreenStat2" unique_id=33385693] -unique_name_in_owner = true -custom_minimum_size = Vector2(50, 50) -layout_mode = 2 -texture = ExtResource("9_2kujw") -expand_mode = 3 -stretch_mode = 5 - -[node name="RightScreenStat2Label" type="Label" parent="RightScreen/RightScreenStats/SubViewport/HBoxContainer/RightScreenStat2" unique_id=1607645733] -unique_name_in_owner = true -layout_mode = 2 -text = "0" -label_settings = SubResource("LabelSettings_2kujw") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="RightScreenInfos" type="Sprite3D" parent="RightScreen" unique_id=449647859] -unique_name_in_owner = true -transform = Transform3D(-0.9902686, -2.9802322e-08, -0.13917324, 0, 1.0000002, -1.4901161e-08, 0.13917324, 5.9604645e-08, -0.99026823, 0.293737, 0.079518735, -0.035522263) -pixel_size = 0.002 -texture = SubResource("ViewportTexture_stoj6") - -[node name="SubViewport" type="SubViewport" parent="RightScreen/RightScreenInfos" unique_id=606992481] -transparent_bg = true -size = Vector2i(117, 138) - -[node name="HBoxContainer" type="VBoxContainer" parent="RightScreen/RightScreenInfos/SubViewport" unique_id=112944532] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = 10 - -[node name="RightScreenInfoTitle" type="Label" parent="RightScreen/RightScreenInfos/SubViewport/HBoxContainer" unique_id=1621744309] -unique_name_in_owner = true -layout_mode = 2 -text = "Hello" -label_settings = SubResource("LabelSettings_2d2u0") -horizontal_alignment = 1 -autowrap_mode = 2 - -[node name="RightScreenInfoText" type="RichTextLabel" parent="RightScreen/RightScreenInfos/SubViewport/HBoxContainer" unique_id=2134092583] -unique_name_in_owner = true -layout_mode = 2 -theme_override_font_sizes/normal_font_size = 14 -theme_override_font_sizes/bold_font_size = 14 -theme_override_font_sizes/bold_italics_font_size = 14 -theme_override_font_sizes/italics_font_size = 14 -theme_override_font_sizes/mono_font_size = 14 -bbcode_enabled = true -text = "Lorem ipsum dolor sir amet" -fit_content = true -horizontal_alignment = 1 - -[node name="CollisionShape3D" type="CollisionShape3D" parent="RightScreen" unique_id=1017949170] -shape = SubResource("SphereShape3D_2q8cl") - -[node name="HoverAnimationPlayer" type="AnimationPlayer" parent="RightScreen" unique_id=1284640853] -libraries/ = SubResource("AnimationLibrary_cvt2p") - -[node name="LeftScreen" type="Area3D" parent="." unique_id=1913589420 node_paths=PackedStringArray("hover_animation_player")] -unique_name_in_owner = true -transform = Transform3D(-0.6401098, -0.4515857, -0.6215544, 0, -0.809017, 0.58778524, 0.7682836, -0.37624705, -0.51785964, 0.7, 0.5, -0.15) -script = ExtResource("1_vlkbw") -hover_animation_player = NodePath("HoverAnimationPlayer") -metadata/_custom_type_script = "uid://bj4d1x8n8ina" - -[node name="LeftScreenModel" parent="LeftScreen" unique_id=596888679 instance=ExtResource("2_awdc5")] -transform = Transform3D(-0.99999976, 0, 0, 0, -1, 0, 0, 0, -0.99999994, 0, 0, 0) - -[node name="LeftScreenAction" type="Sprite3D" parent="LeftScreen" unique_id=764341277] -unique_name_in_owner = true -transform = Transform3D(1, 1.5099579e-07, 1.509958e-07, 1.509958e-07, -1.0000001, -1.4901158e-07, 1.5099577e-07, 1.4901163e-07, -1, -0.21238875, 0.06833798, 0.06593077) -pixel_size = 0.002 -texture = SubResource("ViewportTexture_2kujw") - -[node name="SubViewport" type="SubViewport" parent="LeftScreen/LeftScreenAction" unique_id=1596245800] -transparent_bg = true -size = Vector2i(150, 150) - -[node name="VBoxContainer" type="VBoxContainer" parent="LeftScreen/LeftScreenAction/SubViewport" unique_id=306736368] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = -10 -alignment = 1 - -[node name="LeftScreenActionIcon" type="TextureRect" parent="LeftScreen/LeftScreenAction/SubViewport/VBoxContainer" unique_id=2129330680] -unique_name_in_owner = true -custom_minimum_size = Vector2(100, 100) -layout_mode = 2 -texture = ExtResource("13_5d7hc") -expand_mode = 3 -stretch_mode = 5 - -[node name="LeftScreenActionLabel" type="Label" parent="LeftScreen/LeftScreenAction/SubViewport/VBoxContainer" unique_id=1631525309] -unique_name_in_owner = true -layout_mode = 2 -text = "Ujuqyt" -label_settings = ExtResource("1_sp2xx") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="LeftScreenStats" type="Sprite3D" parent="LeftScreen" unique_id=2023558675] -unique_name_in_owner = true -transform = Transform3D(0.9999999, -1.0058284e-07, -1.1920929e-07, 2.9802322e-08, -0.8660252, -0.50000006, 2.9802322e-08, 0.5000003, -0.86602545, -0.16182363, -0.27932125, 0.064277686) -pixel_size = 0.002 -texture = SubResource("ViewportTexture_2q8cl") - -[node name="SubViewport" type="SubViewport" parent="LeftScreen/LeftScreenStats" unique_id=1118622284] -transparent_bg = true -size = Vector2i(170, 75) - -[node name="HBoxContainer" type="HBoxContainer" parent="LeftScreen/LeftScreenStats/SubViewport" unique_id=324458085] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -offset_right = 15.0 -offset_bottom = 51.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = 10 -alignment = 1 - -[node name="LeftScreenStat1" type="VBoxContainer" parent="LeftScreen/LeftScreenStats/SubViewport/HBoxContainer" unique_id=224841193] -layout_mode = 2 -theme_override_constants/separation = -10 - -[node name="LeftScreenStat1Icon" type="TextureRect" parent="LeftScreen/LeftScreenStats/SubViewport/HBoxContainer/LeftScreenStat1" unique_id=127811144] -unique_name_in_owner = true -custom_minimum_size = Vector2(50, 50) -layout_mode = 2 -texture = ExtResource("7_2ofl5") -expand_mode = 3 -stretch_mode = 5 - -[node name="LeftScreenStat1Label" type="Label" parent="LeftScreen/LeftScreenStats/SubViewport/HBoxContainer/LeftScreenStat1" unique_id=148471301] -unique_name_in_owner = true -layout_mode = 2 -text = "10" -label_settings = SubResource("LabelSettings_2kujw") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="LeftScreenStat2" type="VBoxContainer" parent="LeftScreen/LeftScreenStats/SubViewport/HBoxContainer" unique_id=476423329] -layout_mode = 2 -theme_override_constants/separation = -10 - -[node name="LeftScreenStat2Icon" type="TextureRect" parent="LeftScreen/LeftScreenStats/SubViewport/HBoxContainer/LeftScreenStat2" unique_id=2139266172] -unique_name_in_owner = true -custom_minimum_size = Vector2(50, 50) -layout_mode = 2 -texture = ExtResource("9_2kujw") -expand_mode = 3 -stretch_mode = 5 - -[node name="LeftScreenStat2Label" type="Label" parent="LeftScreen/LeftScreenStats/SubViewport/HBoxContainer/LeftScreenStat2" unique_id=1826154156] -unique_name_in_owner = true -layout_mode = 2 -text = "10" -label_settings = SubResource("LabelSettings_2kujw") -horizontal_alignment = 1 -vertical_alignment = 1 - -[node name="LeftScreenInfos" type="Sprite3D" parent="LeftScreen" unique_id=409182409] -unique_name_in_owner = true -transform = Transform3D(0.9902684, 1.2166894e-08, 0.13917312, 0, -0.9999996, 8.7422784e-08, 0.13917315, -8.6571944e-08, -0.9902682, 0.28543925, -0.055610895, 0.046822492) -pixel_size = 0.002 -texture = SubResource("ViewportTexture_h8fs1") - -[node name="SubViewport" type="SubViewport" parent="LeftScreen/LeftScreenInfos" unique_id=1150656373] -transparent_bg = true -size = Vector2i(117, 138) - -[node name="HBoxContainer" type="VBoxContainer" parent="LeftScreen/LeftScreenInfos/SubViewport" unique_id=667177655] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 -theme_override_constants/separation = 10 - -[node name="LeftScreenInfoTitle" type="Label" parent="LeftScreen/LeftScreenInfos/SubViewport/HBoxContainer" unique_id=743864123] -unique_name_in_owner = true -layout_mode = 2 -text = "Hello hella" -label_settings = SubResource("LabelSettings_2d2u0") -horizontal_alignment = 1 -autowrap_mode = 2 - -[node name="LeftScreenInfoText" type="RichTextLabel" parent="LeftScreen/LeftScreenInfos/SubViewport/HBoxContainer" unique_id=101599500] -unique_name_in_owner = true -layout_mode = 2 -theme_override_font_sizes/normal_font_size = 14 -theme_override_font_sizes/bold_font_size = 14 -theme_override_font_sizes/bold_italics_font_size = 14 -theme_override_font_sizes/italics_font_size = 14 -theme_override_font_sizes/mono_font_size = 14 -bbcode_enabled = true -text = "Lorem ipsum dolor sir amet" -fit_content = true -horizontal_alignment = 1 - -[node name="CollisionShape3D" type="CollisionShape3D" parent="LeftScreen" unique_id=1983450336] -shape = SubResource("SphereShape3D_2kujw") - -[node name="HoverAnimationPlayer" type="AnimationPlayer" parent="LeftScreen" unique_id=332045443] -libraries/ = SubResource("AnimationLibrary_5d7hc") diff --git a/stages/3d_scenes/cockpit_scene/scripts/cockpit.gd b/stages/3d_scenes/cockpit_scene/scripts/cockpit.gd index 9044164..e5ac598 100644 --- a/stages/3d_scenes/cockpit_scene/scripts/cockpit.gd +++ b/stages/3d_scenes/cockpit_scene/scripts/cockpit.gd @@ -1,6 +1,6 @@ extends Node3D -const POST_TUTORIAL_DIALOG_PATH = "res://dialogs/timelines/story/demeter_post_tutorial.dtl" +const FAILED_DIALOG = "res://dialogs/timelines/tutorial/demeter_ship_failed.dtl" const TAKE_OFF_ICON = preload("res://common/icons/chevrons-up.svg") const LAND_ICON = preload("res://common/icons/arrow-narrow-down.svg") @@ -11,6 +11,8 @@ signal land @onready var dashboard : Dashboard = %Dashboard var choosen_run_point : RunPoint = null +var exiting = false +var phone_dialogs : Array[String] # Called when the node enters the scene tree for the first time. func _ready(): @@ -30,47 +32,99 @@ func _ready(): dashboard.left_screen_activated.connect(_on_left_screen_activated) dashboard.right_screen_activated.connect(_on_right_screen_activated) %Exit.clicked.connect(_on_exit_clicked) + %Exit.interactable = can_exit() - handle_dialogs() + if not GameInfo.game_data.progression_data.ship_tutorial_done: + await get_tree().create_timer(1).timeout + await show_tutorial() - var player_has_teleporter : bool = GameInfo.game_data.player_data.inventory.items.find_custom( - func (i : Item): return i is ShipPortal - ) != -1 + if GameInfo.game_data.game_mode == GameData.GameMode.STORY: + update_dialogs() - if not player_has_teleporter: - GameInfo.game_data.player_data.inventory.add_item(ShipPortal.new()) +func show_tutorial(): + AudioManager.play_sfx("Reveal") + %ShipTutorial.appear() + Input.mouse_mode = Input.MOUSE_MODE_VISIBLE + %Player3D.controlling_player=false + await %ShipTutorial.disappeared + Input.mouse_mode = Input.MOUSE_MODE_CAPTURED + %Player3D.controlling_player=true + GameInfo.game_data.progression_data.ship_tutorial_done = true -func handle_dialogs(): - if not POST_TUTORIAL_DIALOG_PATH in GameInfo.game_data.dialogs_done: - await get_tree().create_timer(5).timeout - await ring_phone(POST_TUTORIAL_DIALOG_PATH) +func update_dialogs(): + if GameInfo.game_data and GameInfo.game_data.current_run: + var run_data = GameInfo.game_data.current_run + var region_data = GameInfo.game_data.current_region_data -func ring_phone(dialog_path : String): + if ( + region_data + and region_data.state != RegionData.State.SUCCEEDED + and region_data.charges == 0 + and not FAILED_DIALOG in GameInfo.game_data.dialogs_done + and not FAILED_DIALOG in phone_dialogs + ): + phone_dialogs.append(FAILED_DIALOG) + + var story_dialog = run_data.story_step.get_ship_dialog_path(run_data.level, GameInfo.game_data.ship_in_space) + if ( + story_dialog + and not story_dialog in GameInfo.game_data.dialogs_done + and not story_dialog in phone_dialogs + ): + phone_dialogs.append(story_dialog) + + + if len(phone_dialogs): + ring_phone() + + +func ring_phone(): %Phone.interactable = true %Phone.play_audio() - await %Phone.clicked + +func _on_phone_clicked(): %Phone.stop_audio() %Phone.interactable = false - Dialogic.start(dialog_path) - await Dialogic.timeline_ended + if len(phone_dialogs): + Dialogic.start(phone_dialogs.pop_front()) + await Dialogic.timeline_ended + if (len(phone_dialogs)): + await get_tree().create_timer(2.).timeout + ring_phone() func move_to_choosen_run_point(): GameInfo.game_data.current_run.choose_next_run_point(choosen_run_point) - %Gauge3D.progress = 0. + +func can_exit() -> bool: + return ( + not GameInfo.game_data.ship_in_space + and GameInfo.game_data.current_region_data != null + and not GameInfo.game_data.current_run.story_step is TutorialStoryStep + ) func _on_main_screen_activated(): if GameInfo.game_data.ship_in_space: if GameInfo.game_data.current_run and choosen_run_point: move_to_choosen_run_point() land.emit() - %Exit.interactable = GameInfo.game_data.current_region_data != null GameInfo.game_data.ship_in_space = false + %PlantInfoScreen.update_plant_info() + get_tree().create_timer(randf_range(0,3)).timeout.connect( + func(): update_dialogs() + ) else : take_off.emit() - %Exit.interactable = false GameInfo.game_data.ship_in_space = true if GameInfo.game_data.current_run == null: GameInfo.game_data.start_run() + GameInfo.game_data.player_data.energy = GameInfo.game_data.player_data.max_energy + + var gauge_tween = get_tree().create_tween() + gauge_tween.tween_property(%Gauge3D,"progress",0,3.) + get_tree().create_timer(randf_range(0,3)).timeout.connect( + func(): update_dialogs() + ) + %Exit.interactable = can_exit() update_dashboard() func _on_left_screen_activated(): @@ -86,17 +140,27 @@ func _on_right_screen_activated(): update_dashboard() func _on_exit_clicked(): - AudioManager.play_sfx("Ship_exit") - if not GameInfo.game_data.ship_in_space and GameInfo.game_data.current_region_data != null: - SceneManager.change_to_scene_id('REGION') + if (can_exit() and not exiting): + AudioManager.play_sfx("Ship_exit") + exiting = true + SceneManager.change_to_scene(RegionScene.new(GameInfo.game_data.current_region_data)) func update_dashboard(): var current_region_data = GameInfo.game_data.current_region_data var current_run = GameInfo.game_data.current_run + + if current_run.is_finished(): + dashboard.destination_distance = 0 + else: + dashboard.destination_distance = ( + current_run.get_progress() * 1000 + ) + dashboard.destination_title = current_run.story_step.get_destination_text() var can_take_off : bool = ( - current_region_data != null + not current_run.is_finished() + and current_region_data and current_region_data.state == RegionData.State.SUCCEEDED and current_run and len(current_run.next_run_points) != 0 @@ -104,44 +168,47 @@ func update_dashboard(): ) if GameInfo.game_data.ship_in_space: - dashboard.main_screen_icon = LAND_ICON - dashboard.main_screen_label = tr("LAND_SHIP") - dashboard.main_screen_interactable = choosen_run_point != null or GameInfo.game_data.current_run == null - - dashboard.destination_visible = choosen_run_point != null if choosen_run_point: - dashboard.destination_title_label = tr("DESTINATION") - dashboard.destination_longitude = float(choosen_run_point.level) / RunData.RUN_POINT_MAX_LEVEL - dashboard.destination_label = choosen_run_point.region_parameter.region_name + dashboard.main_screen_state = DashboardMainScreen.State.READY_TO_LAND + dashboard.stop_title = tr("NEXT_STOP") + dashboard.stop_name = choosen_run_point.region_parameter.region_name dashboard.status_text = "" else: - dashboard.status_text = tr("CHOOSE_DESTINATION") + dashboard.main_screen_state = DashboardMainScreen.State.WAITING_CHOICE + dashboard.stop_title = "" + dashboard.stop_name = tr("ORBIT") + dashboard.status_text = tr("CHOOSE_NEXT_STOP") + dashboard.stop_name = "" if GameInfo.game_data.current_run: var next_run_points = GameInfo.game_data.current_run.next_run_points if len(next_run_points) > 0: - dashboard.left_destination = next_run_points[0] + dashboard.left_stop = next_run_points[0] else: - dashboard.left_destination = null + dashboard.left_stop = null if len(next_run_points) > 1: - dashboard.right_destination = next_run_points[1] + dashboard.right_stop = next_run_points[1] else: - dashboard.right_destination = null + dashboard.right_stop = null else : + if can_take_off: + dashboard.main_screen_state = DashboardMainScreen.State.READY_TO_TAKE_OFF + else: + dashboard.main_screen_run_point = current_run.current_run_point + dashboard.main_screen_state = DashboardMainScreen.State.LANDED + dashboard.status_text = "DESTINATION_REACHED" if current_run.is_finished() else tr("NO_MORE_ENERGY") - dashboard.destination_visible = false - dashboard.main_screen_icon = TAKE_OFF_ICON - dashboard.main_screen_label = tr("TAKE_OFF") - dashboard.main_screen_interactable = can_take_off - dashboard.left_destination = null - dashboard.right_destination = null + dashboard.left_stop = null + dashboard.right_stop = null - dashboard.destination_visible = current_region_data != null if current_region_data: - dashboard.destination_title_label = tr("LOCATION") - dashboard.destination_label = current_region_data.region_name - dashboard.destination_longitude = float(current_region_data.region_level) / RunData.RUN_POINT_MAX_LEVEL + dashboard.stop_title = tr("LOCATION") + dashboard.stop_name = current_region_data.region_name - dashboard.status_text = "" if can_take_off else tr("NO_MORE_ENERGY") + + +func _on_orchid_saver_clicked(): + GameInfo.game_data.give_up() + diff --git a/stages/3d_scenes/cockpit_scene/scripts/cockpit_scene.gd b/stages/3d_scenes/cockpit_scene/scripts/cockpit_scene.gd index 0a9cc7d..7cb5dea 100644 --- a/stages/3d_scenes/cockpit_scene/scripts/cockpit_scene.gd +++ b/stages/3d_scenes/cockpit_scene/scripts/cockpit_scene.gd @@ -1,12 +1,18 @@ extends Node3D -class_name CockpitScene func _ready(): Input.mouse_mode = Input.MOUSE_MODE_CAPTURED - if GameInfo.game_data.ship_in_space: %TakeOffAnimationPlayer.play("TookOff") + if GameInfo.game_data: + %Planet3d.fertility_factor = ( + max(0,float(GameInfo.game_data.progression_data.story_step_i - 1)) + / len( + GameInfo.game_data.progression_data.get_all_story_steps() + ) - 1 + ) + %Ship.take_off.connect(_on_ship_take_off) %Ship.land.connect(_on_ship_land) @@ -34,9 +40,9 @@ func _on_ship_take_off(): AudioManager.play_sfx("Decollage") func _on_ship_land(): - %TakeOffAnimationPlayer.play_backwards("TakeOff") + %TakeOffAnimationPlayer.play("Land") AudioManager.play_sfx("Atterrissage") func _on_exit_action_clicked(): if GameInfo.game_data.current_region_data != null: - SceneManager.change_to_scene_id("REGION") + SceneManager.change_to_scene(RegionScene.new(GameInfo.game_data.current_region_data)) diff --git a/stages/3d_scenes/cockpit_scene/scripts/dashboard.gd b/stages/3d_scenes/cockpit_scene/scripts/dashboard.gd deleted file mode 100644 index 5863a39..0000000 --- a/stages/3d_scenes/cockpit_scene/scripts/dashboard.gd +++ /dev/null @@ -1,132 +0,0 @@ -@tool -extends Node3D -class_name Dashboard - -const PLANET_3D_HOLO_RADIUS = 1.3 -const PLANET_3D_HOLO_ARROW_SIZE = 0.3 -const LAND_ICON = preload("res://common/icons/arrow-narrow-down.svg") -const GROWTH_ICON = preload("res://common/icons/growth.svg") -const CHARGE_ICON = preload("res://common/icons/bolt.svg") - -signal main_screen_activated -signal right_screen_activated -signal left_screen_activated - -@export var main_screen_icon : Texture : set = set_main_screen_icon -@export var main_screen_label : String : set = set_main_screen_label -@export var main_screen_interactable : bool : set = set_main_screen_interactable - -@export var destination_label : String : set = set_destination_label -@export var destination_title_label : String : set = set_destination_title_label -@export var destination_visible : bool : set = set_destination_visible - -@export var destination_longitude : float : set = set_destination_longitude - -@export var status_text : String : set = set_status_text - -@export var left_destination : RunPoint = null : set = set_left_destination -@export var right_destination : RunPoint = null : set = set_right_destination - -func _ready(): - %MainScreen.clicked.connect(func(): main_screen_activated.emit()) - %RightScreen.clicked.connect(func(): right_screen_activated.emit()) - %LeftScreen.clicked.connect(func(): left_screen_activated.emit()) - - set_main_screen_icon() - set_main_screen_label() - set_main_screen_interactable() - set_destination_label() - set_destination_title_label() - set_destination_visible() - set_destination_longitude() - set_status_text() - set_left_destination() - set_right_destination() - -func set_main_screen_icon(v : Texture = main_screen_icon): - main_screen_icon = v - if is_node_ready(): - %MainScreenIcon.texture = v - -func set_main_screen_label(v : String = main_screen_label): - main_screen_label = v - if is_node_ready(): - %MainScreenLabel.text = v - -func set_main_screen_interactable(v : bool = main_screen_interactable): - main_screen_interactable = v - if is_node_ready(): - %MainScreenSprite.visible = v - %MainScreen.interactable = v - -func set_destination_label(v := destination_label): - destination_label = v - if is_node_ready(): - %DestinationLabel.text = v - -func set_destination_title_label(v := destination_title_label): - destination_title_label = v - if is_node_ready(): - %DestinationTitleLabel.text = v - -func set_destination_visible(v := destination_visible): - destination_visible = v - if is_node_ready(): - %DestinationScreen.visible = v - -func set_destination_longitude(v := destination_longitude): - destination_longitude = v - if is_node_ready(): - %Planet3dHoloArrow.position = ( - Vector3.DOWN * (PLANET_3D_HOLO_RADIUS * 2 * destination_longitude - PLANET_3D_HOLO_RADIUS - PLANET_3D_HOLO_ARROW_SIZE) - + Vector3.FORWARD * PLANET_3D_HOLO_RADIUS - ) - -func set_status_text(v := status_text): - status_text = v - if is_node_ready(): - %StatusLabel.text = v - -func set_left_destination(v := left_destination): - left_destination = v - if is_node_ready(): - %LeftScreenAction.visible = left_destination != null - %LeftScreen.interactable = left_destination != null - %LeftScreenStats.visible = left_destination != null - %LeftScreenInfos.visible = left_destination and len(left_destination.region_parameter.modifiers) > 0 - if left_destination: - %LeftScreenActionIcon.texture = LAND_ICON - %LeftScreenActionLabel.text = left_destination.region_parameter.get_region_name() - - %LeftScreenStat1Icon.texture = GROWTH_ICON - %LeftScreenStat1Label.text = str(left_destination.region_parameter.get_objective()) - - %LeftScreenStat2Icon.texture = CHARGE_ICON - %LeftScreenStat2Label.text = str(left_destination.region_parameter.get_charge()) - - if len(left_destination.region_parameter.modifiers) > 0: - var modifier : RegionModifier = left_destination.region_parameter.modifiers[0] - %LeftScreenInfoTitle.text = "%s %d" % [ modifier.get_modifier_name(), modifier.level ] - %LeftScreenInfoText.text = modifier.get_description() - -func set_right_destination(v := right_destination): - right_destination = v - if is_node_ready(): - %RightScreenAction.visible = right_destination != null - %RightScreen.interactable = right_destination != null - %RightScreenStats.visible = right_destination != null - %RightScreenInfos.visible = right_destination and len(right_destination.region_parameter.modifiers) > 0 - if right_destination: - %RightScreenActionIcon.texture = LAND_ICON - %RightScreenActionLabel.text = right_destination.region_parameter.get_region_name() - - %RightScreenStat1Icon.texture = GROWTH_ICON - %RightScreenStat1Label.text = str(right_destination.region_parameter.get_objective()) - - %RightScreenStat2Icon.texture = CHARGE_ICON - %RightScreenStat2Label.text = str(right_destination.region_parameter.get_charge()) - - if len(right_destination.region_parameter.modifiers) > 0: - var modifier : RegionModifier = right_destination.region_parameter.modifiers[0] - %RightScreenInfoTitle.text = "%s %d" % [ modifier.get_modifier_name(), modifier.level ] - %RightScreenInfoText.text = modifier.get_description() diff --git a/stages/3d_scenes/cockpit_scene/scripts/ship_tutorial.gd b/stages/3d_scenes/cockpit_scene/scripts/ship_tutorial.gd new file mode 100644 index 0000000..3dcd875 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/scripts/ship_tutorial.gd @@ -0,0 +1,59 @@ +extends CanvasLayer +class_name ShipTutorial + +const DEFAULT_SHIP_ACCELERATION = Vector2(1,0) + +signal disappeared + +var object_acceleration := Vector2(0,0) + +var rotating := false + +var prev_mouse_pos : Vector2 +var next_mouse_pos : Vector2 + +func _ready(): + hide() + +func appear(): + %AnimationPlayer.play("appear") + Pointer.action_disabled = true + +func _process(delta): + update_rotation(delta) + +func update_rotation(delta): + if visible: + next_mouse_pos = get_viewport().get_mouse_position() + if Input.is_action_just_pressed("action"): + rotating = true + prev_mouse_pos = get_viewport().get_mouse_position() + if Input.is_action_just_released("action"): + rotating = false + object_acceleration = Vector2( + float(next_mouse_pos.x - prev_mouse_pos.x), + float(next_mouse_pos.y - prev_mouse_pos.y) + ) + + var object_rotation = object_acceleration + + if rotating: + object_rotation = Vector2( + float(next_mouse_pos.x - prev_mouse_pos.x), + float(next_mouse_pos.y - prev_mouse_pos.y) + ) + prev_mouse_pos = next_mouse_pos + else : + object_acceleration = object_acceleration.lerp(DEFAULT_SHIP_ACCELERATION, 0.1) + + %Ship.rotate(Vector3.UP, object_rotation.x * delta) + %Ship.rotate(Vector3.RIGHT, object_rotation.y * delta) + + +func _on_ok_button_button_down(): + %AnimationPlayer.play_backwards("appear") + disappeared.emit() + get_tree().create_timer(0.2).timeout.connect( # Put a delay to not interfere with the ok button click + func(): + Pointer.action_disabled = false + ) diff --git a/stages/3d_scenes/cockpit_scene/scripts/ship_tutorial.gd.uid b/stages/3d_scenes/cockpit_scene/scripts/ship_tutorial.gd.uid new file mode 100644 index 0000000..591e005 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/scripts/ship_tutorial.gd.uid @@ -0,0 +1 @@ +uid://cqc8vta5ffmwt diff --git a/stages/3d_scenes/cockpit_scene/ship_tutorial.tscn b/stages/3d_scenes/cockpit_scene/ship_tutorial.tscn new file mode 100644 index 0000000..bf20ad5 --- /dev/null +++ b/stages/3d_scenes/cockpit_scene/ship_tutorial.tscn @@ -0,0 +1,325 @@ +[gd_scene format=3 uid="uid://cd8j7v7qtybi8"] + +[ext_resource type="Script" uid="uid://cqc8vta5ffmwt" path="res://stages/3d_scenes/cockpit_scene/scripts/ship_tutorial.gd" id="1_1jkg7"] +[ext_resource type="Shader" uid="uid://cuni3ggtw2uuy" path="res://common/vfx/materials/shaders/blur.gdshader" id="1_11pbi"] +[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="2_1jkg7"] +[ext_resource type="Texture2D" uid="uid://bi5jo6pf0acjb" path="res://common/icons/carambola.svg" id="3_ofwam"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="3_wyjs5"] +[ext_resource type="PackedScene" uid="uid://blvetnnib2ks0" path="res://stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend" id="4_ofwam"] +[ext_resource type="Environment" uid="uid://bxyp24f85p0xf" path="res://gui/game/assets/gui_3d_environment.tres" id="5_2y716"] +[ext_resource type="Texture2D" uid="uid://7lw40nfj4lhl" path="res://stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 112838.png" id="6_2y716"] +[ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="6_6olc8"] +[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="7_cnkwc"] +[ext_resource type="Texture2D" uid="uid://d17ru4hw8okj1" path="res://stages/3d_scenes/cockpit_scene/assets/textures/tutorial_screenshots/Capture d'écran 2026-04-17 113002.png" id="9_6olc8"] + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_wa8fb"] +shader = ExtResource("1_11pbi") +shader_parameter/strength = 8.00000037674012 +shader_parameter/mix_percentage = 0.3 + +[sub_resource type="ViewportTexture" id="ViewportTexture_2y716"] +viewport_path = NodePath("Particles/SubViewport") + +[sub_resource type="Curve" id="Curve_6olc8"] +_limits = [-200.0, 200.0, 0.0, 1.0] +_data = [Vector2(0, -200), 0.0, 560.0, 0, 0, Vector2(0.08235294, 92.384125), 1336.3082, 1336.3082, 0, 0, Vector2(0.34901965, 200), 0.0, 0.0, 0, 0, Vector2(0.854902, -200), 0.0, 0.0, 0, 0] +point_count = 4 + +[sub_resource type="Gradient" id="Gradient_cnkwc"] +offsets = PackedFloat32Array(0, 0.8689956, 0.98253274) +colors = PackedColorArray(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0) + +[sub_resource type="LabelSettings" id="LabelSettings_n2u7g"] +font = ExtResource("3_wyjs5") +font_size = 50 +font_color = Color(1, 0.6509804, 0.09019608, 1) + +[sub_resource type="ViewportTexture" id="ViewportTexture_11pbi"] +viewport_path = NodePath("ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport") + +[sub_resource type="Animation" id="Animation_2y716"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:visible") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [true] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("ShipTutorialContainer:modulate") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 1)] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Particles:modulate") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 1)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("ShipTutorialContainer:theme_override_constants/separation") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [12] +} + +[sub_resource type="Animation" id="Animation_6olc8"] +resource_name = "appear" +length = 0.8 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:visible") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.13333334), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [false, true] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("ShipTutorialContainer:modulate") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0.2, 0.73333335), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("Particles:modulate") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0.2, 0.7), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)] +} +tracks/3/type = "value" +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/path = NodePath("ShipTutorialContainer:theme_override_constants/separation") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/keys = { +"times": PackedFloat32Array(0.26666665, 0.73333335), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [554, 8] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_cnkwc"] +_data = { +&"RESET": SubResource("Animation_2y716"), +&"appear": SubResource("Animation_6olc8") +} + +[node name="ShipTutorial" type="CanvasLayer" unique_id=868547496] +script = ExtResource("1_1jkg7") + +[node name="BlurRect" type="ColorRect" parent="." unique_id=1582095070] +material = SubResource("ShaderMaterial_wa8fb") +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0.037180007, 0.020800002, 0.13, 1) + +[node name="Particles" type="TextureRect" parent="." unique_id=552383374] +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -179.0 +offset_top = -179.0 +offset_right = 179.0 +offset_bottom = 179.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = SubResource("ViewportTexture_2y716") +expand_mode = 1 + +[node name="SubViewport" type="SubViewport" parent="Particles" unique_id=205461032] +transparent_bg = true +size = Vector2i(1000, 1000) + +[node name="GPUParticles2D" type="CPUParticles2D" parent="Particles/SubViewport" unique_id=612988274] +position = Vector2(500, 500) +amount = 20 +texture = ExtResource("3_ofwam") +preprocess = 1.0 +spread = 180.0 +gravity = Vector2(0, 0) +initial_velocity_min = 2.0 +initial_velocity_max = 2.0 +linear_accel_min = 5.0 +linear_accel_max = 5.0 +linear_accel_curve = SubResource("Curve_6olc8") +color_ramp = SubResource("Gradient_cnkwc") + +[node name="ShipTutorialContainer" type="VBoxContainer" parent="." unique_id=732188526] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/separation = 12 +alignment = 1 + +[node name="ShipTutorialText" type="Label" parent="ShipTutorialContainer" unique_id=1403992763] +unique_name_in_owner = true +layout_mode = 2 +text = "SHIP_ACQUIRED" +label_settings = SubResource("LabelSettings_n2u7g") +horizontal_alignment = 1 + +[node name="ShipTutorialTitle" type="Label" parent="ShipTutorialContainer" unique_id=2022459650] +unique_name_in_owner = true +layout_mode = 2 +text = "USE_THE_SHIP_TO_TRAVEL_ACROSS_THE_PLANET" +label_settings = ExtResource("2_1jkg7") +horizontal_alignment = 1 + +[node name="GridContainer" type="GridContainer" parent="ShipTutorialContainer" unique_id=1001794244] +layout_mode = 2 +size_flags_horizontal = 4 +theme_override_constants/h_separation = 35 +columns = 3 + +[node name="VBoxContainer" type="VBoxContainer" parent="ShipTutorialContainer/GridContainer" unique_id=1184100238] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +theme_override_constants/separation = 12 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="ShipTutorialContainer/GridContainer/VBoxContainer" unique_id=458438699] +layout_mode = 2 +texture = ExtResource("6_2y716") +expand_mode = 5 +stretch_mode = 5 + +[node name="RichTextLabel" type="RichTextLabel" parent="ShipTutorialContainer/GridContainer/VBoxContainer" unique_id=1193611093] +layout_mode = 2 +bbcode_enabled = true +text = "JUMP_BETWEEN_REGION_TEXT" +fit_content = true +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="ShipVisualiser" type="TextureRect" parent="ShipTutorialContainer/GridContainer" unique_id=692971472] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +mouse_filter = 0 +texture = SubResource("ViewportTexture_11pbi") +stretch_mode = 5 + +[node name="SubViewport" type="SubViewport" parent="ShipTutorialContainer/GridContainer/ShipVisualiser" unique_id=1153633037] +own_world_3d = true +transparent_bg = true +size = Vector2i(400, 400) + +[node name="Ship" type="Node3D" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport" unique_id=434320277] +unique_name_in_owner = true +transform = Transform3D(0.86598426, 0, -0.5000024, 0, 0.9999422, 0, 0.49997625, 0, 0.8660295, 0, 0, 0) + +[node name="cockpit2" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport/Ship" unique_id=1190034532 instance=ExtResource("4_ofwam")] + +[node name="Skeleton3D" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport/Ship/cockpit2/Armature" parent_id_path=PackedInt32Array(1190034532, 368440226) index="0" unique_id=1318180746] +bones/0/rotation = Quaternion(-0.52081746, 0.47827742, 0.52081746, 0.47827742) +bones/1/rotation = Quaternion(0.042539995, -1.4957005e-08, -9.944439e-10, 0.9990948) +bones/2/rotation = Quaternion(0.52081746, 0.47827742, 0.52081746, -0.47827742) +bones/3/rotation = Quaternion(0.042539995, 1.4957005e-08, 9.944439e-10, 0.9990948) + +[node name="WinkEnd_R" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport/Ship/cockpit2/Armature/Skeleton3D" index="0" unique_id=1435098475] +transform = Transform3D(7.145433e-10, -1, -7.4505806e-08, 2.9971538e-08, -4.4703484e-08, 1, -1, -7.1454553e-10, 2.9971538e-08, -12.358327, -1.0543112, -8.881784e-16) + +[node name="Wing_R" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport/Ship/cockpit2/Armature/Skeleton3D" index="1" unique_id=891044283] +transform = Transform3D(0, -0.9963807, -0.08500305, 0, -0.08500302, 0.9963807, -1, 0, 0, 0, 0, 0) + +[node name="WinkEnd_L" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport/Ship/cockpit2/Armature/Skeleton3D" index="2" unique_id=908817672] +transform = Transform3D(7.145433e-10, 1, 7.4505806e-08, -2.9971538e-08, -4.4703484e-08, 1, 1, -7.1454553e-10, 2.9971538e-08, 12.358327, -1.0543112, 0) + +[node name="Wing_L" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport/Ship/cockpit2/Armature/Skeleton3D" index="3" unique_id=74621525] +transform = Transform3D(0, 0.9963807, 0.08500305, 0, -0.08500302, 0.9963807, 1, 0, 0, 0, 0, 0) + +[node name="AnimationPlayer" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport/Ship/cockpit2" index="6" unique_id=1861191625] +autoplay = &"Fold" + +[node name="Camera3D" type="Camera3D" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport" unique_id=541588220] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 50) +current = true +fov = 30.0 + +[node name="WorldEnvironment" type="WorldEnvironment" parent="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport" unique_id=1274670225] +environment = ExtResource("5_2y716") + +[node name="VBoxContainer2" type="VBoxContainer" parent="ShipTutorialContainer/GridContainer" unique_id=1062837751] +custom_minimum_size = Vector2(300, 0) +layout_mode = 2 +theme_override_constants/separation = 12 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="ShipTutorialContainer/GridContainer/VBoxContainer2" unique_id=227115375] +layout_mode = 2 +texture = ExtResource("9_6olc8") +expand_mode = 5 +stretch_mode = 5 + +[node name="RichTextLabel" type="RichTextLabel" parent="ShipTutorialContainer/GridContainer/VBoxContainer2" unique_id=1438289614] +layout_mode = 2 +bbcode_enabled = true +text = "RECHARGE_YOUR_SHIP_WITH_PLANT_SCORE_TEXT" +fit_content = true +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="OkButton" type="Button" parent="ShipTutorialContainer" unique_id=879779245] +unique_name_in_owner = true +layout_mode = 2 +size_flags_horizontal = 4 +theme = ExtResource("6_6olc8") +text = "OK" +icon = ExtResource("7_cnkwc") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="." unique_id=1299060348] +unique_name_in_owner = true +libraries/ = SubResource("AnimationLibrary_cnkwc") + +[connection signal="button_down" from="ShipTutorialContainer/OkButton" to="." method="_on_ok_button_button_down"] + +[editable path="ShipTutorialContainer/GridContainer/ShipVisualiser/SubViewport/Ship/cockpit2"] diff --git a/stages/3d_scenes/relay_base/assets/3d/3dOrchid.blend1 b/stages/3d_scenes/relay_base/assets/3d/3dOrchid.blend1 new file mode 100644 index 0000000..6a8ebaa Binary files /dev/null and b/stages/3d_scenes/relay_base/assets/3d/3dOrchid.blend1 differ diff --git a/stages/3d_scenes/relay_base/assets/3d/3d_orchid.blend1 b/stages/3d_scenes/relay_base/assets/3d/3d_orchid.blend1 new file mode 100644 index 0000000..fccd383 Binary files /dev/null and b/stages/3d_scenes/relay_base/assets/3d/3d_orchid.blend1 differ diff --git a/stages/3d_scenes/relay_base/assets/3d/relay_base.blend b/stages/3d_scenes/relay_base/assets/3d/relay_base.blend new file mode 100644 index 0000000..e92ae8e Binary files /dev/null and b/stages/3d_scenes/relay_base/assets/3d/relay_base.blend differ diff --git a/stages/3d_scenes/relay_base/assets/3d/relay_base.blend.import b/stages/3d_scenes/relay_base/assets/3d/relay_base.blend.import new file mode 100644 index 0000000..77be7da --- /dev/null +++ b/stages/3d_scenes/relay_base/assets/3d/relay_base.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://c7pw57hcv6jvr" +path="res://.godot/imported/relay_base.blend-305cbcaada458d114f393793b5a362db.scn" + +[deps] + +source_file="res://stages/3d_scenes/relay_base/assets/3d/relay_base.blend" +dest_files=["res://.godot/imported/relay_base.blend-305cbcaada458d114f393793b5a362db.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/stages/3d_scenes/relay_base/assets/3d/relay_base.blend1 b/stages/3d_scenes/relay_base/assets/3d/relay_base.blend1 new file mode 100644 index 0000000..98f7d9c Binary files /dev/null and b/stages/3d_scenes/relay_base/assets/3d/relay_base.blend1 differ diff --git a/stages/3d_scenes/relay_base/relay_base.tscn b/stages/3d_scenes/relay_base/relay_base.tscn new file mode 100644 index 0000000..e3e8859 --- /dev/null +++ b/stages/3d_scenes/relay_base/relay_base.tscn @@ -0,0 +1,263 @@ +[gd_scene format=3 uid="uid://4bp7ushk8ic1"] + +[ext_resource type="Script" uid="uid://dkeuwqo7xdlab" path="res://stages/3d_scenes/relay_base/scripts/relay_base.gd" id="1_6cyeg"] +[ext_resource type="Texture2D" uid="uid://cww35xu1yqivp" path="res://stages/3d_scenes/cockpit_scene/assets/textures/sky.png" id="1_ckj7g"] +[ext_resource type="PackedScene" uid="uid://c7pw57hcv6jvr" path="res://stages/3d_scenes/relay_base/assets/3d/relay_base.blend" id="1_dm7op"] +[ext_resource type="PackedScene" uid="uid://da7a74dg30q1l" path="res://entities/player_3d/player_3D.tscn" id="2_6cyeg"] +[ext_resource type="Script" uid="uid://bj4d1x8n8ina" path="res://entities/interactable_3d/interactable_3d.gd" id="3_xuy43"] +[ext_resource type="Texture2D" uid="uid://dex283rx00fjb" path="res://common/icons/logout.svg" id="4_140ad"] +[ext_resource type="PackedScene" uid="uid://c2bk3n1xo1fto" path="res://stages/3d_scenes/astra_base/incubator.tscn" id="5_uxagy"] +[ext_resource type="PackedScene" uid="uid://u3o5g8lmck74" path="res://entities/interactable_3d/orchid_saver/orchid_saver.tscn" id="6_2vcx4"] +[ext_resource type="Texture2D" uid="uid://d3k7rl7nbp7yx" path="res://common/icons/device-floppy.svg" id="7_erosk"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="8_erosk"] + +[sub_resource type="Environment" id="Environment_uxagy"] +sky_custom_fov = 61.7 +reflected_light_source = 2 +tonemap_mode = 2 +tonemap_exposure = 0.7 +tonemap_white = 1.84 +glow_enabled = true +glow_intensity = 0.22 +glow_bloom = 0.22 +glow_hdr_threshold = 0.79 +glow_hdr_scale = 0.0 +glow_hdr_luminance_cap = 5.63 +fog_mode = 1 +fog_light_color = Color(0.13725491, 0.39215687, 0.6666667, 1) +fog_density = 0.1831 +fog_sky_affect = 0.0 +volumetric_fog_sky_affect = 0.0 +adjustment_enabled = true +adjustment_saturation = 1.3 + +[sub_resource type="SphereMesh" id="SphereMesh_ypkjt"] +flip_faces = true + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_2vcx4"] +shading_mode = 0 +albedo_color = Color(0.5882353, 0.7019608, 0.85882354, 1) +albedo_texture = ExtResource("1_ckj7g") + +[sub_resource type="Animation" id="Animation_pxmsf"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite3D:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0.99999994, 1, 0.99999994)] +} + +[sub_resource type="Animation" id="Animation_u7lr8"] +resource_name = "hover" +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite3D:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.46666667, 1), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector3(0.99999994, 1, 0.99999994), Vector3(1.2, 1.2, 1.2), Vector3(0.99999994, 1, 0.99999994)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_1hq1b"] +_data = { +&"RESET": SubResource("Animation_pxmsf"), +&"hover": SubResource("Animation_u7lr8") +} + +[sub_resource type="BoxShape3D" id="BoxShape3D_clhvw"] +size = Vector3(2.2807465, 0.83758545, 2.7016602) + +[sub_resource type="LabelSettings" id="LabelSettings_vk5gh"] +font = ExtResource("8_erosk") +font_size = 36 + +[sub_resource type="ViewportTexture" id="ViewportTexture_vk5gh"] +viewport_path = NodePath("BaseNameSubViewport") + +[sub_resource type="ViewportTexture" id="ViewportTexture_erosk"] +viewport_path = NodePath("BaseNumberSubViewport") + +[node name="RelayBase" type="Node3D" unique_id=992183226] +script = ExtResource("1_6cyeg") +base_name = "Mercury" +base_number = "001" + +[node name="Sun" type="DirectionalLight3D" parent="." unique_id=817205050] +unique_name_in_owner = true +transform = Transform3D(0.47539747, 0.8797709, -0.0008190346, 0.081792034, -0.043270595, 0.99570966, 0.8759608, -0.4734249, -0.09252897, 14.5135975, 59.967155, 0.5521965) +light_energy = 16.0 +shadow_enabled = true +shadow_blur = 8.0 + +[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=261530481] +environment = SubResource("Environment_uxagy") + +[node name="DaySky" type="MeshInstance3D" parent="WorldEnvironment" unique_id=1197428301] +transform = Transform3D(1000, 0, 0, 0, 1000, 0, 0, 0, 1000, 0.00041627884, 0.019779027, -0.019804716) +mesh = SubResource("SphereMesh_ypkjt") +surface_material_override/0 = SubResource("StandardMaterial3D_2vcx4") + +[node name="Exit" type="Area3D" parent="." unique_id=553593986 node_paths=PackedStringArray("hover_animation_player")] +unique_name_in_owner = true +transform = Transform3D(4.366728e-08, -0.99899095, 0.044909704, -1, -4.371139e-08, 0, 1.963069e-09, -0.044909704, -0.99899095, -0.15007031, 1.2682863, 0.032186985) +script = ExtResource("3_xuy43") +hover_animation_player = NodePath("HoverAnimationPlayer") +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="Sprite3D" type="Sprite3D" parent="Exit" unique_id=736012003] +transform = Transform3D(-4.3711385e-08, -1, -4.3711385e-08, 0, -4.371139e-08, 0.99999994, -0.99999994, 4.371139e-08, 1.9106853e-15, 0.1646713, -0.017980576, 0) +pixel_size = 0.005 +texture = ExtResource("4_140ad") + +[node name="HoverAnimationPlayer" type="AnimationPlayer" parent="Exit" unique_id=131585105] +libraries/ = SubResource("AnimationLibrary_1hq1b") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Exit" unique_id=1652331659] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.14810944, -0.081207275, 0.35961914) +shape = SubResource("BoxShape3D_clhvw") + +[node name="Player3D" parent="." unique_id=549819967 instance=ExtResource("2_6cyeg")] +unique_name_in_owner = true +transform = Transform3D(-0.044909663, 0, -0.99899095, 0, 1, 0, 0.99899095, 0, -0.044909663, 0.78073347, 1.1698408, 0) +speed = 5.0 + +[node name="Model" parent="." unique_id=865699676 instance=ExtResource("1_dm7op")] + +[node name="OmniLight3D" type="OmniLight3D" parent="." unique_id=505969815] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.941148, 0.43394446, 0.16130233) +light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) +light_energy = 7.245 +shadow_enabled = true +shadow_blur = 8.08 +omni_range = 21.258795 + +[node name="OmniLight3D2" type="OmniLight3D" parent="." unique_id=329038032] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15.346289, 0.43394446, 0.16130233) +light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) +light_energy = 7.245 +shadow_enabled = true +shadow_blur = 8.08 +omni_range = 21.258795 + +[node name="Incubators" type="Node3D" parent="." unique_id=1990164318] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 15.532284, 0, 0) + +[node name="Incubator" parent="Incubators" unique_id=1488068427 instance=ExtResource("5_uxagy")] +transform = Transform3D(-4.371139e-08, 0, 1, 0, 1, 0, -1, 0, -4.371139e-08, 5, 0, 0) + +[node name="Incubator2" parent="Incubators" unique_id=1350320582 instance=ExtResource("5_uxagy")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 5) + +[node name="Incubator4" parent="Incubators" unique_id=1245176074 instance=ExtResource("5_uxagy")] +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0, 0, -5) + +[node name="Incubator5" parent="Incubators" unique_id=902267532 instance=ExtResource("5_uxagy")] +transform = Transform3D(0.49999997, 0, 0.8660254, 0, 1, 0, -0.8660254, 0, 0.49999997, 4.3301277, 0, 2.5) + +[node name="Incubator6" parent="Incubators" unique_id=1124375246 instance=ExtResource("5_uxagy")] +transform = Transform3D(0.8660254, 0, -0.5, 0, 1, 0, 0.5, 0, 0.8660254, -2.5, 0, 4.330127) + +[node name="Incubator7" parent="Incubators" unique_id=1684945958 instance=ExtResource("5_uxagy")] +transform = Transform3D(-0.50000006, 0, -0.8660254, 0, 1, 0, 0.8660254, 0, -0.50000006, -4.330127, 0, -2.5) + +[node name="Incubator8" parent="Incubators" unique_id=1614069614 instance=ExtResource("5_uxagy")] +transform = Transform3D(-0.86602545, 0, 0.4999999, 0, 1, 0, -0.4999999, 0, -0.86602545, 2.5, 0, -4.330127) + +[node name="Incubator9" parent="Incubators" unique_id=63224815 instance=ExtResource("5_uxagy")] +transform = Transform3D(0.8660254, 0, 0.50000006, 0, 1, 0, -0.50000006, 0, 0.8660254, 2.5, 0, 4.330127) + +[node name="Incubator10" parent="Incubators" unique_id=1415684558 instance=ExtResource("5_uxagy")] +transform = Transform3D(0.5, 0, -0.8660254, 0, 1, 0, 0.8660254, 0, 0.5, -4.330127, 0, 2.5) + +[node name="Incubator11" parent="Incubators" unique_id=229064256 instance=ExtResource("5_uxagy")] +transform = Transform3D(-0.8660254, 0, -0.49999997, 0, 1, 0, 0.49999997, 0, -0.8660254, -2.5, 0, -4.330127) + +[node name="Incubator12" parent="Incubators" unique_id=1303445453 instance=ExtResource("5_uxagy")] +transform = Transform3D(-0.50000006, 0, 0.8660253, 0, 1, 0, -0.8660253, 0, -0.50000006, 4.3301277, 0, -2.5) + +[node name="OrchidSaver" parent="." unique_id=381308711 instance=ExtResource("6_2vcx4")] +unique_name_in_owner = true +transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 4.9759607, 0.131, 0.05400467) +screen_icon = ExtResource("7_erosk") +screen_text = "DOWNLOAD_ORCHID_DATA_TO_LOCAL_SERVERS" + +[node name="BaseNumberSubViewport" type="SubViewport" parent="." unique_id=1612608943] +disable_3d = true +transparent_bg = true +size = Vector2i(150, 50) + +[node name="BaseNumberLabel" type="Label" parent="BaseNumberSubViewport" unique_id=1551857685] +unique_name_in_owner = true +modulate = Color(1, 0.6509804, 0.09019608, 1) +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +text = "001" +label_settings = SubResource("LabelSettings_vk5gh") +horizontal_alignment = 2 +vertical_alignment = 1 +autowrap_mode = 3 + +[node name="BaseNameSubViewport" type="SubViewport" parent="." unique_id=194154638] +disable_3d = true +transparent_bg = true +size = Vector2i(350, 50) + +[node name="BaseNameLabel" type="Label" parent="BaseNameSubViewport" unique_id=27065726] +unique_name_in_owner = true +modulate = Color(1, 0.6509804, 0.09019608, 1) +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +text = "Mercury" +label_settings = SubResource("LabelSettings_vk5gh") +vertical_alignment = 1 +autowrap_mode = 3 + +[node name="BaseNameFront" type="Sprite3D" parent="." unique_id=1771645294] +transform = Transform3D(-0.570427, 0, -0.82134837, 0, 1, 0, 0.82134837, 0, -0.570427, 7.496, 1.9, 2.181) +pixel_size = 0.005 +shaded = true +double_sided = false +texture = SubResource("ViewportTexture_vk5gh") + +[node name="BaseNumberFront" type="Sprite3D" parent="." unique_id=1308171461] +transform = Transform3D(0.6104354, 0, -0.79206604, 0, 1, 0, 0.79206604, 0, 0.6104354, 7.81909, 1.9, -1.6990184) +pixel_size = 0.005 +shaded = true +double_sided = false +texture = SubResource("ViewportTexture_erosk") + +[node name="BaseNameBack" type="Sprite3D" parent="." unique_id=1023260980] +transform = Transform3D(0.36741042, 0, 0.9300589, 0, 1, 0, -0.9300589, 0, 0.36741042, 10.193348, 1.9, -2.1791058) +pixel_size = 0.005 +shaded = true +double_sided = false +texture = SubResource("ViewportTexture_vk5gh") + +[node name="BaseNumberBack" type="Sprite3D" parent="." unique_id=1854456199] +transform = Transform3D(-0.31677487, 0, 0.9485008, 0, 1, 0, -0.9485008, 0, -0.31677487, 9.994016, 1.9, 1.7119241) +pixel_size = 0.005 +shaded = true +double_sided = false +texture = SubResource("ViewportTexture_erosk") + +[connection signal="clicked" from="Exit" to="." method="_on_exit_clicked"] +[connection signal="clicked" from="OrchidSaver" to="." method="_on_orchid_saver_clicked"] diff --git a/stages/3d_scenes/relay_base/scripts/relay_base.gd b/stages/3d_scenes/relay_base/scripts/relay_base.gd new file mode 100644 index 0000000..b326a46 --- /dev/null +++ b/stages/3d_scenes/relay_base/scripts/relay_base.gd @@ -0,0 +1,51 @@ +@tool +extends Node3D +class_name RelayBase + +signal orchid_saved + +@export var base_name : String = "" : set = set_base_name +@export var base_number : String = "" : set = set_base_number +@onready var orchid_saver : OrchidSaver = %OrchidSaver +@onready var player : Player3D = %Player3D +var exit_scene : Scene = null +var dead_orchid : Node3D + + +func _ready(): + if not Engine.is_editor_hint(): + Input.mouse_mode = Input.MOUSE_MODE_CAPTURED + + set_base_name() + set_base_number() + +func set_base_name(bn := base_name): + base_name = bn + if is_node_ready(): + %BaseNameLabel.text = base_name + +func set_base_number(bn := base_number): + base_number = bn + if is_node_ready(): + %BaseNumberLabel.text = base_number + %Sun.rotation.y = hash(base_number) % 360 + +func get_incubators() -> Array[Incubator]: + var incubators = [] as Array[Incubator] + + for c in %Incubators.get_children(): + if c is Incubator: + incubators.append(c) + + return incubators + +func _on_exit_clicked(): + if dead_orchid: + GameInfo.game_data.dead_orchid_position = dead_orchid.position + GameInfo.game_data.dead_orchid_rotation = dead_orchid.rotation + + if exit_scene: + SceneManager.change_to_scene(exit_scene) + +func _on_orchid_saver_clicked(): + orchid_saved.emit() diff --git a/stages/3d_scenes/relay_base/scripts/relay_base.gd.uid b/stages/3d_scenes/relay_base/scripts/relay_base.gd.uid new file mode 100644 index 0000000..3f613f1 --- /dev/null +++ b/stages/3d_scenes/relay_base/scripts/relay_base.gd.uid @@ -0,0 +1 @@ +uid://dkeuwqo7xdlab diff --git a/stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend b/stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend index b1138c4..691f7d1 100644 Binary files a/stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend and b/stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend differ diff --git a/stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend1 b/stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend1 index fe21204..3921c52 100644 Binary files a/stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend1 and b/stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend1 differ diff --git a/stages/3d_scenes/ship_garage/scripts/ship_garage.gd b/stages/3d_scenes/ship_garage/scripts/ship_garage.gd index 6bf6ff2..71794ac 100644 --- a/stages/3d_scenes/ship_garage/scripts/ship_garage.gd +++ b/stages/3d_scenes/ship_garage/scripts/ship_garage.gd @@ -1,6 +1,6 @@ extends Node3D -const DIALOG_PATH = "res://dialogs/timelines/story/demeter_ship_presentation.dtl" +const DIALOG_PATH = "res://dialogs/timelines/tutorial/demeter_ship_presentation.dtl" var jingle_played := false @@ -9,11 +9,11 @@ func _input(_e): if ( Input.is_action_pressed("drop") and Input.is_action_pressed("move_right") - and Input.is_action_pressed("move_left") + and Input.is_action_pressed("move_left") and Input.is_action_just_pressed("action") ): GameInfo.game_data.dialogs_done.append(DIALOG_PATH) - SceneManager.change_to_scene_id("COCKPIT") + finish_scene() # Called when the node enters the scene tree for the first time. func _ready(): @@ -24,8 +24,12 @@ func _ready(): %Phone.stop_audio() Dialogic.start(DIALOG_PATH) await Dialogic.timeline_ended - SceneManager.change_to_scene_id("COCKPIT") + finish_scene() +func finish_scene(): + GameInfo.game_data.finish_story_step() + GameInfo.game_data.start_run() + SceneManager.change_to_scene(CockpitScene.new()) func _on_jingle_area_body_entered(body: Node3D): if body is Player3D and not jingle_played: diff --git a/stages/3d_scenes/ship_garage/ship_garage.tscn b/stages/3d_scenes/ship_garage/ship_garage.tscn index 1a9c45b..4fbbcd9 100644 --- a/stages/3d_scenes/ship_garage/ship_garage.tscn +++ b/stages/3d_scenes/ship_garage/ship_garage.tscn @@ -1,31 +1,15 @@ [gd_scene format=3 uid="uid://c830fmv54pyk1"] [ext_resource type="Script" uid="uid://cx5dq0shygboa" path="res://stages/3d_scenes/ship_garage/scripts/ship_garage.gd" id="1_43lym"] -[ext_resource type="Shader" uid="uid://bv2rghn44mrrf" path="res://stages/title_screen/resources/shaders/stars.gdshader" id="1_cpd4q"] [ext_resource type="Texture2D" uid="uid://cww35xu1yqivp" path="res://stages/3d_scenes/cockpit_scene/assets/textures/sky.png" id="2_yl6nj"] [ext_resource type="PackedScene" uid="uid://da7a74dg30q1l" path="res://entities/player_3d/player_3D.tscn" id="3_g14ji"] [ext_resource type="PackedScene" uid="uid://bmkmhycmvtjfl" path="res://stages/3d_scenes/ship_garage/assets/3d/ship_garage.blend" id="4_g14ji"] [ext_resource type="PackedScene" uid="uid://blvetnnib2ks0" path="res://stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend" id="5_43lym"] [ext_resource type="PackedScene" uid="uid://csx7d5khjd6y5" path="res://entities/interactable_3d/phone/phone.tscn" id="7_dkh4e"] - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_43lym"] -shader = ExtResource("1_cpd4q") -shader_parameter/sky_color = Color(0.03, 0.05, 0.11, 1) -shader_parameter/star_base_color = Color(0.8, 1, 0.3, 1) -shader_parameter/star_hue_offset = 0.6 -shader_parameter/star_intensity = 0.08 -shader_parameter/star_twinkle_speed = 0.8 -shader_parameter/star_twinkle_intensity = 0.2 -shader_parameter/layer_scale = 20.0 -shader_parameter/layer_scale_step = 10.0 -shader_parameter/layers_count = 3 - -[sub_resource type="Sky" id="Sky_dkh4e"] -sky_material = SubResource("ShaderMaterial_43lym") +[ext_resource type="Material" uid="uid://cr7bp4fhh1ipr" path="res://entities/player_3d/resources/materials/post_process_quad.tres" id="7_ovhgo"] [sub_resource type="Environment" id="Environment_ovhgo"] background_mode = 2 -sky = SubResource("Sky_dkh4e") sky_custom_fov = 61.7 ambient_light_source = 3 ambient_light_color = Color(1, 1, 1, 1) @@ -61,6 +45,46 @@ albedo_texture = ExtResource("2_yl6nj") [sub_resource type="BoxShape3D" id="BoxShape3D_dkh4e"] size = Vector3(20.170532, 9.8758545, 1) +[sub_resource type="QuadMesh" id="QuadMesh_jwd5g"] +size = Vector2(2, 2) + +[sub_resource type="Animation" id="Animation_lkqnn"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("%TrailerCamera/..:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 0, 0)] +} + +[sub_resource type="Animation" id="Animation_v4tdl"] +resource_name = "trailer" +length = 20.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("%TrailerCamera/..:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 19.933332), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector3(0, 0, 0), Vector3(0, 3.1415927, 0)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_vwv06"] +_data = { +&"RESET": SubResource("Animation_lkqnn"), +&"trailer": SubResource("Animation_v4tdl") +} + [node name="ShipGarage" type="Node3D" unique_id=707746738] script = ExtResource("1_43lym") @@ -68,6 +92,8 @@ script = ExtResource("1_43lym") transform = Transform3D(1, 0, 0, 0, 0.25881907, 0.9659258, 0, -0.9659258, 0.25881907, 30.708645, 59.967155, 32.405155) light_energy = 16.0 shadow_enabled = true +shadow_bias = 0.025 +shadow_blur = 8.0 [node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1067763548] environment = SubResource("Environment_ovhgo") @@ -82,7 +108,7 @@ unique_name_in_owner = true transform = Transform3D(0.70710677, 0, 0.70710677, 0, 1, 0, -0.70710677, 0, 0.70710677, 31.365097, -1.8906436, 31.188667) speed = 5.0 -[node name="ship_garage" parent="." unique_id=1531736402 instance=ExtResource("4_g14ji")] +[node name="ship_garage" parent="." unique_id=616114798 instance=ExtResource("4_g14ji")] [node name="ContourLight" type="Node3D" parent="ship_garage" unique_id=550025035] @@ -91,6 +117,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -16.591785, 0.35355997, 8.740 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D11" type="OmniLight3D" parent="ship_garage/ContourLight" unique_id=2048991137] @@ -98,6 +125,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.7106285, 0.35355997, 16.91 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D12" type="OmniLight3D" parent="ship_garage/ContourLight" unique_id=65773175] @@ -105,6 +133,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -13.056013, 0.35355997, 13.63 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="ContourLight2" type="Node3D" parent="ship_garage" unique_id=1796913469] @@ -115,6 +144,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -16.591785, 0.35355997, 8.740 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D11" type="OmniLight3D" parent="ship_garage/ContourLight2" unique_id=670102541] @@ -122,6 +152,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.7106285, 0.35355997, 16.91 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D12" type="OmniLight3D" parent="ship_garage/ContourLight2" unique_id=1890812582] @@ -129,6 +160,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -13.056013, 0.35355997, 13.63 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="ContourLight3" type="Node3D" parent="ship_garage" unique_id=1350477936] @@ -139,6 +171,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -16.591785, 0.35355997, 8.740 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D11" type="OmniLight3D" parent="ship_garage/ContourLight3" unique_id=1267181375] @@ -146,6 +179,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.7106285, 0.35355997, 16.91 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D12" type="OmniLight3D" parent="ship_garage/ContourLight3" unique_id=1105689331] @@ -153,6 +187,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -13.056013, 0.35355997, 13.63 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="ContourLight4" type="Node3D" parent="ship_garage" unique_id=1659332102] @@ -163,6 +198,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -16.591785, 0.35355997, 8.740 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D11" type="OmniLight3D" parent="ship_garage/ContourLight4" unique_id=683595114] @@ -170,6 +206,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -7.7106285, 0.35355997, 16.91 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D12" type="OmniLight3D" parent="ship_garage/ContourLight4" unique_id=919630929] @@ -177,6 +214,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -13.056013, 0.35355997, 13.63 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D" type="OmniLight3D" parent="ship_garage" unique_id=1914600869] @@ -184,6 +222,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.37195766, 0.5465579, -0.44 light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 7.245 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D2" type="OmniLight3D" parent="ship_garage" unique_id=1994007446] @@ -191,6 +230,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 18.143, 40) light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 12.857 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D3" type="OmniLight3D" parent="ship_garage" unique_id=97805521] @@ -198,6 +238,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 18.143, -40) light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 12.857 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D4" type="OmniLight3D" parent="ship_garage" unique_id=1702169236] @@ -205,6 +246,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 40, 18.143, 0) light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 12.857 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D5" type="OmniLight3D" parent="ship_garage" unique_id=1091097365] @@ -212,6 +254,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -40, 18.143, 0) light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 12.857 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D6" type="OmniLight3D" parent="ship_garage" unique_id=1135571571] @@ -219,6 +262,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 18.143, 20) light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 12.857 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D7" type="OmniLight3D" parent="ship_garage" unique_id=433280269] @@ -226,6 +270,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 20, 18.143, -20) light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 12.857 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D8" type="OmniLight3D" parent="ship_garage" unique_id=1957453089] @@ -233,6 +278,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 18.143, 20) light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 12.857 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="OmniLight3D9" type="OmniLight3D" parent="ship_garage" unique_id=1673023896] @@ -240,10 +286,30 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -20, 18.143, -20) light_color = Color(0.8780363, 0.49553913, 0.4937222, 1) light_energy = 12.857 shadow_enabled = true +shadow_blur = 8.0 omni_range = 21.258795 [node name="cockpit2" parent="." unique_id=825141342 instance=ExtResource("5_43lym")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.37195766, 2.8968668, -0.44411802) +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.37195766, 5.651189, -0.44411802) + +[node name="Skeleton3D" parent="cockpit2/Armature" parent_id_path=PackedInt32Array(825141342, 368440226) index="0" unique_id=1318180746] +bones/0/rotation = Quaternion(-0.40661332, 0.5616425, 0.6145974, 0.37615627) +bones/1/rotation = Quaternion(0.07885064, -0.1681597, -0.7000427, 0.6895253) +bones/2/rotation = Quaternion(0.4066133, 0.56164247, 0.61459726, -0.37615627) +bones/3/rotation = Quaternion(0.078850605, 0.16815974, 0.7000427, 0.6895253) + +[node name="WinkEnd_R" parent="cockpit2/Armature/Skeleton3D" index="0" unique_id=1435098475] +transform = Transform3D(0.91645914, -0.396169, -0.0561504, 0.20627528, 0.34753403, 0.914697, -0.34286055, -0.8498649, 0.40022057, -11.399944, -1.0682703, 4.7686367) + +[node name="Wing_R" parent="cockpit2/Armature/Skeleton3D" index="1" unique_id=891044283] +transform = Transform3D(-0.3863442, -0.9191118, -0.07727623, 0.0056266785, -0.08612847, 0.99626815, -0.9223375, 0.3844677, 0.038446784, 0, 0, 0) + +[node name="WinkEnd_L" parent="cockpit2/Armature/Skeleton3D" index="2" unique_id=908817672] +transform = Transform3D(0.9164591, 0.39616904, 0.056150444, -0.20627525, 0.34753394, 0.914697, 0.34286034, -0.8498648, 0.40022054, 11.399945, -1.0682689, 4.768635) + +[node name="Wing_L" parent="cockpit2/Armature/Skeleton3D" index="3" unique_id=74621525] +transform = Transform3D(-0.3863442, 0.91911185, 0.07727614, -0.0056266487, -0.086128354, 0.9962681, 0.92233753, 0.38446754, 0.038446724, 0, 0, 0) [node name="Phone" parent="." unique_id=429299908 instance=ExtResource("7_dkh4e")] unique_name_in_owner = true @@ -256,4 +322,22 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 22.818235, 0, 22.5019) transform = Transform3D(0.70710677, 0, 0.70710677, 0, 1, 0, -0.70710677, 0, 0.70710677, 0.009346008, 4.4379272, 0.18450356) shape = SubResource("BoxShape3D_dkh4e") +[node name="Node3D" type="Node3D" parent="." unique_id=7625722] + +[node name="TrailerCamera" type="Camera3D" parent="Node3D" unique_id=1952510574] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 0.9659259, -0.25881907, 0, 0.25881907, 0.9659258, 0, 3, 17) +near = 0.003 + +[node name="MeshInstance3D" type="MeshInstance3D" parent="Node3D/TrailerCamera" unique_id=1691754690] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.263265e-08, 0, -0.7177747) +mesh = SubResource("QuadMesh_jwd5g") +surface_material_override/0 = ExtResource("7_ovhgo") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="Node3D/TrailerCamera" unique_id=1852528578] +libraries/ = SubResource("AnimationLibrary_vwv06") +autoplay = &"trailer" + [connection signal="body_entered" from="JingleArea" to="." method="_on_jingle_area_body_entered"] + +[editable path="cockpit2"] diff --git a/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine.blend b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine.blend new file mode 100644 index 0000000..18e382f Binary files /dev/null and b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine.blend differ diff --git a/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine.blend.import b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine.blend.import new file mode 100644 index 0000000..2b4b844 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine.blend.import @@ -0,0 +1,73 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://5l3wve81irlc" +path="res://.godot/imported/vending_machine.blend-d2b640c8f4d0c595cec0b5e84bca50ad.scn" + +[deps] + +source_file="res://stages/3d_scenes/vending_machine_room/assets/3d/vending_machine.blend" +dest_files=["res://.godot/imported/vending_machine.blend-d2b640c8f4d0c595cec0b5e84bca50ad.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Glass": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/glass_3d.tres", +"use_external/path": "uid://b5vlcdry8vtgi" +}, +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend new file mode 100644 index 0000000..60559c2 Binary files /dev/null and b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend differ diff --git a/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend.import b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend.import new file mode 100644 index 0000000..39c0651 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend.import @@ -0,0 +1,68 @@ +[remap] + +importer="scene" +importer_version=1 +type="PackedScene" +uid="uid://2qxf6qj8tnlk" +path="res://.godot/imported/vending_machine_room.blend-0bcded09a5a1444815bdcab5bef77fff.scn" + +[deps] + +source_file="res://stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend" +dest_files=["res://.godot/imported/vending_machine_room.blend-0bcded09a5a1444815bdcab5bef77fff.scn"] + +[params] + +nodes/root_type="" +nodes/root_name="" +nodes/root_script=null +nodes/apply_root_scale=true +nodes/root_scale=1.0 +nodes/import_as_skeleton_bones=false +nodes/use_name_suffixes=true +nodes/use_node_type_suffixes=true +meshes/ensure_tangents=true +meshes/generate_lods=true +meshes/create_shadow_meshes=true +meshes/light_baking=1 +meshes/lightmap_texel_size=0.2 +meshes/force_disable_compression=false +skins/use_named_skins=true +animation/import=true +animation/fps=30 +animation/trimming=false +animation/remove_immutable_tracks=true +animation/import_rest_as_RESET=false +import_script/path="" +materials/extract=0 +materials/extract_format=0 +materials/extract_path="" +_subresources={ +"materials": { +"Material": { +"use_external/enabled": true, +"use_external/fallback_path": "res://common/assets/materials/default_3d.tres", +"use_external/path": "uid://dvvi1k5c5iowc" +} +} +} +blender/nodes/visible=0 +blender/nodes/active_collection_only=false +blender/nodes/punctual_lights=true +blender/nodes/cameras=true +blender/nodes/custom_properties=true +blender/nodes/modifiers=1 +blender/meshes/colors=false +blender/meshes/uvs=true +blender/meshes/normals=true +blender/meshes/export_geometry_nodes_instances=false +blender/meshes/gpu_instances=false +blender/meshes/tangents=true +blender/meshes/skins=2 +blender/meshes/export_bones_deforming_mesh_only=false +blender/materials/unpack_enabled=true +blender/materials/export_materials=1 +blender/animation/limit_playback=true +blender/animation/always_sample=true +blender/animation/group_tracks=true +gltf/naming_version=2 diff --git a/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend1 b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend1 new file mode 100644 index 0000000..6dfba6a Binary files /dev/null and b/stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend1 differ diff --git a/stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3 b/stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3 new file mode 100644 index 0000000..af4ebb8 Binary files /dev/null and b/stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3 differ diff --git a/stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3.import b/stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3.import new file mode 100644 index 0000000..6a4581a --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3.import @@ -0,0 +1,19 @@ +[remap] + +importer="mp3" +type="AudioStreamMP3" +uid="uid://bynxc84w03so4" +path="res://.godot/imported/alex_jauk-vending-machines-ambient-noise-236027.mp3-9aff8d37b15f5aeb214a1b811e990715.mp3str" + +[deps] + +source_file="res://stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3" +dest_files=["res://.godot/imported/alex_jauk-vending-machines-ambient-noise-236027.mp3-9aff8d37b15f5aeb214a1b811e990715.mp3str"] + +[params] + +loop=true +loop_offset=0.0 +bpm=0.0 +beat_count=0 +bar_beats=4 diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_3d.gd b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_3d.gd new file mode 100644 index 0000000..ef593f4 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_3d.gd @@ -0,0 +1,211 @@ +@tool +extends Node3D +class_name VendingMachine3d + +const LINE_OBJECT_NUMBER = 5 +const LINE_OBJECT_SEPARATION = Vector3.LEFT * 0.2 +const FALLING_OBJECT_LINE_SHIFT = Vector3.FORWARD * 0.3 + +enum State {CHOOSE,PAY,FETCH,DONE, OFF} +enum ChooseState {NONE,FIRST,SECOND} + +signal used + +@export_tool_button("Update", "Callable") var update_action = update + +@export_tool_button("Fall Object 1", "Callable") var fall_object_1_action = fall_object_1 +@export_tool_button("Fall Object 1", "Callable") var fall_object_2_action = fall_object_2 + +@export var state : State = State.CHOOSE : set = set_state +@export var choose_state : ChooseState = ChooseState.NONE +@export var artefact_1 : Artefact = null : set = set_artefact_1 +@export var artefact_2 : Artefact = null : set = set_artefact_2 +@export var price : VendingMachinePrice = null : set = set_price + +# func _input(_e): +# if Input.is_action_just_pressed("action"): +# fall_object([ +# %Line1, +# %Line2, +# %Line3, +# %Line4 +# ].pick_random()) + +func _ready(): + update() + +func update(): + set_artefact_1() + set_artefact_2() + set_state() + set_price() + +func set_state(s := state): + state = s + %Select1Interactable.visible = s == State.CHOOSE or s == State.PAY + %Select1Interactable.interactable = (s == State.CHOOSE or s == State.PAY) and artefact_1 != null + + %Select2Interactable.visible = s == State.CHOOSE or s == State.PAY + %Select2Interactable.interactable = s == State.CHOOSE or s == State.PAY and artefact_2 != null + + %PayInteractable.visible = s == State.PAY + %PayInteractable.interactable = s == State.PAY + + %FetchInteractable.visible = s == State.FETCH + %FetchInteractable.interactable = s == State.FETCH + + %TopScreen.visible = s != State.OFF + %InfoScreen.visible = s != State.OFF + %PriceScreen.visible = s != State.OFF + %Light.visible = s != State.OFF + %SoundEffect.playing = s != State.OFF + + match state: + State.CHOOSE: + %InfoScreenLabel.text = "CHOOSE_AN_ITEM" + State.PAY: + if get_choosen_artefact(): + var choosen_artefact_name = get_choosen_artefact().get_artefact_name() + %InfoScreenLabel.text = tr("PAY_THE_PRICE_FOR").format({ + "item_name": tr(choosen_artefact_name), + }) + State.FETCH: + %InfoScreenLabel.text = "GET_YOUR_ITEM" + State.DONE: + %InfoScreenLabel.text = "THANK_YOU_FOR_YOUR_PURCHASE" + +func set_artefact_1(a := artefact_1): + if is_node_ready(): + if a: + fill_lines(%Line1, a.get_3d_scene().instantiate()) + fill_lines(%Line2, a.get_3d_scene().instantiate()) + else: + clear_line(%Line1) + clear_line(%Line2) + %Select1Interactable.artefact = a + artefact_1 = a + +func set_artefact_2(a := artefact_2): + if is_node_ready(): + if a: + fill_lines(%Line3, a.get_3d_scene().instantiate()) + fill_lines(%Line4, a.get_3d_scene().instantiate()) + else: + clear_line(%Line3) + clear_line(%Line4) + %Select2Interactable.artefact = a + artefact_2 = a + +func set_price(p := price): + if p and is_node_ready(): + %PriceScreenLabel.text = p.get_text() + %PriceScreenIcon.texture = p.get_icon() + if not Engine.is_editor_hint(): + %PriceScreenContentSprite.modulate = Color.WHITE if p.can_pay(GameInfo.game_data.player_data) else Color.RED + %PayIcon.modulate = Color.WHITE if p.can_pay(GameInfo.game_data.player_data) else Color.RED + price = p + +func fall_object_1(): + fall_object([ + %Line1, + %Line2 + ].pick_random()) + +func fall_object_2(): + fall_object([ + %Line3, + %Line4 + ].pick_random()) + +func fall_object(from_line : Node3D): + if len(from_line.get_children()): + var falling_object = create_falling_object() + + var object = from_line.get_children().pick_random() as Node3D + + var falling_model = object.duplicate() + falling_model.position = Vector3.ZERO + falling_object.add_child(falling_model) + falling_object.freeze = false + object.queue_free() + + %FallingObjects.add_child(falling_object) + falling_object.global_position = object.global_position + FALLING_OBJECT_LINE_SHIFT.rotated(Vector3.UP, rotation.y) + +func clear_falling_objects(): + for c in %FallingObjects.get_children(): + c.queue_free() + +func create_falling_object() -> RigidBody3D: + var falling_object = RigidBody3D.new() + var falling_collider = CollisionShape3D.new() + var falling_shape = SphereShape3D.new() + falling_shape.radius = 0.08 + falling_collider.shape = falling_shape + falling_object.add_child(falling_collider) + falling_object.gravity_scale = 0.2 + + return falling_object + +func fill_lines(line : Node3D, object : Node3D): + clear_line(line) + + for i in range(LINE_OBJECT_NUMBER): + var new_object = object.duplicate() + line.add_child(new_object) + new_object.position = i * LINE_OBJECT_SEPARATION + +func clear_line(line : Node3D): + for c in line.get_children(): + c.queue_free() + +func get_choosen_artefact() -> Artefact: + if choose_state == ChooseState.FIRST: + return artefact_1 + elif choose_state == ChooseState.SECOND: + return artefact_2 + return null + +func _on_select_1_interactable_clicked(): + AudioManager.play_sfx("Screen_interaction") + choose_state = ChooseState.FIRST + state = State.PAY + + +func _on_select_2_interactable_clicked(): + AudioManager.play_sfx("Screen_interaction") + choose_state = ChooseState.SECOND + state = State.PAY + + +func _on_pay_interactable_clicked(): + if price.can_pay(GameInfo.game_data.player_data): + AudioManager.play_sfx("Drop") + price.pay(GameInfo.game_data.player_data) + if choose_state == ChooseState.FIRST: + fall_object_1() + else: + fall_object_2() + + state = State.FETCH + get_tree().create_timer(0.5).timeout.connect( + func (): + AudioManager.play_sfx("VendingMachineDrop") + ) + + +func _on_fetch_interactable_clicked(): + AudioManager.play_sfx("PickUp") + clear_falling_objects() + if GameInfo.game_data and GameInfo.game_data.current_region_data and GameInfo.game_data.current_run: + GameInfo.game_data.current_run.add_artefacts(get_choosen_artefact().duplicate()) + + state = State.DONE + + used.emit() + + get_tree().create_timer(3.).timeout.connect( + func (): + state = State.OFF + AudioManager.play_sfx("VendingMachineOff") + ) diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_3d.gd.uid b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_3d.gd.uid new file mode 100644 index 0000000..9bf7ecb --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_3d.gd.uid @@ -0,0 +1 @@ +uid://d1prpiulsaqhn diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_energy_price.gd b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_energy_price.gd new file mode 100644 index 0000000..edf9759 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_energy_price.gd @@ -0,0 +1,22 @@ +@tool +extends VendingMachinePrice +class_name VendingMachineEnergyPrice + +@export var energy : int + +func _init( + _energy := 1 +): + energy = _energy + +func get_icon() -> Texture: + return preload("res://common/icons/bolt.svg") + +func get_text() -> String: + return "%d" % energy + +func can_pay(player_data: PlayerData) -> bool: + return player_data.energy >= energy + +func pay(player_data: PlayerData) -> void: + player_data.energy -= energy \ No newline at end of file diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_energy_price.gd.uid b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_energy_price.gd.uid new file mode 100644 index 0000000..e497a82 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_energy_price.gd.uid @@ -0,0 +1 @@ +uid://bioeudg633y06 diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_price.gd b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_price.gd new file mode 100644 index 0000000..ea8b9d1 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_price.gd @@ -0,0 +1,10 @@ +@tool +@abstract +extends Resource +class_name VendingMachinePrice + + +@abstract func get_icon() -> Texture +@abstract func get_text() -> String +@abstract func can_pay(player_data: PlayerData) -> bool +@abstract func pay(player_data: PlayerData) -> void \ No newline at end of file diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_price.gd.uid b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_price.gd.uid new file mode 100644 index 0000000..d0e8ab7 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_price.gd.uid @@ -0,0 +1 @@ +uid://hixfit7u4hqs diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_room.gd b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_room.gd new file mode 100644 index 0000000..e9e3a88 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_room.gd @@ -0,0 +1,33 @@ +extends Node3D +class_name VendingMachineRoom + +func setup_room(door_id : int): + var rng := RandomNumberGenerator.new() + rng.seed = door_id + + Input.mouse_mode = Input.MOUSE_MODE_CAPTURED + + var all_vending_machines = %VendingMachines.get_children() as Array[VendingMachine3d] + var vending_machine : VendingMachine3d = all_vending_machines[rng.randi()%len(all_vending_machines)] + + var available_artefacts = GameInfo.game_data.progression_data.available_artefacts + var artefacts = [] + + while len(artefacts) < 2: + var artefact = available_artefacts[rng.randi()%len(available_artefacts)] + if artefacts.find_custom( + func (a : Artefact): return a.get_artefact_name() == artefact.get_artefact_name() + ) == -1: + artefacts.append(artefact) + + vending_machine.artefact_1 = artefacts[0] + vending_machine.artefact_2 = artefacts[1] + vending_machine.price = VendingMachineEnergyPrice.new(2) + vending_machine.state = VendingMachine3d.State.CHOOSE + vending_machine.used.connect( + func (): + GameInfo.game_data.current_region_data.completed_doors.append(door_id) + ) + +func _on_exit_clicked(): + SceneManager.change_to_scene(RegionScene.new(GameInfo.game_data.current_region_data)) diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_room.gd.uid b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_room.gd.uid new file mode 100644 index 0000000..53a9697 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_room.gd.uid @@ -0,0 +1 @@ +uid://miw8kvslhrao diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_select_interactable.gd b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_select_interactable.gd new file mode 100644 index 0000000..e70b675 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_select_interactable.gd @@ -0,0 +1,10 @@ +extends Interactable3D +class_name VendingMachineSelectInteractable + +@export var artefact : Artefact + +func card_info() -> CardInfo: + if artefact: + return artefact.card_info() + return null + diff --git a/stages/3d_scenes/vending_machine_room/scripts/vending_machine_select_interactable.gd.uid b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_select_interactable.gd.uid new file mode 100644 index 0000000..6baf7bd --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/scripts/vending_machine_select_interactable.gd.uid @@ -0,0 +1 @@ +uid://cpdtt25r2ne23 diff --git a/stages/3d_scenes/vending_machine_room/vending_machine_3d.tscn b/stages/3d_scenes/vending_machine_room/vending_machine_3d.tscn new file mode 100644 index 0000000..768ed66 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/vending_machine_3d.tscn @@ -0,0 +1,331 @@ +[gd_scene format=3 uid="uid://blva21dapmm68"] + +[ext_resource type="PackedScene" uid="uid://5l3wve81irlc" path="res://stages/3d_scenes/vending_machine_room/assets/3d/vending_machine.blend" id="1_28vvr"] +[ext_resource type="Script" uid="uid://d1prpiulsaqhn" path="res://stages/3d_scenes/vending_machine_room/scripts/vending_machine_3d.gd" id="1_awnyh"] +[ext_resource type="Script" uid="uid://bioeudg633y06" path="res://stages/3d_scenes/vending_machine_room/scripts/vending_machine_energy_price.gd" id="4_tvcj6"] +[ext_resource type="Script" uid="uid://bj4d1x8n8ina" path="res://entities/interactable_3d/interactable_3d.gd" id="5_babpq"] +[ext_resource type="Texture2D" uid="uid://bmersnaoira20" path="res://common/icons/building-store.svg" id="5_f6clw"] +[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="6_1vufv"] +[ext_resource type="Texture2D" uid="uid://3slhocr5wy3w" path="res://common/icons/hand-stop.svg" id="6_c54xj"] +[ext_resource type="Texture2D" uid="uid://cwewx7cdy085h" path="res://common/icons/help-hexagon.svg" id="7_1vufv"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="8_5gq8t"] +[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="9_p1py0"] +[ext_resource type="Script" uid="uid://cpdtt25r2ne23" path="res://stages/3d_scenes/vending_machine_room/scripts/vending_machine_select_interactable.gd" id="10_js246"] +[ext_resource type="AudioStream" uid="uid://bynxc84w03so4" path="res://stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3" id="12_js246"] + +[sub_resource type="Resource" id="Resource_vrdoi"] +script = ExtResource("4_tvcj6") +energy = 3 +metadata/_custom_type_script = "uid://bioeudg633y06" + +[sub_resource type="Environment" id="Environment_28vvr"] +ambient_light_source = 2 +ambient_light_color = Color(1, 1, 1, 1) +ambient_light_energy = 2.29 +tonemap_exposure = 0.62 + +[sub_resource type="Gradient" id="Gradient_f6clw"] +colors = PackedColorArray(0.13725491, 0.39215687, 0.6666667, 1, 0.14509805, 0.75686276, 0.2784314, 1) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_1vufv"] +gradient = SubResource("Gradient_f6clw") +width = 102 +height = 34 +fill_from = Vector2(0.491453, 1) +fill_to = Vector2(0.49158248, 0) + +[sub_resource type="ViewportTexture" id="ViewportTexture_5gq8t"] +viewport_path = NodePath("TopScreen/TopScreenContent") + +[sub_resource type="Gradient" id="Gradient_5gq8t"] +colors = PackedColorArray(0.13725491, 0.39215687, 0.6666667, 1, 0.14509805, 0.75686276, 0.2784314, 1) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_p1py0"] +gradient = SubResource("Gradient_5gq8t") +width = 41 +height = 52 +fill_from = Vector2(0.491453, 1) +fill_to = Vector2(0.49158248, 0) + +[sub_resource type="ViewportTexture" id="ViewportTexture_p1py0"] +viewport_path = NodePath("InfoScreen/InfoScreenContent") + +[sub_resource type="LabelSettings" id="LabelSettings_p1py0"] +font = ExtResource("8_5gq8t") +font_size = 15 + +[sub_resource type="Gradient" id="Gradient_js246"] +colors = PackedColorArray(0.13725491, 0.39215687, 0.6666667, 1, 0.14509805, 0.75686276, 0.2784314, 1) + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_tvcj6"] +gradient = SubResource("Gradient_js246") +width = 41 +height = 27 +fill_from = Vector2(0.491453, 1) +fill_to = Vector2(0.49158248, 0) + +[sub_resource type="ViewportTexture" id="ViewportTexture_js246"] +viewport_path = NodePath("PriceScreen/PriceScreenContent") + +[sub_resource type="LabelSettings" id="LabelSettings_tvcj6"] +font = ExtResource("8_5gq8t") +font_size = 30 + +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_p1py0"] +radius = 0.23339844 +height = 1.2451172 + +[sub_resource type="Animation" id="Animation_vrdoi"] +length = 0.001 + +[sub_resource type="Animation" id="Animation_sfrja"] +resource_name = "hover" +loop_mode = 1 + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_40f8c"] +_data = { +&"RESET": SubResource("Animation_vrdoi"), +&"hover": SubResource("Animation_sfrja") +} + +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_babpq"] +radius = 0.23339844 +height = 0.5097656 + +[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_ia2hc"] +radius = 0.23339844 +height = 0.8841553 + +[node name="VendingMachine3d" type="Node3D" unique_id=92614917] +script = ExtResource("1_awnyh") +price = SubResource("Resource_vrdoi") + +[node name="Model" parent="." unique_id=1183033196 instance=ExtResource("1_28vvr")] + +[node name="Line1" type="Node3D" parent="." unique_id=1631780989] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.30948043, 0.971, 0) + +[node name="Line2" type="Node3D" parent="." unique_id=29729480] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.30941665, 0.74758303, 0) + +[node name="Line3" type="Node3D" parent="." unique_id=532403895] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.30941665, 0.5122718, 0) + +[node name="Line4" type="Node3D" parent="." unique_id=290175423] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.30941665, 0.26622266, 0) + +[node name="FallingObjects" type="Node3D" parent="." unique_id=1744524061] +unique_name_in_owner = true + +[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1595767490] +environment = SubResource("Environment_28vvr") + +[node name="TopScreen" type="Sprite3D" parent="." unique_id=1430672096] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.10305387, 1.3142496, -0.5496552) +texture = SubResource("GradientTexture2D_1vufv") + +[node name="TopScreenContentSprite" type="Sprite3D" parent="TopScreen" unique_id=21415415] +transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, 0, 0, -0.026914358) +pixel_size = 0.003 +texture = SubResource("ViewportTexture_5gq8t") + +[node name="TopScreenContent" type="SubViewport" parent="TopScreen" unique_id=1108583219] +disable_3d = true +transparent_bg = true +size = Vector2i(341, 115) + +[node name="VBoxContainer" type="VBoxContainer" parent="TopScreen/TopScreenContent" unique_id=1069568148] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +alignment = 1 + +[node name="TopScreenIcon" type="TextureRect" parent="TopScreen/TopScreenContent/VBoxContainer" unique_id=22441432] +custom_minimum_size = Vector2(50, 50) +layout_mode = 2 +texture = ExtResource("5_f6clw") +expand_mode = 1 +stretch_mode = 5 + +[node name="TopScreenLabel" type="Label" parent="TopScreen/TopScreenContent/VBoxContainer" unique_id=1868758207] +layout_mode = 2 +text = "VENDING_MACHINE" +label_settings = ExtResource("6_1vufv") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="InfoScreen" type="Sprite3D" parent="." unique_id=1684330093] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.9165541, 0.7847517, -0.5685998) +texture = SubResource("GradientTexture2D_p1py0") + +[node name="InfoScreenContentSprite" type="Sprite3D" parent="InfoScreen" unique_id=1389338749] +transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, 0, 0, -0.026914358) +pixel_size = 0.003 +texture = SubResource("ViewportTexture_p1py0") + +[node name="InfoScreenContent" type="SubViewport" parent="InfoScreen" unique_id=475736608] +disable_3d = true +transparent_bg = true +size = Vector2i(122, 147) + +[node name="VBoxContainer" type="VBoxContainer" parent="InfoScreen/InfoScreenContent" unique_id=885857578] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +alignment = 1 + +[node name="InfoScreenIcon" type="TextureRect" parent="InfoScreen/InfoScreenContent/VBoxContainer" unique_id=350553652] +custom_minimum_size = Vector2(50, 50) +layout_mode = 2 +texture = ExtResource("7_1vufv") +expand_mode = 1 +stretch_mode = 5 + +[node name="InfoScreenLabel" type="Label" parent="InfoScreen/InfoScreenContent/VBoxContainer" unique_id=1569152531] +unique_name_in_owner = true +layout_mode = 2 +text = "CHOOSE_AN_ITEM" +label_settings = SubResource("LabelSettings_p1py0") +horizontal_alignment = 1 +vertical_alignment = 1 +autowrap_mode = 3 + +[node name="PriceScreen" type="Sprite3D" parent="." unique_id=204599448] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.9165541, 0.27790964, -0.5685998) +texture = SubResource("GradientTexture2D_tvcj6") + +[node name="PriceScreenContentSprite" type="Sprite3D" parent="PriceScreen" unique_id=833489935] +unique_name_in_owner = true +transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, 0, 0, -0.026914358) +pixel_size = 0.003 +texture = SubResource("ViewportTexture_js246") + +[node name="PriceScreenContent" type="SubViewport" parent="PriceScreen" unique_id=1939196004] +disable_3d = true +transparent_bg = true +size = Vector2i(134, 96) + +[node name="HBoxContainer" type="HBoxContainer" parent="PriceScreen/PriceScreenContent" unique_id=1566763310] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +alignment = 1 + +[node name="PriceScreenLabel" type="Label" parent="PriceScreen/PriceScreenContent/HBoxContainer" unique_id=718480172] +unique_name_in_owner = true +layout_mode = 2 +size_flags_vertical = 1 +text = "3" +label_settings = SubResource("LabelSettings_tvcj6") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="PriceScreenIcon" type="TextureRect" parent="PriceScreen/PriceScreenContent/HBoxContainer" unique_id=762921627] +unique_name_in_owner = true +custom_minimum_size = Vector2(50, 50) +layout_mode = 2 +texture = ExtResource("9_p1py0") +expand_mode = 1 +stretch_mode = 5 + +[node name="Select1Interactable" type="Area3D" parent="." unique_id=957239971] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.08462322, 0.884176, -0.18582645) +script = ExtResource("10_js246") +interactable = false +inspectable = true +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Select1Interactable" unique_id=794286242] +transform = Transform3D(-4.371139e-08, -1, 0, 1, -4.371139e-08, 0, 0, 0, 1, -0.0017700195, 0, -0.29349226) +shape = SubResource("CapsuleShape3D_p1py0") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="Select1Interactable" unique_id=668034332] +libraries/ = SubResource("AnimationLibrary_40f8c") + +[node name="Select2Interactable" type="Area3D" parent="." unique_id=1801318420] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.08462322, 0.381873, -0.18582645) +script = ExtResource("10_js246") +inspectable = true +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Select2Interactable" unique_id=923668306] +transform = Transform3D(-4.371139e-08, -1, 0, 1, -4.371139e-08, 0, 0, 0, 1, -0.0017700195, 0, -0.29349226) +shape = SubResource("CapsuleShape3D_p1py0") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="Select2Interactable" unique_id=1970787304] +libraries/ = SubResource("AnimationLibrary_40f8c") + +[node name="PayInteractable" type="Area3D" parent="." unique_id=1389533845] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.93483126, -0.122846335, -0.66631746) +visible = false +script = ExtResource("5_babpq") +interactable = false +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="CollisionShape3D" type="CollisionShape3D" parent="PayInteractable" unique_id=733209921] +transform = Transform3D(-4.371139e-08, -1, 0, 1, -4.371139e-08, 0, 0, 0, 1, -0.0017700195, 0, 0.09913331) +shape = SubResource("CapsuleShape3D_babpq") + +[node name="PayIcon" type="Sprite3D" parent="PayInteractable" unique_id=1480977661] +unique_name_in_owner = true +transform = Transform3D(1.3891655, 0, 0, 0, 1.2388325, -0.6285498, 0, 0.6285498, 1.2388325, 0, 0, 0) +pixel_size = 0.004 +texture = ExtResource("6_c54xj") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="PayInteractable" unique_id=1407995680] +libraries/ = SubResource("AnimationLibrary_40f8c") + +[node name="FetchInteractable" type="Area3D" parent="." unique_id=2063544686] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.13864326, -0.45181414, -0.66631746) +visible = false +script = ExtResource("5_babpq") +interactable = false +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="CollisionShape3D" type="CollisionShape3D" parent="FetchInteractable" unique_id=691431446] +transform = Transform3D(-4.371139e-08, -1, 0, 1, -4.371139e-08, 0, 0, 0, 1, -0.0017700195, 0, 0.09913331) +shape = SubResource("CapsuleShape3D_ia2hc") + +[node name="FetchIcon" type="Sprite3D" parent="FetchInteractable" unique_id=2088783242] +transform = Transform3D(1.1707262, 0, 0, 0, 1.0440322, -0.5297136, 0, 0.5297136, 1.0440322, 0, 0, 0) +pixel_size = 0.004 +texture = ExtResource("6_c54xj") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="FetchInteractable" unique_id=1814331959] +libraries/ = SubResource("AnimationLibrary_40f8c") + +[node name="Light" type="OmniLight3D" parent="." unique_id=23464893] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.089285016, 0.9888365, -0.40412843) +shadow_enabled = true +omni_range = 2.5571291 + +[node name="SoundEffect" type="AudioStreamPlayer3D" parent="." unique_id=496779284] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.19407654) +stream = ExtResource("12_js246") +volume_db = -25.143 +autoplay = true +bus = &"Sfx" + +[connection signal="clicked" from="Select1Interactable" to="." method="_on_select_1_interactable_clicked"] +[connection signal="clicked" from="Select2Interactable" to="." method="_on_select_2_interactable_clicked"] +[connection signal="clicked" from="PayInteractable" to="." method="_on_pay_interactable_clicked"] +[connection signal="clicked" from="FetchInteractable" to="." method="_on_fetch_interactable_clicked"] diff --git a/stages/3d_scenes/vending_machine_room/vending_machine_room.blend1 b/stages/3d_scenes/vending_machine_room/vending_machine_room.blend1 new file mode 100644 index 0000000..ba44a2d Binary files /dev/null and b/stages/3d_scenes/vending_machine_room/vending_machine_room.blend1 differ diff --git a/stages/3d_scenes/vending_machine_room/vending_machine_room.tscn b/stages/3d_scenes/vending_machine_room/vending_machine_room.tscn new file mode 100644 index 0000000..566bdbf --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/vending_machine_room.tscn @@ -0,0 +1,133 @@ +[gd_scene format=3 uid="uid://gnqodi7hw7sl"] + +[ext_resource type="Script" uid="uid://miw8kvslhrao" path="res://stages/3d_scenes/vending_machine_room/scripts/vending_machine_room.gd" id="1_1x1k5"] +[ext_resource type="PackedScene" uid="uid://da7a74dg30q1l" path="res://entities/player_3d/player_3D.tscn" id="4_dv00w"] +[ext_resource type="PackedScene" uid="uid://2qxf6qj8tnlk" path="res://stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend" id="5_1x1k5"] +[ext_resource type="Script" uid="uid://bj4d1x8n8ina" path="res://entities/interactable_3d/interactable_3d.gd" id="5_g3jtw"] +[ext_resource type="Texture2D" uid="uid://dex283rx00fjb" path="res://common/icons/logout.svg" id="6_i4cp5"] +[ext_resource type="PackedScene" uid="uid://blva21dapmm68" path="res://stages/3d_scenes/vending_machine_room/vending_machine_3d.tscn" id="6_rf1ya"] + +[sub_resource type="Environment" id="Environment_1x1k5"] +background_mode = 2 +sky_custom_fov = 61.7 +ambient_light_source = 3 +ambient_light_color = Color(1, 1, 1, 1) +ambient_light_sky_contribution = 0.85 +ambient_light_energy = 2.0 +reflected_light_source = 2 +tonemap_mode = 2 +tonemap_exposure = 0.7 +tonemap_white = 1.84 +glow_enabled = true +glow_intensity = 0.22 +glow_bloom = 0.22 +glow_hdr_threshold = 0.79 +glow_hdr_scale = 0.0 +glow_hdr_luminance_cap = 5.63 +fog_enabled = true +fog_mode = 1 +fog_light_color = Color(0.13725491, 0.39215687, 0.6666667, 1) +fog_density = 0.1831 +fog_aerial_perspective = 0.113 +fog_sky_affect = 0.0 +volumetric_fog_sky_affect = 0.0 +adjustment_enabled = true +adjustment_saturation = 1.3 + +[sub_resource type="Animation" id="Animation_pxmsf"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite3D:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0.99999994, 1, 0.99999994)] +} + +[sub_resource type="Animation" id="Animation_u7lr8"] +resource_name = "hover" +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite3D:scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.46666667, 1), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector3(0.99999994, 1, 0.99999994), Vector3(1.2, 1.2, 1.2), Vector3(0.99999994, 1, 0.99999994)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_gq4rr"] +_data = { +&"RESET": SubResource("Animation_pxmsf"), +&"hover": SubResource("Animation_u7lr8") +} + +[sub_resource type="BoxShape3D" id="BoxShape3D_0j6i6"] +size = Vector3(2.2807465, 0.83758545, 2.7016602) + +[node name="VendingMachineRoom" type="Node3D" unique_id=707746738] +script = ExtResource("1_1x1k5") + +[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1067763548] +environment = SubResource("Environment_1x1k5") + +[node name="Player3D" parent="." unique_id=549819967 instance=ExtResource("4_dv00w")] +unique_name_in_owner = true +transform = Transform3D(0, 0, -0.99999994, 0, 1, 0, 0.99999994, 0, 0, 4.944984, 1.2635367, 24.252193) +speed = 5.0 + +[node name="Model" parent="." unique_id=1777370304 instance=ExtResource("5_1x1k5")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.009907, 0, 24.24866) + +[node name="OmniLight3D" type="OmniLight3D" parent="." unique_id=1122387138] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.8885746, 1.075707, 25.081566) +light_color = Color(1, 0.6509804, 0.09019608, 1) + +[node name="Exit" type="Area3D" parent="." unique_id=446224653 node_paths=PackedStringArray("hover_animation_player")] +unique_name_in_owner = true +transform = Transform3D(-4.371139e-08, 1, 0, -1, -4.371139e-08, 0, 0, 0, 1, 3.680644, 1.1590724, 25.183067) +script = ExtResource("5_g3jtw") +hover_animation_player = NodePath("HoverAnimationPlayer") +metadata/_custom_type_script = "uid://bj4d1x8n8ina" + +[node name="Sprite3D" type="Sprite3D" parent="Exit" unique_id=1963479858] +transform = Transform3D(-4.3711385e-08, -1, -4.3711385e-08, 0, -4.371139e-08, 0.99999994, -0.99999994, 4.371139e-08, 1.9106853e-15, 0.1646713, -0.017980576, 0) +pixel_size = 0.005 +texture = ExtResource("6_i4cp5") + +[node name="HoverAnimationPlayer" type="AnimationPlayer" parent="Exit" unique_id=971962983] +libraries/ = SubResource("AnimationLibrary_gq4rr") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Exit" unique_id=1996267072] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.14810944, -0.081207275, 0.35961914) +shape = SubResource("BoxShape3D_0j6i6") + +[node name="VendingMachines" type="Node3D" parent="." unique_id=151258495] +unique_name_in_owner = true + +[node name="VendingMachine3d" parent="VendingMachines" unique_id=92614917 instance=ExtResource("6_rf1ya")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.409475, 0.7967659, 26.737188) +state = 4 + +[node name="VendingMachine3d4" parent="VendingMachines" unique_id=284398440 instance=ExtResource("6_rf1ya")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.409475, 0.7967659, 26.737188) +state = 4 + +[node name="VendingMachine3d2" parent="VendingMachines" unique_id=854345189 instance=ExtResource("6_rf1ya")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.4200993, 0.7967659, 26.737188) +state = 4 + +[node name="VendingMachine3d3" parent="VendingMachines" unique_id=589582853 instance=ExtResource("6_rf1ya")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.283085, 0.7967659, 26.737188) +state = 4 + +[connection signal="clicked" from="Exit" to="." method="_on_exit_clicked"] diff --git a/stages/3d_scenes/vending_machine_room/vending_machine_room.tscn13386183010.tmp b/stages/3d_scenes/vending_machine_room/vending_machine_room.tscn13386183010.tmp new file mode 100644 index 0000000..ca68412 --- /dev/null +++ b/stages/3d_scenes/vending_machine_room/vending_machine_room.tscn13386183010.tmp @@ -0,0 +1,100 @@ +[gd_scene format=3 uid="uid://gnqodi7hw7sl"] + +[ext_resource type="Script" uid="uid://miw8kvslhrao" path="res://stages/3d_scenes/vending_machine_room/scripts/vending_machine_room.gd" id="1_1x1k5"] +[ext_resource type="Shader" uid="uid://bv2rghn44mrrf" path="res://stages/title_screen/resources/shaders/stars.gdshader" id="2_fx15d"] +[ext_resource type="Texture2D" uid="uid://cww35xu1yqivp" path="res://stages/3d_scenes/cockpit_scene/assets/textures/sky.png" id="3_tc1s4"] +[ext_resource type="PackedScene" uid="uid://da7a74dg30q1l" path="res://entities/player_3d/player_3D.tscn" id="4_dv00w"] +[ext_resource type="PackedScene" uid="uid://2qxf6qj8tnlk" path="res://stages/3d_scenes/vending_machine_room/assets/3d/vending_machine_room.blend" id="5_1x1k5"] +[ext_resource type="PackedScene" uid="uid://blva21dapmm68" path="res://stages/3d_scenes/vending_machine_room/vending_machine_3d.tscn" id="6_rf1ya"] + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_mwti2"] +shader = ExtResource("2_fx15d") +shader_parameter/sky_color = Color(0.03, 0.05, 0.11, 1) +shader_parameter/star_base_color = Color(0.8, 1, 0.3, 1) +shader_parameter/star_hue_offset = 0.6 +shader_parameter/star_intensity = 0.08 +shader_parameter/star_twinkle_speed = 0.8 +shader_parameter/star_twinkle_intensity = 0.2 +shader_parameter/layer_scale = 20.0 +shader_parameter/layer_scale_step = 10.0 +shader_parameter/layers_count = 3 + +[sub_resource type="Sky" id="Sky_kdvug"] +sky_material = SubResource("ShaderMaterial_mwti2") + +[sub_resource type="Environment" id="Environment_1x1k5"] +background_mode = 2 +sky = SubResource("Sky_kdvug") +sky_custom_fov = 61.7 +ambient_light_source = 3 +ambient_light_color = Color(1, 1, 1, 1) +ambient_light_sky_contribution = 0.85 +ambient_light_energy = 2.0 +reflected_light_source = 2 +tonemap_mode = 2 +tonemap_exposure = 0.7 +tonemap_white = 1.84 +glow_enabled = true +glow_intensity = 0.22 +glow_bloom = 0.22 +glow_hdr_threshold = 0.79 +glow_hdr_scale = 0.0 +glow_hdr_luminance_cap = 5.63 +fog_enabled = true +fog_mode = 1 +fog_light_color = Color(0.13725491, 0.39215687, 0.6666667, 1) +fog_density = 0.1831 +fog_aerial_perspective = 0.113 +fog_sky_affect = 0.0 +volumetric_fog_sky_affect = 0.0 +adjustment_enabled = true +adjustment_saturation = 1.3 + +[sub_resource type="SphereMesh" id="SphereMesh_ovhgo"] +flip_faces = true + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_jwd5g"] +shading_mode = 0 +albedo_color = Color(0.5882353, 0.7019608, 0.85882354, 1) +albedo_texture = ExtResource("3_tc1s4") + +[node name="VendingMachineRoom" type="Node3D" unique_id=707746738] +script = ExtResource("1_1x1k5") + +[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1067763548] +environment = SubResource("Environment_1x1k5") + +[node name="DaySky" type="MeshInstance3D" parent="WorldEnvironment" unique_id=1108386443] +transform = Transform3D(1000, 0, 0, 0, 1000, 0, 0, 0, 1000, 0, 0, 0) +mesh = SubResource("SphereMesh_ovhgo") +surface_material_override/0 = SubResource("StandardMaterial3D_jwd5g") + +[node name="Player3D" parent="." unique_id=549819967 instance=ExtResource("4_dv00w")] +unique_name_in_owner = true +transform = Transform3D(0, 0, -0.99999994, 0, 1, 0, 0.99999994, 0, 0, 4.944984, 1.2635367, 24.252193) +speed = 5.0 + +[node name="vending_machine_room" parent="." unique_id=1088213414 instance=ExtResource("5_1x1k5")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.009907, 0, 24.24866) + +[node name="OmniLight3D" type="OmniLight3D" parent="." unique_id=1122387138] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.323474, 2.8448656, 25.081566) + +[node name="VendingMachine3d" parent="." unique_id=92614917 instance=ExtResource("6_rf1ya")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.409475, 0.7967659, 26.737188) +choose_state = 0 + +[node name="VendingMachine3d4" parent="." unique_id=284398440 instance=ExtResource("6_rf1ya")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 11.409475, 0.7967659, 26.737188) +state = 4 +choose_state = 0 + +[node name="VendingMachine3d2" parent="." unique_id=854345189 instance=ExtResource("6_rf1ya")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 7.4200993, 0.7967659, 26.737188) +state = 4 +choose_state = 0 + +[node name="VendingMachine3d3" parent="." unique_id=589582853 instance=ExtResource("6_rf1ya")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.283085, 0.7967659, 26.737188) +state = 4 +choose_state = 0 diff --git a/stages/intro/scripts/intro.gd b/stages/intro/scripts/intro.gd index 7006e36..59ec914 100644 --- a/stages/intro/scripts/intro.gd +++ b/stages/intro/scripts/intro.gd @@ -1,7 +1,7 @@ extends Node class_name Intro -const WAKE_UP_DIALOG = preload("res://dialogs/timelines/story/wake_up.dtl") +const WAKE_UP_DIALOG = "res://dialogs/timelines/tutorial/wake_up.dtl" var steps : Array[IntroStep] @export_file var game_scene_path : String @@ -27,4 +27,6 @@ func _ready(): func pass_intro(): Dialogic.end_timeline() - SceneManager.change_to_scene_id('ASTRA') + SceneManager.change_to_scene( + GameInfo.game_data.progression_data.get_story_step().get_respawn_scene() + ) diff --git a/stages/region_selection/region_point/region_point.tscn b/stages/region_selection/region_point/region_point.tscn deleted file mode 100644 index 56859f9..0000000 --- a/stages/region_selection/region_point/region_point.tscn +++ /dev/null @@ -1,38 +0,0 @@ -[gd_scene load_steps=8 format=3 uid="uid://gxbqe5rtqi58"] - -[ext_resource type="Script" uid="uid://j8cd0qbk4bma" path="res://stages/region_selection/region_point/scripts/region_point.gd" id="1_65ijn"] -[ext_resource type="Script" uid="uid://b4eimt3v08jhc" path="res://common/game_data/scripts/run/run_point.gd" id="2_34ylp"] -[ext_resource type="Script" uid="uid://ddk7j5b8p51dk" path="res://stages/terrain/region/scripts/region_parameter.gd" id="3_dm7jk"] -[ext_resource type="Texture2D" uid="uid://dqsx56wc73wry" path="res://common/icons/map-pin-check.svg" id="4_ndccb"] - -[sub_resource type="Resource" id="Resource_ndccb"] -script = ExtResource("3_dm7jk") -charges = 10 -objective = 10 -planet_seed = 4074963764 - -[sub_resource type="Resource" id="Resource_txxa3"] -script = ExtResource("2_34ylp") -level = 1 -planet_parameter = SubResource("Resource_ndccb") -region_name = "Usaf" -position = 61 -metadata/_custom_type_script = "uid://b4eimt3v08jhc" - -[sub_resource type="SphereShape3D" id="SphereShape3D_ys0ma"] -radius = 1.0629065 - -[node name="RegionPoint" type="Area3D"] -script = ExtResource("1_65ijn") -run_point = SubResource("Resource_txxa3") -state = 0 - -[node name="CollisionShape3D" type="CollisionShape3D" parent="."] -shape = SubResource("SphereShape3D_ys0ma") - -[node name="Sprite3D" type="Sprite3D" parent="."] -unique_name_in_owner = true -modulate = Color(1, 1, 1, 0.5) -pixel_size = 0.04 -billboard = 1 -texture = ExtResource("4_ndccb") diff --git a/stages/region_selection/region_point/scripts/region_point.gd b/stages/region_selection/region_point/scripts/region_point.gd deleted file mode 100644 index a14d652..0000000 --- a/stages/region_selection/region_point/scripts/region_point.gd +++ /dev/null @@ -1,56 +0,0 @@ -@tool -extends Area3D -class_name RegionPoint - -enum State {VISITED, CURRENT, TO_VISIT} - -const SPRITE_HOVER_SCALE_MULTIPLIER = 1.5 -const VISITED_OPACITY = 0.5 -const YELLOW_COLOR = Color("FFA617") - -const VISITED_SPRITE = preload("res://common/icons/map-pin-check.svg") -const CURRENT_SPRITE = preload("res://common/icons/map-pin.svg") -const TO_VISIT_SPRITE = preload("res://common/icons/map-pin-empty.svg") - -@export var run_point : RunPoint -@export var state : State = State.CURRENT : - set(v): - state = v - if is_node_ready(): - update_state() - -var hovered := false - -func _ready(): - update_state() - -func _process(_delta): - var scale_multiplier = SPRITE_HOVER_SCALE_MULTIPLIER if hovered else 1. - %Sprite3D.scale = lerp(%Sprite3D.scale, Vector3.ONE * scale_multiplier, 0.1) - -func _on_mouse_entered(): - hovered = true - Pointer.inspect(self) - -func _on_mouse_exited(): - hovered = false - Pointer.stop_inspect(self) - -func card_info() -> CardInfo: - return run_point.card_info() - -func update_state(): - var texture = VISITED_SPRITE - var color = Color(1.,1.,1.,VISITED_OPACITY) - - if state == State.CURRENT: - texture = CURRENT_SPRITE - color = Color.WHITE - - elif state == State.TO_VISIT: - texture = TO_VISIT_SPRITE - color = YELLOW_COLOR - - %Sprite3D.texture = texture - %Sprite3D.modulate = color - diff --git a/stages/region_selection/region_point/scripts/region_point.gd.uid b/stages/region_selection/region_point/scripts/region_point.gd.uid deleted file mode 100644 index 171295d..0000000 --- a/stages/region_selection/region_point/scripts/region_point.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://j8cd0qbk4bma diff --git a/stages/region_selection/region_selection.tscn b/stages/region_selection/region_selection.tscn deleted file mode 100644 index 36ea8ee..0000000 --- a/stages/region_selection/region_selection.tscn +++ /dev/null @@ -1,146 +0,0 @@ -[gd_scene format=3 uid="uid://bjs67nvh61otf"] - -[ext_resource type="PackedScene" uid="uid://cm5b7w7j6527f" path="res://stages/title_screen/planet_3d.tscn" id="5_bi8m0"] -[ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="5_twywe"] -[ext_resource type="Script" uid="uid://dqj1qh7xcmnhc" path="res://stages/region_selection/scripts/region_selection_camera.gd" id="6_gcxbq"] -[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="6_gqvix"] -[ext_resource type="Shader" uid="uid://bv2rghn44mrrf" path="res://stages/title_screen/resources/shaders/stars.gdshader" id="7_2ywd4"] -[ext_resource type="PackedScene" uid="uid://rxao2rluuwqq" path="res://gui/game/screen/screen.tscn" id="7_gqvix"] -[ext_resource type="Script" uid="uid://bmb4beevw5r40" path="res://stages/region_selection/scripts/region_selection.gd" id="8_jxqjc"] - -[sub_resource type="FastNoiseLite" id="FastNoiseLite_gqvix"] -frequency = 1.0 - -[sub_resource type="ShaderMaterial" id="ShaderMaterial_ee13y"] -shader = ExtResource("7_2ywd4") -shader_parameter/sky_color = Color(0.03, 0.05, 0.11, 1) -shader_parameter/star_base_color = Color(0.8, 1, 0.3, 1) -shader_parameter/star_hue_offset = 0.6 -shader_parameter/star_intensity = 0.08 -shader_parameter/star_twinkle_speed = 0.8 -shader_parameter/star_twinkle_intensity = 0.2 -shader_parameter/layer_scale = 20.0 -shader_parameter/layer_scale_step = 10.0 -shader_parameter/layers_count = 3 - -[sub_resource type="Sky" id="Sky_65b6a"] -sky_material = SubResource("ShaderMaterial_ee13y") - -[sub_resource type="Environment" id="Environment_187ay"] -background_mode = 2 -sky = SubResource("Sky_65b6a") -sky_custom_fov = 61.7 -reflected_light_source = 1 -tonemap_exposure = 1.54 -glow_enabled = true -glow_intensity = 1.22 -glow_bloom = 0.39 -glow_hdr_threshold = 0.81 -glow_hdr_scale = 0.0 -glow_hdr_luminance_cap = 0.3 -fog_density = 0.0 -fog_sky_affect = 0.0 -adjustment_enabled = true -adjustment_brightness = 1.04 -adjustment_contrast = 1.2 -adjustment_saturation = 0.88 - -[node name="RegionSelectionScreen" type="Node3D" unique_id=1689785704] -script = ExtResource("8_jxqjc") - -[node name="Planet3d" parent="." unique_id=1061481452 instance=ExtResource("5_bi8m0")] -unique_name_in_owner = true -transform = Transform3D(0.17364822, 0, -0.9848077, 0, 1, 0, 0.9848077, 0, 0.17364822, 0.0020446777, 0, 0) -noise = SubResource("FastNoiseLite_gqvix") - -[node name="RegionPointContainer" type="Node3D" parent="Planet3d" unique_id=235517820] -unique_name_in_owner = true - -[node name="Camera3D" type="Camera3D" parent="." unique_id=778670888] -transform = Transform3D(-1, 0, 8.742278e-08, 0, 1, 0, -8.742278e-08, 0, -1, 0, 0, -79.21178) -current = true -fov = 34.0 -script = ExtResource("6_gcxbq") -_sprite_layer = 1 - -[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=421604487] -environment = SubResource("Environment_187ay") - -[node name="DirectionalLight3D" type="DirectionalLight3D" parent="." unique_id=1857207701] -transform = Transform3D(0.8423772, -0.34588623, 0.4132353, -0.5388884, -0.5406809, 0.6459594, 0, -0.76682913, -0.6418513, 0, 14.918039, 0) - -[node name="Hud" type="CanvasLayer" parent="." unique_id=1116972494] - -[node name="MarginContainer" type="MarginContainer" parent="Hud" unique_id=1379729006] -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -theme = ExtResource("5_twywe") - -[node name="Label" type="Label" parent="Hud/MarginContainer" unique_id=57986359] -layout_mode = 2 -size_flags_horizontal = 0 -size_flags_vertical = 0 -text = "CHOOSE_A_REGION" -label_settings = ExtResource("6_gqvix") - -[node name="ReturnButton" type="Button" parent="Hud/MarginContainer" unique_id=475983266] -unique_name_in_owner = true -layout_mode = 2 -size_flags_horizontal = 8 -size_flags_vertical = 8 -theme = ExtResource("5_twywe") -text = "RETURN" - -[node name="TravelValidation" parent="Hud" unique_id=205669320 instance=ExtResource("7_gqvix")] -unique_name_in_owner = true -visible = false -anchors_preset = 8 -anchor_left = 0.5 -anchor_top = 0.5 -anchor_right = 0.5 -anchor_bottom = 0.5 -offset_left = -359.0 -offset_top = -137.0 -offset_right = 359.0 -offset_bottom = 96.0 -grow_horizontal = 2 -grow_vertical = 2 -size_flags_horizontal = 4 -size_flags_vertical = 4 - -[node name="TravelValidationContainer" type="VBoxContainer" parent="Hud/TravelValidation/ScreenContainer" index="0" unique_id=1135507235] -layout_mode = 2 -theme = ExtResource("5_twywe") -alignment = 1 - -[node name="TravelValidationLabel" type="Label" parent="Hud/TravelValidation/ScreenContainer/TravelValidationContainer" unique_id=1203605320] -unique_name_in_owner = true -layout_mode = 2 -text = "TRAVEL_TO_REGION_%s" -label_settings = ExtResource("6_gqvix") -horizontal_alignment = 1 - -[node name="TravelValidationButtons" type="HBoxContainer" parent="Hud/TravelValidation/ScreenContainer/TravelValidationContainer" unique_id=560440640] -layout_mode = 2 -theme = ExtResource("5_twywe") -alignment = 1 - -[node name="TravelValidationGoButton" type="Button" parent="Hud/TravelValidation/ScreenContainer/TravelValidationContainer/TravelValidationButtons" unique_id=338629922] -layout_mode = 2 -theme = ExtResource("5_twywe") -text = "GO" - -[node name="TravelValidationNoNowButton" type="Button" parent="Hud/TravelValidation/ScreenContainer/TravelValidationContainer/TravelValidationButtons" unique_id=61219289] -layout_mode = 2 -theme = ExtResource("5_twywe") -text = "NOT_NOW" - -[connection signal="region_point_clicked" from="Camera3D" to="." method="_on_camera_3d_region_point_clicked"] -[connection signal="button_down" from="Hud/MarginContainer/ReturnButton" to="." method="_on_return_button_button_down"] -[connection signal="button_down" from="Hud/TravelValidation/ScreenContainer/TravelValidationContainer/TravelValidationButtons/TravelValidationGoButton" to="." method="_on_travel_validation_go_button_button_down"] -[connection signal="button_down" from="Hud/TravelValidation/ScreenContainer/TravelValidationContainer/TravelValidationButtons/TravelValidationNoNowButton" to="." method="_on_travel_validation_no_now_button_button_down"] - -[editable path="Hud/TravelValidation"] diff --git a/stages/region_selection/scripts/region_selection.gd b/stages/region_selection/scripts/region_selection.gd deleted file mode 100644 index e99b3dd..0000000 --- a/stages/region_selection/scripts/region_selection.gd +++ /dev/null @@ -1,123 +0,0 @@ -@tool -extends Node3D -class_name RegionSelection - -const REGION_POINT_SCENE := preload("res://stages/region_selection/region_point/region_point.tscn") -const PLANET_REGION_POINT_MARGIN = 0 - -var target_planet_rotation = Vector2(0,0) -var planet_acceleration := Vector2(0,0) -var rotating := false -var prev_mouse_pos : Vector2 -var next_mouse_pos : Vector2 - -var selected_run_point : RunPoint - -@export_tool_button("Update Region Points", "Callable") var update_action = update_region_points - -var run_data : RunData - -@onready var planet_radius = %Planet3d.radius + %Planet3d.height - -func _ready(): - var region_data = GameInfo.game_data.current_region_data - if ( - not GameInfo.game_data.current_run - or (region_data and region_data.get_state() == RegionData.State.FAILED) - or GameInfo.game_data.current_run.get_state() == RunData.State.FINISHED - ): - GameInfo.game_data.start_run() - - run_data = GameInfo.game_data.current_run - - %TravelValidation.hide() - update_region_points() - if not GameInfo.game_data.current_region_data: - %ReturnButton.hide() - -func _process(delta): - if not Engine.is_editor_hint(): - rotate_planet(delta) - -func rotate_planet(delta): - next_mouse_pos = get_viewport().get_mouse_position() - if Input.is_action_just_pressed("action"): - rotating = true - prev_mouse_pos = get_viewport().get_mouse_position() - if Input.is_action_just_released("action"): - rotating = false - var mouse_acceleration = Vector2( - float(next_mouse_pos.x - prev_mouse_pos.x), - float(next_mouse_pos.y - prev_mouse_pos.y) - ) - planet_acceleration = Vector2(mouse_acceleration.y, - mouse_acceleration.x) - - var planet_rotation = planet_acceleration - - if rotating: - var mouse_rotation = Vector2( - float(next_mouse_pos.x - prev_mouse_pos.x), - float(next_mouse_pos.y - prev_mouse_pos.y) - ) - planet_rotation = Vector2(mouse_rotation.y, - mouse_rotation.x) - prev_mouse_pos = next_mouse_pos - else : - # var default_planet_rotation = Vector2(%Planet3d.rotation.x, %Planet3d.rotation.y) - target_planet_rotation - planet_acceleration = planet_acceleration.lerp(Vector2.ZERO, 0.1) - # %Planet3d.rotation.z = lerp(%Planet3d.rotation.z, 0., 0.05) - - %Planet3d.rotate(Vector3.LEFT, planet_rotation.x * delta) - %Planet3d.rotate(Vector3.DOWN, planet_rotation.y * delta) - -func generate_region_point(run_point : RunPoint, state : RegionPoint.State = RegionPoint.State.VISITED) -> RegionPoint: - var region_point := REGION_POINT_SCENE.instantiate() as RegionPoint - region_point.run_point = run_point - region_point.state = state - - %RegionPointContainer.add_child(region_point) - - - var sphere_radius = planet_radius + PLANET_REGION_POINT_MARGIN - var default_pos = Vector3(0, sphere_radius, 0) - var vertical_pos = default_pos.rotated(Vector3.LEFT, run_point.level/float(RunData.RUN_POINT_MAX_LEVEL) * PI) - var final_pos = vertical_pos.rotated(Vector3.UP, (run_point.position % 360)/float(360) * 2 * PI) - region_point.position = final_pos - - return region_point - -func update_region_points(): - for c in %RegionPointContainer.get_children(): - c.queue_free() - - if run_data.current_run_point: - generate_region_point(run_data.current_run_point, RegionPoint.State.CURRENT) - - target_planet_rotation = Vector2( - 0., - - run_data.current_run_point.position/float(360) * 2 * PI, - ) - - %Planet3d.rotation = Vector3(target_planet_rotation.x, target_planet_rotation.y, 0.) - - for visited_rp in run_data.visited_run_points: - generate_region_point(visited_rp, RegionPoint.State.VISITED) - - for to_visit_rp in run_data.next_run_points: - generate_region_point(to_visit_rp, RegionPoint.State.TO_VISIT) - -func _on_camera_3d_region_point_clicked(rp : RunPoint): - selected_run_point = rp - %TravelValidationLabel.text = tr("TRAVEL_TO_REGION_%s") % rp.region_parameter.region_name - %TravelValidation.show() - -func _on_travel_validation_go_button_button_down(): - if selected_run_point: - GameInfo.game_data.current_run.choose_next_run_point(selected_run_point) - SceneManager.change_to_scene_id("REGION") - -func _on_travel_validation_no_now_button_button_down(): - %TravelValidation.hide() - -func _on_return_button_button_down(): - if GameInfo.game_data.current_region_data: - SceneManager.change_to_scene_id("COCKPIT") diff --git a/stages/region_selection/scripts/region_selection.gd.uid b/stages/region_selection/scripts/region_selection.gd.uid deleted file mode 100644 index 3584d52..0000000 --- a/stages/region_selection/scripts/region_selection.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://bmb4beevw5r40 diff --git a/stages/region_selection/scripts/region_selection_camera.gd b/stages/region_selection/scripts/region_selection_camera.gd deleted file mode 100644 index 05e570d..0000000 --- a/stages/region_selection/scripts/region_selection_camera.gd +++ /dev/null @@ -1,43 +0,0 @@ -extends Camera3D - -signal region_point_clicked(rp : RunPoint) - -const RAY_LENGTH = 1000. - -@export_flags_3d_physics var _sprite_layer - -var region_point_hovered : RegionPoint = null -var _mouse_event : InputEventMouse -var _query_mouse := false - -func _unhandled_input(event): - if event is InputEventMouse: - _mouse_event = event - _query_mouse = true - if event.is_action_pressed("action") and region_point_hovered and region_point_hovered.state == RegionPoint.State.TO_VISIT: - region_point_clicked.emit(region_point_hovered.run_point) - -func _physics_process(_delta): - if _query_mouse: - update_mouse_hovered_region_points() - _query_mouse = false - -func update_mouse_hovered_region_points() -> void: - - var space_state = get_world_3d().direct_space_state - var from = project_ray_origin(_mouse_event.position) - var to = from + project_ray_normal(_mouse_event.position) * RAY_LENGTH - - var query = PhysicsRayQueryParameters3D.create(from, to, _sprite_layer) - query.collide_with_areas = true - var result = space_state.intersect_ray(query) - - if result.is_empty(): - if region_point_hovered: - region_point_hovered._on_mouse_exited() - region_point_hovered = null - elif result.collider is RegionPoint: - if region_point_hovered and region_point_hovered != result.collider: - region_point_hovered._on_mouse_exited() - region_point_hovered = result.collider - region_point_hovered._on_mouse_entered() diff --git a/stages/region_selection/scripts/region_selection_camera.gd.uid b/stages/region_selection/scripts/region_selection_camera.gd.uid deleted file mode 100644 index c894513..0000000 --- a/stages/region_selection/scripts/region_selection_camera.gd.uid +++ /dev/null @@ -1 +0,0 @@ -uid://dqj1qh7xcmnhc diff --git a/stages/terrain/region/assets/textures/garden_decontamined_background_texture.png b/stages/terrain/region/assets/textures/garden_decontamined_background_texture.png deleted file mode 100644 index 5c663ba..0000000 Binary files a/stages/terrain/region/assets/textures/garden_decontamined_background_texture.png and /dev/null differ diff --git a/stages/terrain/region/assets/textures/garden_decontamined_background_texture.png.import b/stages/terrain/region/assets/textures/garden_decontamined_background_texture.png.import deleted file mode 100644 index a7f73c9..0000000 --- a/stages/terrain/region/assets/textures/garden_decontamined_background_texture.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://bseoyd8mqjo7y" -path="res://.godot/imported/garden_decontamined_background_texture.png-d2e9b3111739dbe0f3e878510238390a.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://stages/terrain/region/assets/textures/garden_decontamined_background_texture.png" -dest_files=["res://.godot/imported/garden_decontamined_background_texture.png-d2e9b3111739dbe0f3e878510238390a.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/stages/terrain/region/assets/textures/garden_decontamined_background_texture_old.png b/stages/terrain/region/assets/textures/garden_decontamined_background_texture_old.png deleted file mode 100644 index d5b828c..0000000 Binary files a/stages/terrain/region/assets/textures/garden_decontamined_background_texture_old.png and /dev/null differ diff --git a/stages/terrain/region/assets/textures/garden_decontamined_background_texture_old.png.import b/stages/terrain/region/assets/textures/garden_decontamined_background_texture_old.png.import deleted file mode 100644 index 88835c6..0000000 --- a/stages/terrain/region/assets/textures/garden_decontamined_background_texture_old.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://ex35g5nvtsy0" -path="res://.godot/imported/garden_decontamined_background_texture_old.png-951b3e125e8b7083a60c2b7435bce68a.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://stages/terrain/region/assets/textures/garden_decontamined_background_texture_old.png" -dest_files=["res://.godot/imported/garden_decontamined_background_texture_old.png-951b3e125e8b7083a60c2b7435bce68a.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture.png b/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture.png index d0dc543..cf55057 100644 Binary files a/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture.png and b/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture.png differ diff --git a/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture_2.png b/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture_2.png deleted file mode 100644 index d3cfebd..0000000 Binary files a/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture_2.png and /dev/null differ diff --git a/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture_2.png.import b/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture_2.png.import deleted file mode 100644 index bc5ccf3..0000000 --- a/stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture_2.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://cquonnydto387" -path="res://.godot/imported/moss_contamination_atlas_texture_2.png-d3b17c123dfe73058f82ef745ed7ae76.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://stages/terrain/region/assets/textures/moss_biome/moss_contamination_atlas_texture_2.png" -dest_files=["res://.godot/imported/moss_contamination_atlas_texture_2.png-d3b17c123dfe73058f82ef745ed7ae76.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/stages/terrain/region/assets/textures/moss_biome/moss_ground_texture.png b/stages/terrain/region/assets/textures/moss_biome/moss_ground_texture.png index 973512f..26b44a3 100644 Binary files a/stages/terrain/region/assets/textures/moss_biome/moss_ground_texture.png and b/stages/terrain/region/assets/textures/moss_biome/moss_ground_texture.png differ diff --git a/stages/terrain/region/assets/textures/moss_biome/moss_rock_atlas_texture.png b/stages/terrain/region/assets/textures/moss_biome/moss_rock_atlas_texture.png index dfc9b24..b3ac566 100644 Binary files a/stages/terrain/region/assets/textures/moss_biome/moss_rock_atlas_texture.png and b/stages/terrain/region/assets/textures/moss_biome/moss_rock_atlas_texture.png differ diff --git a/stages/terrain/region/assets/textures/moss_biome/moss_talion_atlas_texture.png b/stages/terrain/region/assets/textures/moss_biome/moss_talion_atlas_texture.png index c4ccb63..2cc3fc2 100644 Binary files a/stages/terrain/region/assets/textures/moss_biome/moss_talion_atlas_texture.png and b/stages/terrain/region/assets/textures/moss_biome/moss_talion_atlas_texture.png differ diff --git a/stages/terrain/region/assets/textures/rock_background_texture.png b/stages/terrain/region/assets/textures/rock_background_texture.png deleted file mode 100644 index 449e1df..0000000 Binary files a/stages/terrain/region/assets/textures/rock_background_texture.png and /dev/null differ diff --git a/stages/terrain/region/assets/textures/rock_background_texture.png.import b/stages/terrain/region/assets/textures/rock_background_texture.png.import deleted file mode 100644 index 4f0519f..0000000 --- a/stages/terrain/region/assets/textures/rock_background_texture.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://beqx4rmgthkql" -path="res://.godot/imported/rock_background_texture.png-79a8569ff49f7d85f8b64d55ac1ce62d.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://stages/terrain/region/assets/textures/rock_background_texture.png" -dest_files=["res://.godot/imported/rock_background_texture.png-79a8569ff49f7d85f8b64d55ac1ce62d.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/stages/terrain/region/assets/textures/rock_cristal_texture.png b/stages/terrain/region/assets/textures/rock_cristal_texture.png deleted file mode 100644 index aa42e88..0000000 Binary files a/stages/terrain/region/assets/textures/rock_cristal_texture.png and /dev/null differ diff --git a/stages/terrain/region/assets/textures/rock_cristal_texture.png.import b/stages/terrain/region/assets/textures/rock_cristal_texture.png.import deleted file mode 100644 index 2ff3d0b..0000000 --- a/stages/terrain/region/assets/textures/rock_cristal_texture.png.import +++ /dev/null @@ -1,41 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://02nuoqleo4yu" -path.s3tc="res://.godot/imported/rock_cristal_texture.png-c34612644dbfa24e49296bfe43df46c6.s3tc.ctex" -metadata={ -"imported_formats": ["s3tc_bptc"], -"vram_texture": true -} - -[deps] - -source_file="res://stages/terrain/region/assets/textures/rock_cristal_texture.png" -dest_files=["res://.godot/imported/rock_cristal_texture.png-c34612644dbfa24e49296bfe43df46c6.s3tc.ctex"] - -[params] - -compress/mode=2 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=true -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=0 diff --git a/stages/terrain/region/assets/textures/round_red_tiles.png b/stages/terrain/region/assets/textures/round_red_tiles.png deleted file mode 100644 index 8986d1a..0000000 Binary files a/stages/terrain/region/assets/textures/round_red_tiles.png and /dev/null differ diff --git a/stages/terrain/region/assets/textures/round_red_tiles.png.import b/stages/terrain/region/assets/textures/round_red_tiles.png.import deleted file mode 100644 index 0f0bf2f..0000000 --- a/stages/terrain/region/assets/textures/round_red_tiles.png.import +++ /dev/null @@ -1,40 +0,0 @@ -[remap] - -importer="texture" -type="CompressedTexture2D" -uid="uid://bmdb63witojeg" -path="res://.godot/imported/round_red_tiles.png-c254569faa1f0323275dcc266f2b4c86.ctex" -metadata={ -"vram_texture": false -} - -[deps] - -source_file="res://stages/terrain/region/assets/textures/round_red_tiles.png" -dest_files=["res://.godot/imported/round_red_tiles.png-c254569faa1f0323275dcc266f2b4c86.ctex"] - -[params] - -compress/mode=0 -compress/high_quality=false -compress/lossy_quality=0.7 -compress/uastc_level=0 -compress/rdo_quality_loss=0.0 -compress/hdr_compression=1 -compress/normal_map=0 -compress/channel_pack=0 -mipmaps/generate=false -mipmaps/limit=-1 -roughness/mode=0 -roughness/src_normal="" -process/channel_remap/red=0 -process/channel_remap/green=1 -process/channel_remap/blue=2 -process/channel_remap/alpha=3 -process/fix_alpha_border=true -process/premult_alpha=false -process/normal_map_invert_y=false -process/hdr_as_srgb=false -process/hdr_clamp_exposure=false -process/size_limit=0 -detect_3d/compress_to=1 diff --git a/stages/terrain/region/region.tscn b/stages/terrain/region/region.tscn index 75234f3..3cc8192 100644 --- a/stages/terrain/region/region.tscn +++ b/stages/terrain/region/region.tscn @@ -1,25 +1,19 @@ [gd_scene format=3 uid="uid://tsi5j1uxppa4"] [ext_resource type="Script" uid="uid://d1mp5sguc0b6u" path="res://stages/terrain/region/scripts/region.gd" id="1_441sk"] -[ext_resource type="PackedScene" uid="uid://dt6mptqg80dew" path="res://gui/game/tutorial/tutorial.tscn" id="2_2f6js"] [ext_resource type="Shader" uid="uid://cfj18vc04cgkg" path="res://common/vfx/materials/shaders/blur_vignette.gdshader" id="2_ktnx3"] [ext_resource type="PackedScene" uid="uid://yk78ubpu5ghq" path="res://gui/game/pass_day/pass_day.tscn" id="3_ktnx3"] [ext_resource type="Shader" uid="uid://btgk5l0a6ii44" path="res://common/vfx/materials/shaders/screen_fog.gdshader" id="3_qdnee"] -[ext_resource type="Script" uid="uid://bi8fo6yp25su7" path="res://stages/terrain/region/scripts/camera_fog.gd" id="4_ovqi1"] +[ext_resource type="Script" uid="uid://bi8fo6yp25su7" path="res://stages/terrain/region/scripts/screen_post_process.gd" id="4_ovqi1"] [ext_resource type="PackedScene" uid="uid://12nak7amd1uq" path="res://gui/game/game_gui.tscn" id="4_qdnee"] +[ext_resource type="Shader" uid="uid://doceegdvj0pp3" path="res://common/vfx/materials/shaders/screen_clouds.gdshader" id="5_2w03p"] +[ext_resource type="Script" uid="uid://b366do6jdx87h" path="res://stages/terrain/region/scripts/post_process/clouds.gd" id="5_6d8m3"] [ext_resource type="PackedScene" uid="uid://bgvbgeq46wee2" path="res://entities/player/player.tscn" id="5_ovqi1"] [ext_resource type="PackedScene" uid="uid://d324mlmgls4fs" path="res://entities/interactables/truck/recharge/truck_recharge.tscn" id="7_6d8m3"] -[ext_resource type="PackedScene" uid="uid://b8m537op75gib" path="res://entities/interactables/door/door.tscn" id="8_2f6js"] [ext_resource type="PackedScene" uid="uid://dj7gp3crtg2yt" path="res://entities/camera/camera.tscn" id="8_fwgig"] +[ext_resource type="PackedScene" uid="uid://fnv0qhkh40mv" path="res://gui/game/announce/announce.tscn" id="8_mlppq"] [ext_resource type="Texture2D" uid="uid://rdrhi3r11ey6" path="res://common/icons/square-rounded.svg" id="10_ktnx3"] -[sub_resource type="ShaderMaterial" id="ShaderMaterial_qdnee"] -shader = ExtResource("2_ktnx3") -shader_parameter/blur_radius = 0.0630000029925 -shader_parameter/blur_amount = 1.0000000475 -shader_parameter/blur_inner = 0.4950000235125 -shader_parameter/blur_outer = 0.7810000370975 - [sub_resource type="FastNoiseLite" id="FastNoiseLite_ovqi1"] noise_type = 2 @@ -48,7 +42,37 @@ shader_parameter/noise_speed_2 = 0.010000000475 shader_parameter/noise_dir_1 = Vector2(1, 1) shader_parameter/noise_dir_2 = Vector2(1, -1) shader_parameter/smoke_color = Color(1, 1, 1, 1) -shader_parameter/density = 0.010000000475 +shader_parameter/density = 0.070000003325 + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_2w03p"] +noise_type = 2 + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_6d8m3"] +noise = SubResource("FastNoiseLite_2w03p") +seamless = true + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_6d8m3"] +shader = ExtResource("5_2w03p") +shader_parameter/camera_position = Vector2(0, 0) +shader_parameter/camera_zoom = Vector2(1, 1) +shader_parameter/viewport_size = Vector2(1920, 1080) +shader_parameter/noise_texture = SubResource("NoiseTexture2D_6d8m3") +shader_parameter/cloud_speed = 0.10000000475 +shader_parameter/cloud_delay = 1.0 +shader_parameter/noise_dir = Vector2(1, 1) +shader_parameter/cloud_color = Color(0.59428054, 0.8206175, 0.899937, 1) +shader_parameter/cloud_alpha = 1.0 +shader_parameter/cloud_size = 87.48400410799 +shader_parameter/cloud_distorsion_speed = 0.10000000475 +shader_parameter/density = 0.3610000171475 +shader_parameter/blur_amount = 0.0400000019 + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_qdnee"] +shader = ExtResource("2_ktnx3") +shader_parameter/blur_radius = 0.0630000029925 +shader_parameter/blur_amount = 1.0000000475 +shader_parameter/blur_inner = 0.4950000235125 +shader_parameter/blur_outer = 0.7810000370975 [sub_resource type="Curve" id="Curve_qdnee"] _data = [Vector2(0, 0), 0.0, 0.0, 0, 0, Vector2(0.4883721, 1), 0.037164874, 0.037164874, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] @@ -89,17 +113,10 @@ script = ExtResource("1_441sk") entity_container = NodePath("Entities") [node name="PostProcess" type="CanvasLayer" parent="." unique_id=729471745] - -[node name="Vignette" type="ColorRect" parent="PostProcess" unique_id=2057271511] -material = SubResource("ShaderMaterial_qdnee") -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -mouse_filter = 2 +layer = 0 [node name="Fog" type="ColorRect" parent="PostProcess" unique_id=1487713892 node_paths=PackedStringArray("camera")] +visible = false material = SubResource("ShaderMaterial_mlppq") anchors_preset = 15 anchor_right = 1.0 @@ -110,19 +127,39 @@ mouse_filter = 2 script = ExtResource("4_ovqi1") camera = NodePath("../../Camera") +[node name="Clouds" type="ColorRect" parent="PostProcess" unique_id=1053740484 node_paths=PackedStringArray("camera", "region")] +material = SubResource("ShaderMaterial_6d8m3") +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 +script = ExtResource("5_6d8m3") +camera = NodePath("../../Camera") +region = NodePath("../..") + +[node name="Vignette" type="ColorRect" parent="PostProcess" unique_id=2057271511] +material = SubResource("ShaderMaterial_qdnee") +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +mouse_filter = 2 + [node name="PassDay" parent="." unique_id=1144772570 instance=ExtResource("3_ktnx3")] unique_name_in_owner = true +visible = false [node name="RegionGui" type="CanvasLayer" parent="." unique_id=2024485651] layer = 2 -[node name="Tutorial" parent="RegionGui" unique_id=762436685 node_paths=PackedStringArray("player", "region") instance=ExtResource("2_2f6js")] -unique_name_in_owner = true -player = NodePath("../../Entities/Player") -region = NodePath("../..") - [node name="GameGui" parent="." unique_id=1970837239 instance=ExtResource("4_qdnee")] +[node name="Announce" parent="." unique_id=1659074958 instance=ExtResource("8_mlppq")] +layer = 3 + [node name="Entities" type="Node2D" parent="." unique_id=2132324579] y_sort_enabled = true @@ -132,34 +169,6 @@ y_sort_enabled = true unique_name_in_owner = true position = Vector2(-405, -151) -[node name="AstraDoor" parent="Entities" unique_id=2053096538 instance=ExtResource("8_2f6js")] -unique_name_in_owner = true -visible = false -modulate = Color(1, 0, 0, 1) -available = false -default_info_title = "ASTRA_FACTORY" -default_info_desc = "ASTRA_FACTORY_TEXT" - -[node name="BoreaDoor" parent="Entities" unique_id=135926916 instance=ExtResource("8_2f6js")] -unique_name_in_owner = true -visible = false -position = Vector2(91, -177) -to_scene_id = "BOREA" -default_interact_text = "ENTER" -default_info_title = "BOREA_BASE" -default_info_desc = "BOREA_BASE_DESC_TEXT" - -[node name="ShipGarageDoor" parent="Entities" unique_id=1073871193 instance=ExtResource("8_2f6js")] -unique_name_in_owner = true -visible = false -modulate = Color(1, 0, 0, 1) -position = Vector2(91, -177) -to_scene_id = "GARAGE" -default_interact_text = "ENTER" -available = false -default_info_title = "MYSTERIOUS_DOOR" -default_info_desc = "MYSTERIOUS_DOOR_TEXT" - [node name="Camera" parent="." unique_id=1399042986 node_paths=PackedStringArray("following") instance=ExtResource("8_fwgig")] following = NodePath("../Entities/Player") diff --git a/stages/terrain/region/resources/materials/default_chunk_material.tres b/stages/terrain/region/resources/materials/default_chunk_material.tres index 750bb86..67a0faf 100644 --- a/stages/terrain/region/resources/materials/default_chunk_material.tres +++ b/stages/terrain/region/resources/materials/default_chunk_material.tres @@ -1,7 +1,6 @@ -[gd_resource type="ShaderMaterial" load_steps=6 format=3 uid="uid://bq3dmwkej5gmx"] +[gd_resource type="ShaderMaterial" format=3 uid="uid://bq3dmwkej5gmx"] [ext_resource type="Shader" uid="uid://bglep64ppn74p" path="res://common/vfx/materials/shaders/textures_data_filter.gdshader" id="1_kujx0"] -[ext_resource type="Texture2D" uid="uid://beqx4rmgthkql" path="res://stages/terrain/region/assets/textures/rock_background_texture.png" id="2_6cs2h"] [ext_resource type="Texture2D" uid="uid://bnrjnvceprxfn" path="res://stages/terrain/region/assets/textures/garden_background_texture.png" id="2_ydx6d"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_kujx0"] @@ -13,11 +12,14 @@ width = 20 height = 20 noise = SubResource("FastNoiseLite_kujx0") +[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_cmstg"] +load_path = "res://.godot/imported/rock_background_texture.png-79a8569ff49f7d85f8b64d55ac1ce62d.ctex" + [resource] shader = ExtResource("1_kujx0") shader_parameter/data_texture = SubResource("NoiseTexture2D_ydx6d") shader_parameter/data_texture_size = Vector2(200, 200) shader_parameter/data_texture_threshold = 0.5 -shader_parameter/texture_0 = ExtResource("2_6cs2h") +shader_parameter/texture_0 = SubResource("CompressedTexture2D_cmstg") shader_parameter/texture_1 = ExtResource("2_ydx6d") shader_parameter/texture_scale = 5.0 diff --git a/stages/terrain/region/resources/materials/ground_contamination.tres b/stages/terrain/region/resources/materials/ground_contamination.tres index 3678f50..ea77bcf 100644 --- a/stages/terrain/region/resources/materials/ground_contamination.tres +++ b/stages/terrain/region/resources/materials/ground_contamination.tres @@ -1,8 +1,7 @@ -[gd_resource type="ShaderMaterial" load_steps=6 format=3 uid="uid://ljvaj1vab53a"] +[gd_resource type="ShaderMaterial" format=3 uid="uid://ljvaj1vab53a"] [ext_resource type="Shader" uid="uid://bglep64ppn74p" path="res://common/vfx/materials/shaders/textures_data_filter.gdshader" id="1_ye8oh"] [ext_resource type="Texture2D" uid="uid://bnrjnvceprxfn" path="res://stages/terrain/region/assets/textures/garden_background_texture.png" id="2_6hswu"] -[ext_resource type="Texture2D" uid="uid://ex35g5nvtsy0" path="res://stages/terrain/region/assets/textures/garden_decontamined_background_texture_old.png" id="2_r7pv0"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_6hswu"] frequency = 0.0109 @@ -10,11 +9,14 @@ frequency = 0.0109 [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_j3avn"] noise = SubResource("FastNoiseLite_6hswu") +[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_nntr3"] +load_path = "res://.godot/imported/garden_decontamined_background_texture_old.png-951b3e125e8b7083a60c2b7435bce68a.ctex" + [resource] shader = ExtResource("1_ye8oh") shader_parameter/data_texture = SubResource("NoiseTexture2D_j3avn") shader_parameter/data_texture_size = Vector2(1000, 1000) shader_parameter/data_texture_threshold = 0.5 shader_parameter/texture_0 = ExtResource("2_6hswu") -shader_parameter/texture_1 = ExtResource("2_r7pv0") +shader_parameter/texture_1 = SubResource("CompressedTexture2D_nntr3") shader_parameter/texture_scale = 5.0 diff --git a/stages/terrain/region/resources/materials/moss_biome/ground_planet_tilemap.tres b/stages/terrain/region/resources/materials/moss_biome/ground_planet_tilemap.tres index 37729c4..4c92780 100644 --- a/stages/terrain/region/resources/materials/moss_biome/ground_planet_tilemap.tres +++ b/stages/terrain/region/resources/materials/moss_biome/ground_planet_tilemap.tres @@ -1,4 +1,4 @@ -[gd_resource type="ShaderMaterial" load_steps=3 format=3 uid="uid://dpxu8yeee4qi1"] +[gd_resource type="ShaderMaterial" format=3 uid="uid://dpxu8yeee4qi1"] [ext_resource type="Shader" uid="uid://q5isn3rwrir8" path="res://common/vfx/materials/shaders/texture_color_filter.gdshader" id="1_k4e5t"] [ext_resource type="Texture2D" uid="uid://bnrjnvceprxfn" path="res://stages/terrain/region/assets/textures/garden_background_texture.png" id="2_k4e5t"] diff --git a/stages/terrain/region/resources/moss_biome.tres b/stages/terrain/region/resources/moss_biome.tres index 30d0d17..ef46795 100644 --- a/stages/terrain/region/resources/moss_biome.tres +++ b/stages/terrain/region/resources/moss_biome.tres @@ -178,13 +178,11 @@ texture_region_size = Vector2i(64, 64) 9:1/0 = 0 9:1/0/terrain_set = 0 9:1/0/terrain = 1 -9:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -32, 32, -32, 32, 32, -32, 32) +9:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -16, -16, -32, 32, -32, 32, 16, 16, 32, -32, 32) 9:1/0/terrains_peering_bit/right_side = 1 -9:1/0/terrains_peering_bit/bottom_right_corner = 1 9:1/0/terrains_peering_bit/bottom_side = 1 9:1/0/terrains_peering_bit/bottom_left_corner = 1 9:1/0/terrains_peering_bit/left_side = 1 -9:1/0/terrains_peering_bit/top_left_corner = 1 9:1/0/terrains_peering_bit/top_side = 1 9:1/0/terrains_peering_bit/top_right_corner = 1 11:1/0 = 0 @@ -284,15 +282,13 @@ texture_region_size = Vector2i(64, 64) 10:2/0 = 0 10:2/0/terrain_set = 0 10:2/0/terrain = 1 -10:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -32, 32, -32, 32, 32, -32, 32) +10:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -32, 16, -32, 32, -16, 32, 32, -16, 32, -32, 16) 10:2/0/terrains_peering_bit/right_side = 1 10:2/0/terrains_peering_bit/bottom_right_corner = 1 10:2/0/terrains_peering_bit/bottom_side = 1 -10:2/0/terrains_peering_bit/bottom_left_corner = 1 10:2/0/terrains_peering_bit/left_side = 1 10:2/0/terrains_peering_bit/top_left_corner = 1 10:2/0/terrains_peering_bit/top_side = 1 -10:2/0/terrains_peering_bit/top_right_corner = 1 11:2/0 = 0 11:2/0/terrain_set = 0 11:2/0/terrain = 1 @@ -675,13 +671,11 @@ texture_region_size = Vector2i(64, 64) 9:1/0 = 0 9:1/0/terrain_set = 0 9:1/0/terrain = 2 -9:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -32, 32, -32, 32, 32, -32, 32) +9:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -16, -16, -32, 32, -32, 32, 16, 16, 32, -32, 32) 9:1/0/terrains_peering_bit/right_side = 2 -9:1/0/terrains_peering_bit/bottom_right_corner = 2 9:1/0/terrains_peering_bit/bottom_side = 2 9:1/0/terrains_peering_bit/bottom_left_corner = 2 9:1/0/terrains_peering_bit/left_side = 2 -9:1/0/terrains_peering_bit/top_left_corner = 2 9:1/0/terrains_peering_bit/top_side = 2 9:1/0/terrains_peering_bit/top_right_corner = 2 9:2/0 = 0 @@ -746,15 +740,13 @@ texture_region_size = Vector2i(64, 64) 10:2/0 = 0 10:2/0/terrain_set = 0 10:2/0/terrain = 2 -10:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -32, 32, -32, 32, 32, -32, 32) +10:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -32, 16, -32, 32, -16, 32, 32, -16, 32, -32, 16) 10:2/0/terrains_peering_bit/right_side = 2 10:2/0/terrains_peering_bit/bottom_right_corner = 2 10:2/0/terrains_peering_bit/bottom_side = 2 -10:2/0/terrains_peering_bit/bottom_left_corner = 2 10:2/0/terrains_peering_bit/left_side = 2 10:2/0/terrains_peering_bit/top_left_corner = 2 10:2/0/terrains_peering_bit/top_side = 2 -10:2/0/terrains_peering_bit/top_right_corner = 2 10:3/0 = 0 10:3/0/terrain_set = 0 10:3/0/terrain = 2 @@ -952,11 +944,9 @@ texture_region_size = Vector2i(64, 64) 9:1/0/terrain_set = 0 9:1/0/terrain = 0 9:1/0/terrains_peering_bit/right_side = 0 -9:1/0/terrains_peering_bit/bottom_right_corner = 0 9:1/0/terrains_peering_bit/bottom_side = 0 9:1/0/terrains_peering_bit/bottom_left_corner = 0 9:1/0/terrains_peering_bit/left_side = 0 -9:1/0/terrains_peering_bit/top_left_corner = 0 9:1/0/terrains_peering_bit/top_side = 0 9:1/0/terrains_peering_bit/top_right_corner = 0 10:1/0 = 0 @@ -1059,11 +1049,9 @@ texture_region_size = Vector2i(64, 64) 10:2/0/terrains_peering_bit/right_side = 0 10:2/0/terrains_peering_bit/bottom_right_corner = 0 10:2/0/terrains_peering_bit/bottom_side = 0 -10:2/0/terrains_peering_bit/bottom_left_corner = 0 10:2/0/terrains_peering_bit/left_side = 0 10:2/0/terrains_peering_bit/top_left_corner = 0 10:2/0/terrains_peering_bit/top_side = 0 -10:2/0/terrains_peering_bit/top_right_corner = 0 11:2/0 = 0 11:2/0/terrain_set = 0 11:2/0/terrain = 0 diff --git a/stages/terrain/region/scripts/camera_fog.gd b/stages/terrain/region/scripts/camera_fog.gd deleted file mode 100644 index d6489af..0000000 --- a/stages/terrain/region/scripts/camera_fog.gd +++ /dev/null @@ -1,10 +0,0 @@ -extends ColorRect - -@export var camera : Camera - -func _process(_delta: float) -> void: - if is_node_ready(): - if visible: - if camera: - material.set_shader_parameter( "camera_position", camera.global_position ) - # material.set_shader_parameter( "camera_offset", camera.offset ) \ No newline at end of file diff --git a/stages/terrain/region/scripts/chunk.gd b/stages/terrain/region/scripts/chunk.gd index e35d183..b9ef698 100644 --- a/stages/terrain/region/scripts/chunk.gd +++ b/stages/terrain/region/scripts/chunk.gd @@ -1,4 +1,3 @@ -@tool extends Node2D class_name Chunk @@ -6,16 +5,22 @@ const GENERATION_NUMBER = 4 const NOISE_IMAGE_SIZE := 150 -const MAX_DECONTAMINATION_DISTANCE=2 +const MAX_DECONTAMINATION_DISTANCE=0 +const MAX_TALION_DISTANCE=2 -const ROCK_NOISE_FREQUENCY := 0.01 -const DECONTAMINATION_NOISE_FREQUENCY := 0.01 +const RANDOM_PADDING_NOISE_FREQUENCY := 0.01 +const ROCK_NOISE_FREQUENCY := 0.005 +const CRISTAL_NOISE_FREQUENCY := 0.008 +const DECONTAMINATION_NOISE_FREQUENCY := 0.008 + +const CHUNK_RANDOM_PADDING := 1 @export var region_data : RegionData @export var chunk_coord : Vector2i var is_generated : bool = false +var random_padding_noise : Noise = null var rock_noise_image : Noise = null var cristal_noise_image : Noise = null var decontamination_noise_image : Noise = null @@ -28,13 +33,21 @@ var generation_thread : Thread var generation_semaphore : Semaphore -@export_tool_button("Update", "Callable") var update_action = func(): - generation_semaphore.post() - for c in get_children(): - c.queue_free() +var all_tiles : Array[Vector2i] +var all_global_tiles : Array[Vector2i] - setup_position() - generate() +# @export_tool_button("Update", "Callable") var update_action = func(): +# generation_semaphore.post() +# for c in get_children(): +# c.queue_free() + +# setup_position() +# # queue_redraw() +# generate() + +# @export_tool_button("Clear", "Callable") var clear_action = func(): +# for c in get_children(): +# c.queue_free() func _init( _chunk_coord : Vector2i = Vector2i.ZERO, @@ -59,8 +72,11 @@ func setup_position(): func generate(): rock_noise_image = generate_noise(region_data.region_seed + 1, ROCK_NOISE_FREQUENCY) decontamination_noise_image = generate_noise(region_data.region_seed + 2, DECONTAMINATION_NOISE_FREQUENCY) - cristal_noise_image = generate_noise(region_data.region_seed + 3, ROCK_NOISE_FREQUENCY) + cristal_noise_image = generate_noise(region_data.region_seed + 3, CRISTAL_NOISE_FREQUENCY) + random_padding_noise = generate_noise(region_data.region_seed + 10, RANDOM_PADDING_NOISE_FREQUENCY) + all_tiles = calculate_all_tiles() + rock_layer = RockLayer.new(region_data) ground_layer = GroundLayer.new(region_data) decontamination_layer = DecontaminationLayer.new(region_data) @@ -81,13 +97,55 @@ func generate(): is_generated = true -# func unload(): -# for x in range(Region.CHUNK_TILE_SIZE): -# for y in range(Region.CHUNK_TILE_SIZE): -# var global_coord = Vector2i(x, y) + Region.CHUNK_TILE_SIZE * chunk_coord -# region.rock_layer.erase_cell(global_coord) -# region.ground_layer.erase_cell(global_coord) -# region.decontamination_layer.erase_cell(global_coord) +func calculate_all_tiles() -> Array[Vector2i]: + var coords : Array[Vector2i] = [] + + for x in range(-Region.CHUNK_TILE_SIZE, Region.CHUNK_TILE_SIZE * 2): + for y in range(-Region.CHUNK_TILE_SIZE, Region.CHUNK_TILE_SIZE * 2): + var coord := Vector2i(x,y) + if is_tile_in_chunk(coord): + coords.append(coord) + return coords + +func is_tile_in_chunk(coord : Vector2i) -> bool: + var tile_value = get_tile_value_from_noise(coord, random_padding_noise) + + if ( + coord.x > Region.CHUNK_TILE_SIZE + CHUNK_RANDOM_PADDING - 1 + or coord.x < -CHUNK_RANDOM_PADDING + or coord.y > Region.CHUNK_TILE_SIZE + CHUNK_RANDOM_PADDING - 1 + or coord.y < - CHUNK_RANDOM_PADDING + ): + return false + else: + var possible_chunk_x : Array[int] = [0] + var possible_chunk_y : Array[int] = [0] + + if coord.x >= Region.CHUNK_TILE_SIZE - CHUNK_RANDOM_PADDING: + possible_chunk_x.append(1) + if coord.y >= Region.CHUNK_TILE_SIZE - CHUNK_RANDOM_PADDING: + possible_chunk_y.append(1) + if coord.x < CHUNK_RANDOM_PADDING: + possible_chunk_x.append(-1) + if coord.y < CHUNK_RANDOM_PADDING: + possible_chunk_y.append(-1) + + var possible_chunk : Array[String] = [] + for dir_x in possible_chunk_x: + for dir_y in possible_chunk_y: + possible_chunk.append( + "%d:%d" % [dir_x + chunk_coord.x, dir_y + chunk_coord.y] + ) + possible_chunk.sort() + + var choosen_chunk = possible_chunk[ + floori(tile_value * len(possible_chunk)) + ] + + return ( + choosen_chunk == "%d:%d" % [chunk_coord.x, chunk_coord.y] + ) + # Debug # func _draw(): @@ -98,17 +156,17 @@ func generate(): # 3 # ) - # for x in range(NOISE_IMAGE_SIZE): - # for y in range(NOISE_IMAGE_SIZE): - # var noise_value = rock_noise_image.get_noise_2d( - # x, - # y - # ) - # draw_rect( - # Rect2(Vector2i(x,y) * Region.CHUNK_SIZE / NOISE_IMAGE_SIZE, Vector2i.ONE * Region.CHUNK_SIZE / NOISE_IMAGE_SIZE), - # Color.WHITE * ((noise_value+1)/2), - # true, - # ) +# for x in range(NOISE_IMAGE_SIZE): +# for y in range(NOISE_IMAGE_SIZE): +# var noise_value = random_padding_noise.get_noise_2d( +# x, +# y +# ) +# draw_rect( +# Rect2(Vector2i(x,y) * Region.CHUNK_SIZE / NOISE_IMAGE_SIZE, Vector2i.ONE * Region.CHUNK_SIZE / NOISE_IMAGE_SIZE), +# Color.WHITE * ((noise_value+1)/2), +# true, +# ) func generate_noise( noise_seed : int, @@ -118,7 +176,7 @@ func generate_noise( var noise: FastNoiseLite = FastNoiseLite.new() noise.seed = noise_seed noise.noise_type = FastNoiseLite.TYPE_SIMPLEX - noise.frequency = 0.01 + noise.frequency = frequency noise.fractal_type = FastNoiseLite.FRACTAL_NONE noise.fractal_weighted_strength = 1.0 noise.offset = Vector3( @@ -139,21 +197,24 @@ func get_tile_value_from_noise(tile_position : Vector2i, noise : Noise) -> float func generate_rocks(layer : RockLayer): var cristals : Array[Vector2i] = [] var rocks : Array[Vector2i] = [] - for x in range(0, Region.CHUNK_TILE_SIZE): - for y in range(0, Region.CHUNK_TILE_SIZE): - var tile_type := get_generated_rock_type(Vector2i(x, y)) - var coord = Vector2i(x, y) - if tile_type == RockLayer.TileType.CRISTAL: - cristals.append(coord) - elif tile_type == RockLayer.TileType.ROCK: - rocks.append(coord) + for coord in all_tiles: + var tile_type := get_generated_rock_type(coord) + if tile_type == RockLayer.TileType.CRISTAL: + cristals.append(coord) + elif tile_type == RockLayer.TileType.ROCK: + rocks.append(coord) layer.place_rocks(cristals, RockLayer.TileType.CRISTAL) layer.place_rocks(rocks, RockLayer.TileType.ROCK) func get_generated_rock_type(coord : Vector2i) -> RockLayer.TileType: - var rock_tile_value : float = get_tile_value_from_noise(coord, rock_noise_image) - var cristal_tile_value : float = get_tile_value_from_noise(coord, cristal_noise_image) + var rock_tile_value : float = ( + get_tile_value_from_noise(coord, rock_noise_image) + ) + var cristal_tile_value : float = ( + 1. if chunk_coord.distance_to(Vector2i.ZERO) > MAX_TALION_DISTANCE + else get_tile_value_from_noise(coord, cristal_noise_image) + ) var saved_diff := region_data.rock_tiles_data.get_tile_diff_for_local_coord(coord, chunk_coord) if saved_diff == TilesDiffData.TileDiff.ABSENT: @@ -169,30 +230,27 @@ func get_generated_rock_type(coord : Vector2i) -> RockLayer.TileType: func generate_ground(layer : GroundLayer): var coords : Array[Vector2i] = [] - for x in range(0, Region.CHUNK_TILE_SIZE): - for y in range(0,Region.CHUNK_TILE_SIZE): - coords.append(Vector2i(x,y)) + for coord in all_tiles: + coords.append(coord) layer.place_ground(coords) func generate_decontamination(layer : DecontaminationLayer): var decontamination_tiles : Array[Vector2i] = [] - for x in range(0, Region.CHUNK_TILE_SIZE): - for y in range(0, Region.CHUNK_TILE_SIZE): - var coord = Vector2i(x,y) - var tile_value : float = ( - 1. if chunk_coord.distance_to(Vector2i.ZERO) > MAX_DECONTAMINATION_DISTANCE - else get_tile_value_from_noise(coord, decontamination_noise_image) + for coord in all_tiles: + var tile_value : float = ( + 1. if chunk_coord.distance_to(Vector2i.ZERO) > MAX_DECONTAMINATION_DISTANCE + else get_tile_value_from_noise(coord, decontamination_noise_image) + ) + var saved_diff : TilesDiffData.TileDiff = region_data.decontamination_tiles_data.get_tile_diff_for_local_coord(coord, chunk_coord) + if ( + ( + (tile_value < region_data.decontamination_threshold) + or saved_diff == TilesDiffData.TileDiff.PRESENT ) - var saved_diff : TilesDiffData.TileDiff = region_data.decontamination_tiles_data.get_tile_diff_for_local_coord(coord, chunk_coord) - if ( - ( - (tile_value < region_data.decontamination_threshold) - or saved_diff == TilesDiffData.TileDiff.PRESENT - ) - and saved_diff != TilesDiffData.TileDiff.ABSENT - ): - decontamination_tiles.append(Vector2i(x,y)) + and saved_diff != TilesDiffData.TileDiff.ABSENT + ): + decontamination_tiles.append(coord) layer.place_decontaminations( decontamination_tiles, diff --git a/stages/terrain/region/scripts/modifiers/arid_modifier.gd b/stages/terrain/region/scripts/modifiers/arid_modifier.gd index 61265aa..7a235cb 100644 --- a/stages/terrain/region/scripts/modifiers/arid_modifier.gd +++ b/stages/terrain/region/scripts/modifiers/arid_modifier.gd @@ -7,8 +7,12 @@ func get_modifier_name() -> String: func get_description() -> String: return tr("ARID_MODIFIER_DESC_TEXT") +func get_icon() -> Texture: + return preload("res://common/icons/droplet-off.svg") + func modify_decontamination_threshold(decontamination_threshold : float) -> float: - return decontamination_threshold * (1. - 0.2*level) + return decontamination_threshold * (0.5) func modify_start_decontamination_zone_radius(start_decontamination_zone_radius : int) -> int: - return max(1,roundi(start_decontamination_zone_radius * (1. - 0.2*level))) \ No newline at end of file + return max(1,roundi(start_decontamination_zone_radius * (0.5))) + diff --git a/stages/terrain/region/scripts/modifiers/contaminated_modifier.gd b/stages/terrain/region/scripts/modifiers/contaminated_modifier.gd new file mode 100644 index 0000000..1f0a982 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/contaminated_modifier.gd @@ -0,0 +1,20 @@ +extends RegionModifier +class_name ContaminatedModifier + +func get_modifier_name() -> String: + return tr("CONTAMINATED") + +func get_description() -> String: + return tr("CONTAMINATED_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/virus.svg") + +func get_card_section_color() -> Color: + return Color("8b2dffff") + +func modify_plant_seed_random_loose(plant_seed_random_loose : int) -> int: + return plant_seed_random_loose + 1 + +func modify_plant_seed_number(plant_seed_number : int) -> int: + return plant_seed_number - 1 \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/contaminated_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/contaminated_modifier.gd.uid new file mode 100644 index 0000000..65c4cc3 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/contaminated_modifier.gd.uid @@ -0,0 +1 @@ +uid://i14hpayg3owb diff --git a/stages/terrain/region/scripts/modifiers/destination_modifier.gd b/stages/terrain/region/scripts/modifiers/destination_modifier.gd new file mode 100644 index 0000000..a1567de --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/destination_modifier.gd @@ -0,0 +1,36 @@ +extends RegionModifier +class_name DestinationModifier + +@export var destination_scene : Scene + +func get_modifier_name() -> String: + return tr("DESTINATION") + +func get_description() -> String: + return tr("INTERNODE_PROGRAMMED_DESTINATION") + +func get_icon() -> Texture: + return preload("res://common/icons/map-pin.svg") + +func get_card_section_color() -> Color: + return Color("25c147") + +func disable_objective() -> bool: + return true + +func modify_region_name(_name : String) -> String: + return destination_scene.get_scene_title() + +func region_ready(region : Region) -> void: + var door = generate_door( + destination_scene.get_scene_title(), + "", + destination_scene + ) + + door.available = true + + region.add_entity(door) + region.random_move_object(door,Region.DOORS_RANDOM_MOVEMENT) + region.recharge_station.available = false + region.recharge_station.visible = false diff --git a/stages/terrain/region/scripts/modifiers/destination_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/destination_modifier.gd.uid new file mode 100644 index 0000000..b40c3d5 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/destination_modifier.gd.uid @@ -0,0 +1 @@ +uid://dcdleyf4tgj27 diff --git a/stages/terrain/region/scripts/modifiers/harsh_modifier.gd b/stages/terrain/region/scripts/modifiers/harsh_modifier.gd index cf75a55..056aed6 100644 --- a/stages/terrain/region/scripts/modifiers/harsh_modifier.gd +++ b/stages/terrain/region/scripts/modifiers/harsh_modifier.gd @@ -7,5 +7,8 @@ func get_modifier_name() -> String: func get_description() -> String: return tr("HARSH_MODIFIER_DESC_TEXT") +func get_icon() -> Texture: + return preload("res://common/icons/wind.svg") + func modify_objective(objective : int) -> int: - return roundi(objective * (1. + 0.2*level)) \ No newline at end of file + return roundi(objective * 1.5) \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/humid_modifier.gd b/stages/terrain/region/scripts/modifiers/humid_modifier.gd index af9ed98..a75209c 100644 --- a/stages/terrain/region/scripts/modifiers/humid_modifier.gd +++ b/stages/terrain/region/scripts/modifiers/humid_modifier.gd @@ -7,5 +7,8 @@ func get_modifier_name() -> String: func get_description() -> String: return tr("HUMID_MODIFIER_DESC_TEXT") +func get_icon() -> Texture: + return preload("res://common/icons/cloud-rain.svg") + func modify_charge(charge : int) -> int: - return charge - level \ No newline at end of file + return charge - 2 \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/instable_modifier.gd b/stages/terrain/region/scripts/modifiers/instable_modifier.gd new file mode 100644 index 0000000..b26e728 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/instable_modifier.gd @@ -0,0 +1,17 @@ +extends RegionModifier +class_name InstableModifier + +func get_modifier_name() -> String: + return tr("INSTABLE") + +func get_description() -> String: + return tr("INSTABLE_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/atom.svg") + +func get_card_section_color() -> Color: + return Color("25c147") + +func modify_mutation_probability(plant_mutation_probability) -> float: + return plant_mutation_probability * 1.5 \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/instable_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/instable_modifier.gd.uid new file mode 100644 index 0000000..cf089ac --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/instable_modifier.gd.uid @@ -0,0 +1 @@ +uid://benwcbtijith7 diff --git a/stages/terrain/region/scripts/modifiers/poor_modifier.gd b/stages/terrain/region/scripts/modifiers/poor_modifier.gd index 568d93c..0a6c0a2 100644 --- a/stages/terrain/region/scripts/modifiers/poor_modifier.gd +++ b/stages/terrain/region/scripts/modifiers/poor_modifier.gd @@ -7,5 +7,8 @@ func get_modifier_name() -> String: func get_description() -> String: return tr("POOR_MODIFIER_DESC_TEXT") +func get_icon() -> Texture: + return preload("res://common/icons/cactus.svg") + func modify_cristal_threshold(cristal_threshold : float) -> float: - return cristal_threshold * (1. - 0.2*level) \ No newline at end of file + return cristal_threshold * 0.5 \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/radioactive_modifier.gd b/stages/terrain/region/scripts/modifiers/radioactive_modifier.gd new file mode 100644 index 0000000..770bc71 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/radioactive_modifier.gd @@ -0,0 +1,17 @@ +extends RegionModifier +class_name RadioactiveModifier + +func get_modifier_name() -> String: + return tr("RADIOACTIVE") + +func get_description() -> String: + return tr("RADIOACTIVE_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/radioactive.svg") + +func get_card_section_color() -> Color: + return Color("8b2dffff") + +func modify_plant_base_score(plant_base_score : int) -> int: + return plant_base_score - 1 \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/radioactive_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/radioactive_modifier.gd.uid new file mode 100644 index 0000000..90cb939 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/radioactive_modifier.gd.uid @@ -0,0 +1 @@ +uid://bqpi0ct8pryax diff --git a/stages/terrain/region/scripts/modifiers/region_modifier.gd b/stages/terrain/region/scripts/modifiers/region_modifier.gd index d8f67b9..12f6b92 100644 --- a/stages/terrain/region/scripts/modifiers/region_modifier.gd +++ b/stages/terrain/region/scripts/modifiers/region_modifier.gd @@ -2,19 +2,34 @@ extends Resource class_name RegionModifier -var level : int = 1 +const DEFAULT_MODIFIER_COLOR = Color("ff006eff") +const DEFAULT_ICON = preload("res://common/icons/cloud.svg") + +const DOOR_SCENE = preload("res://entities/interactables/door/door.tscn") + var modifier_name : String : get = get_modifier_name var description : String : get = get_description +@export var modifier_seed : int = 0 -func _init(_level : int = 1): - level = _level +func _init(): + if modifier_seed == 0: + modifier_seed = randi() @abstract func get_modifier_name() -> String @abstract func get_description() -> String -func get_difficulty_score() -> float: - return float(level) +func get_icon() -> Texture: + return DEFAULT_ICON + +func get_card_section_color() -> Color: + return DEFAULT_MODIFIER_COLOR + +func region_ready(_region : Region) -> void: + pass + +func modify_region_name(name : String) -> String: + return name func modify_charge(charge : int) -> int: return charge @@ -32,4 +47,60 @@ func modify_cristal_threshold(cristal_threshold : float) -> float: return cristal_threshold func modify_start_decontamination_zone_radius(start_decontamination_zone_radius : int) -> int: - return start_decontamination_zone_radius \ No newline at end of file + return start_decontamination_zone_radius + +func modify_seed_rarity_pool(seed_rarity_pool : Array[int]) -> Array[int]: + return seed_rarity_pool + +func modify_plant_growing_time(plant_growing_time : int) -> int: + return plant_growing_time + +func modify_plant_lifetime(plant_lifetime : int) -> int: + return plant_lifetime + +func modify_plant_seed_number(plant_seed_number : int) -> int: + return plant_seed_number + +func modify_plant_base_score(plant_base_score : int) -> int: + return plant_base_score + +func modify_plant_seed_random_loose(plant_seed_random_loose : int) -> int: + return plant_seed_random_loose + +func modify_plant_influence_radius(plant_influence_radius : float) -> float: + return plant_influence_radius + +func modify_mutation_probability(plant_mutation_probability) -> float: + return plant_mutation_probability + +func modify_mutation_max_number(plant_mutation_max_number) -> int: + return plant_mutation_max_number + +func disable_objective() -> bool: + return false + +func card_section() -> CardSectionInfo: + var section := CardSectionInfo.new( + get_modifier_name(), + get_description(), + ) + + section.title_icon = get_icon() + section.color = get_card_section_color() + + return section + +func generate_door( + title : String, + desc : String, + to_scene : Scene = null, +) -> Door: + var new_door = DOOR_SCENE.instantiate() as Door + new_door.name = "Door%d" % modifier_seed + new_door.door_id = modifier_seed + new_door.to_scene = to_scene + new_door.default_info_title = title + new_door.default_info_desc = desc + new_door.present = true + + return new_door \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/resonnance_modifier.gd b/stages/terrain/region/scripts/modifiers/resonnance_modifier.gd new file mode 100644 index 0000000..2821056 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/resonnance_modifier.gd @@ -0,0 +1,20 @@ +extends RegionModifier +class_name ResonnanceModifier + +func get_modifier_name() -> String: + return tr("RESONNANCE") + +func get_description() -> String: + return tr("RESONNANCE_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/wave-sine.svg") + +func get_card_section_color() -> Color: + return Color("25c147") + +func modify_seed_rarity_pool(seed_rarity_pool : Array[int]) -> Array[int]: + var rarity = seed_rarity_pool.duplicate_deep() + for i in range(len(rarity)): + rarity[i] += 1 + return rarity diff --git a/stages/terrain/region/scripts/modifiers/resonnance_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/resonnance_modifier.gd.uid new file mode 100644 index 0000000..570933e --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/resonnance_modifier.gd.uid @@ -0,0 +1 @@ +uid://dsowdgj1wspvb diff --git a/stages/terrain/region/scripts/modifiers/rocky_modifier.gd b/stages/terrain/region/scripts/modifiers/rocky_modifier.gd new file mode 100644 index 0000000..c8b003f --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/rocky_modifier.gd @@ -0,0 +1,17 @@ +extends RegionModifier +class_name RockyModifier + +func get_modifier_name() -> String: + return tr("ROCKY") + +func get_description() -> String: + return tr("ROCKY_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/mountain.svg") + +func get_card_section_color() -> Color: + return Color("8b2dffff") + +func modify_cristal_threshold(cristal_threshold : float) -> float: + return cristal_threshold * 0. \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/rocky_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/rocky_modifier.gd.uid new file mode 100644 index 0000000..0671456 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/rocky_modifier.gd.uid @@ -0,0 +1 @@ +uid://bmhfhct6wa218 diff --git a/stages/terrain/region/scripts/modifiers/sandy_modifier.gd b/stages/terrain/region/scripts/modifiers/sandy_modifier.gd new file mode 100644 index 0000000..0e2a113 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/sandy_modifier.gd @@ -0,0 +1,14 @@ +extends RegionModifier +class_name SandyModifier + +func get_modifier_name() -> String: + return tr("SANDY") + +func get_description() -> String: + return tr("SANDY_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/grain.svg") + +func modify_plant_influence_radius(plant_influence_radius : float) -> float: + return plant_influence_radius / 2 \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/sandy_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/sandy_modifier.gd.uid new file mode 100644 index 0000000..dabec94 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/sandy_modifier.gd.uid @@ -0,0 +1 @@ +uid://b0ca7k6lh57f diff --git a/stages/terrain/region/scripts/modifiers/storm_modifier.gd b/stages/terrain/region/scripts/modifiers/storm_modifier.gd new file mode 100644 index 0000000..19b6379 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/storm_modifier.gd @@ -0,0 +1,14 @@ +extends RegionModifier +class_name StormModifier + +func get_modifier_name() -> String: + return tr("STORM") + +func get_description() -> String: + return tr("STORM_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/tornado.svg") + +func modify_objective(objective : int) -> int: + return roundi(objective * 2) \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/storm_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/storm_modifier.gd.uid new file mode 100644 index 0000000..668cfda --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/storm_modifier.gd.uid @@ -0,0 +1 @@ +uid://cf4ljloq40v0p diff --git a/stages/terrain/region/scripts/modifiers/toxic_modifier.gd b/stages/terrain/region/scripts/modifiers/toxic_modifier.gd new file mode 100644 index 0000000..9d4039b --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/toxic_modifier.gd @@ -0,0 +1,14 @@ +extends RegionModifier +class_name ToxicModifier + +func get_modifier_name() -> String: + return tr("TOXIC") + +func get_description() -> String: + return tr("TOXIC_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/biohazard.svg") + +func modify_plant_lifetime(plant_lifetime : int) -> int: + return plant_lifetime - 1 \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/toxic_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/toxic_modifier.gd.uid new file mode 100644 index 0000000..e1f6477 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/toxic_modifier.gd.uid @@ -0,0 +1 @@ +uid://8pqatifhi7fs diff --git a/stages/terrain/region/scripts/modifiers/tutorial_modifier.gd b/stages/terrain/region/scripts/modifiers/tutorial_modifier.gd new file mode 100644 index 0000000..cbb6c64 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/tutorial_modifier.gd @@ -0,0 +1,66 @@ +extends RegionModifier +class_name TutorialModifier + +const TUTORIAL_SCENE_PATH = ("res://gui/game/tutorial/tutorial.tscn") + +func get_modifier_name() -> String: + return tr("TUTORIAL") + +func get_description() -> String: + return tr("") + +func get_icon() -> Texture: + return preload("res://common/icons/help-hexagon.svg") + +func modify_charge(charge : int) -> int: + return charge+10 + +func get_card_section_color() -> Color: + return Color("25c147") + +func modify_region_name(_name : String) -> String: + return "ASTRA_BASE" + +func region_ready(region : Region) -> void: + generate_astra_door(region) + var garage_door := generate_garage_door(region) + var tutorial := generate_tutorial(region) + tutorial.succeded.connect( + func (): + garage_door.available = true + ) + +func generate_astra_door(region : Region) -> Door: + var astra_door = generate_door( + tr("ASTRA_FACTORY"), + tr("ASTRA_FACTORY_TEXT"), + AstraScene.new() + ) + astra_door.available = false + astra_door.name = "AstraDoor" + + region.add_entity(astra_door) + astra_door.global_position = region.data.player_spawn + Vector2.UP * 100 + return astra_door + +func generate_garage_door(region : Region) -> Door: + var garage_door = generate_door( + tr("MYSTERIOUS_DOOR"), + tr("MYSTERIOUS_DOOR_TEXT"), + GarageScene.new() + ) + garage_door.available = region.data.state == RegionData.State.SUCCEEDED + garage_door.name = "GarageDoor" + + region.add_entity(garage_door) + region.random_move_object(garage_door,Region.SPAWN_OBJECT_RANDOM_MOVEMENT + 100) + return garage_door + +func generate_tutorial(region : Region) -> Tutorial: + var tutorial := load(TUTORIAL_SCENE_PATH).instantiate() as Tutorial + region.add_child(tutorial) + tutorial.region = region + tutorial.game_gui = region.find_child("GameGui") + tutorial.player = region.entity_container.find_child("Player") + return tutorial + diff --git a/stages/terrain/region/scripts/modifiers/tutorial_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/tutorial_modifier.gd.uid new file mode 100644 index 0000000..66367dd --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/tutorial_modifier.gd.uid @@ -0,0 +1 @@ +uid://dbqf4v74j1le diff --git a/stages/terrain/region/scripts/modifiers/vending_machine_modifier.gd b/stages/terrain/region/scripts/modifiers/vending_machine_modifier.gd new file mode 100644 index 0000000..4d99a9e --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/vending_machine_modifier.gd @@ -0,0 +1,27 @@ +extends RegionModifier +class_name VendingMachineModifier + +const VENDING_MACHINES_ICON = preload("res://common/icons/building-store.svg") + +func get_modifier_name() -> String: + return tr("VENDING_MACHINES") + +func get_description() -> String: + return tr("VENDING_MACHINES_MODIFIER_DESC_TEXT") + +func get_icon() -> Texture: + return preload("res://common/icons/building-store.svg") + +func get_card_section_color() -> Color: + return Color("25c147") + +func region_ready(region) -> void: + var new_vending_machine_door = generate_door( + tr("VENDING_MACHINES"), + tr("VENDING_MACHINES_DOOR_DESC_TEXT") + ) + new_vending_machine_door.to_scene = VendingMachineScene.new(new_vending_machine_door.door_id) + new_vending_machine_door.available = region.data.completed_doors.find(new_vending_machine_door.door_id) == -1 + + region.add_entity(new_vending_machine_door) + region.random_move_object(new_vending_machine_door,Region.DOORS_RANDOM_MOVEMENT) diff --git a/stages/terrain/region/scripts/modifiers/vending_machine_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/vending_machine_modifier.gd.uid new file mode 100644 index 0000000..c29e0ba --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/vending_machine_modifier.gd.uid @@ -0,0 +1 @@ +uid://b1k5c8lxkbgby diff --git a/stages/terrain/region/scripts/post_process/clouds.gd b/stages/terrain/region/scripts/post_process/clouds.gd new file mode 100644 index 0000000..80284cd --- /dev/null +++ b/stages/terrain/region/scripts/post_process/clouds.gd @@ -0,0 +1,52 @@ +extends ColorRect + +@export var camera : Camera +@export var region : Region + +const PASSING_DAY_CLOUD_SPEED = 5 +const CLOUD_DELAY_ACC_LERP = 0.2 + +var in_passing_day := false +var cloud_delay := 0. +var cloud_delay_acc = 0. + +func _ready(): + if region: + update_noise() + + region.data.pass_day_proceeded.connect( + func(_d): + update_noise() + cloud_delay = 0 + + ) + else: + printerr("No region selected for clouds") + +func _process(_delta: float) -> void: + if is_node_ready(): + if region and region.data.in_passing_day_animation: + cloud_delay_acc = lerp(cloud_delay_acc,1.,CLOUD_DELAY_ACC_LERP) + else: + cloud_delay_acc = lerp(cloud_delay_acc,0.,CLOUD_DELAY_ACC_LERP) + + cloud_delay += cloud_delay_acc * PASSING_DAY_CLOUD_SPEED + + if visible: + if camera: + material.set_shader_parameter("camera_zoom", camera.zoom ) + material.set_shader_parameter("camera_position", camera.global_position ) + material.set_shader_parameter("viewport_size", get_viewport().get_visible_rect().size) + material.set_shader_parameter("cloud_delay", cloud_delay) + +func update_noise() -> void: + var texture := NoiseTexture2D.new() + texture.seamless = true + + var noise := FastNoiseLite.new() + noise.noise_type = FastNoiseLite.TYPE_CELLULAR + noise.seed = region.data.region_name.hash() + region.data.charges + + texture.noise = noise + + material.set_shader_parameter("noise_texture", texture) \ No newline at end of file diff --git a/stages/terrain/region/scripts/post_process/clouds.gd.uid b/stages/terrain/region/scripts/post_process/clouds.gd.uid new file mode 100644 index 0000000..af5f380 --- /dev/null +++ b/stages/terrain/region/scripts/post_process/clouds.gd.uid @@ -0,0 +1 @@ +uid://b366do6jdx87h diff --git a/stages/terrain/region/scripts/region.gd b/stages/terrain/region/scripts/region.gd index 27b12d4..bfeb118 100644 --- a/stages/terrain/region/scripts/region.gd +++ b/stages/terrain/region/scripts/region.gd @@ -9,17 +9,15 @@ const TILE_SET : TileSet = preload("res://stages/terrain/region/resources/moss_b const TILE_SCALE = 1 const TILE_SIZE : int = roundi(TILE_SET.tile_size.x * TILE_SCALE) const SPAWN_OBJECT_RANDOM_MOVEMENT = 200 +const DOORS_RANDOM_MOVEMENT = 3000 -const CHUNK_TILE_SIZE : int = 20 +const CHUNK_TILE_SIZE : int = 10 const CHUNK_SIZE = CHUNK_TILE_SIZE * TILE_SIZE -const CHUNK_LOAD_DISTANCE : int = 1 -const CHUNK_UNLOAD_DISTANCE : int = 2 +const CHUNK_LOAD_DISTANCE : int = 2 +const CHUNK_UNLOAD_DISTANCE : int = 3 const MAX_GENERATION_THREAD = 1 # Crash when superior to 1 -@export var first_loot_number : int = 3 -@export var loot_item_number : Array[int] = [1,2] - var is_generated : bool : get = check_is_generated var generated_value : float : get = get_generated_value @@ -36,6 +34,8 @@ var score_by_plant : Dictionary[PlantData, int] = {} var generated_chunks : Array[Chunk] = [] var generation_semaphore : Semaphore +@onready var recharge_station : TruckRecharge = %RechargeStation + # Cheat Code func _input(_e): if ( @@ -44,7 +44,6 @@ func _input(_e): and Input.is_action_pressed("move_left") and Input.is_action_just_pressed("action") ): - %Tutorial.finish_tutorial() data.succeded.emit() data.state = RegionData.State.SUCCEEDED data.update() @@ -72,17 +71,21 @@ func _ready(): if e is Plant: data.add_plant_data(e.data, false) - %AstraDoor.global_position = data.player_spawn player.global_position = data.player_position - setup_flagged_properties() - generate_near_chunks(player) - spawn_object_random_move(%RechargeStation) - %RechargeStation.update() - spawn_object_random_move(%BoreaDoor) - spawn_object_random_move(%ShipGarageDoor) + random_move_object(recharge_station, SPAWN_OBJECT_RANDOM_MOVEMENT) + recharge_station.update() + + for m in data.modifiers: + m.region_ready(self) + + if not GameInfo.game_data.current_run.story_step is TutorialStoryStep: + GameInfo.game_data.player_data.inventory.add_item(Detector.new()) + GameInfo.game_data.player_data.inventory.add_item(Pickaxe.new()) + GameInfo.game_data.player_data.inventory.add_item(Fork.new()) + GameInfo.game_data.player_data.inventory.add_item(ShipPortal.new()) func _process(_d): if player: @@ -153,40 +156,34 @@ func save(): data.player_position = player.global_position GameInfo.save_game_data() -func spawn_object_random_move(object : Node2D): +func random_move_object( + object : Node2D, + random_movement: int = SPAWN_OBJECT_RANDOM_MOVEMENT, + offset : Vector2 = Vector2.ZERO +): var rng := RandomNumberGenerator.new() rng.seed = data.region_seed + object.name.hash() object.position = Vector2( - rng.randf_range(-SPAWN_OBJECT_RANDOM_MOVEMENT,+SPAWN_OBJECT_RANDOM_MOVEMENT), - rng.randf_range(-SPAWN_OBJECT_RANDOM_MOVEMENT,SPAWN_OBJECT_RANDOM_MOVEMENT) - ) + rng.randf_range(-random_movement,random_movement), + rng.randf_range(-random_movement,random_movement) + ) + offset -func setup_flagged_properties(): - - %AstraDoor.visible = false - %ShipGarageDoor.visible = false - %BoreaDoor.visible = false - - for f in data.flags: - match f: - "tutorial": - %AstraDoor.visible = true - %ShipGarageDoor.visible = true - %AstraDoor.available = false - %ShipGarageDoor.available = data.state == RegionData.State.SUCCEEDED - %Tutorial.succeded.connect( - func (): - %ShipGarageDoor.available = true - ) - "borea": - %BoreaDoor.visible = true - %RechargeStation.visible = false + dig_hole(object.position, 5) func is_chunk_generated(coord : Vector2i): return generated_chunks.find_custom( func (c: Chunk) : return get_chunk_key(c.chunk_coord) == get_chunk_key(coord) ) != -1 + +func finish_generation(): + var fall_anim = ( + not GameInfo.game_data.current_run.story_step is TutorialStoryStep + and data.entered_door == "" + ) + player.appear(fall_anim) + data.entered_door = "" + #endregion #region ------------------ Usage ------------------ @@ -199,6 +196,11 @@ func plant( data.add_plant_data(new_plant_data) var new_plant = Plant.new(new_plant_data) add_entity(new_plant, plant_position) + + for m in new_plant_data.mutations: + if not m.get_mutation_id() in GameInfo.game_data.progression_data.planted_mutation_ids: + GameInfo.game_data.progression_data.planted_mutation_ids.append(m.get_mutation_id()) + return true func pass_day(): @@ -225,19 +227,13 @@ func pass_day(): data.end_pass_day() save() -func get_chunk_for_coord(tiles_coord : Vector2i) -> Chunk: - var chunk_coord = Vector2i( - floori(float(tiles_coord.x)/Region.CHUNK_TILE_SIZE), - floori(float(tiles_coord.y)/Region.CHUNK_TILE_SIZE), - ) - - var id = generated_chunks.find_custom( - func (c: Chunk): return c.chunk_coord.x == chunk_coord.x and c.chunk_coord.y == chunk_coord.y - ) - - if id == -1 or not generated_chunks[id].is_generated: - return null - return generated_chunks[id] +func get_chunk_for_coord(tile_coord : Vector2i) -> Chunk: + for chunk in generated_chunks: + if chunk.is_generated: + var local_coord = TilesDiffData.get_local_coord(tile_coord, chunk.chunk_coord) + if chunk.is_tile_in_chunk(local_coord): + return chunk + return null func is_coords_decontaminated(tiles_coords : Array[Vector2i]): for coord in tiles_coords: @@ -248,7 +244,6 @@ func is_coords_decontaminated(tiles_coords : Array[Vector2i]): return false return true - func dig_rocks(tiles_coords : Array[Vector2i], save_tiles_diff := true, loot := true): if save_tiles_diff : data.rock_tiles_data.update_tiles_diff(tiles_coords, TilesDiffData.TileDiff.ABSENT) @@ -263,12 +258,39 @@ func dig_rocks(tiles_coords : Array[Vector2i], save_tiles_diff := true, loot := chunk.rock_layer.remove_rocks([local_coord]) +func dig_hole(game_pos: Vector2, size : int): + var hole_tiles : Array[Vector2i] = [] + var tile_position := Vector2i( + roundi(game_pos.x/float(Region.TILE_SIZE)), + roundi(game_pos.y/float(Region.TILE_SIZE)) + ) + for x in range(-size, size): + for y in range(-size, size): + var coord = Vector2i(x,y) + if coord.distance_to(Vector2.ZERO) < size: + hole_tiles.append(coord + tile_position) + dig_rocks(hole_tiles,false,false) + func loot_talion(coord : Vector2i): - var new_seed = Seed.generate_random() + var new_seed = Seed.generate_random(data.seed_rarity_pool.pick_random()) drop_item( new_seed, coord * TILE_SIZE, 10 ) +func decontaminate(tiles_coords : Array[Vector2i], save_tiles_diff := true): + if save_tiles_diff : + data.decontamination_tiles_data.update_tiles_diff(tiles_coords, TilesDiffData.TileDiff.PRESENT) + + for coord in tiles_coords: + var chunk : Chunk = get_chunk_for_coord(coord) + if chunk: + var local_coord := TilesDiffData.get_local_coord(coord, chunk.chunk_coord) + + chunk.decontamination_layer.place_decontamination(local_coord) + +func finishing_region_animation(): + pass #TODO + #endregion diff --git a/stages/terrain/region/scripts/region_data.gd b/stages/terrain/region/scripts/region_data.gd index 1a62f5d..62e66ef 100644 --- a/stages/terrain/region/scripts/region_data.gd +++ b/stages/terrain/region/scripts/region_data.gd @@ -19,16 +19,15 @@ const PLAYER_ROCK_HOLE_RADIUS = 5 @export var region_seed : int @export var region_name : String -@export var region_level : int = 0 @export var rock_threshold : float @export var decontamination_threshold : float @export var cristal_threshold : float @export var start_decontamination_hole_radius = 3 +@export var seed_rarity_pool : Array[int] = [0,0,0,0,0,0,0,1,1,1] @export var day : int = 1 @export var entities_saved_data : Array[EntityData] = [] -@export var flags : Array[String] = [] @export var plants : Array[PlantData] @export var state : State = State.IN_PROGRESS @@ -37,14 +36,22 @@ const PLAYER_ROCK_HOLE_RADIUS = 5 @export var player_spawn : Vector2 +@export var entered_door = "" +@export var completed_doors : Array[int] = [] # List of completed doors +@export var modifiers : Array[RegionModifier] + + @export var charges : int : set(v): charges = v - update() + if GameInfo: + update() @export var objective : int : set(v): objective = v - update() + if GameInfo: + update() +@export var objective_disabled : bool @export var rock_tiles_data : TilesDiffData @export var decontamination_tiles_data : TilesDiffData @@ -57,32 +64,35 @@ func _init( charges = parameter.get_charge() objective = parameter.get_objective() region_name = parameter.get_region_name() - region_level = parameter.get_region_level() region_seed = parameter.get_region_seed() rock_threshold = parameter.get_rock_threshold() decontamination_threshold = parameter.get_decontamination_threshold() cristal_threshold = parameter.get_cristal_threshold() start_decontamination_hole_radius = parameter.get_start_decontamination_zone_radius() - flags = parameter.get_region_flags() + seed_rarity_pool = parameter.get_seed_rarity_pool() + modifiers = parameter.modifiers player_spawn = get_random_spawn_position() player_position = player_spawn + objective_disabled = parameter.is_objective_disabled() + rock_tiles_data = TilesDiffData.new() decontamination_tiles_data = TilesDiffData.new() edit_map_origin() func update(): - if objective > 0 and get_score() >= objective and not "tutorial" in flags: - if state != State.SUCCEEDED: - succeded.emit() - state = State.SUCCEEDED - if state != State.SUCCEEDED and charges == 0: - if state != State.FAILED: - failed.emit() - state = State.FAILED - updated.emit(self) + if not in_passing_day_animation and not objective_disabled: + if objective > 0 and get_score() >= objective and not GameInfo.game_data.current_run.story_step is TutorialStoryStep: + if state != State.SUCCEEDED: + succeded.emit() + state = State.SUCCEEDED + if state != State.SUCCEEDED and charges == 0: + if state != State.FAILED: + failed.emit() + state = State.FAILED + updated.emit(self) #endregion @@ -113,13 +123,17 @@ func proceed_pass_day(): func end_pass_day(): pass_day_ended.emit(self) in_passing_day_animation = false + update() #endregion #region ------------------ Plants ------------------ func add_plant_data(plant_data : PlantData, with_update = true): - plants.append(plant_data) + if plants.find_custom( + func (pd : PlantData): return pd.random_seed == plant_data.random_seed + ) == -1: + plants.append(plant_data) plant_data.disappeared.connect(_on_plant_disappeared) plant_data.updated.connect(func (_p : PlantData) : update()) if with_update: @@ -173,4 +187,4 @@ func edit_map_origin(): rock_tiles_data.update_tiles_diff(player_hole_tiles, TilesDiffData.TileDiff.ABSENT) -#endregion \ No newline at end of file +#endregion diff --git a/stages/terrain/region/scripts/region_parameter.gd b/stages/terrain/region/scripts/region_parameter.gd index 3a3d666..29e6ced 100644 --- a/stages/terrain/region/scripts/region_parameter.gd +++ b/stages/terrain/region/scripts/region_parameter.gd @@ -2,55 +2,56 @@ extends Resource class_name RegionParameter const DEFAULT_ROCK_THRESHOLD = 0.3 -const DEFAULT_DECONTAMINATION_THRESHOLD = 0.15 -const DEFAULT_CRISTAL_THRESHOLD = 0.06 -const DEFAULT_CHARGE = 10 +const DEFAULT_DECONTAMINATION_THRESHOLD = 0.4 +const DEFAULT_CRISTAL_THRESHOLD = 0.1 +const DEFAULT_CHARGE = 8 const DEFAULT_START_DECONTAMINATION_ZONE_RADIUS = 3 +const DEFAULT_SEED_RARITY_POOL: Array[int] = [0,0,0,0,0,0,0,1,1,1] @export var region_name : String -@export var region_flags : Array[String] -@export var level : int +@export var objective : int @export var region_seed : int @export var modifiers : Array[RegionModifier] -static func get_objective_by_level(l : int) -> int: - return 10 + 5 * l - func _init( - _level = 0, _name = Random.generate_random_word(), - _flags : Array[String] = [], _modifiers : Array[RegionModifier] = [], _region_seed = randi(), ): region_name = _name - region_flags = _flags - level = _level modifiers = _modifiers region_seed = _region_seed func get_region_name() -> String: - return region_name + var n := region_name -func get_region_flags() -> Array[String]: - return region_flags + for m in modifiers: + n = m.modify_region_name(n) -func get_region_level() -> int: - return level + return n func get_region_seed() -> int: return region_seed func get_objective() -> int: - if "tutorial" in region_flags: - return 1 - var o = get_objective_by_level(get_region_level()) + var o = objective for m in modifiers: o = m.modify_objective(o) return o +func is_objective_disabled() -> bool: + var d = false + + for m in modifiers: + print(m.modifier_name) + print(m.disable_objective()) + if m.disable_objective(): + d = true + + return d + func get_charge() -> int: var c = DEFAULT_CHARGE @@ -89,4 +90,12 @@ func get_start_decontamination_zone_radius() -> int: for m in modifiers: zone_radius = m.modify_start_decontamination_zone_radius(zone_radius) - return zone_radius \ No newline at end of file + return zone_radius + +func get_seed_rarity_pool() -> Array[int]: + var seed_rarity_pool = DEFAULT_SEED_RARITY_POOL + + for m in modifiers: + seed_rarity_pool = m.modify_seed_rarity_pool(seed_rarity_pool) + + return seed_rarity_pool diff --git a/stages/terrain/region/scripts/screen_post_process.gd b/stages/terrain/region/scripts/screen_post_process.gd new file mode 100644 index 0000000..ea02c30 --- /dev/null +++ b/stages/terrain/region/scripts/screen_post_process.gd @@ -0,0 +1,14 @@ +extends ColorRect + +@export var camera : Camera + + + + +func _process(_delta: float) -> void: + if is_node_ready(): + if visible: + if camera: + material.set_shader_parameter("camera_zoom", camera.zoom ) + material.set_shader_parameter("camera_position", camera.global_position ) + material.set_shader_parameter( "viewport_size", get_viewport().get_visible_rect().size) \ No newline at end of file diff --git a/stages/terrain/region/scripts/camera_fog.gd.uid b/stages/terrain/region/scripts/screen_post_process.gd.uid similarity index 100% rename from stages/terrain/region/scripts/camera_fog.gd.uid rename to stages/terrain/region/scripts/screen_post_process.gd.uid diff --git a/stages/terrain/region/scripts/tile_map_layers/decontamination_layer.gd b/stages/terrain/region/scripts/tile_map_layers/decontamination_layer.gd index 26b91a2..cd2642b 100644 --- a/stages/terrain/region/scripts/tile_map_layers/decontamination_layer.gd +++ b/stages/terrain/region/scripts/tile_map_layers/decontamination_layer.gd @@ -11,7 +11,7 @@ func setup(): func place_decontamination(coord : Vector2i, save = false): place_decontaminations([coord], save) -func place_decontaminations(coords : Array[Vector2i], save := false): +func place_decontaminations(coords : Array[Vector2i], _save := false): place_terrain_cells( coords, DECONTAMINATION_TILE_TERRAIN_SET, diff --git a/stages/terrain/region/scripts/tile_map_layers/region_layer.gd b/stages/terrain/region/scripts/tile_map_layers/region_layer.gd index f5b12d3..6ed871b 100644 --- a/stages/terrain/region/scripts/tile_map_layers/region_layer.gd +++ b/stages/terrain/region/scripts/tile_map_layers/region_layer.gd @@ -42,17 +42,8 @@ func place_terrain_cells( tile_terrain_set : int = 0, tile_terrain : int = 0 ): - var valid_coords : Array[Vector2i] = coords.filter(is_coord_valid) set_cells_terrain_connect( - valid_coords, + coords, tile_terrain_set, tile_terrain - ) - -func is_coord_valid(coord : Vector2i) -> bool: - return ( - coord.x >= 0 - and coord.y >= 0 - and coord.x < Region.CHUNK_TILE_SIZE - and coord.y < Region.CHUNK_TILE_SIZE ) \ No newline at end of file diff --git a/stages/terrain/region/scripts/tile_map_layers/rock_layer.gd b/stages/terrain/region/scripts/tile_map_layers/rock_layer.gd index d507ea2..9dd7288 100644 --- a/stages/terrain/region/scripts/tile_map_layers/rock_layer.gd +++ b/stages/terrain/region/scripts/tile_map_layers/rock_layer.gd @@ -19,7 +19,7 @@ func place_rocks(coords : Array[Vector2i], type := TileType.ROCK): ROCK_TILE_TERRAIN if type == TileType.ROCK else CRISTAL_TILE_TERRAIN, ) -func remove_rocks(coords : Array[Vector2i], save = false): +func remove_rocks(coords : Array[Vector2i], _save = false): place_terrain_cells( coords, ROCK_TILE_TERRAIN_SET, diff --git a/stages/terrain/region/scripts/tiles_diff_data.gd b/stages/terrain/region/scripts/tiles_diff_data.gd index 30b7497..8b2c879 100644 --- a/stages/terrain/region/scripts/tiles_diff_data.gd +++ b/stages/terrain/region/scripts/tiles_diff_data.gd @@ -1,3 +1,4 @@ +@tool extends Resource class_name TilesDiffData diff --git a/stages/terrain/region/test_chunk.tscn b/stages/terrain/region/test_chunk.tscn index 0ce0b33..baebe5d 100644 --- a/stages/terrain/region/test_chunk.tscn +++ b/stages/terrain/region/test_chunk.tscn @@ -1,14 +1,26 @@ [gd_scene format=3 uid="uid://dtfuxosn6s0cr"] [ext_resource type="Script" uid="uid://d2ixbaa2uqlv4" path="res://stages/terrain/region/scripts/chunk.gd" id="1_mhr83"] +[ext_resource type="Script" uid="uid://dy6d4rmdu6gh0" path="res://stages/terrain/region/scripts/tiles_diff_data.gd" id="2_ct7cr"] [ext_resource type="Script" uid="uid://bgbbce45hjv3d" path="res://entities/scripts/entity_data.gd" id="2_tiw8g"] [ext_resource type="Script" uid="uid://da6j333qs7wse" path="res://entities/plants/scripts/plant_data.gd" id="3_ct7cr"] [ext_resource type="Script" uid="uid://cx30nvq8b34lj" path="res://stages/terrain/region/scripts/region_data.gd" id="4_0rtv3"] +[sub_resource type="Resource" id="Resource_0rtv3"] +script = ExtResource("2_ct7cr") +metadata/_custom_type_script = "uid://dy6d4rmdu6gh0" + +[sub_resource type="Resource" id="Resource_ame7t"] +script = ExtResource("2_ct7cr") +metadata/_custom_type_script = "uid://dy6d4rmdu6gh0" + [sub_resource type="Resource" id="Resource_tiw8g"] script = ExtResource("4_0rtv3") +region_seed = 2 rock_threshold = 0.5 decontamination_threshold = 0.5 +rock_tiles_data = SubResource("Resource_ame7t") +decontamination_tiles_data = SubResource("Resource_0rtv3") metadata/_custom_type_script = "uid://cx30nvq8b34lj" [node name="TestChunk" type="Node2D" unique_id=990498648] @@ -19,8 +31,57 @@ region_data = SubResource("Resource_tiw8g") metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" [node name="Chunk2" type="Node2D" parent="." unique_id=509661921] -position = Vector2(1280, 0) +position = Vector2(640, 0) script = ExtResource("1_mhr83") region_data = SubResource("Resource_tiw8g") chunk_coord = Vector2i(1, 0) metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" + +[node name="Chunk3" type="Node2D" parent="." unique_id=1505202284] +position = Vector2(1280, 0) +script = ExtResource("1_mhr83") +region_data = SubResource("Resource_tiw8g") +chunk_coord = Vector2i(2, 0) +metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" + +[node name="Chunk4" type="Node2D" parent="." unique_id=774217732] +position = Vector2(0, 640) +script = ExtResource("1_mhr83") +region_data = SubResource("Resource_tiw8g") +chunk_coord = Vector2i(0, 1) +metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" + +[node name="Chunk5" type="Node2D" parent="." unique_id=653124103] +position = Vector2(640, 640) +script = ExtResource("1_mhr83") +region_data = SubResource("Resource_tiw8g") +chunk_coord = Vector2i(1, 1) +metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" + +[node name="Chunk6" type="Node2D" parent="." unique_id=1783819673] +position = Vector2(1280, 640) +script = ExtResource("1_mhr83") +region_data = SubResource("Resource_tiw8g") +chunk_coord = Vector2i(2, 1) +metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" + +[node name="Chunk7" type="Node2D" parent="." unique_id=701583017] +position = Vector2(0, 1280) +script = ExtResource("1_mhr83") +region_data = SubResource("Resource_tiw8g") +chunk_coord = Vector2i(0, 2) +metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" + +[node name="Chunk8" type="Node2D" parent="." unique_id=1149469796] +position = Vector2(640, 1280) +script = ExtResource("1_mhr83") +region_data = SubResource("Resource_tiw8g") +chunk_coord = Vector2i(1, 2) +metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" + +[node name="Chunk9" type="Node2D" parent="." unique_id=882201367] +position = Vector2(1280, 1280) +script = ExtResource("1_mhr83") +region_data = SubResource("Resource_tiw8g") +chunk_coord = Vector2i(2, 2) +metadata/_custom_type_script = "uid://d2ixbaa2uqlv4" diff --git a/stages/terrain/scripts/terrain.gd b/stages/terrain/scripts/terrain.gd index 0c06d9d..8491b82 100644 --- a/stages/terrain/scripts/terrain.gd +++ b/stages/terrain/scripts/terrain.gd @@ -9,76 +9,75 @@ var player : Player func instantiate_entity(s: PackedScene, entity_position : Vector2): - var entity = s.instantiate() as Node2D + var entity = s.instantiate() as Node2D - add_entity(entity, entity_position) + add_entity(entity, entity_position) - entity.global_position = entity_position + entity.global_position = entity_position func add_entity(entity : Node2D, entity_global_position : Vector2 = Vector2.ZERO, container : Node2D = entity_container): - if entity.get_parent(): - if entity.get_parent().get_parent() is Terrain: - entity.get_parent().get_parent().remove_entity(entity) - else: - entity.get_parent().remove_child(entity) + if entity.get_parent(): + if entity.get_parent().get_parent() is Terrain: + entity.get_parent().get_parent().remove_entity(entity) + else: + entity.get_parent().remove_child(entity) - enroll_entity(entity) + enroll_entity(entity) - container.add_child(entity) - entity.global_position = entity_global_position + container.add_child(entity) + entity.global_position = entity_global_position func enroll_entity(entity : Node2D): - if "terrain" in entity: - entity.terrain = self + if "terrain" in entity: + entity.terrain = self - if entity is Player: - player = entity + if entity is Player: + player = entity func save_entities() -> Array[EntityData]: - var saved_entities_data : Array[EntityData] = [] - for e in entity_container.get_children(): - if e is Entity: - var saved_data : EntityData = e.save() - if saved_data: - saved_entities_data.append(saved_data) - return saved_entities_data + var saved_entities_data : Array[EntityData] = [] + for e in entity_container.get_children(): + if e is Entity: + var saved_data : EntityData = e.save() + if saved_data: + saved_entities_data.append(saved_data) + return saved_entities_data func load_entities(saved_entities_data : Array[EntityData]): - for static_entity in entity_container.get_children(): - enroll_entity(static_entity) + for static_entity in entity_container.get_children(): + enroll_entity(static_entity) - for save_data in saved_entities_data: - var entity = save_data.load_entity() - if entity: - add_entity(entity, save_data.position) + for save_data in saved_entities_data: + var entity = save_data.load_entity() + if entity: + add_entity(entity, save_data.position) func remove_entity(e : Node2D, container : Node2D = entity_container): - if e.get_parent() == entity_container: - container.remove_child(e) + if e.get_parent() == entity_container: + container.remove_child(e) func create_entity_container() -> Node2D: - var container = Node2D.new() - container.y_sort_enabled = true + var container = Node2D.new() + container.y_sort_enabled = true - add_child(container) + add_child(container) - return container + return container func drop_item(item: Item, item_position : Vector2, random_displacement_factor = 0) -> ItemObject: - var item_object = ItemObject.new(item) - add_entity(item_object, item_position) + var item_object = ItemObject.new(item) + add_entity(item_object, item_position) - if random_displacement_factor: - var displacement_direction = randf_range(0,2*PI) - var displacement = Vector2.ONE.rotated(displacement_direction) * randf_range(0, random_displacement_factor) - var tween : Tween = get_tree().create_tween() - tween.tween_property( - item_object, - "position", - item_object.position + displacement, - 0.2 - ) - - return item_object + if random_displacement_factor: + var displacement_direction = randf_range(0,2*PI) + var displacement = Vector2.ONE.rotated(displacement_direction) * randf_range(0, random_displacement_factor) + var tween : Tween = get_tree().create_tween() + tween.tween_property( + item_object, + "position", + item_object.position + displacement, + 0.2 + ) + return item_object diff --git a/stages/title_screen/assets/materials/planet_3d_terrain.tres b/stages/title_screen/assets/materials/planet_3d_terrain.tres new file mode 100644 index 0000000..0ee0d15 --- /dev/null +++ b/stages/title_screen/assets/materials/planet_3d_terrain.tres @@ -0,0 +1,30 @@ +[gd_resource type="ShaderMaterial" format=3 uid="uid://c1h3xs2xahhm7"] + +[ext_resource type="Shader" uid="uid://ctt1ykb11oh22" path="res://stages/title_screen/resources/shaders/terrain.gdshader" id="1_2voo7"] +[ext_resource type="Texture2D" uid="uid://c4usrfeevb4n1" path="res://stages/title_screen/resources/gradient_planet.tres" id="2_t1vtm"] + +[sub_resource type="Gradient" id="Gradient_exbh2"] +interpolation_mode = 1 +offsets = PackedFloat32Array(0, 0.44278607, 0.64179105, 0.7164179) +colors = PackedColorArray(0.14509805, 0.75686276, 0.2784314, 1, 1, 0.6509804, 0.09019608, 1, 1, 0.31764707, 0.2627451, 1, 1, 1, 1, 1) + +[sub_resource type="GradientTexture1D" id="GradientTexture1D_neuam"] +gradient = SubResource("Gradient_exbh2") + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_hqt5a"] +frequency = 0.0212 + +[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_8o8xi"] +noise = SubResource("FastNoiseLite_hqt5a") + +[resource] +render_priority = 0 +shader = ExtResource("1_2voo7") +shader_parameter/specular = 0.0 +shader_parameter/roughness = 0.6 +shader_parameter/radius = 8.0 +shader_parameter/height = 3.81 +shader_parameter/gradient = ExtResource("2_t1vtm") +shader_parameter/random_fertility_texture = SubResource("NoiseTexture2D_8o8xi") +shader_parameter/fertility_gradient = SubResource("GradientTexture1D_neuam") +shader_parameter/fertility_factor = 0.0 diff --git a/stages/title_screen/planet_3d.tscn b/stages/title_screen/planet_3d.tscn index eda9f73..ddaf786 100644 --- a/stages/title_screen/planet_3d.tscn +++ b/stages/title_screen/planet_3d.tscn @@ -1,38 +1,29 @@ [gd_scene format=4 uid="uid://cm5b7w7j6527f"] [ext_resource type="Script" uid="uid://bmpepidvj0pkb" path="res://stages/title_screen/scripts/planet_3d.gd" id="1_8pb0u"] -[ext_resource type="Shader" uid="uid://ctt1ykb11oh22" path="res://stages/title_screen/resources/shaders/terrain.gdshader" id="2_nlwrq"] -[ext_resource type="Texture2D" uid="uid://c4usrfeevb4n1" path="res://stages/title_screen/resources/gradient_planet.tres" id="3_di7ac"] +[ext_resource type="Material" uid="uid://c1h3xs2xahhm7" path="res://stages/title_screen/assets/materials/planet_3d_terrain.tres" id="2_mtxcm"] [ext_resource type="Material" uid="uid://c26wmvhmhpqw7" path="res://stages/title_screen/resources/ocean.tres" id="4_nvlxv"] +[ext_resource type="Shader" uid="uid://bv2rghn44mrrf" path="res://stages/title_screen/resources/shaders/stars.gdshader" id="5_mtxcm"] +[ext_resource type="Material" uid="uid://cr7bp4fhh1ipr" path="res://entities/player_3d/resources/materials/post_process_quad.tres" id="6_e6ukh"] -[sub_resource type="FastNoiseLite" id="FastNoiseLite_nvlxv"] -seed = -1128848105 +[sub_resource type="FastNoiseLite" id="FastNoiseLite_mtxcm"] frequency = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_mtxcm"] -render_priority = 0 -shader = ExtResource("2_nlwrq") -shader_parameter/specular = 0.0 -shader_parameter/roughness = 0.6 -shader_parameter/radius = 8.0 -shader_parameter/height = 3.81 -shader_parameter/gradient = ExtResource("3_di7ac") - -[sub_resource type="ArrayMesh" id="ArrayMesh_mtxcm"] +[sub_resource type="ArrayMesh" id="ArrayMesh_e6ukh"] _surfaces = [{ -"aabb": AABB(-10.8268585, -10.807209, -10.828585, 21.328814, 21.190258, 21.073168), +"aabb": AABB(-10.854399, -10.284152, -10.451803, 21.355915, 20.44545, 21.301739), "attribute_data": PackedByteArray("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AAB8P9ELvT0AAH4/0Qu9PQAAgD/RC709AAAAAMmN3D0AAAA8yY3cPQAAgDzJjdw9AADAPMmN3D0AAAA9yY3cPQAAID3Jjdw9AABAPcmN3D0AAGA9yY3cPQAAgD3Jjdw9AACQPcmN3D0AAKA9yY3cPQAAsD3Jjdw9AADAPcmN3D0AANA9yY3cPQAA4D3Jjdw9AADwPcmN3D0AAAA+yY3cPQAACD7Jjdw9AAAQPsmN3D0AABg+yY3cPQAAID7Jjdw9AAAoPsmN3D0AADA+yY3cPQAAOD7Jjdw9AABAPsmN3D0AAEg+yY3cPQAAUD7Jjdw9AABYPsmN3D0AAGA+yY3cPQAAaD7Jjdw9AABwPsmN3D0AAHg+yY3cPQAAgD7Jjdw9AACEPsmN3D0AAIg+yY3cPQAAjD7Jjdw9AACQPsmN3D0AAJQ+yY3cPQAAmD7Jjdw9AACcPsmN3D0AAKA+yY3cPQAApD7Jjdw9AACoPsmN3D0AAKw+yY3cPQAAsD7Jjdw9AAC0PsmN3D0AALg+yY3cPQAAvD7Jjdw9AADAPsmN3D0AAMQ+yY3cPQAAyD7Jjdw9AADMPsmN3D0AANA+yY3cPQAA1D7Jjdw9AADYPsmN3D0AANw+yY3cPQAA4D7Jjdw9AADkPsmN3D0AAOg+yY3cPQAA7D7Jjdw9AADwPsmN3D0AAPQ+yY3cPQAA+D7Jjdw9AAD8PsmN3D0AAAA/yY3cPQAAAj/Jjdw9AAAEP8mN3D0AAAY/yY3cPQAACD/Jjdw9AAAKP8mN3D0AAAw/yY3cPQAADj/Jjdw9AAAQP8mN3D0AABI/yY3cPQAAFD/Jjdw9AAAWP8mN3D0AABg/yY3cPQAAGj/Jjdw9AAAcP8mN3D0AAB4/yY3cPQAAID/Jjdw9AAAiP8mN3D0AACQ/yY3cPQAAJj/Jjdw9AAAoP8mN3D0AACo/yY3cPQAALD/Jjdw9AAAuP8mN3D0AADA/yY3cPQAAMj/Jjdw9AAA0P8mN3D0AADY/yY3cPQAAOD/Jjdw9AAA6P8mN3D0AADw/yY3cPQAAPj/Jjdw9AABAP8mN3D0AAEI/yY3cPQAARD/Jjdw9AABGP8mN3D0AAEg/yY3cPQAASj/Jjdw9AABMP8mN3D0AAE4/yY3cPQAAUD/Jjdw9AABSP8mN3D0AAFQ/yY3cPQAAVj/Jjdw9AABYP8mN3D0AAFo/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AADwPtmJHT4AAPQ+2YkdPgAA+D7ZiR0+AAD8PtmJHT4AAAA/2YkdPgAAAj/ZiR0+AAAEP9mJHT4AAAY/2YkdPgAACD/ZiR0+AAAKP9mJHT4AAAw/2YkdPgAADj/ZiR0+AAAQP9mJHT4AABI/2YkdPgAAFD/ZiR0+AAAWP9mJHT4AABg/2YkdPgAAGj/ZiR0+AAAcP9mJHT4AAB4/2YkdPgAAID/ZiR0+AAAiP9mJHT4AACQ/2YkdPgAAJj/ZiR0+AAAoP9mJHT4AACo/2YkdPgAALD/ZiR0+AAAuP9mJHT4AADA/2YkdPgAAMj/ZiR0+AAA0P9mJHT4AADY/2YkdPgAAOD/ZiR0+AAA6P9mJHT4AADw/2YkdPgAAPj/ZiR0+AABAP9mJHT4AAEI/2YkdPgAARD/ZiR0+AABGP9mJHT4AAEg/2YkdPgAASj/ZiR0+AABMP9mJHT4AAE4/2YkdPgAAUD/ZiR0+AABSP9mJHT4AAFQ/2YkdPgAAVj/ZiR0+AABYP9mJHT4AAFo/2YkdPgAAXD/ZiR0+AABeP9mJHT4AAGA/2YkdPgAAYj/ZiR0+AABkP9mJHT4AAGY/2YkdPgAAaD/ZiR0+AABqP9mJHT4AAGw/2YkdPgAAbj/ZiR0+AABwP9mJHT4AAHI/2YkdPgAAdD/ZiR0+AAB2P9mJHT4AAHg/2YkdPgAAej/ZiR0+AAB8P9mJHT4AAH4/2YkdPgAAgD/ZiR0+AAAAANVKLT4AAAA81UotPgAAgDzVSi0+AADAPNVKLT4AAAA91UotPgAAID3VSi0+AABAPdVKLT4AAGA91UotPgAAgD3VSi0+AACQPdVKLT4AAKA91UotPgAAsD3VSi0+AADAPdVKLT4AANA91UotPgAA4D3VSi0+AADwPdVKLT4AAAA+1UotPgAACD7VSi0+AAAQPtVKLT4AABg+1UotPgAAID7VSi0+AAAoPtVKLT4AADA+1UotPgAAOD7VSi0+AABAPtVKLT4AAEg+1UotPgAAUD7VSi0+AABYPtVKLT4AAGA+1UotPgAAaD7VSi0+AABwPtVKLT4AAHg+1UotPgAAgD7VSi0+AACEPtVKLT4AAIg+1UotPgAAjD7VSi0+AACQPtVKLT4AAJQ+1UotPgAAmD7VSi0+AACcPtVKLT4AAKA+1UotPgAApD7VSi0+AACoPtVKLT4AAKw+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AAB2P83MTD4AAHg/zcxMPgAAej/NzEw+AAB8P83MTD4AAH4/zcxMPgAAgD/NzEw+AAAAAMmNXD4AAAA8yY1cPgAAgDzJjVw+AADAPMmNXD4AAAA9yY1cPgAAID3JjVw+AABAPcmNXD4AAGA9yY1cPgAAgD3JjVw+AACQPcmNXD4AAKA9yY1cPgAAsD3JjVw+AADAPcmNXD4AANA9yY1cPgAA4D3JjVw+AADwPcmNXD4AAAA+yY1cPgAACD7JjVw+AAAQPsmNXD4AABg+yY1cPgAAID7JjVw+AAAoPsmNXD4AADA+yY1cPgAAOD7JjVw+AABAPsmNXD4AAEg+yY1cPgAAUD7JjVw+AABYPsmNXD4AAGA+yY1cPgAAaD7JjVw+AABwPsmNXD4AAHg+yY1cPgAAgD7JjVw+AACEPsmNXD4AAIg+yY1cPgAAjD7JjVw+AACQPsmNXD4AAJQ+yY1cPgAAmD7JjVw+AACcPsmNXD4AAKA+yY1cPgAApD7JjVw+AACoPsmNXD4AAKw+yY1cPgAAsD7JjVw+AAC0PsmNXD4AALg+yY1cPgAAvD7JjVw+AADAPsmNXD4AAMQ+yY1cPgAAyD7JjVw+AADMPsmNXD4AANA+yY1cPgAA1D7JjVw+AADYPsmNXD4AANw+yY1cPgAA4D7JjVw+AADkPsmNXD4AAOg+yY1cPgAA7D7JjVw+AADwPsmNXD4AAPQ+yY1cPgAA+D7JjVw+AAD8PsmNXD4AAAA/yY1cPgAAAj/JjVw+AAAEP8mNXD4AAAY/yY1cPgAACD/JjVw+AAAKP8mNXD4AAAw/yY1cPgAADj/JjVw+AAAQP8mNXD4AABI/yY1cPgAAFD/JjVw+AAAWP8mNXD4AABg/yY1cPgAAGj/JjVw+AAAcP8mNXD4AAB4/yY1cPgAAID/JjVw+AAAiP8mNXD4AACQ/yY1cPgAAJj/JjVw+AAAoP8mNXD4AACo/yY1cPgAALD/JjVw+AAAuP8mNXD4AADA/yY1cPgAAMj/JjVw+AAA0P8mNXD4AADY/yY1cPgAAOD/JjVw+AAA6P8mNXD4AADw/yY1cPgAAPj/JjVw+AABAP8mNXD4AAEI/yY1cPgAARD/JjVw+AABGP8mNXD4AAEg/yY1cPgAASj/JjVw+AABMP8mNXD4AAE4/yY1cPgAAUD/JjVw+AABSP8mNXD4AAFQ/yY1cPgAAVj/JjVw+AABYP8mNXD4AAFo/yY1cPgAAXD/JjVw+AABeP8mNXD4AAGA/yY1cPgAAYj/JjVw+AABkP8mNXD4AAGY/yY1cPgAAaD/JjVw+AABqP8mNXD4AAGw/yY1cPgAAbj/JjVw+AABwP8mNXD4AAHI/yY1cPgAAdD/JjVw+AAB2P8mNXD4AAHg/yY1cPgAAej/JjVw+AAB8P8mNXD4AAH4/yY1cPgAAgD/JjVw+AAAAAMVObD4AAAA8xU5sPgAAgDzFTmw+AADAPMVObD4AAAA9xU5sPgAAID3FTmw+AABAPcVObD4AAGA9xU5sPgAAgD3FTmw+AACQPcVObD4AAKA9xU5sPgAAsD3FTmw+AADAPcVObD4AANA9xU5sPgAA4D3FTmw+AADwPcVObD4AAAA+xU5sPgAACD7FTmw+AAAQPsVObD4AABg+xU5sPgAAID7FTmw+AAAoPsVObD4AADA+xU5sPgAAOD7FTmw+AABAPsVObD4AAEg+xU5sPgAAUD7FTmw+AABYPsVObD4AAGA+xU5sPgAAaD7FTmw+AABwPsVObD4AAHg+xU5sPgAAgD7FTmw+AACEPsVObD4AAIg+xU5sPgAAjD7FTmw+AACQPsVObD4AAJQ+xU5sPgAAmD7FTmw+AACcPsVObD4AAKA+xU5sPgAApD7FTmw+AACoPsVObD4AAKw+xU5sPgAAsD7FTmw+AAC0PsVObD4AALg+xU5sPgAAvD7FTmw+AADAPsVObD4AAMQ+xU5sPgAAyD7FTmw+AADMPsVObD4AANA+xU5sPgAA1D7FTmw+AADYPsVObD4AANw+xU5sPgAA4D7FTmw+AADkPsVObD4AAOg+xU5sPgAA7D7FTmw+AADwPsVObD4AAPQ+xU5sPgAA+D7FTmw+AAD8PsVObD4AAAA/xU5sPgAAAj/FTmw+AAAEP8VObD4AAAY/xU5sPgAACD/FTmw+AAAKP8VObD4AAAw/xU5sPgAADj/FTmw+AAAQP8VObD4AABI/xU5sPgAAFD/FTmw+AAAWP8VObD4AABg/xU5sPgAAGj/FTmw+AAAcP8VObD4AAB4/xU5sPgAAID/FTmw+AAAiP8VObD4AACQ/xU5sPgAAJj/FTmw+AAAoP8VObD4AACo/xU5sPgAALD/FTmw+AAAuP8VObD4AADA/xU5sPgAAMj/FTmw+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AABAPluplT4AAEg+W6mVPgAAUD5bqZU+AABYPluplT4AAGA+W6mVPgAAaD5bqZU+AABwPluplT4AAHg+W6mVPgAAgD5bqZU+AACEPluplT4AAIg+W6mVPgAAjD5bqZU+AACQPluplT4AAJQ+W6mVPgAAmD5bqZU+AACcPluplT4AAKA+W6mVPgAApD5bqZU+AACoPluplT4AAKw+W6mVPgAAsD5bqZU+AAC0PluplT4AALg+W6mVPgAAvD5bqZU+AADAPluplT4AAMQ+W6mVPgAAyD5bqZU+AADMPluplT4AANA+W6mVPgAA1D5bqZU+AADYPluplT4AANw+W6mVPgAA4D5bqZU+AADkPluplT4AAOg+W6mVPgAA7D5bqZU+AADwPluplT4AAPQ+W6mVPgAA+D5bqZU+AAD8PluplT4AAAA/W6mVPgAAAj9bqZU+AAAEP1uplT4AAAY/W6mVPgAACD9bqZU+AAAKP1uplT4AAAw/W6mVPgAADj9bqZU+AAAQP1uplT4AABI/W6mVPgAAFD9bqZU+AAAWP1uplT4AABg/W6mVPgAAGj9bqZU+AAAcP1uplT4AAB4/W6mVPgAAID9bqZU+AAAiP1uplT4AACQ/W6mVPgAAJj9bqZU+AAAoP1uplT4AACo/W6mVPgAALD9bqZU+AAAuP1uplT4AADA/W6mVPgAAMj9bqZU+AAA0P1uplT4AADY/W6mVPgAAOD9bqZU+AAA6P1uplT4AADw/W6mVPgAAPj9bqZU+AABAP1uplT4AAEI/W6mVPgAARD9bqZU+AABGP1uplT4AAEg/W6mVPgAASj9bqZU+AABMP1uplT4AAE4/W6mVPgAAUD9bqZU+AABSP1uplT4AAFQ/W6mVPgAAVj9bqZU+AABYP1uplT4AAFo/W6mVPgAAXD9bqZU+AABeP1uplT4AAGA/W6mVPgAAYj9bqZU+AABkP1uplT4AAGY/W6mVPgAAaD9bqZU+AABqP1uplT4AAGw/W6mVPgAAbj9bqZU+AABwP1uplT4AAHI/W6mVPgAAdD9bqZU+AAB2P1uplT4AAHg/W6mVPgAAej9bqZU+AAB8P1uplT4AAH4/W6mVPgAAgD9bqZU+AAAAANmJnT4AAAA82YmdPgAAgDzZiZ0+AADAPNmJnT4AAAA92YmdPgAAID3ZiZ0+AABAPdmJnT4AAGA92YmdPgAAgD3ZiZ0+AACQPdmJnT4AAKA92YmdPgAAsD3ZiZ0+AADAPdmJnT4AANA92YmdPgAA4D3ZiZ0+AADwPdmJnT4AAAA+2YmdPgAACD7ZiZ0+AAAQPtmJnT4AABg+2YmdPgAAID7ZiZ0+AAAoPtmJnT4AADA+2YmdPgAAOD7ZiZ0+AABAPtmJnT4AAEg+2YmdPgAAUD7ZiZ0+AABYPtmJnT4AAGA+2YmdPgAAaD7ZiZ0+AABwPtmJnT4AAHg+2YmdPgAAgD7ZiZ0+AACEPtmJnT4AAIg+2YmdPgAAjD7ZiZ0+AACQPtmJnT4AAJQ+2YmdPgAAmD7ZiZ0+AACcPtmJnT4AAKA+2YmdPgAApD7ZiZ0+AACoPtmJnT4AAKw+2YmdPgAAsD7ZiZ0+AAC0PtmJnT4AALg+2YmdPgAAvD7ZiZ0+AADAPtmJnT4AAMQ+2YmdPgAAyD7ZiZ0+AADMPtmJnT4AANA+2YmdPgAA1D7ZiZ0+AADYPtmJnT4AANw+2YmdPgAA4D7ZiZ0+AADkPtmJnT4AAOg+2YmdPgAA7D7ZiZ0+AADwPtmJnT4AAPQ+2YmdPgAA+D7ZiZ0+AAD8PtmJnT4AAAA/2YmdPgAAAj/ZiZ0+AAAEP9mJnT4AAAY/2YmdPgAACD/ZiZ0+AAAKP9mJnT4AAAw/2YmdPgAADj/ZiZ0+AAAQP9mJnT4AABI/2YmdPgAAFD/ZiZ0+AAAWP9mJnT4AABg/2YmdPgAAGj/ZiZ0+AAAcP9mJnT4AAB4/2YmdPgAAID/ZiZ0+AAAiP9mJnT4AACQ/2YmdPgAAJj/ZiZ0+AAAoP9mJnT4AACo/2YmdPgAALD/ZiZ0+AAAuP9mJnT4AADA/2YmdPgAAMj/ZiZ0+AAA0P9mJnT4AADY/2YmdPgAAOD/ZiZ0+AAA6P9mJnT4AADw/2YmdPgAAPj/ZiZ0+AABAP9mJnT4AAEI/2YmdPgAARD/ZiZ0+AABGP9mJnT4AAEg/2YmdPgAASj/ZiZ0+AABMP9mJnT4AAE4/2YmdPgAAUD/ZiZ0+AABSP9mJnT4AAFQ/2YmdPgAAVj/ZiZ0+AABYP9mJnT4AAFo/2YmdPgAAXD/ZiZ0+AABeP9mJnT4AAGA/2YmdPgAAYj/ZiZ0+AABkP9mJnT4AAGY/2YmdPgAAaD/ZiZ0+AABqP9mJnT4AAGw/2YmdPgAAbj/ZiZ0+AABwP9mJnT4AAHI/2YmdPgAAdD/ZiZ0+AAB2P9mJnT4AAHg/2YmdPgAAej/ZiZ0+AAB8P9mJnT4AAH4/2YmdPgAAgD/ZiZ0+AAAAAFdqpT4AAAA8V2qlPgAAgDxXaqU+AADAPFdqpT4AAAA9V2qlPgAAID1XaqU+AABAPVdqpT4AAGA9V2qlPgAAgD1XaqU+AACQPVdqpT4AAKA9V2qlPgAAsD1XaqU+AADAPVdqpT4AANA9V2qlPgAA4D1XaqU+AADwPVdqpT4AAAA+V2qlPgAACD5XaqU+AAAQPldqpT4AABg+V2qlPgAAID5XaqU+AAAoPldqpT4AADA+V2qlPgAAOD5XaqU+AABAPldqpT4AAEg+V2qlPgAAUD5XaqU+AABYPldqpT4AAGA+V2qlPgAAaD5XaqU+AABwPldqpT4AAHg+V2qlPgAAgD5XaqU+AACEPldqpT4AAIg+V2qlPgAAjD5XaqU+AACQPldqpT4AAJQ+V2qlPgAAmD5XaqU+AACcPldqpT4AAKA+V2qlPgAApD5XaqU+AACoPldqpT4AAKw+V2qlPgAAsD5XaqU+AAC0PldqpT4AALg+V2qlPgAAvD5XaqU+AADAPldqpT4AAMQ+V2qlPgAAyD5XaqU+AADMPldqpT4AANA+V2qlPgAA1D5XaqU+AADYPldqpT4AANw+V2qlPgAA4D5XaqU+AADkPldqpT4AAOg+V2qlPgAA7D5XaqU+AADwPldqpT4AAPQ+V2qlPgAA+D5XaqU+AAD8PldqpT4AAAA/V2qlPgAAAj9XaqU+AAAEP1dqpT4AAAY/V2qlPgAACD9XaqU+AAAKP1dqpT4AAAw/V2qlPgAADj9XaqU+AAAQP1dqpT4AABI/V2qlPgAAFD9XaqU+AAAWP1dqpT4AABg/V2qlPgAAGj9XaqU+AAAcP1dqpT4AAB4/V2qlPgAAID9XaqU+AAAiP1dqpT4AACQ/V2qlPgAAJj9XaqU+AAAoP1dqpT4AACo/V2qlPgAALD9XaqU+AAAuP1dqpT4AADA/V2qlPgAAMj9XaqU+AAA0P1dqpT4AADY/V2qlPgAAOD9XaqU+AAA6P1dqpT4AADw/V2qlPgAAPj9XaqU+AABAP1dqpT4AAEI/V2qlPgAARD9XaqU+AABGP1dqpT4AAEg/V2qlPgAASj9XaqU+AABMP1dqpT4AAE4/V2qlPgAAUD9XaqU+AABSP1dqpT4AAFQ/V2qlPgAAVj9XaqU+AABYP1dqpT4AAFo/V2qlPgAAXD9XaqU+AABeP1dqpT4AAGA/V2qlPgAAYj9XaqU+AABkP1dqpT4AAGY/V2qlPgAAaD9XaqU+AABqP1dqpT4AAGw/V2qlPgAAbj9XaqU+AABwP1dqpT4AAHI/V2qlPgAAdD9XaqU+AAB2P1dqpT4AAHg/V2qlPgAAej9XaqU+AAB8P1dqpT4AAH4/V2qlPgAAgD9XaqU+AAAAANVKrT4AAAA81UqtPgAAgDzVSq0+AADAPNVKrT4AAAA91UqtPgAAID3VSq0+AABAPdVKrT4AAGA91UqtPgAAgD3VSq0+AACQPdVKrT4AAKA91UqtPgAAsD3VSq0+AADAPdVKrT4AANA91UqtPgAA4D3VSq0+AADwPdVKrT4AAAA+1UqtPgAACD7VSq0+AAAQPtVKrT4AABg+1UqtPgAAID7VSq0+AAAoPtVKrT4AADA+1UqtPgAAOD7VSq0+AABAPtVKrT4AAEg+1UqtPgAAUD7VSq0+AABYPtVKrT4AAGA+1UqtPgAAaD7VSq0+AABwPtVKrT4AAHg+1UqtPgAAgD7VSq0+AACEPtVKrT4AAIg+1UqtPgAAjD7VSq0+AACQPtVKrT4AAJQ+1UqtPgAAmD7VSq0+AACcPtVKrT4AAKA+1UqtPgAApD7VSq0+AACoPtVKrT4AAKw+1UqtPgAAsD7VSq0+AAC0PtVKrT4AALg+1UqtPgAAvD7VSq0+AADAPtVKrT4AAMQ+1UqtPgAAyD7VSq0+AADMPtVKrT4AANA+1UqtPgAA1D7VSq0+AADYPtVKrT4AANw+1UqtPgAA4D7VSq0+AADkPtVKrT4AAOg+1UqtPgAA7D7VSq0+AADwPtVKrT4AAPQ+1UqtPgAA+D7VSq0+AAD8PtVKrT4AAAA/1UqtPgAAAj/VSq0+AAAEP9VKrT4AAAY/1UqtPgAACD/VSq0+AAAKP9VKrT4AAAw/1UqtPgAADj/VSq0+AAAQP9VKrT4AABI/1UqtPgAAFD/VSq0+AAAWP9VKrT4AABg/1UqtPgAAGj/VSq0+AAAcP9VKrT4AAB4/1UqtPgAAID/VSq0+AAAiP9VKrT4AACQ/1UqtPgAAJj/VSq0+AAAoP9VKrT4AACo/1UqtPgAALD/VSq0+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AADwPdmJHT8AAAA+2YkdPwAACD7ZiR0/AAAQPtmJHT8AABg+2YkdPwAAID7ZiR0/AAAoPtmJHT8AADA+2YkdPwAAOD7ZiR0/AABAPtmJHT8AAEg+2YkdPwAAUD7ZiR0/AABYPtmJHT8AAGA+2YkdPwAAaD7ZiR0/AABwPtmJHT8AAHg+2YkdPwAAgD7ZiR0/AACEPtmJHT8AAIg+2YkdPwAAjD7ZiR0/AACQPtmJHT8AAJQ+2YkdPwAAmD7ZiR0/AACcPtmJHT8AAKA+2YkdPwAApD7ZiR0/AACoPtmJHT8AAKw+2YkdPwAAsD7ZiR0/AAC0PtmJHT8AALg+2YkdPwAAvD7ZiR0/AADAPtmJHT8AAMQ+2YkdPwAAyD7ZiR0/AADMPtmJHT8AANA+2YkdPwAA1D7ZiR0/AADYPtmJHT8AANw+2YkdPwAA4D7ZiR0/AADkPtmJHT8AAOg+2YkdPwAA7D7ZiR0/AADwPtmJHT8AAPQ+2YkdPwAA+D7ZiR0/AAD8PtmJHT8AAAA/2YkdPwAAAj/ZiR0/AAAEP9mJHT8AAAY/2YkdPwAACD/ZiR0/AAAKP9mJHT8AAAw/2YkdPwAADj/ZiR0/AAAQP9mJHT8AABI/2YkdPwAAFD/ZiR0/AAAWP9mJHT8AABg/2YkdPwAAGj/ZiR0/AAAcP9mJHT8AAB4/2YkdPwAAID/ZiR0/AAAiP9mJHT8AACQ/2YkdPwAAJj/ZiR0/AAAoP9mJHT8AACo/2YkdPwAALD/ZiR0/AAAuP9mJHT8AADA/2YkdPwAAMj/ZiR0/AAA0P9mJHT8AADY/2YkdPwAAOD/ZiR0/AAA6P9mJHT8AADw/2YkdPwAAPj/ZiR0/AABAP9mJHT8AAEI/2YkdPwAARD/ZiR0/AABGP9mJHT8AAEg/2YkdPwAASj/ZiR0/AABMP9mJHT8AAE4/2YkdPwAAUD/ZiR0/AABSP9mJHT8AAFQ/2YkdPwAAVj/ZiR0/AABYP9mJHT8AAFo/2YkdPwAAXD/ZiR0/AABeP9mJHT8AAGA/2YkdPwAAYj/ZiR0/AABkP9mJHT8AAGY/2YkdPwAAaD/ZiR0/AABqP9mJHT8AAGw/2YkdPwAAbj/ZiR0/AABwP9mJHT8AAHI/2YkdPwAAdD/ZiR0/AAB2P9mJHT8AAHg/2YkdPwAAej/ZiR0/AAB8P9mJHT8AAH4/2YkdPwAAgD/ZiR0/AAAAABh6IT8AAAA8GHohPwAAgDwYeiE/AADAPBh6IT8AAAA9GHohPwAAID0YeiE/AABAPRh6IT8AAGA9GHohPwAAgD0YeiE/AACQPRh6IT8AAKA9GHohPwAAsD0YeiE/AADAPRh6IT8AANA9GHohPwAA4D0YeiE/AADwPRh6IT8AAAA+GHohPwAACD4YeiE/AAAQPhh6IT8AABg+GHohPwAAID4YeiE/AAAoPhh6IT8AADA+GHohPwAAOD4YeiE/AABAPhh6IT8AAEg+GHohPwAAUD4YeiE/AABYPhh6IT8AAGA+GHohPwAAaD4YeiE/AABwPhh6IT8AAHg+GHohPwAAgD4YeiE/AACEPhh6IT8AAIg+GHohPwAAjD4YeiE/AACQPhh6IT8AAJQ+GHohPwAAmD4YeiE/AACcPhh6IT8AAKA+GHohPwAApD4YeiE/AACoPhh6IT8AAKw+GHohPwAAsD4YeiE/AAC0Phh6IT8AALg+GHohPwAAvD4YeiE/AADAPhh6IT8AAMQ+GHohPwAAyD4YeiE/AADMPhh6IT8AANA+GHohPwAA1D4YeiE/AADYPhh6IT8AANw+GHohPwAA4D4YeiE/AADkPhh6IT8AAOg+GHohPwAA7D4YeiE/AADwPhh6IT8AAPQ+GHohPwAA+D4YeiE/AAD8Phh6IT8AAAA/GHohPwAAAj8YeiE/AAAEPxh6IT8AAAY/GHohPwAACD8YeiE/AAAKPxh6IT8AAAw/GHohPwAADj8YeiE/AAAQPxh6IT8AABI/GHohPwAAFD8YeiE/AAAWPxh6IT8AABg/GHohPwAAGj8YeiE/AAAcPxh6IT8AAB4/GHohPwAAID8YeiE/AAAiPxh6IT8AACQ/GHohPwAAJj8YeiE/AAAoPxh6IT8AACo/GHohPwAALD8YeiE/AAAuPxh6IT8AADA/GHohPwAAMj8YeiE/AAA0Pxh6IT8AADY/GHohPwAAOD8YeiE/AAA6Pxh6IT8AADw/GHohPwAAPj8YeiE/AABAPxh6IT8AAEI/GHohPwAARD8YeiE/AABGPxh6IT8AAEg/GHohPwAASj8YeiE/AABMPxh6IT8AAE4/GHohPwAAUD8YeiE/AABSPxh6IT8AAFQ/GHohPwAAVj8YeiE/AABYPxh6IT8AAFo/GHohPwAAXD8YeiE/AABePxh6IT8AAGA/GHohPwAAYj8YeiE/AABkPxh6IT8AAGY/GHohPwAAaD8YeiE/AABqPxh6IT8AAGw/GHohPwAAbj8YeiE/AABwPxh6IT8AAHI/GHohPwAAdD8YeiE/AAB2Pxh6IT8AAHg/GHohPwAAej8YeiE/AAB8Pxh6IT8AAH4/GHohPwAAgD8YeiE/AAAAAFdqJT8AAAA8V2olPwAAgDxXaiU/AADAPFdqJT8AAAA9V2olPwAAID1XaiU/AABAPVdqJT8AAGA9V2olPwAAgD1XaiU/AACQPVdqJT8AAKA9V2olPwAAsD1XaiU/AADAPVdqJT8AANA9V2olPwAA4D1XaiU/AADwPVdqJT8AAAA+V2olPwAACD5XaiU/AAAQPldqJT8AABg+V2olPwAAID5XaiU/AAAoPldqJT8AADA+V2olPwAAOD5XaiU/AABAPldqJT8AAEg+V2olPwAAUD5XaiU/AABYPldqJT8AAGA+V2olPwAAaD5XaiU/AABwPldqJT8AAHg+V2olPwAAgD5XaiU/AACEPldqJT8AAIg+V2olPwAAjD5XaiU/AACQPldqJT8AAJQ+V2olPwAAmD5XaiU/AACcPldqJT8AAKA+V2olPwAApD5XaiU/AACoPldqJT8AAKw+V2olPwAAsD5XaiU/AAC0PldqJT8AALg+V2olPwAAvD5XaiU/AADAPldqJT8AAMQ+V2olPwAAyD5XaiU/AADMPldqJT8AANA+V2olPwAA1D5XaiU/AADYPldqJT8AANw+V2olPwAA4D5XaiU/AADkPldqJT8AAOg+V2olPwAA7D5XaiU/AADwPldqJT8AAPQ+V2olPwAA+D5XaiU/AAD8PldqJT8AAAA/V2olPwAAAj9XaiU/AAAEP1dqJT8AAAY/V2olPwAACD9XaiU/AAAKP1dqJT8AAAw/V2olPwAADj9XaiU/AAAQP1dqJT8AABI/V2olPwAAFD9XaiU/AAAWP1dqJT8AABg/V2olPwAAGj9XaiU/AAAcP1dqJT8AAB4/V2olPwAAID9XaiU/AAAiP1dqJT8AACQ/V2olPwAAJj9XaiU/AAAoP1dqJT8AACo/V2olPwAALD9XaiU/AAAuP1dqJT8AADA/V2olPwAAMj9XaiU/AAA0P1dqJT8AADY/V2olPwAAOD9XaiU/AAA6P1dqJT8AADw/V2olPwAAPj9XaiU/AABAP1dqJT8AAEI/V2olPwAARD9XaiU/AABGP1dqJT8AAEg/V2olPwAASj9XaiU/AABMP1dqJT8AAE4/V2olPwAAUD9XaiU/AABSP1dqJT8AAFQ/V2olPwAAVj9XaiU/AABYP1dqJT8AAFo/V2olPwAAXD9XaiU/AABeP1dqJT8AAGA/V2olPwAAYj9XaiU/AABkP1dqJT8AAGY/V2olPwAAaD9XaiU/AABqP1dqJT8AAGw/V2olPwAAbj9XaiU/AABwP1dqJT8AAHI/V2olPwAAdD9XaiU/AAB2P1dqJT8AAHg/V2olPwAAej9XaiU/AAB8P1dqJT8AAH4/V2olPwAAgD9XaiU/AAAAAJZaKT8AAAA8llopPwAAgDyWWik/AADAPJZaKT8AAAA9llopPwAAID2WWik/AABAPZZaKT8AAGA9llopPwAAgD2WWik/AACQPZZaKT8AAKA9llopPwAAsD2WWik/AADAPZZaKT8AANA9llopPwAA4D2WWik/AADwPZZaKT8AAAA+llopPwAACD6WWik/AAAQPpZaKT8AABg+llopPwAAID6WWik/AAAoPpZaKT8AADA+llopPwAAOD6WWik/AABAPpZaKT8AAEg+llopPwAAUD6WWik/AABYPpZaKT8AAGA+llopPwAAaD6WWik/AABwPpZaKT8AAHg+llopPwAAgD6WWik/AACEPpZaKT8AAIg+llopPwAAjD6WWik/AACQPpZaKT8AAJQ+llopPwAAmD6WWik/AACcPpZaKT8AAKA+llopPwAApD6WWik/AACoPpZaKT8AAKw+llopPwAAsD6WWik/AAC0PpZaKT8AALg+llopPwAAvD6WWik/AADAPpZaKT8AAMQ+llopPwAAyD6WWik/AADMPpZaKT8AANA+llopPwAA1D6WWik/AADYPpZaKT8AANw+llopPwAA4D6WWik/AADkPpZaKT8AAOg+llopPwAA7D6WWik/AADwPpZaKT8AAPQ+llopPwAA+D6WWik/AAD8PpZaKT8AAAA/llopPwAAAj+WWik/AAAEP5ZaKT8AAAY/llopPwAACD+WWik/AAAKP5ZaKT8AAAw/llopPwAADj+WWik/AAAQP5ZaKT8AABI/llopPwAAFD+WWik/AAAWP5ZaKT8AABg/llopPwAAGj+WWik/AAAcP5ZaKT8AAB4/llopPwAAID+WWik/AAAiP5ZaKT8AACQ/llopPwAAJj+WWik/AAAoP5ZaKT8AACo/llopPwAALD+WWik/AAAuP5ZaKT8AADA/llopPwAAMj+WWik/AAA0P5ZaKT8AADY/llopPwAAOD+WWik/AAA6P5ZaKT8AADw/llopPwAAPj+WWik/AABAP5ZaKT8AAEI/llopPwAARD+WWik/AABGP5ZaKT8AAEg/llopPwAASj+WWik/AABMP5ZaKT8AAE4/llopPwAAUD+WWik/AABSP5ZaKT8AAFQ/llopPwAAVj+WWik/AABYP5ZaKT8AAFo/llopPwAAXD+WWik/AABeP5ZaKT8AAGA/llopPwAAYj+WWik/AABkP5ZaKT8AAGY/llopPwAAaD+WWik/AABqP5ZaKT8AAGw/llopPwAAbj+WWik/AABwP5ZaKT8AAHI/llopPwAAdD+WWik/AAB2P5ZaKT8AAHg/llopPwAAej+WWik/AAB8P5ZaKT8AAH4/llopPwAAgD+WWik/AAAAANVKLT8AAAA81UotPwAAgDzVSi0/AADAPNVKLT8AAAA91UotPwAAID3VSi0/AABAPdVKLT8AAGA91UotPwAAgD3VSi0/AACQPdVKLT8AAKA91UotPwAAsD3VSi0/AADAPdVKLT8AANA91UotPwAA4D3VSi0/AADwPdVKLT8AAAA+1UotPwAACD7VSi0/AAAQPtVKLT8AABg+1UotPwAAID7VSi0/AAAoPtVKLT8AADA+1UotPwAAOD7VSi0/AABAPtVKLT8AAEg+1UotPwAAUD7VSi0/AABYPtVKLT8AAGA+1UotPwAAaD7VSi0/AABwPtVKLT8AAHg+1UotPwAAgD7VSi0/AACEPtVKLT8AAIg+1UotPwAAjD7VSi0/AACQPtVKLT8AAJQ+1UotPwAAmD7VSi0/AACcPtVKLT8AAKA+1UotPwAApD7VSi0/AACoPtVKLT8AAKw+1UotPwAAsD7VSi0/AAC0PtVKLT8AALg+1UotPwAAvD7VSi0/AADAPtVKLT8AAMQ+1UotPwAAyD7VSi0/AADMPtVKLT8AANA+1UotPwAA1D7VSi0/AADYPtVKLT8AANw+1UotPwAA4D7VSi0/AADkPtVKLT8AAOg+1UotPwAA7D7VSi0/AADwPtVKLT8AAPQ+1UotPwAA+D7VSi0/AAD8PtVKLT8AAAA/1UotPwAAAj/VSi0/AAAEP9VKLT8AAAY/1UotPwAACD/VSi0/AAAKP9VKLT8AAAw/1UotPwAADj/VSi0/AAAQP9VKLT8AABI/1UotPwAAFD/VSi0/AAAWP9VKLT8AABg/1UotPwAAGj/VSi0/AAAcP9VKLT8AAB4/1UotPwAAID/VSi0/AAAiP9VKLT8AACQ/1UotPwAAJj/VSi0/AAAoP9VKLT8AACo/1UotPwAALD/VSi0/AAAuP9VKLT8AADA/1UotPwAAMj/VSi0/AAA0P9VKLT8AADY/1UotPwAAOD/VSi0/AAA6P9VKLT8AADw/1UotPwAAPj/VSi0/AABAP9VKLT8AAEI/1UotPwAARD/VSi0/AABGP9VKLT8AAEg/1UotPwAASj/VSi0/AABMP9VKLT8AAE4/1UotPwAAUD/VSi0/AABSP9VKLT8AAFQ/1UotPwAAVj/VSi0/AABYP9VKLT8AAFo/1UotPwAAXD/VSi0/AABeP9VKLT8AAGA/1UotPwAAYj/VSi0/AABkP9VKLT8AAGY/1UotPwAAaD/VSi0/AABqP9VKLT8AAGw/1UotPwAAbj/VSi0/AABwP9VKLT8AAHI/1UotPwAAdD/VSi0/AAB2P9VKLT8AAHg/1UotPwAAej/VSi0/AAB8P9VKLT8AAH4/1UotPwAAgD/VSi0/AAAAABQ7MT8AAAA8FDsxPwAAgDwUOzE/AADAPBQ7MT8AAAA9FDsxPwAAID0UOzE/AABAPRQ7MT8AAGA9FDsxPwAAgD0UOzE/AACQPRQ7MT8AAKA9FDsxPwAAsD0UOzE/AADAPRQ7MT8AANA9FDsxPwAA4D0UOzE/AADwPRQ7MT8AAAA+FDsxPwAACD4UOzE/AAAQPhQ7MT8AABg+FDsxPwAAID4UOzE/AAAoPhQ7MT8AADA+FDsxPwAAOD4UOzE/AABAPhQ7MT8AAEg+FDsxPwAAUD4UOzE/AABYPhQ7MT8AAGA+FDsxPwAAaD4UOzE/AABwPhQ7MT8AAHg+FDsxPwAAgD4UOzE/AACEPhQ7MT8AAIg+FDsxPwAAjD4UOzE/AACQPhQ7MT8AAJQ+FDsxPwAAmD4UOzE/AACcPhQ7MT8AAKA+FDsxPwAApD4UOzE/AACoPhQ7MT8AAKw+FDsxPwAAsD4UOzE/AAC0PhQ7MT8AALg+FDsxPwAAvD4UOzE/AADAPhQ7MT8AAMQ+FDsxPwAAyD4UOzE/AADMPhQ7MT8AANA+FDsxPwAA1D4UOzE/AADYPhQ7MT8AANw+FDsxPwAA4D4UOzE/AADkPhQ7MT8AAOg+FDsxPwAA7D4UOzE/AADwPhQ7MT8AAPQ+FDsxPwAA+D4UOzE/AAD8PhQ7MT8AAAA/FDsxPwAAAj8UOzE/AAAEPxQ7MT8AAAY/FDsxPwAACD8UOzE/AAAKPxQ7MT8AAAw/FDsxPwAADj8UOzE/AAAQPxQ7MT8AABI/FDsxPwAAFD8UOzE/AAAWPxQ7MT8AABg/FDsxPwAAGj8UOzE/AAAcPxQ7MT8AAB4/FDsxPwAAID8UOzE/AAAiPxQ7MT8AACQ/FDsxPwAAJj8UOzE/AAAoPxQ7MT8AACo/FDsxPwAALD8UOzE/AAAuPxQ7MT8AADA/FDsxPwAAMj8UOzE/AAA0PxQ7MT8AADY/FDsxPwAAOD8UOzE/AAA6PxQ7MT8AADw/FDsxPwAAPj8UOzE/AABAPxQ7MT8AAEI/FDsxPwAARD8UOzE/AABGPxQ7MT8AAEg/FDsxPwAASj8UOzE/AABMPxQ7MT8AAE4/FDsxPwAAUD8UOzE/AABSPxQ7MT8AAFQ/FDsxPwAAVj8UOzE/AABYPxQ7MT8AAFo/FDsxPwAAXD8UOzE/AABePxQ7MT8AAGA/FDsxPwAAYj8UOzE/AABkPxQ7MT8AAGY/FDsxPwAAaD8UOzE/AABqPxQ7MT8AAGw/FDsxPwAAbj8UOzE/AABwPxQ7MT8AAHI/FDsxPwAAdD8UOzE/AAB2PxQ7MT8AAHg/FDsxPwAAej8UOzE/AAB8PxQ7MT8AAH4/FDsxPwAAgD8UOzE/AAAAAFMrNT8AAAA8Uys1PwAAgDxTKzU/AADAPFMrNT8AAAA9Uys1PwAAID1TKzU/AABAPVMrNT8AAGA9Uys1PwAAgD1TKzU/AACQPVMrNT8AAKA9Uys1PwAAsD1TKzU/AADAPVMrNT8AANA9Uys1PwAA4D1TKzU/AADwPVMrNT8AAAA+Uys1PwAACD5TKzU/AAAQPlMrNT8AABg+Uys1PwAAID5TKzU/AAAoPlMrNT8AADA+Uys1PwAAOD5TKzU/AABAPlMrNT8AAEg+Uys1PwAAUD5TKzU/AABYPlMrNT8AAGA+Uys1PwAAaD5TKzU/AABwPlMrNT8AAHg+Uys1PwAAgD5TKzU/AACEPlMrNT8AAIg+Uys1PwAAjD5TKzU/AACQPlMrNT8AAJQ+Uys1PwAAmD5TKzU/AACcPlMrNT8AAKA+Uys1PwAApD5TKzU/AACoPlMrNT8AAKw+Uys1PwAAsD5TKzU/AAC0PlMrNT8AALg+Uys1PwAAvD5TKzU/AADAPlMrNT8AAMQ+Uys1PwAAyD5TKzU/AADMPlMrNT8AANA+Uys1PwAA1D5TKzU/AADYPlMrNT8AANw+Uys1PwAA4D5TKzU/AADkPlMrNT8AAOg+Uys1PwAA7D5TKzU/AADwPlMrNT8AAPQ+Uys1PwAA+D5TKzU/AAD8PlMrNT8AAAA/Uys1PwAAAj9TKzU/AAAEP1MrNT8AAAY/Uys1PwAACD9TKzU/AAAKP1MrNT8AAAw/Uys1PwAADj9TKzU/AAAQP1MrNT8AABI/Uys1PwAAFD9TKzU/AAAWP1MrNT8AABg/Uys1PwAAGj9TKzU/AAAcP1MrNT8AAB4/Uys1PwAAID9TKzU/AAAiP1MrNT8AACQ/Uys1PwAAJj9TKzU/AAAoP1MrNT8AACo/Uys1PwAALD9TKzU/AAAuP1MrNT8AADA/Uys1PwAAMj9TKzU/AAA0P1MrNT8AADY/Uys1PwAAOD9TKzU/AAA6P1MrNT8AADw/Uys1PwAAPj9TKzU/AABAP1MrNT8AAEI/Uys1PwAARD9TKzU/AABGP1MrNT8AAEg/Uys1PwAASj9TKzU/AABMP1MrNT8AAE4/Uys1PwAAUD9TKzU/AABSP1MrNT8AAFQ/Uys1PwAAVj9TKzU/AABYP1MrNT8AAFo/Uys1PwAAXD9TKzU/AABeP1MrNT8AAGA/Uys1PwAAYj9TKzU/AABkP1MrNT8AAGY/Uys1PwAAaD9TKzU/AABqP1MrNT8AAGw/Uys1PwAAbj9TKzU/AABwP1MrNT8AAHI/Uys1PwAAdD9TKzU/AAB2P1MrNT8AAHg/Uys1PwAAej9TKzU/AAB8P1MrNT8AAH4/Uys1PwAAgD9TKzU/AAAAAJIbOT8AAAA8khs5PwAAgDySGzk/AADAPJIbOT8AAAA9khs5PwAAID2SGzk/AABAPZIbOT8AAGA9khs5PwAAgD2SGzk/AACQPZIbOT8AAKA9khs5PwAAsD2SGzk/AADAPZIbOT8AANA9khs5PwAA4D2SGzk/AADwPZIbOT8AAAA+khs5PwAACD6SGzk/AAAQPpIbOT8AABg+khs5PwAAID6SGzk/AAAoPpIbOT8AADA+khs5PwAAOD6SGzk/AABAPpIbOT8AAEg+khs5PwAAUD6SGzk/AABYPpIbOT8AAGA+khs5PwAAaD6SGzk/AABwPpIbOT8AAHg+khs5PwAAgD6SGzk/AACEPpIbOT8AAIg+khs5PwAAjD6SGzk/AACQPpIbOT8AAJQ+khs5PwAAmD6SGzk/AACcPpIbOT8AAKA+khs5PwAApD6SGzk/AACoPpIbOT8AAKw+khs5PwAAsD6SGzk/AAC0PpIbOT8AALg+khs5PwAAvD6SGzk/AADAPpIbOT8AAMQ+khs5PwAAyD6SGzk/AADMPpIbOT8AANA+khs5PwAA1D6SGzk/AADYPpIbOT8AANw+khs5PwAA4D6SGzk/AADkPpIbOT8AAOg+khs5PwAA7D6SGzk/AADwPpIbOT8AAPQ+khs5PwAA+D6SGzk/AAD8PpIbOT8AAAA/khs5PwAAAj+SGzk/AAAEP5IbOT8AAAY/khs5PwAACD+SGzk/AAAKP5IbOT8AAAw/khs5PwAADj+SGzk/AAAQP5IbOT8AABI/khs5PwAAFD+SGzk/AAAWP5IbOT8AABg/khs5PwAAGj+SGzk/AAAcP5IbOT8AAB4/khs5PwAAID+SGzk/AAAiP5IbOT8AACQ/khs5PwAAJj+SGzk/AAAoP5IbOT8AACo/khs5PwAALD+SGzk/AAAuP5IbOT8AADA/khs5PwAAMj+SGzk/AAA0P5IbOT8AADY/khs5PwAAOD+SGzk/AAA6P5IbOT8AADw/khs5PwAAPj+SGzk/AABAP5IbOT8AAEI/khs5PwAARD+SGzk/AABGP5IbOT8AAEg/khs5PwAASj+SGzk/AABMP5IbOT8AAE4/khs5PwAAUD+SGzk/AABSP5IbOT8AAFQ/khs5PwAAVj+SGzk/AABYP5IbOT8AAFo/khs5PwAAXD+SGzk/AABeP5IbOT8AAGA/khs5PwAAYj+SGzk/AABkP5IbOT8AAGY/khs5PwAAaD+SGzk/AABqP5IbOT8AAGw/khs5PwAAbj+SGzk/AABwP5IbOT8AAHI/khs5PwAAdD+SGzk/AAB2P5IbOT8AAHg/khs5PwAAej+SGzk/AAB8P5IbOT8AAH4/khs5PwAAgD+SGzk/AAAAANELPT8AAAA80Qs9PwAAgDzRCz0/AADAPNELPT8AAAA90Qs9PwAAID3RCz0/AABAPdELPT8AAGA90Qs9PwAAgD3RCz0/AACQPdELPT8AAKA90Qs9PwAAsD3RCz0/AADAPdELPT8AANA90Qs9PwAA4D3RCz0/AADwPdELPT8AAAA+0Qs9PwAACD7RCz0/AAAQPtELPT8AABg+0Qs9PwAAID7RCz0/AAAoPtELPT8AADA+0Qs9PwAAOD7RCz0/AABAPtELPT8AAEg+0Qs9PwAAUD7RCz0/AABYPtELPT8AAGA+0Qs9PwAAaD7RCz0/AABwPtELPT8AAHg+0Qs9PwAAgD7RCz0/AACEPtELPT8AAIg+0Qs9PwAAjD7RCz0/AACQPtELPT8AAJQ+0Qs9PwAAmD7RCz0/AACcPtELPT8AAKA+0Qs9PwAApD7RCz0/AACoPtELPT8AAKw+0Qs9PwAAsD7RCz0/AAC0PtELPT8AALg+0Qs9PwAAvD7RCz0/AADAPtELPT8AAMQ+0Qs9PwAAyD7RCz0/AADMPtELPT8AANA+0Qs9PwAA1D7RCz0/AADYPtELPT8AANw+0Qs9PwAA4D7RCz0/AADkPtELPT8AAOg+0Qs9PwAA7D7RCz0/AADwPtELPT8AAPQ+0Qs9PwAA+D7RCz0/AAD8PtELPT8AAAA/0Qs9PwAAAj/RCz0/AAAEP9ELPT8AAAY/0Qs9PwAACD/RCz0/AAAKP9ELPT8AAAw/0Qs9PwAADj/RCz0/AAAQP9ELPT8AABI/0Qs9PwAAFD/RCz0/AAAWP9ELPT8AABg/0Qs9PwAAGj/RCz0/AAAcP9ELPT8AAB4/0Qs9PwAAID/RCz0/AAAiP9ELPT8AACQ/0Qs9PwAAJj/RCz0/AAAoP9ELPT8AACo/0Qs9PwAALD/RCz0/AAAuP9ELPT8AADA/0Qs9PwAAMj/RCz0/AAA0P9ELPT8AADY/0Qs9PwAAOD/RCz0/AAA6P9ELPT8AADw/0Qs9PwAAPj/RCz0/AABAP9ELPT8AAEI/0Qs9PwAARD/RCz0/AABGP9ELPT8AAEg/0Qs9PwAASj/RCz0/AABMP9ELPT8AAE4/0Qs9PwAAUD/RCz0/AABSP9ELPT8AAFQ/0Qs9PwAAVj/RCz0/AABYP9ELPT8AAFo/0Qs9PwAAXD/RCz0/AABeP9ELPT8AAGA/0Qs9PwAAYj/RCz0/AABkP9ELPT8AAGY/0Qs9PwAAaD/RCz0/AABqP9ELPT8AAGw/0Qs9PwAAbj/RCz0/AABwP9ELPT8AAHI/0Qs9PwAAdD/RCz0/AAB2P9ELPT8AAHg/0Qs9PwAAej/RCz0/AAB8P9ELPT8AAH4/0Qs9PwAAgD/RCz0/AAAAABD8QD8AAAA8EPxAPwAAgDwQ/EA/AADAPBD8QD8AAAA9EPxAPwAAID0Q/EA/AABAPRD8QD8AAGA9EPxAPwAAgD0Q/EA/AACQPRD8QD8AAKA9EPxAPwAAsD0Q/EA/AADAPRD8QD8AANA9EPxAPwAA4D0Q/EA/AADwPRD8QD8AAAA+EPxAPwAACD4Q/EA/AAAQPhD8QD8AABg+EPxAPwAAID4Q/EA/AAAoPhD8QD8AADA+EPxAPwAAOD4Q/EA/AABAPhD8QD8AAEg+EPxAPwAAUD4Q/EA/AABYPhD8QD8AAGA+EPxAPwAAaD4Q/EA/AABwPhD8QD8AAHg+EPxAPwAAgD4Q/EA/AACEPhD8QD8AAIg+EPxAPwAAjD4Q/EA/AACQPhD8QD8AAJQ+EPxAPwAAmD4Q/EA/AACcPhD8QD8AAKA+EPxAPwAApD4Q/EA/AACoPhD8QD8AAKw+EPxAPwAAsD4Q/EA/AAC0PhD8QD8AALg+EPxAPwAAvD4Q/EA/AADAPhD8QD8AAMQ+EPxAPwAAyD4Q/EA/AADMPhD8QD8AANA+EPxAPwAA1D4Q/EA/AADYPhD8QD8AANw+EPxAPwAA4D4Q/EA/AADkPhD8QD8AAOg+EPxAPwAA7D4Q/EA/AADwPhD8QD8AAPQ+EPxAPwAA+D4Q/EA/AAD8PhD8QD8AAAA/EPxAPwAAAj8Q/EA/AAAEPxD8QD8AAAY/EPxAPwAACD8Q/EA/AAAKPxD8QD8AAAw/EPxAPwAADj8Q/EA/AAAQPxD8QD8AABI/EPxAPwAAFD8Q/EA/AAAWPxD8QD8AABg/EPxAPwAAGj8Q/EA/AAAcPxD8QD8AAB4/EPxAPwAAID8Q/EA/AAAiPxD8QD8AACQ/EPxAPwAAJj8Q/EA/AAAoPxD8QD8AACo/EPxAPwAALD8Q/EA/AAAuPxD8QD8AADA/EPxAPwAAMj8Q/EA/AAA0PxD8QD8AADY/EPxAPwAAOD8Q/EA/AAA6PxD8QD8AADw/EPxAPwAAPj8Q/EA/AABAPxD8QD8AAEI/EPxAPwAARD8Q/EA/AABGPxD8QD8AAEg/EPxAPwAASj8Q/EA/AABMPxD8QD8AAE4/EPxAPwAAUD8Q/EA/AABSPxD8QD8AAFQ/EPxAPwAAVj8Q/EA/AABYPxD8QD8AAFo/EPxAPwAAXD8Q/EA/AABePxD8QD8AAGA/EPxAPwAAYj8Q/EA/AABkPxD8QD8AAGY/EPxAPwAAaD8Q/EA/AABqPxD8QD8AAGw/EPxAPwAAbj8Q/EA/AABwPxD8QD8AAHI/EPxAPwAAdD8Q/EA/AAB2PxD8QD8AAHg/EPxAPwAAej8Q/EA/AAB8PxD8QD8AAH4/EPxAPwAAgD8Q/EA/AAAAAE/sRD8AAAA8T+xEPwAAgDxP7EQ/AADAPE/sRD8AAAA9T+xEPwAAID1P7EQ/AABAPU/sRD8AAGA9T+xEPwAAgD1P7EQ/AACQPU/sRD8AAKA9T+xEPwAAsD1P7EQ/AADAPU/sRD8AANA9T+xEPwAA4D1P7EQ/AADwPU/sRD8AAAA+T+xEPwAACD5P7EQ/AAAQPk/sRD8AABg+T+xEPwAAID5P7EQ/AAAoPk/sRD8AADA+T+xEPwAAOD5P7EQ/AABAPk/sRD8AAEg+T+xEPwAAUD5P7EQ/AABYPk/sRD8AAGA+T+xEPwAAaD5P7EQ/AABwPk/sRD8AAHg+T+xEPwAAgD5P7EQ/AACEPk/sRD8AAIg+T+xEPwAAjD5P7EQ/AACQPk/sRD8AAJQ+T+xEPwAAmD5P7EQ/AACcPk/sRD8AAKA+T+xEPwAApD5P7EQ/AACoPk/sRD8AAKw+T+xEPwAAsD5P7EQ/AAC0Pk/sRD8AALg+T+xEPwAAvD5P7EQ/AADAPk/sRD8AAMQ+T+xEPwAAyD5P7EQ/AADMPk/sRD8AANA+T+xEPwAA1D5P7EQ/AADYPk/sRD8AANw+T+xEPwAA4D5P7EQ/AADkPk/sRD8AAOg+T+xEPwAA7D5P7EQ/AADwPk/sRD8AAPQ+T+xEPwAA+D5P7EQ/AAD8Pk/sRD8AAAA/T+xEPwAAAj9P7EQ/AAAEP0/sRD8AAAY/T+xEPwAACD9P7EQ/AAAKP0/sRD8AAAw/T+xEPwAADj9P7EQ/AAAQP0/sRD8AABI/T+xEPwAAFD9P7EQ/AAAWP0/sRD8AABg/T+xEPwAAGj9P7EQ/AAAcP0/sRD8AAB4/T+xEPwAAID9P7EQ/AAAiP0/sRD8AACQ/T+xEPwAAJj9P7EQ/AAAoP0/sRD8AACo/T+xEPwAALD9P7EQ/AAAuP0/sRD8AADA/T+xEPwAAMj9P7EQ/AAA0P0/sRD8AADY/T+xEPwAAOD9P7EQ/AAA6P0/sRD8AADw/T+xEPwAAPj9P7EQ/AABAP0/sRD8AAEI/T+xEPwAARD9P7EQ/AABGP0/sRD8AAEg/T+xEPwAASj9P7EQ/AABMP0/sRD8AAE4/T+xEPwAAUD9P7EQ/AABSP0/sRD8AAFQ/T+xEPwAAVj9P7EQ/AABYP0/sRD8AAFo/T+xEPwAAXD9P7EQ/AABeP0/sRD8AAGA/T+xEPwAAYj9P7EQ/AABkP0/sRD8AAGY/T+xEPwAAaD9P7EQ/AABqP0/sRD8AAGw/T+xEPwAAbj9P7EQ/AABwP0/sRD8AAHI/T+xEPwAAdD9P7EQ/AAB2P0/sRD8AAHg/T+xEPwAAej9P7EQ/AAB8P0/sRD8AAH4/T+xEPwAAgD9P7EQ/AAAAAI7cSD8AAAA8jtxIPwAAgDyO3Eg/AADAPI7cSD8AAAA9jtxIPwAAID2O3Eg/AABAPY7cSD8AAGA9jtxIPwAAgD2O3Eg/AACQPY7cSD8AAKA9jtxIPwAAsD2O3Eg/AADAPY7cSD8AANA9jtxIPwAA4D2O3Eg/AADwPY7cSD8AAAA+jtxIPwAACD6O3Eg/AAAQPo7cSD8AABg+jtxIPwAAID6O3Eg/AAAoPo7cSD8AADA+jtxIPwAAOD6O3Eg/AABAPo7cSD8AAEg+jtxIPwAAUD6O3Eg/AABYPo7cSD8AAGA+jtxIPwAAaD6O3Eg/AABwPo7cSD8AAHg+jtxIPwAAgD6O3Eg/AACEPo7cSD8AAIg+jtxIPwAAjD6O3Eg/AACQPo7cSD8AAJQ+jtxIPwAAmD6O3Eg/AACcPo7cSD8AAKA+jtxIPwAApD6O3Eg/AACoPo7cSD8AAKw+jtxIPwAAsD6O3Eg/AAC0Po7cSD8AALg+jtxIPwAAvD6O3Eg/AADAPo7cSD8AAMQ+jtxIPwAAyD6O3Eg/AADMPo7cSD8AANA+jtxIPwAA1D6O3Eg/AADYPo7cSD8AANw+jtxIPwAA4D6O3Eg/AADkPo7cSD8AAOg+jtxIPwAA7D6O3Eg/AADwPo7cSD8AAPQ+jtxIPwAA+D6O3Eg/AAD8Po7cSD8AAAA/jtxIPwAAAj+O3Eg/AAAEP47cSD8AAAY/jtxIPwAACD+O3Eg/AAAKP47cSD8AAAw/jtxIPwAADj+O3Eg/AAAQP47cSD8AABI/jtxIPwAAFD+O3Eg/AAAWP47cSD8AABg/jtxIPwAAGj+O3Eg/AAAcP47cSD8AAB4/jtxIPwAAID+O3Eg/AAAiP47cSD8AACQ/jtxIPwAAJj+O3Eg/AAAoP47cSD8AACo/jtxIPwAALD+O3Eg/AAAuP47cSD8AADA/jtxIPwAAMj+O3Eg/AAA0P47cSD8AADY/jtxIPwAAOD+O3Eg/AAA6P47cSD8AADw/jtxIPwAAPj+O3Eg/AABAP47cSD8AAEI/jtxIPwAARD+O3Eg/AABGP47cSD8AAEg/jtxIPwAASj+O3Eg/AABMP47cSD8AAE4/jtxIPwAAUD+O3Eg/AABSP47cSD8AAFQ/jtxIPwAAVj+O3Eg/AABYP47cSD8AAFo/jtxIPwAAXD+O3Eg/AABeP47cSD8AAGA/jtxIPwAAYj+O3Eg/AABkP47cSD8AAGY/jtxIPwAAaD+O3Eg/AABqP47cSD8AAGw/jtxIPwAAbj+O3Eg/AABwP47cSD8AAHI/jtxIPwAAdD+O3Eg/AAB2P47cSD8AAHg/jtxIPwAAej+O3Eg/AAB8P47cSD8AAH4/jtxIPwAAgD+O3Eg/AAAAAM3MTD8AAAA8zcxMPwAAgDzNzEw/AADAPM3MTD8AAAA9zcxMPwAAID3NzEw/AABAPc3MTD8AAGA9zcxMPwAAgD3NzEw/AACQPc3MTD8AAKA9zcxMPwAAsD3NzEw/AADAPc3MTD8AANA9zcxMPwAA4D3NzEw/AADwPc3MTD8AAAA+zcxMPwAACD7NzEw/AAAQPs3MTD8AABg+zcxMPwAAID7NzEw/AAAoPs3MTD8AADA+zcxMPwAAOD7NzEw/AABAPs3MTD8AAEg+zcxMPwAAUD7NzEw/AABYPs3MTD8AAGA+zcxMPwAAaD7NzEw/AABwPs3MTD8AAHg+zcxMPwAAgD7NzEw/AACEPs3MTD8AAIg+zcxMPwAAjD7NzEw/AACQPs3MTD8AAJQ+zcxMPwAAmD7NzEw/AACcPs3MTD8AAKA+zcxMPwAApD7NzEw/AACoPs3MTD8AAKw+zcxMPwAAsD7NzEw/AAC0Ps3MTD8AALg+zcxMPwAAvD7NzEw/AADAPs3MTD8AAMQ+zcxMPwAAyD7NzEw/AADMPs3MTD8AANA+zcxMPwAA1D7NzEw/AADYPs3MTD8AANw+zcxMPwAA4D7NzEw/AADkPs3MTD8AAOg+zcxMPwAA7D7NzEw/AADwPs3MTD8AAPQ+zcxMPwAA+D7NzEw/AAD8Ps3MTD8AAAA/zcxMPwAAAj/NzEw/AAAEP83MTD8AAAY/zcxMPwAACD/NzEw/AAAKP83MTD8AAAw/zcxMPwAADj/NzEw/AAAQP83MTD8AABI/zcxMPwAAFD/NzEw/AAAWP83MTD8AABg/zcxMPwAAGj/NzEw/AAAcP83MTD8AAB4/zcxMPwAAID/NzEw/AAAiP83MTD8AACQ/zcxMPwAAJj/NzEw/AAAoP83MTD8AACo/zcxMPwAALD/NzEw/AAAuP83MTD8AADA/zcxMPwAAMj/NzEw/AAA0P83MTD8AADY/zcxMPwAAOD/NzEw/AAA6P83MTD8AADw/zcxMPwAAPj/NzEw/AABAP83MTD8AAEI/zcxMPwAARD/NzEw/AABGP83MTD8AAEg/zcxMPwAASj/NzEw/AABMP83MTD8AAE4/zcxMPwAAUD/NzEw/AABSP83MTD8AAFQ/zcxMPwAAVj/NzEw/AABYP83MTD8AAFo/zcxMPwAAXD/NzEw/AABeP83MTD8AAGA/zcxMPwAAYj/NzEw/AABkP83MTD8AAGY/zcxMPwAAaD/NzEw/AABqP83MTD8AAGw/zcxMPwAAbj/NzEw/AABwP83MTD8AAHI/zcxMPwAAdD/NzEw/AAB2P83MTD8AAHg/zcxMPwAAej/NzEw/AAB8P83MTD8AAH4/zcxMPwAAgD/NzEw/AAAAAAy9UD8AAAA8DL1QPwAAgDwMvVA/AADAPAy9UD8AAAA9DL1QPwAAID0MvVA/AABAPQy9UD8AAGA9DL1QPwAAgD0MvVA/AACQPQy9UD8AAKA9DL1QPwAAsD0MvVA/AADAPQy9UD8AANA9DL1QPwAA4D0MvVA/AADwPQy9UD8AAAA+DL1QPwAACD4MvVA/AAAQPgy9UD8AABg+DL1QPwAAID4MvVA/AAAoPgy9UD8AADA+DL1QPwAAOD4MvVA/AABAPgy9UD8AAEg+DL1QPwAAUD4MvVA/AABYPgy9UD8AAGA+DL1QPwAAaD4MvVA/AABwPgy9UD8AAHg+DL1QPwAAgD4MvVA/AACEPgy9UD8AAIg+DL1QPwAAjD4MvVA/AACQPgy9UD8AAJQ+DL1QPwAAmD4MvVA/AACcPgy9UD8AAKA+DL1QPwAApD4MvVA/AACoPgy9UD8AAKw+DL1QPwAAsD4MvVA/AAC0Pgy9UD8AALg+DL1QPwAAvD4MvVA/AADAPgy9UD8AAMQ+DL1QPwAAyD4MvVA/AADMPgy9UD8AANA+DL1QPwAA1D4MvVA/AADYPgy9UD8AANw+DL1QPwAA4D4MvVA/AADkPgy9UD8AAOg+DL1QPwAA7D4MvVA/AADwPgy9UD8AAPQ+DL1QPwAA+D4MvVA/AAD8Pgy9UD8AAAA/DL1QPwAAAj8MvVA/AAAEPwy9UD8AAAY/DL1QPwAACD8MvVA/AAAKPwy9UD8AAAw/DL1QPwAADj8MvVA/AAAQPwy9UD8AABI/DL1QPwAAFD8MvVA/AAAWPwy9UD8AABg/DL1QPwAAGj8MvVA/AAAcPwy9UD8AAB4/DL1QPwAAID8MvVA/AAAiPwy9UD8AACQ/DL1QPwAAJj8MvVA/AAAoPwy9UD8AACo/DL1QPwAALD8MvVA/AAAuPwy9UD8AADA/DL1QPwAAMj8MvVA/AAA0Pwy9UD8AADY/DL1QPwAAOD8MvVA/AAA6Pwy9UD8AADw/DL1QPwAAPj8MvVA/AABAPwy9UD8AAEI/DL1QPwAARD8MvVA/AABGPwy9UD8AAEg/DL1QPwAASj8MvVA/AABMPwy9UD8AAE4/DL1QPwAAUD8MvVA/AABSPwy9UD8AAFQ/DL1QPwAAVj8MvVA/AABYPwy9UD8AAFo/DL1QPwAAXD8MvVA/AABePwy9UD8AAGA/DL1QPwAAYj8MvVA/AABkPwy9UD8AAGY/DL1QPwAAaD8MvVA/AABqPwy9UD8AAGw/DL1QPwAAbj8MvVA/AABwPwy9UD8AAHI/DL1QPwAAdD8MvVA/AAB2Pwy9UD8AAHg/DL1QPwAAej8MvVA/AAB8Pwy9UD8AAH4/DL1QPwAAgD8MvVA/AAAAAEutVD8AAAA8S61UPwAAgDxLrVQ/AADAPEutVD8AAAA9S61UPwAAID1LrVQ/AABAPUutVD8AAGA9S61UPwAAgD1LrVQ/AACQPUutVD8AAKA9S61UPwAAsD1LrVQ/AADAPUutVD8AANA9S61UPwAA4D1LrVQ/AADwPUutVD8AAAA+S61UPwAACD5LrVQ/AAAQPkutVD8AABg+S61UPwAAID5LrVQ/AAAoPkutVD8AADA+S61UPwAAOD5LrVQ/AABAPkutVD8AAEg+S61UPwAAUD5LrVQ/AABYPkutVD8AAGA+S61UPwAAaD5LrVQ/AABwPkutVD8AAHg+S61UPwAAgD5LrVQ/AACEPkutVD8AAIg+S61UPwAAjD5LrVQ/AACQPkutVD8AAJQ+S61UPwAAmD5LrVQ/AACcPkutVD8AAKA+S61UPwAApD5LrVQ/AACoPkutVD8AAKw+S61UPwAAsD5LrVQ/AAC0PkutVD8AALg+S61UPwAAvD5LrVQ/AADAPkutVD8AAMQ+S61UPwAAyD5LrVQ/AADMPkutVD8AANA+S61UPwAA1D5LrVQ/AADYPkutVD8AANw+S61UPwAA4D5LrVQ/AADkPkutVD8AAOg+S61UPwAA7D5LrVQ/AADwPkutVD8AAPQ+S61UPwAA+D5LrVQ/AAD8PkutVD8AAAA/S61UPwAAAj9LrVQ/AAAEP0utVD8AAAY/S61UPwAACD9LrVQ/AAAKP0utVD8AAAw/S61UPwAADj9LrVQ/AAAQP0utVD8AABI/S61UPwAAFD9LrVQ/AAAWP0utVD8AABg/S61UPwAAGj9LrVQ/AAAcP0utVD8AAB4/S61UPwAAID9LrVQ/AAAiP0utVD8AACQ/S61UPwAAJj9LrVQ/AAAoP0utVD8AACo/S61UPwAALD9LrVQ/AAAuP0utVD8AADA/S61UPwAAMj9LrVQ/AAA0P0utVD8AADY/S61UPwAAOD9LrVQ/AAA6P0utVD8AADw/S61UPwAAPj9LrVQ/AABAP0utVD8AAEI/S61UPwAARD9LrVQ/AABGP0utVD8AAEg/S61UPwAASj9LrVQ/AABMP0utVD8AAE4/S61UPwAAUD9LrVQ/AABSP0utVD8AAFQ/S61UPwAAVj9LrVQ/AABYP0utVD8AAFo/S61UPwAAXD9LrVQ/AABeP0utVD8AAGA/S61UPwAAYj9LrVQ/AABkP0utVD8AAGY/S61UPwAAaD9LrVQ/AABqP0utVD8AAGw/S61UPwAAbj9LrVQ/AABwP0utVD8AAHI/S61UPwAAdD9LrVQ/AAB2P0utVD8AAHg/S61UPwAAej9LrVQ/AAB8P0utVD8AAH4/S61UPwAAgD9LrVQ/AAAAAIqdWD8AAAA8ip1YPwAAgDyKnVg/AADAPIqdWD8AAAA9ip1YPwAAID2KnVg/AABAPYqdWD8AAGA9ip1YPwAAgD2KnVg/AACQPYqdWD8AAKA9ip1YPwAAsD2KnVg/AADAPYqdWD8AANA9ip1YPwAA4D2KnVg/AADwPYqdWD8AAAA+ip1YPwAACD6KnVg/AAAQPoqdWD8AABg+ip1YPwAAID6KnVg/AAAoPoqdWD8AADA+ip1YPwAAOD6KnVg/AABAPoqdWD8AAEg+ip1YPwAAUD6KnVg/AABYPoqdWD8AAGA+ip1YPwAAaD6KnVg/AABwPoqdWD8AAHg+ip1YPwAAgD6KnVg/AACEPoqdWD8AAIg+ip1YPwAAjD6KnVg/AACQPoqdWD8AAJQ+ip1YPwAAmD6KnVg/AACcPoqdWD8AAKA+ip1YPwAApD6KnVg/AACoPoqdWD8AAKw+ip1YPwAAsD6KnVg/AAC0PoqdWD8AALg+ip1YPwAAvD6KnVg/AADAPoqdWD8AAMQ+ip1YPwAAyD6KnVg/AADMPoqdWD8AANA+ip1YPwAA1D6KnVg/AADYPoqdWD8AANw+ip1YPwAA4D6KnVg/AADkPoqdWD8AAOg+ip1YPwAA7D6KnVg/AADwPoqdWD8AAPQ+ip1YPwAA+D6KnVg/AAD8PoqdWD8AAAA/ip1YPwAAAj+KnVg/AAAEP4qdWD8AAAY/ip1YPwAACD+KnVg/AAAKP4qdWD8AAAw/ip1YPwAADj+KnVg/AAAQP4qdWD8AABI/ip1YPwAAFD+KnVg/AAAWP4qdWD8AABg/ip1YPwAAGj+KnVg/AAAcP4qdWD8AAB4/ip1YPwAAID+KnVg/AAAiP4qdWD8AACQ/ip1YPwAAJj+KnVg/AAAoP4qdWD8AACo/ip1YPwAALD+KnVg/AAAuP4qdWD8AADA/ip1YPwAAMj+KnVg/AAA0P4qdWD8AADY/ip1YPwAAOD+KnVg/AAA6P4qdWD8AADw/ip1YPwAAPj+KnVg/AABAP4qdWD8AAEI/ip1YPwAARD+KnVg/AABGP4qdWD8AAEg/ip1YPwAASj+KnVg/AABMP4qdWD8AAE4/ip1YPwAAUD+KnVg/AABSP4qdWD8AAFQ/ip1YPwAAVj+KnVg/AABYP4qdWD8AAFo/ip1YPwAAXD+KnVg/AABeP4qdWD8AAGA/ip1YPwAAYj+KnVg/AABkP4qdWD8AAGY/ip1YPwAAaD+KnVg/AABqP4qdWD8AAGw/ip1YPwAAbj+KnVg/AABwP4qdWD8AAHI/ip1YPwAAdD+KnVg/AAB2P4qdWD8AAHg/ip1YPwAAej+KnVg/AAB8P4qdWD8AAH4/ip1YPwAAgD+KnVg/AAAAAMmNXD8AAAA8yY1cPwAAgDzJjVw/AADAPMmNXD8AAAA9yY1cPwAAID3JjVw/AABAPcmNXD8AAGA9yY1cPwAAgD3JjVw/AACQPcmNXD8AAKA9yY1cPwAAsD3JjVw/AADAPcmNXD8AANA9yY1cPwAA4D3JjVw/AADwPcmNXD8AAAA+yY1cPwAACD7JjVw/AAAQPsmNXD8AABg+yY1cPwAAID7JjVw/AAAoPsmNXD8AADA+yY1cPwAAOD7JjVw/AABAPsmNXD8AAEg+yY1cPwAAUD7JjVw/AABYPsmNXD8AAGA+yY1cPwAAaD7JjVw/AABwPsmNXD8AAHg+yY1cPwAAgD7JjVw/AACEPsmNXD8AAIg+yY1cPwAAjD7JjVw/AACQPsmNXD8AAJQ+yY1cPwAAmD7JjVw/AACcPsmNXD8AAKA+yY1cPwAApD7JjVw/AACoPsmNXD8AAKw+yY1cPwAAsD7JjVw/AAC0PsmNXD8AALg+yY1cPwAAvD7JjVw/AADAPsmNXD8AAMQ+yY1cPwAAyD7JjVw/AADMPsmNXD8AANA+yY1cPwAA1D7JjVw/AADYPsmNXD8AANw+yY1cPwAA4D7JjVw/AADkPsmNXD8AAOg+yY1cPwAA7D7JjVw/AADwPsmNXD8AAPQ+yY1cPwAA+D7JjVw/AAD8PsmNXD8AAAA/yY1cPwAAAj/JjVw/AAAEP8mNXD8AAAY/yY1cPwAACD/JjVw/AAAKP8mNXD8AAAw/yY1cPwAADj/JjVw/AAAQP8mNXD8AABI/yY1cPwAAFD/JjVw/AAAWP8mNXD8AABg/yY1cPwAAGj/JjVw/AAAcP8mNXD8AAB4/yY1cPwAAID/JjVw/AAAiP8mNXD8AACQ/yY1cPwAAJj/JjVw/AAAoP8mNXD8AACo/yY1cPwAALD/JjVw/AAAuP8mNXD8AADA/yY1cPwAAMj/JjVw/AAA0P8mNXD8AADY/yY1cPwAAOD/JjVw/AAA6P8mNXD8AADw/yY1cPwAAPj/JjVw/AABAP8mNXD8AAEI/yY1cPwAARD/JjVw/AABGP8mNXD8AAEg/yY1cPwAASj/JjVw/AABMP8mNXD8AAE4/yY1cPwAAUD/JjVw/AABSP8mNXD8AAFQ/yY1cPwAAVj/JjVw/AABYP8mNXD8AAFo/yY1cPwAAXD/JjVw/AABeP8mNXD8AAGA/yY1cPwAAYj/JjVw/AABkP8mNXD8AAGY/yY1cPwAAaD/JjVw/AABqP8mNXD8AAGw/yY1cPwAAbj/JjVw/AABwP8mNXD8AAHI/yY1cPwAAdD/JjVw/AAB2P8mNXD8AAHg/yY1cPwAAej/JjVw/AAB8P8mNXD8AAH4/yY1cPwAAgD/JjVw/AAAAAAh+YD8AAAA8CH5gPwAAgDwIfmA/AADAPAh+YD8AAAA9CH5gPwAAID0IfmA/AABAPQh+YD8AAGA9CH5gPwAAgD0IfmA/AACQPQh+YD8AAKA9CH5gPwAAsD0IfmA/AADAPQh+YD8AANA9CH5gPwAA4D0IfmA/AADwPQh+YD8AAAA+CH5gPwAACD4IfmA/AAAQPgh+YD8AABg+CH5gPwAAID4IfmA/AAAoPgh+YD8AADA+CH5gPwAAOD4IfmA/AABAPgh+YD8AAEg+CH5gPwAAUD4IfmA/AABYPgh+YD8AAGA+CH5gPwAAaD4IfmA/AABwPgh+YD8AAHg+CH5gPwAAgD4IfmA/AACEPgh+YD8AAIg+CH5gPwAAjD4IfmA/AACQPgh+YD8AAJQ+CH5gPwAAmD4IfmA/AACcPgh+YD8AAKA+CH5gPwAApD4IfmA/AACoPgh+YD8AAKw+CH5gPwAAsD4IfmA/AAC0Pgh+YD8AALg+CH5gPwAAvD4IfmA/AADAPgh+YD8AAMQ+CH5gPwAAyD4IfmA/AADMPgh+YD8AANA+CH5gPwAA1D4IfmA/AADYPgh+YD8AANw+CH5gPwAA4D4IfmA/AADkPgh+YD8AAOg+CH5gPwAA7D4IfmA/AADwPgh+YD8AAPQ+CH5gPwAA+D4IfmA/AAD8Pgh+YD8AAAA/CH5gPwAAAj8IfmA/AAAEPwh+YD8AAAY/CH5gPwAACD8IfmA/AAAKPwh+YD8AAAw/CH5gPwAADj8IfmA/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AACcPoZeaD8AAKA+hl5oPwAApD6GXmg/AACoPoZeaD8AAKw+hl5oPwAAsD6GXmg/AAC0PoZeaD8AALg+hl5oPwAAvD6GXmg/AADAPoZeaD8AAMQ+hl5oPwAAyD6GXmg/AADMPoZeaD8AANA+hl5oPwAA1D6GXmg/AADYPoZeaD8AANw+hl5oPwAA4D6GXmg/AADkPoZeaD8AAOg+hl5oPwAA7D6GXmg/AADwPoZeaD8AAPQ+hl5oPwAA+D6GXmg/AAD8PoZeaD8AAAA/hl5oPwAAAj+GXmg/AAAEP4ZeaD8AAAY/hl5oPwAACD+GXmg/AAAKP4ZeaD8AAAw/hl5oPwAADj+GXmg/AAAQP4ZeaD8AABI/hl5oPwAAFD+GXmg/AAAWP4ZeaD8AABg/hl5oPwAAGj+GXmg/AAAcP4ZeaD8AAB4/hl5oPwAAID+GXmg/AAAiP4ZeaD8AACQ/hl5oPwAAJj+GXmg/AAAoP4ZeaD8AACo/hl5oPwAALD+GXmg/AAAuP4ZeaD8AADA/hl5oPwAAMj+GXmg/AAA0P4ZeaD8AADY/hl5oPwAAOD+GXmg/AAA6P4ZeaD8AADw/hl5oPwAAPj+GXmg/AABAP4ZeaD8AAEI/hl5oPwAARD+GXmg/AABGP4ZeaD8AAEg/hl5oPwAASj+GXmg/AABMP4ZeaD8AAE4/hl5oPwAAUD+GXmg/AABSP4ZeaD8AAFQ/hl5oPwAAVj+GXmg/AABYP4ZeaD8AAFo/hl5oPwAAXD+GXmg/AABeP4ZeaD8AAGA/hl5oPwAAYj+GXmg/AABkP4ZeaD8AAGY/hl5oPwAAaD+GXmg/AABqP4ZeaD8AAGw/hl5oPwAAbj+GXmg/AABwP4ZeaD8AAHI/hl5oPwAAdD+GXmg/AAB2P4ZeaD8AAHg/hl5oPwAAej+GXmg/AAB8P4ZeaD8AAH4/hl5oPwAAgD+GXmg/AAAAAMVObD8AAAA8xU5sPwAAgDzFTmw/AADAPMVObD8AAAA9xU5sPwAAID3FTmw/AABAPcVObD8AAGA9xU5sPwAAgD3FTmw/AACQPcVObD8AAKA9xU5sPwAAsD3FTmw/AADAPcVObD8AANA9xU5sPwAA4D3FTmw/AADwPcVObD8AAAA+xU5sPwAACD7FTmw/AAAQPsVObD8AABg+xU5sPwAAID7FTmw/AAAoPsVObD8AADA+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"), "format": 34359742487, "index_count": 49920, "index_data": PackedByteArray("AAABAIEAAQCCAIEAAQACAIIAAgCDAIIAAgADAIMAAwCEAIMAAwAEAIQABACFAIQABAAFAIUABQCGAIUABQAGAIYABgCHAIYABgAHAIcABwCIAIcABwAIAIgACACJAIgACAAJAIkACQCKAIkACQAKAIoACgCLAIoACgALAIsACwCMAIsACwAMAIwADACNAIwADAANAI0ADQCOAI0ADQAOAI4ADgCPAI4ADgAPAI8ADwCQAI8ADwAQAJAAEACRAJAAEAARAJEAEQCSAJEAEQASAJIAEgCTAJIAEgATAJMAEwCUAJMAEwAUAJQAFACVAJQAFAAVAJUAFQCWAJUAFQAWAJYAFgCXAJYAFgAXAJcAFwCYAJcAFwAYAJgAGACZAJgAGAAZAJkAGQCaAJkAGQAaAJoAGgCbAJoAGgAbAJsAGwCcAJsAGwAcAJwAHACdAJwAHAAdAJ0AHQCeAJ0AHQAeAJ4AHgCfAJ4AHgAfAJ8AHwCgAJ8AHwAgAKAAIAChAKAAIAAhAKEAIQCiAKEAIQAiAKIAIgCjAKIAIgAjAKMAIwCkAKMAIwAkAKQAJAClAKQAJAAlAKUAJQCmAKUAJQAmAKYAJgCnAKYAJgAnAKcAJwCoAKcAJwAoAKgAKACpAKgAKAApAKkAKQCqAKkAKQAqAKoAKgCrAKoAKgArAKsAKwCsAKsAKwAsAKwALACtAKwALAAtAK0ALQCuAK0ALQAuAK4ALgCvAK4ALgAvAK8ALwCwAK8ALwAwALAAMACxALAAMAAxALEAMQCyALEAMQAyALIAMgCzALIAMgAzALMAMwC0ALMAMwA0ALQANAC1ALQANAA1ALUANQC2ALUANQA2ALYANgC3ALYANgA3ALcANwC4ALcANwA4ALgAOAC5ALgAOAA5ALkAOQC6ALkAOQA6ALoAOgC7ALoAOgA7ALsAOwC8ALsAOwA8ALwAPAC9ALwAPAA9AL0APQC+AL0APQA+AL4APgC/AL4APgA/AL8APwDAAL8APwBAAMAAQADBAMAAQABBAMEAQQDCAMEAQQBCAMIAQgDDAMIAQgBDAMMAQwDEAMMAQwBEAMQARADFAMQARABFAMUARQDGAMUARQBGAMYARgDHAMYARgBHAMcARwDIAMcARwBIAMgASADJAMgASABJAMkASQDKAMkASQBKAMoASgDLAMoASgBLAMsASwDMAMsASwBMAMwATADNAMwATABNAM0ATQDOAM0ATQBOAM4ATgDPAM4ATgBPAM8ATwDQAM8ATwBQANAAUADRANAAUABRANEAUQDSANEAUQBSANIAUgDTANIAUgBTANMAUwDUANMAUwBUANQAVADVANQAVABVANUAVQDWANUAVQBWANYAVgDXANYAVgBXANcAVwDYANcAVwBYANgAWADZANgAWABZANkAWQDaANkAWQBaANoAWgDbANoAWgBbANsAWwDcANsAWwBcANwAXADdANwAXABdAN0AXQDeAN0AXQBeAN4AXgDfAN4AXgBfAN8AXwDgAN8AXwBgAOAAYADhAOAAYABhAOEAYQDiAOEAYQBiAOIAYgDjAOIAYgBjAOMAYwDkAOMAYwBkAOQAZADlAOQAZABlAOUAZQDmAOUAZQBmAOYAZgDnAOYAZgBnAOcAZwDoAOcAZwBoAOgAaADpAOgAaABpAOkAaQDqAOkAaQBqAOoAagDrAOoAagBrAOsAawDsAOsAawBsAOwAbADtAOwAbABtAO0AbQDuAO0AbQBuAO4AbgDvAO4AbgBvAO8AbwDwAO8AbwBwAPAAcADxAPAAcABxAPEAcQDyAPEAcQByAPIAcgDzAPIAcgBzAPMAcwD0APMAcwB0APQAdAD1APQAdAB1APUAdQD2APUAdQB2APYAdgD3APYAdgB3APcAdwD4APcAdwB4APgAeAD5APgAeAB5APkAeQD6APkAeQB6APoAegD7APoAegB7APsAewD8APsAewB8APwAfAD9APwAfAB9AP0AfQD+AP0AfQB+AP4AfgD/AP4AfgB/AP8AfwAAAf8AfwCAAAABgAABAQABgQCCAAIBggADAQIBggCDAAMBgwAEAQMBgwCEAAQBhAAFAQQBhACFAAUBhQAGAQUBhQCGAAYBhgAHAQYBhgCHAAcBhwAIAQcBhwCIAAgBiAAJAQgBiACJAAkBiQAKAQkBiQCKAAoBigALAQoBigCLAAsBiwAMAQsBiwCMAAwBjAANAQwBjACNAA0BjQAOAQ0BjQCOAA4BjgAPAQ4BjgCPAA8BjwAQAQ8BjwCQABABkAARARABkACRABEBkQASAREBkQCSABIBkgATARIBkgCTABMBkwAUARMBkwCUABQBlAAVARQBlACVABUBlQAWARUBlQCWABYBlgAXARYBlgCXABcBlwAYARcBlwCYABgBmAAZARgBmACZABkBmQAaARkBmQCaABoBmgAbARoBmgCbABsBmwAcARsBmwCcABwBnAAdARwBnACdAB0BnQAeAR0BnQCeAB4BngAfAR4BngCfAB8BnwAgAR8BnwCgACABoAAhASABoAChACEBoQAiASEBoQCiACIBogAjASIBogCjACMBowAkASMBowCkACQBpAAlASQBpAClACUBpQAmASUBpQCmACYBpgAnASYBpgCnACcBpwAoAScBpwCoACgBqAApASgBqACpACkBqQAqASkBqQCqACoBqgArASoBqgCrACsBqwAsASsBqwCsACwBrAAtASwBrACtAC0BrQAuAS0BrQCuAC4BrgAvAS4BrgCvAC8BrwAwAS8BrwCwADABsAAxATABsACxADEBsQAyATEBsQCyADIBsgAzATIBsgCzADMBswA0ATMBswC0ADQBtAA1ATQBtAC1ADUBtQA2ATUBtQC2ADYBtgA3ATYBtgC3ADcBtwA4ATcBtwC4ADgBuAA5ATgBuAC5ADkBuQA6ATkBuQC6ADoBugA7AToBugC7ADsBuwA8ATsBuwC8ADwBvAA9ATwBvAC9AD0BvQA+AT0BvQC+AD4BvgA/AT4BvgC/AD8BvwBAAT8BvwDAAEABwABBAUABwADBAEEBwQBCAUEBwQDCAEIBwgBDAUIBwgDDAEMBwwBEAUMBwwDEAEQBxABFAUQBxADFAEUBxQBGAUUBxQDGAEYBxgBHAUYBxgDHAEcBxwBIAUcBxwDIAEgByABJAUgByADJAEkByQBKAUkByQDKAEoBygBLAUoBygDLAEsBywBMAUsBywDMAEwBzABNAUwBzADNAE0BzQBOAU0BzQDOAE4BzgBPAU4BzgDPAE8BzwBQAU8BzwDQAFAB0ABRAVAB0ADRAFEB0QBSAVEB0QDSAFIB0gBTAVIB0gDTAFMB0wBUAVMB0wDUAFQB1ABVAVQB1ADVAFUB1QBWAVUB1QDWAFYB1gBXAVYB1gDXAFcB1wBYAVcB1wDYAFgB2ABZAVgB2ADZAFkB2QBaAVkB2QDaAFoB2gBbAVoB2gDbAFsB2wBcAVsB2wDcAFwB3ABdAVwB3ADdAF0B3QBeAV0B3QDeAF4B3gBfAV4B3gDfAF8B3wBgAV8B3wDgAGAB4ABhAWAB4ADhAGEB4QBiAWEB4QDiAGIB4gBjAWIB4gDjAGMB4wBkAWMB4wDkAGQB5ABlAWQB5ADlAGUB5QBmAWUB5QDmAGYB5gBnAWYB5gDnAGcB5wBoAWcB5wDoAGgB6ABpAWgB6ADpAGkB6QBqAWkB6QDqAGoB6gBrAWoB6gDrAGsB6wBsAWsB6wDsAGwB7ABtAWwB7ADtAG0B7QBuAW0B7QDuAG4B7gBvAW4B7gDvAG8B7wBwAW8B7wDwAHAB8ABxAXAB8ADxAHEB8QByAXEB8QDyAHIB8gBzAXIB8gDzAHMB8wB0AXMB8wD0AHQB9AB1AXQB9AD1AHUB9QB2AXUB9QD2AHYB9gB3AXYB9gD3AHcB9wB4AXcB9wD4AHgB+AB5AXgB+AD5AHkB+QB6AXkB+QD6AHoB+gB7AXoB+gD7AHsB+wB8AXsB+wD8AHwB/AB9AXwB/AD9AH0B/QB+AX0B/QD+AH4B/gB/AX4B/gD/AH8B/wCAAX8B/wAAAYABAAGBAYABAAEBAYEBAQGCAYEBAgEDAYMBAwGEAYMBAwEEAYQBBAGFAYQBBAEFAYUBBQGGAYUBBQEGAYYBBgGHAYYBBgEHAYcBBwGIAYcBBwEIAYgBCAGJAYgBCAEJAYkBCQGKAYkBCQEKAYoBCgGLAYoBCgELAYsBCwGMAYsBCwEMAYwBDAGNAYwBDAENAY0BDQGOAY0BDQEOAY4BDgGPAY4BDgEPAY8BDwGQAY8BDwEQAZABEAGRAZABEAERAZEBEQGSAZEBEQESAZIBEgGTAZIBEgETAZMBEwGUAZMBEwEUAZQBFAGVAZQBFAEVAZUBFQGWAZUBFQEWAZYBFgGXAZYBFgEXAZcBFwGYAZcBFwEYAZgBGAGZAZgBGAEZAZkBGQGaAZkBGQEaAZoBGgGbAZoBGgEbAZsBGwGcAZsBGwEcAZwBHAGdAZwBHAEdAZ0BHQGeAZ0BHQEeAZ4BHgGfAZ4BHgEfAZ8BHwGgAZ8BHwEgAaABIAGhAaABIAEhAaEBIQGiAaEBIQEiAaIBIgGjAaIBIgEjAaMBIwGkAaMBIwEkAaQBJAGlAaQBJAElAaUBJQGmAaUBJQEmAaYBJgGnAaYBJgEnAacBJwGoAacBJwEoAagBKAGpAagBKAEpAakBKQGqAakBKQEqAaoBKgGrAaoBKgErAasBKwGsAasBKwEsAawBLAGtAawBLAEtAa0BLQGuAa0BLQEuAa4BLgGvAa4BLgEvAa8BLwGwAa8BLwEwAbABMAGxAbABMAExAbEBMQGyAbEBMQEyAbIBMgGzAbIBMgEzAbMBMwG0AbMBMwE0AbQBNAG1AbQBNAE1AbUBNQG2AbUBNQE2AbYBNgG3AbYBNgE3AbcBNwG4AbcBNwE4AbgBOAG5AbgBOAE5AbkBOQG6AbkBOQE6AboBOgG7AboBOgE7AbsBOwG8AbsBOwE8AbwBPAG9AbwBPAE9Ab0BPQG+Ab0BPQE+Ab4BPgG/Ab4BPgE/Ab8BPwHAAb8BPwFAAcABQAHBAcABQAFBAcEBQQHCAcEBQQFCAcIBQgHDAcIBQgFDAcMBQwHEAcMBQwFEAcQBRAHFAcQBRAFFAcUBRQHGAcUBRQFGAcYBRgHHAcYBRgFHAccBRwHIAccBRwFIAcgBSAHJAcgBSAFJAckBSQHKAckBSQFKAcoBSgHLAcoBSgFLAcsBSwHMAcsBSwFMAcwBTAHNAcwBTAFNAc0BTQHOAc0BTQFOAc4BTgHPAc4BTgFPAc8BTwHQAc8BTwFQAdABUAHRAdABUAFRAdEBUQHSAdEBUQFSAdIBUgHTAdIBUgFTAdMBUwHUAdMBUwFUAdQBVAHVAdQBVAFVAdUBVQHWAdUBVQFWAdYBVgHXAdYBVgFXAdcBVwHYAdcBVwFYAdgBWAHZAdgBWAFZAdkBWQHaAdkBWQFaAdoBWgHbAdoBWgFbAdsBWwHcAdsBWwFcAdwBXAHdAdwBXAFdAd0BXQHeAd0BXQFeAd4BXgHfAd4BXgFfAd8BXwHgAd8BXwFgAeABYAHhAeABYAFhAeEBYQHiAeEBYQFiAeIBYgHjAeIBYgFjAeMBYwHkAeMBYwFkAeQBZAHlAeQBZAFlAeUBZQHmAeUBZQFmAeYBZgHnAeYBZgFnAecBZwHoAecBZwFoAegBaAHpAegBaAFpAekBaQHqAekBaQFqAeoBagHrAeoBagFrAesBawHsAesBawFsAewBbAHtAewBbAFtAe0BbQHuAe0BbQFuAe4BbgHvAe4BbgFvAe8BbwHwAe8BbwFwAfABcAHxAfABcAFxAfEBcQHyAfEBcQFyAfIBcgHzAfIBcgFzAfMBcwH0AfMBcwF0AfQBdAH1AfQBdAF1AfUBdQH2AfUBdQF2AfYBdgH3AfYBdgF3AfcBdwH4AfcBdwF4AfgBeAH5AfgBeAF5AfkBeQH6AfkBeQF6AfoBegH7AfoBegF7AfsBewH8AfsBewF8AfwBfAH9AfwBfAF9Af0BfQH+Af0BfQF+Af4BfgH/Af4BfgF/Af8BfwEAAv8BfwGAAQACgAEBAgACgAGBAQECgQECAgECgQGCAQICggEDAgICgwGEAQQChAEFAgQChAGFAQUChQEGAgUChQGGAQYChgEHAgYChgGHAQcChwEIAgcChwGIAQgCiAEJAggCiAGJAQkCiQEKAgkCiQGKAQoCigELAgoCigGLAQsCiwEMAgsCiwGMAQwCjAENAgwCjAGNAQ0CjQEOAg0CjQGOAQ4CjgEPAg4CjgGPAQ8CjwEQAg8CjwGQARACkAERAhACkAGRARECkQESAhECkQGSARICkgETAhICkgGTARMCkwEUAhMCkwGUARQClAEVAhQClAGVARUClQEWAhUClQGWARYClgEXAhYClgGXARcClwEYAhcClwGYARgCmAEZAhgCmAGZARkCmQEaAhkCmQGaARoCmgEbAhoCmgGbARsCmwEcAhsCmwGcARwCnAEdAhwCnAGdAR0CnQEeAh0CnQGeAR4CngEfAh4CngGfAR8CnwEgAh8CnwGgASACoAEhAiACoAGhASECoQEiAiECoQGiASICogEjAiICogGjASMCowEkAiMCowGkASQCpAElAiQCpAGlASUCpQEmAiUCpQGmASYCpgEnAiYCpgGnAScCpwEoAicCpwGoASgCqAEpAigCqAGpASkCqQEqAikCqQGqASoCqgErAioCqgGrASsCqwEsAisCqwGsASwCrAEtAiwCrAGtAS0CrQEuAi0CrQGuAS4CrgEvAi4CrgGvAS8CrwEwAi8CrwGwATACsAExAjACsAGxATECsQEyAjECsQGyATICsgEzAjICsgGzATMCswE0AjMCswG0ATQCtAE1AjQCtAG1ATUCtQE2AjUCtQG2ATYCtgE3AjYCtgG3ATcCtwE4AjcCtwG4ATgCuAE5AjgCuAG5ATkCuQE6AjkCuQG6AToCugE7AjoCugG7ATsCuwE8AjsCuwG8ATwCvAE9AjwCvAG9AT0CvQE+Aj0CvQG+AT4CvgE/Aj4CvgG/AT8CvwFAAj8CvwHAAUACwAFBAkACwAHBAUECwQFCAkECwQHCAUICwgFDAkICwgHDAUMCwwFEAkMCwwHEAUQCxAFFAkQCxAHFAUUCxQFGAkUCxQHGAUYCxgFHAkYCxgHHAUcCxwFIAkcCxwHIAUgCyAFJAkgCyAHJAUkCyQFKAkkCyQHKAUoCygFLAkoCygHLAUsCywFMAksCywHMAUwCzAFNAkwCzAHNAU0CzQFOAk0CzQHOAU4CzgFPAk4CzgHPAU8CzwFQAk8CzwHQAVAC0AFRAlAC0AHRAVEC0QFSAlEC0QHSAVIC0gFTAlIC0gHTAVMC0wFUAlMC0wHUAVQC1AFVAlQC1AHVAVUC1QFWAlUC1QHWAVYC1gFXAlYC1gHXAVcC1wFYAlcC1wHYAVgC2AFZAlgC2AHZAVkC2QFaAlkC2QHaAVoC2gFbAloC2gHbAVsC2wFcAlsC2wHcAVwC3AFdAlwC3AHdAV0C3QFeAl0C3QHeAV4C3gFfAl4C3gHfAV8C3wFgAl8C3wHgAWAC4AFhAmAC4AHhAWEC4QFiAmEC4QHiAWIC4gFjAmIC4gHjAWMC4wFkAmMC4wHkAWQC5AFlAmQC5AHlAWUC5QFmAmUC5QHmAWYC5gFnAmYC5gHnAWcC5wFoAmcC5wHoAWgC6AFpAmgC6AHpAWkC6QFqAmkC6QHqAWoC6gFrAmoC6gHrAWsC6wFsAmsC6wHsAWwC7AFtAmwC7AHtAW0C7QFuAm0C7QHuAW4C7gFvAm4C7gHvAW8C7wFwAm8C7wHwAXAC8AFxAnAC8AHxAXEC8QFyAnEC8QHyAXIC8gFzAnIC8gHzAXMC8wF0AnMC8wH0AXQC9AF1AnQC9AH1AXUC9QF2AnUC9QH2AXYC9gF3AnYC9gH3AXcC9wF4AncC9wH4AXgC+AF5AngC+AH5AXkC+QF6AnkC+QH6AXoC+gF7AnoC+gH7AXsC+wF8AnsC+wH8AXwC/AF9AnwC/AH9AX0C/QF+An0C/QH+AX4C/gF/An4C/gH/AX8C/wGAAn8C/wEAAoACAAKBAoACAAIBAoECAQKCAoECAQICAoICAgKDAoICAgIDAoMCAwKEAoMCBAIFAoUCBQKGAoUCBQIGAoYCBgKHAoYCBgIHAocCBwKIAocCBwIIAogCCAKJAogCCAIJAokCCQKKAokCCQIKAooCCgKLAooCCgILAosCCwKMAosCCwIMAowCDAKNAowCDAINAo0CDQKOAo0CDQIOAo4CDgKPAo4CDgIPAo8CDwKQAo8CDwIQApACEAKRApACEAIRApECEQKSApECEQISApICEgKTApICEgITApMCEwKUApMCEwIUApQCFAKVApQCFAIVApUCFQKWApUCFQIWApYCFgKXApYCFgIXApcCFwKYApcCFwIYApgCGAKZApgCGAIZApkCGQKaApkCGQIaApoCGgKbApoCGgIbApsCGwKcApsCGwIcApwCHAKdApwCHAIdAp0CHQKeAp0CHQIeAp4CHgKfAp4CHgIfAp8CHwKgAp8CHwIgAqACIAKhAqACIAIhAqECIQKiAqECIQIiAqICIgKjAqICIgIjAqMCIwKkAqMCIwIkAqQCJAKlAqQCJAIlAqUCJQKmAqUCJQImAqYCJgKnAqYCJgInAqcCJwKoAqcCJwIoAqgCKAKpAqgCKAIpAqkCKQKqAqkCKQIqAqoCKgKrAqoCKgIrAqsCKwKsAqsCKwIsAqwCLAKtAqwCLAItAq0CLQKuAq0CLQIuAq4CLgKvAq4CLgIvAq8CLwKwAq8CLwIwArACMAKxArACMAIxArECMQKyArECMQIyArICMgKzArICMgIzArMCMwK0ArMCMwI0ArQCNAK1ArQCNAI1ArUCNQK2ArUCNQI2ArYCNgK3ArYCNgI3ArcCNwK4ArcCNwI4ArgCOAK5ArgCOAI5ArkCOQK6ArkCOQI6AroCOgK7AroCOgI7ArsCOwK8ArsCOwI8ArwCPAK9ArwCPAI9Ar0CPQK+Ar0CPQI+Ar4CPgK/Ar4CPgI/Ar8CPwLAAr8CPwJAAsACQALBAsACQAJBAsECQQLCAsECQQJCAsICQgLDAsICQgJDAsMCQwLEAsMCQwJEAsQCRALFAsQCRAJFAsUCRQLGAsUCRQJGAsYCRgLHAsYCRgJHAscCRwLIAscCRwJIAsgCSALJAsgCSAJJAskCSQLKAskCSQJKAsoCSgLLAsoCSgJLAssCSwLMAssCSwJMAswCTALNAswCTAJNAs0CTQLOAs0CTQJOAs4CTgLPAs4CTgJPAs8CTwLQAs8CTwJQAtACUALRAtACUAJRAtECUQLSAtECUQJSAtICUgLTAtICUgJTAtMCUwLUAtMCUwJUAtQCVALVAtQCVAJVAtUCVQLWAtUCVQJWAtYCVgLXAtYCVgJXAtcCVwLYAtcCVwJYAtgCWALZAtgCWAJZAtkCWQLaAtkCWQJaAtoCWgLbAtoCWgJbAtsCWwLcAtsCWwJcAtwCXALdAtwCXAJdAt0CXQLeAt0CXQJeAt4CXgLfAt4CXgJfAt8CXwLgAt8CXwJgAuACYALhAuACYAJhAuECYQLiAuECYQJiAuICYgLjAuICYgJjAuMCYwLkAuMCYwJkAuQCZALlAuQCZAJlAuUCZQLmAuUCZQJmAuYCZgLnAuYCZgJnAucCZwLoAucCZwJoAugCaALpAugCaAJpAukCaQLqAukCaQJqAuoCagLrAuoCagJrAusCawLsAusCawJsAuwCbALtAuwCbAJtAu0CbQLuAu0CbQJuAu4CbgLvAu4CbgJvAu8CbwLwAu8CbwJwAvACcALxAvACcAJxAvECcQLyAvECcQJyAvICcgLzAvICcgJzAvMCcwL0AvMCcwJ0AvQCdAL1AvQCdAJ1AvUCdQL2AvUCdQJ2AvYCdgL3AvYCdgJ3AvcCdwL4AvcCdwJ4AvgCeAL5AvgCeAJ5AvkCeQL6AvkCeQJ6AvoCegL7AvoCegJ7AvsCewL8AvsCewJ8AvwCfAL9AvwCfAJ9Av0CfQL+Av0CfQJ+Av4CfgL/Av4CfgJ/Av8CfwIAA/8CfwKAAgADgAIBAwADgAKBAgEDgQICAwEDgQKCAgIDggIDAwIDggKDAgMDgwIEAwMDgwKEAgQDhAIFAwQDhQKGAgYDhgIHAwYDhgKHAgcDhwIIAwcDhwKIAggDiAIJAwgDiAKJAgkDiQIKAwkDiQKKAgoDigILAwoDigKLAgsDiwIMAwsDiwKMAgwDjAINAwwDjAKNAg0DjQIOAw0DjQKOAg4DjgIPAw4DjgKPAg8DjwIQAw8DjwKQAhADkAIRAxADkAKRAhEDkQISAxEDkQKSAhIDkgITAxIDkgKTAhMDkwIUAxMDkwKUAhQDlAIVAxQDlAKVAhUDlQIWAxUDlQKWAhYDlgIXAxYDlgKXAhcDlwIYAxcDlwKYAhgDmAIZAxgDmAKZAhkDmQIaAxkDmQKaAhoDmgIbAxoDmgKbAhsDmwIcAxsDmwKcAhwDnAIdAxwDnAKdAh0DnQIeAx0DnQKeAh4DngIfAx4DngKfAh8DnwIgAx8DnwKgAiADoAIhAyADoAKhAiEDoQIiAyEDoQKiAiIDogIjAyIDogKjAiMDowIkAyMDowKkAiQDpAIlAyQDpAKlAiUDpQImAyUDpQKmAiYDpgInAyYDpgKnAicDpwIoAycDpwKoAigDqAIpAygDqAKpAikDqQIqAykDqQKqAioDqgIrAyoDqgKrAisDqwIsAysDqwKsAiwDrAItAywDrAKtAi0DrQIuAy0DrQKuAi4DrgIvAy4DrgKvAi8DrwIwAy8DrwKwAjADsAIxAzADsAKxAjEDsQIyAzEDsQKyAjIDsgIzAzIDsgKzAjMDswI0AzMDswK0AjQDtAI1AzQDtAK1AjUDtQI2AzUDtQK2AjYDtgI3AzYDtgK3AjcDtwI4AzcDtwK4AjgDuAI5AzgDuAK5AjkDuQI6AzkDuQK6AjoDugI7AzoDugK7AjsDuwI8AzsDuwK8AjwDvAI9AzwDvAK9Aj0DvQI+Az0DvQK+Aj4DvgI/Az4DvgK/Aj8DvwJAAz8DvwLAAkADwAJBA0ADwALBAkEDwQJCA0EDwQLCAkIDwgJDA0IDwgLDAkMDwwJEA0MDwwLEAkQDxAJFA0QDxALFAkUDxQJGA0UDxQLGAkYDxgJHA0YDxgLHAkcDxwJIA0cDxwLIAkgDyAJJA0gDyALJAkkDyQJKA0kDyQLKAkoDygJLA0oDygLLAksDywJMA0sDywLMAkwDzAJNA0wDzALNAk0DzQJOA00DzQLOAk4DzgJPA04DzgLPAk8DzwJQA08DzwLQAlAD0AJRA1AD0ALRAlED0QJSA1ED0QLSAlID0gJTA1ID0gLTAlMD0wJUA1MD0wLUAlQD1AJVA1QD1ALVAlUD1QJWA1UD1QLWAlYD1gJXA1YD1gLXAlcD1wJYA1cD1wLYAlgD2AJZA1gD2ALZAlkD2QJaA1kD2QLaAloD2gJbA1oD2gLbAlsD2wJcA1sD2wLcAlwD3AJdA1wD3ALdAl0D3QJeA10D3QLeAl4D3gJfA14D3gLfAl8D3wJgA18D3wLgAmAD4AJhA2AD4ALhAmED4QJiA2ED4QLiAmID4gJjA2ID4gLjAmMD4wJkA2MD4wLkAmQD5AJlA2QD5ALlAmUD5QJmA2UD5QLmAmYD5gJnA2YD5gLnAmcD5wJoA2cD5wLoAmgD6AJpA2gD6ALpAmkD6QJqA2kD6QLqAmoD6gJrA2oD6gLrAmsD6wJsA2sD6wLsAmwD7AJtA2wD7ALtAm0D7QJuA20D7QLuAm4D7gJvA24D7gLvAm8D7wJwA28D7wLwAnAD8AJxA3AD8ALxAnED8QJyA3ED8QLyAnID8gJzA3ID8gLzAnMD8wJ0A3MD8wL0AnQD9AJ1A3QD9AL1AnUD9QJ2A3UD9QL2AnYD9gJ3A3YD9gL3AncD9wJ4A3cD9wL4AngD+AJ5A3gD+AL5AnkD+QJ6A3kD+QL6AnoD+gJ7A3oD+gL7AnsD+wJ8A3sD+wL8AnwD/AJ9A3wD/AL9An0D/QJ+A30D/QL+An4D/gJ/A34D/gL/An8D/wKAA38D/wIAA4ADAAOBA4ADAAMBA4EDAQOCA4EDAQMCA4IDAgODA4IDAgMDA4MDAwOEA4MDAwMEA4QDBAOFA4QDBAMFA4UDBQOGA4UDBgMHA4cDBwOIA4cDBwMIA4gDCAOJA4gDCAMJA4kDCQOKA4kDCQMKA4oDCgOLA4oDCgMLA4sDCwOMA4sDCwMMA4wDDAONA4wDDAMNA40DDQOOA40DDQMOA44DDgOPA44DDgMPA48DDwOQA48DDwMQA5ADEAORA5ADEAMRA5EDEQOSA5EDEQMSA5IDEgOTA5IDEgMTA5MDEwOUA5MDEwMUA5QDFAOVA5QDFAMVA5UDFQOWA5UDFQMWA5YDFgOXA5YDFgMXA5cDFwOYA5cDFwMYA5gDGAOZA5gDGAMZA5kDGQOaA5kDGQMaA5oDGgObA5oDGgMbA5sDGwOcA5sDGwMcA5wDHAOdA5wDHAMdA50DHQOeA50DHQMeA54DHgOfA54DHgMfA58DHwOgA58DHwMgA6ADIAOhA6ADIAMhA6EDIQOiA6EDIQMiA6IDIgOjA6IDIgMjA6MDIwOkA6MDIwMkA6QDJAOlA6QDJAMlA6UDJQOmA6UDJQMmA6YDJgOnA6YDJgMnA6cDJwOoA6cDJwMoA6gDKAOpA6gDKAMpA6kDKQOqA6kDKQMqA6oDKgOrA6oDKgMrA6sDKwOsA6sDKwMsA6wDLAOtA6wDLAMtA60DLQOuA60DLQMuA64DLgOvA64DLgMvA68DLwOwA68DLwMwA7ADMAOxA7ADMAMxA7EDMQOyA7EDMQMyA7IDMgOzA7IDMgMzA7MDMwO0A7MDMwM0A7QDNAO1A7QDNAM1A7UDNQO2A7UDNQM2A7YDNgO3A7YDNgM3A7cDNwO4A7cDNwM4A7gDOAO5A7gDOAM5A7kDOQO6A7kDOQM6A7oDOgO7A7oDOgM7A7sDOwO8A7sDOwM8A7wDPAO9A7wDPAM9A70DPQO+A70DPQM+A74DPgO/A74DPgM/A78DPwPAA78DPwNAA8ADQAPBA8ADQANBA8EDQQPCA8EDQQNCA8IDQgPDA8IDQgNDA8MDQwPEA8MDQwNEA8QDRAPFA8QDRANFA8UDRQPGA8UDRQNGA8YDRgPHA8YDRgNHA8cDRwPIA8cDRwNIA8gDSAPJA8gDSANJA8kDSQPKA8kDSQNKA8oDSgPLA8oDSgNLA8sDSwPMA8sDSwNMA8wDTAPNA8wDTANNA80DTQPOA80DTQNOA84DTgPPA84DTgNPA88DTwPQA88DTwNQA9ADUAPRA9ADUANRA9EDUQPSA9EDUQNSA9IDUgPTA9IDUgNTA9MDUwPUA9MDUwNUA9QDVAPVA9QDVANVA9UDVQPWA9UDVQNWA9YDVgPXA9YDVgNXA9cDVwPYA9cDVwNYA9gDWAPZA9gDWANZA9kDWQPaA9kDWQNaA9oDWgPbA9oDWgNbA9sDWwPcA9sDWwNcA9wDXAPdA9wDXANdA90DXQPeA90DXQNeA94DXgPfA94DXgNfA98DXwPgA98DXwNgA+ADYAPhA+ADYANhA+EDYQPiA+EDYQNiA+IDYgPjA+IDYgNjA+MDYwPkA+MDYwNkA+QDZAPlA+QDZANlA+UDZQPmA+UDZQNmA+YDZgPnA+YDZgNnA+cDZwPoA+cDZwNoA+gDaAPpA+gDaANpA+kDaQPqA+kDaQNqA+oDagPrA+oDagNrA+sDawPsA+sDawNsA+wDbAPtA+wDbANtA+0DbQPuA+0DbQNuA+4DbgPvA+4DbgNvA+8DbwPwA+8DbwNwA/ADcAPxA/ADcANxA/EDcQPyA/EDcQNyA/IDcgPzA/IDcgNzA/MDcwP0A/MDcwN0A/QDdAP1A/QDdAN1A/UDdQP2A/UDdQN2A/YDdgP3A/YDdgN3A/cDdwP4A/cDdwN4A/gDeAP5A/gDeAN5A/kDeQP6A/kDeQN6A/oDegP7A/oDegN7A/sDewP8A/sDewN8A/wDfAP9A/wDfAN9A/0DfQP+A/0DfQN+A/4DfgP/A/4DfgN/A/8DfwMABP8DfwOAAwAEgAMBBAAEgAOBAwEEgQMCBAEEgQOCAwIEggMDBAIEggODAwMEgwMEBAMEgwOEAwQEhAMFBAQEhAOFAwUEhQMGBAUEhQOGAwYEhgMHBAYEhwOIAwgEiAMJBAgEiAOJAwkEiQMKBAkEiQOKAwoEigMLBAoEigOLAwsEiwMMBAsEiwOMAwwEjAMNBAwEjAONAw0EjQMOBA0EjQOOAw4EjgMPBA4EjgOPAw8EjwMQBA8EjwOQAxAEkAMRBBAEkAORAxEEkQMSBBEEkQOSAxIEkgMTBBIEkgOTAxMEkwMUBBMEkwOUAxQElAMVBBQElAOVAxUElQMWBBUElQOWAxYElgMXBBYElgOXAxcElwMYBBcElwOYAxgEmAMZBBgEmAOZAxkEmQMaBBkEmQOaAxoEmgMbBBoEmgObAxsEmwMcBBsEmwOcAxwEnAMdBBwEnAOdAx0EnQMeBB0EnQOeAx4EngMfBB4EngOfAx8EnwMgBB8EnwOgAyAEoAMhBCAEoAOhAyEEoQMiBCEEoQOiAyIEogMjBCIEogOjAyMEowMkBCMEowOkAyQEpAMlBCQEpAOlAyUEpQMmBCUEpQOmAyYEpgMnBCYEpgOnAycEpwMoBCcEpwOoAygEqAMpBCgEqAOpAykEqQMqBCkEqQOqAyoEqgMrBCoEqgOrAysEqwMsBCsEqwOsAywErAMtBCwErAOtAy0ErQMuBC0ErQOuAy4ErgMvBC4ErgOvAy8ErwMwBC8ErwOwAzAEsAMxBDAEsAOxAzEEsQMyBDEEsQOyAzIEsgMzBDIEsgOzAzMEswM0BDMEswO0AzQEtAM1BDQEtAO1AzUEtQM2BDUEtQO2AzYEtgM3BDYEtgO3AzcEtwM4BDcEtwO4AzgEuAM5BDgEuAO5AzkEuQM6BDkEuQO6AzoEugM7BDoEugO7AzsEuwM8BDsEuwO8AzwEvAM9BDwEvAO9Az0EvQM+BD0EvQO+Az4EvgM/BD4EvgO/Az8EvwNABD8EvwPAA0AEwANBBEAEwAPBA0EEwQNCBEEEwQPCA0IEwgNDBEIEwgPDA0MEwwNEBEMEwwPEA0QExANFBEQExAPFA0UExQNGBEUExQPGA0YExgNHBEYExgPHA0cExwNIBEcExwPIA0gEyANJBEgEyAPJA0kEyQNKBEkEyQPKA0oEygNLBEoEygPLA0sEywNMBEsEywPMA0wEzANNBEwEzAPNA00EzQNOBE0EzQPOA04EzgNPBE4EzgPPA08EzwNQBE8EzwPQA1AE0ANRBFAE0APRA1EE0QNSBFEE0QPSA1IE0gNTBFIE0gPTA1ME0wNUBFME0wPUA1QE1ANVBFQE1APVA1UE1QNWBFUE1QPWA1YE1gNXBFYE1gPXA1cE1wNYBFcE1wPYA1gE2ANZBFgE2APZA1kE2QNaBFkE2QPaA1oE2gNbBFoE2gPbA1sE2wNcBFsE2wPcA1wE3ANdBFwE3APdA10E3QNeBF0E3QPeA14E3gNfBF4E3gPfA18E3wNgBF8E3wPgA2AE4ANhBGAE4APhA2EE4QNiBGEE4QPiA2IE4gNjBGIE4gPjA2ME4wNkBGME4wPkA2QE5ANlBGQE5APlA2UE5QNmBGUE5QPmA2YE5gNnBGYE5gPnA2cE5wNoBGcE5wPoA2gE6ANpBGgE6APpA2kE6QNqBGkE6QPqA2oE6gNrBGoE6gPrA2sE6wNsBGsE6wPsA2wE7ANtBGwE7APtA20E7QNuBG0E7QPuA24E7gNvBG4E7gPvA28E7wNwBG8E7wPwA3AE8ANxBHAE8APxA3EE8QNyBHEE8QPyA3IE8gNzBHIE8gPzA3ME8wN0BHME8wP0A3QE9AN1BHQE9AP1A3UE9QN2BHUE9QP2A3YE9gN3BHYE9gP3A3cE9wN4BHcE9wP4A3gE+AN5BHgE+AP5A3kE+QN6BHkE+QP6A3oE+gN7BHoE+gP7A3sE+wN8BHsE+wP8A3wE/AN9BHwE/AP9A30E/QN+BH0E/QP+A34E/gN/BH4E/gP/A38E/wOABH8E/wMABIAEAASBBIAEAAQBBIEEAQSCBIEEAQQCBIIEAgSDBIIEAgQDBIMEAwSEBIMEAwQEBIQEBASFBIQEBAQFBIUEBQSGBIUEBQQGBIYEBgSHBIYEBgQHBIcEBwSIBIcECAQJBIkECQSKBIkECQQKBIoECgSLBIoECgQLBIsECwSMBIsECwQMBIwEDASNBIwEDAQNBI0EDQSOBI0EDQQOBI4EDgSPBI4EDgQPBI8EDwSQBI8EDwQQBJAEEASRBJAEEAQRBJEEEQSSBJEEEQQSBJIEEgSTBJIEEgQTBJMEEwSUBJMEEwQUBJQEFASVBJQEFAQVBJUEFQSWBJUEFQQWBJYEFgSXBJYEFgQXBJcEFwSYBJcEFwQYBJgEGASZBJgEGAQZBJkEGQSaBJkEGQQaBJoEGgSbBJoEGgQbBJsEGwScBJsEGwQcBJwEHASdBJwEHAQdBJ0EHQSeBJ0EHQQeBJ4EHgSfBJ4EHgQfBJ8EHwSgBJ8EHwQgBKAEIAShBKAEIAQhBKEEIQSiBKEEIQQiBKIEIgSjBKIEIgQjBKMEIwSkBKMEIwQkBKQEJASlBKQEJAQlBKUEJQSmBKUEJQQmBKYEJgSnBKYEJgQnBKcEJwSoBKcEJwQoBKgEKASpBKgEKAQpBKkEKQSqBKkEKQQqBKoEKgSrBKoEKgQrBKsEKwSsBKsEKwQsBKwELAStBKwELAQtBK0ELQSuBK0ELQQuBK4ELgSvBK4ELgQvBK8ELwSwBK8ELwQwBLAEMASxBLAEMAQxBLEEMQSyBLEEMQQyBLIEMgSzBLIEMgQzBLMEMwS0BLMEMwQ0BLQENAS1BLQENAQ1BLUENQS2BLUENQQ2BLYENgS3BLYENgQ3BLcENwS4BLcENwQ4BLgEOAS5BLgEOAQ5BLkEOQS6BLkEOQQ6BLoEOgS7BLoEOgQ7BLsEOwS8BLsEOwQ8BLwEPAS9BLwEPAQ9BL0EPQS+BL0EPQQ+BL4EPgS/BL4EPgQ/BL8EPwTABL8EPwRABMAEQATBBMAEQARBBMEEQQTCBMEEQQRCBMIEQgTDBMIEQgRDBMMEQwTEBMMEQwREBMQERATFBMQERARFBMUERQTGBMUERQRGBMYERgTHBMYERgRHBMcERwTIBMcERwRIBMgESATJBMgESARJBMkESQTKBMkESQRKBMoESgTLBMoESgRLBMsESwTMBMsESwRMBMwETATNBMwETARNBM0ETQTOBM0ETQROBM4ETgTPBM4ETgRPBM8ETwTQBM8ETwRQBNAEUATRBNAEUARRBNEEUQTSBNEEUQRSBNIEUgTTBNIEUgRTBNMEUwTUBNMEUwRUBNQEVATVBNQEVARVBNUEVQTWBNUEVQRWBNYEVgTXBNYEVgRXBNcEVwTYBNcEVwRYBNgEWATZBNgEWARZBNkEWQTaBNkEWQRaBNoEWgTbBNoEWgRbBNsEWwTcBNsEWwRcBNwEXATdBNwEXARdBN0EXQTeBN0EXQReBN4EXgTfBN4EXgRfBN8EXwTgBN8EXwRgBOAEYAThBOAEYARhBOEEYQTiBOEEYQRiBOIEYgTjBOIEYgRjBOMEYwTkBOMEYwRkBOQEZATlBOQEZARlBOUEZQTmBOUEZQRmBOYEZgTnBOYEZgRnBOcEZwToBOcEZwRoBOgEaATpBOgEaARpBOkEaQTqBOkEaQRqBOoEagTrBOoEagRrBOsEawTsBOsEawRsBOwEbATtBOwEbARtBO0EbQTuBO0EbQRuBO4EbgTvBO4EbgRvBO8EbwTwBO8EbwRwBPAEcATxBPAEcARxBPEEcQTyBPEEcQRyBPIEcgTzBPIEcgRzBPMEcwT0BPMEcwR0BPQEdAT1BPQEdAR1BPUEdQT2BPUEdQR2BPYEdgT3BPYEdgR3BPcEdwT4BPcEdwR4BPgEeAT5BPgEeAR5BPkEeQT6BPkEeQR6BPoEegT7BPoEegR7BPsEewT8BPsEewR8BPwEfAT9BPwEfAR9BP0EfQT+BP0EfQR+BP4EfgT/BP4EfgR/BP8EfwQABf8EfwSABAAFgAQBBQAFgASBBAEFgQQCBQEFgQSCBAIFggQDBQIFggSDBAMFgwQEBQMFgwSEBAQFhAQFBQQFhASFBAUFhQQGBQUFhQSGBAYFhgQHBQYFhgSHBAcFhwQIBQcFhwSIBAgFiAQJBQgFiQSKBAoFigQLBQoFigSLBAsFiwQMBQsFiwSMBAwFjAQNBQwFjASNBA0FjQQOBQ0FjQSOBA4FjgQPBQ4FjgSPBA8FjwQQBQ8FjwSQBBAFkAQRBRAFkASRBBEFkQQSBREFkQSSBBIFkgQTBRIFkgSTBBMFkwQUBRMFkwSUBBQFlAQVBRQFlASVBBUFlQQWBRUFlQSWBBYFlgQXBRYFlgSXBBcFlwQYBRcFlwSYBBgFmAQZBRgFmASZBBkFmQQaBRkFmQSaBBoFmgQbBRoFmgSbBBsFmwQcBRsFmwScBBwFnAQdBRwFnASdBB0FnQQeBR0FnQSeBB4FngQfBR4FngSfBB8FnwQgBR8FnwSgBCAFoAQhBSAFoAShBCEFoQQiBSEFoQSiBCIFogQjBSIFogSjBCMFowQkBSMFowSkBCQFpAQlBSQFpASlBCUFpQQmBSUFpQSmBCYFpgQnBSYFpgSnBCcFpwQoBScFpwSoBCgFqAQpBSgFqASpBCkFqQQqBSkFqQSqBCoFqgQrBSoFqgSrBCsFqwQsBSsFqwSsBCwFrAQtBSwFrAStBC0FrQQuBS0FrQSuBC4FrgQvBS4FrgSvBC8FrwQwBS8FrwSwBDAFsAQxBTAFsASxBDEFsQQyBTEFsQSyBDIFsgQzBTIFsgSzBDMFswQ0BTMFswS0BDQFtAQ1BTQFtAS1BDUFtQQ2BTUFtQS2BDYFtgQ3BTYFtgS3BDcFtwQ4BTcFtwS4BDgFuAQ5BTgFuAS5BDkFuQQ6BTkFuQS6BDoFugQ7BToFugS7BDsFuwQ8BTsFuwS8BDwFvAQ9BTwFvAS9BD0FvQQ+BT0FvQS+BD4FvgQ/BT4FvgS/BD8FvwRABT8FvwTABEAFwARBBUAFwATBBEEFwQRCBUEFwQTCBEIFwgRDBUIFwgTDBEMFwwREBUMFwwTEBEQFxARFBUQFxATFBEUFxQRGBUUFxQTGBEYFxgRHBUYFxgTHBEcFxwRIBUcFxwTIBEgFyARJBUgFyATJBEkFyQRKBUkFyQTKBEoFygRLBUoFygTLBEsFywRMBUsFywTMBEwFzARNBUwFzATNBE0FzQROBU0FzQTOBE4FzgRPBU4FzgTPBE8FzwRQBU8FzwTQBFAF0ARRBVAF0ATRBFEF0QRSBVEF0QTSBFIF0gRTBVIF0gTTBFMF0wRUBVMF0wTUBFQF1ARVBVQF1ATVBFUF1QRWBVUF1QTWBFYF1gRXBVYF1gTXBFcF1wRYBVcF1wTYBFgF2ARZBVgF2ATZBFkF2QRaBVkF2QTaBFoF2gRbBVoF2gTbBFsF2wRcBVsF2wTcBFwF3ARdBVwF3ATdBF0F3QReBV0F3QTeBF4F3gRfBV4F3gTfBF8F3wRgBV8F3wTgBGAF4ARhBWAF4AThBGEF4QRiBWEF4QTiBGIF4gRjBWIF4gTjBGMF4wRkBWMF4wTkBGQF5ARlBWQF5ATlBGUF5QRmBWUF5QTmBGYF5gRnBWYF5gTnBGcF5wRoBWcF5wToBGgF6ARpBWgF6ATpBGkF6QRqBWkF6QTqBGoF6gRrBWoF6gTrBGsF6wRsBWsF6wTsBGwF7ARtBWwF7ATtBG0F7QRuBW0F7QTuBG4F7gRvBW4F7gTvBG8F7wRwBW8F7wTwBHAF8ARxBXAF8ATxBHEF8QRyBXEF8QTyBHIF8gRzBXIF8gTzBHMF8wR0BXMF8wT0BHQF9AR1BXQF9AT1BHUF9QR2BXUF9QT2BHYF9gR3BXYF9gT3BHcF9wR4BXcF9wT4BHgF+AR5BXgF+AT5BHkF+QR6BXkF+QT6BHoF+gR7BXoF+gT7BHsF+wR8BXsF+wT8BHwF/AR9BXwF/AT9BH0F/QR+BX0F/QT+BH4F/gR/BX4F/gT/BH8F/wSABX8F/wQABYAFAAWBBYAFAAUBBYEFAQWCBYEFAQUCBYIFAgWDBYIFAgUDBYMFAwWEBYMFAwUEBYQFBAWFBYQFBAUFBYUFBQWGBYUFBQUGBYYFBgWHBYYFBgUHBYcFBwWIBYcFBwUIBYgFCAWJBYgFCAUJBYkFCQWKBYkFCgULBYsFCwWMBYsFCwUMBYwFDAWNBYwFDAUNBY0FDQWOBY0FDQUOBY4FDgWPBY4FDgUPBY8FDwWQBY8FDwUQBZAFEAWRBZAFEAURBZEFEQWSBZEFEQUSBZIFEgWTBZIFEgUTBZMFEwWUBZMFEwUUBZQFFAWVBZQFFAUVBZUFFQWWBZUFFQUWBZYFFgWXBZYFFgUXBZcFFwWYBZcFFwUYBZgFGAWZBZgFGAUZBZkFGQWaBZkFGQUaBZoFGgWbBZoFGgUbBZsFGwWcBZsFGwUcBZwFHAWdBZwFHAUdBZ0FHQWeBZ0FHQUeBZ4FHgWfBZ4FHgUfBZ8FHwWgBZ8FHwUgBaAFIAWhBaAFIAUhBaEFIQWiBaEFIQUiBaIFIgWjBaIFIgUjBaMFIwWkBaMFIwUkBaQFJAWlBaQFJAUlBaUFJQWmBaUFJQUmBaYFJgWnBaYFJgUnBacFJwWoBacFJwUoBagFKAWpBagFKAUpBakFKQWqBakFKQUqBaoFKgWrBaoFKgUrBasFKwWsBasFKwUsBawFLAWtBawFLAUtBa0FLQWuBa0FLQUuBa4FLgWvBa4FLgUvBa8FLwWwBa8FLwUwBbAFMAWxBbAFMAUxBbEFMQWyBbEFMQUyBbIFMgWzBbIFMgUzBbMFMwW0BbMFMwU0BbQFNAW1BbQFNAU1BbUFNQW2BbUFNQU2BbYFNgW3BbYFNgU3BbcFNwW4BbcFNwU4BbgFOAW5BbgFOAU5BbkFOQW6BbkFOQU6BboFOgW7BboFOgU7BbsFOwW8BbsFOwU8BbwFPAW9BbwFPAU9Bb0FPQW+Bb0FPQU+Bb4FPgW/Bb4FPgU/Bb8FPwXABb8FPwVABcAFQAXBBcAFQAVBBcEFQQXCBcEFQQVCBcIFQgXDBcIFQgVDBcMFQwXEBcMFQwVEBcQFRAXFBcQFRAVFBcUFRQXGBcUFRQVGBcYFRgXHBcYFRgVHBccFRwXIBccFRwVIBcgFSAXJBcgFSAVJBckFSQXKBckFSQVKBcoFSgXLBcoFSgVLBcsFSwXMBcsFSwVMBcwFTAXNBcwFTAVNBc0FTQXOBc0FTQVOBc4FTgXPBc4FTgVPBc8FTwXQBc8FTwVQBdAFUAXRBdAFUAVRBdEFUQXSBdEFUQVSBdIFUgXTBdIFUgVTBdMFUwXUBdMFUwVUBdQFVAXVBdQFVAVVBdUFVQXWBdUFVQVWBdYFVgXXBdYFVgVXBdcFVwXYBdcFVwVYBdgFWAXZBdgFWAVZBdkFWQXaBdkFWQVaBdoFWgXbBdoFWgVbBdsFWwXcBdsFWwVcBdwFXAXdBdwFXAVdBd0FXQXeBd0FXQVeBd4FXgXfBd4FXgVfBd8FXwXgBd8FXwVgBeAFYAXhBeAFYAVhBeEFYQXiBeEFYQViBeIFYgXjBeIFYgVjBeMFYwXkBeMFYwVkBeQFZAXlBeQFZAVlBeUFZQXmBeUFZQVmBeYFZgXnBeYFZgVnBecFZwXoBecFZwVoBegFaAXpBegFaAVpBekFaQXqBekFaQVqBeoFagXrBeoFagVrBesFawXsBesFawVsBewFbAXtBewFbAVtBe0FbQXuBe0FbQVuBe4FbgXvBe4FbgVvBe8FbwXwBe8FbwVwBfAFcAXxBfAFcAVxBfEFcQXyBfEFcQVyBfIFcgXzBfIFcgVzBfMFcwX0BfMFcwV0BfQFdAX1BfQFdAV1BfUFdQX2BfUFdQV2BfYFdgX3BfYFdgV3BfcFdwX4BfcFdwV4BfgFeAX5BfgFeAV5BfkFeQX6BfkFeQV6BfoFegX7BfoFegV7BfsFewX8BfsFewV8BfwFfAX9BfwFfAV9Bf0FfQX+Bf0FfQV+Bf4FfgX/Bf4FfgV/Bf8FfwUABv8FfwWABQAGgAUBBgAGgAWBBQEGgQUCBgEGgQWCBQIGggUDBgIGggWDBQMGgwUEBgMGgwWEBQQGhAUFBgQGhAWFBQUGhQUGBgUGhQWGBQYGhgUHBgYGhgWHBQcGhwUIBgcGhwWIBQgGiAUJBggGiAWJBQkGiQUKBgkGiQWKBQoGigULBgoGiwWMBQwGjAUNBgwGjAWNBQ0GjQUOBg0GjQWOBQ4GjgUPBg4GjgWPBQ8GjwUQBg8GjwWQBRAGkAURBhAGkAWRBREGkQUSBhEGkQWSBRIGkgUTBhIGkgWTBRMGkwUUBhMGkwWUBRQGlAUVBhQGlAWVBRUGlQUWBhUGlQWWBRYGlgUXBhYGlgWXBRcGlwUYBhcGlwWYBRgGmAUZBhgGmAWZBRkGmQUaBhkGmQWaBRoGmgUbBhoGmgWbBRsGmwUcBhsGmwWcBRwGnAUdBhwGnAWdBR0GnQUeBh0GnQWeBR4GngUfBh4GngWfBR8GnwUgBh8GnwWgBSAGoAUhBiAGoAWhBSEGoQUiBiEGoQWiBSIGogUjBiIGogWjBSMGowUkBiMGowWkBSQGpAUlBiQGpAWlBSUGpQUmBiUGpQWmBSYGpgUnBiYGpgWnBScGpwUoBicGpwWoBSgGqAUpBigGqAWpBSkGqQUqBikGqQWqBSoGqgUrBioGqgWrBSsGqwUsBisGqwWsBSwGrAUtBiwGrAWtBS0GrQUuBi0GrQWuBS4GrgUvBi4GrgWvBS8GrwUwBi8GrwWwBTAGsAUxBjAGsAWxBTEGsQUyBjEGsQWyBTIGsgUzBjIGsgWzBTMGswU0BjMGswW0BTQGtAU1BjQGtAW1BTUGtQU2BjUGtQW2BTYGtgU3BjYGtgW3BTcGtwU4BjcGtwW4BTgGuAU5BjgGuAW5BTkGuQU6BjkGuQW6BToGugU7BjoGugW7BTsGuwU8BjsGuwW8BTwGvAU9BjwGvAW9BT0GvQU+Bj0GvQW+BT4GvgU/Bj4GvgW/BT8GvwVABj8GvwXABUAGwAVBBkAGwAXBBUEGwQVCBkEGwQXCBUIGwgVDBkIGwgXDBUMGwwVEBkMGwwXEBUQGxAVFBkQGxAXFBUUGxQVGBkUGxQXGBUYGxgVHBkYGxgXHBUcGxwVIBkcGxwXIBUgGyAVJBkgGyAXJBUkGyQVKBkkGyQXKBUoGygVLBkoGygXLBUsGywVMBksGywXMBUwGzAVNBkwGzAXNBU0GzQVOBk0GzQXOBU4GzgVPBk4GzgXPBU8GzwVQBk8GzwXQBVAG0AVRBlAG0AXRBVEG0QVSBlEG0QXSBVIG0gVTBlIG0gXTBVMG0wVUBlMG0wXUBVQG1AVVBlQG1AXVBVUG1QVWBlUG1QXWBVYG1gVXBlYG1gXXBVcG1wVYBlcG1wXYBVgG2AVZBlgG2AXZBVkG2QVaBlkG2QXaBVoG2gVbBloG2gXbBVsG2wVcBlsG2wXcBVwG3AVdBlwG3AXdBV0G3QVeBl0G3QXeBV4G3gVfBl4G3gXfBV8G3wVgBl8G3wXgBWAG4AVhBmAG4AXhBWEG4QViBmEG4QXiBWIG4gVjBmIG4gXjBWMG4wVkBmMG4wXkBWQG5AVlBmQG5AXlBWUG5QVmBmUG5QXmBWYG5gVnBmYG5gXnBWcG5wVoBmcG5wXoBWgG6AVpBmgG6AXpBWkG6QVqBmkG6QXqBWoG6gVrBmoG6gXrBWsG6wVsBmsG6wXsBWwG7AVtBmwG7AXtBW0G7QVuBm0G7QXuBW4G7gVvBm4G7gXvBW8G7wVwBm8G7wXwBXAG8AVxBnAG8AXxBXEG8QVyBnEG8QXyBXIG8gVzBnIG8gXzBXMG8wV0BnMG8wX0BXQG9AV1BnQG9AX1BXUG9QV2BnUG9QX2BXYG9gV3BnYG9gX3BXcG9wV4BncG9wX4BXgG+AV5BngG+AX5BXkG+QV6BnkG+QX6BXoG+gV7BnoG+gX7BXsG+wV8BnsG+wX8BXwG/AV9BnwG/AX9BX0G/QV+Bn0G/QX+BX4G/gV/Bn4G/gX/BX8G/wWABn8G/wUABoAGAAaBBoAGAAYBBoEGAQaCBoEGAQYCBoIGAgaDBoIGAgYDBoMGAwaEBoMGAwYEBoQGBAaFBoQGBAYFBoUGBQaGBoUGBQYGBoYGBgaHBoYGBgYHBocGBwaIBocGBwYIBogGCAaJBogGCAYJBokGCQaKBokGCQYKBooGCgaLBooGCgYLBosGCwaMBosGDAYNBo0GDQaOBo0GDQYOBo4GDgaPBo4GDgYPBo8GDwaQBo8GDwYQBpAGEAaRBpAGEAYRBpEGEQaSBpEGEQYSBpIGEgaTBpIGEgYTBpMGEwaUBpMGEwYUBpQGFAaVBpQGFAYVBpUGFQaWBpUGFQYWBpYGFgaXBpYGFgYXBpcGFwaYBpcGFwYYBpgGGAaZBpgGGAYZBpkGGQaaBpkGGQYaBpoGGgabBpoGGgYbBpsGGwacBpsGGwYcBpwGHAadBpwGHAYdBp0GHQaeBp0GHQYeBp4GHgafBp4GHgYfBp8GHwagBp8GHwYgBqAGIAahBqAGIAYhBqEGIQaiBqEGIQYiBqIGIgajBqIGIgYjBqMGIwakBqMGIwYkBqQGJAalBqQGJAYlBqUGJQamBqUGJQYmBqYGJganBqYGJgYnBqcGJwaoBqcGJwYoBqgGKAapBqgGKAYpBqkGKQaqBqkGKQYqBqoGKgarBqoGKgYrBqsGKwasBqsGKwYsBqwGLAatBqwGLAYtBq0GLQauBq0GLQYuBq4GLgavBq4GLgYvBq8GLwawBq8GLwYwBrAGMAaxBrAGMAYxBrEGMQayBrEGMQYyBrIGMgazBrIGMgYzBrMGMwa0BrMGMwY0BrQGNAa1BrQGNAY1BrUGNQa2BrUGNQY2BrYGNga3BrYGNgY3BrcGNwa4BrcGNwY4BrgGOAa5BrgGOAY5BrkGOQa6BrkGOQY6BroGOga7BroGOgY7BrsGOwa8BrsGOwY8BrwGPAa9BrwGPAY9Br0GPQa+Br0GPQY+Br4GPga/Br4GPgY/Br8GPwbABr8GPwZABsAGQAbBBsAGQAZBBsEGQQbCBsEGQQZCBsIGQgbDBsIGQgZDBsMGQwbEBsMGQwZEBsQGRAbFBsQGRAZFBsUGRQbGBsUGRQZGBsYGRgbHBsYGRgZHBscGRwbIBscGRwZIBsgGSAbJBsgGSAZJBskGSQbKBskGSQZKBsoGSgbLBsoGSgZLBssGSwbMBssGSwZMBswGTAbNBswGTAZNBs0GTQbOBs0GTQZOBs4GTgbPBs4GTgZPBs8GTwbQBs8GTwZQBtAGUAbRBtAGUAZRBtEGUQbSBtEGUQZSBtIGUgbTBtIGUgZTBtMGUwbUBtMGUwZUBtQGVAbVBtQGVAZVBtUGVQbWBtUGVQZWBtYGVgbXBtYGVgZXBtcGVwbYBtcGVwZYBtgGWAbZBtgGWAZZBtkGWQbaBtkGWQZaBtoGWgbbBtoGWgZbBtsGWwbcBtsGWwZcBtwGXAbdBtwGXAZdBt0GXQbeBt0GXQZeBt4GXgbfBt4GXgZfBt8GXwbgBt8GXwZgBuAGYAbhBuAGYAZhBuEGYQbiBuEGYQZiBuIGYgbjBuIGYgZjBuMGYwbkBuMGYwZkBuQGZAblBuQGZAZlBuUGZQbmBuUGZQZmBuYGZgbnBuYGZgZnBucGZwboBucGZwZoBugGaAbpBugGaAZpBukGaQbqBukGaQZqBuoGagbrBuoGagZrBusGawbsBusGawZsBuwGbAbtBuwGbAZtBu0GbQbuBu0GbQZuBu4GbgbvBu4GbgZvBu8GbwbwBu8GbwZwBvAGcAbxBvAGcAZxBvEGcQbyBvEGcQZyBvIGcgbzBvIGcgZzBvMGcwb0BvMGcwZ0BvQGdAb1BvQGdAZ1BvUGdQb2BvUGdQZ2BvYGdgb3BvYGdgZ3BvcGdwb4BvcGdwZ4BvgGeAb5BvgGeAZ5BvkGeQb6BvkGeQZ6BvoGegb7BvoGegZ7BvsGewb8BvsGewZ8BvwGfAb9BvwGfAZ9Bv0GfQb+Bv0GfQZ+Bv4Gfgb/Bv4GfgZ/Bv8GfwYAB/8GfwaABgAHgAYBBwAHgAaBBgEHgQYCBwEHgQaCBgIHggYDBwIHggaDBgMHgwYEBwMHgwaEBgQHhAYFBwQHhAaFBgUHhQYGBwUHhQaGBgYHhgYHBwYHhgaHBgcHhwYIBwcHhwaIBggHiAYJBwgHiAaJBgkHiQYKBwkHiQaKBgoHigYLBwoHigaLBgsHiwYMBwsHiwaMBgwHjAYNBwwHjQaOBg4HjgYPBw4HjgaPBg8HjwYQBw8HjwaQBhAHkAYRBxAHkAaRBhEHkQYSBxEHkQaSBhIHkgYTBxIHkgaTBhMHkwYUBxMHkwaUBhQHlAYVBxQHlAaVBhUHlQYWBxUHlQaWBhYHlgYXBxYHlgaXBhcHlwYYBxcHlwaYBhgHmAYZBxgHmAaZBhkHmQYaBxkHmQaaBhoHmgYbBxoHmgabBhsHmwYcBxsHmwacBhwHnAYdBxwHnAadBh0HnQYeBx0HnQaeBh4HngYfBx4HngafBh8HnwYgBx8HnwagBiAHoAYhByAHoAahBiEHoQYiByEHoQaiBiIHogYjByIHogajBiMHowYkByMHowakBiQHpAYlByQHpAalBiUHpQYmByUHpQamBiYHpgYnByYHpganBicHpwYoBycHpwaoBigHqAYpBygHqAapBikHqQYqBykHqQaqBioHqgYrByoHqgarBisHqwYsBysHqwasBiwHrAYtBywHrAatBi0HrQYuBy0HrQauBi4HrgYvBy4HrgavBi8HrwYwBy8HrwawBjAHsAYxBzAHsAaxBjEHsQYyBzEHsQayBjIHsgYzBzIHsgazBjMHswY0BzMHswa0BjQHtAY1BzQHtAa1BjUHtQY2BzUHtQa2BjYHtgY3BzYHtga3BjcHtwY4BzcHtwa4BjgHuAY5BzgHuAa5BjkHuQY6BzkHuQa6BjoHugY7BzoHuga7BjsHuwY8BzsHuwa8BjwHvAY9BzwHvAa9Bj0HvQY+Bz0HvQa+Bj4HvgY/Bz4Hvga/Bj8HvwZABz8HvwbABkAHwAZBB0AHwAbBBkEHwQZCB0EHwQbCBkIHwgZDB0IHwgbDBkMHwwZEB0MHwwbEBkQHxAZFB0QHxAbFBkUHxQZGB0UHxQbGBkYHxgZHB0YHxgbHBkcHxwZIB0cHxwbIBkgHyAZJB0gHyAbJBkkHyQZKB0kHyQbKBkoHygZLB0oHygbLBksHywZMB0sHywbMBkwHzAZNB0wHzAbNBk0HzQZOB00HzQbOBk4HzgZPB04HzgbPBk8HzwZQB08HzwbQBlAH0AZRB1AH0AbRBlEH0QZSB1EH0QbSBlIH0gZTB1IH0gbTBlMH0wZUB1MH0wbUBlQH1AZVB1QH1AbVBlUH1QZWB1UH1QbWBlYH1gZXB1YH1gbXBlcH1wZYB1cH1wbYBlgH2AZZB1gH2AbZBlkH2QZaB1kH2QbaBloH2gZbB1oH2gbbBlsH2wZcB1sH2wbcBlwH3AZdB1wH3AbdBl0H3QZeB10H3QbeBl4H3gZfB14H3gbfBl8H3wZgB18H3wbgBmAH4AZhB2AH4AbhBmEH4QZiB2EH4QbiBmIH4gZjB2IH4gbjBmMH4wZkB2MH4wbkBmQH5AZlB2QH5AblBmUH5QZmB2UH5QbmBmYH5gZnB2YH5gbnBmcH5wZoB2cH5wboBmgH6AZpB2gH6AbpBmkH6QZqB2kH6QbqBmoH6gZrB2oH6gbrBmsH6wZsB2sH6wbsBmwH7AZtB2wH7AbtBm0H7QZuB20H7QbuBm4H7gZvB24H7gbvBm8H7wZwB28H7wbwBnAH8AZxB3AH8AbxBnEH8QZyB3EH8QbyBnIH8gZzB3IH8gbzBnMH8wZ0B3MH8wb0BnQH9AZ1B3QH9Ab1BnUH9QZ2B3UH9Qb2BnYH9gZ3B3YH9gb3BncH9wZ4B3cH9wb4BngH+AZ5B3gH+Ab5BnkH+QZ6B3kH+Qb6BnoH+gZ7B3oH+gb7BnsH+wZ8B3sH+wb8BnwH/AZ9B3wH/Ab9Bn0H/QZ+B30H/Qb+Bn4H/gZ/B34H/gb/Bn8H/waAB38H/wYAB4AHAAeBB4AHAAcBB4EHAQeCB4EHAQcCB4IHAgeDB4IHAgcDB4MHAweEB4MHAwcEB4QHBAeFB4QHBAcFB4UHBQeGB4UHBQcGB4YHBgeHB4YHBgcHB4cHBweIB4cHBwcIB4gHCAeJB4gHCAcJB4kHCQeKB4kHCQcKB4oHCgeLB4oHCgcLB4sHCweMB4sHCwcMB4wHDAeNB4wHDAcNB40HDQeOB40HDgcPB48HDweQB48HDwcQB5AHEAeRB5AHEAcRB5EHEQeSB5EHEQcSB5IHEgeTB5IHEgcTB5MHEweUB5MHEwcUB5QHFAeVB5QHFAcVB5UHFQeWB5UHFQcWB5YHFgeXB5YHFgcXB5cHFweYB5cHFwcYB5gHGAeZB5gHGAcZB5kHGQeaB5kHGQcaB5oHGgebB5oHGgcbB5sHGwecB5sHGwccB5wHHAedB5wHHAcdB50HHQeeB50HHQceB54HHgefB54HHgcfB58HHwegB58HHwcgB6AHIAehB6AHIAchB6EHIQeiB6EHIQciB6IHIgejB6IHIgcjB6MHIwekB6MHIwckB6QHJAelB6QHJAclB6UHJQemB6UHJQcmB6YHJgenB6YHJgcnB6cHJweoB6cHJwcoB6gHKAepB6gHKAcpB6kHKQeqB6kHKQcqB6oHKgerB6oHKgcrB6sHKwesB6sHKwcsB6wHLAetB6wHLActB60HLQeuB60HLQcuB64HLgevB64HLgcvB68HLwewB68HLwcwB7AHMAexB7AHMAcxB7EHMQeyB7EHMQcyB7IHMgezB7IHMgczB7MHMwe0B7MHMwc0B7QHNAe1B7QHNAc1B7UHNQe2B7UHNQc2B7YHNge3B7YHNgc3B7cHNwe4B7cHNwc4B7gHOAe5B7gHOAc5B7kHOQe6B7kHOQc6B7oHOge7B7oHOgc7B7sHOwe8B7sHOwc8B7wHPAe9B7wHPAc9B70HPQe+B70HPQc+B74HPge/B74HPgc/B78HPwfAB78HPwdAB8AHQAfBB8AHQAdBB8EHQQfCB8EHQQdCB8IHQgfDB8IHQgdDB8MHQwfEB8MHQwdEB8QHRAfFB8QHRAdFB8UHRQfGB8UHRQdGB8YHRgfHB8YHRgdHB8cHRwfIB8cHRwdIB8gHSAfJB8gHSAdJB8kHSQfKB8kHSQdKB8oHSgfLB8oHSgdLB8sHSwfMB8sHSwdMB8wHTAfNB8wHTAdNB80HTQfOB80HTQdOB84HTgfPB84HTgdPB88HTwfQB88HTwdQB9AHUAfRB9AHUAdRB9EHUQfSB9EHUQdSB9IHUgfTB9IHUgdTB9MHUwfUB9MHUwdUB9QHVAfVB9QHVAdVB9UHVQfWB9UHVQdWB9YHVgfXB9YHVgdXB9cHVwfYB9cHVwdYB9gHWAfZB9gHWAdZB9kHWQfaB9kHWQdaB9oHWgfbB9oHWgdbB9sHWwfcB9sHWwdcB9wHXAfdB9wHXAddB90HXQfeB90HXQdeB94HXgffB94HXgdfB98HXwfgB98HXwdgB+AHYAfhB+AHYAdhB+EHYQfiB+EHYQdiB+IHYgfjB+IHYgdjB+MHYwfkB+MHYwdkB+QHZAflB+QHZAdlB+UHZQfmB+UHZQdmB+YHZgfnB+YHZgdnB+cHZwfoB+cHZwdoB+gHaAfpB+gHaAdpB+kHaQfqB+kHaQdqB+oHagfrB+oHagdrB+sHawfsB+sHawdsB+wHbAftB+wHbAdtB+0HbQfuB+0HbQduB+4HbgfvB+4HbgdvB+8HbwfwB+8HbwdwB/AHcAfxB/AHcAdxB/EHcQfyB/EHcQdyB/IHcgfzB/IHcgdzB/MHcwf0B/MHcwd0B/QHdAf1B/QHdAd1B/UHdQf2B/UHdQd2B/YHdgf3B/YHdgd3B/cHdwf4B/cHdwd4B/gHeAf5B/gHeAd5B/kHeQf6B/kHeQd6B/oHegf7B/oHegd7B/sHewf8B/sHewd8B/wHfAf9B/wHfAd9B/0HfQf+B/0HfQd+B/4Hfgf/B/4Hfgd/B/8HfwcACP8HfweABwAIgAcBCAAIgAeBBwEIgQcCCAEIgQeCBwIIggcDCAIIggeDBwMIgwcECAMIgweEBwQIhAcFCAQIhAeFBwUIhQcGCAUIhQeGBwYIhgcHCAYIhgeHBwcIhwcICAcIhweIBwgIiAcJCAgIiAeJBwkIiQcKCAkIiQeKBwoIigcLCAoIigeLBwsIiwcMCAsIiweMBwwIjAcNCAwIjAeNBw0IjQcOCA0IjQeOBw4IjgcPCA4IjweQBxAIkAcRCBAIkAeRBxEIkQcSCBEIkQeSBxIIkgcTCBIIkgeTBxMIkwcUCBMIkweUBxQIlAcVCBQIlAeVBxUIlQcWCBUIlQeWBxYIlgcXCBYIlgeXBxcIlwcYCBcIlweYBxgImAcZCBgImAeZBxkImQcaCBkImQeaBxoImgcbCBoImgebBxsImwccCBsImwecBxwInAcdCBwInAedBx0InQceCB0InQeeBx4IngcfCB4IngefBx8InwcgCB8InwegByAIoAchCCAIoAehByEIoQciCCEIoQeiByIIogcjCCIIogejByMIowckCCMIowekByQIpAclCCQIpAelByUIpQcmCCUIpQemByYIpgcnCCYIpgenBycIpwcoCCcIpweoBygIqAcpCCgIqAepBykIqQcqCCkIqQeqByoIqgcrCCoIqgerBysIqwcsCCsIqwesBywIrActCCwIrAetBy0IrQcuCC0IrQeuBy4IrgcvCC4IrgevBy8IrwcwCC8IrwewBzAIsAcxCDAIsAexBzEIsQcyCDEIsQeyBzIIsgczCDIIsgezBzMIswc0CDMIswe0BzQItAc1CDQItAe1BzUItQc2CDUItQe2BzYItgc3CDYItge3BzcItwc4CDcItwe4BzgIuAc5CDgIuAe5BzkIuQc6CDkIuQe6BzoIugc7CDoIuge7BzsIuwc8CDsIuwe8BzwIvAc9CDwIvAe9Bz0IvQc+CD0IvQe+Bz4Ivgc/CD4Ivge/Bz8IvwdACD8IvwfAB0AIwAdBCEAIwAfBB0EIwQdCCEEIwQfCB0IIwgdDCEIIwgfDB0MIwwdECEMIwwfEB0QIxAdFCEQIxAfFB0UIxQdGCEUIxQfGB0YIxgdHCEYIxgfHB0cIxwdICEcIxwfIB0gIyAdJCEgIyAfJB0kIyQdKCEkIyQfKB0oIygdLCEoIygfLB0sIywdMCEsIywfMB0wIzAdNCEwIzAfNB00IzQdOCE0IzQfOB04IzgdPCE4IzgfPB08IzwdQCE8IzwfQB1AI0AdRCFAI0AfRB1EI0QdSCFEI0QfSB1II0gdTCFII0gfTB1MI0wdUCFMI0wfUB1QI1AdVCFQI1AfVB1UI1QdWCFUI1QfWB1YI1gdXCFYI1gfXB1cI1wdYCFcI1wfYB1gI2AdZCFgI2AfZB1kI2QdaCFkI2QfaB1oI2gdbCFoI2gfbB1sI2wdcCFsI2wfcB1wI3AddCFwI3AfdB10I3QdeCF0I3QfeB14I3gdfCF4I3gffB18I3wdgCF8I3wfgB2AI4AdhCGAI4AfhB2EI4QdiCGEI4QfiB2II4gdjCGII4gfjB2MI4wdkCGMI4wfkB2QI5AdlCGQI5AflB2UI5QdmCGUI5QfmB2YI5gdnCGYI5gfnB2cI5wdoCGcI5wfoB2gI6AdpCGgI6AfpB2kI6QdqCGkI6QfqB2oI6gdrCGoI6gfrB2sI6wdsCGsI6wfsB2wI7AdtCGwI7AftB20I7QduCG0I7QfuB24I7gdvCG4I7gfvB28I7wdwCG8I7wfwB3AI8AdxCHAI8AfxB3EI8QdyCHEI8QfyB3II8gdzCHII8gfzB3MI8wd0CHMI8wf0B3QI9Ad1CHQI9Af1B3UI9Qd2CHUI9Qf2B3YI9gd3CHYI9gf3B3cI9wd4CHcI9wf4B3gI+Ad5CHgI+Af5B3kI+Qd6CHkI+Qf6B3oI+gd7CHoI+gf7B3sI+wd8CHsI+wf8B3wI/Ad9CHwI/Af9B30I/Qd+CH0I/Qf+B34I/gd/CH4I/gf/B38I/weACH8I/wcACIAIAAiBCIAIAAgBCIEIAQiCCIEIAQgCCIIIAgiDCIIIAggDCIMIAwiECIMIAwgECIQIBAiFCIQIBAgFCIUIBQiGCIUIBQgGCIYIBgiHCIYIBggHCIcIBwiICIcIBwgICIgICAiJCIgICAgJCIkICQiKCIkICQgKCIoICgiLCIoICggLCIsICwiMCIsICwgMCIwIDAiNCIwIDAgNCI0IDQiOCI0IDQgOCI4IDgiPCI4IDggPCI8IDwiQCI8IEAgRCJEIEQiSCJEIEQgSCJIIEgiTCJIIEggTCJMIEwiUCJMIEwgUCJQIFAiVCJQIFAgVCJUIFQiWCJUIFQgWCJYIFgiXCJYIFggXCJcIFwiYCJcIFwgYCJgIGAiZCJgIGAgZCJkIGQiaCJkIGQgaCJoIGgibCJoIGggbCJsIGwicCJsIGwgcCJwIHAidCJwIHAgdCJ0IHQieCJ0IHQgeCJ4IHgifCJ4IHggfCJ8IHwigCJ8IHwggCKAIIAihCKAIIAghCKEIIQiiCKEIIQgiCKIIIgijCKIIIggjCKMIIwikCKMIIwgkCKQIJAilCKQIJAglCKUIJQimCKUIJQgmCKYIJginCKYIJggnCKcIJwioCKcIJwgoCKgIKAipCKgIKAgpCKkIKQiqCKkIKQgqCKoIKgirCKoIKggrCKsIKwisCKsIKwgsCKwILAitCKwILAgtCK0ILQiuCK0ILQguCK4ILgivCK4ILggvCK8ILwiwCK8ILwgwCLAIMAixCLAIMAgxCLEIMQiyCLEIMQgyCLIIMgizCLIIMggzCLMIMwi0CLMIMwg0CLQINAi1CLQINAg1CLUINQi2CLUINQg2CLYINgi3CLYINgg3CLcINwi4CLcINwg4CLgIOAi5CLgIOAg5CLkIOQi6CLkIOQg6CLoIOgi7CLoIOgg7CLsIOwi8CLsIOwg8CLwIPAi9CLwIPAg9CL0IPQi+CL0IPQg+CL4IPgi/CL4IPgg/CL8IPwjACL8IPwhACMAIQAjBCMAIQAhBCMEIQQjCCMEIQQhCCMIIQgjDCMIIQghDCMMIQwjECMMIQwhECMQIRAjFCMQIRAhFCMUIRQjGCMUIRQhGCMYIRgjHCMYIRghHCMcIRwjICMcIRwhICMgISAjJCMgISAhJCMkISQjKCMkISQhKCMoISgjLCMoISghLCMsISwjMCMsISwhMCMwITAjNCMwITAhNCM0ITQjOCM0ITQhOCM4ITgjPCM4ITghPCM8ITwjQCM8ITwhQCNAIUAjRCNAIUAhRCNEIUQjSCNEIUQhSCNIIUgjTCNIIUghTCNMIUwjUCNMIUwhUCNQIVAjVCNQIVAhVCNUIVQjWCNUIVQhWCNYIVgjXCNYIVghXCNcIVwjYCNcIVwhYCNgIWAjZCNgIWAhZCNkIWQjaCNkIWQhaCNoIWgjbCNoIWghbCNsIWwjcCNsIWwhcCNwIXAjdCNwIXAhdCN0IXQjeCN0IXQheCN4IXgjfCN4IXghfCN8IXwjgCN8IXwhgCOAIYAjhCOAIYAhhCOEIYQjiCOEIYQhiCOIIYgjjCOIIYghjCOMIYwjkCOMIYwhkCOQIZAjlCOQIZAhlCOUIZQjmCOUIZQhmCOYIZgjnCOYIZghnCOcIZwjoCOcIZwhoCOgIaAjpCOgIaAhpCOkIaQjqCOkIaQhqCOoIagjrCOoIaghrCOsIawjsCOsIawhsCOwIbAjtCOwIbAhtCO0IbQjuCO0IbQhuCO4IbgjvCO4IbghvCO8IbwjwCO8IbwhwCPAIcAjxCPAIcAhxCPEIcQjyCPEIcQhyCPIIcgjzCPIIcghzCPMIcwj0CPMIcwh0CPQIdAj1CPQIdAh1CPUIdQj2CPUIdQh2CPYIdgj3CPYIdgh3CPcIdwj4CPcIdwh4CPgIeAj5CPgIeAh5CPkIeQj6CPkIeQh6CPoIegj7CPoIegh7CPsIewj8CPsIewh8CPwIfAj9CPwIfAh9CP0IfQj+CP0IfQh+CP4Ifgj/CP4Ifgh/CP8IfwgACf8IfwiACAAJgAgBCQAJgAiBCAEJgQgCCQEJgQiCCAIJgggDCQIJggiDCAMJgwgECQMJgwiECAQJhAgFCQQJhAiFCAUJhQgGCQUJhQiGCAYJhggHCQYJhgiHCAcJhwgICQcJhwiICAgJiAgJCQgJiAiJCAkJiQgKCQkJiQiKCAoJiggLCQoJigiLCAsJiwgMCQsJiwiMCAwJjAgNCQwJjAiNCA0JjQgOCQ0JjQiOCA4JjggPCQ4JjgiPCA8JjwgQCQ8JjwiQCBAJkAgRCRAJkQiSCBIJkggTCRIJkgiTCBMJkwgUCRMJkwiUCBQJlAgVCRQJlAiVCBUJlQgWCRUJlQiWCBYJlggXCRYJlgiXCBcJlwgYCRcJlwiYCBgJmAgZCRgJmAiZCBkJmQgaCRkJmQiaCBoJmggbCRoJmgibCBsJmwgcCRsJmwicCBwJnAgdCRwJnAidCB0JnQgeCR0JnQieCB4JnggfCR4JngifCB8JnwggCR8JnwigCCAJoAghCSAJoAihCCEJoQgiCSEJoQiiCCIJoggjCSIJogijCCMJowgkCSMJowikCCQJpAglCSQJpAilCCUJpQgmCSUJpQimCCYJpggnCSYJpginCCcJpwgoCScJpwioCCgJqAgpCSgJqAipCCkJqQgqCSkJqQiqCCoJqggrCSoJqgirCCsJqwgsCSsJqwisCCwJrAgtCSwJrAitCC0JrQguCS0JrQiuCC4JrggvCS4JrgivCC8JrwgwCS8JrwiwCDAJsAgxCTAJsAixCDEJsQgyCTEJsQiyCDIJsggzCTIJsgizCDMJswg0CTMJswi0CDQJtAg1CTQJtAi1CDUJtQg2CTUJtQi2CDYJtgg3CTYJtgi3CDcJtwg4CTcJtwi4CDgJuAg5CTgJuAi5CDkJuQg6CTkJuQi6CDoJugg7CToJugi7CDsJuwg8CTsJuwi8CDwJvAg9CTwJvAi9CD0JvQg+CT0JvQi+CD4Jvgg/CT4Jvgi/CD8JvwhACT8JvwjACEAJwAhBCUAJwAjBCEEJwQhCCUEJwQjCCEIJwghDCUIJwgjDCEMJwwhECUMJwwjECEQJxAhFCUQJxAjFCEUJxQhGCUUJxQjGCEYJxghHCUYJxgjHCEcJxwhICUcJxwjICEgJyAhJCUgJyAjJCEkJyQhKCUkJyQjKCEoJyghLCUoJygjLCEsJywhMCUsJywjMCEwJzAhNCUwJzAjNCE0JzQhOCU0JzQjOCE4JzghPCU4JzgjPCE8JzwhQCU8JzwjQCFAJ0AhRCVAJ0AjRCFEJ0QhSCVEJ0QjSCFIJ0ghTCVIJ0gjTCFMJ0whUCVMJ0wjUCFQJ1AhVCVQJ1AjVCFUJ1QhWCVUJ1QjWCFYJ1ghXCVYJ1gjXCFcJ1whYCVcJ1wjYCFgJ2AhZCVgJ2AjZCFkJ2QhaCVkJ2QjaCFoJ2ghbCVoJ2gjbCFsJ2whcCVsJ2wjcCFwJ3AhdCVwJ3AjdCF0J3QheCV0J3QjeCF4J3ghfCV4J3gjfCF8J3whgCV8J3wjgCGAJ4AhhCWAJ4AjhCGEJ4QhiCWEJ4QjiCGIJ4ghjCWIJ4gjjCGMJ4whkCWMJ4wjkCGQJ5AhlCWQJ5AjlCGUJ5QhmCWUJ5QjmCGYJ5ghnCWYJ5gjnCGcJ5whoCWcJ5wjoCGgJ6AhpCWgJ6AjpCGkJ6QhqCWkJ6QjqCGoJ6ghrCWoJ6gjrCGsJ6whsCWsJ6wjsCGwJ7AhtCWwJ7AjtCG0J7QhuCW0J7QjuCG4J7ghvCW4J7gjvCG8J7whwCW8J7wjwCHAJ8AhxCXAJ8AjxCHEJ8QhyCXEJ8QjyCHIJ8ghzCXIJ8gjzCHMJ8wh0CXMJ8wj0CHQJ9Ah1CXQJ9Aj1CHUJ9Qh2CXUJ9Qj2CHYJ9gh3CXYJ9gj3CHcJ9wh4CXcJ9wj4CHgJ+Ah5CXgJ+Aj5CHkJ+Qh6CXkJ+Qj6CHoJ+gh7CXoJ+gj7CHsJ+wh8CXsJ+wj8CHwJ/Ah9CXwJ/Aj9CH0J/Qh+CX0J/Qj+CH4J/gh/CX4J/gj/CH8J/wiACX8J/wgACYAJAAmBCYAJAAkBCYEJAQmCCYEJAQkCCYIJAgmDCYIJAgkDCYMJAwmECYMJAwkECYQJBAmFCYQJBAkFCYUJBQmGCYUJBQkGCYYJBgmHCYYJBgkHCYcJBwmICYcJBwkICYgJCAmJCYgJCAkJCYkJCQmKCYkJCQkKCYoJCgmLCYoJCgkLCYsJCwmMCYsJCwkMCYwJDAmNCYwJDAkNCY0JDQmOCY0JDQkOCY4JDgmPCY4JDgkPCY8JDwmQCY8JDwkQCZAJEAmRCZAJEAkRCZEJEQmSCZEJEgkTCZMJEwmUCZMJEwkUCZQJFAmVCZQJFAkVCZUJFQmWCZUJFQkWCZYJFgmXCZYJFgkXCZcJFwmYCZcJFwkYCZgJGAmZCZgJGAkZCZkJGQmaCZkJGQkaCZoJGgmbCZoJGgkbCZsJGwmcCZsJGwkcCZwJHAmdCZwJHAkdCZ0JHQmeCZ0JHQkeCZ4JHgmfCZ4JHgkfCZ8JHwmgCZ8JHwkgCaAJIAmhCaAJIAkhCaEJIQmiCaEJIQkiCaIJIgmjCaIJIgkjCaMJIwmkCaMJIwkkCaQJJAmlCaQJJAklCaUJJQmmCaUJJQkmCaYJJgmnCaYJJgknCacJJwmoCacJJwkoCagJKAmpCagJKAkpCakJKQmqCakJKQkqCaoJKgmrCaoJKgkrCasJKwmsCasJKwksCawJLAmtCawJLAktCa0JLQmuCa0JLQkuCa4JLgmvCa4JLgkvCa8JLwmwCa8JLwkwCbAJMAmxCbAJMAkxCbEJMQmyCbEJMQkyCbIJMgmzCbIJMgkzCbMJMwm0CbMJMwk0CbQJNAm1CbQJNAk1CbUJNQm2CbUJNQk2CbYJNgm3CbYJNgk3CbcJNwm4CbcJNwk4CbgJOAm5CbgJOAk5CbkJOQm6CbkJOQk6CboJOgm7CboJOgk7CbsJOwm8CbsJOwk8CbwJPAm9CbwJPAk9Cb0JPQm+Cb0JPQk+Cb4JPgm/Cb4JPgk/Cb8JPwnACb8JPwlACcAJQAnBCcAJQAlBCcEJQQnCCcEJQQlCCcIJQgnDCcIJQglDCcMJQwnECcMJQwlECcQJRAnFCcQJRAlFCcUJRQnGCcUJRQlGCcYJRgnHCcYJRglHCccJRwnICccJRwlICcgJSAnJCcgJSAlJCckJSQnKCckJSQlKCcoJSgnLCcoJSglLCcsJSwnMCcsJSwlMCcwJTAnNCcwJTAlNCc0JTQnOCc0JTQlOCc4JTgnPCc4JTglPCc8JTwnQCc8JTwlQCdAJUAnRCdAJUAlRCdEJUQnSCdEJUQlSCdIJUgnTCdIJUglTCdMJUwnUCdMJUwlUCdQJVAnVCdQJVAlVCdUJVQnWCdUJVQlWCdYJVgnXCdYJVglXCdcJVwnYCdcJVwlYCdgJWAnZCdgJWAlZCdkJWQnaCdkJWQlaCdoJWgnbCdoJWglbCdsJWwncCdsJWwlcCdwJXAndCdwJXAldCd0JXQneCd0JXQleCd4JXgnfCd4JXglfCd8JXwngCd8JXwlgCeAJYAnhCeAJYAlhCeEJYQniCeEJYQliCeIJYgnjCeIJYgljCeMJYwnkCeMJYwlkCeQJZAnlCeQJZAllCeUJZQnmCeUJZQlmCeYJZgnnCeYJZglnCecJZwnoCecJZwloCegJaAnpCegJaAlpCekJaQnqCekJaQlqCeoJagnrCeoJaglrCesJawnsCesJawlsCewJbAntCewJbAltCe0JbQnuCe0JbQluCe4JbgnvCe4JbglvCe8JbwnwCe8JbwlwCfAJcAnxCfAJcAlxCfEJcQnyCfEJcQlyCfIJcgnzCfIJcglzCfMJcwn0CfMJcwl0CfQJdAn1CfQJdAl1CfUJdQn2CfUJdQl2CfYJdgn3CfYJdgl3CfcJdwn4CfcJdwl4CfgJeAn5CfgJeAl5CfkJeQn6CfkJeQl6CfoJegn7CfoJegl7CfsJewn8CfsJewl8CfwJfAn9CfwJfAl9Cf0JfQn+Cf0JfQl+Cf4Jfgn/Cf4Jfgl/Cf8JfwkACv8JfwmACQAKgAkBCgAKgAmBCQEKgQkCCgEKgQmCCQIKggkDCgIKggmDCQMKgwkECgMKgwmECQQKhAkFCgQKhAmFCQUKhQkGCgUKhQmGCQYKhgkHCgYKhgmHCQcKhwkICgcKhwmICQgKiAkJCggKiAmJCQkKiQkKCgkKiQmKCQoKigkLCgoKigmLCQsKiwkMCgsKiwmMCQwKjAkNCgwKjAmNCQ0KjQkOCg0KjQmOCQ4KjgkPCg4KjgmPCQ8KjwkQCg8KjwmQCRAKkAkRChAKkAmRCREKkQkSChEKkQmSCRIKkgkTChIKkwmUCRQKlAkVChQKlAmVCRUKlQkWChUKlQmWCRYKlgkXChYKlgmXCRcKlwkYChcKlwmYCRgKmAkZChgKmAmZCRkKmQkaChkKmQmaCRoKmgkbChoKmgmbCRsKmwkcChsKmwmcCRwKnAkdChwKnAmdCR0KnQkeCh0KnQmeCR4KngkfCh4KngmfCR8KnwkgCh8KnwmgCSAKoAkhCiAKoAmhCSEKoQkiCiEKoQmiCSIKogkjCiIKogmjCSMKowkkCiMKowmkCSQKpAklCiQKpAmlCSUKpQkmCiUKpQmmCSYKpgknCiYKpgmnCScKpwkoCicKpwmoCSgKqAkpCigKqAmpCSkKqQkqCikKqQmqCSoKqgkrCioKqgmrCSsKqwksCisKqwmsCSwKrAktCiwKrAmtCS0KrQkuCi0KrQmuCS4KrgkvCi4KrgmvCS8KrwkwCi8KrwmwCTAKsAkxCjAKsAmxCTEKsQkyCjEKsQmyCTIKsgkzCjIKsgmzCTMKswk0CjMKswm0CTQKtAk1CjQKtAm1CTUKtQk2CjUKtQm2CTYKtgk3CjYKtgm3CTcKtwk4CjcKtwm4CTgKuAk5CjgKuAm5CTkKuQk6CjkKuQm6CToKugk7CjoKugm7CTsKuwk8CjsKuwm8CTwKvAk9CjwKvAm9CT0KvQk+Cj0KvQm+CT4Kvgk/Cj4Kvgm/CT8KvwlACj8KvwnACUAKwAlBCkAKwAnBCUEKwQlCCkEKwQnCCUIKwglDCkIKwgnDCUMKwwlECkMKwwnECUQKxAlFCkQKxAnFCUUKxQlGCkUKxQnGCUYKxglHCkYKxgnHCUcKxwlICkcKxwnICUgKyAlJCkgKyAnJCUkKyQlKCkkKyQnKCUoKyglLCkoKygnLCUsKywlMCksKywnMCUwKzAlNCkwKzAnNCU0KzQlOCk0KzQnOCU4KzglPCk4KzgnPCU8KzwlQCk8KzwnQCVAK0AlRClAK0AnRCVEK0QlSClEK0QnSCVIK0glTClIK0gnTCVMK0wlUClMK0wnUCVQK1AlVClQK1AnVCVUK1QlWClUK1QnWCVYK1glXClYK1gnXCVcK1wlYClcK1wnYCVgK2AlZClgK2AnZCVkK2QlaClkK2QnaCVoK2glbCloK2gnbCVsK2wlcClsK2wncCVwK3AldClwK3AndCV0K3QleCl0K3QneCV4K3glfCl4K3gnfCV8K3wlgCl8K3wngCWAK4AlhCmAK4AnhCWEK4QliCmEK4QniCWIK4gljCmIK4gnjCWMK4wlkCmMK4wnkCWQK5AllCmQK5AnlCWUK5QlmCmUK5QnmCWYK5glnCmYK5gnnCWcK5wloCmcK5wnoCWgK6AlpCmgK6AnpCWkK6QlqCmkK6QnqCWoK6glrCmoK6gnrCWsK6wlsCmsK6wnsCWwK7AltCmwK7AntCW0K7QluCm0K7QnuCW4K7glvCm4K7gnvCW8K7wlwCm8K7wnwCXAK8AlxCnAK8AnxCXEK8QlyCnEK8QnyCXIK8glzCnIK8gnzCXMK8wl0CnMK8wn0CXQK9Al1CnQK9An1CXUK9Ql2CnUK9Qn2CXYK9gl3CnYK9gn3CXcK9wl4CncK9wn4CXgK+Al5CngK+An5CXkK+Ql6CnkK+Qn6CXoK+gl7CnoK+gn7CXsK+wl8CnsK+wn8CXwK/Al9CnwK/An9CX0K/Ql+Cn0K/Qn+CX4K/gl/Cn4K/gn/CX8K/wmACn8K/wkACoAKAAqBCoAKAAoBCoEKAQqCCoEKAQoCCoIKAgqDCoIKAgoDCoMKAwqECoMKAwoECoQKBAqFCoQKBAoFCoUKBQqGCoUKBQoGCoYKBgqHCoYKBgoHCocKBwqICocKBwoICogKCAqJCogKCAoJCokKCQqKCokKCQoKCooKCgqLCooKCgoLCosKCwqMCosKCwoMCowKDAqNCowKDAoNCo0KDQqOCo0KDQoOCo4KDgqPCo4KDgoPCo8KDwqQCo8KDwoQCpAKEAqRCpAKEAoRCpEKEQqSCpEKEQoSCpIKEgqTCpIKEgoTCpMKEwqUCpMKFAoVCpUKFQqWCpUKFQoWCpYKFgqXCpYKFgoXCpcKFwqYCpcKFwoYCpgKGAqZCpgKGAoZCpkKGQqaCpkKGQoaCpoKGgqbCpoKGgobCpsKGwqcCpsKGwocCpwKHAqdCpwKHAodCp0KHQqeCp0KHQoeCp4KHgqfCp4KHgofCp8KHwqgCp8KHwogCqAKIAqhCqAKIAohCqEKIQqiCqEKIQoiCqIKIgqjCqIKIgojCqMKIwqkCqMKIwokCqQKJAqlCqQKJAolCqUKJQqmCqUKJQomCqYKJgqnCqYKJgonCqcKJwqoCqcKJwooCqgKKAqpCqgKKAopCqkKKQqqCqkKKQoqCqoKKgqrCqoKKgorCqsKKwqsCqsKKwosCqwKLAqtCqwKLAotCq0KLQquCq0KLQouCq4KLgqvCq4KLgovCq8KLwqwCq8KLwowCrAKMAqxCrAKMAoxCrEKMQqyCrEKMQoyCrIKMgqzCrIKMgozCrMKMwq0CrMKMwo0CrQKNAq1CrQKNAo1CrUKNQq2CrUKNQo2CrYKNgq3CrYKNgo3CrcKNwq4CrcKNwo4CrgKOAq5CrgKOAo5CrkKOQq6CrkKOQo6CroKOgq7CroKOgo7CrsKOwq8CrsKOwo8CrwKPAq9CrwKPAo9Cr0KPQq+Cr0KPQo+Cr4KPgq/Cr4KPgo/Cr8KPwrACr8KPwpACsAKQArBCsAKQApBCsEKQQrCCsEKQQpCCsIKQgrDCsIKQgpDCsMKQwrECsMKQwpECsQKRArFCsQKRApFCsUKRQrGCsUKRQpGCsYKRgrHCsYKRgpHCscKRwrICscKRwpICsgKSArJCsgKSApJCskKSQrKCskKSQpKCsoKSgrLCsoKSgpLCssKSwrMCssKSwpMCswKTArNCswKTApNCs0KTQrOCs0KTQpOCs4KTgrPCs4KTgpPCs8KTwrQCs8KTwpQCtAKUArRCtAKUApRCtEKUQrSCtEKUQpSCtIKUgrTCtIKUgpTCtMKUwrUCtMKUwpUCtQKVArVCtQKVApVCtUKVQrWCtUKVQpWCtYKVgrXCtYKVgpXCtcKVwrYCtcKVwpYCtgKWArZCtgKWApZCtkKWQraCtkKWQpaCtoKWgrbCtoKWgpbCtsKWwrcCtsKWwpcCtwKXArdCtwKXApdCt0KXQreCt0KXQpeCt4KXgrfCt4KXgpfCt8KXwrgCt8KXwpgCuAKYArhCuAKYAphCuEKYQriCuEKYQpiCuIKYgrjCuIKYgpjCuMKYwrkCuMKYwpkCuQKZArlCuQKZAplCuUKZQrmCuUKZQpmCuYKZgrnCuYKZgpnCucKZwroCucKZwpoCugKaArpCugKaAppCukKaQrqCukKaQpqCuoKagrrCuoKagprCusKawrsCusKawpsCuwKbArtCuwKbAptCu0KbQruCu0KbQpuCu4KbgrvCu4KbgpvCu8KbwrwCu8KbwpwCvAKcArxCvAKcApxCvEKcQryCvEKcQpyCvIKcgrzCvIKcgpzCvMKcwr0CvMKcwp0CvQKdAr1CvQKdAp1CvUKdQr2CvUKdQp2CvYKdgr3CvYKdgp3CvcKdwr4CvcKdwp4CvgKeAr5CvgKeAp5CvkKeQr6CvkKeQp6CvoKegr7CvoKegp7CvsKewr8CvsKewp8CvwKfAr9CvwKfAp9Cv0KfQr+Cv0KfQp+Cv4Kfgr/Cv4Kfgp/Cv8KfwoAC/8KfwqACgALgAoBCwALgAqBCgELgQoCCwELgQqCCgILggoDCwILggqDCgMLgwoECwMLgwqECgQLhAoFCwQLhAqFCgULhQoGCwULhQqGCgYLhgoHCwYLhgqHCgcLhwoICwcLhwqICggLiAoJCwgLiAqJCgkLiQoKCwkLiQqKCgoLigoLCwoLigqLCgsLiwoMCwsLiwqMCgwLjAoNCwwLjAqNCg0LjQoOCw0LjQqOCg4LjgoPCw4LjgqPCg8LjwoQCw8LjwqQChALkAoRCxALkAqRChELkQoSCxELkQqSChILkgoTCxILkgqTChMLkwoUCxMLkwqUChQLlAoVCxQLlQqWChYLlgoXCxYLlgqXChcLlwoYCxcLlwqYChgLmAoZCxgLmAqZChkLmQoaCxkLmQqaChoLmgobCxoLmgqbChsLmwocCxsLmwqcChwLnAodCxwLnAqdCh0LnQoeCx0LnQqeCh4LngofCx4LngqfCh8LnwogCx8LnwqgCiALoAohCyALoAqhCiELoQoiCyELoQqiCiILogojCyILogqjCiMLowokCyMLowqkCiQLpAolCyQLpAqlCiULpQomCyULpQqmCiYLpgonCyYLpgqnCicLpwooCycLpwqoCigLqAopCygLqAqpCikLqQoqCykLqQqqCioLqgorCyoLqgqrCisLqwosCysLqwqsCiwLrAotCywLrAqtCi0LrQouCy0LrQquCi4LrgovCy4LrgqvCi8LrwowCy8LrwqwCjALsAoxCzALsAqxCjELsQoyCzELsQqyCjILsgozCzILsgqzCjMLswo0CzMLswq0CjQLtAo1CzQLtAq1CjULtQo2CzULtQq2CjYLtgo3CzYLtgq3CjcLtwo4CzcLtwq4CjgLuAo5CzgLuAq5CjkLuQo6CzkLuQq6CjoLugo7CzoLugq7CjsLuwo8CzsLuwq8CjwLvAo9CzwLvAq9Cj0LvQo+Cz0LvQq+Cj4Lvgo/Cz4Lvgq/Cj8LvwpACz8LvwrACkALwApBC0ALwArBCkELwQpCC0ELwQrCCkILwgpDC0ILwgrDCkMLwwpEC0MLwwrECkQLxApFC0QLxArFCkULxQpGC0ULxQrGCkYLxgpHC0YLxgrHCkcLxwpIC0cLxwrICkgLyApJC0gLyArJCkkLyQpKC0kLyQrKCkoLygpLC0oLygrLCksLywpMC0sLywrMCkwLzApNC0wLzArNCk0LzQpOC00LzQrOCk4LzgpPC04LzgrPCk8LzwpQC08LzwrQClAL0ApRC1AL0ArRClEL0QpSC1EL0QrSClIL0gpTC1IL0grTClML0wpUC1ML0wrUClQL1ApVC1QL1ArVClUL1QpWC1UL1QrWClYL1gpXC1YL1grXClcL1wpYC1cL1wrYClgL2ApZC1gL2ArZClkL2QpaC1kL2QraCloL2gpbC1oL2grbClsL2wpcC1sL2wrcClwL3ApdC1wL3ArdCl0L3QpeC10L3QreCl4L3gpfC14L3grfCl8L3wpgC18L3wrgCmAL4AphC2AL4ArhCmEL4QpiC2EL4QriCmIL4gpjC2IL4grjCmML4wpkC2ML4wrkCmQL5AplC2QL5ArlCmUL5QpmC2UL5QrmCmYL5gpnC2YL5grnCmcL5wpoC2cL5wroCmgL6AppC2gL6ArpCmkL6QpqC2kL6QrqCmoL6gprC2oL6grrCmsL6wpsC2sL6wrsCmwL7AptC2wL7ArtCm0L7QpuC20L7QruCm4L7gpvC24L7grvCm8L7wpwC28L7wrwCnAL8ApxC3AL8ArxCnEL8QpyC3EL8QryCnIL8gpzC3IL8grzCnML8wp0C3ML8wr0CnQL9Ap1C3QL9Ar1CnUL9Qp2C3UL9Qr2CnYL9gp3C3YL9gr3CncL9wp4C3cL9wr4CngL+Ap5C3gL+Ar5CnkL+Qp6C3kL+Qr6CnoL+gp7C3oL+gr7CnsL+wp8C3sL+wr8CnwL/Ap9C3wL/Ar9Cn0L/Qp+C30L/Qr+Cn4L/gp/C34L/gr/Cn8L/wqAC38L/woAC4ALAAuBC4ALAAsBC4ELAQuCC4ELAQsCC4ILAguDC4ILAgsDC4MLAwuEC4MLAwsEC4QLBAuFC4QLBAsFC4ULBQuGC4ULBQsGC4YLBguHC4YLBgsHC4cLBwuIC4cLBwsIC4gLCAuJC4gLCAsJC4kLCQuKC4kLCQsKC4oLCguLC4oLCgsLC4sLCwuMC4sLCwsMC4wLDAuNC4wLDAsNC40LDQuOC40LDQsOC44LDguPC44LDgsPC48LDwuQC48LDwsQC5ALEAuRC5ALEAsRC5ELEQuSC5ELEQsSC5ILEguTC5ILEgsTC5MLEwuUC5MLEwsUC5QLFAuVC5QLFAsVC5ULFQuWC5ULFgsXC5cLFwuYC5cLFwsYC5gLGAuZC5gLGAsZC5kLGQuaC5kLGQsaC5oLGgubC5oLGgsbC5sLGwucC5sLGwscC5wLHAudC5wLHAsdC50LHQueC50LHQseC54LHgufC54LHgsfC58LHwugC58LHwsgC6ALIAuhC6ALIAshC6ELIQuiC6ELIQsiC6ILIgujC6ILIgsjC6MLIwukC6MLIwskC6QLJAulC6QLJAslC6ULJQumC6ULJQsmC6YLJgunC6YLJgsnC6cLJwuoC6cLJwsoC6gLKAupC6gLKAspC6kLKQuqC6kLKQsqC6oLKgurC6oLKgsrC6sLKwusC6sLKwssC6wLLAutC6wLLAstC60LLQuuC60LLQsuC64LLguvC64LLgsvC68LLwuwC68LLwswC7ALMAuxC7ALMAsxC7ELMQuyC7ELMQsyC7ILMguzC7ILMgszC7MLMwu0C7MLMws0C7QLNAu1C7QLNAs1C7ULNQu2C7ULNQs2C7YLNgu3C7YLNgs3C7cLNwu4C7cLNws4C7gLOAu5C7gLOAs5C7kLOQu6C7kLOQs6C7oLOgu7C7oLOgs7C7sLOwu8C7sLOws8C7wLPAu9C7wLPAs9C70LPQu+C70LPQs+C74LPgu/C74LPgs/C78LPwvAC78LPwtAC8ALQAvBC8ALQAtBC8ELQQvCC8ELQQtCC8ILQgvDC8ILQgtDC8MLQwvEC8MLQwtEC8QLRAvFC8QLRAtFC8ULRQvGC8ULRQtGC8YLRgvHC8YLRgtHC8cLRwvIC8cLRwtIC8gLSAvJC8gLSAtJC8kLSQvKC8kLSQtKC8oLSgvLC8oLSgtLC8sLSwvMC8sLSwtMC8wLTAvNC8wLTAtNC80LTQvOC80LTQtOC84LTgvPC84LTgtPC88LTwvQC88LTwtQC9ALUAvRC9ALUAtRC9ELUQvSC9ELUQtSC9ILUgvTC9ILUgtTC9MLUwvUC9MLUwtUC9QLVAvVC9QLVAtVC9ULVQvWC9ULVQtWC9YLVgvXC9YLVgtXC9cLVwvYC9cLVwtYC9gLWAvZC9gLWAtZC9kLWQvaC9kLWQtaC9oLWgvbC9oLWgtbC9sLWwvcC9sLWwtcC9wLXAvdC9wLXAtdC90LXQveC90LXQteC94LXgvfC94LXgtfC98LXwvgC98LXwtgC+ALYAvhC+ALYAthC+ELYQviC+ELYQtiC+ILYgvjC+ILYgtjC+MLYwvkC+MLYwtkC+QLZAvlC+QLZAtlC+ULZQvmC+ULZQtmC+YLZgvnC+YLZgtnC+cLZwvoC+cLZwtoC+gLaAvpC+gLaAtpC+kLaQvqC+kLaQtqC+oLagvrC+oLagtrC+sLawvsC+sLawtsC+wLbAvtC+wLbAttC+0LbQvuC+0LbQtuC+4LbgvvC+4LbgtvC+8LbwvwC+8LbwtwC/ALcAvxC/ALcAtxC/ELcQvyC/ELcQtyC/ILcgvzC/ILcgtzC/MLcwv0C/MLcwt0C/QLdAv1C/QLdAt1C/ULdQv2C/ULdQt2C/YLdgv3C/YLdgt3C/cLdwv4C/cLdwt4C/gLeAv5C/gLeAt5C/kLeQv6C/kLeQt6C/oLegv7C/oLegt7C/sLewv8C/sLewt8C/wLfAv9C/wLfAt9C/0LfQv+C/0LfQt+C/4Lfgv/C/4Lfgt/C/8LfwsADP8LfwuACwAMgAsBDAAMgAuBCwEMgQsCDAEMgQuCCwIMggsDDAIMgguDCwMMgwsEDAMMgwuECwQMhAsFDAQMhAuFCwUMhQsGDAUMhQuGCwYMhgsHDAYMhguHCwcMhwsIDAcMhwuICwgMiAsJDAgMiAuJCwkMiQsKDAkMiQuKCwoMigsLDAoMiguLCwsMiwsMDAsMiwuMCwwMjAsNDAwMjAuNCw0MjQsODA0MjQuOCw4MjgsPDA4MjguPCw8MjwsQDA8MjwuQCxAMkAsRDBAMkAuRCxEMkQsSDBEMkQuSCxIMkgsTDBIMkguTCxMMkwsUDBMMkwuUCxQMlAsVDBQMlAuVCxUMlQsWDBUMlQuWCxYMlgsXDBYMlwuYCxgMmAsZDBgMmAuZCxkMmQsaDBkMmQuaCxoMmgsbDBoMmgubCxsMmwscDBsMmwucCxwMnAsdDBwMnAudCx0MnQseDB0MnQueCx4MngsfDB4MngufCx8MnwsgDB8MnwugCyAMoAshDCAMoAuhCyEMoQsiDCEMoQuiCyIMogsjDCIMogujCyMMowskDCMMowukCyQMpAslDCQMpAulCyUMpQsmDCUMpQumCyYMpgsnDCYMpgunCycMpwsoDCcMpwuoCygMqAspDCgMqAupCykMqQsqDCkMqQuqCyoMqgsrDCoMqgurCysMqwssDCsMqwusCywMrAstDCwMrAutCy0MrQsuDC0MrQuuCy4MrgsvDC4MrguvCy8MrwswDC8MrwuwCzAMsAsxDDAMsAuxCzEMsQsyDDEMsQuyCzIMsgszDDIMsguzCzMMsws0DDMMswu0CzQMtAs1DDQMtAu1CzUMtQs2DDUMtQu2CzYMtgs3DDYMtgu3CzcMtws4DDcMtwu4CzgMuAs5DDgMuAu5CzkMuQs6DDkMuQu6CzoMugs7DDoMugu7CzsMuws8DDsMuwu8CzwMvAs9DDwMvAu9Cz0MvQs+DD0MvQu+Cz4Mvgs/DD4Mvgu/Cz8MvwtADD8MvwvAC0AMwAtBDEAMwAvBC0EMwQtCDEEMwQvCC0IMwgtDDEIMwgvDC0MMwwtEDEMMwwvEC0QMxAtFDEQMxAvFC0UMxQtGDEUMxQvGC0YMxgtHDEYMxgvHC0cMxwtIDEcMxwvIC0gMyAtJDEgMyAvJC0kMyQtKDEkMyQvKC0oMygtLDEoMygvLC0sMywtMDEsMywvMC0wMzAtNDEwMzAvNC00MzQtODE0MzQvOC04MzgtPDE4MzgvPC08MzwtQDE8MzwvQC1AM0AtRDFAM0AvRC1EM0QtSDFEM0QvSC1IM0gtTDFIM0gvTC1MM0wtUDFMM0wvUC1QM1AtVDFQM1AvVC1UM1QtWDFUM1QvWC1YM1gtXDFYM1gvXC1cM1wtYDFcM1wvYC1gM2AtZDFgM2AvZC1kM2QtaDFkM2QvaC1oM2gtbDFoM2gvbC1sM2wtcDFsM2wvcC1wM3AtdDFwM3AvdC10M3QteDF0M3QveC14M3gtfDF4M3gvfC18M3wtgDF8M3wvgC2AM4AthDGAM4AvhC2EM4QtiDGEM4QviC2IM4gtjDGIM4gvjC2MM4wtkDGMM4wvkC2QM5AtlDGQM5AvlC2UM5QtmDGUM5QvmC2YM5gtnDGYM5gvnC2cM5wtoDGcM5wvoC2gM6AtpDGgM6AvpC2kM6QtqDGkM6QvqC2oM6gtrDGoM6gvrC2sM6wtsDGsM6wvsC2wM7AttDGwM7AvtC20M7QtuDG0M7QvuC24M7gtvDG4M7gvvC28M7wtwDG8M7wvwC3AM8AtxDHAM8AvxC3EM8QtyDHEM8QvyC3IM8gtzDHIM8gvzC3MM8wt0DHMM8wv0C3QM9At1DHQM9Av1C3UM9Qt2DHUM9Qv2C3YM9gt3DHYM9gv3C3cM9wt4DHcM9wv4C3gM+At5DHgM+Av5C3kM+Qt6DHkM+Qv6C3oM+gt7DHoM+gv7C3sM+wt8DHsM+wv8C3wM/At9DHwM/Av9C30M/Qt+DH0M/Qv+C34M/gt/DH4M/gv/C38M/wuADH8M/wsADIAMAAyBDIAMAAwBDIEMAQyCDIEMAQwCDIIMAgyDDIIMAgwDDIMMAwyEDIMMAwwEDIQMBAyFDIQMBAwFDIUMBQyGDIUMBQwGDIYMBgyHDIYMBgwHDIcMBwyIDIcMBwwIDIgMCAyJDIgMCAwJDIkMCQyKDIkMCQwKDIoMCgyLDIoMCgwLDIsMCwyMDIsMCwwMDIwMDAyNDIwMDAwNDI0MDQyODI0MDQwODI4MDgyPDI4MDgwPDI8MDwyQDI8MDwwQDJAMEAyRDJAMEAwRDJEMEQySDJEMEQwSDJIMEgyTDJIMEgwTDJMMEwyUDJMMEwwUDJQMFAyVDJQMFAwVDJUMFQyWDJUMFQwWDJYMFgyXDJYMFgwXDJcMFwyYDJcMGAwZDJkMGQyaDJkMGQwaDJoMGgybDJoMGgwbDJsMGwycDJsMGwwcDJwMHAydDJwMHAwdDJ0MHQyeDJ0MHQweDJ4MHgyfDJ4MHgwfDJ8MHwygDJ8MHwwgDKAMIAyhDKAMIAwhDKEMIQyiDKEMIQwiDKIMIgyjDKIMIgwjDKMMIwykDKMMIwwkDKQMJAylDKQMJAwlDKUMJQymDKUMJQwmDKYMJgynDKYMJgwnDKcMJwyoDKcMJwwoDKgMKAypDKgMKAwpDKkMKQyqDKkMKQwqDKoMKgyrDKoMKgwrDKsMKwysDKsMKwwsDKwMLAytDKwMLAwtDK0MLQyuDK0MLQwuDK4MLgyvDK4MLgwvDK8MLwywDK8MLwwwDLAMMAyxDLAMMAwxDLEMMQyyDLEMMQwyDLIMMgyzDLIMMgwzDLMMMwy0DLMMMww0DLQMNAy1DLQMNAw1DLUMNQy2DLUMNQw2DLYMNgy3DLYMNgw3DLcMNwy4DLcMNww4DLgMOAy5DLgMOAw5DLkMOQy6DLkMOQw6DLoMOgy7DLoMOgw7DLsMOwy8DLsMOww8DLwMPAy9DLwMPAw9DL0MPQy+DL0MPQw+DL4MPgy/DL4MPgw/DL8MPwzADL8MPwxADMAMQAzBDMAMQAxBDMEMQQzCDMEMQQxCDMIMQgzDDMIMQgxDDMMMQwzEDMMMQwxEDMQMRAzFDMQMRAxFDMUMRQzGDMUMRQxGDMYMRgzHDMYMRgxHDMcMRwzIDMcMRwxIDMgMSAzJDMgMSAxJDMkMSQzKDMkMSQxKDMoMSgzLDMoMSgxLDMsMSwzMDMsMSwxMDMwMTAzNDMwMTAxNDM0MTQzODM0MTQxODM4MTgzPDM4MTgxPDM8MTwzQDM8MTwxQDNAMUAzRDNAMUAxRDNEMUQzSDNEMUQxSDNIMUgzTDNIMUgxTDNMMUwzUDNMMUwxUDNQMVAzVDNQMVAxVDNUMVQzWDNUMVQxWDNYMVgzXDNYMVgxXDNcMVwzYDNcMVwxYDNgMWAzZDNgMWAxZDNkMWQzaDNkMWQxaDNoMWgzbDNoMWgxbDNsMWwzcDNsMWwxcDNwMXAzdDNwMXAxdDN0MXQzeDN0MXQxeDN4MXgzfDN4MXgxfDN8MXwzgDN8MXwxgDOAMYAzhDOAMYAxhDOEMYQziDOEMYQxiDOIMYgzjDOIMYgxjDOMMYwzkDOMMYwxkDOQMZAzlDOQMZAxlDOUMZQzmDOUMZQxmDOYMZgznDOYMZgxnDOcMZwzoDOcMZwxoDOgMaAzpDOgMaAxpDOkMaQzqDOkMaQxqDOoMagzrDOoMagxrDOsMawzsDOsMawxsDOwMbAztDOwMbAxtDO0MbQzuDO0MbQxuDO4MbgzvDO4MbgxvDO8MbwzwDO8MbwxwDPAMcAzxDPAMcAxxDPEMcQzyDPEMcQxyDPIMcgzzDPIMcgxzDPMMcwz0DPMMcwx0DPQMdAz1DPQMdAx1DPUMdQz2DPUMdQx2DPYMdgz3DPYMdgx3DPcMdwz4DPcMdwx4DPgMeAz5DPgMeAx5DPkMeQz6DPkMeQx6DPoMegz7DPoMegx7DPsMewz8DPsMewx8DPwMfAz9DPwMfAx9DP0MfQz+DP0MfQx+DP4Mfgz/DP4Mfgx/DP8MfwwADf8MfwyADAANgAwBDQANgAyBDAENgQwCDQENgQyCDAINggwDDQINggyDDAMNgwwEDQMNgwyEDAQNhAwFDQQNhAyFDAUNhQwGDQUNhQyGDAYNhgwHDQYNhgyHDAcNhwwIDQcNhwyIDAgNiAwJDQgNiAyJDAkNiQwKDQkNiQyKDAoNigwLDQoNigyLDAsNiwwMDQsNiwyMDAwNjAwNDQwNjAyNDA0NjQwODQ0NjQyODA4NjgwPDQ4NjgyPDA8NjwwQDQ8NjwyQDBANkAwRDRANkAyRDBENkQwSDRENkQySDBINkgwTDRINkgyTDBMNkwwUDRMNkwyUDBQNlAwVDRQNlAyVDBUNlQwWDRUNlQyWDBYNlgwXDRYNlgyXDBcNlwwYDRcNlwyYDBgNmAwZDRgNmQyaDBoNmgwbDRoNmgybDBsNmwwcDRsNmwycDBwNnAwdDRwNnAydDB0NnQweDR0NnQyeDB4NngwfDR4NngyfDB8NnwwgDR8NnwygDCANoAwhDSANoAyhDCENoQwiDSENoQyiDCINogwjDSINogyjDCMNowwkDSMNowykDCQNpAwlDSQNpAylDCUNpQwmDSUNpQymDCYNpgwnDSYNpgynDCcNpwwoDScNpwyoDCgNqAwpDSgNqAypDCkNqQwqDSkNqQyqDCoNqgwrDSoNqgyrDCsNqwwsDSsNqwysDCwNrAwtDSwNrAytDC0NrQwuDS0NrQyuDC4NrgwvDS4NrgyvDC8NrwwwDS8NrwywDDANsAwxDTANsAyxDDENsQwyDTENsQyyDDINsgwzDTINsgyzDDMNsww0DTMNswy0DDQNtAw1DTQNtAy1DDUNtQw2DTUNtQy2DDYNtgw3DTYNtgy3DDcNtww4DTcNtwy4DDgNuAw5DTgNuAy5DDkNuQw6DTkNuQy6DDoNugw7DToNugy7DDsNuww8DTsNuwy8DDwNvAw9DTwNvAy9DD0NvQw+DT0NvQy+DD4Nvgw/DT4Nvgy/DD8NvwxADT8NvwzADEANwAxBDUANwAzBDEENwQxCDUENwQzCDEINwgxDDUINwgzDDEMNwwxEDUMNwwzEDEQNxAxFDUQNxAzFDEUNxQxGDUUNxQzGDEYNxgxHDUYNxgzHDEcNxwxIDUcNxwzIDEgNyAxJDUgNyAzJDEkNyQxKDUkNyQzKDEoNygxLDUoNygzLDEsNywxMDUsNywzMDEwNzAxNDUwNzAzNDE0NzQxODU0NzQzODE4NzgxPDU4NzgzPDE8NzwxQDU8NzwzQDFAN0AxRDVAN0AzRDFEN0QxSDVEN0QzSDFIN0gxTDVIN0gzTDFMN0wxUDVMN0wzUDFQN1AxVDVQN1AzVDFUN1QxWDVUN1QzWDFYN1gxXDVYN1gzXDFcN1wxYDVcN1wzYDFgN2AxZDVgN2AzZDFkN2QxaDVkN2QzaDFoN2gxbDVoN2gzbDFsN2wxcDVsN2wzcDFwN3AxdDVwN3AzdDF0N3QxeDV0N3QzeDF4N3gxfDV4N3gzfDF8N3wxgDV8N3wzgDGAN4AxhDWAN4AzhDGEN4QxiDWEN4QziDGIN4gxjDWIN4gzjDGMN4wxkDWMN4wzkDGQN5AxlDWQN5AzlDGUN5QxmDWUN5QzmDGYN5gxnDWYN5gznDGcN5wxoDWcN5wzoDGgN6AxpDWgN6AzpDGkN6QxqDWkN6QzqDGoN6gxrDWoN6gzrDGsN6wxsDWsN6wzsDGwN7AxtDWwN7AztDG0N7QxuDW0N7QzuDG4N7gxvDW4N7gzvDG8N7wxwDW8N7wzwDHAN8AxxDXAN8AzxDHEN8QxyDXEN8QzyDHIN8gxzDXIN8gzzDHMN8wx0DXMN8wz0DHQN9Ax1DXQN9Az1DHUN9Qx2DXUN9Qz2DHYN9gx3DXYN9gz3DHcN9wx4DXcN9wz4DHgN+Ax5DXgN+Az5DHkN+Qx6DXkN+Qz6DHoN+gx7DXoN+gz7DHsN+wx8DXsN+wz8DHwN/Ax9DXwN/Az9DH0N/Qx+DX0N/Qz+DH4N/gx/DX4N/gz/DH8N/wyADX8N/wwADYANAA2BDYANAA0BDYENAQ2CDYENAQ0CDYINAg2DDYINAg0DDYMNAw2EDYMNAw0EDYQNBA2FDYQNBA0FDYUNBQ2GDYUNBQ0GDYYNBg2HDYYNBg0HDYcNBw2IDYcNBw0IDYgNCA2JDYgNCA0JDYkNCQ2KDYkNCQ0KDYoNCg2LDYoNCg0LDYsNCw2MDYsNCw0MDYwNDA2NDYwNDA0NDY0NDQ2ODY0NDQ0ODY4NDg2PDY4NDg0PDY8NDw2QDY8NDw0QDZANEA2RDZANEA0RDZENEQ2SDZENEQ0SDZINEg2TDZINEg0TDZMNEw2UDZMNEw0UDZQNFA2VDZQNFA0VDZUNFQ2WDZUNFQ0WDZYNFg2XDZYNFg0XDZcNFw2YDZcNFw0YDZgNGA2ZDZgNGA0ZDZkNGQ2aDZkNGg0bDZsNGw2cDZsNGw0cDZwNHA2dDZwNHA0dDZ0NHQ2eDZ0NHQ0eDZ4NHg2fDZ4NHg0fDZ8NHw2gDZ8NHw0gDaANIA2hDaANIA0hDaENIQ2iDaENIQ0iDaINIg2jDaINIg0jDaMNIw2kDaMNIw0kDaQNJA2lDaQNJA0lDaUNJQ2mDaUNJQ0mDaYNJg2nDaYNJg0nDacNJw2oDacNJw0oDagNKA2pDagNKA0pDakNKQ2qDakNKQ0qDaoNKg2rDaoNKg0rDasNKw2sDasNKw0sDawNLA2tDawNLA0tDa0NLQ2uDa0NLQ0uDa4NLg2vDa4NLg0vDa8NLw2wDa8NLw0wDbANMA2xDbANMA0xDbENMQ2yDbENMQ0yDbINMg2zDbINMg0zDbMNMw20DbMNMw00DbQNNA21DbQNNA01DbUNNQ22DbUNNQ02DbYNNg23DbYNNg03DbcNNw24DbcNNw04DbgNOA25DbgNOA05DbkNOQ26DbkNOQ06DboNOg27DboNOg07DbsNOw28DbsNOw08DbwNPA29DbwNPA09Db0NPQ2+Db0NPQ0+Db4NPg2/Db4NPg0/Db8NPw3ADb8NPw1ADcANQA3BDcANQA1BDcENQQ3CDcENQQ1CDcINQg3DDcINQg1DDcMNQw3EDcMNQw1EDcQNRA3FDcQNRA1FDcUNRQ3GDcUNRQ1GDcYNRg3HDcYNRg1HDccNRw3IDccNRw1IDcgNSA3JDcgNSA1JDckNSQ3KDckNSQ1KDcoNSg3LDcoNSg1LDcsNSw3MDcsNSw1MDcwNTA3NDcwNTA1NDc0NTQ3ODc0NTQ1ODc4NTg3PDc4NTg1PDc8NTw3QDc8NTw1QDdANUA3RDdANUA1RDdENUQ3SDdENUQ1SDdINUg3TDdINUg1TDdMNUw3UDdMNUw1UDdQNVA3VDdQNVA1VDdUNVQ3WDdUNVQ1WDdYNVg3XDdYNVg1XDdcNVw3YDdcNVw1YDdgNWA3ZDdgNWA1ZDdkNWQ3aDdkNWQ1aDdoNWg3bDdoNWg1bDdsNWw3cDdsNWw1cDdwNXA3dDdwNXA1dDd0NXQ3eDd0NXQ1eDd4NXg3fDd4NXg1fDd8NXw3gDd8NXw1gDeANYA3hDeANYA1hDeENYQ3iDeENYQ1iDeINYg3jDeINYg1jDeMNYw3kDeMNYw1kDeQNZA3lDeQNZA1lDeUNZQ3mDeUNZQ1mDeYNZg3nDeYNZg1nDecNZw3oDecNZw1oDegNaA3pDegNaA1pDekNaQ3qDekNaQ1qDeoNag3rDeoNag1rDesNaw3sDesNaw1sDewNbA3tDewNbA1tDe0NbQ3uDe0NbQ1uDe4Nbg3vDe4Nbg1vDe8Nbw3wDe8Nbw1wDfANcA3xDfANcA1xDfENcQ3yDfENcQ1yDfINcg3zDfINcg1zDfMNcw30DfMNcw10DfQNdA31DfQNdA11DfUNdQ32DfUNdQ12DfYNdg33DfYNdg13DfcNdw34DfcNdw14DfgNeA35DfgNeA15DfkNeQ36DfkNeQ16DfoNeg37DfoNeg17DfsNew38DfsNew18DfwNfA39DfwNfA19Df0NfQ3+Df0NfQ1+Df4Nfg3/Df4Nfg1/Df8Nfw0ADv8Nfw2ADQAOgA0BDgAOgA2BDQEOgQ0CDgEOgQ2CDQIOgg0DDgIOgg2DDQMOgw0EDgMOgw2EDQQOhA0FDgQOhA2FDQUOhQ0GDgUOhQ2GDQYOhg0HDgYOhg2HDQcOhw0IDgcOhw2IDQgOiA0JDggOiA2JDQkOiQ0KDgkOiQ2KDQoOig0LDgoOig2LDQsOiw0MDgsOiw2MDQwOjA0NDgwOjA2NDQ0OjQ0ODg0OjQ2ODQ4Ojg0PDg4Ojg2PDQ8Ojw0QDg8Ojw2QDRAOkA0RDhAOkA2RDREOkQ0SDhEOkQ2SDRIOkg0TDhIOkg2TDRMOkw0UDhMOkw2UDRQOlA0VDhQOlA2VDRUOlQ0WDhUOlQ2WDRYOlg0XDhYOlg2XDRcOlw0YDhcOlw2YDRgOmA0ZDhgOmA2ZDRkOmQ0aDhkOmQ2aDRoOmg0bDhoOmw2cDRwOnA0dDhwOnA2dDR0OnQ0eDh0OnQ2eDR4Ong0fDh4Ong2fDR8Onw0gDh8Onw2gDSAOoA0hDiAOoA2hDSEOoQ0iDiEOoQ2iDSIOog0jDiIOog2jDSMOow0kDiMOow2kDSQOpA0lDiQOpA2lDSUOpQ0mDiUOpQ2mDSYOpg0nDiYOpg2nDScOpw0oDicOpw2oDSgOqA0pDigOqA2pDSkOqQ0qDikOqQ2qDSoOqg0rDioOqg2rDSsOqw0sDisOqw2sDSwOrA0tDiwOrA2tDS0OrQ0uDi0OrQ2uDS4Org0vDi4Org2vDS8Orw0wDi8Orw2wDTAOsA0xDjAOsA2xDTEOsQ0yDjEOsQ2yDTIOsg0zDjIOsg2zDTMOsw00DjMOsw20DTQOtA01DjQOtA21DTUOtQ02DjUOtQ22DTYOtg03DjYOtg23DTcOtw04DjcOtw24DTgOuA05DjgOuA25DTkOuQ06DjkOuQ26DToOug07DjoOug27DTsOuw08DjsOuw28DTwOvA09DjwOvA29DT0OvQ0+Dj0OvQ2+DT4Ovg0/Dj4Ovg2/DT8Ovw1ADj8Ovw3ADUAOwA1BDkAOwA3BDUEOwQ1CDkEOwQ3CDUIOwg1DDkIOwg3DDUMOww1EDkMOww3EDUQOxA1FDkQOxA3FDUUOxQ1GDkUOxQ3GDUYOxg1HDkYOxg3HDUcOxw1IDkcOxw3IDUgOyA1JDkgOyA3JDUkOyQ1KDkkOyQ3KDUoOyg1LDkoOyg3LDUsOyw1MDksOyw3MDUwOzA1NDkwOzA3NDU0OzQ1ODk0OzQ3ODU4Ozg1PDk4Ozg3PDU8Ozw1QDk8Ozw3QDVAO0A1RDlAO0A3RDVEO0Q1SDlEO0Q3SDVIO0g1TDlIO0g3TDVMO0w1UDlMO0w3UDVQO1A1VDlQO1A3VDVUO1Q1WDlUO1Q3WDVYO1g1XDlYO1g3XDVcO1w1YDlcO1w3YDVgO2A1ZDlgO2A3ZDVkO2Q1aDlkO2Q3aDVoO2g1bDloO2g3bDVsO2w1cDlsO2w3cDVwO3A1dDlwO3A3dDV0O3Q1eDl0O3Q3eDV4O3g1fDl4O3g3fDV8O3w1gDl8O3w3gDWAO4A1hDmAO4A3hDWEO4Q1iDmEO4Q3iDWIO4g1jDmIO4g3jDWMO4w1kDmMO4w3kDWQO5A1lDmQO5A3lDWUO5Q1mDmUO5Q3mDWYO5g1nDmYO5g3nDWcO5w1oDmcO5w3oDWgO6A1pDmgO6A3pDWkO6Q1qDmkO6Q3qDWoO6g1rDmoO6g3rDWsO6w1sDmsO6w3sDWwO7A1tDmwO7A3tDW0O7Q1uDm0O7Q3uDW4O7g1vDm4O7g3vDW8O7w1wDm8O7w3wDXAO8A1xDnAO8A3xDXEO8Q1yDnEO8Q3yDXIO8g1zDnIO8g3zDXMO8w10DnMO8w30DXQO9A11DnQO9A31DXUO9Q12DnUO9Q32DXYO9g13DnYO9g33DXcO9w14DncO9w34DXgO+A15DngO+A35DXkO+Q16DnkO+Q36DXoO+g17DnoO+g37DXsO+w18DnsO+w38DXwO/A19DnwO/A39DX0O/Q1+Dn0O/Q3+DX4O/g1/Dn4O/g3/DX8O/w2ADn8O/w0ADoAOAA6BDoAOAA4BDoEOAQ6CDoEOAQ4CDoIOAg6DDoIOAg4DDoMOAw6EDoMOAw4EDoQOBA6FDoQOBA4FDoUOBQ6GDoUOBQ4GDoYOBg6HDoYOBg4HDocOBw6IDocOBw4IDogOCA6JDogOCA4JDokOCQ6KDokOCQ4KDooOCg6LDooOCg4LDosOCw6MDosOCw4MDowODA6NDowODA4NDo0ODQ6ODo0ODQ4ODo4ODg6PDo4ODg4PDo8ODw6QDo8ODw4QDpAOEA6RDpAOEA4RDpEOEQ6SDpEOEQ4SDpIOEg6TDpIOEg4TDpMOEw6UDpMOEw4UDpQOFA6VDpQOFA4VDpUOFQ6WDpUOFQ4WDpYOFg6XDpYOFg4XDpcOFw6YDpcOFw4YDpgOGA6ZDpgOGA4ZDpkOGQ6aDpkOGQ4aDpoOGg6bDpoOGg4bDpsOGw6cDpsOHA4dDp0OHQ6eDp0OHQ4eDp4OHg6fDp4OHg4fDp8OHw6gDp8OHw4gDqAOIA6hDqAOIA4hDqEOIQ6iDqEOIQ4iDqIOIg6jDqIOIg4jDqMOIw6kDqMOIw4kDqQOJA6lDqQOJA4lDqUOJQ6mDqUOJQ4mDqYOJg6nDqYOJg4nDqcOJw6oDqcOJw4oDqgOKA6pDqgOKA4pDqkOKQ6qDqkOKQ4qDqoOKg6rDqoOKg4rDqsOKw6sDqsOKw4sDqwOLA6tDqwOLA4tDq0OLQ6uDq0OLQ4uDq4OLg6vDq4OLg4vDq8OLw6wDq8OLw4wDrAOMA6xDrAOMA4xDrEOMQ6yDrEOMQ4yDrIOMg6zDrIOMg4zDrMOMw60DrMOMw40DrQONA61DrQONA41DrUONQ62DrUONQ42DrYONg63DrYONg43DrcONw64DrcONw44DrgOOA65DrgOOA45DrkOOQ66DrkOOQ46DroOOg67DroOOg47DrsOOw68DrsOOw48DrwOPA69DrwOPA49Dr0OPQ6+Dr0OPQ4+Dr4OPg6/Dr4OPg4/Dr8OPw7ADr8OPw5ADsAOQA7BDsAOQA5BDsEOQQ7CDsEOQQ5CDsIOQg7DDsIOQg5DDsMOQw7EDsMOQw5EDsQORA7FDsQORA5FDsUORQ7GDsUORQ5GDsYORg7HDsYORg5HDscORw7IDscORw5IDsgOSA7JDsgOSA5JDskOSQ7KDskOSQ5KDsoOSg7LDsoOSg5LDssOSw7MDssOSw5MDswOTA7NDswOTA5NDs0OTQ7ODs0OTQ5ODs4OTg7PDs4OTg5PDs8OTw7QDs8OTw5QDtAOUA7RDtAOUA5RDtEOUQ7SDtEOUQ5SDtIOUg7TDtIOUg5TDtMOUw7UDtMOUw5UDtQOVA7VDtQOVA5VDtUOVQ7WDtUOVQ5WDtYOVg7XDtYOVg5XDtcOVw7YDtcOVw5YDtgOWA7ZDtgOWA5ZDtkOWQ7aDtkOWQ5aDtoOWg7bDtoOWg5bDtsOWw7cDtsOWw5cDtwOXA7dDtwOXA5dDt0OXQ7eDt0OXQ5eDt4OXg7fDt4OXg5fDt8OXw7gDt8OXw5gDuAOYA7hDuAOYA5hDuEOYQ7iDuEOYQ5iDuIOYg7jDuIOYg5jDuMOYw7kDuMOYw5kDuQOZA7lDuQOZA5lDuUOZQ7mDuUOZQ5mDuYOZg7nDuYOZg5nDucOZw7oDucOZw5oDugOaA7pDugOaA5pDukOaQ7qDukOaQ5qDuoOag7rDuoOag5rDusOaw7sDusOaw5sDuwObA7tDuwObA5tDu0ObQ7uDu0ObQ5uDu4Obg7vDu4Obg5vDu8Obw7wDu8Obw5wDvAOcA7xDvAOcA5xDvEOcQ7yDvEOcQ5yDvIOcg7zDvIOcg5zDvMOcw70DvMOcw50DvQOdA71DvQOdA51DvUOdQ72DvUOdQ52DvYOdg73DvYOdg53DvcOdw74DvcOdw54DvgOeA75DvgOeA55DvkOeQ76DvkOeQ56DvoOeg77DvoOeg57DvsOew78DvsOew58DvwOfA79DvwOfA59Dv0OfQ7+Dv0OfQ5+Dv4Ofg7/Dv4Ofg5/Dv8Ofw4AD/8Ofw6ADgAPgA4BDwAPgA6BDgEPgQ4CDwEPgQ6CDgIPgg4DDwIPgg6DDgMPgw4EDwMPgw6EDgQPhA4FDwQPhA6FDgUPhQ4GDwUPhQ6GDgYPhg4HDwYPhg6HDgcPhw4IDwcPhw6IDggPiA4JDwgPiA6JDgkPiQ4KDwkPiQ6KDgoPig4LDwoPig6LDgsPiw4MDwsPiw6MDgwPjA4NDwwPjA6NDg0PjQ4ODw0PjQ6ODg4Pjg4PDw4Pjg6PDg8Pjw4QDw8Pjw6QDhAPkA4RDxAPkA6RDhEPkQ4SDxEPkQ6SDhIPkg4TDxIPkg6TDhMPkw4UDxMPkw6UDhQPlA4VDxQPlA6VDhUPlQ4WDxUPlQ6WDhYPlg4XDxYPlg6XDhcPlw4YDxcPlw6YDhgPmA4ZDxgPmA6ZDhkPmQ4aDxkPmQ6aDhoPmg4bDxoPmg6bDhsPmw4cDxsPmw6cDhwPnA4dDxwPnQ6eDh4Png4fDx4Png6fDh8Pnw4gDx8Pnw6gDiAPoA4hDyAPoA6hDiEPoQ4iDyEPoQ6iDiIPog4jDyIPog6jDiMPow4kDyMPow6kDiQPpA4lDyQPpA6lDiUPpQ4mDyUPpQ6mDiYPpg4nDyYPpg6nDicPpw4oDycPpw6oDigPqA4pDygPqA6pDikPqQ4qDykPqQ6qDioPqg4rDyoPqg6rDisPqw4sDysPqw6sDiwPrA4tDywPrA6tDi0PrQ4uDy0PrQ6uDi4Prg4vDy4Prg6vDi8Prw4wDy8Prw6wDjAPsA4xDzAPsA6xDjEPsQ4yDzEPsQ6yDjIPsg4zDzIPsg6zDjMPsw40DzMPsw60DjQPtA41DzQPtA61DjUPtQ42DzUPtQ62DjYPtg43DzYPtg63DjcPtw44DzcPtw64DjgPuA45DzgPuA65DjkPuQ46DzkPuQ66DjoPug47DzoPug67DjsPuw48DzsPuw68DjwPvA49DzwPvA69Dj0PvQ4+Dz0PvQ6+Dj4Pvg4/Dz4Pvg6/Dj8Pvw5ADz8Pvw7ADkAPwA5BD0APwA7BDkEPwQ5CD0EPwQ7CDkIPwg5DD0IPwg7DDkMPww5ED0MPww7EDkQPxA5FD0QPxA7FDkUPxQ5GD0UPxQ7GDkYPxg5HD0YPxg7HDkcPxw5ID0cPxw7IDkgPyA5JD0gPyA7JDkkPyQ5KD0kPyQ7KDkoPyg5LD0oPyg7LDksPyw5MD0sPyw7MDkwPzA5ND0wPzA7NDk0PzQ5OD00PzQ7ODk4Pzg5PD04Pzg7PDk8Pzw5QD08Pzw7QDlAP0A5RD1AP0A7RDlEP0Q5SD1EP0Q7SDlIP0g5TD1IP0g7TDlMP0w5UD1MP0w7UDlQP1A5VD1QP1A7VDlUP1Q5WD1UP1Q7WDlYP1g5XD1YP1g7XDlcP1w5YD1cP1w7YDlgP2A5ZD1gP2A7ZDlkP2Q5aD1kP2Q7aDloP2g5bD1oP2g7bDlsP2w5cD1sP2w7cDlwP3A5dD1wP3A7dDl0P3Q5eD10P3Q7eDl4P3g5fD14P3g7fDl8P3w5gD18P3w7gDmAP4A5hD2AP4A7hDmEP4Q5iD2EP4Q7iDmIP4g5jD2IP4g7jDmMP4w5kD2MP4w7kDmQP5A5lD2QP5A7lDmUP5Q5mD2UP5Q7mDmYP5g5nD2YP5g7nDmcP5w5oD2cP5w7oDmgP6A5pD2gP6A7pDmkP6Q5qD2kP6Q7qDmoP6g5rD2oP6g7rDmsP6w5sD2sP6w7sDmwP7A5tD2wP7A7tDm0P7Q5uD20P7Q7uDm4P7g5vD24P7g7vDm8P7w5wD28P7w7wDnAP8A5xD3AP8A7xDnEP8Q5yD3EP8Q7yDnIP8g5zD3IP8g7zDnMP8w50D3MP8w70DnQP9A51D3QP9A71DnUP9Q52D3UP9Q72DnYP9g53D3YP9g73DncP9w54D3cP9w74DngP+A55D3gP+A75DnkP+Q56D3kP+Q76DnoP+g57D3oP+g77DnsP+w58D3sP+w78DnwP/A59D3wP/A79Dn0P/Q5+D30P/Q7+Dn4P/g5/D34P/g7/Dn8P/w6AD38P/w4AD4APAA+BD4APAA8BD4EPAQ+CD4EPAQ8CD4IPAg+DD4IPAg8DD4MPAw+ED4MPAw8ED4QPBA+FD4QPBA8FD4UPBQ+GD4UPBQ8GD4YPBg+HD4YPBg8HD4cPBw+ID4cPBw8ID4gPCA+JD4gPCA8JD4kPCQ+KD4kPCQ8KD4oPCg+LD4oPCg8LD4sPCw+MD4sPCw8MD4wPDA+ND4wPDA8ND40PDQ+OD40PDQ8OD44PDg+PD44PDg8PD48PDw+QD48PDw8QD5APEA+RD5APEA8RD5EPEQ+SD5EPEQ8SD5IPEg+TD5IPEg8TD5MPEw+UD5MPEw8UD5QPFA+VD5QPFA8VD5UPFQ+WD5UPFQ8WD5YPFg+XD5YPFg8XD5cPFw+YD5cPFw8YD5gPGA+ZD5gPGA8ZD5kPGQ+aD5kPGQ8aD5oPGg+bD5oPGg8bD5sPGw+cD5sPGw8cD5wPHA+dD5wPHA8dD50PHQ+eD50PHg8fD58PHw+gD58PHw8gD6APIA+hD6APIA8hD6EPIQ+iD6EPIQ8iD6IPIg+jD6IPIg8jD6MPIw+kD6MPIw8kD6QPJA+lD6QPJA8lD6UPJQ+mD6UPJQ8mD6YPJg+nD6YPJg8nD6cPJw+oD6cPJw8oD6gPKA+pD6gPKA8pD6kPKQ+qD6kPKQ8qD6oPKg+rD6oPKg8rD6sPKw+sD6sPKw8sD6wPLA+tD6wPLA8tD60PLQ+uD60PLQ8uD64PLg+vD64PLg8vD68PLw+wD68PLw8wD7APMA+xD7APMA8xD7EPMQ+yD7EPMQ8yD7IPMg+zD7IPMg8zD7MPMw+0D7MPMw80D7QPNA+1D7QPNA81D7UPNQ+2D7UPNQ82D7YPNg+3D7YPNg83D7cPNw+4D7cPNw84D7gPOA+5D7gPOA85D7kPOQ+6D7kPOQ86D7oPOg+7D7oPOg87D7sPOw+8D7sPOw88D7wPPA+9D7wPPA89D70PPQ++D70PPQ8+D74PPg+/D74PPg8/D78PPw/AD78PPw9AD8APQA/BD8APQA9BD8EPQQ/CD8EPQQ9CD8IPQg/DD8IPQg9DD8MPQw/ED8MPQw9ED8QPRA/FD8QPRA9FD8UPRQ/GD8UPRQ9GD8YPRg/HD8YPRg9HD8cPRw/ID8cPRw9ID8gPSA/JD8gPSA9JD8kPSQ/KD8kPSQ9KD8oPSg/LD8oPSg9LD8sPSw/MD8sPSw9MD8wPTA/ND8wPTA9ND80PTQ/OD80PTQ9OD84PTg/PD84PTg9PD88PTw/QD88PTw9QD9APUA/RD9APUA9RD9EPUQ/SD9EPUQ9SD9IPUg/TD9IPUg9TD9MPUw/UD9MPUw9UD9QPVA/VD9QPVA9VD9UPVQ/WD9UPVQ9WD9YPVg/XD9YPVg9XD9cPVw/YD9cPVw9YD9gPWA/ZD9gPWA9ZD9kPWQ/aD9kPWQ9aD9oPWg/bD9oP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8Q/yD3IQ8g9zEHIQ8g/zD3MQ8w90EHMQ8w/0D3QQ9A91EHQQ9A/1D3UQ9Q92EHUQ9Q/2D3YQ9g93EHYQ9g/3D3cQ9w94EHcQ9w/4D3gQ+A95EHgQ+A/5D3kQ+Q96EHkQ+Q/6D3oQ+g97EHoQ+g/7D3sQ+w98EHsQ+w/8D3wQ/A99EHwQ/A/9D30Q/Q9+EH0Q/Q/+D34Q/g9/EH4Q/g//D38Q/w+AEH8Q/w8AEIAQABCBEIAQABABEIEQARCCEIEQARACEIIQAhCDEIIQAhADEIMQAxCEEIMQAxAEEIQQBBCFEIQQBBAFEIUQBRCGEIUQBRAGEIYQBhCHEIYQBhAHEIcQBxCIEIcQBxAIEIgQCBCJEIgQCBAJEIkQCRCKEIkQCRAKEIoQChCLEIoQChALEIsQCxCMEIsQCxAMEIwQDBCNEIwQDBANEI0QDRCOEI0QDRAOEI4QDhCPEI4QDhAPEI8QDxCQEI8QDxAQEJAQEBCREJAQEBAREJEQERCSEJEQERASEJIQEhCTEJIQEhATEJMQExCUEJMQExAUEJQQFBCVEJQQFBAVEJUQFRCWEJUQFRAWEJYQFhCXEJYQFhAXEJcQFxCYEJcQFxAYEJgQGBCZEJgQGBAZEJkQGRCaEJkQGRAaEJoQGhCbEJoQGhAbEJsQGxCcEJsQGxAcEJwQHBCdEJwQHBAdEJ0QHRCeEJ0QHRAeEJ4QHhCfEJ4QHhAfEJ8QHxCgEJ8QIBAhEKEQIRCiEKEQIRAiEKIQIhCjEKIQIhAjEKMQIxCkEKMQIxAkEKQQJBClEKQQJBAlEKUQJRCmEKUQJRAmEKYQJhCnEKYQJhAnEKcQJxCoEKcQJxAoEKgQKBCpEKgQKBApEKkQKRCqEKkQKRAqEKoQKhCrEKoQKhArEKsQKxCsEKsQKxAsEKwQLBCtEKwQLBAtEK0QLRCuEK0QLRAuEK4QLhCvEK4QLhAvEK8QLxCwEK8QLxAwELAQMBCxELAQMBAxELEQMRCyELEQMRAyELIQMhCzELIQMhAzELMQMxC0ELMQMxA0ELQQNBC1ELQQNBA1ELUQNRC2ELUQNRA2ELYQNhC3ELYQNhA3ELcQNxC4ELcQNxA4ELgQOBC5ELgQOBA5ELkQORC6ELkQORA6ELoQOhC7ELoQOhA7ELsQOxC8ELsQOxA8ELwQPBC9ELwQPBA9EL0QPRC+EL0QPRA+EL4QPhC/EL4QPhA/EL8QPxDAEL8QPxBAEMAQQBDBEMAQQBBBEMEQQRDCEMEQQRBCEMIQQhDDEMIQQhBDEMMQQxDEEMMQQxBEEMQQRBDFEMQQRBBFEMUQRRDGEMUQRRBGEMYQRhDHEMYQRhBHEMcQRxDIEMcQRxBIEMgQSBDJEMgQSBBJEMkQSRDKEMkQSRBKEMoQShDLEMoQShBLEMsQSxDMEMsQSxBMEMwQTBDNEMwQTBBNEM0QTRDOEM0QTRBOEM4QThDPEM4QThBPEM8QTxDQEM8QTxBQENAQUBDRENAQUBBRENEQURDSENEQURBSENIQUhDTENIQUhBTENMQUxDUENMQUxBUENQQVBDVENQQVBBVENUQVRDWENUQVRBWENYQVhDXENYQVhBXENcQVxDYENcQVxBYENgQWBDZENgQWBBZENkQWRDaENkQWRBaENoQWhDbENoQWhBbENsQWxDcENsQWxBcENwQXBDdENwQXBBdEN0QXRDeEN0QXRBeEN4QXhDfEN4QXhBfEN8QXxDgEN8QXxBgEOAQYBDhEOAQYBBhEOEQYRDiEOEQYRBiEOIQYhDjEOIQYhBjEOMQYxDkEOMQYxBkEOQQZBDlEOQQZBBlEOUQZRDmEOUQZRBmEOYQZhDnEOYQZhBnEOcQZxDoEOcQZxBoEOgQaBDpEOgQaBBpEOkQaRDqEOkQaRBqEOoQahDrEOoQahBrEOsQaxDsEOsQaxBsEOwQbBDtEOwQbBBtEO0QbRDuEO0QbRBuEO4QbhDvEO4QbhBvEO8QbxDwEO8QbxBwEPAQcBDxEPAQcBBxEPEQcRDyEPEQcRByEPIQchDzEPIQchBzEPMQcxD0EPMQcxB0EPQQdBD1EPQQdBB1EPUQdRD2EPUQdRB2EPYQdhD3EPYQdhB3EPcQdxD4EPcQdxB4EPgQeBD5EPgQeBB5EPkQeRD6EPkQeRB6EPoQehD7EPoQehB7EPsQexD8EPsQexB8EPwQfBD9EPwQfBB9EP0QfRD+EP0QfRB+EP4QfhD/EP4QfhB/EP8QfxAAEf8QfxCAEAARgBABEQARgBCBEAERgRACEQERgRCCEAIRghADEQIRghCDEAMRgxAEEQMRgxCEEAQRhBAFEQQRhBCFEAURhRAGEQURhRCGEAYRhhAHEQYRhhCHEAcRhxAIEQcRhxCIEAgRiBAJEQgR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axFsEewRbBHtEewRbBFtEe0RbRHuEe0RbRFuEe4RbhHvEe4RbhFvEe8RbxHwEe8RbxFwEfARcBHxEfARcBFxEfERcRHyEfERcRFyEfIRchHzEfIRchFzEfMRcxH0EfMRcxF0EfQRdBH1EfQRdBF1EfURdRH2EfURdRF2EfYRdhH3EfYRdhF3EfcRdxH4EfcRdxF4EfgReBH5EfgReBF5EfkReRH6EfkReRF6EfoRehH7EfoRehF7EfsRexH8EfsRexF8EfwRfBH9EfwRfBF9Ef0RfRH+Ef0RfRF+Ef4RfhH/Ef4RfhF/Ef8RfxEAEv8RfxGAEQASgBEBEgASgBGBEQESgRECEgESgRGCEQISghEDEgISghGDEQMSgxEEEgMSgxGEEQQShBEFEgQShBGFEQUShREGEgUShRGGEQYShhEHEgYShhGHEQcShxEIEgcShxGIEQgSiBEJEggSiBGJEQkSiREKEgkSiRGKEQoSihELEgoSihGLEQsSixEMEgsSixGMEQwSjBENEgwSjBGNEQ0SjREOEg0SjRGOEQ4SjhEPEg4SjhGPEQ8SjxEQEg8SjxGQERASkBEREhASkBGRERESkRESEhESkRGSERISkhETEhISkhGTERMSkxEUEhMSkxGUERQSlBEVEhQSlBGVERUSlREWEhUSlRGWERYSlhEXEhYSlhGXERcSlxEYEhcSlxGYERgSmBEZEhgSmBGZERkSmREaEhkSmRGaERoSmhEbEhoSmhGbERsSmxEcEhsSmxGcERwSnBEdEhwSnBGdER0SnREeEh0SnRGeER4SnhEfEh4SnhGfER8SnxEgEh8SnxGgESASoBEhEiASoBGhESESoREiEiESoRGiESISohEjEiISoxGkESQSpBElEiQSpBGlESUSpREmEiUSpRGmESYSphEnEiYSphGnEScSpxEoEicSpxGoESgSqBEpEigSqBGpESkSqREqEikSqRGqESoSqhErEioSqhGrESsSqxEsEisSqxGsESwSrBEtEiwSrBGtES0SrREuEi0SrRGuES4SrhEvEi4SrhGvES8SrxEwEi8SrxGwETASsBExEjASsBGxETESsREyEjESsRGyETISshEzEjISshGzETMSsxE0EjMSsxG0ETQStBE1EjQStBG1ETUStRE2EjUStRG2ETYSthE3EjYSthG3ETcStxE4EjcStxG4ETgSuBE5EjgSuBG5ETkSuRE6EjkSuRG6EToSuhE7EjoSuhG7ETsSuxE8EjsSuxG8ETwSvBE9EjwSvBG9ET0SvRE+Ej0SvRG+ET4SvhE/Ej4SvhG/ET8SvxFAEj8SvxHAEUASwBFBEkASwBHBEUESwRFCEkESwRHCEUISwhFDEkISwhHDEUMSwxFEEkMSwxHEEUQSxBFFEkQSxBHFEUUSxRFGEkUSxRHGEUYSxhFHEkYSxhHHEUcSxxFIEkcSxxHIEUgSyBFJEkgSyBHJEUkSyRFKEkkSyRHKEUoSyhFLEkoSyhHLEUsSyxFMEksSyxHMEUwSzBFNEkwSzBHNEU0SzRFOEk0SzRHOEU4SzhFPEk4SzhHPEU8SzxFQEk8SzxHQEVAS0BFRElAS0BHREVES0RFSElES0RHSEVIS0hFTElIS0hHTEVMS0xFUElMS0xHUEVQS1BFVElQS1BHVEVUS1RFWElUS1RHWEVYS1hFXElYS1hHXEVcS1xFYElcS1xHYEVgS2BFZElgS2BHZEVkS2RFaElkS2RHaEVoS2hFbEloS2hHbEVsS2xFcElsS2xHcEVwS3BFdElwS3BHdEV0S3RFeEl0S3RHeEV4S3hFfEl4S3hHfEV8S3xFgEl8S3xHgEWAS4BFhEmAS4BHhEWES4RFiEmES4RHiEWIS4hFjEmIS4hHjEWMS4xFkEmMS4xHkEWQS5BFlEmQS5BHlEWUS5RFmEmUS5RHmEWYS5hFnEmYS5hHnEWcS5xFoEmcS5xHoEWgS6BFpEmgS6BHpEWkS6RFqEmkS6RHqEWoS6hFrEmoS6hHrEWsS6xFsEmsS6xHsEWwS7BFtEmwS7BHtEW0S7RFuEm0S7RHuEW4S7hFvEm4S7hHvEW8S7xFwEm8S7xHwEXAS8BFxEnAS8BHxEXES8RFyEnES8RHyEXIS8hFzEnIS8hHzEXMS8xF0EnMS8xH0EXQS9BF1EnQS9BH1EXUS9RF2EnUS9RH2EXYS9hF3EnYS9hH3EXcS9xF4EncS9xH4EXgS+BF5EngS+BH5EXkS+RF6EnkS+RH6EXoS+hF7EnoS+hH7EXsS+xF8EnsS+xH8EXwS/BF9EnwS/BH9EX0S/RF+En0S/RH+EX4S/hF/En4S/hH/EX8S/xGAEn8S/xEAEoASABKBEoASABIBEoESARKCEoESARICEoISAhKDEoIS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ExQUFJQUFBSVFJQUFBQVFJUUFRSWFJUUFRQWFJYUFhSXFJYUFhQXFJcUFxSYFJcUFxQYFJgUGBSZFJgUGBQZFJkUGRSaFJkUGRQaFJoUGhSbFJoUGhQbFJsUGxScFJsUGxQcFJwUHBSdFJwUHBQdFJ0UHRSeFJ0UHRQeFJ4UHhSfFJ4UHhQfFJ8UHxSgFJ8UHxQgFKAUIBShFKAUIBQhFKEUIRSiFKEUIRQiFKIUIhSjFKIUIhQjFKMUIxSkFKMUIxQkFKQUJBSlFKQUJBQlFKUUJRSmFKUUJRQmFKYUJhSnFKYUJhQnFKcUJxSoFKcUKBQpFKkUKRSqFKkUKRQqFKoUKhSrFKoUKhQrFKsUKxSsFKsUKxQsFKwULBStFKwULBQtFK0ULRSuFK0ULRQuFK4ULhSvFK4ULhQvFK8ULxSwFK8ULxQwFLAUMBSxFLAUMBQxFLEUMRSyFLEUMRQyFLIUMhSzFLIUMhQzFLMUMxS0FLMUMxQ0FLQUNBS1FLQUNBQ1FLUUNRS2FLUUNRQ2FLYUNhS3FLYUNhQ3FLcUNxS4FLcUNxQ4FLgUOBS5FLgUOBQ5FLkUORS6FLkUORQ6FLoUOhS7FLoUOhQ7FLsUOxS8FLsUOxQ8FLwUPBS9FLwUPBQ9FL0UPRS+FL0UPRQ+FL4UPhS/FL4UPhQ/FL8UPxTAFL8UPxRAFMAUQBTBFMAUQBRBFMEUQRTCFMEUQRRCFMIUQhTDFMIUQhRDFMMUQxTEFMMUQxREFMQURBTFFMQURBRFFMUURRTGFMUURRRGFMYURhTHFMYURhRHFMcURxTIFMcURxRIFMgUSBTJFMgUSBRJFMkUSRTKFMkUSRRKFMoUShTLFMoUShRLFMsUSxTMFMsUSxRMFMwUTBTNFMwUTBRNFM0UTRTOFM0UTRROFM4UThTPFM4UThRPFM8UTxTQFM8UTxRQFNAUUBTRFNAUUBRRFNEUURTSFNEUURRSFNIUUhTTFNIUUhRTFNMUUxTUFNMUUxRUFNQUVBTVFNQUVBRVFNUUVRTWFNUUVRRWFNYUVhTXFNYUVhRXFNcUVxTYFNcUVxRYFNgUWBTZFNgUWBRZFNkUWRTaFNkUWRRaFNoUWhTbFNoUWhRbFNsUWxTcFNsUWxRcFNwUXBTdFNwUXBRdFN0UXRTeFN0UXRReFN4UXhTfFN4UXhRfFN8UXxTgFN8UXxRgFOAUYBThFOAUYBRhFOEUYRTiFOEUYRRiFOIUYhTjFOIUYhRjFOMUYxTkFOMUYxRkFOQUZBTlFOQUZBRlFOUUZRTmFOUUZRRmFOYUZhTnFOYUZhRnFOcUZxToFOcUZxRoFOgUaBTpFOgUaBRpFOkUaRTqFOkUaRRqFOoUahTrFOoUahRrFOsUaxTsFOsUaxRsFOwUbBTtFOwUbBRtFO0UbRTuFO0UbRRuFO4UbhTvFO4UbhRvFO8UbxTwFO8UbxRwFPAUcBTxFPAUcBRxFPEUcRTyFPEUcRRyFPIUchTzFPIUchRzFPMUcxT0FPMUcxR0FPQUdBT1FPQUdBR1FPUUdRT2FPUUdRR2FPYUdhT3FPYUdhR3FPcUdxT4FPcUdxR4FPgUeBT5FPgUeBR5FPkUeRT6FPkUeRR6FPoUehT7FPoUehR7FPsUexT8FPsUexR8FPwUfBT9FPwUfBR9FP0UfRT+FP0UfRR+FP4UfhT/FP4UfhR/FP8UfxQAFf8UfxSAFAAVgBQBFQAVgBSBFAEVgRQCFQEVgRSCFAIVghQDFQIVghSDFAMVgxQEFQMVgxSEFAQVhBQFFQQVhBSFFAUVhRQGFQUVhRSGFAYVhhQHFQYVhhSHFAcVhxQIFQcVhxSIFAgViBQJFQgViBSJFAkViRQKFQkViRSKFAoVihQLFQoVihSLFAsVixQMFQsVixSMFAwVjBQNFQwVjBSNFA0VjRQOFQ0VjRSOFA4VjhQPFQ4VjhSPFA8VjxQQFQ8VjxSQFBAVkBQRFRAVkBSRFBEVkRQSFREVkRSSFBIVkhQTFRIVkhSTFBMVkxQUFRMVkxSUFBQVlBQVFRQVlBSVFBUVlRQWFRUVlRSWFBYVlhQXFRYVlhSXFBcVlxQYFRcVlxSYFBgVmBQZFRgVmBSZFBkVmRQaFRkVmRSaFBoVmhQbFRoVmhSbFBsVmxQcFRsVmxScFBwVnBQdFRwVnBSdFB0VnRQeFR0VnRSeFB4VnhQfFR4VnhSfFB8VnxQgFR8VnxSgFCAVoBQhFSAVoBShFCEVoRQiFSEVoRSiFCIVohQjFSIVohSjFCMVoxQkFSMVoxSkFCQVpBQlFSQVpBSlFCUVpRQmFSUVpRSmFCYVphQnFSYVphSnFCcVpxQoFScVpxSoFCgVqBQpFSgVqRSqFCoVqhQrFSoVqhSrFCsVqxQsFSsVqxSsFCwVrBQtFSwVrBStFC0VrRQuFS0VrRSuFC4VrhQvFS4VrhSvFC8VrxQwFS8VrxSwFDAVsBQxFTAVsBSxFDEVsRQyFTEVsRSyFDIVshQzFTIVshSzFDMVsxQ0FTMVsxS0FDQVtBQ1FTQVtBS1FDUVtRQ2FTUVtRS2FDYVthQ3FTYVthS3FDcVtxQ4FTcVtxS4FDgVuBQ5FTgVuBS5FDkVuRQ6FTkVuRS6FDoVuhQ7FToVuhS7FDsVuxQ8FTsVuxS8FDwVvBQ9FTwVvBS9FD0VvRQ+FT0VvRS+FD4VvhQ/FT4VvhS/FD8VvxRAFT8VvxTAFEAVwBRBFUAVwBTBFEEVwRRCFUEVwRTCFEIVwhRDFUIVwhTDFEMVwxREFUMVwxTEFEQVxBRFFUQVxBTFFEUVxRRGFUUVxRTGFEYVxhRHFUYVxhTHFEcVxxRIFUcVxxTIFEgVyBRJFUgVyBTJFEkVyRRKFUkVyRTKFEoVyhRLFUoVyhTLFEsVyxRMFUsVyxTMFEwVzBRNFUwVzBTNFE0VzRROFU0VzRTOFE4VzhRPFU4VzhTPFE8VzxRQFU8VzxTQFFAV0BRRFVAV0BTRFFEV0RRSFVEV0RTSFFIV0hRTFVIV0hTTFFMV0xRUFVMV0xTUFFQV1BRVFVQV1BTVFFUV1RRWFVUV1RTWFFYV1hRXFVYV1hTXFFcV1xRYFVcV1xTYFFgV2BRZFVgV2BTZFFkV2RRaFVkV2RTaFFoV2hRbFVoV2hTbFFsV2xRcFVsV2xTcFFwV3BRdFVwV3BTdFF0V3RReFV0V3RTeFF4V3hRfFV4V3hTfFF8V3xRgFV8V3xTgFGAV4BRhFWAV4BThFGEV4RRiFWEV4RTiFGIV4hRjFWIV4hTjFGMV4xRkFWMV4xTkFGQV5BRlFWQV5BTlFGUV5RRmFWUV5RTmFGYV5hRnFWYV5hTnFGcV5xRoFWcV5xToFGgV6BRpFWgV6BTpFGkV6RRqFWkV6RTqFGoV6hRrFWoV6hTrFGsV6xRsFWsV6xTsFGwV7BRtFWwV7BTtFG0V7RRuFW0V7RTuFG4V7hRvFW4V7hTvFG8V7xRwFW8V7xTwFHAV8BRxFXAV8BTxFHEV8RRyFXEV8RTyFHIV8hRzFXIV8hTzFHMV8xR0FXMV8xT0FHQV9BR1FXQV9BT1FHUV9RR2FXUV9RT2FHYV9hR3FXYV9hT3FHcV9xR4FXcV9xT4FHgV+BR5FXgV+BT5FHkV+RR6FXkV+RT6FHoV+hR7FXoV+hT7FHsV+xR8FXsV+xT8FHwV/BR9FXwV/BT9FH0V/RR+FX0V/RT+FH4V/hR/FX4V/hT/FH8V/xSAFX8V/xQAFYAVABWBFYAVABUBFYEVARWCFYEVARUCFYIVAhWDFYIVAhUDFYMVAxWEFYMVAxUEFYQVBBWFFYQVBBUFFYUVBRWGFYUVBRUGFYYVBhWHFYYVBhUHFYcVBxWIFYcVBxUIFYgVCBWJFYgVCBUJFYkVCRWKFYkVCRUKFYoVChWLFYoVChULFYsVCxWMFYsVCxUMFYwVDBWNFYwVDBUNFY0VDRWOFY0VDRUOFY4VDhWPFY4VDhUPFY8VDxWQFY8VDxUQFZAVEBWRFZAVEBURFZEVERWSFZEVERUSFZIVEhWTFZIVEhUTFZMVExWUFZMVExUUFZQVFBWVFZQVFBUVFZUVFRWWFZUVFRUWFZYVFhWXFZYVFhUXFZcVFxWYFZcVFxUYFZgVGBWZFZgVGBUZFZkVGRWaFZkVGRUaFZoVGhWbFZoVGhUbFZsVGxWcFZsVGxUcFZwVHBWdFZwVHBUdFZ0VHRWeFZ0VHRUeFZ4VHhWfFZ4VHhUfFZ8VHxWgFZ8VHxUgFaAVIBWhFaAVIBUhFaEVIRWiFaEVIRUiFaIVIhWjFaIVIhUjFaMVIxWkFaMVIxUkFaQVJBWlFaQVJBUlFaUVJRWmFaUVJRUmFaYVJhWnFaYVJhUnFacVJxWoFacVJxUoFagVKBWpFagVKBUpFakVKRWqFakVKhUrFasVKxWsFasVKxUsFawVLBWtFawVLBUtFa0VLRWuFa0VLRUuFa4VLhWvFa4VLhUvFa8VLxWwFa8VLxUwFbAVMBWxFbAVMBUxFbEVMRWyFbEVMRUyFbIVMhWzFbIVMhUzFbMVMxW0FbMVMxU0FbQVNBW1FbQVNBU1FbUVNRW2FbUVNRU2FbYVNhW3FbYVNhU3FbcVNxW4FbcVNxU4FbgVOBW5FbgVOBU5FbkVORW6FbkVORU6FboVOhW7FboVOhU7FbsVOxW8FbsVOxU8FbwVPBW9FbwVPBU9Fb0VPRW+Fb0VPRU+Fb4VPhW/Fb4VPhU/Fb8VPxXAFb8VPxVAFcAVQBXBFcAVQBVBFcEVQRXCFcEVQRVCFcIVQhXDFcIVQhVDFcMVQxXEFcMVQxVEFcQVRBXFFcQVRBVFFcUVRRXGFcUVRRVGFcYVRhXHFcYVRhVHFccVRxXIFccVRxVIFcgVSBXJFcgVSBVJFckVSRXKFckVSRVKFcoVShXLFcoVShVLFcsVSxXMFcsVSxVMFcwVTBXNFcwVTBVNFc0VTRXOFc0VTRVOFc4VThXPFc4VThVPFc8VTxXQFc8VTxVQFdAVUBXRFdAVUBVRFdEVURXSFdEVURVSFdIVUhXTFdIVUhVTFdMVUxXUFdMVUxVUFdQVVBXVFdQVVBVVFdUVVRXWFdUVVRVWFdYVVhXXFdYVVhVXFdcVVxXYFdcVVxVYFdgVWBXZFdgVWBVZFdkVWRXaFdkVWRVaFdoVWhXbFdoVWhVbFdsVWxXcFdsVWxVcFdwVXBXdFdwVXBVdFd0VXRXeFd0VXRVeFd4VXhXfFd4VXhVfFd8VXxXgFd8VXxVgFeAVYBXhFeAVYBVhFeEVYRXiFeEVYRViFeIVYhXjFeIVYhVjFeMVYxXkFeMVYxVkFeQVZBXlFeQVZBVlFeUVZRXmFeUVZRVmFeYVZhXnFeYVZhVnFecVZxXoFecVZxVoFegVaBXpFegVaBVpFekVaRXqFekVaRVqFeoVahXrFeoVahVrFesVaxXsFesVaxVsFewVbBXtFewVbBVtFe0VbRXuFe0VbRVuFe4VbhXvFe4VbhVvFe8VbxXwFe8VbxVwFfAVcBXxFfAVcBVxFfEVcRXyFfEVcRVyFfIVchXzFfIVchVzFfMVcxX0FfMVcxV0FfQVdBX1FfQVdBV1FfUVdRX2FfUVdRV2FfYVdhX3FfYVdhV3FfcVdxX4FfcVdxV4FfgVeBX5FfgVeBV5FfkVeRX6FfkVeRV6FfoVehX7FfoVehV7FfsVexX8FfsVexV8FfwVfBX9FfwVfBV9Ff0VfRX+Ff0VfRV+Ff4VfhX/Ff4VfhV/Ff8VfxUAFv8VfxWAFQAWgBUBFgAWgBWBFQEWgRUCFgEWgRWCFQIWghUDFgIWghWDFQMWgxUEFgMWgxWEFQQWhBUFFgQWhBWFFQUWhRUGFgUWhRWGFQYWhhUHFgYWhhWHFQcWhxUIFgcWhxWIFQgWiBUJFggWiBWJFQkWiRUKFgkWiRWKFQoWihULFgoWihWLFQsWixUMFgsWixWMFQwWjBUNFgwWjBWNFQ0WjRUOFg0WjRWOFQ4WjhUPFg4WjhWPFQ8WjxUQFg8WjxWQFRAWkBURFhAWkBWRFREWkRUSFhEWkRWSFRIWkhUTFhIWkhWTFRMWkxUUFhMWkxWUFRQWlBUVFhQWlBWVFRUWlRUWFhUWlRWWFRYWlhUXFhYWlhWXFRcWlxUYFhcWlxWYFRgWmBUZFhgWmBWZFRkWmRUaFhkWmRWaFRoWmhUbFhoWmhWbFRsWmxUcFhsWmxWcFRwWnBUdFhwWnBWdFR0WnRUeFh0WnRWeFR4WnhUfFh4WnhWfFR8WnxUgFh8WnxWgFSAWoBUhFiAWoBWhFSEWoRUiFiEWoRWiFSIWohUjFiIWohWjFSMWoxUkFiMWoxWkFSQWpBUlFiQWpBWlFSUWpRUmFiUWpRWmFSYWphUnFiYWphWnFScWpxUoFicWpxWoFSgWqBUpFigWqBWpFSkWqRUqFikWqRWqFSoWqhUrFioWqxWsFSwWrBUtFiwWrBWtFS0WrRUuFi0WrRWuFS4WrhUvFi4WrhWvFS8WrxUwFi8WrxWwFTAWsBUxFjAWsBWxFTEWsRUyFjEWsRWyFTIWshUzFjIWshWzFTMWsxU0FjMWsxW0FTQWtBU1FjQWtBW1FTUWtRU2FjUWtRW2FTYWthU3FjYWthW3FTcWtxU4FjcWtxW4FTgWuBU5FjgWuBW5FTkWuRU6FjkWuRW6FToWuhU7FjoWuhW7FTsWuxU8FjsWuxW8FTwWvBU9FjwWvBW9FT0WvRU+Fj0WvRW+FT4WvhU/Fj4WvhW/FT8WvxVAFj8WvxXAFUAWwBVBFkAWwBXBFUEWwRVCFkEWwRXCFUIWwhVDFkIWwhXDFUMWwxVEFkMWwxXEFUQWxBVFFkQWxBXFFUUWxRVGFkUWxRXGFUYWxhVHFkYWxhXHFUcWxxVIFkcWxxXIFUgWyBVJFkgWyBXJFUkWyRVKFkkWyRXKFUoWyhVLFkoWyhXLFUsWyxVMFksWyxXMFUwWzBVNFkwWzBXNFU0WzRVOFk0WzRXOFU4WzhVPFk4WzhXPFU8WzxVQFk8WzxXQFVAW0BVRFlAW0BXRFVEW0RVSFlEW0RXSFVIW0hVTFlIW0hXTFVMW0xVUFlMW0xXUFVQW1BVVFlQW1BXVFVUW1RVWFlUW1RXWFVYW1hVXFlYW1hXXFVcW1xVYFlcW1xXYFVgW2BVZFlgW2BXZFVkW2RVaFlkW2RXaFVoW2hVbFloW2hXbFVsW2xVcFlsW2xXcFVwW3BVdFlwW3BXdFV0W3RVeFl0W3RXeFV4W3hVfFl4W3hXfFV8W3xVgFl8W3xXgFWAW4BVhFmAW4BXhFWEW4RViFmEW4RXiFWIW4hVjFmIW4hXjFWMW4xVkFmMW4xXkFWQW5BVlFmQW5BXlFWUW5RVmFmUW5RXmFWYW5hVnFmYW5hXnFWcW5xVoFmcW5xXoFWgW6BVpFmgW6BXpFWkW6RVqFmkW6RXqFWoW6hVrFmoW6hXrFWsW6xVsFmsW6xXsFWwW7BVtFmwW7BXtFW0W7RVuFm0W7RXuFW4W7hVvFm4W7hXvFW8W7xVwFm8W7xXwFXAW8BVxFnAW8BXxFXEW8RVyFnEW8RXyFXIW8hVzFnIW8hXzFXMW8xV0FnMW8xX0FXQW9BV1FnQW9BX1FXUW9RV2FnUW9RX2FXYW9hV3FnYW9hX3FXcW9xV4FncW9xX4FXgW+BV5FngW+BX5FXkW+RV6FnkW+RX6FXoW+hV7FnoW+hX7FXsW+xV8FnsW+xX8FXwW/BV9FnwW/BX9FX0W/RV+Fn0W/RX+FX4W/hV/Fn4W/hX/FX8W/xWAFn8W/xUAFoAWABaBFoAWABYBFoEWARaCFoEWARYCFoIWAhaDFoIWAhYDFoMWAxaEFoMWAxYEFoQWBBaFFoQWBBYFFoUWBRaGFoUWBRYGFoYWBhaHFoYWBhYHFocWBxaIFocWBxYIFogWCBaJFogWCBYJFokWCRaKFokWCRYKFooWChaLFooWChYLFosWCxaMFosWCxYMFowWDBaNFowWDBYNFo0WDRaOFo0WDRYOFo4WDhaPFo4WDhYPFo8WDxaQFo8WDxYQFpAWEBaRFpAWEBYRFpEWERaSFpEWERYSFpIWEhaTFpIWEhYTFpMWExaUFpMWExYUFpQWFBaVFpQWFBYVFpUWFRaWFpUWFRYWFpYWFhaXFpYWFhYXFpcWFxaYFpcWFxYYFpgWGBaZFpgWGBYZFpkWGRaaFpkWGRYaFpoWGhabFpoWGhYbFpsWGxacFpsWGxYcFpwWHBadFpwWHBYdFp0WHRaeFp0WHRYeFp4WHhafFp4WHhYfFp8WHxagFp8WHxYgFqAWIBahFqAWIBYhFqEWIRaiFqEWIRYiFqIWIhajFqIWIhYjFqMWIxakFqMWIxYkFqQWJBalFqQWJBYlFqUWJRamFqUWJRYmFqYWJhanFqYWJhYnFqcWJxaoFqcWJxYoFqgWKBapFqgWKBYpFqkWKRaqFqkWKRYqFqoWKharFqoWKhYrFqsWKxasFqsWLBYtFq0WLRauFq0WLRYuFq4WLhavFq4WLhYvFq8WLxawFq8WLxYwFrAWMBaxFrAWMBYxFrEWMRayFrEWMRYyFrIWMhazFrIWMhYzFrMWMxa0FrMWMxY0FrQWNBa1FrQWNBY1FrUWNRa2FrUWNRY2FrYWNha3FrYWNhY3FrcWNxa4FrcWNxY4FrgWOBa5FrgWOBY5FrkWORa6FrkWORY6FroWOha7FroWOhY7FrsWOxa8FrsWOxY8FrwWPBa9FrwWPBY9Fr0WPRa+Fr0WPRY+Fr4WPha/Fr4WPhY/Fr8WPxbAFr8WPxZAFsAWQBbBFsAWQBZBFsEWQRbCFsEWQRZCFsIWQhbDFsIWQhZDFsMWQxbEFsMWQxZEFsQWRBbFFsQWRBZFFsUWRRbGFsUWRRZGFsYWRhbHFsYWRhZHFscWRxbIFscWRxZIFsgWSBbJFsgWSBZJFskWSRbKFskWSRZKFsoWShbLFsoWShZLFssWSxbMFssWSxZMFswWTBbNFswWTBZNFs0WTRbOFs0WTRZOFs4WThbPFs4WThZPFs8WTxbQFs8WTxZQFtAWUBbRFtAWUBZRFtEWURbSFtEWURZSFtIWUhbTFtIWUhZTFtMWUxbUFtMWUxZUFtQWVBbVFtQWVBZVFtUWVRbWFtUWVRZWFtYWVhbXFtYWVhZXFtcWVxbYFtcWVxZYFtgWWBbZFtgWWBZZFtkWWRbaFtkWWRZaFtoWWhbbFtoWWhZbFtsWWxbcFtsWWxZcFtwWXBbdFtwWXBZdFt0WXRbeFt0WXRZeFt4WXhbfFt4WXhZfFt8WXxbgFt8WXxZgFuAWYBbhFuAWYBZhFuEWYRbiFuEWYRZiFuIWYhbjFuIWYhZjFuMWYxbkFuMWYxZkFuQWZBblFuQWZBZlFuUWZRbmFuUWZRZmFuYWZhbnFuYWZhZnFucWZxboFucWZxZoFugWaBbpFugWaBZpFukWaRbqFukWaRZqFuoWahbrFuoWahZrFusWaxbsFusWaxZsFuwWbBbtFuwWbBZtFu0WbRbuFu0WbRZuFu4WbhbvFu4WbhZvFu8WbxbwFu8WbxZwFvAWcBbxFvAWcBZxFvEWcRbyFvEWcRZyFvIWchbzFvIWchZzFvMWcxb0FvMWcxZ0FvQWdBb1FvQWdBZ1FvUWdRb2FvUWdRZ2FvYWdhb3FvYWdhZ3FvcWdxb4FvcWdxZ4FvgWeBb5FvgWeBZ5FvkWeRb6FvkWeRZ6FvoWehb7FvoWehZ7FvsWexb8FvsWexZ8FvwWfBb9FvwWfBZ9Fv0WfRb+Fv0WfRZ+Fv4Wfhb/Fv4WfhZ/Fv8WfxYAF/8WfxaAFgAXgBYBFwAXgBaBFgEXgRYCFwEXgRaCFgIXghYDFwIXghaDFgMXgxYEFwMXgxaEFgQXhBYFFwQXhBaFFgUXhRYGFwUXhRaGFgYXhhYHFwYXhhaHFgcXhxYIFwcXhxaIFggXiBYJFwgXiBaJFgkXiRYKFwkXiRaKFgoXihYLFwoXihaLFgsXixYMFwsXixaMFgwXjBYNFwwXjBaNFg0XjRYOFw0XjRaOFg4XjhYPFw4XjhaPFg8XjxYQFw8XjxaQFhAXkBYRFxAXkBaRFhEXkRYSFxEXkRaSFhIXkhYTFxIXkhaTFhMXkxYUFxMXkxaUFhQXlBYVFxQXlBaVFhUXlRYWFxUXlRaWFhYXlhYXFxYXlhaXFhcXlxYYFxcXlxaYFhgXmBYZFxgXmBaZFhkXmRYaFxkXmRaaFhoXmhYbFxoXmhabFhsXmxYcFxsXmxacFhwXnBYdFxwXnBadFh0XnRYeFx0XnRaeFh4XnhYfFx4XnhafFh8XnxYgFx8XnxagFiAXoBYhFyAXoBahFiEXoRYiFyEXoRaiFiIXohYjFyIXohajFiMXoxYkFyMXoxakFiQXpBYlFyQXpBalFiUXpRYmFyUXpRamFiYXphYnFyYXphanFicXpxYoFycXpxaoFigXqBYpFygXqBapFikXqRYqFykXqRaqFioXqhYrFyoXqharFisXqxYsFysXqxasFiwXrBYtFywXrRauFi4XrhYvFy4XrhavFi8XrxYwFy8XrxawFjAXsBYxFzAXsBaxFjEXsRYyFzEXsRayFjIXshYzFzIXshazFjMXsxY0FzMXsxa0FjQXtBY1FzQXtBa1FjUXtRY2FzUXtRa2FjYXthY3FzYXtha3FjcXtxY4FzcXtxa4FjgXuBY5FzgXuBa5FjkXuRY6FzkXuRa6FjoXuhY7FzoXuha7FjsXuxY8FzsXuxa8FjwXvBY9FzwXvBa9Fj0XvRY+Fz0XvRa+Fj4XvhY/Fz4Xvha/Fj8XvxZAFz8XvxbAFkAXwBZBF0AXwBbBFkEXwRZCF0EXwRbCFkIXwhZDF0IXwhbDFkMXwxZEF0MXwxbEFkQXxBZFF0QXxBbFFkUXxRZGF0UXxRbGFkYXxhZHF0YXxhbHFkcXxxZIF0cXxxbIFkgXyBZJF0gXyBbJFkkXyRZKF0kXyRbKFkoXyhZLF0oXyhbLFksXyxZMF0sXyxbMFkwXzBZNF0wXzBbNFk0XzRZOF00XzRbOFk4XzhZPF04XzhbPFk8XzxZQF08XzxbQFlAX0BZRF1AX0BbRFlEX0RZSF1EX0RbSFlIX0hZTF1IX0hbTFlMX0xZUF1MX0xbUFlQX1BZVF1QX1BbVFlUX1RZWF1UX1RbWFlYX1hZXF1YX1hbXFlcX1xZYF1cX1xbYFlgX2BZZF1gX2BbZFlkX2RZaF1kX2RbaFloX2hZbF1oX2hbbFlsX2xZcF1sX2xbcFlwX3BZdF1wX3BbdFl0X3RZeF10X3RbeFl4X3hZfF14X3hbfFl8X3xZgF18X3xbgFmAX4BZhF2AX4BbhFmEX4RZiF2EX4RbiFmIX4hZjF2IX4hbjFmMX4xZkF2MX4xbkFmQX5BZlF2QX5BblFmUX5RZmF2UX5RbmFmYX5hZnF2YX5hbnFmcX5xZoF2cX5xboFmgX6BZpF2gX6BbpFmkX6RZqF2kX6RbqFmoX6hZrF2oX6hbrFmsX6xZsF2sX6xbsFmwX7BZtF2wX7BbtFm0X7RZuF20X7RbuFm4X7hZvF24X7hbvFm8X7xZwF28X7xbwFnAX8BZxF3AX8BbxFnEX8RZyF3EX8RbyFnIX8hZzF3IX8hbzFnMX8xZ0F3MX8xb0FnQX9BZ1F3QX9Bb1FnUX9RZ2F3UX9Rb2FnYX9hZ3F3YX9hb3FncX9xZ4F3cX9xb4FngX+BZ5F3gX+Bb5FnkX+RZ6F3kX+Rb6FnoX+hZ7F3oX+hb7FnsX+xZ8F3sX+xb8FnwX/BZ9F3wX/Bb9Fn0X/RZ+F30X/Rb+Fn4X/hZ/F34X/hb/Fn8X/xaAF38X/xYAF4AXABeBF4AXABcBF4EXAReCF4EXARcCF4IXAheDF4IXAhcDF4MXAxeEF4MXAxcEF4QXBBeFF4QXBBcFF4UXBReGF4UXBRcGF4YXBheHF4YXBhcHF4cXBxeIF4cXBxcIF4gXCBeJF4gXCBcJF4kXCReKF4kXCRcKF4oXCheLF4oXChcLF4sXCxeMF4sXCxcMF4wXDBeNF4wXDBcNF40XDReOF40XDRcOF44XDhePF44XDhcPF48XDxeQF48XDxcQF5AXEBeRF5AXEBcRF5EXEReSF5EXERcSF5IXEheTF5IXEhcTF5MXExeUF5MXExcUF5QXFBeVF5QXFBcVF5UXFReWF5UXFRcWF5YXFheXF5YXFhcXF5cXFxeYF5cXFxcYF5gXGBeZF5gXGBcZF5kXGReaF5kXGRcaF5oXGhebF5oXGhcbF5sXGxecF5sXGxccF5wXHBedF5wXHBcdF50XHReeF50XHRceF54XHhefF54XHhcfF58XHxegF58XHxcgF6AXIBehF6AXIBchF6EXIReiF6EXIRciF6IXIhejF6IXIhcjF6MXIxekF6MXIxckF6QXJBelF6QXJBclF6UXJRemF6UXJRcmF6YXJhenF6YXJhcnF6cXJxeoF6cXJxcoF6gXKBepF6gXKBcpF6kXKReqF6kXKRcqF6oXKherF6oXKhcrF6sXKxesF6sXKxcsF6wXLBetF6wXLBctF60XLReuF60XLhcvF68XLxewF68XLxcwF7AXMBexF7AXMBcxF7EXMReyF7EXMRcyF7IXMhezF7IXMhczF7MXMxe0F7MXMxc0F7QXNBe1F7QXNBc1F7UXNRe2F7UXNRc2F7YXNhe3F7YXNhc3F7cXNxe4F7cXNxc4F7gXOBe5F7gXOBc5F7kXORe6F7kXORc6F7oXOhe7F7oXOhc7F7sXOxe8F7sXOxc8F7wXPBe9F7wXPBc9F70XPRe+F70XPRc+F74XPhe/F74XPhc/F78XPxfAF78XPxdAF8AXQBfBF8AXQBdBF8EXQRfCF8EXQRdCF8IXQhfDF8IXQhdDF8MXQxfEF8MXQxdEF8QXRBfFF8QXRBdFF8UXRRfGF8UXRRdGF8YXRhfHF8YXRhdHF8cXRxfIF8cXRxdIF8gXSBfJF8gXSBdJF8kXSRfKF8kXSRdKF8oXShfLF8oXShdLF8sXSxfMF8sXSxdMF8wXTBfNF8wXTBdNF80XTRfOF80XTRdOF84XThfPF84XThdPF88XTxfQF88XTxdQF9AXUBfRF9AXUBdRF9EXURfSF9EXURdSF9IXUhfTF9IXUhdTF9MXUxfUF9MXUxdUF9QXVBfVF9QXVBdVF9UXVRfWF9UXVRdWF9YXVhfXF9YXVhdXF9cXVxfYF9cXVxdYF9gXWBfZF9gXWBdZF9kXWRfaF9kXWRdaF9oXWhfbF9oXWhdbF9sXWxfcF9sXWxdcF9wXXBfdF9wXXBddF90XXRfeF90XXRdeF94XXhffF94XXhdfF98XXxfgF98XXxdgF+AXYBfhF+AXYBdhF+EXYRfiF+EXYRdiF+IXYhfjF+IXYhdjF+MXYxfkF+MXYxdkF+QXZBflF+QXZBdlF+UXZRfmF+UXZRdmF+YXZhfnF+YXZhdnF+cXZxfoF+cXZxdoF+gXaBfpF+gXaBdpF+kXaRfqF+kXaRdqF+oXahfrF+oXahdrF+sXaxfsF+sXaxdsF+wXbBftF+wXbBdtF+0XbRfuF+0XbRduF+4XbhfvF+4XbhdvF+8XbxfwF+8XbxdwF/AXcBfxF/AXcBdxF/EXcRfyF/EXcRdyF/IXchfzF/IXchdzF/MXcxf0F/MXcxd0F/QXdBf1F/QXdBd1F/UXdRf2F/UXdRd2F/YXdhf3F/YXdhd3F/cXdxf4F/cXdxd4F/gXeBf5F/gXeBd5F/kXeRf6F/kXeRd6F/oXehf7F/oXehd7F/sXexf8F/sXexd8F/wXfBf9F/wXfBd9F/0XfRf+F/0XfRd+F/4Xfhf/F/4Xfhd/F/8XfxcAGP8XfxeAFwAYgBcBGAAYgBeBFwEYgRcCGAEYgReCFwIYghcDGAIYgheDFwMYgxcEGAMYgxeEFwQYhBcFGAQYhBeFFwUYhRcGGAUYhReGFwYYhhcHGAYYhheHFwcYhxcIGAcYhxeIFwgYiBcJGAgYiBeJFwkYiRcKGAkYiReKFwoYihcLGAoYiheLFwsYixcMGAsYixeMFwwYjBcNGAwYjBeNFw0YjRcOGA0YjReOFw4YjhcPGA4YjhePFw8YjxcQGA8YjxeQFxAYkBcRGBAYkBeRFxEYkRcSGBEYkReSFxIYkhcTGBIYkheTFxMYkxcUGBMYkxeUFxQYlBcVGBQYlBeVFxUYlRcWGBUYlReWFxYYlhcXGBYYlheXFxcYlxcYGBcYlxeYFxgYmBcZGBgYmBeZFxkYmRcaGBkYmReaFxoYmhcbGBoYmhebFxsYmxccGBsYmxecFxwYnBcdGBwYnBedFx0YnRceGB0YnReeFx4YnhcfGB4YnhefFx8YnxcgGB8YnxegFyAYoBchGCAYoBehFyEYoRciGCEYoReiFyIYohcjGCIYohejFyMYoxckGCMYoxekFyQYpBclGCQYpBelFyUYpRcmGCUYpRemFyYYphcnGCYYphenFycYpxcoGCcYpxeoFygYqBcpGCgYqBepFykYqRcqGCkYqReqFyoYqhcrGCoYqherFysYqxcsGCsYqxesFywYrBctGCwYrBetFy0YrRcuGC0YrReuFy4YrhcvGC4YrxewFzAYsBcxGDAYsBexFzEYsRcyGDEYsReyFzIYshczGDIYshezFzMYsxc0GDMYsxe0FzQYtBc1GDQYtBe1FzUYtRc2GDUYtRe2FzYYthc3GDYYthe3FzcYtxc4GDcYtxe4FzgYuBc5GDgYuBe5FzkYuRc6GDkYuRe6FzoYuhc7GDoYuhe7FzsYuxc8GDsYuxe8FzwYvBc9GDwYvBe9Fz0YvRc+GD0YvRe+Fz4Yvhc/GD4Yvhe/Fz8YvxdAGD8YvxfAF0AYwBdBGEAYwBfBF0EYwRdCGEEYwRfCF0IYwhdDGEIYwhfDF0MYwxdEGEMYwxfEF0QYxBdFGEQYxBfFF0UYxRdGGEUYxRfGF0YYxhdHGEYYxhfHF0cYxxdIGEcYxxfIF0gYyBdJGEgYyBfJF0kYyRdKGEkYyRfKF0oYyhdLGEoYyhfLF0sYyxdMGEsYyxfMF0wYzBdNGEwYzBfNF00YzRdOGE0YzRfOF04YzhdPGE4YzhfPF08YzxdQGE8YzxfQF1AY0BdRGFAY0BfRF1EY0RdSGFEY0RfSF1IY0hdTGFIY0hfTF1MY0xdUGFMY0xfUF1QY1BdVGFQY1BfVF1UY1RdWGFUY1RfWF1YY1hdXGFYY1hfXF1cY1xdYGFcY1xfYF1gY2BdZGFgY2BfZF1kY2RdaGFkY2RfaF1oY2hdbGFoY2hfbF1sY2xdcGFsY2xfcF1wY3BddGFwY3BfdF10Y3RdeGF0Y3RfeF14Y3hdfGF4Y3hffF18Y3xdgGF8Y3xfgF2AY4BdhGGAY4BfhF2EY4RdiGGEY4RfiF2IY4hdjGGIY4hfjF2MY4xdkGGMY4xfkF2QY5BdlGGQY5BflF2UY5RdmGGUY5RfmF2YY5hdnGGYY5hfnF2cY5xdoGGcY5xfoF2gY6BdpGGgY6BfpF2kY6RdqGGkY6RfqF2oY6hdrGGoY6hfrF2sY6xdsGGsY6xfsF2wY7BdtGGwY7BftF20Y7RduGG0Y7RfuF24Y7hdvGG4Y7hfvF28Y7xdwGG8Y7xfwF3AY8BdxGHAY8BfxF3EY8RdyGHEY8RfyF3IY8hdzGHIY8hfzF3MY8xd0GHMY8xf0F3QY9Bd1GHQY9Bf1F3UY9Rd2GHUY9Rf2F3YY9hd3GHYY9hf3F3cY9xd4GHcY9xf4F3gY+Bd5GHgY+Bf5F3kY+Rd6GHkY+Rf6F3oY+hd7GHoY+hf7F3sY+xd8GHsY+xf8F3wY/Bd9GHwY/Bf9F30Y/Rd+GH0Y/Rf+F34Y/hd/GH4Y/hf/F38Y/xeAGH8Y/xcAGIAYABiBGIAYABgBGIEYARiCGIEYARgCGIIYAhiDGIIYAhgDGIMYAxiEGIMYAxgEGIQYBBiFGIQYBBgFGIUYBRiGGIUYBRgGGIYYBhiHGIYYBhgHGIcYBxiIGIcYBxgIGIgYCBiJGIgYCBgJGIkYCRiKGIkYCRgKGIoYChiLGIoYChgLGIsYCxiMGIsYCxgMGIwYDBiNGIwYDBgNGI0YDRiOGI0YDRgOGI4YDhiPGI4YDhgPGI8YDxiQGI8YDxgQGJAYEBiRGJAYEBgRGJEYERiSGJEYERgSGJIYEhiTGJIYEhgTGJMYExiUGJMYExgUGJQYFBiVGJQYFBgVGJUYFRiWGJUYFRgWGJYYFhiXGJYYFhgXGJcYFxiYGJcYFxgYGJgYGBiZGJgYGBgZGJkYGRiaGJkYGRgaGJoYGhibGJoYGhgbGJsYGxicGJsYGxgcGJwYHBidGJwYHBgdGJ0YHRieGJ0YHRgeGJ4YHhifGJ4YHhgfGJ8YHxigGJ8YHxggGKAYIBihGKAYIBghGKEYIRiiGKEYIRgiGKIYIhijGKIYIhgjGKMYIxikGKMYIxgkGKQYJBilGKQYJBglGKUYJRimGKUYJRgmGKYYJhinGKYYJhgnGKcYJxioGKcYJxgoGKgYKBipGKgYKBgpGKkYKRiqGKkYKRgqGKoYKhirGKoYKhgrGKsYKxisGKsYKxgsGKwYLBitGKwYLBgtGK0YLRiuGK0YLRguGK4YLhivGK4YLhgvGK8YLxiwGK8YMBgxGLEYMRiyGLEYMRgyGLIYMhizGLIYMhgzGLMYMxi0GLMYMxg0GLQYNBi1GLQYNBg1GLUYNRi2GLUYNRg2GLYYNhi3GLYYNhg3GLcYNxi4GLcYNxg4GLgYOBi5GLgYOBg5GLkYORi6GLkYORg6GLoYOhi7GLoYOhg7GLsYOxi8GLsYOxg8GLwYPBi9GLwYPBg9GL0YPRi+GL0YPRg+GL4YPhi/GL4YPhg/GL8YPxjAGL8YPxhAGMAYQBjBGMAYQBhBGMEYQRjCGMEYQRhCGMIYQhjDGMIYQhhDGMMYQxjEGMMYQxhEGMQYRBjFGMQYRBhFGMUYRRjGGMUYRRhGGMYYRhjHGMYYRhhHGMcYRxjIGMcYRxhIGMgYSBjJGMgYSBhJGMkYSRjKGMkYSRhKGMoYShjLGMoYShhLGMsYSxjMGMsYSxhMGMwYTBjNGMwYTBhNGM0YTRjOGM0YTRhOGM4YThjPGM4YThhPGM8YTxjQGM8YTxhQGNAYUBjRGNAYUBhRGNEYURjSGNEYURhSGNIYUhjTGNIYUhhTGNMYUxjUGNMYUxhUGNQYVBjVGNQYVBhVGNUYVRjWGNUYVRhWGNYYVhjXGNYYVhhXGNcYVxjYGNcYVxhYGNgYWBjZGNgYWBhZGNkYWRjaGNkYWRhaGNoYWhjbGNoYWhhbGNsYWxjcGNsYWxhcGNwYXBjdGNwYXBhdGN0YXRjeGN0YXRheGN4YXhjfGN4YXhhfGN8YXxjgGN8YXxhgGOAYYBjhGOAYYBhhGOEYYRjiGOEYYRhiGOIYYhjjGOIYYhhjGOMYYxjkGOMYYxhkGOQYZBjlGOQYZBhlGOUYZRjmGOUYZRhmGOYYZhjnGOYYZhhnGOcYZxjoGOcYZxhoGOgYaBjpGOgYaBhpGOkYaRjqGOkYaRhqGOoYahjrGOoYahhrGOsYaxjsGOsYaxhsGOwYbBjtGOwYbBhtGO0YbRjuGO0YbRhuGO4YbhjvGO4YbhhvGO8YbxjwGO8YbxhwGPAYcBjxGPAYcBhxGPEYcRjyGPEYcRhyGPIYchjzGPIYchhzGPMYcxj0GPMYcxh0GPQYdBj1GPQYdBh1GPUYdRj2GPUYdRh2GPYYdhj3GPYYdhh3GPcYdxj4GPcYdxh4GPgYeBj5GPgYeBh5GPkYeRj6GPkYeRh6GPoYehj7GPoYehh7GPsYexj8GPsYexh8GPwYfBj9GPwYfBh9GP0YfRj+GP0YfRh+GP4Yfhj/GP4Yfhh/GP8YfxgAGf8YfxiAGAAZgBgBGQAZgBiBGAEZgRgCGQEZgRiCGAIZghgDGQIZghiDGAMZgxgEGQMZgxiEGAQZhBgFGQQZhBiFGAUZhRgGGQUZhRiGGAYZhhgHGQYZhhiHGAcZhxgIGQcZhxiIGAgZiBgJGQgZiBiJGAkZiRgKGQkZiRiKGAoZihgLGQoZihiLGAsZixgMGQsZixiMGAwZjBgNGQwZjBiNGA0ZjRgOGQ0ZjRiOGA4ZjhgPGQ4ZjhiPGA8ZjxgQGQ8ZjxiQGBAZkBgRGRAZkBiRGBEZkRgSGREZkRiSGBIZkhgTGRIZkhiTGBMZkxgUGRMZkxiUGBQZlBgVGRQZlBiVGBUZlRgWGRUZlRiWGBYZlhgXGRYZlhiXGBcZlxgYGRcZlxiYGBgZmBgZGRgZmBiZGBkZmRgaGRkZmRiaGBoZmhgbGRoZmhibGBsZmxgcGRsZmxicGBwZnBgdGRwZnBidGB0ZnRgeGR0ZnRieGB4ZnhgfGR4ZnhifGB8ZnxggGR8ZnxigGCAZoBghGSAZoBihGCEZoRgiGSEZoRiiGCIZohgjGSIZohijGCMZoxgkGSMZoxikGCQZpBglGSQZpBilGCUZpRgmGSUZpRimGCYZphgnGSYZphinGCcZpxgoGScZpxioGCgZqBgpGSgZqBipGCkZqRgqGSkZqRiqGCoZqhgrGSoZqhirGCsZqxgsGSsZqxisGCwZrBgtGSwZrBitGC0ZrRguGS0ZrRiuGC4ZrhgvGS4ZrhivGC8ZrxgwGS8ZrxiwGDAZsBgxGTAZsRiyGDIZshgzGTIZshizGDMZsxg0GTMZsxi0GDQZtBg1GTQZtBi1GDUZtRg2GTUZtRi2GDYZthg3GTYZthi3GDcZtxg4GTcZtxi4GDgZuBg5GTgZuBi5GDkZuRg6GTkZuRi6GDoZuhg7GToZuhi7GDsZuxg8GTsZuxi8GDwZvBg9GTwZvBi9GD0ZvRg+GT0ZvRi+GD4Zvhg/GT4Zvhi/GD8ZvxhAGT8ZvxjAGEAZwBhBGUAZwBjBGEEZwRhCGUEZwRjCGEIZwhhDGUIZwhjDGEMZwxhEGUMZwxjEGEQZxBhFGUQZxBjFGEUZxRhGGUUZxRjGGEYZxhhHGUYZxhjHGEcZxxhIGUcZxxjIGEgZyBhJGUgZyBjJGEkZyRhKGUkZyRjKGEoZyhhLGUoZyhjLGEsZyxhMGUsZyxjMGEwZzBhNGUwZzBjNGE0ZzRhOGU0ZzRjOGE4ZzhhPGU4ZzhjPGE8ZzxhQGU8ZzxjQGFAZ0BhRGVAZ0BjRGFEZ0RhSGVEZ0RjSGFIZ0hhTGVIZ0hjTGFMZ0xhUGVMZ0xjUGFQZ1BhVGVQZ1BjVGFUZ1RhWGVUZ1RjWGFYZ1hhXGVYZ1hjXGFcZ1xhYGVcZ1xjYGFgZ2BhZGVgZ2BjZGFkZ2RhaGVkZ2RjaGFoZ2hhbGVoZ2hjbGFsZ2xhcGVsZ2xjcGFwZ3BhdGVwZ3BjdGF0Z3RheGV0Z3RjeGF4Z3hhfGV4Z3hjfGF8Z3xhgGV8Z3xjgGGAZ4BhhGWAZ4BjhGGEZ4RhiGWEZ4RjiGGIZ4hhjGWIZ4hjjGGMZ4xhkGWMZ4xjkGGQZ5BhlGWQZ5BjlGGUZ5RhmGWUZ5RjmGGYZ5hhnGWYZ5hjnGGcZ5xhoGWcZ5xjoGGgZ6BhpGWgZ6BjpGGkZ6RhqGWkZ6RjqGGoZ6hhrGWoZ6hjrGGsZ6xhsGWsZ6xjsGGwZ7BhtGWwZ7BjtGG0Z7RhuGW0Z7RjuGG4Z7hhvGW4Z7hjvGG8Z7xhwGW8Z7xjwGHAZ8BhxGXAZ8BjxGHEZ8RhyGXEZ8RjyGHIZ8hhzGXIZ8hjzGHMZ8xh0GXMZ8xj0GHQZ9Bh1GXQZ9Bj1GHUZ9Rh2GXUZ9Rj2GHYZ9hh3GXYZ9hj3GHcZ9xh4GXcZ9xj4GHgZ+Bh5GXgZ+Bj5GHkZ+Rh6GXkZ+Rj6GHoZ+hh7GXoZ+hj7GHsZ+xh8GXsZ+xj8GHwZ/Bh9GXwZ/Bj9GH0Z/Rh+GX0Z/Rj+GH4Z/hh/GX4Z/hj/GH8Z/xiAGX8Z/xgAGYAZABmBGYAZABkBGYEZARmCGYEZARkCGYIZAhmDGYIZAhkDGYMZAxmEGYMZAxkEGYQZBBmFGYQZBBkFGYUZBRmGGYUZBRkGGYYZBhmHGYYZBhkHGYcZBxmIGYcZBxkIGYgZCBmJGYgZCBkJGYkZCRmKGYkZCRkKGYoZChmLGYoZChkLGYsZCxmMGYsZCxkMGYwZDBmNGYwZDBkNGY0ZDRmOGY0ZDRkOGY4ZDhmPGY4ZDhkPGY8ZDxmQGY8ZDxkQGZAZEBmRGZAZEBkRGZEZERmSGZEZERkSGZIZEhmTGZIZEhkTGZMZExmUGZMZExkUGZQZFBmVGZQZFBkVGZUZFRmWGZUZFRkWGZYZFhmXGZYZFhkXGZcZFxmYGZcZFxkYGZgZGBmZGZgZGBkZGZkZGRmaGZkZGRkaGZoZGhmbGZoZGhkbGZsZGxmcGZsZGxkcGZwZHBmdGZwZHBkdGZ0ZHRmeGZ0ZHRkeGZ4ZHhmfGZ4ZHhkfGZ8ZHxmgGZ8ZHxkgGaAZIBmhGaAZIBkhGaEZIRmiGaEZIRkiGaIZIhmjGaIZIhkjGaMZIxmkGaMZIxkkGaQZJBmlGaQZJBklGaUZJRmmGaUZJRkmGaYZJhmnGaYZJhknGacZJxmoGacZJxkoGagZKBmpGagZKBkpGakZKRmqGakZKRkqGaoZKhmrGaoZKhkrGasZKxmsGasZKxksGawZLBmtGawZLBktGa0ZLRmuGa0ZLRkuGa4ZLhmvGa4ZLhkvGa8ZLxmwGa8ZLxkwGbAZMBmxGbAZMBkxGbEZMRmyGbEZMhkzGbMZMxm0GbMZMxk0GbQZNBm1GbQZNBk1GbUZNRm2GbUZNRk2GbYZNhm3GbYZNhk3GbcZNxm4GbcZNxk4GbgZOBm5GbgZOBk5GbkZORm6GbkZORk6GboZOhm7GboZOhk7GbsZOxm8GbsZOxk8GbwZPBm9GbwZPBk9Gb0ZPRm+Gb0ZPRk+Gb4ZPhm/Gb4ZPhk/Gb8ZPxnAGb8ZPxlAGcAZQBnBGcAZQBlBGcEZQRnCGcEZQRlCGcIZQhnDGcIZQhlDGcMZQxnEGcMZQxlEGcQZRBnFGcQZRBlFGcUZRRnGGcUZRRlGGcYZRhnHGcYZRhlHGccZRxnIGccZRxlIGcgZSBnJGcgZSBlJGckZSRnKGckZSRlKGcoZShnLGcoZShlLGcsZSxnMGcsZSxlMGcwZTBnNGcwZTBlNGc0ZTRnOGc0ZTRlOGc4ZThnPGc4ZThlPGc8ZTxnQGc8ZTxlQGdAZUBnRGdAZUBlRGdEZURnSGdEZURlSGdIZUhnTGdIZUhlTGdMZUxnUGdMZUxlUGdQZVBnVGdQZVBlVGdUZVRnWGdUZVRlWGdYZVhnXGdYZVhlXGdcZVxnYGdcZVxlYGdgZWBnZGdgZWBlZGdkZWRnaGdkZWRlaGdoZWhnbGdoZWhlbGdsZWxncGdsZWxlcGdwZXBndGdwZXBldGd0ZXRneGd0ZXRleGd4ZXhnfGd4ZXhlfGd8ZXxngGd8ZXxlgGeAZYBnhGeAZYBlhGeEZYRniGeEZYRliGeIZYhnjGeIZYhljGeMZYxnkGeMZYxlkGeQZZBnlGeQZZBllGeUZZRnmGeUZZRlmGeYZZhnnGeYZZhlnGecZZxnoGecZZxloGegZaBnpGegZaBlpGekZaRnqGekZaRlqGeoZahnrGeoZahlrGesZaxnsGesZaxlsGewZbBntGewZbBltGe0ZbRnuGe0ZbRluGe4ZbhnvGe4ZbhlvGe8ZbxnwGe8ZbxlwGfAZcBnxGfAZcBlxGfEZcRnyGfEZcRlyGfIZchnzGfIZchlzGfMZcxn0GfMZcxl0GfQZdBn1GfQZdBl1GfUZdRn2GfUZdRl2GfYZdhn3GfYZdhl3GfcZdxn4GfcZdxl4GfgZeBn5GfgZeBl5GfkZeRn6GfkZeRl6GfoZehn7GfoZehl7GfsZexn8GfsZexl8GfwZfBn9GfwZfBl9Gf0ZfRn+Gf0ZfRl+Gf4Zfhn/Gf4Zfhl/Gf8ZfxkAGv8ZfxmAGQAagBkBGgAagBmBGQEagRkCGgEagRmCGQIaghkDGgIaghmDGQMagxkEGgMagxmEGQQahBkFGgQahBmFGQUahRkGGgUahRmGGQYahhkHGgYahhmHGQcahxkIGgcahxmIGQgaiBkJGggaiBmJGQkaiRkKGgkaiRmKGQoaihkLGgoaihmLGQsaixkMGgsaixmMGQwajBkNGgwajBmNGQ0ajRkOGg0ajRmOGQ4ajhkPGg4ajhmPGQ8ajxkQGg8ajxmQGRAakBkRGhAakBmRGREakRkSGhEakRmSGRIakhkTGhIakhmTGRMakxkUGhMakxmUGRQalBkVGhQalBmVGRUalRkWGhUalRmWGRYalhkXGhYalhmXGRcalxkYGhcalxmYGRgamBkZGhgamBmZGRkamRkaGhkamRmaGRoamhkbGhoamhmbGRsamxkcGhsamxmcGRwanBkdGhwanBmdGR0anRkeGh0anRmeGR4anhkfGh4anhmfGR8anxkgGh8anxmgGSAaoBkhGiAaoBmhGSEaoRkiGiEaoRmiGSIaohkjGiIaohmjGSMaoxkkGiMaoxmkGSQapBklGiQapBmlGSUapRkmGiUapRmmGSYaphknGiYaphmnGScapxkoGicapxmoGSgaqBkpGigaqBmpGSkaqRkqGikaqRmqGSoaqhkrGioaqhmrGSsaqxksGisaqxmsGSwarBktGiwarBmtGS0arRkuGi0arRmuGS4arhkvGi4arhmvGS8arxkwGi8arxmwGTAasBkxGjAasBmxGTEasRkyGjEasRmyGTIashkzGjIasxm0GTQatBk1GjQatBm1GTUatRk2GjUatRm2GTYathk3GjYathm3GTcatxk4Gjcatxm4GTgauBk5GjgauBm5GTkauRk6GjkauRm6GToauhk7Gjoauhm7GTsauxk8Gjsauxm8GTwavBk9GjwavBm9GT0avRk+Gj0avRm+GT4avhk/Gj4avhm/GT8avxlAGj8avxnAGUAawBlBGkAawBnBGUEawRlCGkEawRnCGUIawhlDGkIawhnDGUMawxlEGkMawxnEGUQaxBlFGkQaxBnFGUUaxRlGGkUaxRnGGUYaxhlHGkYaxhnHGUcaxxlIGkcaxxnIGUgayBlJGkgayBnJGUkayRlKGkkayRnKGUoayhlLGkoayhnLGUsayxlMGksayxnMGUwazBlNGkwazBnNGU0azRlOGk0azRnOGU4azhlPGk4azhnPGU8azxlQGk8azxnQGVAa0BlRGlAa0BnRGVEa0RlSGlEa0RnSGVIa0hlTGlIa0hnTGVMa0xlUGlMa0xnUGVQa1BlVGlQa1BnVGVUa1RlWGlUa1RnWGVYa1hlXGlYa1hnXGVca1xlYGlca1xnYGVga2BlZGlga2BnZGVka2RlaGlka2RnaGVoa2hlbGloa2hnbGVsa2xlcGlsa2xncGVwa3BldGlwa3BndGV0a3RleGl0a3RneGV4a3hlfGl4a3hnfGV8a3xlgGl8a3xngGWAa4BlhGmAa4BnhGWEa4RliGmEa4RniGWIa4hljGmIa4hnjGWMa4xlkGmMa4xnkGWQa5BllGmQa5BnlGWUa5RlmGmUa5RnmGWYa5hlnGmYa5hnnGWca5xloGmca5xnoGWga6BlpGmga6BnpGWka6RlqGmka6RnqGWoa6hlrGmoa6hnrGWsa6xlsGmsa6xnsGWwa7BltGmwa7BntGW0a7RluGm0a7RnuGW4a7hlvGm4a7hnvGW8a7xlwGm8a7xnwGXAa8BlxGnAa8BnxGXEa8RlyGnEa8RnyGXIa8hlzGnIa8hnzGXMa8xl0GnMa8xn0GXQa9Bl1GnQa9Bn1GXUa9Rl2GnUa9Rn2GXYa9hl3GnYa9hn3GXca9xl4Gnca9xn4GXga+Bl5Gnga+Bn5GXka+Rl6Gnka+Rn6GXoa+hl7Gnoa+hn7GXsa+xl8Gnsa+xn8GXwa/Bl9Gnwa/Bn9GX0a/Rl+Gn0a/Rn+GX4a/hl/Gn4a/hn/GX8a/xmAGn8a/xkAGoAaABqBGoAaABoBGoEaARqCGoEaARoCGoIaAhqDGoIaAhoDGoMaAxqEGoMaAxoEGoQaBBqFGoQaBBoFGoUaBRqGGoUaBRoGGoYaBhqHGoYaBhoHGocaBxqIGocaBxoIGogaCBqJGogaCBoJGokaCRqKGokaCRoKGooaChqLGooaChoLGosaCxqMGosaCxoMGowaDBqNGowaDBoNGo0aDRqOGo0aDRoOGo4aDhqPGo4aDhoPGo8aDxqQGo8aDxoQGpAaEBqRGpAaEBoRGpEaERqSGpEaERoSGpIaEhqTGpIaEhoTGpMaExqUGpMaExoUGpQaFBqVGpQaFBoVGpUaFRqWGpUaFRoWGpYaFhqXGpYaFhoXGpcaFxqYGpcaFxoYGpgaGBqZGpgaGBoZGpkaGRqaGpkaGRoaGpoaGhqbGpoaGhobGpsaGxqcGpsaGxocGpwaHBqdGpwaHBodGp0aHRqeGp0aHRoeGp4aHhqfGp4aHhofGp8aHxqgGp8aHxogGqAaIBqhGqAaIBohGqEaIRqiGqEaIRoiGqIaIhqjGqIaIhojGqMaIxqkGqMaIxokGqQaJBqlGqQaJBolGqUaJRqmGqUaJRomGqYaJhqnGqYaJhonGqcaJxqoGqcaJxooGqgaKBqpGqgaKBopGqkaKRqqGqkaKRoqGqoaKhqrGqoaKhorGqsaKxqsGqsaKxosGqwaLBqtGqwaLBotGq0aLRquGq0aLRouGq4aLhqvGq4aLhovGq8aLxqwGq8aLxowGrAaMBqxGrAaMBoxGrEaMRqyGrEaMRoyGrIaMhqzGrIaMhozGrMaMxq0GrMaNBo1GrUaNRq2GrUaNRo2GrYaNhq3GrYaNho3GrcaNxq4GrcaNxo4GrgaOBq5GrgaOBo5GrkaORq6GrkaORo6GroaOhq7GroaOho7GrsaOxq8GrsaOxo8GrwaPBq9GrwaPBo9Gr0aPRq+Gr0aPRo+Gr4aPhq/Gr4aPho/Gr8aPxrAGr8aPxpAGsAaQBrBGsAaQBpBGsEaQRrCGsEaQRpCGsIaQhrDGsIaQhpDGsMaQxrEGsMaQxpEGsQaRBrFGsQaRBpFGsUaRRrGGsUaRRpGGsYaRhrHGsYaRhpHGscaRxrIGscaRxpIGsgaSBrJGsgaSBpJGskaSRrKGskaSRpKGsoaShrLGsoaShpLGssaSxrMGssaSxpMGswaTBrNGswaTBpNGs0aTRrOGs0aTRpOGs4aThrPGs4aThpPGs8aTxrQGs8aTxpQGtAaUBrRGtAaUBpRGtEaURrSGtEaURpSGtIaUhrTGtIaUhpTGtMaUxrUGtMaUxpUGtQaVBrVGtQaVBpVGtUaVRrWGtUaVRpWGtYaVhrXGtYaVhpXGtcaVxrYGtcaVxpYGtgaWBrZGtgaWBpZGtkaWRraGtkaWRpaGtoaWhrbGtoaWhpbGtsaWxrcGtsaWxpcGtwaXBrdGtwaXBpdGt0aXRreGt0aXRpeGt4aXhrfGt4aXhpfGt8aXxrgGt8aXxpgGuAaYBrhGuAaYBphGuEaYRriGuEaYRpiGuIaYhrjGuIaYhpjGuMaYxrkGuMaYxpkGuQaZBrlGuQaZBplGuUaZRrmGuUaZRpmGuYaZhrnGuYaZhpnGucaZxroGucaZxpoGugaaBrpGugaaBppGukaaRrqGukaaRpqGuoaahrrGuoaahprGusaaxrsGusaaxpsGuwabBrtGuwabBptGu0abRruGu0abRpuGu4abhrvGu4abhpvGu8abxrwGu8abxpwGvAacBrxGvAacBpxGvEacRryGvEacRpyGvIachrzGvIachpzGvMacxr0GvMacxp0GvQadBr1GvQadBp1GvUadRr2GvUadRp2GvYadhr3GvYadhp3Gvcadxr4Gvcadxp4GvgaeBr5GvgaeBp5GvkaeRr6GvkaeRp6Gvoaehr7Gvoaehp7Gvsaexr8Gvsaexp8GvwafBr9GvwafBp9Gv0afRr+Gv0afRp+Gv4afhr/Gv4afhp/Gv8afxoAG/8afxqAGgAbgBoBGwAbgBqBGgEbgRoCGwEbgRqCGgIbghoDGwIbghqDGgMbgxoEGwMbgxqEGgQbhBoFGwQbhBqFGgUbhRoGGwUbhRqGGgYbhhoHGwYbhhqHGgcbhxoIGwcbhxqIGggbiBoJGwgbiBqJGgkbiRoKGwkbiRqKGgobihoLGwobihqLGgsbixoMGwsbixqMGgwbjBoNGwwbjBqNGg0bjRoOGw0bjRqOGg4bjhoPGw4bjhqPGg8bjxoQGw8bjxqQGhAbkBoRGxAbkBqRGhEbkRoSGxEbkRqSGhIbkhoTGxIbkhqTGhMbkxoUGxMbkxqUGhQblBoVGxQblBqVGhUblRoWGxUblRqWGhYblhoXGxYblhqXGhcblxoYGxcblxqYGhgbmBoZGxgbmBqZGhkbmRoaGxkbmRqaGhobmhobGxobmhqbGhsbmxocGxsbmxqcGhwbnBodGxwbnBqdGh0bnRoeGx0bnRqeGh4bnhofGx4bnhqfGh8bnxogGx8bnxqgGiAboBohGyAboBqhGiEboRoiGyEboRqiGiIbohojGyIbohqjGiMboxokGyMboxqkGiQbpBolGyQbpBqlGiUbpRomGyUbpRqmGiYbphonGyYbphqnGicbpxooGycbpxqoGigbqBopGygbqBqpGikbqRoqGykbqRqqGiobqhorGyobqhqrGisbqxosGysbqxqsGiwbrBotGywbrBqtGi0brRouGy0brRquGi4brhovGy4brhqvGi8brxowGy8brxqwGjAbsBoxGzAbsBqxGjEbsRoyGzEbsRqyGjIbshozGzIbshqzGjMbsxo0GzMbsxq0GjQbtBo1GzQbtRq2GjYbtho3GzYbthq3Gjcbtxo4Gzcbtxq4GjgbuBo5GzgbuBq5GjkbuRo6GzkbuRq6Gjobuho7Gzobuhq7Gjsbuxo8Gzsbuxq8GjwbvBo9GzwbvBq9Gj0bvRo+Gz0bvRq+Gj4bvho/Gz4bvhq/Gj8bvxpAGz8bvxrAGkAbwBpBG0AbwBrBGkEbwRpCG0EbwRrCGkIbwhpDG0IbwhrDGkMbwxpEG0MbwxrEGkQbxBpFG0QbxBrFGkUbxRpGG0UbxRrGGkYbxhpHG0YbxhrHGkcbxxpIG0cbxxrIGkgbyBpJG0gbyBrJGkkbyRpKG0kbyRrKGkobyhpLG0obyhrLGksbyxpMG0sbyxrMGkwbzBpNG0wbzBrNGk0bzRpOG00bzRrOGk4bzhpPG04bzhrPGk8bzxpQG08bzxrQGlAb0BpRG1Ab0BrRGlEb0RpSG1Eb0RrSGlIb0hpTG1Ib0hrTGlMb0xpUG1Mb0xrUGlQb1BpVG1Qb1BrVGlUb1RpWG1Ub1RrWGlYb1hpXG1Yb1hrXGlcb1xpYG1cb1xrYGlgb2BpZG1gb2BrZGlkb2RpaG1kb2RraGlob2hpbG1ob2hrbGlsb2xpcG1sb2xrcGlwb3BpdG1wb3BrdGl0b3RpeG10b3RreGl4b3hpfG14b3hrfGl8b3xpgG18b3xrgGmAb4BphG2Ab4BrhGmEb4RpiG2Eb4RriGmIb4hpjG2Ib4hrjGmMb4xpkG2Mb4xrkGmQb5BplG2Qb5BrlGmUb5RpmG2Ub5RrmGmYb5hpnG2Yb5hrnGmcb5xpoG2cb5xroGmgb6BppG2gb6BrpGmkb6RpqG2kb6RrqGmob6hprG2ob6hrrGmsb6xpsG2sb6xrsGmwb7BptG2wb7BrtGm0b7RpuG20b7RruGm4b7hpvG24b7hrvGm8b7xpwG28b7xrwGnAb8BpxG3Ab8BrxGnEb8RpyG3Eb8RryGnIb8hpzG3Ib8hrzGnMb8xp0G3Mb8xr0GnQb9Bp1G3Qb9Br1GnUb9Rp2G3Ub9Rr2GnYb9hp3G3Yb9hr3Gncb9xp4G3cb9xr4Gngb+Bp5G3gb+Br5Gnkb+Rp6G3kb+Rr6Gnob+hp7G3ob+hr7Gnsb+xp8G3sb+xr8Gnwb/Bp9G3wb/Br9Gn0b/Rp+G30b/Rr+Gn4b/hp/G34b/hr/Gn8b/xqAG38b/xoAG4AbABuBG4AbABsBG4EbARuCG4EbARsCG4IbAhuDG4IbAhsDG4MbAxuEG4MbAxsEG4QbBBuFG4QbBBsFG4UbBRuGG4UbBRsGG4YbBhuHG4YbBhsHG4cbBxuIG4cbBxsIG4gbCBuJG4gbCBsJG4kbCRuKG4kbCRsKG4obChuLG4obChsLG4sbCxuMG4sbCxsMG4wbDBuNG4wbDBsNG40bDRuOG40bDRsOG44bDhuPG44bDhsPG48bDxuQG48bDxsQG5AbEBuRG5AbEBsRG5EbERuSG5EbERsSG5IbEhuTG5IbEhsTG5MbExuUG5MbExsUG5QbFBuVG5QbFBsVG5UbFRuWG5UbFRsWG5YbFhuXG5YbFhsXG5cbFxuYG5cbFxsYG5gbGBuZG5gbGBsZG5kbGRuaG5kbGRsaG5obGhubG5obGhsbG5sbGxucG5sbGxscG5wbHBudG5wbHBsdG50bHRueG50bHRseG54bHhufG54bHhsfG58bHxugG58bHxsgG6AbIBuhG6AbIBshG6EbIRuiG6EbIRsiG6IbIhujG6IbIhsjG6MbIxukG6MbIxskG6QbJBulG6QbJBslG6UbJRumG6UbJRsmG6YbJhunG6YbJhsnG6cbJxuoG6cbJxsoG6gbKBupG6gbKBspG6kbKRuqG6kbKRsqG6obKhurG6obKhsrG6sbKxusG6sbKxssG6wbLButG6wbLBstG60bLRuuG60bLRsuG64bLhuvG64bLhsvG68bLxuwG68bLxswG7AbMBuxG7AbMBsxG7EbMRuyG7EbMRsyG7IbMhuzG7IbMhszG7MbMxu0G7MbMxs0G7QbNBu1G7QbNBs1G7UbNRu2G7UbNhs3G7cbNxu4G7cbNxs4G7gbOBu5G7gbOBs5G7kbORu6G7kbORs6G7obOhu7G7obOhs7G7sbOxu8G7sbOxs8G7wbPBu9G7wbPBs9G70bPRu+G70bPRs+G74bPhu/G74bPhs/G78bPxvAG78bPxtAG8AbQBvBG8AbQBtBG8EbQRvCG8EbQRtCG8IbQhvDG8IbQhtDG8MbQxvEG8MbQxtEG8QbRBvFG8QbRBtFG8UbRRvGG8UbRRtGG8YbRhvHG8YbRhtHG8cbRxvIG8cbRxtIG8gbSBvJG8gbSBtJG8kbSRvKG8kbSRtKG8obShvLG8obShtLG8sbSxvMG8sbSxtMG8wbTBvNG8wbTBtNG80bTRvOG80bTRtOG84bThvPG84bThtPG88bTxvQG88bTxtQG9AbUBvRG9AbUBtRG9EbURvSG9EbURtSG9IbUhvTG9IbUhtTG9MbUxvUG9MbUxtUG9QbVBvVG9QbVBtVG9UbVRvWG9UbVRtWG9YbVhvXG9YbVhtXG9cbVxvYG9cbVxtYG9gbWBvZG9gbWBtZG9kbWRvaG9kbWRtaG9obWhvbG9obWhtbG9sbWxvcG9sbWxtcG9wbXBvdG9wbXBtdG90bXRveG90bXRteG94bXhvfG94bXhtfG98bXxvgG98bXxtgG+AbYBvhG+AbYBthG+EbYRviG+EbYRtiG+IbYhvjG+IbYhtjG+MbYxvkG+MbYxtkG+QbZBvlG+QbZBtlG+UbZRvmG+UbZRtmG+YbZhvnG+YbZhtnG+cbZxvoG+cbZxtoG+gbaBvpG+gbaBtpG+kbaRvqG+kbaRtqG+obahvrG+obahtrG+sbaxvsG+sbaxtsG+wbbBvtG+wbbBttG+0bbRvuG+0bbRtuG+4bbhvvG+4bbhtvG+8bbxvwG+8bbxtwG/AbcBvxG/AbcBtxG/EbcRvyG/EbcRtyG/IbchvzG/IbchtzG/Mbcxv0G/Mbcxt0G/QbdBv1G/QbdBt1G/UbdRv2G/UbdRt2G/Ybdhv3G/Ybdht3G/cbdxv4G/cbdxt4G/gbeBv5G/gbeBt5G/kbeRv6G/kbeRt6G/obehv7G/obeht7G/sbexv8G/sbext8G/wbfBv9G/wbfBt9G/0bfRv+G/0bfRt+G/4bfhv/G/4bfht/G/8bfxsAHP8bfxuAGwAcgBsBHAAcgBuBGwEcgRsCHAEcgRuCGwIcghsDHAIcghuDGwMcgxsEHAMcgxuEGwQchBsFHAQchBuFGwUchRsGHAUchRuGGwYchhsHHAYchhuHGwcchxsIHAcchxuIGwgciBsJHAgciBuJGwkciRsKHAkciRuKGwocihsLHAocihuLGwscixsMHAscixuMGwwcjBsNHAwcjBuNGw0cjRsOHA0cjRuOGw4cjhsPHA4cjhuPGw8cjxsQHA8cjxuQGxAckBsRHBAckBuRGxEckRsSHBEckRuSGxIckhsTHBIckhuTGxMckxsUHBMckxuUGxQclBsVHBQclBuVGxUclRsWHBUclRuWGxYclhsXHBYclhuXGxcclxsYHBcclxuYGxgcmBsZHBgcmBuZGxkcmRsaHBkcmRuaGxocmhsbHBocmhubGxscmxscHBscmxucGxwcnBsdHBwcnBudGx0cnRseHB0cnRueGx4cnhsfHB4cnhufGx8cnxsgHB8cnxugGyAcoBshHCAcoBuhGyEcoRsiHCEcoRuiGyIcohsjHCIcohujGyMcoxskHCMcoxukGyQcpBslHCQcpBulGyUcpRsmHCUcpRumGyYcphsnHCYcphunGyccpxsoHCccpxuoGygcqBspHCgcqBupGykcqRsqHCkcqRuqGyocqhsrHCocqhurGyscqxssHCscqxusGywcrBstHCwcrButGy0crRsuHC0crRuuGy4crhsvHC4crhuvGy8crxswHC8crxuwGzAcsBsxHDAcsBuxGzEcsRsyHDEcsRuyGzIcshszHDIcshuzGzMcsxs0HDMcsxu0GzQctBs1HDQctBu1GzUctRs2HDUctRu2GzYcths3HDYctxu4GzgcuBs5HDgcuBu5GzkcuRs6HDkcuRu6Gzocuhs7HDocuhu7Gzscuxs8HDscuxu8GzwcvBs9HDwcvBu9Gz0cvRs+HD0cvRu+Gz4cvhs/HD4cvhu/Gz8cvxtAHD8cvxvAG0AcwBtBHEAcwBvBG0EcwRtCHEEcwRvCG0IcwhtDHEIcwhvDG0McwxtEHEMcwxvEG0QcxBtFHEQcxBvFG0UcxRtGHEUcxRvGG0YcxhtHHEYcxhvHG0ccxxtIHEccxxvIG0gcyBtJHEgcyBvJG0kcyRtKHEkcyRvKG0ocyhtLHEocyhvLG0scyxtMHEscyxvMG0wczBtNHEwczBvNG00czRtOHE0czRvOG04czhtPHE4czhvPG08czxtQHE8czxvQG1Ac0BtRHFAc0BvRG1Ec0RtSHFEc0RvSG1Ic0htTHFIc0hvTG1Mc0xtUHFMc0xvUG1Qc1BtVHFQc1BvVG1Uc1RtWHFUc1RvWG1Yc1htXHFYc1hvXG1cc1xtYHFcc1xvYG1gc2BtZHFgc2BvZG1kc2RtaHFkc2RvaG1oc2htbHFoc2hvbG1sc2xtcHFsc2xvcG1wc3BtdHFwc3BvdG10c3RteHF0c3RveG14c3htfHF4c3hvfG18c3xtgHF8c3xvgG2Ac4BthHGAc4BvhG2Ec4RtiHGEc4RviG2Ic4htjHGIc4hvjG2Mc4xtkHGMc4xvkG2Qc5BtlHGQc5BvlG2Uc5RtmHGUc5RvmG2Yc5htnHGYc5hvnG2cc5xtoHGcc5xvoG2gc6BtpHGgc6BvpG2kc6RtqHGkc6RvqG2oc6htrHGoc6hvrG2sc6xtsHGsc6xvsG2wc7BttHGwc7BvtG20c7RtuHG0c7RvuG24c7htvHG4c7hvvG28c7xtwHG8c7xvwG3Ac8BtxHHAc8BvxG3Ec8RtyHHEc8RvyG3Ic8htzHHIc8hvzG3Mc8xt0HHMc8xv0G3Qc9Bt1HHQc9Bv1G3Uc9Rt2HHUc9Rv2G3Yc9ht3HHYc9hv3G3cc9xt4HHcc9xv4G3gc+Bt5HHgc+Bv5G3kc+Rt6HHkc+Rv6G3oc+ht7HHoc+hv7G3sc+xt8HHsc+xv8G3wc/Bt9HHwc/Bv9G30c/Rt+HH0c/Rv+G34c/ht/HH4c/hv/G38c/xuAHH8c/xsAHIAcAByBHIAcABwBHIEcARyCHIEcARwCHIIcAhyDHIIcAhwDHIMcAxyEHIMcAxwEHIQcBByFHIQcBBwFHIUcBRyGHIUcBRwGHIYcBhyHHIYcBhwHHIccBxyIHIccBxwIHIgcCByJHIgcCBwJHIkcCRyKHIkcCRwKHIocChyLHIocChwLHIscCxyMHIscCxwMHIwcDByNHIwcDBwNHI0cDRyOHI0cDRwOHI4cDhyPHI4cDhwPHI8cDxyQHI8cDxwQHJAcEByRHJAcEBwRHJEcERySHJEcERwSHJIcEhyTHJIcEhwTHJMcExyUHJMcExwUHJQcFByVHJQcFBwVHJUcFRyWHJUcFRwWHJYcFhyXHJYcFhwXHJccFxyYHJccFxwYHJgcGByZHJgcGBwZHJkcGRyaHJkcGRwaHJocGhybHJocGhwbHJscGxycHJscGxwcHJwcHBydHJwcHBwdHJ0cHRyeHJ0cHRweHJ4cHhyfHJ4cHhwfHJ8cHxygHJ8cHxwgHKAcIByhHKAcIBwhHKEcIRyiHKEcIRwiHKIcIhyjHKIcIhwjHKMcIxykHKMcIxwkHKQcJBylHKQcJBwlHKUcJRymHKUcJRwmHKYcJhynHKYcJhwnHKccJxyoHKccJxwoHKgcKBypHKgcKBwpHKkcKRyqHKkcKRwqHKocKhyrHKocKhwrHKscKxysHKscKxwsHKwcLBytHKwcLBwtHK0cLRyuHK0cLRwuHK4cLhyvHK4cLhwvHK8cLxywHK8cLxwwHLAcMByxHLAcMBwxHLEcMRyyHLEcMRwyHLIcMhyzHLIcMhwzHLMcMxy0HLMcMxw0HLQcNBy1HLQcNBw1HLUcNRy2HLUcNRw2HLYcNhy3HLYcNhw3HLccNxy4HLccOBw5HLkcORy6HLkcORw6HLocOhy7HLocOhw7HLscOxy8HLscOxw8HLwcPBy9HLwcPBw9HL0cPRy+HL0cPRw+HL4cPhy/HL4cPhw/HL8cPxzAHL8cPxxAHMAcQBzBHMAcQBxBHMEcQRzCHMEcQRxCHMIcQhzDHMIcQhxDHMMcQxzEHMMcQxxEHMQcRBzFHMQcRBxFHMUcRRzGHMUcRRxGHMYcRhzHHMYcRhxHHMccRxzIHMccRxxIHMgcSBzJHMgcSBxJHMkcSRzKHMkcSRxKHMocShzLHMocShxLHMscSxzMHMscSxxMHMwcTBzNHMwcTBxNHM0cTRzOHM0cTRxOHM4cThzPHM4cThxPHM8cTxzQHM8cTxxQHNAcUBzRHNAcUBxRHNEcURzSHNEcURxSHNIcUhzTHNIcUhxTHNMcUxzUHNMcUxxUHNQcVBzVHNQcVBxVHNUcVRzWHNUcVRxWHNYcVhzXHNYcVhxXHNccVxzYHNccVxxYHNgcWBzZHNgcWBxZHNkcWRzaHNkcWRxaHNocWhzbHNocWhxbHNscWxzcHNscWxxcHNwcXBzdHNwcXBxdHN0cXRzeHN0cXRxeHN4cXhzfHN4cXhxfHN8cXxzgHN8cXxxgHOAcYBzhHOAcYBxhHOEcYRziHOEcYRxiHOIcYhzjHOIcYhxjHOMcYxzkHOMcYxxkHOQcZBzlHOQcZBxlHOUcZRzmHOUcZRxmHOYcZhznHOYcZhxnHOccZxzoHOccZxxoHOgcaBzpHOgcaBxpHOkcaRzqHOkcaRxqHOocahzrHOocahxrHOscaxzsHOscaxxsHOwcbBztHOwcbBxtHO0cbRzuHO0cbRxuHO4cbhzvHO4cbhxvHO8cbxzwHO8cbxxwHPAccBzxHPAccBxxHPEccRzyHPEccRxyHPIcchzzHPIcchxzHPMccxz0HPMccxx0HPQcdBz1HPQcdBx1HPUcdRz2HPUcdRx2HPYcdhz3HPYcdhx3HPccdxz4HPccdxx4HPgceBz5HPgceBx5HPkceRz6HPkceRx6HPocehz7HPocehx7HPscexz8HPscexx8HPwcfBz9HPwcfBx9HP0cfRz+HP0cfRx+HP4cfhz/HP4cfhx/HP8cfxwAHf8cfxyAHAAdgBwBHQAdgByBHAEdgRwCHQEdgRyCHAIdghwDHQIdghyDHAMdgxwEHQMdgxyEHAQdhBwFHQQdhByFHAUdhRwGHQUdhRyGHAYdhhwHHQYdhhyHHAcdhxwIHQcdhxyIHAgdiBwJHQgdiByJHAkdiRwKHQkdiRyKHAodihwLHQodihyLHAsdixwMHQsdixyMHAwdjBwNHQwdjByNHA0djRwOHQ0djRyOHA4djhwPHQ4djhyPHA8djxwQHQ8djxyQHBAdkBwRHRAdkByRHBEdkRwSHREdkRySHBIdkhwTHRIdkhyTHBMdkxwUHRMdkxyUHBQdlBwVHRQdlByVHBUdlRwWHRUdlRyWHBYdlhwXHRYdlhyXHBcdlxwYHRcdlxyYHBgdmBwZHRgdmByZHBkdmRwaHRkdmRyaHBodmhwbHRodmhybHBsdmxwcHRsdmxycHBwdnBwdHRwdnBydHB0dnRweHR0dnRyeHB4dnhwfHR4dnhyfHB8dnxwgHR8dnxygHCAdoBwhHSAdoByhHCEdoRwiHSEdoRyiHCIdohwjHSIdohyjHCMdoxwkHSMdoxykHCQdpBwlHSQdpBylHCUdpRwmHSUdpRymHCYdphwnHSYdphynHCcdpxwoHScdpxyoHCgdqBwpHSgdqBypHCkdqRwqHSkdqRyqHCodqhwrHSodqhyrHCsdqxwsHSsdqxysHCwdrBwtHSwdrBytHC0drRwuHS0drRyuHC4drhwvHS4drhyvHC8drxwwHS8drxywHDAdsBwxHTAdsByxHDEdsRwyHTEdsRyyHDIdshwzHTIdshyzHDMdsxw0HTMdsxy0HDQdtBw1HTQdtBy1HDUdtRw2HTUdtRy2HDYdthw3HTYdthy3HDcdtxw4HTcdtxy4HDgduBw5HTgduRy6HDoduhw7HToduhy7HDsduxw8HTsduxy8HDwdvBw9HTwdvBy9HD0dvRw+HT0dvRy+HD4dvhw/HT4dvhy/HD8dvxxAHT8dvxzAHEAdwBxBHUAdwBzBHEEdwRxCHUEdwRzCHEIdwhxDHUIdwhzDHEMdwxxEHUMdwxzEHEQdxBxFHUQdxBzFHEUdxRxGHUUdxRzGHEYdxhxHHUYdxhzHHEcdxxxIHUcdxxzIHEgdyBxJHUgdyBzJHEkdyRxKHUkdyRzKHEodyhxLHUodyhzLHEsdyxxMHUsdyxzMHEwdzBxNHUwdzBzNHE0dzRxOHU0dzRzOHE4dzhxPHU4dzhzPHE8dzxxQHU8dzxzQHFAd0BxRHVAd0BzRHFEd0RxSHVEd0RzSHFId0hxTHVId0hzTHFMd0xxUHVMd0xzUHFQd1BxVHVQd1BzVHFUd1RxWHVUd1RzWHFYd1hxXHVYd1hzXHFcd1xxYHVcd1xzYHFgd2BxZHVgd2BzZHFkd2RxaHVkd2RzaHFod2hxbHVod2hzbHFsd2xxcHVsd2xzcHFwd3BxdHVwd3BzdHF0d3RxeHV0d3RzeHF4d3hxfHV4d3hzfHF8d3xxgHV8d3xzgHGAd4BxhHWAd4BzhHGEd4RxiHWEd4RziHGId4hxjHWId4hzjHGMd4xxkHWMd4xzkHGQd5BxlHWQd5BzlHGUd5RxmHWUd5RzmHGYd5hxnHWYd5hznHGcd5xxoHWcd5xzoHGgd6BxpHWgd6BzpHGkd6RxqHWkd6RzqHGod6hxrHWod6hzrHGsd6xxsHWsd6xzsHGwd7BxtHWwd7BztHG0d7RxuHW0d7RzuHG4d7hxvHW4d7hzvHG8d7xxwHW8d7xzwHHAd8BxxHXAd8BzxHHEd8RxyHXEd8RzyHHId8hxzHXId8hzzHHMd8xx0HXMd8xz0HHQd9Bx1HXQd9Bz1HHUd9Rx2HXUd9Rz2HHYd9hx3HXYd9hz3HHcd9xx4HXcd9xz4HHgd+Bx5HXgd+Bz5HHkd+Rx6HXkd+Rz6HHod+hx7HXod+hz7HHsd+xx8HXsd+xz8HHwd/Bx9HXwd/Bz9HH0d/Rx+HX0d/Rz+HH4d/hx/HX4d/hz/HH8d/xyAHX8d/xwAHYAdAB2BHYAdAB0BHYEdAR2CHYEdAR0CHYIdAh2DHYIdAh0DHYMdAx2EHYMdAx0EHYQdBB2FHYQdBB0FHYUdBR2GHYUdBR0GHYYdBh2HHYYdBh0HHYcdBx2IHYcdBx0IHYgdCB2JHYgdCB0JHYkdCR2KHYkdCR0KHYodCh2LHYodCh0LHYsdCx2MHYsdCx0MHYwdDB2NHYwdDB0NHY0dDR2OHY0dDR0OHY4dDh2PHY4dDh0PHY8dDx2QHY8dDx0QHZAdEB2RHZAdEB0RHZEdER2SHZEdER0SHZIdEh2THZIdEh0THZMdEx2UHZMdEx0UHZQdFB2VHZQdFB0VHZUdFR2WHZUdFR0WHZYdFh2XHZYdFh0XHZcdFx2YHZcdFx0YHZgdGB2ZHZgdGB0ZHZkdGR2aHZkdGR0aHZodGh2bHZodGh0bHZsdGx2cHZsdGx0cHZwdHB2dHZwdHB0dHZ0dHR2eHZ0dHR0eHZ4dHh2fHZ4dHh0fHZ8dHx2gHZ8dHx0gHaAdIB2hHaAdIB0hHaEdIR2iHaEdIR0iHaIdIh2jHaIdIh0jHaMdIx2kHaMdIx0kHaQdJB2lHaQdJB0lHaUdJR2mHaUdJR0mHaYdJh2nHaYdJh0nHacdJx2oHacdJx0oHagdKB2pHagdKB0pHakdKR2qHakdKR0qHaodKh2rHaodKh0rHasdKx2sHasdKx0sHawdLB2tHawdLB0tHa0dLR2uHa0dLR0uHa4dLh2vHa4dLh0vHa8dLx2wHa8dLx0wHbAdMB2xHbAdMB0xHbEdMR2yHbEdMR0yHbIdMh2zHbIdMh0zHbMdMx20HbMdMx00HbQdNB21HbQdNB01HbUdNR22HbUdNR02HbYdNh23HbYdNh03HbcdNx24HbcdNx04HbgdOB25HbgdOB05HbkdOR26HbkdOh07HbsdOx28HbsdOx08HbwdPB29HbwdPB09Hb0dPR2+Hb0dPR0+Hb4dPh2/Hb4dPh0/Hb8dPx3AHb8dPx1AHcAdQB3BHcAdQB1BHcEdQR3CHcEdQR1CHcIdQh3DHcIdQh1DHcMdQx3EHcMdQx1EHcQdRB3FHcQdRB1FHcUdRR3GHcUdRR1GHcYdRh3HHcYdRh1HHccdRx3IHccdRx1IHcgdSB3JHcgdSB1JHckdSR3KHckdSR1KHcodSh3LHcodSh1LHcsdSx3MHcsdSx1MHcwdTB3NHcwdTB1NHc0dTR3OHc0dTR1OHc4dTh3PHc4dTh1PHc8dTx3QHc8dTx1QHdAdUB3RHdAdUB1RHdEdUR3SHdEdUR1SHdIdUh3THdIdUh1THdMdUx3UHdMdUx1UHdQdVB3VHdQdVB1VHdUdVR3WHdUdVR1WHdYdVh3XHdYdVh1XHdcdVx3YHdcdVx1YHdgdWB3ZHdgdWB1ZHdkdWR3aHdkdWR1aHdodWh3bHdodWh1bHdsdWx3cHdsdWx1cHdwdXB3dHdwdXB1dHd0dXR3eHd0dXR1eHd4dXh3fHd4dXh1fHd8dXx3gHd8dXx1gHeAdYB3hHeAdYB1hHeEdYR3iHeEdYR1iHeIdYh3jHeIdYh1jHeMdYx3kHeMdYx1kHeQdZB3lHeQdZB1lHeUdZR3mHeUdZR1mHeYdZh3nHeYdZh1nHecdZx3oHecdZx1oHegdaB3pHegdaB1pHekdaR3qHekdaR1qHeodah3rHeodah1rHesdax3sHesdax1sHewdbB3tHewdbB1tHe0dbR3uHe0dbR1uHe4dbh3vHe4dbh1vHe8dbx3wHe8dbx1wHfAdcB3xHfAdcB1xHfEdcR3yHfEdcR1yHfIdch3zHfIdch1zHfMdcx30HfMdcx10HfQddB31HfQddB11HfUddR32HfUddR12HfYddh33HfYddh13Hfcddx34Hfcddx14HfgdeB35HfgdeB15HfkdeR36HfkdeR16Hfodeh37Hfodeh17Hfsdex38Hfsdex18HfwdfB39HfwdfB19Hf0dfR3+Hf0dfR1+Hf4dfh3/Hf4dfh1/Hf8dfx0AHv8dfx2AHQAegB0BHgAegB2BHQEegR0CHgEegR2CHQIegh0DHgIegh2DHQMegx0EHgMegx2EHQQehB0FHgQehB2FHQUehR0GHgUehR2GHQYehh0HHgYehh2HHQcehx0IHgcehx2IHQgeiB0JHggeiB2JHQkeiR0KHgkeiR2KHQoeih0LHgoeih2LHQseix0MHgseix2MHQwejB0NHgwejB2NHQ0ejR0OHg0ejR2OHQ4ejh0PHg4ejh2PHQ8ejx0QHg8ejx2QHRAekB0RHhAekB2RHREekR0SHhEekR2SHRIekh0THhIekh2THRMekx0UHhMekx2UHRQelB0VHhQelB2VHRUelR0WHhUelR2WHRYelh0XHhYelh2XHRcelx0YHhcelx2YHRgemB0ZHhgemB2ZHRkemR0aHhkemR2aHRoemh0bHhoemh2bHRsemx0cHhsemx2cHRwenB0dHhwenB2dHR0enR0eHh0enR2eHR4enh0fHh4enh2fHR8enx0gHh8enx2gHSAeoB0hHiAeoB2hHSEeoR0iHiEeoR2iHSIeoh0jHiIeoh2jHSMeox0kHiMeox2kHSQepB0lHiQepB2lHSUepR0mHiUepR2mHSYeph0nHiYeph2nHScepx0oHicepx2oHSgeqB0pHigeqB2pHSkeqR0qHikeqR2qHSoeqh0rHioeqh2rHSseqx0sHiseqx2sHSwerB0tHiwerB2tHS0erR0uHi0erR2uHS4erh0vHi4erh2vHS8erx0wHi8erx2wHTAesB0xHjAesB2xHTEesR0yHjEesR2yHTIesh0zHjIesh2zHTMesx00HjMesx20HTQetB01HjQetB21HTUetR02HjUetR22HTYeth03HjYeth23HTcetx04Hjcetx24HTgeuB05HjgeuB25HTkeuR06HjkeuR26HToeuh07Hjoeux28HTwevB09HjwevB29HT0evR0+Hj0evR2+HT4evh0/Hj4evh2/HT8evx1AHj8evx3AHUAewB1BHkAewB3BHUEewR1CHkEewR3CHUIewh1DHkIewh3DHUMewx1EHkMewx3EHUQexB1FHkQexB3FHUUexR1GHkUexR3GHUYexh1HHkYexh3HHUcexx1IHkcexx3IHUgeyB1JHkgeyB3JHUkeyR1KHkkeyR3KHUoeyh1LHkoeyh3LHUseyx1MHkseyx3MHUwezB1NHkwezB3NHU0ezR1OHk0ezR3OHU4ezh1PHk4ezh3PHU8ezx1QHk8ezx3QHVAe0B1RHlAe0B3RHVEe0R1SHlEe0R3SHVIe0h1THlIe0h3THVMe0x1UHlMe0x3UHVQe1B1VHlQe1B3VHVUe1R1WHlUe1R3WHVYe1h1XHlYe1h3XHVce1x1YHlce1x3YHVge2B1ZHlge2B3ZHVke2R1aHlke2R3aHVoe2h1bHloe2h3bHVse2x1cHlse2x3cHVwe3B1dHlwe3B3dHV0e3R1eHl0e3R3eHV4e3h1fHl4e3h3fHV8e3x1gHl8e3x3gHWAe4B1hHmAe4B3hHWEe4R1iHmEe4R3iHWIe4h1jHmIe4h3jHWMe4x1kHmMe4x3kHWQe5B1lHmQe5B3lHWUe5R1mHmUe5R3mHWYe5h1nHmYe5h3nHWce5x1oHmce5x3oHWge6B1pHmge6B3pHWke6R1qHmke6R3qHWoe6h1rHmoe6h3rHWse6x1sHmse6x3sHWwe7B1tHmwe7B3tHW0e7R1uHm0e7R3uHW4e7h1vHm4e7h3vHW8e7x1wHm8e7x3wHXAe8B1xHnAe8B3xHXEe8R1yHnEe8R3yHXIe8h1zHnIe8h3zHXMe8x10HnMe8x30HXQe9B11HnQe9B31HXUe9R12HnUe9R32HXYe9h13HnYe9h33HXce9x14Hnce9x34HXge+B15Hnge+B35HXke+R16Hnke+R36HXoe+h17Hnoe+h37HXse+x18Hnse+x38HXwe/B19Hnwe/B39HX0e/R1+Hn0e/R3+HX4e/h1/Hn4e/h3/HX8e/x2AHn8e/x0AHoAeAB6BHoAeAB4BHoEeAR6CHoEeAR4CHoIeAh6DHoIeAh4DHoMeAx6EHoMeAx4EHoQeBB6FHoQeBB4FHoUeBR6GHoUeBR4GHoYeBh6HHoYeBh4HHoceBx6IHoceBx4IHogeCB6JHogeCB4JHokeCR6KHokeCR4KHooeCh6LHooeCh4LHoseCx6MHoseCx4MHoweDB6NHoweDB4NHo0eDR6OHo0eDR4OHo4eDh6PHo4eDh4PHo8eDx6QHo8eDx4QHpAeEB6RHpAeEB4RHpEeER6SHpEeER4SHpIeEh6THpIeEh4THpMeEx6UHpMeEx4UHpQeFB6VHpQeFB4VHpUeFR6WHpUeFR4WHpYeFh6XHpYeFh4XHpceFx6YHpceFx4YHpgeGB6ZHpgeGB4ZHpkeGR6aHpkeGR4aHpoeGh6bHpoeGh4bHpseGx6cHpseGx4cHpweHB6dHpweHB4dHp0eHR6eHp0eHR4eHp4eHh6fHp4eHh4fHp8eHx6gHp8eHx4gHqAeIB6hHqAeIB4hHqEeIR6iHqEeIR4iHqIeIh6jHqIeIh4jHqMeIx6kHqMeIx4kHqQeJB6lHqQeJB4lHqUeJR6mHqUeJR4mHqYeJh6nHqYeJh4nHqceJx6oHqceJx4oHqgeKB6pHqgeKB4pHqkeKR6qHqkeKR4qHqoeKh6rHqoeKh4rHqseKx6sHqseKx4sHqweLB6tHqweLB4tHq0eLR6uHq0eLR4uHq4eLh6vHq4eLh4vHq8eLx6wHq8eLx4wHrAeMB6xHrAeMB4xHrEeMR6yHrEeMR4yHrIeMh6zHrIeMh4zHrMeMx60HrMeMx40HrQeNB61HrQeNB41HrUeNR62HrUeNR42HrYeNh63HrYeNh43HrceNx64HrceNx44HrgeOB65HrgeOB45HrkeOR66HrkeOR46HroeOh67HroeOh47HrseOx68HrsePB49Hr0ePR6+Hr0ePR4+Hr4ePh6/Hr4ePh4/Hr8ePx7AHr8ePx5AHsAeQB7BHsAeQB5BHsEeQR7CHsEeQR5CHsIeQh7DHsIeQh5DHsMeQx7EHsMeQx5EHsQeRB7FHsQeRB5FHsUeRR7GHsUeRR5GHsYeRh7HHsYeRh5HHsceRx7IHsceRx5IHsgeSB7JHsgeSB5JHskeSR7KHskeSR5KHsoeSh7LHsoeSh5LHsseSx7MHsseSx5MHsweTB7NHsweTB5NHs0eTR7OHs0eTR5OHs4eTh7PHs4eTh5PHs8eTx7QHs8eTx5QHtAeUB7RHtAeUB5RHtEeUR7SHtEeUR5SHtIeUh7THtIeUh5THtMeUx7UHtMeUx5UHtQeVB7VHtQeVB5VHtUeVR7WHtUeVR5WHtYeVh7XHtYeVh5XHtceVx7YHtceVx5YHtgeWB7ZHtgeWB5ZHtkeWR7aHtkeWR5aHtoeWh7bHtoeWh5bHtseWx7cHtseWx5cHtweXB7dHtweXB5dHt0eXR7eHt0eXR5eHt4eXh7fHt4eXh5fHt8eXx7gHt8eXx5gHuAeYB7hHuAeYB5hHuEeYR7iHuEeYR5iHuIeYh7jHuIeYh5jHuMeYx7kHuMeYx5kHuQeZB7lHuQeZB5lHuUeZR7mHuUeZR5mHuYeZh7nHuYeZh5nHuceZx7oHuceZx5oHugeaB7pHugeaB5pHukeaR7qHukeaR5qHuoeah7rHuoeah5rHuseax7sHuseax5sHuwebB7tHuwebB5tHu0ebR7uHu0ebR5uHu4ebh7vHu4ebh5vHu8ebx7wHu8ebx5wHvAecB7xHvAecB5xHvEecR7yHvEecR5yHvIech7zHvIech5zHvMecx70HvMecx50HvQedB71HvQedB51HvUedR72HvUedR52HvYedh73HvYedh53Hvcedx74Hvcedx54HvgeeB75HvgeeB55HvkeeR76HvkeeR56Hvoeeh77Hvoeeh57Hvseex78Hvseex58HvwefB79HvwefB59Hv0efR7+Hv0efR5+Hv4efh7/Hv4efh5/Hv8efx4AH/8efx6AHgAfgB4BHwAfgB6BHgEfgR4CHwEfgR6CHgIfgh4DHwIfgh6DHgMfgx4EHwMfgx6EHgQfhB4FHwQfhB6FHgUfhR4GHwUfhR6GHgYfhh4HHwYfhh6HHgcfhx4IHwcfhx6IHggfiB4JHwgfiB6JHgkfiR4KHwkfiR6KHgofih4LHwofih6LHgsfix4MHwsfix6MHgwfjB4NHwwfjB6NHg0fjR4OHw0fjR6OHg4fjh4PHw4fjh6PHg8fjx4QHw8fjx6QHhAfkB4RHxAfkB6RHhEfkR4SHxEfkR6SHhIfkh4THxIfkh6THhMfkx4UHxMfkx6UHhQflB4VHxQflB6VHhUflR4WHxUflR6WHhYflh4XHxYflh6XHhcflx4YHxcflx6YHhgfmB4ZHxgfmB6ZHhkfmR4aHxkfmR6aHhofmh4bHxofmh6bHhsfmx4cHxsfmx6cHhwfnB4dHxwfnB6dHh0fnR4eHx0fnR6eHh4fnh4fHx4fnh6fHh8fnx4gHx8fnx6gHiAfoB4hHyAfoB6hHiEfoR4iHyEfoR6iHiIfoh4jHyIfoh6jHiMfox4kHyMfox6kHiQfpB4lHyQfpB6lHiUfpR4mHyUfpR6mHiYfph4nHyYfph6nHicfpx4oHycfpx6oHigfqB4pHygfqB6pHikfqR4qHykfqR6qHiofqh4rHyofqh6rHisfqx4sHysfqx6sHiwfrB4tHywfrB6tHi0frR4uHy0frR6uHi4frh4vHy4frh6vHi8frx4wHy8frx6wHjAfsB4xHzAfsB6xHjEfsR4yHzEfsR6yHjIfsh4zHzIfsh6zHjMfsx40HzMfsx60HjQftB41HzQftB61HjUftR42HzUftR62HjYfth43HzYfth63Hjcftx44Hzcftx64HjgfuB45HzgfuB65HjkfuR46HzkfuR66Hjofuh47Hzofuh67Hjsfux48Hzsfux68HjwfvB49HzwfvR6+Hj4fvh4/Hz4fvh6/Hj8fvx5AHz8fvx7AHkAfwB5BH0AfwB7BHkEfwR5CH0EfwR7CHkIfwh5DH0Ifwh7DHkMfwx5EH0Mfwx7EHkQfxB5FH0QfxB7FHkUfxR5GH0UfxR7GHkYfxh5HH0Yfxh7HHkcfxx5IH0cfxx7IHkgfyB5JH0gfyB7JHkkfyR5KH0kfyR7KHkofyh5LH0ofyh7LHksfyx5MH0sfyx7MHkwfzB5NH0wfzB7NHk0fzR5OH00fzR7OHk4fzh5PH04fzh7PHk8fzx5QH08fzx7QHlAf0B5RH1Af0B7RHlEf0R5SH1Ef0R7SHlIf0h5TH1If0h7THlMf0x5UH1Mf0x7UHlQf1B5VH1Qf1B7VHlUf1R5WH1Uf1R7WHlYf1h5XH1Yf1h7XHlcf1x5YH1cf1x7YHlgf2B5ZH1gf2B7ZHlkf2R5aH1kf2R7aHlof2h5bH1of2h7bHlsf2x5cH1sf2x7cHlwf3B5dH1wf3B7dHl0f3R5eH10f3R7eHl4f3h5fH14f3h7fHl8f3x5gH18f3x7gHmAf4B5hH2Af4B7hHmEf4R5iH2Ef4R7iHmIf4h5jH2If4h7jHmMf4x5kH2Mf4x7kHmQf5B5lH2Qf5B7lHmUf5R5mH2Uf5R7mHmYf5h5nH2Yf5h7nHmcf5x5oH2cf5x7oHmgf6B5pH2gf6B7pHmkf6R5qH2kf6R7qHmof6h5rH2of6h7rHmsf6x5sH2sf6x7sHmwf7B5tH2wf7B7tHm0f7R5uH20f7R7uHm4f7h5vH24f7h7vHm8f7x5wH28f7x7wHnAf8B5xH3Af8B7xHnEf8R5yH3Ef8R7yHnIf8h5zH3If8h7zHnMf8x50H3Mf8x70HnQf9B51H3Qf9B71HnUf9R52H3Uf9R72HnYf9h53H3Yf9h73Hncf9x54H3cf9x74Hngf+B55H3gf+B75Hnkf+R56H3kf+R76Hnof+h57H3of+h77Hnsf+x58H3sf+x78Hnwf/B59H3wf/B79Hn0f/R5+H30f/R7+Hn4f/h5/H34f/h7/Hn8f/x6AH38f/x4AH4AfAB+BH4AfAB8BH4EfAR+CH4EfAR8CH4IfAh+DH4IfAh8DH4MfAx+EH4MfAx8EH4QfBB+FH4QfBB8FH4UfBR+GH4UfBR8GH4YfBh+HH4YfBh8HH4cfBx+IH4cfBx8IH4gfCB+JH4gfCB8JH4kfCR+KH4kfCR8KH4ofCh+LH4ofCh8LH4sfCx+MH4sfCx8MH4wfDB+NH4wfDB8NH40fDR+OH40fDR8OH44fDh+PH44fDh8PH48fDx+QH48fDx8QH5AfEB+RH5AfEB8RH5EfER+SH5EfER8SH5IfEh+TH5IfEh8TH5MfEx+UH5MfEx8UH5QfFB+VH5QfFB8VH5UfFR+WH5UfFR8WH5YfFh+XH5YfFh8XH5cfFx+YH5cfFx8YH5gfGB+ZH5gfGB8ZH5kfGR+aH5kfGR8aH5ofGh+bH5ofGh8bH5sfGx+cH5sfGx8cH5wfHB+dH5wfHB8dH50fHR+eH50fHR8eH54fHh+fH54fHh8fH58fHx+gH58fHx8gH6AfIB+hH6AfIB8hH6EfIR+iH6EfIR8iH6IfIh+jH6IfIh8jH6MfIx+kH6MfIx8kH6QfJB+lH6QfJB8lH6UfJR+mH6UfJR8mH6YfJh+nH6YfJh8nH6cfJx+oH6cfJx8oH6gfKB+pH6gfKB8pH6kfKR+qH6kfKR8qH6ofKh+rH6ofKh8rH6sfKx+sH6sfKx8sH6wfLB+tH6wfLB8tH60fLR+uH60fLR8uH64fLh+vH64fLh8vH68fLx+wH68fLx8wH7AfMB+xH7AfMB8xH7EfMR+yH7EfMR8yH7IfMh+zH7IfMh8zH7MfMx+0H7MfMx80H7QfNB+1H7QfNB81H7UfNR+2H7UfNR82H7YfNh+3H7YfNh83H7cfNx+4H7cfNx84H7gfOB+5H7gfOB85H7kfOR+6H7kfOR86H7ofOh+7H7ofOh87H7sfOx+8H7sfOx88H7wfPB+9H7wfPB89H70fPR++H70fPh8/H78fPx/AH78fPx9AH8AfQB/BH8AfQB9BH8EfQR/CH8EfQR9CH8IfQh/DH8IfQh9DH8MfQx/EH8MfQx9EH8QfRB/FH8QfRB9FH8UfRR/GH8UfRR9GH8YfRh/HH8YfRh9HH8cfRx/IH8cfRx9IH8gfSB/JH8gfSB9JH8kfSR/KH8kfSR9KH8ofSh/LH8ofSh9LH8sfSx/MH8sfSx9MH8wfTB/NH8wfTB9NH80fTR/OH80fTR9OH84fTh/PH84fTh9PH88fTx/QH88fTx9QH9AfUB/RH9AfUB9RH9EfUR/SH9EfUR9SH9IfUh/TH9IfUh9TH9MfUx/UH9MfUx9UH9QfVB/VH9QfVB9VH9UfVR/WH9UfVR9WH9YfVh/XH9YfVh9XH9cfVx/YH9cfVx9YH9gfWB/ZH9gfWB9ZH9kfWR/aH9kfWR9aH9ofWh/bH9ofWh9bH9sfWx/cH9sfWx9cH9wfXB/dH9wfXB9dH90fXR/eH90fXR9eH94fXh/fH94fXh9fH98fXx/gH98fXx9gH+AfYB/hH+AfYB9hH+EfYR/iH+EfYR9iH+IfYh/jH+IfYh9jH+MfYx/kH+MfYx9kH+QfZB/lH+QfZB9lH+UfZR/mH+UfZR9mH+YfZh/nH+YfZh9nH+cfZx/oH+cfZx9oH+gfaB/pH+gfaB9pH+kfaR/qH+kfaR9qH+ofah/rH+ofah9rH+sfax/sH+sfax9sH+wfbB/tH+wfbB9tH+0fbR/uH+0fbR9uH+4fbh/vH+4fbh9vH+8fbx/wH+8fbx9wH/AfcB/xH/AfcB9xH/EfcR/yH/EfcR9yH/Ifch/zH/Ifch9zH/Mfcx/0H/Mfcx90H/QfdB/1H/QfdB91H/UfdR/2H/UfdR92H/Yfdh/3H/Yfdh93H/cfdx/4H/cfdx94H/gfeB/5H/gfeB95H/kfeR/6H/kfeR96H/ofeh/7H/ofeh97H/sfex/8H/sfex98H/wffB/9H/wffB99H/0ffR/+H/0ffR9+H/4ffh//H/4ffh9/H/8ffx8AIP8ffx+AHwAggB8BIAAggB+BHwEggR8CIAEggR+CHwIggh8DIAIggh+DHwMggx8EIAMggx+EHwQghB8FIAQghB+FHwUghR8GIAUghR+GHwYghh8HIAYghh+HHwcghx8IIAcghx+IHwggiB8JIAggiB+JHwkgiR8KIAkgiR+KHwogih8LIAogih+LHwsgix8MIAsgix+MHwwgjB8NIAwgjB+NHw0gjR8OIA0gjR+OHw4gjh8PIA4gjh+PHw8gjx8QIA8gjx+QHxAgkB8RIBAgkB+RHxEgkR8SIBEgkR+SHxIgkh8TIBIgkh+THxMgkx8UIBMgkx+UHxQglB8VIBQglB+VHxUglR8WIBUglR+WHxYglh8XIBYglh+XHxcglx8YIBcglx+YHxggmB8ZIBggmB+ZHxkgmR8aIBkgmR+aHxogmh8bIBogmh+bHxsgmx8cIBsgmx+cHxwgnB8dIBwgnB+dHx0gnR8eIB0gnR+eHx4gnh8fIB4gnh+fHx8gnx8gIB8gnx+gHyAgoB8hICAgoB+hHyEgoR8iICEgoR+iHyIgoh8jICIgoh+jHyMgox8kICMgox+kHyQgpB8lICQgpB+lHyUgpR8mICUgpR+mHyYgph8nICYgph+nHycgpx8oICcgpx+oHyggqB8pICggqB+pHykgqR8qICkgqR+qHyogqh8rICogqh+rHysgqx8sICsgqx+sHywgrB8tICwgrB+tHy0grR8uIC0grR+uHy4grh8vIC4grh+vHy8grx8wIC8grx+wHzAgsB8xIDAgsB+xHzEgsR8yIDEgsR+yHzIgsh8zIDIgsh+zHzMgsx80IDMgsx+0HzQgtB81IDQgtB+1HzUgtR82IDUgtR+2HzYgth83IDYgth+3Hzcgtx84IDcgtx+4HzgguB85IDgguB+5HzkguR86IDkguR+6Hzoguh87IDoguh+7Hzsgux88IDsgux+8HzwgvB89IDwgvB+9Hz0gvR8+ID0gvR++Hz4gvh8/ID4gvx/AH0AgwB9BIEAgwB/BH0EgwR9CIEEgwR/CH0Igwh9DIEIgwh/DH0Mgwx9EIEMgwx/EH0QgxB9FIEQgxB/FH0UgxR9GIEUgxR/GH0Ygxh9HIEYgxh/HH0cgxx9IIEcgxx/IH0ggyB9JIEggyB/JH0kgyR9KIEkgyR/KH0ogyh9LIEogyh/LH0sgyx9MIEsgyx/MH0wgzB9NIEwgzB/NH00gzR9OIE0gzR/OH04gzh9PIE4gzh/PH08gzx9QIE8gzx/QH1Ag0B9RIFAg0B/RH1Eg0R9SIFEg0R/SH1Ig0h9TIFIg0h/TH1Mg0x9UIFMg0x/UH1Qg1B9VIFQg1B/VH1Ug1R9WIFUg1R/WH1Yg1h9XIFYg1h/XH1cg1x9YIFcg1x/YH1gg2B9ZIFgg2B/ZH1kg2R9aIFkg2R/aH1og2h9bIFog2h/bH1sg2x9cIFsg2x/cH1wg3B9dIFwg3B/dH10g3R9eIF0g3R/eH14g3h9fIF4g3h/fH18g3x9gIF8g3x/gH2Ag4B9hIGAg4B/hH2Eg4R9iIGEg4R/iH2Ig4h9jIGIg4h/jH2Mg4x9kIGMg4x/kH2Qg5B9lIGQg5B/lH2Ug5R9mIGUg5R/mH2Yg5h9nIGYg5h/nH2cg5x9oIGcg5x/oH2gg6B9pIGgg6B/pH2kg6R9qIGkg6R/qH2og6h9rIGog6h/rH2sg6x9sIGsg6x/sH2wg7B9tIGwg7B/tH20g7R9uIG0g7R/uH24g7h9vIG4g7h/vH28g7x9wIG8g7x/wH3Ag8B9xIHAg8B/xH3Eg8R9yIHEg8R/yH3Ig8h9zIHIg8h/zH3Mg8x90IHMg8x/0H3Qg9B91IHQg9B/1H3Ug9R92IHUg9R/2H3Yg9h93IHYg9h/3H3cg9x94IHcg9x/4H3gg+B95IHgg+B/5H3kg+R96IHkg+R/6H3og+h97IHog+h/7H3sg+x98IHsg+x/8H3wg/B99IHwg/B/9H30g/R9+IH0g/R/+H34g/h9/IH4g/h//H38g/x+AIH8g/x8AIIAgACCBIIAgACABIIEgASCCIIEgASACIIIgAiCDIIIgAiADIIMgAyCEIIMgAyAEIIQgBCCFIIQgBCAFIIUgBSCGIIUgBSAGIIYgBiCHIIYgBiAHIIcgByCIIIcgByAIIIggCCCJIIggCCAJIIkgCSCKIIkgCSAKIIogCiCLIIogCiALIIsgCyCMIIsgCyAMIIwgDCCNIIwgDCANII0gDSCOII0gDSAOII4gDiCPII4gDiAPII8gDyCQII8gDyAQIJAgECCRIJAgECARIJEgESCSIJEgESASIJIgEiCTIJIgEiATIJMgEyCUIJMgEyAUIJQgFCCVIJQgFCAVIJUgFSCWIJUgFSAWIJYgFiCXIJYgFiAXIJcgFyCYIJcgFyAYIJggGCCZIJggGCAZIJkgGSCaIJkgGSAaIJogGiCbIJogGiAbIJsgGyCcIJsgGyAcIJwgHCCdIJwgHCAdIJ0gHSCeIJ0gHSAeIJ4gHiCfIJ4gHiAfIJ8gHyCgIJ8gHyAgIKAgICChIKAgICAhIKEgISCiIKEgISAiIKIgIiCjIKIgIiAjIKMgIyCkIKMgIyAkIKQgJCClIKQgJCAlIKUgJSCmIKUgJSAmIKYgJiCnIKYgJiAnIKcgJyCoIKcgJyAoIKggKCCpIKggKCApIKkgKSCqIKkgKSAqIKogKiCrIKogKiArIKsgKyCsIKsgKyAsIKwgLCCtIKwgLCAtIK0gLSCuIK0gLSAuIK4gLiCvIK4gLiAvIK8gLyCwIK8gLyAwILAgMCCxILAgMCAxILEgMSCyILEgMSAyILIgMiCzILIgMiAzILMgMyC0ILMgMyA0ILQgNCC1ILQgNCA1ILUgNSC2ILUgNSA2ILYgNiC3ILYgNiA3ILcgNyC4ILcgNyA4ILggOCC5ILggOCA5ILkgOSC6ILkgOSA6ILogOiC7ILogOiA7ILsgOyC8ILsgOyA8ILwgPCC9ILwgPCA9IL0gPSC+IL0gPSA+IL4gPiC/IL4gPiA/IL8gPyDAIL8gQCBBIMEgQSDCIMEgQSBCIMIgQiDDIMIgQiBDIMMgQyDEIMMgQyBEIMQgRCDFIMQgRCBFIMUgRSDGIMUgRSBGIMYgRiDHIMYgRiBHIMcgRyDIIMcgRyBIIMggSCDJIMggSCBJIMkgSSDKIMkgSSBKIMogSiDLIMogSiBLIMsgSyDMIMsgSyBMIMwgTCDNIMwgTCBNIM0gTSDOIM0gTSBOIM4gTiDPIM4gTiBPIM8gTyDQIM8gTyBQINAgUCDRINAgUCBRINEgUSDSINEgUSBSINIgUiDTINIgUiBTINMgUyDUINMgUyBUINQgVCDVINQgVCBVINUgVSDWINUgVSBWINYgViDXINYgViBXINcgVyDYINcgVyBYINggWCDZINggWCBZINkgWSDaINkgWSBaINogWiDbINogWiBbINsgWyDcINsgWyBcINwgXCDdINwgXCBdIN0gXSDeIN0gXSBeIN4gXiDfIN4gXiBfIN8gXyDgIN8gXyBgIOAgYCDhIOAgYCBhIOEgYSDiIOEgYSBiIOIgYiDjIOIgYiBjIOMgYyDkIOMgYyBkIOQgZCDlIOQgZCBlIOUgZSDmIOUgZSBmIOYgZiDnIOYgZiBnIOcgZyDoIOcgZyBoIOggaCDpIOggaCBpIOkgaSDqIOkgaSBqIOogaiDrIOogaiBrIOsgayDsIOsgayBsIOwgbCDtIOwgbCBtIO0gbSDuIO0gbSBuIO4gbiDvIO4gbiBvIO8gbyDwIO8gbyBwIPAgcCDxIPAgcCBxIPEgcSDyIPEgcSByIPIgciDzIPIgciBzIPMgcyD0IPMgcyB0IPQgdCD1IPQgdCB1IPUgdSD2IPUgdSB2IPYgdiD3IPYgdiB3IPcgdyD4IPcgdyB4IPggeCD5IPggeCB5IPkgeSD6IPkgeSB6IPogeiD7IPogeiB7IPsgeyD8IPsgeyB8IPwgfCD9IPwgfCB9IP0gfSD+IP0gfSB+IP4gfiD/IP4gfiB/IP8gfyAAIf8gfyCAIAAhgCABIQAhgCCBIAEhgSACIQEhgSCCIAIhgiADIQIhgiCDIAMhgyAEIQMhgyCEIAQhhCAFIQQhhCCFIAUhhSAGIQUhhSCGIAYhhiAHIQYhhiCHIAchhyAIIQchhyCIIAghiCAJIQghiCCJIAkhiSAKIQkhiSCKIAohiiALIQohiiCLIAshiyAMIQshiyCMIAwhjCANIQwhjCCNIA0hjSAOIQ0hjSCOIA4hjiAPIQ4hjiCPIA8hjyAQIQ8hjyCQIBAhkCARIRAhkCCRIBEhkSASIREhkSCSIBIhkiATIRIhkiCTIBMhkyAUIRMhkyCUIBQhlCAVIRQhlCCVIBUhlSAWIRUhlSCWIBYhliAXIRYhliCXIBchlyAYIRchlyCYIBghmCAZIRghmCCZIBkhmSAaIRkhmSCaIBohmiAbIRohmiCbIBshmyAcIRshmyCcIBwhnCAdIRwhnCCdIB0hnSAeIR0hnSCeIB4hniAfIR4hniCfIB8hnyAgIR8hnyCgICAhoCAhISAhoCChICEhoSAiISEhoSCiICIhoiAjISIhoiCjICMhoyAkISMhoyCkICQhpCAlISQhpCClICUhpSAmISUhpSCmICYhpiAnISYhpiCnICchpyAoISchpyCoICghqCApISghqCCpICkhqSAqISkhqSCqICohqiArISohqiCrICshqyAsISshqyCsICwhrCAtISwhrCCtIC0hrSAuIS0hrSCuIC4hriAvIS4hriCvIC8hryAwIS8hryCwIDAhsCAxITAhsCCxIDEhsSAyITEhsSCyIDIhsiAzITIhsiCzIDMhsyA0ITMhsyC0IDQhtCA1ITQhtCC1IDUhtSA2ITUhtSC2IDYhtiA3ITYhtiC3IDchtyA4ITchtyC4IDghuCA5ITghuCC5IDkhuSA6ITkhuSC6IDohuiA7ITohuiC7IDshuyA8ITshuyC8IDwhvCA9ITwhvCC9ID0hvSA+IT0hvSC+ID4hviA/IT4hviC/ID8hvyBAIT8hvyDAIEAhwCBBIUAh"), -"material": SubResource("ShaderMaterial_mtxcm"), +"material": ExtResource("2_mtxcm"), "primitive": 3, "uv_scale": Vector4(0, 0, 0, 0), "vertex_count": 8514, -"vertex_data": PackedByteArray("AAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAAAAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAAK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACAAAAAgK0gGkEAAACA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AAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAAAAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAAFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAACAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAgFTqLMEAAAAAAAAAAFTqLMEAAAAAAID//////78AgP/////+wgCA/////7zFAID/////Q8gAgP////+dygCA/////9HMAID/////5M4AgP/////c0ACA/////73SAID/////jNQAgP////9K1gCA//////vXAID/////odkAgP////8/2wCA/////9jcAID/////bN4AgP//////3wCA/////5HhAID/////JeMAgP////++5ACA/////1zmAID/////A+gAgP////+06QCA/////3LrAID/////QO0AgP////8h7wCA/////xnxAID/////LfMAgP////9g9QCA/////7r3AID/////QvoAgP///////ACA////////AID//wAA//wAgP//AABC+gCA//8AALr3AID//wAAYPUAgP//AAAt8wCA//8AABnxAID//wAAIe8AgP//AABA7QCA//8AAHLrAID//wAAtOkAgP//AAAD6ACA//8AAFzmAID//wAAvuQAgP//AAAl4wCA//8AAJHhAID//wAA/98AgP//AABs3gCA//8AANjcAID//wAAP9sAgP//AACh2QCA//8AAPvXAID//wAAStYAgP//AACM1ACA//8AAL3SAID//wAA3NAAgP//AADkzgCA//8AANHMAID//wAAncoAgP//AABDyACA//8AALzFAID//wAA/sIAgP//AAD/vwCA///9Bf+/AID//3gL/78AgP//iBD/vwCA//87Ff+/AID//6IZ/78AgP//yR3/vwCA//+6If+/AID//30l/78AgP//GSn/vwCA//+VLP+/AID///cv/78AgP//RDP/vwCA//+BNv+/AID//7I5/78AgP//2jz/vwCA////P/+/AID//yRD/78AgP//TUb/vwCA//9+Sf+/AID//7lM/78AgP//B1D/vwCA//9oU/+/AID//+VW/78AgP//glr/vwCA//9EXv+/AID//zVi/78AgP//W2b/vwCA///Dav+/AID//3Zv/78AgP//hXT/vwCA//8Bev+/AID///9//78AgP///YX/vwCA//95i/+/AID//4iQ/78AgP//O5X/vwCA//+jmf+/AID//8md/78AgP//uqH/vwCA//98pf+/AID//xmp/78AgP//laz/vwCA///3r/+/AID//0Sz/78AgP//gLb/vwCA//+xuf+/AID//9q8/78AgP///7//vwCA//8kw/+/AID//0zG/78AgP//fcn/vwCA//+6zP+/AID//wfQ/78AgP//adP/vwCA///l1v+/AID//4Ha/78AgP//RN7/vwCA//804v+/AID//1vm/78AgP//wur/vwCA//917/+/AID//4T0/78AgP//APr/vwCA//////+//38X+v///79JgNL5///+wpOAkfn//7zF24BU+f//Q8gkgRv5//+dymuB5vj//9HMsYG2+P//5M72gYr4///c0DmCY/j//73SfIJA+P//jNS8giH4//9K1vuCCPj///vXOIPy9///odlzg+H3//8/26yD1vf//9jc44PP9///bN4YhM33////30qEz/f//5HheoTW9///JeOnhOL3//++5NKE8vf//1zm+oQI+P//A+gfhSH4//+06UGFQPj//3LrYIVj+P//QO18hYr4//8h75WFtfj//xnxq4Xm+P//LfO+hRv5//9g9c2FU/n//7r32YWR+f//QvrihdL5/////OeFF/r/////LIYc+gAA//xthiT6AABC+qqGMPoAALr34oZA+gAAYPUWh1L6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O5X/v1psbuejmf+/uWzg5smd/78gbV/muqH/v49t7OV8pf+/B26H5Rmp/7+Gbi/llaz/vw5v5eT3r/+/nG+p5ESz/78ycHrkgLb/v89wWOSxuf+/c3FE5Nq8/78ecj3k/7//v9ByROQkw/+/iHNY5EzG/79HdHrkfcn/vwx1qeS6zP+/13Xl5AfQ/7+odi/ladP/v393h+Xl1v+/XHjs5YHa/78+eV/mRN7/vyZ64OY04v+/E3tu51vm/78GfAvowur/v/18teh17/+/+X1t6YT0/7/6fjXqAPr/v/9/Cuv///+//3+v5v///786gbnl///+wm+C0+T//7zFnYP/4///Q8jFhDzj//+dyuaFieL//9HMAIfm4f//5M4UiFPh///c0CGJ0eD//73SJ4pe4P//jNQmi/rf//9K1h6Mp9////vXD41h3///odn5jSzf//8/29uOB9///9jcto/v3v//bN6KkOne////31aR8N7//5HhGpIH3///JePXki3f//++5IuTYt///1zmOJSn3///A+jclPrf//+06XiVXuD//3LrC5bR4P//QO2VllPh//8h7xaX5uH//xnxjpeJ4v//LfP8lzzj//9g9WGY/+P//7r3u5jT5P//QvoKmbnl/////E6Zr+b/////RZr05gAA//wqm0PnAABC+v6bnecAALr3wpwB6AAAYPV1nW/oAAAt8xie5+gAABnxqp5o6QAAIe8tn/LpAABA7aCfhuoAAHLrA6Ah6wAAtOlXoMbrAAAD6JugcuwAAFzm0KAn7QAAvuT2oOPtAAAl4w2hqO4AAJHhFaF07wAA/98NoUfwAABs3vagIvEAANjc0KAF8gAAP9uboO/yAACh2Veg4PMAAPvXA6DY9AAAStagn9f1AACM1C2f3fYAAL3SqZ7q9wAA3NAYnv34AADkznSdGPoAANHMwpw5+wAAncr+m2H8AABDyCqbj/0AALzFRZrE/gAA/sJNmf//AAD/v7llxP79Bf+/1GSP/XgL/78AZGH8iBD/vzxjOfs7Ff+/iWIY+qIZ/7/mYf34yR3/v1Rh6ve6If+/0WDd9n0l/79dYNf1GSn/v/tf2PSVLP+/p1/g8/cv/79jX+/yRDP/vy1fBfKBNv+/CF8i8bI5/7/xXkfw2jz/v+ledO//P/+/8V6o7iRD/78IX+PtTUb/vy5fJ+1+Sf+/Y19y7LlM/7+nX8brB1D/v/tfIetoU/+/XmCG6uVW/7/RYPLpglr/v1NhaOlEXv+/5WHn6DVi/7+JYm/oW2b/vzxjAejDav+//2Od53Zv/7/UZEPnhXT/v7ll9OYBev+/sGav5v9//7/0Zrnl/YX/v0Nn0+R5i/+/nWf/44iQ/78CaDzjO5X/v3BoieKjmf+/6Gjm4cmd/79paVPhuqH/v/Np0eB8pf+/hmpe4Bmp/78ia/rflaz/v8Zrp9/3r/+/c2xh30Sz/78nbS3fgLb/v+RtB9+xuf+/qG7w3tq8/790b+ne/7//v0hw8N4kw/+/I3EH30zG/78Fcizffcn/v+9yYd+6zP+/4HOn3wfQ/7/YdPrfadP/v9d1XuDl1v+/3XbR4IHa/7/qd1PhRN7/v/545uE04v+/GHqJ4lvm/785ezzjwur/v2F8/+N17/+/j33S5IT0/7/EfrnlAPr/v/9/r+b///+//3+U4v///79tgYHh///+wtKCguD//7zFL4SX3///Q8iDhb/e//+dys+G+t3//9HMFIhH3f//5M5PiaXc///c0IOKF9z//73Sr4uZ2///jNTSjCzb//9K1u6N0dr///vXAY+G2v//odkMkEza//8/2w+RI9r//9jcCpIK2v//bN79kgLa////3+iTCtr//5HhypQj2v//JeOklUza//++5HWWhtr//1zmPpfR2v//A+j+lyzb//+06bWYmdv//3LrY5kX3P//QO0Hmqbc//8h76KaR93//xnxM5v63f//LfO6m7/e//9g9Tecl9///7r3qJyB4P//QvoPnYHh/////GqdlOL/////fJ7v4gAA//x7n1XjAABC+magx+MAALr3PqFD5AAAYPUEosrkAAAt87eiW+UAABnxWKP25QAAIe/no5vmAABA7WWkSecAAHLr0aQA6AAAtOktpcDoAAAD6HeliOkAAFzmsaVa6gAAvuTapTTrAAAl4/OlFuwAAJHh+6UA7QAA/9/zpfPtAABs3tql7u4AANjcsaXx7wAAP9t3pfzwAACh2S2lEPIAAPvX0aQr8wAAStZlpE/0AACM1OejevUAAL3SWKOu9gAA3NC3our3AADkzgSiLvkAANHMPqF6+gAAncpmoM/7AABDyHufLP0AALzFfJ6R/gAA/sJqnf//AAD/v4Jhkf79Bf+/g2As/XgL/7+XX8/7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fGedyUzG/7/saM7Jfcn/v2ZqEsq6zP+/62tqygfQ/797bdbKadP/vxdvV8vl1v+/v3Dty4Ha/790cpnMRN7/vzZ0W8004v+/BnY0zlvm/7/kdyXPwur/v9J5MNB17/+/0HtU0YT0/7/ffZTSAPr/v/9/8NP///+//3+Y0P///79IgjDP///+wn2E583//7zFnoa7zP//Q8iuiKrL//+dyqyKs8r//9HMmozVyf//5M55jg/J///c0EmQYMj//73SDJLHx///jNTBk0TH//9K1mqV1sb///vXCJd9xv//odmZmDjG//8/2yCaB8b//9jcnJvpxf//bN4OneDF////33ee6cX//5Hh1p8Hxv//JeMroTjG//++5Hiifcb//1zmvKPWxv//A+j3pEPH//+06Smmx8f//3LrU6dgyP//QO11qA/J//8h742p1cn//xnxnqqzyv//LfOlq6rL//9g9aOsu8z//7r3ma3nzf//QvqErjDP/////GavmND/////zbB50QAA//wWsmXSAABC+kOzWtMAALr3VLRZ1AAAYPVKtWDVAAAt8yi2cNYAABnx77aJ1wAAIe+dt6rYAABA7Ta41NkAAHLrubgH2wAAtOknuULcAAAD6IC5ht0AAFzmxrnS3gAAvuT3uSjgAAAl4xS6h+EAAJHhHrrv4gAA/98UumHkAABs3ve53eUAANjcxrlk5wAAP9uAufboAACh2Sa5k+oAAPvXubg87AAAStY2uPLtAACM1J23tO8AAL3S77aF8QAA3NAotmPzAADkzkq1UvUAANHMVLRQ9wAAncpDs1/5AABDyBaygfsAALzFzbC1/QAA/sJmr///AAD/vzFPtf39Bf+/502B+3gL/7+7TF/5iBD/v6pLUPc7Ff+/s0pS9aIZ/7/WSWPzyR3/vw9JhfG6If+/YEi0730l/7/IR/LtGSn/v0VHPOyVLP+/10aT6vcv/79+RvboRDP/vzhGZOeBNv+/B0bd5bI5/7/qRWHk2jz/v+BF7+L/P/+/6kWH4SRD/78HRijgTUb/vzhG0t5+Sf+/fkaG3blM/7/XRkLcB1D/v0VHB9toU/+/x0fU2eVW/79gSKrYglr/vw9JiddEXv+/1klw1jVi/7+0SmDVW2b/v6pLWdTDav+/u0xa03Zv/7/oTWXShXT/vzFPedEBev+/l1CY0P9//796UTDP/YX/v2RS5815i/+/W1O7zIiQ/79ZVKrLO5X/v2BVs8qjmf+/cVbVycmd/7+JVw/JuqH/v6tYYMh8pf+/1VnHxxmp/78HW0THlaz/v0Jc1cb3r/+/hV19xkSz/7/TXjjGgLb/vyhgB8axuf+/h2Hpxdq8/7/wYuDF/7//v2Jk6cUkw/+/3mUHxkzG/79lZzjGfcn/v/Zofca6zP+/lGrWxgfQ/789bETHadP/v/Jtx8fl1v+/tW9gyIHa/7+FcQ/JRN7/v2Rz1ck04v+/UnWzylvm/79Qd6rLwur/v2B5usx17/+/gXvnzYT0/7+2fTDPAPr/v/9/mND///+//39Uzf///79wguTL///+wsmElMr//7zFDYdiyf//Q8g9iUzI//+dylmLUcf//9HMZI1wxv//5M5fj6fF///c0EmR9sT//73SJZNcxP//jNTzlNfD//9K1rSWaMP///vXaJgOw///odkQmsnC//8/262bl8L//9jcP516wv//bN7GnnDC////30SgesL//5HhuaGXwv//JeMko8nC//++5IekDsP//1zm4aVow///A+gyp9fD//+06XyoXMT//3Lrvan2xP//QO33qqfF//8h7yiscMb//xnxUq1Qx///LfN0rkzI//9g9Y6vYsn//7r3n7CUyv//QvqpseTL/////KmyVM3/////GbRVzgAA//xqtV7PAABC+pu2cNAAALr3sreJ0QAAYPWtuKvSAAAt84651dMAABnxVroH1QAAIe8Iu0DWAABA7aK7gtcAAHLrJrzL2AAAtOmVvB3aAAAD6O+8d9sAAFzmNb3Z3AAAvuRmvUXeAAAl44S9ud8AAJHhjr034QAA/9+Evb/iAABs3ma9UeQAANjcNb3u5QAAP9vvvJbnAACh2ZW8SukAAPvXJrwL6wAAStaiu9jsAACM1Ai7tO4AAL3SVrqf8AAA3NCOuZnyAADkzq24pPQAANHMsrfB9gAAncqctvH4AABDyGq1NPsAALzFGbSO/QAA/sKpsv//AAD/v+VLjv39Bf+/k0o0+3gL/79iSfH4iBD/v0xIwfY7Ff+/UUek9KIZ/79wRpnyyR3/v6hFn/C6If+/9kS07n0l/79cRNjsGSn/v9hDC+uVLP+/aUNK6fcv/78PQ5bnRDP/v8lC7uWBNv+/l0JR5LI5/796Qr/i2jz/v3BCN+H/P/+/ekK53yRD/7+YQkXeTUb/v8lC2dx+Sf+/D0N327lM/79pQx3aB1D/v9hDy9hoU/+/XESC1+VW/7/2REDWglr/v6dFB9VEXv+/cEbV0zVi/79RR6vSW2b/v0xIidHDav+/YUlw0HZv/7+USl7PhXT/v+VLVc4Bev+/VU1Uzf9//79VTuTL/YX/v19PlMp5i/+/b1BiyYiQ/7+KUUzIO5X/v6xSUcejmf+/1lNwxsmd/78HVafFuqH/v0FW9sR8pf+/gldcxBmp/7/MWNfDlaz/vx1aaMP3r/+/d1sNw0Sz/7/aXMnCgLb/v0Rel8Kxuf+/ul96wtq8/784YXDC/7//v79iesIkw/+/UWSXwkzG/7/uZcnCfcn/v5ZnDsO6zP+/SmlowwfQ/78La9fDadP/v9lsXMTl1v+/tW72xIHa/7+fcKfFRN7/v5pycMY04v+/pXRRx1vm/7/BdkzIwur/v/F4Ycl17/+/NXuTyoT0/7+OfeTLAPr/v/9/VM3///+//38iyv///7+WgqvI///+whSFVcf//7zFeYcfxv//Q8jIiQbF//+dygKMCMT//9HMKY4lw///5M49kFvC///c0EGSqcH//73SNZQOwf//jNQalonA//9K1vGXGsD///vXu5nAv///odl4m3q///8/2yqdSL///9jc0Z4rv///bN5uoCG/////3wGiK7///5HhiqNIv///JeMKpXq///++5IKmwL///1zm8qcawP//A+haqYnA//+06bqqDcH//3LrE6ypwf//QO1krVvC//8h76+uJcP//xnx8q8IxP//LfMvsQbF//9g9WWyH8b//7r3lLNVx///Qvq7tKvI/////Ny1Isr/////U7dCywAA//youGrMAABC+t+5mc0AALr3+LrPzgAAYPX1uwvQAAAt89i8T9EAABnxor2Z0gAAIe9UvuvTAABA7e++RNUAAHLrc7+k1gAAtOnkvwzYAAAD6D7Ae9kAAFzmhMDz2gAAvuS1wHTcAAAl49PA/d0AAJHh3cCQ3wAA/9/TwCzhAABs3rXA0+IAANjchMCF5AAAP9s+wEPmAACh2eS/DegAAPvXdL/k6QAAStbvvsnrAACM1FS+ve0AAL3Sor3A7wAA3NDYvNXxAADkzvW7/PMAANHM+Lo29gAAncrfuYX4AABDyKi46voAALzFU7dn/QAA/sLctf//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glfQstq8/79jWcey/7//v01b0LIkw/+/Ql3tskzG/79CXxyzfcn/v05hX7O6zP+/aWO2swfQ/7+SZSG0adP/v8xnorTl1v+/GGo4tYHa/794bOa1RN7/v+5urLY04v+/fHGLt1vm/78jdIa4wur/v+h2nrl17/+/zHnVuoT0/7/SfC68APr/v/9/rb3///+//3+Suv///79Rgxa5///+wnmGwLf//7zFfImMtv//Q8hcjHi1//+dyh6PgbT//9HMxJGls///5M5RlOKy///c0MeWOLL//73SKJmksf//jNR2myax//9K1rOdvbD///vX4J9osP//odn/oSaw//8/2xGk+K///9jcGKbcr///bN4VqNOv////3wiq3K///5Hh86v4r///JePXrSaw//++5LWvaLD//1zmjbG9sP//A+hhsyax//+06TG1pLH//3Lr/rY4sv//QO3JuOKy//8h75S6pbP//xnxXryBtP//LfMovni1//9g9fS/jLb//7r3w8HAt///QvqVwxa5/////GzFkrr/////58ZovAAA//w9yDq+AABC+nHJCcAAALr3hsrVwQAAYPV9y6DDAAAt81nMasUAABnxG800xwAAIe/GzQDJAABA7VnOzcoAAHLr186dzAAAtOlAz3HOAAAD6JXPSdAAAFzm188m0gAAvuQG0ArUAAAl4yHQ9dUAAJHhK9Dp1wAA/98h0OXZAABs3gbQ7NsAANjc18/+3QAAP9uVzx7gAACh2UDPS+IAAPvX186I5AAAStZZztbmAACM1MbNN+kAAL3SG82t6wAA3NBZzDnuAADkzn3L3/AAANHMhsqh8wAAncpxyYL2AABDyD3IhPkAALzF58as/AAA/sJsxf//AAD/vxc5rPz9Bf+/wTeE+XgL/7+NNoL2iBD/v3g1ofM7Ff+/gDTf8KIZ/7+lMznuyR3/v+Myreu6If+/NzI36X0l/7+lMdbmGSn/vyYxiOSVLP+/vjBL4vcv/79pMB7gRDP/vyYw/t2BNv+/+C/s27I5/7/dL+XZ2jz/v9Mv6df/P/+/3S/11SRD/7/4LwrUTUb/vyYwJtJ+Sf+/aDBJ0LlM/7++MHHOB1D/vyYxncxoU/+/pTHNyuVW/783MgDJglr/v+MyNMdEXv+/pTNqxTVi/7+BNKDDW2b/v3g11cHDav+/jTYJwHZv/7/BNzq+hXT/vxc5aLwBev+/kjqSuv9//79pPBa5/YX/vzs+wLd5i/+/CkCMtoiQ/7/WQXi1O5X/v59DgbSjmf+/akWls8md/781R+KyuqH/vwBJOLJ8pf+/zUqksRmp/7+dTCaxlaz/v3FOvbD3r/+/SVBosESz/78nUiawgLb/vwtU+K+xuf+/9lXcr9q8/7/pV9Ov/7//v+ZZ3K8kw/+/7Vv4r0zG/7//XSawfcn/vx5gaLC6zP+/S2K9sAfQ/7+IZCaxadP/v9ZmpLHl1v+/N2k4soHa/7+ta+KyRN7/vzpupbM04v+/4HCBtFvm/7+ic3i1wur/v4J2jLZ17/+/hXnAt4T0/7+tfBa5APr/v/9/krr///+//39wt////792g/m1///+wsCGqLT//7zF4Yl5s///Q8jejGqy//+dyrqPd7H//9HMeJKgsP//5M4bleGv///c0KeXO6///73SHJqrrv//jNR+nDCu//9K1s6eya3///vXDqF3rf//odk/ozet//8/22SlCa3//9jcfafurP//bN6MqeWs////35Gr7qz//5Hhj60Jrf//JeOHrzet//++5Hixd63//1zmZbPJrf//A+hPtTCu//+06Ta3q67//3LrG7k7r///QO0Au+Gv//8h7+W8oLD//xnxy753sf//LfO1wGqy//9g9aLCebP//7r3lMSotP//QvqMxvm1/////I3IcLf/////BMpxuQAA//xWy2i7AABC+oXMW70AALr3lM1JvwAAYPWGzjLBAAAt817PGcMAABnxHND+xAAAIe/D0OPGAABA7VPRyMgAAHLrztGvygAAtOk00pjMAAAD6IfShc4AAFzmx9J30AAAvuT00m7SAAAl4w/TbNQAAJHhGNNy1gAA/98P04HYAABs3vTSmtoAANjcx9K+3AAAP9uH0vDeAACh2TTSMOEAAPvXztGA4wAAStZT0eHlAACM1MPQV+gAAL3SHNDi6gAA3NBez4XtAADkzobORPAAANHMlM0f8wAAncqFzBz2AABDyFbLPfkAALzFBMqH/AAA/sKNyP//AAD/v/o1h/z9Bf+/qDQ9+XgL/795Mxz2iBD/v2oyH/M7Ff+/eDFE8KIZ/7+gMIXtyR3/v+Iv4uq6If+/Oi9X6H0l/7+rLuHlGSn/vy8ugOOVLP+/yi0w4fcv/793LfDeRDP/vzYtvtyBNv+/Ci2a2rI5/7/vLIHY2jz/v+Ysctb/P/+/7yxs1CRD/78KLW7STUb/vzYtd9B+Sf+/dy2FzrlM/7/KLZjMB1D/vy8ur8poU/+/qy7IyOVW/786L+PGglr/v+Iv/sREXv+/oDAZwzVi/794MTLBW2b/v2oySb/Dav+/eTNbvXZv/7+oNGm7hXT/v/o1cbkBev+/cTdwt/9//79xOfm1/YX/v2o7qLR5i/+/Wz15s4iQ/79IP2qyO5X/vzNBd7Gjmf+/GUOgsMmd/7/+ROGvuqH/v+NGO698pf+/yEirrhmp/7+vSjCulaz/v5lMya33r/+/hk53rUSz/793UDetgLb/v29SCa2xuf+/bFTurNq8/79yVuWs/7//v4FY7qwkw/+/mloJrUzG/7+/XDetfcn/v/Bed626zP+/MGHJrQfQ/7+AYzCuadP/v+Jlq67l1v+/V2g7r4Ha/7/jauGvRN7/v4ZtoLA04v+/RHB3sVvm/78gc2qywur/vx12ebN17/+/PnmotIT0/7+IfPm1APr/v/9/cLf///+//39EtP///7+cg9Sy///+wgiHibH//7zFSIpgsP//Q8hhjVev//+dylaQa67//9HMLJOZrf//5M7mleCs///c0IeYPqz//73SEJuyq///jNSGnTur//9K1uif16r///vXO6KHqv//odl+pEmq//8/27WmHar//9jc4KgDqv//bN4Bq/up////3xmtA6r//5HhKq8dqv//JeM1sUmq//++5Duzh6r//1zmPbXXqv//A+g8tzur//+06Tq5sqv//3LrOLs+rP//QO02veCs//8h7ze/ma3//xnxPMFrrv//LfNFw1ev//9g9VTFYLD//7r3bMeJsf//QvqNydSy/////LnLRLT/////Ks1xtgAA//x0zpG4AABC+p3PqboAALr3ptC5vAAAYPWT0cK+AAAt82XSxsAAABnxHtPHwgAAIe/A08bEAABA7UzUw8YAAHLrw9TByAAAtOkm1cHKAAAD6HbVw8wAAFzmtNXJzgAAvuTg1dPQAAAl4/rV5NIAAJHhA9b91AAA/9/61R7XAABs3uDVSdkAANjctNV/2wAAP9t21cPdAACh2SbVFeAAAPvXw9R44gAAStZM1O3kAACM1MDTd+cAAL3SHtMX6gAA3NBl0tHsAADkzpPRp+8AANHMptCd8gAAncqdz7b1AABDyHTO9vgAALzFKs1h/AAA/sK5y///AAD/v9QyYfz9Bf+/ijH2+HgL/79hMLb1iBD/v1cvnfI7Ff+/ay6n76IZ/7+ZLdHsyR3/v+AsF+q6If+/PSx3530l/7+yK+3kGSn/vzoreOKVLP+/2CoV4Pcv/7+IKsPdRDP/v0kqf9uBNv+/HipJ2bI5/78EKh7X2jz/v/sp/dT/P/+/BCrk0iRD/78eKtPQTUb/v0kqyc5+Sf+/iCrDzLlM/7/YKsHKB1D/vzorwchoU/+/sivDxuVW/789LMbEglr/v+Asx8JEXv+/mS3GwDVi/79rLsK+W2b/v1cvubzDav+/YDCpunZv/7+KMZK4hXT/v9QycbYBev+/RDREtP9//79wNtSy/YX/v5I4ibF5i/+/qjpgsIiQ/7+5PFevO5X/v8E+a66jmf+/x0CZrcmd/7/IQuCsuqH/v8ZEPqx8pf+/xEayqxmp/7/CSDurlaz/v8FK16r3r/+/w0yHqkSz/7/JTkmqgLb/v9RQHaqxuf+/5VIDqtq8/7/9VPup/7//vx5XA6okw/+/SVkdqkzG/7+AW0mqfcn/v8Ndh6q6zP+/FmDXqgfQ/794YjuradP/v+5ksqvl1v+/d2c+rIHa/78YauCsRN7/v9Jsma004v+/qG9rrlvm/7+dclevwur/v7Z1YLB17/+/9niJsYT0/79ifNSyAPr/v/9/RLT///+//38Ksf///7/Cg6Kv///+wlCHX67//7zFr4o/rf//Q8jkjT2s//+dyvSQWKv//9HM4pONqv//5M6yltqp///c0GiZPan//73SBpy2qP//jNSOnkOo//9K1gSh5Kf///vXaKOWp///odm+pVun//8/2waoMKf//9jcRKoXp///bN53rA+n////36KuF6f//5HhxrAwp///JePkslun//++5P60lqf//1zmFbfkp///A+gruUOo//+06UG7tqj//3LrV709qf//QO1xv9qp//8h747Bjar//xnxscNYq///LfPbxT2s//9g9Q7IP63//7r3Tcpfrv//QvqYzKKv/////PTOCrH/////XNBlswAA//ye0bG1AABC+r/S77cAALr3wNMiugAAYPWm1E28AAAt83HVcL4AABnxJNaNwAAAIe/A1qbCAABA7UfXvcQAAHLrutfSxgAAtOka2OjIAAAD6GfY/8oAAFzm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wur/v3p00KZ17/+/GHjbp4T0/7/sewepAPr/v/9/WKr///+//3/Wpv///787hJWl///+wjSIeKT//7zF8ot6o///Q8h+j5mi//+dytyS0aH//9HME5Yhof//5M4nmYeg///c0B2cAKD//73S956Mn///jNS5oSqf//9K1mek2J7///vXA6eWnv//odmPqWSe//8/2w6sQJ7//9jcgq4qnv//bN7tsCOe////31CzKp7//5Hhr7VAnv//JeMKuGSe//++5GO6lp7//1zmvbzYnv//A+gZvyqf//+06XnBjJ///3Lr4MMAoP//QO1Pxoeg//8h78jIIaH//xnxT8vRof//LfPmzZmi//9g9Y/QeqP//7r3UdN4pP//Qvot1pWl/////CjZ1qb/////adrRqQAA//yG26ysAABC+oTcba8AALr3Zd0XsgAAYPUs3q60AAAt89zeNbcAABnxd9+vuQAAIe/93x68AABA7XHghL4AAHLr0+DlwAAAtOkl4UHDAAAD6GfhmsUAAFzmmuH0xwAAvuS+4U/KAAAl49PhrcwAAJHh2uERzwAA/9/T4XzRAABs3r7h79MAANjcmuFu1gAAP9tn4frYAACh2SXhltsAAPvX0+BE3gAAStZx4AfhAACM1P3f4eMAAL3Sd9/W5gAA3NDc3urpAADkzizeIe0AANHMZd2A8AAAncqE3Av0AABDyIbbyvcAALzFadrD+wAA/sIo2f//AAD/v5Ulw/v9Bf+/eCTK93gL/796Iwv0iBD/v5kigPA7Ff+/0iEh7aIZ/78hIerpyR3/v4cg1ua6If+/ASDh430l/7+NHwfhGSn/vyofRN6VLP+/2R6W2/cv/7+WHvrYRDP/v2QebtaBNv+/Px7v07I5/78qHnzR2jz/vyMeEc//P/+/Kh6tzCRD/78/Hk/KTUb/v2Qe9Md+Sf+/lh6axblM/7/ZHkHDB1D/vyof5cBoU/+/jR+EvuVW/78BIB68glr/v4cgr7lEXv+/ISE1tzVi/7/SIa20W2b/v5kiF7LDav+/eiNtr3Zv/794JKyshXT/v5Ul0akBev+/1ibWpv9//7/RKZWl/YX/v60seKR5i/+/bi96o4iQ/78YMpmiO5X/v6800aGjmf+/NTchocmd/7+vOYeguqH/vx48AKB8pf+/hT6Mnxmp/7/lQCqflaz/v0FD2J73r/+/m0WWnkSz/7/0R2SegLb/v05KQJ6xuf+/rkwqntq8/78RTyOe/7//v3xRKp4kw/+/8FNAnkzG/79vVmSefcn/v/tYlp66zP+/l1vYngfQ/79FXiqfadP/vwdhjJ/l1v+/4WMAoIHa/7/XZoegRN7/v+tpIaE04v+/Im3RoVvm/7+AcJmiwur/vwx0eqN17/+/ynd4pIT0/7/De5WlAPr/v/9/1qb///+//38xo////79mhAOi///+woSI96D//7zFZIwJoP//Q8gOkDaf//+dyoeTfJ7//9HM15bXnf//5M4Cmkid///c0A2dy5z//73S/J9fnP//jNTSogSc//9K1pOluJv///vXQqh7m///odngqkyb//8/23KtK5v//9jc+K8Xm///bN52shCb////3+20F5v//5HhYLcrm///JePQuUyb//++5EC8e5v//1zmsb64m///A+gmwQSc//+06aHDX5z//3LrJcbLnP//QO2zyEid//8h707L153//xnx+c18nv//LfO50Daf//9g9Y/TCaD//7r3gtb3oP//QvqU2QOi/////MzcMaP/////+91ppgAA//wH33ypAABC+vXfbqwAALr3x+BFrwAAYPWC4QSyAAAt8ybisLQAABnxtuJLtwAAIe8z49m5AABA7Z/jXLwAAHLr+uPXvgAAtOlG5EzBAAAD6IPkvcMAAFzmsuQtxgAAvuTT5J3IAAAl4+fkEMsAAJHh7eSHzQAA/9/n5AXQAABs3tPkjNIAANjcsuQd1QAAP9uD5LzXAACh2UbkatoAAPvX+uMr3QAAStaf4wHgAACM1DPj8OIAAL3StuL75QAA3NAm4ibpAADkzoLhduwAANHMx+Dw7wAAncr135nzAABDyAffefcAALzF+92Y+wAA/sLM3P//AAD/vwMimPv9Bf+/9yB593gL/78JIJnziBD/vzYf8O87Ff+/fB527KIZ/7/YHSbpyR3/v0cd++W6If+/yxzw4n0l/79fHAHgGSn/vwQcK92VLP+/uBtq2vcv/797G7zXRDP/v0sbHdWBNv+/KhuM0rI5/78WGwXQ2jz/vxAbh83/P/+/FhsQyyRD/78qG53ITUb/v0sbLcZ+Sf+/exu9w7lM/7+4G0zBB1D/vwQc175oU/+/XxxcvOVW/7/LHNm5glr/v0cdSrdEXv+/2B2wtDVi/798HgSyW2b/vzYfRa/Dav+/CSBurHZv/7/3IHyphXT/vwMiaaYBev+/MSMxo/9//79qJgOi/YX/v3wp96B5i/+/bywJoIiQ/79ELzafO5X/vwUyfJ6jmf+/sDTXncmd/79KN0iduqH/v9k5y5x8pf+/XDxfnBmp/7/YPgSclaz/v01BuJv3r/+/vkN7m0Sz/78uRkybgLb/v55IK5uxuf+/EUsXm9q8/7+ITRCb/7//vwZQF5skw/+/i1Irm0zG/78eVUybfcn/v7xXe5u6zP+/a1q4mwfQ/78sXQScadP/vwJgX5zl1v+/8WLLnIHa/7/8ZUidRN7/vydp15004v+/d2x8nlvm/7/wbzafwur/v5pzCaB17/+/enf3oIT0/7+YewOiAPr/v/9/MaP///+//39jn////7+ShEue///+wtiIU53//7zF2ox3nP//Q8iikLWb//+dyjiUCpv//9HMoZdzmv//5M7kmu+Z///c0AWefZn//73SCaEamf//jNTzo8eY//9K1semgpj///vXialKmP//odk6rB+Y//8/29+uAZj//9jceLHvl///bN4KtOmX////35W275f//5HhHbkBmP//JeOjux+Y//++5Cq+Spj//1zms8CCmP//A+hCw8eY//+06dnFGpn//3Lre8h9mf//QO0py++Z//8h7+jNc5r//xnxu9AKm///LfOl07Wb//9g9avWd5z//7r30tlTnf//Qvog3Uue/////JvgY5//////s+HeogAA//yr4iumAABC+objUqkAALr3SORZrAAAYPX05EOvAAAt84rlFbIAABnxDubTtAAAIe+B5oO3AABA7ePmJLoAAHLrNue7vAAAtOl850q/AAAD6LPn1MEAAFzm3udbxAAAvuT95+HGAAAl4w/oaMkAAJHhFej0ywAA/98P6IXOAABs3v3nH9EAANjc3ufD0wAAP9uz53XWAACh2XznNtkAAPvXNucL3AAAStbj5vXeAACM1IHm+eEAAL3SDuYa5QAA3NCK5VzoAADkzvTkxusAANHMSORb7wAAncqG4yPzAABDyKviJvcAALzFs+Fr+wAA/sKb4P//AAD/v0oea/v9Bf+/Ux0m93gL/794HCPziBD/v7YbW+87Ff+/ChvG66IZ/790GlzoyR3/v/AZGuW6If+/fRn54X0l/78aGfXeGSn/v8gYC9yVLP+/ghg22fcv/79KGHXWRDP/vx8Yw9OBNv+/ARgf0bI5/7/vF4XO2jz/v+kX9Mv/P/+/7xdoySRD/78BGOHGTUb/vx8YW8R+Sf+/ShjUwblM/7+CGEq/B1D/v8gYurxoU/+/GhkkuuVW/799GYO3glr/v/AZ1LREXv+/dBoVsjVi/78KG0OvW2b/v7YbWazDav+/eBxSqXZv/79THSumhXT/v0oe3qIBev+/Yx9jn/9//7/eIkue/YX/vysmU515i/+/Uil3nIiQ/79YLLWbO5X/v0IvCpujmf+/FjJzmsmd/7/VNO+ZuqH/v4M3fZl8pf+/JDoamRmp/7+8PMeYlaz/v0o/gpj3r/+/1EFKmESz/79bRB+YgLb/v+FGAZixuf+/aUnvl9q8/7/0S+mX/7//v4ZO75ckw/+/H1EBmEzG/7/EUx+Yfcn/v3VWSpi6zP+/N1mCmAfQ/78LXMeYadP/v/VeGpnl1v+/+WF9mYHa/78aZe+ZRN7/v11oc5o04v+/xmsKm1vm/79cb7Wbwur/vyRzd5x17/+/JndTnYT0/79se0ueAPr/v/9/Y5////+//39jm////7/BhGWa///+wi+JhZn//7zFVY2/mP//Q8g9kRCY//+dyvCUdpf//9HMc5julv//5M7Om3iW///c0AWfEpb//73SHqK6lf//jNQdpW+V//9K1gWoMZX///vX2qoAlf//odmfrdqU//8/21ewv5T//9jcBLOulP//bN6qtamU////30q4rpT//5Hh57q/lP//JeOEvdqU//++5CPAAJX//1zmxsIxlf//A+hwxW+V//+06STIupX//3Lr5coSlv//QO23zXiW//8h75vQ7pb//xnxl9N2l///LfOv1hCY//9g9enZv5j//7r3Sd2Fmf//QvrW4GWa/////JrkY5v/////mOUnnwAA//x55rWiAABC+j/nFaYAALr37udOqQAAYPWI6GasAAAt8w/pYq8AABnxhelHsgAAIe/s6Re1AABA7UTq2bcAAHLrjuqNugAAtOnM6ji9AAAD6P7q278AAFzmJOt6wgAAvuQ/6xbFAAAl40/rtMcAAJHhVOtUygAA/99P6/nMAABs3j/rp88AANjcJOte0gAAP9v+6iPVAACh2czq+NcAAPvXjurg2gAAStZE6t/dAACM1Ozp+OAAAL3Shekw5AAA3NAP6Yvn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RN7/v9lkWos04v+/sWili1vm/7+/bPqLwur/vw9xW4x17/+/q3XLjIT0/7+gekqNAPr/v/9/243///+//3+qiP///7+ahUuI///+wsKK+If//7zFiY+wh///Q8j/k3GH//+dyjCYOof//9HMJpwKh///5M7qn+CG///c0IOjvIb//73S+Kaehv//jNRPqoSG//9K1o2tb4b///vXt7Bdhv//odnQs1CG//8/29y2R4b//9jc4LlBhv//bN7evECG////39u/QYb//5Hh2cJHhv//JePdxVCG//++5OjIXYb//1zmAcxvhv//A+gpz4SG//+06WbSnob//3LrvdW8hv//QO0y2eCG//8h783cCof//xnxk+A6h///LfOL5HGH//9g9cLosIf//7r3Qu34h///QvoY8kuI/////FT3qoj/////s/fmjQAA//wF+LuSAABC+k34O5cAALr3jPhxmwAAYPXD+GufAAAt8/P4MaMAABnxHfnLpgAAIe9B+UCqAABA7WD5l60AAHLrevnUsAAAtOmP+f2zAAAD6KD5FbcAAFzmrfkhugAAvuS3+SS9AAAl47z5IsAAAJHhvvkfwwAA/9+8+R3GAABs3rf5IckAANjcrfkuzAAAP9ug+UfPAACh2Y/5cNIAAPvXevmu1QAAStZg+QXZAACM1EH5e9wAAL3SHfkU4AAA3NDz+NjjAADkzsP4zucAANHMjPj+6wAAncpN+HTwAABDyAX4PPUAALzFs/dk+gAA/sJU9///AAD/v0sIZPr9Bf+/+Qc89XgL/7+wB3TwiBD/v3IH/us7Ff+/OgfO56IZ/78KB9jjyR3/v+EGFOC6If+/vQZ73H0l/7+dBgXZGSn/v4MGrtWVLP+/bwZw0vcv/79eBkfPRDP/v1EGLsyBNv+/RwYhybI5/79BBh3G2jz/vz8GH8P/P/+/QQYiwCRD/79HBiS9TUb/v1EGIbp+Sf+/XgYVt7lM/79vBv2zB1D/v4MG1LBoU/+/nQaXreVW/7+9BkCqglr/v+EGy6ZEXv+/CgcxozVi/786B2ufW2b/v3IHcZvDav+/sAc7l3Zv/7/5B7uShXT/v0sI5o0Bev+/qQipiP9//7/mDUuI/YX/v7wS+Id5i/+/Ohewh4iQ/79yG3GHO5X/v2sfOoejmf+/MCMKh8md/7/MJuCGuqH/v0AqvIZ8pf+/mC2ehhmp/7/VMISGlaz/v/0zb4b3r/+/FjddhkSz/78gOlCGgLb/vyU9R4axuf+/I0BBhtq8/78gQ0CG/7//vx5GQYYkw/+/IklHhkzG/78uTFCGfcn/v0dPXYa6zP+/cVJvhgfQ/7+vVYSGadP/vwZZnobl1v+/ely8hoHa/78UYOCGRN7/v9hjCoc04v+/zmc6h1vm/7//a3GHwur/v3VwsId17/+/PHX4h4T0/79kekuIAPr/v/9/qoj///+//38Eg////7/bheKC///+wjmLxIL//7zFMJCqgv//Q8jOlJOC//+dyiKZf4L//9HMOJ1ugv//5M4aoV+C///c0M6kUoL//73SXahHgv//jNTNqz6C//9K1iKvNoL///vXY7Iwgv//odmTtSyC//8/27i4KIL//9jc1Lsmgv//bN7rviaC////3wLCJoL//5HhHcUogv//JeM9yCyC//++5GjLMIL//1zmpM42gv//A+jy0T6C//+06VjVR4L//3Lr3NhSgv//QO2E3F+C//8h71bgboL//xnxW+R/gv//LfOc6JOC//9g9SPtqoL//7r3//HEgv//Qvo/9+KC/////Pn8BIP/////HP2+iAAA//w6/f6NAABC+lT92pIAALr3a/1ilwAAYPV+/aObAAAt85D9p58AABnxnv16owAAIe+r/SGnAABA7bb9paoAAHLrwP0LrgAAtOnH/VqxAAAD6M39lLQAAFzm0v3AtwAAvuTV/eG6AAAl49f9+70AAJHh2P0SwQAA/9/X/SrEAABs3tX9RscAANjc0v1qygAAP9vN/ZrNAACh2cf929AAAPvXwP0x1AAASta2/aHXAACM1Kv9L9sAAL3Snv3k3gAA3NCQ/cXiAADkzn792+YAANHMa/0w6wAAncpU/c7vAABDyDr9xPQAALzFHP0j+gAA/sL5/P//AAD/v+ICI/r9Bf+/xALE9HgL/7+pAs7viBD/v5ICMOs7Ff+/gALb5qIZ/79uAsXiyR3/v2AC5N66If+/UwIv230l/79IAqHXGSn/vz0CMdSVLP+/NgLb0Pcv/78wAprNRDP/vysCasqBNv+/KAJGx7I5/78mAirE2jz/vyUCEsH/P/+/JgL7vSRD/78oAuG6TUb/vysCwLd+Sf+/MAKUtLlM/782AlqxB1D/vz0CC65oU/+/SAKlquVW/79TAiGnglr/v2ACeqNEXv+/bgKnnzVi/7+AAqObW2b/v5ICYpfDav+/qQLaknZv/7/EAv6NhXT/v+ICvogBev+/BQMEg/9//7++COKC/YX/v/4NxIJ5i/+/2xKqgoiQ/79hF5OCO5X/v6Ibf4Kjmf+/px9ugsmd/796I1+CuqH/vyEnUoJ8pf+/pipHghmp/78MLj6Claz/v1kxNoL3r/+/lTQwgkSz/7/ANyyCgLb/v+E6KIKxuf+//D0mgtq8/78TQSaC/7//vypEJoIkw/+/RkcogkzG/79rSiyCfcn/v5tNMIK6zP+/3FA2ggfQ/78xVD6CadP/v6FXR4Ll1v+/MFtSgoHa/7/kXl+CRN7/v8ZiboI04v+/3GZ/glvm/78wa5OCwur/v85vqoJ17/+/xXTEgoT0/78jeuKCAPr/v/9/BIP///+//3/6fP///7/bhRx9///+wjmLOn3//7zFMJBUff//Q8jOlGt9//+dyiKZf33//9HMOJ2Qff//5M4aoZ99///c0M6krH3//73SXai3ff//jNTNq8B9//9K1iKvyH3///vXY7LOff//odmTtdJ9//8/27i41n3//9jc1LvYff//bN7rvth9////3wLC2H3//5HhHcXWff//JeM9yNJ9//++5GnLzn3//1zmpM7Iff//A+jy0cB9//+06VjVt33//3Lr3Nisff//QO2E3J99//8h71bgkH3//xnxW+R/ff//LfOc6Gt9//9g9SLtVH3//7r3//E6ff//Qvo/9xx9/////Pn8+nz/////HP0/dwAA//w6/f9xAABC+lT9JG0AALr3a/2caAAAYPV+/VtkAAAt85D9V2AAABnxnv2EXAAAIe+r/d1YAABA7bb9WVUAAHLrwP3zUQAAtOnH/aNOAAAD6M39aksAAFzm0v0+SAAAvuTV/R1FAAAl49f9A0IAAJHh2P3sPgAA/9/X/dQ7AABs3tX9uDgAANjc0v2TNQAAP9vN/WQyAACh2cf9Ii8AAPvXwP3NKwAASta2/VwoAACM1Kv9zyQAAL3Snv0aIQAA3NCQ/TgdAADkzn79IhkAANHMa/3OFAAAncpU/S8QAABDyDr9OQsAALzFHP3bBQAA/sL5/AAAAAD/v+IC2wX9Bf+/xAI5C3gL/7+pAi8QiBD/v5ICzhQ7Ff+/gAIiGaIZ/79uAjgdyR3/v2ACGiG6If+/UwLPJH0l/79IAlwoGSn/vz0CzSuVLP+/NgIiL/cv/78wAmQyRDP/vysClDWBNv+/KAK4OLI5/78mAtQ72jz/vyUC7D7/P/+/JgIDQiRD/78oAh1FTUb/vysCPkh+Sf+/MAJqS7lM/782AqROB1D/vz0C81FoU/+/SAJZVeVW/79TAt1Yglr/v2AChFxEXv+/bgJXYDVi/7+AAltkW2b/v5ICm2jDav+/qQIkbXZv/7/EAgByhXT/v+ICQHcBev+/BAP5fP9//7+9CBx9/YX/v/8NOn15i/+/2hJUfYiQ/79iF2t9O5X/v6Ibf32jmf+/px+Qfcmd/796I599uqH/vyEnrH18pf+/piq3fRmp/78MLsB9laz/v1kxyH33r/+/lTTOfUSz/7/BN9J9gLb/v+E61n2xuf+//D3Yfdq8/78TQdh9/7//vypE2H0kw/+/RUfWfUzG/79rStJ9fcn/v5pNzn26zP+/3FDIfQfQ/78xVMB9adP/v6FXt33l1v+/MFusfYHa/7/kXp99RN7/v8ZikH004v+/3GZ/fVvm/78wa2t9wur/v85vVH117/+/xXQ6fYT0/78jehx9APr/v/9/+nz///+//39Ud////7+ahbN3///+wsKKBnj//7zFiY9OeP//Q8j/k414//+dyjCYxHj//9HMJpz0eP//5M7qnx55///c0IOjQnn//73S+KZgef//jNRPqnp5//9K1o2tj3n///vXt7Chef//odnQs655//8/29y2t3n//9jc4Lm9ef//bN7evL55////39u/vXn//5Hh2cK3ef//JePdxa55//++5OjIoXn//1zmAcyPef//A+gpz3p5//+06WbSYHn//3LrvdVCef//QO0x2R55//8h783c9Hj//xnxk+DEeP//LfOM5I14//9g9cPoTnj//7r3Qe0GeP//QvoY8rN3/////FT3VHf/////s/cXcgAA//wF+ENtAABC+k34w2gAALr3jPiNZAAAYPXD+JNgAAAt8/P4zFwAABnxHfkzWQAAIe9B+b5VAABA7WD5Z1IAAHLrevkqTwAAtOmP+QBMAAAD6KD56UgAAFzmrfndRQAAvuS3+dpCAAAl47z53D8AAJHhvvnfPAAA/9+8+eE5AABs3rf53TYAANjcrfnQMwAAP9ug+bcwAACh2Y/5ji0AAPvXevlPKgAAStZg+fkmAACM1EH5gyMAAL3SHfnqHwAA3NDz+CUcAADkzsP4LxgAANHMjPgAFAAAncpN+IkPAABDyAX4wgoAALzFs/eZBQAA/sJU9wAAAAD/v0sImQX9Bf+/+QfCCngL/7+wB4kPiBD/v3IHABQ7Ff+/OgcvGKIZ/78KByUcyR3/v+EG6h+6If+/vQaDI30l/7+dBvkmGSn/v4MGTyqVLP+/bwaOLfcv/79eBrcwRDP/v1EG0DOBNv+/RwbdNrI5/79BBuE52jz/vz8G3zz/P/+/QQbcPyRD/79HBtpCTUb/v1EG3UV+Sf+/XgboSLlM/79vBgFMB1D/v4MGKU9oU/+/nQZnUuVW/7+9Br5Vglr/v+EGM1lEXv+/CgfNXDVi/786B5NgW2b/v3IHjGTDav+/sAfCaHZv/7/5B0JthXT/v0sIGHIBev+/qQhUd/9//7/mDbN3/YX/v7wSBnh5i/+/OhdOeIiQ/79xG414O5X/v2sfxHijmf+/MCP0eMmd/7/MJh55uqH/v0AqQnl8pf+/mC1geRmp/7/VMHp5laz/v/0zj3n3r/+/FjeheUSz/78gOq55gLb/vyQ9t3mxuf+/I0C9edq8/78gQ755/7//vx5GvXkkw/+/Ikm3eUzG/78uTK55fcn/v0dPoXm6zP+/cVKPeQfQ/7+uVXp5adP/vwZZYHnl1v+/e1xCeYHa/78UYB55RN7/v9hj9Hg04v+/zmfEeFvm/7//a414wur/v3VwTnh17/+/PHUGeIT0/79kerN3APr/v/9/VHf///+//38jcv///79ehbRy///+wlOKM3P//7zF746jc///Q8g/kwR0//+dyk2XWXT//9HMJZukdP//5M7NnuV0///c0EyiHXX//73SqaVNdf//jNTpqHV1//9K1hCsl3X///vXI6+xdf//odkmssZ1//8/2xy11XX//9jcCbjddf//bN7vuuB1////39O93XX//5HhtsDVdf//JeOew8Z1//++5I3GsXX//1zmhcmXdf//A+iLzHV1//+06aLPTXX//3Lrz9Iddf//QO0W1uV0//8h737ZpHT//xnxCt1ZdP//LfPD4AR0//9g9bHko3P//7r33+gzc///QvpV7bRy/////CPyI3L/////tPJVbQAA//wz899oAABC+qLzsmQAALr3BPTEYAAAYPVZ9AtdAAAt86P0flkAABnx5PQWVgAAIe8c9c9SAABA7Uz1ok8AAHLrdfWLTAAAtOmW9YVJAAAD6LH1jEYAAFzmxvWfQwAAvuTU9bhAAAAl49311D0AAJHh4PXwOgAA/9/d9Qk4AABs3tT1HTUAANjcxvUmMgAAP9ux9SMvAACh2Zb1ESwAAPvXdfXqKAAAStZM9aolAACM1Bz1TCIAAL3S5PTNHgAA3NCj9CQbAADkzln0TRcAANHMBPQ+EwAAncqi8+8OAABDyDPzVAoAALzFtPJfBQAA/sIj8gAAAAD/v0oNXwX9Bf+/ywxUCngL/79cDO8OiBD/v/oLPhM7Ff+/pAtNF6IZ/79bCyQbyR3/vxkLzR66If+/4gpMIn0l/7+xCqolGSn/v4gK6iiVLP+/aAoRLPcv/79NCiMvRDP/vzcKJjKBNv+/KQodNbI5/78gCgk42jz/vx0K8Dr/P/+/IArUPSRD/78pCrhATUb/vzcKn0N+Sf+/TQqNRrlM/79oCoVJB1D/v4gKi0xoU/+/sQqiT+VW/7/iCs9Sglr/vxkLF1ZEXv+/Wwt+WTVi/7+kCwpdW2b/v/oLxGDDav+/XAyzZHZv/7/LDN9ohXT/v0oNVW0Bev+/2w0jcv9//7+oErRy/YX/vx4XM3N5i/+/Sxujc4iQ/785HwR0O5X/v/QiWXSjmf+/gCakdMmd/7/nKeV0uqH/vy4tHXV8pf+/WzBNdRmp/79zM3V1laz/v3k2l3X3r/+/cTmxdUSz/79gPMZ1gLb/v0Y/1XWxuf+/K0Ldddq8/78PReB1/7//v/VH3XUkw/+/4krVdUzG/7/YTcZ1fcn/v9tQsXW6zP+/7lOXdQfQ/78VV3V1adP/v1VaTXXl1v+/sl0ddYHa/78xYeV0RN7/v9lkpHQ04v+/sWhZdFvm/7+/bAR0wur/vw9xo3N17/+/q3Uzc4T0/7+gerRyAPr/v/9/I3L///+//39Tbf///78mhQ9u///+wuyJs27//7zFXo5Eb///Q8iKksNv//+dynmWM3D//9HMM5qUcP//5M7Anelw///c0CehM3H//73SbKRycf//jNSWp6dx//9K1qeq03H///vXpa32cf//odmSsBJy//8/23OzJXL//9jcSbYwcv//bN4ZuTRy////3+W7MHL//5Hhsb4lcv//JeN+wRJy//++5FDE9nH//1zmKsfTcf//A+gQyqdx//+06QTNcnH//3LrCtAzcf//QO0o0+lw//8h72DWlHD//xnxudkzcP//LfM43cNv//9g9eTgRG///7r3xeSzbv//Qvrn6A9u/////FLtU23/////Du7naAAA//yz7sZkAABC+kTv5WAAALr3w+84XQAAYPUy8LlZAAAt85TwYFYAABnx6fAoUwAAIe8y8QtQAABA7XHxBE0AAHLrp/EQSgAAtOnT8StHAAAD6PbxUUQAAFzmEfJ+QQAAvuQk8rE+AAAl4zDy5jsAAJHhNPIaOQAA/98w8kk2AABs3iTycjMAANjcEfKTMAAAP9v28aUtAACh2dPxqCoAAPvXp/GWJwAAStZx8W0kAACM1DLxJiEAAL3S6fDBHQAA3NCU8DIaAADkzjLweRYAANHMw++KEgAAncpE718OAABDyLPu7AkAALzFDu4mBQAA/sJS7QAAAAD/v/ARJgX9Bf+/ShHsCXgL/7+6EF8OiBD/vzoQihI7Ff+/zA95FqIZ/79qDzIayR3/vxQPwR26If+/zA4mIX0l/7+MDm0kGSn/v1cOlieVLP+/Kg6oKvcv/78HDqUtRDP/v+0NkzCBNv+/2g1zM7I5/7/ODUk22jz/v8oNGjn/P/+/zg3mOyRD/7/aDbE+TUb/v+0NfkF+Sf+/Bw5RRLlM/78qDitHB1D/v1cOEEpoU/+/jA4ETeVW/7/MDgpQglr/vxQPKFNEXv+/ag9gVjVi/7/MD7lZW2b/vzoQN13Dav+/uhDlYHZv/79KEcZkhXT/v/AR52gBev+/qxJTbf9//78WFw9u/YX/vzcbs255i/+/GR9Eb4iQ/7/GIsNvO5X/v0QmM3Cjmf+/nimUcMmd/7/WLOlwuqH/v/QvM3F8pf+/+jJycRmp/7/tNadxlaz/v9Q403H3r/+/rjv2cUSz/7+APhJygLb/v01BJXKxuf+/GUQwctq8/7/lRjRy/7//v7VJMHIkw/+/i0wlckzG/79sTxJyfcn/v1lS9nG6zP+/V1XTcQfQ/79oWKdxadP/v5FbcnHl1v+/114zcYHa/78+YulwRN7/v8tllHA04v+/hWkzcFvm/790bcNvwur/v6BxRG917/+/EnazboT0/7/Yeg9uAPr/v/9/U23///+//3/UaP///7/yhLRp///+wouJeWr//7zF1o0ma///Q8jfkb9r//+dyq+VRWz//9HMTpm7bP//5M7BnCJt///c0BCge23//73SP6PHbf//jNRTpgdu//9K1k+pPW7///vXOKxobv//odkRr4lu//8/292xoG7//9jcnrSubv//bN5Zt7Nu////3w66rm7//5Hhwrygbv//JeN2v4lu//++5C7CaG7//1zm7MQ9bv//A+izxwdu//+06YbKx23//3Lrac17bf//QO1f0CJt//8h72zTu2z//xnxldZFbP//LfPe2b9r//9g9U7dJmv//7r37eB5av//QvrA5LRp/////NTo02j/////tOnBZAAA//x46u1gAABC+ibrT10AALr3v+veWQAAYPVF7JRWAAAt87rsbFMAABnxIe1fUAAAIe967WpNAABA7cbth0oAAHLrB+60RwAAtOk87u1EAAAD6GfuL0IAAFzmiO53PwAAvuSg7sI8AAAl463uDzoAAJHhsu5YNwAA/9+t7p80AABs3qDu3TEAANjciO4RLwAAP9tn7jgsAACh2TzuTykAAPvXB+5SJgAAStbG7T4jAACM1HrtECAAAL3SIe3CHAAA3NC67E0ZAADkzkXssBUAANHMv+vgEQAAncom69cNAABDyHjqigkAALzFtOnzBAAA/sLU6AAAAAD/v0kW8wT9Bf+/hhWKCXgL/7/YFNcNiBD/vz4U4BE7Ff+/uROwFaIZ/79DE00ZyR3/v90Swhy6If+/hBIQIH0l/783Ej4jGSn/v/cRUiaVLP+/whFPKfcv/7+WETgsRDP/v3YRES+BNv+/XhHdMbI5/79REZ402jz/v0sRWDf/P/+/UREPOiRD/79eEcI8TUb/v3YRdz9+Sf+/lhEvQrlM/7/CEe1EB1D/v/cRtEdoU/+/NxKHSuVW/7+EEmpNglr/v90SX1BEXv+/QxNsUzVi/7+5E5VWW2b/vz4U31nDav+/2BRPXXZv/7+GFe1ghXT/v0kWwWQBev+/KRfUaP9//789G7Rp/YX/vxAfeWp5i/+/ryIma4iQ/78gJr9rO5X/v2kpRWyjmf+/kiy7bMmd/7+fLyJtuqH/v5Uye218pf+/eDXHbRmp/79KOAdulaz/vxI7PW73r/+/0D1obkSz/7+IQIlugLb/vzxDoG6xuf+/8EWubtq8/7+lSLNu/7//v19Lrm4kw/+/IU6gbkzG/7/tUIlufcn/v8ZTaG66zP+/r1Y9bgfQ/7+rWQduadP/v79cx23l1v+/7l97bYHa/789YyJtRN7/v7Bmu2w04v+/T2pFbFvm/78fbr9rwur/vyhyJmt17/+/c3Z5aoT0/78Me7RpAPr/v/9/1Gj///+//3+bZP///7/BhJll///+wi+JeWb//7zFVY0/Z///Q8g9ke5n//+dyu+UiGj//9HMc5gQaf//5M7Om4Zp///c0AWf7Gn//73SHqJEav//jNQdpY9q//9K1gWozWr///vX2qr+av//odmfrSRr//8/21ewP2v//9jcBLNQa///bN6qtVVr////30q4UGv//5Hh57o/a///JeOEvSRr//++5CPA/mr//1zmxsLNav//A+hwxY9q//+06STIRGr//3Lr5crsaf//QO23zYZp//8h75vQEGn//xnxl9OIaP//LfOv1u5n//9g9enZP2f//7r3SN15Zv//QvrW4Jll/////Jnkm2T/////mOXXYAAA//x55kldAABC+j/n6VkAALr37uewVgAAYPWI6JhTAAAt8w/pnFAAABnxhem3TQAAIe/s6eZKAABA7UTqJUgAAHLrjupxRQAAtOnM6sZCAAAD6P7qI0AAAFzmJOuDPQAAvuQ/6+g6AAAl40/rSTgAAJHhVOuqNQAA/99P6wUzAABs3j/rVjAAANjcJOugLQAAP9v+6tsqAACh2czqBigAAPvXjuoeJQAAStZE6h8iAACM1OzpBh8AAL3ShenOGwAA3NAP6XMYAADkzojo8BQAANHM7uc9EQAAnco/51YNAABDyHnmLwkAALzFmOXBBAAA/sKa5AAAAAD/v2YawQT9Bf+/hRkvCXgL/7+/GFYNiBD/vw8YPRE7Ff+/dhfwFKIZ/7/vFnMYyR3/v3kWzhu6If+/ERYGH30l/7+6FR8iGSn/v3AVHiWVLP+/MRUGKPcv/78AFdsqRDP/v9oUoC2BNv+/vxRWMLI5/7+uFAUz2jz/v6kUqjX/P/+/rhRJOCRD/7+/FOg6TUb/v9oUhD1+Sf+/ABUjQLlM/78xFcZCB1D/v3AVcUVoU/+/uhUlSOVW/78RFuZKglr/v3kWt01EXv+/7xacUDVi/792F5hTW2b/vw8Yr1bDav+/vxjpWXZv/7+FGUldhXT/v2Ya1mABev+/ZBubZP9//78nH5ll/YX/v7UieWZ5i/+/FSY/Z4iQ/79OKe5nO5X/v2csiGijmf+/Yy8Qacmd/79HMoZpuqH/vxg17Gl8pf+/2jdEahmp/7+OOo9qlaz/vzg9zWr3r/+/2z/+akSz/796QiRrgLb/vxdFP2uxuf+/tEdQa9q8/79USlVr/7//v/pMUGskw/+/p08/a0zG/79fUiRrfcn/vyRV/mq6zP+/+VfNagfQ/7/hWo9qadP/v+BdRGrl1v+/+WDsaYHa/78wZIZpRN7/v4tnEGk04v+/D2uIaFvm/7/Bbu5nwur/v6lyP2d17/+/z3Z5ZoT0/789e5llAPr/v/9/m2T///+//3+bYP///7+ShLNh///+wtiIq2L//7zF2oyHY///Q8iikElk//+dyjiU9GT//9HMoZeLZf//5M7kmg9m///c0AWegWb//73SCaHkZv//jNTzozdn//9K1semfGf///vXiam0Z///odk6rN9n//8/29+u/Wf//9jceLEPaP//bN4KtBVo////35W2D2j//5HhHbn9Z///JeOju99n//++5Cq+tGf//1zms8B8Z///A+hCwzdn//+06dnF5Gb//3Lre8iBZv//QO0pyw9m//8h7+jNi2X//xnxu9D0ZP//LfOl00lk//9g9avWh2P//7r30tmrYv//Qvog3bNh/////Jvgm2D/////s+EgXQAA//yr4tNZAABC+objrFYAALr3SOSlUwAAYPX05LpQAAAt84rl6U0AABnxDuYqSwAAIe+B5npIAABA7ePm2UUAAHLrNudDQwAAtOl857RAAAAD6LPnKT4AAFzm3uejOwAAvuT95x05AAAl4w/oljYAAJHhFegKNAAA/98P6HgxAABs3v3n3y4AANjc3uc6LAAAP9uz54kpAACh2XznyCYAAPvXNufzIwAAStbj5gkhAACM1IHmBh4AAL3SDubkGgAA3NCK5aEXAADkzvTkNxQAANHMSOSiEAAAncqG49sMAABDyKvi2AgAALzFs+GSBAAA/sKb4AAAAAD/v0oekgT9Bf+/Ux3YCHgL/794HNsMiBD/v7YbohA7Ff+/Chs3FKIZ/790GqEXyR3/v/AZ5Bq6If+/fRkGHn0l/78aGQkhGSn/v8gY8yOVLP+/ghjIJvcv/79KGIkpRDP/vx8YOiyBNv+/ARjfLrI5/7/vF3kx2jz/v+kXCjT/P/+/7xeWNiRD/78BGB05TUb/vx8Yozt+Sf+/ShgpPrlM/7+CGLRA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AACh2SXhaCQAAPvX0+C6IQAAStZx4PceAACM1P3fHBwAAL3Sd98nGQAA3NDc3hMWAADkzize3RIAANHMZd1+DwAAncqE3PMLAABDyIbbMwgAALzFado6BAAA/sIo2QAAAAD/v5UlOgT9Bf+/eCQzCHgL/795I/MLiBD/v5kifg87Ff+/0iHdEqIZ/78hIRMWyR3/v4cgJxm6If+/ASAcHH0l/7+NH/ceGSn/vyofuiGVLP+/2R5oJPcv/7+WHgQnRDP/v2QekCmBNv+/Px4PLLI5/78qHoIu2jz/vyMe7TD/P/+/Kh5QMyRD/78/Hq81TUb/v2QeCjh+Sf+/lh5kOrlM/7/ZHr08B1D/vyofGj9oU/+/jR96QeVW/78BIOBDglr/v4cgT0ZEXv+/ISHJSDVi/7/SIVBLW2b/v5ki503Dav+/eiORUHZv/794JFJThXT/v5UlLVYBev+/1iYoWf9//7/QKWha/YX/v60shlt5i/+/bS+DXIiQ/78YMmVdO5X/v680LV6jmf+/NTfdXsmd/7+vOXZfuqH/vx48/l98pf+/hT5yYBmp/7/lQNRglaz/v0FDJmH3r/+/m0VoYUSz/7/0R5phgLb/v09KvmGxuf+/rkzUYdq8/78RT9th/7//v3tR1GEkw/+/8FO+YUzG/79vVpphfcn/v/tYaGG6zP+/l1smYQfQ/79FXtRgadP/vwdhcmDl1v+/4WP+X4Ha/7/XZndfRN7/v+tp3V404v+/Im0tXlvm/7+AcGRdwur/vwx0hFx17/+/yneGW4T0/7/De2laAPr/v/9/KFn///+//3+lVf///78ShPdW///+wuaHI1j//7zFhIsuWf//Q8jyjhxa//+dyjaS71r//9HMVZWpW///5M5SmExc///c0DKb3Fz//73S+J1XXf//jNSnoL9d//9K1kKjFl7///vXy6VbXv//odlFqJFe//8/27GquV7//9jcE63PXv//bN5rr9de////37uxz17//5HhBrS5Xv//JeNMtpFe//++5JC4W17//1zm07oWXv//A+gXvb9d//+06V6/V13//3LrqMHcXP//QO36w0xc//8h71PGqVv//xnxt8jvWv//LfMoyxxa//9g9ajNLln//7r3O9AjWP//Qvrk0vdW/////KbVplX/////9tbkUgAA//wi2DxQAABC+i7ZqE0AALr3G9opSwAAYPXu2rhIAAAt86nbVEYAABnxTNz6QwAAIe/b3KlBAABA7VbdXT8AAHLrv90YPQAAtOkW3tQ6AAAD6FzekTgAAFzmkt5MNgAAvuS43gY0AAAl48/evDEAAJHh195rLwAA/9/P3hMtAABs3rjesioAANjckt5EKAAAP9tc3sslAACh2RbeQSMAAPvXv92nIAAAStZW3fgdAACM1NvcMRsAAL3STNxSGAAA3NCp21UVAADkzu7aNhIAANHMG9rzDgAAncou2YULAABDyCLY5wcAALzF9tYRBAAA/sKm1QAAAAD/vwgpEQT9Bf+/3CfnB3gL/7/QJoULiBD/v+Ml8w47Ff+/ECU2EqIZ/79UJFUVyR3/v7IjUhi6If+/IiMxG30l/7+oIvgdGSn/vz4ipyCVLP+/6CFBI/cv/7+iIcslRDP/v2whRCiBNv+/RSGyKrI5/78uIRMt2jz/vyYhay//P/+/LiG8MSRD/79FIQY0TUb/v2whTDZ+Sf+/oiGROLlM/7/oIdQ6B1D/vz4iGD1oU/+/qCJdP+VW/78iI6lBglr/v7Ij+kNEXv+/VCRURjVi/78QJbhIW2b/v+MlKUvDav+/0CapTXZv/7/cJzxQhXT/vwgp5FIBev+/VyqmVf9//78aLfdW/YX/v8MvI1h5i/+/VTIuWYiQ/7/WNBxaO5X/v0Y371qjmf+/qzmpW8md/78EPE1cuqH/v1U+3Fx8pf+/oEBXXRmp/7/nQr9dlaz/vytFFl73r/+/bkdcXkSz/7+ySZJegLb/v/hLuV6xuf+/Qk7PXtq8/7+TUNde/7//v+tSz14kw/+/TFW4XkzG/7+5V5Jefcn/vzNaXF66zP+/vFwWXgfQ/79XX79dadP/vwZiV13l1v+/zGTcXIHa/7+sZ01cRN7/v6lqqVs04v+/yG3vWlvm/78McRxawur/v3p0Lll17/+/GHgjWIT0/7/se/dWAPr/v/9/pVX///+//39BUv///7/pg59T///+wpqH11T//7zFGYvuVf//Q8hqjudW//+dypSRw1f//9HMmpSHWP//5M6AlzNZ///c0EuayVn//73S/ZxKWv//jNSZn7ha//9K1iGiFFv///vXmKReW///odkAp5db//8/21qpv1v//9jcqavXW///bN7vrd9b////3yyw11v//5HhY7K/W///JeOWtJdb//++5MS2Xlv//1zm8bgUW///A+geu7ha//+06Uy9Slr//3LrfL/JWf//QO2xwTNZ//8h7+zDh1j//xnxLsbDV///LfN7yOdW//9g9dTK7lX//7r3O83XVP//Qvq0z59T/////EHSQVL/////ntO0TwAA//zX1DxNAABC+u3V00oAALr35tZ7SAAAYPXD1y9GAAAt84bY7EMAABnxMtmxQQAAIe/I2Xw/AABA7UraSz0AAHLruNoeOwAAtOkT2/I4AAAD6F3bxTYAAFzmltuVNAAAvuS/22QyAAAl49fbLDAAAJHh39vvLQAA/9/X26orAABs3r/bWikAANjcltsAJwAAP9td25gkAACh2RPbICIAAPvXuNqYHwAAStZK2v4cAACM1MjZSxoAAL3SMtmBFwAA3NCG2JkUAADkzsPXkxEAANHM5tZrDgAAncrt1RgLAABDyNfUmgcAALzFntPqAwAA/sJB0gAAAAD/v2As6gP9Bf+/JiuaB3gL/78RKhgLiBD/vxgpaw47Ff+/OiiTEaIZ/794J5kUyR3/v8wmgRe6If+/NSZLGn0l/7+0Jf4cGSn/v0UlmB+VLP+/6yQgIvcv/7+hJJgkRDP/v2gkACeBNv+/PiRaKbI5/78mJKor2jz/vx8k7y3/P/+/JiQsMCRD/78+JGMyTUb/v2gkljR+Sf+/oSTFNrlM/7/rJPI4B1D/v0UlHjtoU/+/tCVLPeVW/781Jnw/glr/v8wmsUFEXv+/eCfsQzVi/786KC9GW2b/vxgpe0jDav+/ESrUSnZv/78mKzxNhXT/v18stE8Bev+/vS1AUv9//79JMJ9T/YX/v8My11R5i/+/KTXuVYiQ/7+DN+dWO5X/v9A5w1ejmf+/EjyHWMmd/79MPjNZuqH/v4JAyVl8pf+/skJKWhmp/7/gRLhalaz/vw1HFFv3r/+/OkleW0Sz/79oS5dbgLb/v5tNv1uxuf+/0k/XW9q8/78PUt9b/7//v1VU11skw/+/pFa/W0zG/7/+WJdbfcn/v2ZbXlu6zP+/3V0UWwfQ/79lYLhaadP/vwFjSlrl1v+/s2XJWYHa/79+aDNZRN7/v2Rrh1g04v+/am7DV1vm/7+UcedWwur/v+V07lV17/+/ZHjXVIT0/78VfJ9TAPr/v/9/QVL///+//3/0Tv///7/Cg1xQ///+wlCHn1H//7zFr4q/Uv//Q8jkjcFT//+dyvSQplT//9HM4pNxVf//5M6yliRW///c0GiZwVb//73SBpxIV///jNSOnrtX//9K1gShGlj///vXaKNoWP//odm+paNY//8/2waozlj//9jcRKrnWP//bN53rO9Y////36Ku51j//5HhxrDOWP//JePksqNY//++5P60aFj//1zmFbcaWP//A+grubtX//+06UG7SFf//3LrV73BVv//QO1xvyRW//8h747BcVX//xnxscOmVP//LfPbxcFT//9g9Q7IvlL//7r3TcqeUf//QvqXzFxQ/////PTO9E7/////XNCZTAAA//ye0U1KAABC+r/SD0gAALr3wNPbRQAAYPWm1LFDAAAt83HVjkEAABnxJNZxPwAAIe/A1lc9AABA7UfXQDsAAHLrutcrOQAAtOka2BY3AAAD6GfY/zQAAFzmo9jkMgAAvuTN2MYwAAAl4+bYoi4AAJHh79h3LAAA/9/m2EMqAABs3s3YBygAANjco9i+JQAAP9tn2GkjAACh2RrYBCEAAPvXutePHgAAStZH1wYcAACM1MDWaBkAAL3SJNazFgAA3NBx1eMTAADkzqbU9BAAANHMwNPlDQAAncq/0q8KAABDyJ7RUQcAALzFXNDDAwAA/sL0zgAAAAD/v6IvwwP9Bf+/YC5RB3gL/78+La8KiBD/vz0s5Q07Ff+/Vyv0EKIZ/7+NKuMTyR3/v9opsxa6If+/PSloGX0l/7+3KAYcGSn/v0Mojx6VLP+/5CcEIfcv/7+XJ2kjRDP/v1onviWBNv+/MCcHKLI5/78YJ0Mq2jz/vw8ndyz/P/+/GCeiLiRD/78wJ8YwTUb/v1on5DJ+Sf+/lyf/NLlM/7/kJxY3B1D/v0MoKzloU/+/tyhAO+VW/789KVc9glr/v9opcT9EXv+/jSqOQTVi/79XK7FDW2b/vz0s3EXDav+/Pi0PSHZv/79gLk1KhXT/v6IvmUwBev+/CjH0Tv9//79mM1xQ/YX/v7E1n1F5i/+/8De/UoiQ/78iOsFTO5X/v0w8pVSjmf+/cD5xVcmd/7+NQCRWuqH/v6ZCwVZ8pf+/vURIVxmp/7/TRrtXlaz/v+lIGlj3r/+/AEtoWESz/78aTaNYgLb/vzhPzlixuf+/XFHnWNq8/7+HU+9Y/7//v7pV51gkw/+/+FfOWEzG/79AWqJYfcn/v5ZcaFi6zP+/+l4aWAfQ/79wYbtXadP/v/hjSFfl1v+/lmbBVoHa/79MaSRWRN7/vxxscVU04v+/Cm+mVFvm/78acsFTwur/v091v1J17/+/rnifUYT0/788fFxQAPr/v/9/9E7///+//3+5S////7+cgypN///+wgiHdU7//7zFSIqeT///Q8hhjadQ//+dylaQk1H//9HMLJNlUv//5M7mlR5T///c0IeYwFP//73SEJtMVP//jNSGncNU//9K1uifJ1X///vXO6J2Vf//odl+pLVV//8/27Wm4VX//9jc4Kj7Vf//bN4BqwNW////3xmt+1X//5HhKq/hVf//JeM1sbVV//++5Duzd1X//1zmPbUnVf//A+g8t8NU//+06Tq5S1T//3LrOLvAU///QO02vR5T//8h7ze/ZFL//xnxPMGTUf//LfNFw6dQ//9g9VTFnU///7r3bMd1Tv//QvqNySpN/////LnLuUv/////Ks2NSQAA//x0zmxHAABC+p3PVUUAALr3ptBFQwAAYPWT0TxBAAAt82XSNz8AABnxHtM2PQAAIe/A0zc7AABA7UzUOjkAAHLrw9Q8NwAAtOkm1Tw1AAAD6HbVOjMAAFzmtNU0MQAAvuTg1SovAAAl4/rVGi0AAJHhA9YBKwAA/9/61eAoAABs3uDVtSYAANjctNV/JAAAP9t21ToiAACh2SbV6R8AAPvXw9SGHQAAStZM1BAbAACM1MDThxgAAL3SHtPnFQAA3NBl0iwTAADkzpPRVxAAANHMptBhDQAAncqdz0gKAABDyHTOBwcAALzFKs2cAwAA/sK5ywAAAAD/v9QynAP9Bf+/ijEHB3gL/79hMEgKiBD/v1cvYQ07Ff+/ay5XEKIZ/7+ZLSwTyR3/v+As5xW6If+/PSyHGH0l/7+yKxAbGSn/vzorhh2VLP+/2CrpH/cv/7+IKjoiRDP/v0kqfySBNv+/Hiq1JrI5/78EKuAo2jz/v/spASv/P/+/BCoaLSRD/78eKiovTUb/v0kqNDF+Sf+/hyo6M7lM/7/YKjw1B1D/vzorPDdoU/+/sis6OeVW/789LDc7glr/v+AsNj1EXv+/mC03PzVi/79rLjxBW2b/v1cvRUPDav+/YTBVRXZv/7+JMWxHhXT/v9QyjUkBev+/RDS6S/9//79xNipN/YX/v5I4dU55i/+/qjqeT4iQ/7+5PKdQO5X/v8I+k1Gjmf+/x0BlUsmd/7/IQh5TuqH/v8ZEwFN8pf+/xEZMVBmp/7/CSMNUlaz/v8FKJ1X3r/+/w0x3VUSz/7/JTrVVgLb/v9RQ4VWxuf+/5VL7Vdq8/7/9VANW/7//vx5X+1Ukw/+/SFnhVUzG/7+AW7VVfcn/v8Ndd1W6zP+/FmAnVQfQ/794YsNUadP/v+5kTFTl1v+/d2fAU4Ha/78Yah5TRN7/v9JsZVI04v+/qG+TUVvm/7+dcqdQwur/v7Z1nk917/+/9nh1ToT0/79ifCpNAPr/v/9/uUv///+//3+NSP///792gwVK///+wsCGVkv//7zF4YmFTP//Q8jejJVN//+dyrqPh07//9HMeJJeT///5M4blR1Q///c0KeXw1D//73SHJpTUf//jNR+nM5R//9K1s6eNVL///vXDqGGUv//odk/o8dS//8/22Sl9VL//9jcfacQU///bN6MqRlT////35GrEFP//5Hhj631Uv//JeOHr8dS//++5Hixh1L//1zmZbM1Uv//A+hPtc5R//+06Ta3U1H//3LrG7nDUP//QO0Aux1Q//8h7+W8Xk///xnxy76GTv//LfO1wJVN//9g9aLChUz//7r3lMRWS///QvqNxgVK/////I3Ijkj/////BMqNRgAA//xWy5VEAABC+oXMo0IAALr3lM21QAAAYPWGzsw+AAAt817P5TwAABnxHNAAOwAAIe/D0Bs5AABA7VPRNTcAAHLrztFONQAAtOk00mUzAAAD6IfSeTEAAFzmx9KHLwAAvuT00pAtAAAl4w/TkisAAJHhGNOMKQAA/98P030nAABs3vTSYyUAANjcx9I/IwAAP9uH0g4hAACh2TTSzh4AAPvXztF+HAAAStZT0RwaAACM1MPQphcAAL3SHNAbFQAA3NBez3kSAADkzobOug8AANHMlM3fDAAAncqFzOIJAABDyFbLwQYAALzFBMp3AwAA/sKNyAAAAAD/v/o1dwP9Bf+/qDTBBngL/795M+IJiBD/v2oy3ww7Ff+/eDG6D6IZ/7+gMHkSyR3/v+IvGxW6If+/Oi+mF30l/7+rLhwaGSn/vy8ufhyVLP+/yi3OHvcv/793LQ4hRDP/vzYtPyOBNv+/Ci1kJbI5/7/vLH0n2jz/v+YsjCn/P/+/7yyRKyRD/78KLZAtTUb/vzYthy9+Sf+/dy15MblM/7/KLWYzB1D/vy8uTjVoU/+/qy41N+VW/786Lxs5glr/v+IvADtEXv+/oDDlPDVi/794Mcw+W2b/v2oytUDDav+/eTOjQnZv/7+oNJVEhXT/v/o1jUYBev+/cTeOSP9//79xOQVK/YX/v2o7Vkt5i/+/Wz2FTIiQ/79IP5VNO5X/vzNBh06jmf+/GUNdT8md/7/+RB1QuqH/v+NGw1B8pf+/yEhTURmp/7+vSs5Rlaz/v5lMNVL3r/+/hU6GUkSz/792UMdSgLb/v25S9VKxuf+/bVQQU9q8/79yVhlT/7//v4FYEFMkw/+/mlr1UkzG/7+/XMdSfcn/v/Beh1K6zP+/MGE1UgfQ/7+AY85RadP/v+JlU1Hl1v+/V2jDUIHa/7/jah1QRN7/v4ZtXk804v+/RHCGTlvm/78gc5VNwur/vx12hEx17/+/PnlWS4T0/7+IfAVKAPr/v/9/jUj///+//39sRf///79Rg+hG///+wnmGPkj//7zFfIlxSf//Q8hcjIZK//+dyh6PfUv//9HMxJFZTP//5M5RlBxN///c0MeWxk3//73SKJlaTv//jNR2m9hO//9K1rOdQU////vX4J+WT///odn/odhP//8/2xGkBlD//9jcGKYiUP//bN4VqCtQ////3wiqIlD//5Hh86sGUP//JePXrdhP//++5LWvlk///1zmjbFBT///A+hhs9hO//+06TG1WU7//3Lr/rbGTf//QO3JuBxN//8h75S6WUz//xnxXrx9S///LfMovoZK//9g9fS/ckn//7r3w8E+SP//QvqVw+hG/////GzFbEX/////58aWQwAA//w9yMRBAABC+nHJ9T8AALr3hsooPgAAYPV9y108AAAt81nMlDoAABnxG83KOAAAIe/Gzf42AABA7VnOMDUAAHLr185hMwAAtOlAz40xAAAD6JXPtS8AAFzm18/YLQAAvuQG0PQrAAAl4yHQCSoAAJHhK9AVKAAA/98h0BkmAABs3gbQEiQAANjc188AIgAAP9uVz+AfAACh2UDPsx0AAPvX1852GwAAStZZzicZAACM1MbNxxYAAL3SG81RFAAA3NBZzMURAADkzn3LHg8AANHMhspdDAAAncpxyXwJAABDyD3IegYAALzF58ZSAwAA/sJsxQAAAAD/vxc5UgP9Bf+/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2jz/v3BCxx7/P/+/ekJEICRD/7+YQrkhTUb/v8lCJCN+Sf+/D0OHJLlM/79pQ+ElB1D/v9dDMidoU/+/XER8KOVW/7/2RL4pglr/v6hF9ypEXv+/cEYoLDVi/79QR1ItW2b/v0tIdS7Dav+/YkmOL3Zv/7+USqAwhXT/v+VLqTEBev+/VU2qMv9//79VTho0/YX/v19PaTV5i/+/b1CcNoiQ/7+KUbI3O5X/v6xSrTijmf+/1lOOOcmd/78HVVY6uqH/v0FWCDt8pf+/gleiOxmp/7/MWCY8laz/vx1aljz3r/+/d1vwPESz/7/aXDQ9gLb/v0VeZz2xuf+/ul+EPdq8/784YY49/7//v79ihD0kw/+/UWRnPUzG/7/uZTU9fcn/v5Zn8Dy6zP+/SmmWPAfQ/78LayY8adP/v9lsojvl1v+/tW4IO4Ha/7+fcFc6RN7/v5pyjjk04v+/pXSsOFvm/7/BdrI3wur/v/F4nDZ17/+/NXtqNYT0/7+OfRo0APr/v/9/qjL///+//39mL////79Igs4w///+wn2EFzL//7zFnoZCM///Q8iuiFM0//+dyqyKSjX//9HMmowoNv//5M55ju82///c0EmQnjf//73SDJI2OP//jNTBk7o4//9K1mqVJzn///vXCJeBOf//odmZmMY5//8/2yCa9zn//9jcnJsVOv//bN4OnR46////33eeFTr//5Hh1p/3Of//JeMrocY5//++5HiigTn//1zmvKMnOf//A+j3pLo4//+06SmmNjj//3LrU6eeN///QO11qO82//8h742pKTb//xnxnqpKNf//LfOlq1M0//9g9aOsQzP//7r3ma0XMv//QvqErs4w/////GavZi//////zbCFLgAA//wWspgtAABC+kOzpCwAALr3VLSlKwAAYPVJtZ4qAAAt8yi2jikAABnx77Z1KAAAIe+dt1MnAABA7Ta4KSYAAHLrubj3JAAAtOknubwjAAAD6IC5eCIAAFzmxrkrIQAAvuT3udYfAAAl4xS6dx4AAJHhHroPHQAA/98UupwbAABs3ve5IBoAANjcxrmZGAAAP9uAuQgXAACh2Se5axUAAPvXubjCEwAAStY2uAwSAACM1J23SRAAAL3S77Z5DgAA3NAotpoMAADkzkq1qwoAANHMVLStCAAAncpDs54GAABDyBayfQQAALzF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AAAD6I6V7AwAAFzmtZV3DAAAvuTRlfwLAAAl4+KVewsAAJHh55X0CgAA/9/ilWcKAABs3tGV1QkAANjctZU9CQAAP9uOlaEIAACh2VqVAQgAAPvXHpVbBwAAStbVlK8GAACM1IGUAQYAAL3SIpROBQAA3NC3k5UEAADkzkKT2wMAANHMwZIbAwAAnco1kloCAABDyJ6RkwEAALzF+pDLAAAA/sJOkAAAAAD/vwNvywD9Bf+/YG6TAXgL/7/JbVoCiBD/vz1tGwM7Ff+/vGzbA6IZ/79HbJUEyR3/v9trTgW6If+/fWsBBn0l/78pa68GGSn/v+BqWweVLP+/o2oBCPcv/79vaqEIRDP/v0lqPQmBNv+/LWrVCbI5/78camcK2jz/vxdq9Ar/P/+/HGp7CyRD/78tavwLTUb/v0lqdwx+Sf+/cGrsDLlM/7+ialsNB1D/v99qww1oU/+/KWskDuVW/798a4AOglr/v9xr1A5EXv+/R2wgDzVi/7+7bGYPW2b/vzxtpA/Dav+/yG3bD3Zv/79gbgoQhXT/vwNvLxABev+/r29OEP9//7/Ob/wQ/YX/v/VvnRF5i/+/I3A0EoiQ/79acMESO5X/v5hwQROjmf+/3nC4E8md/78rcSEUuqH/v39xgBR8pf+/2nHVFBmp/788ch0Vlaz/v6RyXBX3r/+/E3OOFUSz/7+Ic7YVgLb/vwN00hWxuf+/hHTiFdq8/78LdegV/7//v5d14hUkw/+/KXbSFUzG/7/AdrYVfcn/v1x3jRW6zP+//ndcFQfQ/7+keB0VadP/v0551hTl1v+//XmAFIHa/7+xeiEURN7/v2h7txM04v+/I3xBE1vm/7/ifMESwur/v6V9NBJ17/+/a36dEYT0/78zf/wQAPr/v/9/ThD///+//39QC////7+NgM4L///+whmBQwz//7zFo4GyDP//Q8grghgN//+dyrKCdw3//9HMNoPPDf//5M63gx0O///c0DaEZA7//73SsoSiDv//jNQrhdkO//9K1qGFBw////vXE4YrD///odmChkkP//8/2+2GXg///9jcVIdrD///bN63h28P////3xaIag///5HhcIheD///JePGiEkP//++5BiJKw///1zmZIkHD///A+isidkO//+06e+JoQ7//3LrLIpkDv//QO1lih4O//8h75eKzw3//xnx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") +"vertex_data": PackedByteArray("AAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAAAAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAADsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACAAAAAgDsaFUEAAACA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AAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAAAAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAAITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAACAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAgITOHsEAAAAAAAAAAITOHsEAAAAAAID//////78AgP/////+wgCA/////7zFAID/////Q8gAgP////+dygCA/////9HMAID/////5M4AgP/////c0ACA/////73SAID/////jNQAgP////9K1gCA//////vXAID/////odkAgP////8/2wCA/////9jcAID/////bN4AgP//////3wCA/////5HhAID/////JeMAgP////++5ACA/////1zmAID/////A+gAgP////+06QCA/////3LrAID/////QO0AgP////8h7wCA/////xnxAID/////LfMAgP////9g9QCA/////7r3AID/////QvoAgP///////ACA////////AID//wAA//wAgP//AABC+gCA//8AALr3AID//wAAYPUAgP//AAAt8wCA//8AABnxAID//wAAIe8AgP//AABA7QCA//8AAHLrAID//wAAtOkAgP//AAAD6ACA//8AAFzmAID//wAAvuQAgP//AAAl4wCA//8AAJHhAID//wAA/98AgP//AABs3gCA//8AANjcAID//wAAP9sAgP//AACh2QCA//8AAPvXAID//wAAStYAgP//AACM1ACA//8AAL3SAID//wAA3NAAgP//AADkzgCA//8AANHMAID//wAAncoAgP//AABDyACA//8AALzFAID//wAA/sIAgP//AAD/vwCA///9Bf+/AID//3gL/78AgP//iBD/vwCA//87Ff+/AID//6IZ/78AgP//yR3/vwCA//+6If+/AID//30l/78AgP//GSn/vwCA//+VLP+/AID///cv/78AgP//RDP/vwCA//+BNv+/AID//7I5/78AgP//2jz/vwCA////P/+/AID//yRD/78AgP//TUb/vwCA//9+Sf+/AID//7lM/78AgP//B1D/vwCA//9oU/+/AID//+VW/78AgP//glr/vwCA//9EXv+/AID//zVi/78AgP//W2b/vwCA///Dav+/AID//3Zv/78AgP//hXT/vwCA//8Bev+/AID///9//78AgP///YX/vwCA//95i/+/AID//4iQ/78AgP//O5X/vwCA//+jmf+/AID//8md/78AgP//uqH/vwCA//98pf+/AID//xmp/78AgP//laz/vwCA///3r/+/AID//0Sz/78AgP//gLb/vwCA//+xuf+/AID//9q8/78AgP///7//vwCA//8kw/+/AID//0zG/78AgP//fcn/vwCA//+6zP+/AID//wfQ/78AgP//adP/vwCA///l1v+/AID//4Ha/78AgP//RN7/vwCA//804v+/AID//1vm/78AgP//wur/vwCA//917/+/AID//4T0/78AgP//APr/vwCA//////+//38X+v///79JgNL5///+wpOAkfn//7zF24BU+f//Q8gkgRv5//+dymuB5vj//9HMsYG2+P//5M72gYr4///c0DmCY/j//73SfIJA+P//jNS8giH4//9K1vuCCPj///vXOIPy9///odlzg+H3//8/26yD1vf//9jc44PP9///bN4YhM33////30qEz/f//5HheoTW9///JeOnhOL3//++5NKE8vf//1zm+oQI+P//A+gfhSH4//+06UGFQPj//3LrYIVj+P//QO18hYr4//8h75WFtfj//xnxq4Xm+P//LfO+hRv5//9g9c2FU/n//7r32YWR+f//QvrihdL5/////OeFF/r/////LIYc+gAA//xthiT6AABC+qqGMPoAALr34oZA+gAAYPUWh1L6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O5X/v1psbuejmf+/uWzg5smd/78gbV/muqH/v49t7OV8pf+/B26H5Rmp/7+Gbi/llaz/vw5v5eT3r/+/nG+p5ESz/78ycHrkgLb/v89wWOSxuf+/c3FE5Nq8/78ecj3k/7//v9ByROQkw/+/iHNY5EzG/79HdHrkfcn/vwx1qeS6zP+/13Xl5AfQ/7+odi/ladP/v393h+Xl1v+/XHjs5YHa/78+eV/mRN7/vyZ64OY04v+/E3tu51vm/78GfAvowur/v/18teh17/+/+X1t6YT0/7/6fjXqAPr/v/9/Cuv///+//3+v5v///786gbnl///+wm+C0+T//7zFnYP/4///Q8jFhDzj//+dyuaFieL//9HMAIfm4f//5M4UiFPh///c0CGJ0eD//73SJ4pe4P//jNQmi/rf//9K1h6Mp9////vXD41h3///odn5jSzf//8/29uOB9///9jcto/v3v//bN6KkOne////31aR8N7//5HhGpIH3///JePXki3f//++5IuTYt///1zmOJSn3///A+jclPrf//+06XiVXuD//3LrC5bR4P//QO2VllPh//8h7xaX5uH//xnxjpeJ4v//LfP8lzzj//9g9WGY/+P//7r3u5jT5P//QvoKmbnl/////E6Zr+b/////RZr05gAA//wqm0PnAABC+v6bnecAALr3wpwB6AAAYPV1nW/oAAAt8xie5+gAABnxqp5o6QAAIe8tn/LpAABA7aCfhuoAAHLrA6Ah6wAAtOlXoMbrAAAD6JugcuwAAFzm0KAn7QAAvuT2oOPtAAAl4w2hqO4AAJHhFaF07wAA/98NoUfwAABs3vagIvEAANjc0KAF8gAAP9uboO/yAACh2Veg4PMAAPvXA6DY9AAAStagn9f1AACM1C2f3fYAAL3SqZ7q9wAA3NAYnv34AADkznSdGPoAANHMwpw5+wAAncr+m2H8AABDyCqbj/0AALzFRZrE/gAA/sJNmf//AAD/v7llxP79Bf+/1GSP/XgL/78AZGH8iBD/vzxjOfs7Ff+/iWIY+qIZ/7/mYf34yR3/v1Rh6ve6If+/0WDd9n0l/79dYNf1GSn/v/tf2PSVLP+/p1/g8/cv/79jX+/yRDP/vy1fBfKBNv+/CF8i8bI5/7/xXkfw2jz/v+ledO//P/+/8V6o7iRD/78IX+PtTUb/vy5fJ+1+Sf+/Y19y7LlM/7+nX8brB1D/v/tfIetoU/+/XmCG6uVW/7/RYPLpglr/v1NhaOlEXv+/5WHn6DVi/7+JYm/oW2b/vzxjAejDav+//2Od53Zv/7/UZEPnhXT/v7ll9OYBev+/sGav5v9//7/0Zrnl/YX/v0Nn0+R5i/+/nWf/44iQ/78CaDzjO5X/v3BoieKjmf+/6Gjm4cmd/79paVPhuqH/v/Np0eB8pf+/hmpe4Bmp/78ia/rflaz/v8Zrp9/3r/+/c2xh30Sz/78nbS3fgLb/v+RtB9+xuf+/qG7w3tq8/790b+ne/7//v0hw8N4kw/+/I3EH30zG/78Fcizffcn/v+9yYd+6zP+/4HOn3wfQ/7/YdPrfadP/v9d1XuDl1v+/3XbR4IHa/7/qd1PhRN7/v/545uE04v+/GHqJ4lvm/785ezzjwur/v2F8/+N17/+/j33S5IT0/7/EfrnlAPr/v/9/r+b///+//3+U4v///79tgYHh///+wtKCguD//7zFL4SX3///Q8iDhb/e//+dys+G+t3//9HMFIhH3f//5M5PiaXc///c0IOKF9z//73Sr4uZ2///jNTSjCzb//9K1u6N0dr///vXAY+G2v//odkMkEza//8/2w+RI9r//9jcCpIK2v//bN79kgLa////3+iTCtr//5HhypQj2v//JeOklUza//++5HWWhtr//1zmPpfR2v//A+j+lyzb//+06bWYmdv//3LrY5kX3P//QO0Hmqbc//8h76KaR93//xnxM5v63f//LfO6m7/e//9g9Tecl9///7r3qJyB4P//QvoPnYHh/////GqdlOL/////fJ7v4gAA//x7n1XjAABC+magx+MAALr3PqFD5AAAYPUEosrkAAAt87eiW+UAABnxWKP25QAAIe/no5vmAABA7WWkSecAAHLr0aQA6AAAtOktpcDoAAAD6HeliOkAAFzmsaVa6gAAvuTapTTrAAAl4/OlFuwAAJHh+6UA7QAA/9/zpfPtAABs3tql7u4AANjcsaXx7wAAP9t3pfzwAACh2S2lEPIAAPvX0aQr8wAAStZlpE/0AACM1OejevUAAL3SWKOu9gAA3NC3our3AADkzgSiLvkAANHMPqF6+gAAncpmoM/7AABDyHufLP0AALzFfJ6R/gAA/sJqnf//AAD/v4Jhkf79Bf+/g2As/XgL/7+XX8/7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fGedyUzG/7/saM7Jfcn/v2ZqEsq6zP+/62tqygfQ/797bdbKadP/vxdvV8vl1v+/v3Dty4Ha/790cpnMRN7/vzZ0W8004v+/BnY0zlvm/7/kdyXPwur/v9J5MNB17/+/0HtU0YT0/7/ffZTSAPr/v/9/8NP///+//3+Y0P///79IgjDP///+wn2E583//7zFnoa7zP//Q8iuiKrL//+dyqyKs8r//9HMmozVyf//5M55jg/J///c0EmQYMj//73SDJLHx///jNTBk0TH//9K1mqV1sb///vXCJd9xv//odmZmDjG//8/2yCaB8b//9jcnJvpxf//bN4OneDF////33ee6cX//5Hh1p8Hxv//JeMroTjG//++5Hiifcb//1zmvKPWxv//A+j3pEPH//+06Smmx8f//3LrU6dgyP//QO11qA/J//8h742p1cn//xnxnqqzyv//LfOlq6rL//9g9aOsu8z//7r3ma3nzf//QvqErjDP/////GavmND/////zbB50QAA//wWsmXSAABC+kOzWtMAALr3VLRZ1AAAYPVKtWDVAAAt8yi2cNYAABnx77aJ1wAAIe+dt6rYAABA7Ta41NkAAHLrubgH2wAAtOknuULcAAAD6IC5ht0AAFzmxrnS3gAAvuT3uSjgAAAl4xS6h+EAAJHhHrrv4gAA/98UumHkAABs3ve53eUAANjcxrlk5wAAP9uAufboAACh2Sa5k+oAAPvXubg87AAAStY2uPLtAACM1J23tO8AAL3S77aF8QAA3NAotmPzAADkzkq1UvUAANHMVLRQ9wAAncpDs1/5AABDyBaygfsAALzFzbC1/QAA/sJmr///AAD/vzFPtf39Bf+/502B+3gL/7+7TF/5iBD/v6pLUPc7Ff+/s0pS9aIZ/7/WSWPzyR3/vw9JhfG6If+/YEi0730l/7/IR/LtGSn/v0VHPOyVLP+/10aT6vcv/79+RvboRDP/vzhGZOeBNv+/B0bd5bI5/7/qRWHk2jz/v+BF7+L/P/+/6kWH4SRD/78HRijgTUb/vzhG0t5+Sf+/fkaG3blM/7/XRkLcB1D/v0VHB9toU/+/x0fU2eVW/79gSKrYglr/vw9JiddEXv+/1klw1jVi/7+0SmDVW2b/v6pLWdTDav+/u0xa03Zv/7/oTWXShXT/vzFPedEBev+/l1CY0P9//796UTDP/YX/v2RS5815i/+/W1O7zIiQ/79ZVKrLO5X/v2BVs8qjmf+/cVbVycmd/7+JVw/JuqH/v6tYYMh8pf+/1VnHxxmp/78HW0THlaz/v0Jc1cb3r/+/hV19xkSz/7/TXjjGgLb/vyhgB8axuf+/h2Hpxdq8/7/wYuDF/7//v2Jk6cUkw/+/3mUHxkzG/79lZzjGfcn/v/Zofca6zP+/lGrWxgfQ/789bETHadP/v/Jtx8fl1v+/tW9gyIHa/7+FcQ/JRN7/v2Rz1ck04v+/UnWzylvm/79Qd6rLwur/v2B5usx17/+/gXvnzYT0/7+2fTDPAPr/v/9/mND///+//39Uzf///79wguTL///+wsmElMr//7zFDYdiyf//Q8g9iUzI//+dylmLUcf//9HMZI1wxv//5M5fj6fF///c0EmR9sT//73SJZNcxP//jNTzlNfD//9K1rSWaMP///vXaJgOw///odkQmsnC//8/262bl8L//9jcP516wv//bN7GnnDC////30SgesL//5HhuaGXwv//JeMko8nC//++5IekDsP//1zm4aVow///A+gyp9fD//+06XyoXMT//3Lrvan2xP//QO33qqfF//8h7yiscMb//xnxUq1Qx///LfN0rkzI//9g9Y6vYsn//7r3n7CUyv//QvqpseTL/////KmyVM3/////GbRVzgAA//xqtV7PAABC+pu2cNAAALr3sreJ0QAAYPWtuKvSAAAt84651dMAABnxVroH1QAAIe8Iu0DWAABA7aK7gtcAAHLrJrzL2AAAtOmVvB3aAAAD6O+8d9sAAFzmNb3Z3AAAvuRmvUXeAAAl44S9ud8AAJHhjr034QAA/9+Evb/iAABs3ma9UeQAANjcNb3u5QAAP9vvvJbnAACh2ZW8SukAAPvXJrwL6wAAStaiu9jsAACM1Ai7tO4AAL3SVrqf8AAA3NCOuZnyAADkzq24pPQAANHMsrfB9gAAncqctvH4AABDyGq1NPsAALzFGbSO/QAA/sKpsv//AAD/v+VLjv39Bf+/k0o0+3gL/79iSfH4iBD/v0xIwfY7Ff+/UUek9KIZ/79wRpnyyR3/v6hFn/C6If+/9kS07n0l/79cRNjsGSn/v9hDC+uVLP+/aUNK6fcv/78PQ5bnRDP/v8lC7uWBNv+/l0JR5LI5/796Qr/i2jz/v3BCN+H/P/+/ekK53yRD/7+YQkXeTUb/v8lC2dx+Sf+/D0N327lM/79pQx3aB1D/v9hDy9hoU/+/XESC1+VW/7/2REDWglr/v6dFB9VEXv+/cEbV0zVi/79RR6vSW2b/v0xIidHDav+/YUlw0HZv/7+USl7PhXT/v+VLVc4Bev+/VU1Uzf9//79VTuTL/YX/v19PlMp5i/+/b1BiyYiQ/7+KUUzIO5X/v6xSUcejmf+/1lNwxsmd/78HVafFuqH/v0FW9sR8pf+/gldcxBmp/7/MWNfDlaz/vx1aaMP3r/+/d1sNw0Sz/7/aXMnCgLb/v0Rel8Kxuf+/ul96wtq8/784YXDC/7//v79iesIkw/+/UWSXwkzG/7/uZcnCfcn/v5ZnDsO6zP+/SmlowwfQ/78La9fDadP/v9lsXMTl1v+/tW72xIHa/7+fcKfFRN7/v5pycMY04v+/pXRRx1vm/7/BdkzIwur/v/F4Ycl17/+/NXuTyoT0/7+OfeTLAPr/v/9/VM3///+//38iyv///7+WgqvI///+whSFVcf//7zFeYcfxv//Q8jIiQbF//+dygKMCMT//9HMKY4lw///5M49kFvC///c0EGSqcH//73SNZQOwf//jNQalonA//9K1vGXGsD///vXu5nAv///odl4m3q///8/2yqdSL///9jc0Z4rv///bN5uoCG/////3wGiK7///5HhiqNIv///JeMKpXq///++5IKmwL///1zm8qcawP//A+haqYnA//+06bqqDcH//3LrE6ypwf//QO1krVvC//8h76+uJcP//xnx8q8IxP//LfMvsQbF//9g9WWyH8b//7r3lLNVx///Qvq7tKvI/////Ny1Isr/////U7dCywAA//youGrMAABC+t+5mc0AALr3+LrPzgAAYPX1uwvQAAAt89i8T9EAABnxor2Z0gAAIe9UvuvTAABA7e++RNUAAHLrc7+k1gAAtOnkvwzYAAAD6D7Ae9kAAFzmhMDz2gAAvuS1wHTcAAAl49PA/d0AAJHh3cCQ3wAA/9/TwCzhAABs3rXA0+IAANjchMCF5AAAP9s+wEPmAACh2eS/DegAAPvXdL/k6QAAStbvvsnrAACM1FS+ve0AAL3Sor3A7wAA3NDYvNXxAADkzvW7/PMAANHM+Lo29gAAncrfuYX4AABDyKi46voAALzFU7dn/QAA/sLctf//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glfQstq8/79jWcey/7//v01b0LIkw/+/Ql3tskzG/79CXxyzfcn/v05hX7O6zP+/aWO2swfQ/7+SZSG0adP/v8xnorTl1v+/GGo4tYHa/794bOa1RN7/v+5urLY04v+/fHGLt1vm/78jdIa4wur/v+h2nrl17/+/zHnVuoT0/7/SfC68APr/v/9/rb3///+//3+Suv///79Rgxa5///+wnmGwLf//7zFfImMtv//Q8hcjHi1//+dyh6PgbT//9HMxJGls///5M5RlOKy///c0MeWOLL//73SKJmksf//jNR2myax//9K1rOdvbD///vX4J9osP//odn/oSaw//8/2xGk+K///9jcGKbcr///bN4VqNOv////3wiq3K///5Hh86v4r///JePXrSaw//++5LWvaLD//1zmjbG9sP//A+hhsyax//+06TG1pLH//3Lr/rY4sv//QO3JuOKy//8h75S6pbP//xnxXryBtP//LfMovni1//9g9fS/jLb//7r3w8HAt///QvqVwxa5/////GzFkrr/////58ZovAAA//w9yDq+AABC+nHJCcAAALr3hsrVwQAAYPV9y6DDAAAt81nMasUAABnxG800xwAAIe/GzQDJAABA7VnOzcoAAHLr186dzAAAtOlAz3HOAAAD6JXPSdAAAFzm188m0gAAvuQG0ArUAAAl4yHQ9dUAAJHhK9Dp1wAA/98h0OXZAABs3gbQ7NsAANjc18/+3QAAP9uVzx7gAACh2UDPS+IAAPvX186I5AAAStZZztbmAACM1MbNN+kAAL3SG82t6wAA3NBZzDnuAADkzn3L3/AAANHMhsqh8wAAncpxyYL2AABDyD3IhPkAALzF58as/AAA/sJsxf//AAD/vxc5rPz9Bf+/wTeE+XgL/7+NNoL2iBD/v3g1ofM7Ff+/gDTf8KIZ/7+lMznuyR3/v+Myreu6If+/NzI36X0l/7+lMdbmGSn/vyYxiOSVLP+/vjBL4vcv/79pMB7gRDP/vyYw/t2BNv+/+C/s27I5/7/dL+XZ2jz/v9Mv6df/P/+/3S/11SRD/7/4LwrUTUb/vyYwJtJ+Sf+/aDBJ0LlM/7++MHHOB1D/vyYxncxoU/+/pTHNyuVW/783MgDJglr/v+MyNMdEXv+/pTNqxTVi/7+BNKDDW2b/v3g11cHDav+/jTYJwHZv/7/BNzq+hXT/vxc5aLwBev+/kjqSuv9//79pPBa5/YX/vzs+wLd5i/+/CkCMtoiQ/7/WQXi1O5X/v59DgbSjmf+/akWls8md/781R+KyuqH/vwBJOLJ8pf+/zUqksRmp/7+dTCaxlaz/v3FOvbD3r/+/SVBosESz/78nUiawgLb/vwtU+K+xuf+/9lXcr9q8/7/pV9Ov/7//v+ZZ3K8kw/+/7Vv4r0zG/7//XSawfcn/vx5gaLC6zP+/S2K9sAfQ/7+IZCaxadP/v9ZmpLHl1v+/N2k4soHa/7+ta+KyRN7/vzpupbM04v+/4HCBtFvm/7+ic3i1wur/v4J2jLZ17/+/hXnAt4T0/7+tfBa5APr/v/9/krr///+//39wt////792g/m1///+wsCGqLT//7zF4Yl5s///Q8jejGqy//+dyrqPd7H//9HMeJKgsP//5M4bleGv///c0KeXO6///73SHJqrrv//jNR+nDCu//9K1s6eya3///vXDqF3rf//odk/ozet//8/22SlCa3//9jcfafurP//bN6MqeWs////35Gr7qz//5Hhj60Jrf//JeOHrzet//++5Hixd63//1zmZbPJrf//A+hPtTCu//+06Ta3q67//3LrG7k7r///QO0Au+Gv//8h7+W8oLD//xnxy753sf//LfO1wGqy//9g9aLCebP//7r3lMSotP//QvqMxvm1/////I3IcLf/////BMpxuQAA//xWy2i7AABC+oXMW70AALr3lM1JvwAAYPWGzjLBAAAt817PGcMAABnxHND+xAAAIe/D0OPGAABA7VPRyMgAAHLrztGvygAAtOk00pjMAAAD6IfShc4AAFzmx9J30AAAvuT00m7SAAAl4w/TbNQAAJHhGNNy1gAA/98P04HYAABs3vTSmtoAANjcx9K+3AAAP9uH0vDeAACh2TTSMOEAAPvXztGA4wAAStZT0eHlAACM1MPQV+gAAL3SHNDi6gAA3NBez4XtAADkzobORPAAANHMlM0f8wAAncqFzBz2AABDyFbLPfkAALzFBMqH/AAA/sKNyP//AAD/v/o1h/z9Bf+/qDQ9+XgL/795Mxz2iBD/v2oyH/M7Ff+/eDFE8KIZ/7+gMIXtyR3/v+Iv4uq6If+/Oi9X6H0l/7+rLuHlGSn/vy8ugOOVLP+/yi0w4fcv/793LfDeRDP/vzYtvtyBNv+/Ci2a2rI5/7/vLIHY2jz/v+Ysctb/P/+/7yxs1CRD/78KLW7STUb/vzYtd9B+Sf+/dy2FzrlM/7/KLZjMB1D/vy8ur8poU/+/qy7IyOVW/786L+PGglr/v+Iv/sREXv+/oDAZwzVi/794MTLBW2b/v2oySb/Dav+/eTNbvXZv/7+oNGm7hXT/v/o1cbkBev+/cTdwt/9//79xOfm1/YX/v2o7qLR5i/+/Wz15s4iQ/79IP2qyO5X/vzNBd7Gjmf+/GUOgsMmd/7/+ROGvuqH/v+NGO698pf+/yEirrhmp/7+vSjCulaz/v5lMya33r/+/hk53rUSz/793UDetgLb/v29SCa2xuf+/bFTurNq8/79yVuWs/7//v4FY7qwkw/+/mloJrUzG/7+/XDetfcn/v/Bed626zP+/MGHJrQfQ/7+AYzCuadP/v+Jlq67l1v+/V2g7r4Ha/7/jauGvRN7/v4ZtoLA04v+/RHB3sVvm/78gc2qywur/vx12ebN17/+/PnmotIT0/7+IfPm1APr/v/9/cLf///+//39EtP///7+cg9Sy///+wgiHibH//7zFSIpgsP//Q8hhjVev//+dylaQa67//9HMLJOZrf//5M7mleCs///c0IeYPqz//73SEJuyq///jNSGnTur//9K1uif16r///vXO6KHqv//odl+pEmq//8/27WmHar//9jc4KgDqv//bN4Bq/up////3xmtA6r//5HhKq8dqv//JeM1sUmq//++5Duzh6r//1zmPbXXqv//A+g8tzur//+06Tq5sqv//3LrOLs+rP//QO02veCs//8h7ze/ma3//xnxPMFrrv//LfNFw1ev//9g9VTFYLD//7r3bMeJsf//QvqNydSy/////LnLRLT/////Ks1xtgAA//x0zpG4AABC+p3PqboAALr3ptC5vAAAYPWT0cK+AAAt82XSxsAAABnxHtPHwgAAIe/A08bEAABA7UzUw8YAAHLrw9TByAAAtOkm1cHKAAAD6HbVw8wAAFzmtNXJzgAAvuTg1dPQAAAl4/rV5NIAAJHhA9b91AAA/9/61R7XAABs3uDVSdkAANjctNV/2wAAP9t21cPdAACh2SbVFeAAAPvXw9R44gAAStZM1O3kAACM1MDTd+cAAL3SHtMX6gAA3NBl0tHsAADkzpPRp+8AANHMptCd8gAAncqdz7b1AABDyHTO9vgAALzFKs1h/AAA/sK5y///AAD/v9QyYfz9Bf+/ijH2+HgL/79hMLb1iBD/v1cvnfI7Ff+/ay6n76IZ/7+ZLdHsyR3/v+AsF+q6If+/PSx3530l/7+yK+3kGSn/vzoreOKVLP+/2CoV4Pcv/7+IKsPdRDP/v0kqf9uBNv+/HipJ2bI5/78EKh7X2jz/v/sp/dT/P/+/BCrk0iRD/78eKtPQTUb/v0kqyc5+Sf+/iCrDzLlM/7/YKsHKB1D/vzorwchoU/+/sivDxuVW/789LMbEglr/v+Asx8JEXv+/mS3GwDVi/79rLsK+W2b/v1cvubzDav+/YDCpunZv/7+KMZK4hXT/v9QycbYBev+/RDREtP9//79wNtSy/YX/v5I4ibF5i/+/qjpgsIiQ/7+5PFevO5X/v8E+a66jmf+/x0CZrcmd/7/IQuCsuqH/v8ZEPqx8pf+/xEayqxmp/7/CSDurlaz/v8FK16r3r/+/w0yHqkSz/7/JTkmqgLb/v9RQHaqxuf+/5VIDqtq8/7/9VPup/7//vx5XA6okw/+/SVkdqkzG/7+AW0mqfcn/v8Ndh6q6zP+/FmDXqgfQ/794YjuradP/v+5ksqvl1v+/d2c+rIHa/78YauCsRN7/v9Jsma004v+/qG9rrlvm/7+dclevwur/v7Z1YLB17/+/9niJsYT0/79ifNSyAPr/v/9/RLT///+//38Ksf///7/Cg6Kv///+wlCHX67//7zFr4o/rf//Q8jkjT2s//+dyvSQWKv//9HM4pONqv//5M6yltqp///c0GiZPan//73SBpy2qP//jNSOnkOo//9K1gSh5Kf///vXaKOWp///odm+pVun//8/2waoMKf//9jcRKoXp///bN53rA+n////36KuF6f//5HhxrAwp///JePkslun//++5P60lqf//1zmFbfkp///A+gruUOo//+06UG7tqj//3LrV709qf//QO1xv9qp//8h747Bjar//xnxscNYq///LfPbxT2s//9g9Q7IP63//7r3Tcpfrv//QvqYzKKv/////PTOCrH/////XNBlswAA//ye0bG1AABC+r/S77cAALr3wNMiugAAYPWm1E28AAAt83HVcL4AABnxJNaNwAAAIe/A1qbCAABA7UfXvcQAAHLrutfSxgAAtOka2OjIAAAD6GfY/8oAAFzm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wur/v3p00KZ17/+/GHjbp4T0/7/sewepAPr/v/9/WKr///+//3/Wpv///787hJWl///+wjSIeKT//7zF8ot6o///Q8h+j5mi//+dytyS0aH//9HME5Yhof//5M4nmYeg///c0B2cAKD//73S956Mn///jNS5oSqf//9K1mek2J7///vXA6eWnv//odmPqWSe//8/2w6sQJ7//9jcgq4qnv//bN7tsCOe////31CzKp7//5Hhr7VAnv//JeMKuGSe//++5GO6lp7//1zmvbzYnv//A+gZvyqf//+06XnBjJ///3Lr4MMAoP//QO1Pxoeg//8h78jIIaH//xnxT8vRof//LfPmzZmi//9g9Y/QeqP//7r3UdN4pP//Qvot1pWl/////CjZ1qb/////adrRqQAA//yG26ysAABC+oTcba8AALr3Zd0XsgAAYPUs3q60AAAt89zeNbcAABnxd9+vuQAAIe/93x68AABA7XHghL4AAHLr0+DlwAAAtOkl4UHDAAAD6GfhmsUAAFzmmuH0xwAAvuS+4U/KAAAl49PhrcwAAJHh2uERzwAA/9/T4XzRAABs3r7h79MAANjcmuFu1gAAP9tn4frYAACh2SXhltsAAPvX0+BE3gAAStZx4AfhAACM1P3f4eMAAL3Sd9/W5gAA3NDc3urpAADkzizeIe0AANHMZd2A8AAAncqE3Av0AABDyIbbyvcAALzFadrD+wAA/sIo2f//AAD/v5Ulw/v9Bf+/eCTK93gL/796Iwv0iBD/v5kigPA7Ff+/0iEh7aIZ/78hIerpyR3/v4cg1ua6If+/ASDh430l/7+NHwfhGSn/vyofRN6VLP+/2R6W2/cv/7+WHvrYRDP/v2QebtaBNv+/Px7v07I5/78qHnzR2jz/vyMeEc//P/+/Kh6tzCRD/78/Hk/KTUb/v2Qe9Md+Sf+/lh6axblM/7/ZHkHDB1D/vyof5cBoU/+/jR+EvuVW/78BIB68glr/v4cgr7lEXv+/ISE1tzVi/7/SIa20W2b/v5kiF7LDav+/eiNtr3Zv/794JKyshXT/v5Ul0akBev+/1ibWpv9//7/RKZWl/YX/v60seKR5i/+/bi96o4iQ/78YMpmiO5X/v6800aGjmf+/NTchocmd/7+vOYeguqH/vx48AKB8pf+/hT6Mnxmp/7/lQCqflaz/v0FD2J73r/+/m0WWnkSz/7/0R2SegLb/v05KQJ6xuf+/rkwqntq8/78RTyOe/7//v3xRKp4kw/+/8FNAnkzG/79vVmSefcn/v/tYlp66zP+/l1vYngfQ/79FXiqfadP/vwdhjJ/l1v+/4WMAoIHa/7/XZoegRN7/v+tpIaE04v+/Im3RoVvm/7+AcJmiwur/vwx0eqN17/+/ynd4pIT0/7/De5WlAPr/v/9/1qb///+//38xo////79mhAOi///+woSI96D//7zFZIwJoP//Q8gOkDaf//+dyoeTfJ7//9HM15bXnf//5M4Cmkid///c0A2dy5z//73S/J9fnP//jNTSogSc//9K1pOluJv///vXQqh7m///odngqkyb//8/23KtK5v//9jc+K8Xm///bN52shCb////3+20F5v//5HhYLcrm///JePQuUyb//++5EC8e5v//1zmsb64m///A+gmwQSc//+06aHDX5z//3LrJcbLnP//QO2zyEid//8h707L153//xnx+c18nv//LfO50Daf//9g9Y/TCaD//7r3gtb3oP//QvqU2QOi/////MzcMaP/////+91ppgAA//wH33ypAABC+vXfbqwAALr3x+BFrwAAYPWC4QSyAAAt8ybisLQAABnxtuJLtwAAIe8z49m5AABA7Z/jXLwAAHLr+uPXvgAAtOlG5EzBAAAD6IPkvcMAAFzmsuQtxgAAvuTT5J3IAAAl4+fkEMsAAJHh7eSHzQAA/9/n5AXQAABs3tPkjNIAANjcsuQd1QAAP9uD5LzXAACh2UbkatoAAPvX+uMr3QAAStaf4wHgAACM1DPj8OIAAL3StuL75QAA3NAm4ibpAADkzoLhduwAANHMx+Dw7wAAncr135nzAABDyAffefcAALzF+92Y+wAA/sLM3P//AAD/vwMimPv9Bf+/9yB593gL/78JIJnziBD/vzYf8O87Ff+/fB527KIZ/7/YHSbpyR3/v0cd++W6If+/yxzw4n0l/79fHAHgGSn/vwQcK92VLP+/uBtq2vcv/797G7zXRDP/v0sbHdWBNv+/KhuM0rI5/78WGwXQ2jz/vxAbh83/P/+/FhsQyyRD/78qG53ITUb/v0sbLcZ+Sf+/exu9w7lM/7+4G0zBB1D/vwQc175oU/+/XxxcvOVW/7/LHNm5glr/v0cdSrdEXv+/2B2wtDVi/798HgSyW2b/vzYfRa/Dav+/CSBurHZv/7/3IHyphXT/vwMiaaYBev+/MSMxo/9//79qJgOi/YX/v3wp96B5i/+/bywJoIiQ/79ELzafO5X/vwUyfJ6jmf+/sDTXncmd/79KN0iduqH/v9k5y5x8pf+/XDxfnBmp/7/YPgSclaz/v01BuJv3r/+/vkN7m0Sz/78uRkybgLb/v55IK5uxuf+/EUsXm9q8/7+ITRCb/7//vwZQF5skw/+/i1Irm0zG/78eVUybfcn/v7xXe5u6zP+/a1q4mwfQ/78sXQScadP/vwJgX5zl1v+/8WLLnIHa/7/8ZUidRN7/vydp15004v+/d2x8nlvm/7/wbzafwur/v5pzCaB17/+/enf3oIT0/7+YewOiAPr/v/9/MaP///+//39jn////7+ShEue///+wtiIU53//7zF2ox3nP//Q8iikLWb//+dyjiUCpv//9HMoZdzmv//5M7kmu+Z///c0AWefZn//73SCaEamf//jNTzo8eY//9K1semgpj///vXialKmP//odk6rB+Y//8/29+uAZj//9jceLHvl///bN4KtOmX////35W275f//5HhHbkBmP//JeOjux+Y//++5Cq+Spj//1zms8CCmP//A+hCw8eY//+06dnFGpn//3Lre8h9mf//QO0py++Z//8h7+jNc5r//xnxu9AKm///LfOl07Wb//9g9avWd5z//7r30tlTnf//Qvog3Uue/////JvgY5//////s+HeogAA//yr4iumAABC+objUqkAALr3SORZrAAAYPX05EOvAAAt84rlFbIAABnxDubTtAAAIe+B5oO3AABA7ePmJLoAAHLrNue7vAAAtOl850q/AAAD6LPn1MEAAFzm3udbxAAAvuT95+HGAAAl4w/oaMkAAJHhFej0ywAA/98P6IXOAABs3v3nH9EAANjc3ufD0wAAP9uz53XWAACh2XznNtkAAPvXNucL3AAAStbj5vXeAACM1IHm+eEAAL3SDuYa5QAA3NCK5VzoAADkzvTkxusAANHMSORb7wAAncqG4yPzAABDyKviJvcAALzFs+Fr+wAA/sKb4P//AAD/v0oea/v9Bf+/Ux0m93gL/794HCPziBD/v7YbW+87Ff+/ChvG66IZ/790GlzoyR3/v/AZGuW6If+/fRn54X0l/78aGfXeGSn/v8gYC9yVLP+/ghg22fcv/79KGHXWRDP/vx8Yw9OBNv+/ARgf0bI5/7/vF4XO2jz/v+kX9Mv/P/+/7xdoySRD/78BGOHGTUb/vx8YW8R+Sf+/ShjUwblM/7+CGEq/B1D/v8gYurxoU/+/GhkkuuVW/799GYO3glr/v/AZ1LREXv+/dBoVsjVi/78KG0OvW2b/v7YbWazDav+/eBxSqXZv/79THSumhXT/v0oe3qIBev+/Yx9jn/9//7/eIkue/YX/vysmU515i/+/Uil3nIiQ/79YLLWbO5X/v0IvCpujmf+/FjJzmsmd/7/VNO+ZuqH/v4M3fZl8pf+/JDoamRmp/7+8PMeYlaz/v0o/gpj3r/+/1EFKmESz/79bRB+YgLb/v+FGAZixuf+/aUnvl9q8/7/0S+mX/7//v4ZO75ckw/+/H1EBmEzG/7/EUx+Yfcn/v3VWSpi6zP+/N1mCmAfQ/78LXMeYadP/v/VeGpnl1v+/+WF9mYHa/78aZe+ZRN7/v11oc5o04v+/xmsKm1vm/79cb7Wbwur/vyRzd5x17/+/JndTnYT0/79se0ueAPr/v/9/Y5////+//39jm////7/BhGWa///+wi+JhZn//7zFVY2/mP//Q8g9kRCY//+dyvCUdpf//9HMc5julv//5M7Om3iW///c0AWfEpb//73SHqK6lf//jNQdpW+V//9K1gWoMZX///vX2qoAlf//odmfrdqU//8/21ewv5T//9jcBLOulP//bN6qtamU////30q4rpT//5Hh57q/lP//JeOEvdqU//++5CPAAJX//1zmxsIxlf//A+hwxW+V//+06STIupX//3Lr5coSlv//QO23zXiW//8h75vQ7pb//xnxl9N2l///LfOv1hCY//9g9enZv5j//7r3Sd2Fmf//QvrW4GWa/////JrkY5v/////mOUnnwAA//x55rWiAABC+j/nFaYAALr37udOqQAAYPWI6GasAAAt8w/pYq8AABnxhelHsgAAIe/s6Re1AABA7UTq2bcAAHLrjuqNugAAtOnM6ji9AAAD6P7q278AAFzmJOt6wgAAvuQ/6xbFAAAl40/rtMcAAJHhVOtUygAA/99P6/nMAABs3j/rp88AANjcJOte0gAAP9v+6iPVAACh2czq+NcAAPvXjurg2gAAStZE6t/dAACM1Ozp+OAAAL3Shekw5AAA3NAP6Yvn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RN7/v9lkWos04v+/sWili1vm/7+/bPqLwur/vw9xW4x17/+/q3XLjIT0/7+gekqNAPr/v/9/243///+//3+qiP///7+ahUuI///+wsKK+If//7zFiY+wh///Q8j/k3GH//+dyjCYOof//9HMJpwKh///5M7qn+CG///c0IOjvIb//73S+Kaehv//jNRPqoSG//9K1o2tb4b///vXt7Bdhv//odnQs1CG//8/29y2R4b//9jc4LlBhv//bN7evECG////39u/QYb//5Hh2cJHhv//JePdxVCG//++5OjIXYb//1zmAcxvhv//A+gpz4SG//+06WbSnob//3LrvdW8hv//QO0y2eCG//8h783cCof//xnxk+A6h///LfOL5HGH//9g9cLosIf//7r3Qu34h///QvoY8kuI/////FT3qoj/////s/fmjQAA//wF+LuSAABC+k34O5cAALr3jPhxmwAAYPXD+GufAAAt8/P4MaMAABnxHfnLpgAAIe9B+UCqAABA7WD5l60AAHLrevnUsAAAtOmP+f2zAAAD6KD5FbcAAFzmrfkhugAAvuS3+SS9AAAl47z5IsAAAJHhvvkfwwAA/9+8+R3GAABs3rf5IckAANjcrfkuzAAAP9ug+UfPAACh2Y/5cNIAAPvXevmu1QAAStZg+QXZAACM1EH5e9wAAL3SHfkU4AAA3NDz+NjjAADkzsP4zucAANHMjPj+6wAAncpN+HTwAABDyAX4PPUAALzFs/dk+gAA/sJU9///AAD/v0sIZPr9Bf+/+Qc89XgL/7+wB3TwiBD/v3IH/us7Ff+/OgfO56IZ/78KB9jjyR3/v+EGFOC6If+/vQZ73H0l/7+dBgXZGSn/v4MGrtWVLP+/bwZw0vcv/79eBkfPRDP/v1EGLsyBNv+/RwYhybI5/79BBh3G2jz/vz8GH8P/P/+/QQYiwCRD/79HBiS9TUb/v1EGIbp+Sf+/XgYVt7lM/79vBv2zB1D/v4MG1LBoU/+/nQaXreVW/7+9BkCqglr/v+EGy6ZEXv+/CgcxozVi/786B2ufW2b/v3IHcZvDav+/sAc7l3Zv/7/5B7uShXT/v0sI5o0Bev+/qQipiP9//7/mDUuI/YX/v7wS+Id5i/+/Ohewh4iQ/79yG3GHO5X/v2sfOoejmf+/MCMKh8md/7/MJuCGuqH/v0AqvIZ8pf+/mC2ehhmp/7/VMISGlaz/v/0zb4b3r/+/FjddhkSz/78gOlCGgLb/vyU9R4axuf+/I0BBhtq8/78gQ0CG/7//vx5GQYYkw/+/IklHhkzG/78uTFCGfcn/v0dPXYa6zP+/cVJvhgfQ/7+vVYSGadP/vwZZnobl1v+/ely8hoHa/78UYOCGRN7/v9hjCoc04v+/zmc6h1vm/7//a3GHwur/v3VwsId17/+/PHX4h4T0/79kekuIAPr/v/9/qoj///+//38Eg////7/bheKC///+wjmLxIL//7zFMJCqgv//Q8jOlJOC//+dyiKZf4L//9HMOJ1ugv//5M4aoV+C///c0M6kUoL//73SXahHgv//jNTNqz6C//9K1iKvNoL///vXY7Iwgv//odmTtSyC//8/27i4KIL//9jc1Lsmgv//bN7rviaC////3wLCJoL//5HhHcUogv//JeM9yCyC//++5GjLMIL//1zmpM42gv//A+jy0T6C//+06VjVR4L//3Lr3NhSgv//QO2E3F+C//8h71bgboL//xnxW+R/gv//LfOc6JOC//9g9SPtqoL//7r3//HEgv//Qvo/9+KC/////Pn8BIP/////HP2+iAAA//w6/f6NAABC+lT92pIAALr3a/1ilwAAYPV+/aObAAAt85D9p58AABnxnv16owAAIe+r/SGnAABA7bb9paoAAHLrwP0LrgAAtOnH/VqxAAAD6M39lLQAAFzm0v3AtwAAvuTV/eG6AAAl49f9+70AAJHh2P0SwQAA/9/X/SrEAABs3tX9RscAANjc0v1qygAAP9vN/ZrNAACh2cf929AAAPvXwP0x1AAASta2/aHXAACM1Kv9L9sAAL3Snv3k3gAA3NCQ/cXiAADkzn792+YAANHMa/0w6wAAncpU/c7vAABDyDr9xPQAALzFHP0j+gAA/sL5/P//AAD/v+ICI/r9Bf+/xALE9HgL/7+pAs7viBD/v5ICMOs7Ff+/gALb5qIZ/79uAsXiyR3/v2AC5N66If+/UwIv230l/79IAqHXGSn/vz0CMdSVLP+/NgLb0Pcv/78wAprNRDP/vysCasqBNv+/KAJGx7I5/78mAirE2jz/vyUCEsH/P/+/JgL7vSRD/78oAuG6TUb/vysCwLd+Sf+/MAKUtLlM/782AlqxB1D/vz0CC65oU/+/SAKlquVW/79TAiGnglr/v2ACeqNEXv+/bgKnnzVi/7+AAqObW2b/v5ICYpfDav+/qQLaknZv/7/EAv6NhXT/v+ICvogBev+/BQMEg/9//7++COKC/YX/v/4NxIJ5i/+/2xKqgoiQ/79hF5OCO5X/v6Ibf4Kjmf+/px9ugsmd/796I1+CuqH/vyEnUoJ8pf+/pipHghmp/78MLj6Claz/v1kxNoL3r/+/lTQwgkSz/7/ANyyCgLb/v+E6KIKxuf+//D0mgtq8/78TQSaC/7//vypEJoIkw/+/RkcogkzG/79rSiyCfcn/v5tNMIK6zP+/3FA2ggfQ/78xVD6CadP/v6FXR4Ll1v+/MFtSgoHa/7/kXl+CRN7/v8ZiboI04v+/3GZ/glvm/78wa5OCwur/v85vqoJ17/+/xXTEgoT0/78jeuKCAPr/v/9/BIP///+//3/6fP///7/bhRx9///+wjmLOn3//7zFMJBUff//Q8jOlGt9//+dyiKZf33//9HMOJ2Qff//5M4aoZ99///c0M6krH3//73SXai3ff//jNTNq8B9//9K1iKvyH3///vXY7LOff//odmTtdJ9//8/27i41n3//9jc1LvYff//bN7rvth9////3wLC2H3//5HhHcXWff//JeM9yNJ9//++5GnLzn3//1zmpM7Iff//A+jy0cB9//+06VjVt33//3Lr3Nisff//QO2E3J99//8h71bgkH3//xnxW+R/ff//LfOc6Gt9//9g9SLtVH3//7r3//E6ff//Qvo/9xx9/////Pn8+nz/////HP0/dwAA//w6/f9xAABC+lT9JG0AALr3a/2caAAAYPV+/VtkAAAt85D9V2AAABnxnv2EXAAAIe+r/d1YAABA7bb9WVUAAHLrwP3zUQAAtOnH/aNOAAAD6M39aksAAFzm0v0+SAAAvuTV/R1FAAAl49f9A0IAAJHh2P3sPgAA/9/X/dQ7AABs3tX9uDgAANjc0v2TNQAAP9vN/WQyAACh2cf9Ii8AAPvXwP3NKwAASta2/VwoAACM1Kv9zyQAAL3Snv0aIQAA3NCQ/TgdAADkzn79IhkAANHMa/3OFAAAncpU/S8QAABDyDr9OQsAALzFHP3bBQAA/sL5/AAAAAD/v+IC2wX9Bf+/xAI5C3gL/7+pAi8QiBD/v5ICzhQ7Ff+/gAIiGaIZ/79uAjgdyR3/v2ACGiG6If+/UwLPJH0l/79IAlwoGSn/vz0CzSuVLP+/NgIiL/cv/78wAmQyRDP/vysClDWBNv+/KAK4OLI5/78mAtQ72jz/vyUC7D7/P/+/JgIDQiRD/78oAh1FTUb/vysCPkh+Sf+/MAJqS7lM/782AqROB1D/vz0C81FoU/+/SAJZVeVW/79TAt1Yglr/v2AChFxEXv+/bgJXYDVi/7+AAltkW2b/v5ICm2jDav+/qQIkbXZv/7/EAgByhXT/v+ICQHcBev+/BAP5fP9//7+9CBx9/YX/v/8NOn15i/+/2hJUfYiQ/79iF2t9O5X/v6Ibf32jmf+/px+Qfcmd/796I599uqH/vyEnrH18pf+/piq3fRmp/78MLsB9laz/v1kxyH33r/+/lTTOfUSz/7/BN9J9gLb/v+E61n2xuf+//D3Yfdq8/78TQdh9/7//vypE2H0kw/+/RUfWfUzG/79rStJ9fcn/v5pNzn26zP+/3FDIfQfQ/78xVMB9adP/v6FXt33l1v+/MFusfYHa/7/kXp99RN7/v8ZikH004v+/3GZ/fVvm/78wa2t9wur/v85vVH117/+/xXQ6fYT0/78jehx9APr/v/9/+nz///+//39Ud////7+ahbN3///+wsKKBnj//7zFiY9OeP//Q8j/k414//+dyjCYxHj//9HMJpz0eP//5M7qnx55///c0IOjQnn//73S+KZgef//jNRPqnp5//9K1o2tj3n///vXt7Chef//odnQs655//8/29y2t3n//9jc4Lm9ef//bN7evL55////39u/vXn//5Hh2cK3ef//JePdxa55//++5OjIoXn//1zmAcyPef//A+gpz3p5//+06WbSYHn//3LrvdVCef//QO0x2R55//8h783c9Hj//xnxk+DEeP//LfOM5I14//9g9cPoTnj//7r3Qe0GeP//QvoY8rN3/////FT3VHf/////s/cXcgAA//wF+ENtAABC+k34w2gAALr3jPiNZAAAYPXD+JNgAAAt8/P4zFwAABnxHfkzWQAAIe9B+b5VAABA7WD5Z1IAAHLrevkqTwAAtOmP+QBMAAAD6KD56UgAAFzmrfndRQAAvuS3+dpCAAAl47z53D8AAJHhvvnfPAAA/9+8+eE5AABs3rf53TYAANjcrfnQMwAAP9ug+bcwAACh2Y/5ji0AAPvXevlPKgAAStZg+fkmAACM1EH5gyMAAL3SHfnqHwAA3NDz+CUcAADkzsP4LxgAANHMjPgAFAAAncpN+IkPAABDyAX4wgoAALzFs/eZBQAA/sJU9wAAAAD/v0sImQX9Bf+/+QfCCngL/7+wB4kPiBD/v3IHABQ7Ff+/OgcvGKIZ/78KByUcyR3/v+EG6h+6If+/vQaDI30l/7+dBvkmGSn/v4MGTyqVLP+/bwaOLfcv/79eBrcwRDP/v1EG0DOBNv+/RwbdNrI5/79BBuE52jz/vz8G3zz/P/+/QQbcPyRD/79HBtpCTUb/v1EG3UV+Sf+/XgboSLlM/79vBgFMB1D/v4MGKU9oU/+/nQZnUuVW/7+9Br5Vglr/v+EGM1lEXv+/CgfNXDVi/786B5NgW2b/v3IHjGTDav+/sAfCaHZv/7/5B0JthXT/v0sIGHIBev+/qQhUd/9//7/mDbN3/YX/v7wSBnh5i/+/OhdOeIiQ/79xG414O5X/v2sfxHijmf+/MCP0eMmd/7/MJh55uqH/v0AqQnl8pf+/mC1geRmp/7/VMHp5laz/v/0zj3n3r/+/FjeheUSz/78gOq55gLb/vyQ9t3mxuf+/I0C9edq8/78gQ755/7//vx5GvXkkw/+/Ikm3eUzG/78uTK55fcn/v0dPoXm6zP+/cVKPeQfQ/7+uVXp5adP/vwZZYHnl1v+/e1xCeYHa/78UYB55RN7/v9hj9Hg04v+/zmfEeFvm/7//a414wur/v3VwTnh17/+/PHUGeIT0/79kerN3APr/v/9/VHf///+//38jcv///79ehbRy///+wlOKM3P//7zF746jc///Q8g/kwR0//+dyk2XWXT//9HMJZukdP//5M7NnuV0///c0EyiHXX//73SqaVNdf//jNTpqHV1//9K1hCsl3X///vXI6+xdf//odkmssZ1//8/2xy11XX//9jcCbjddf//bN7vuuB1////39O93XX//5HhtsDVdf//JeOew8Z1//++5I3GsXX//1zmhcmXdf//A+iLzHV1//+06aLPTXX//3Lrz9Iddf//QO0W1uV0//8h737ZpHT//xnxCt1ZdP//LfPD4AR0//9g9bHko3P//7r33+gzc///QvpV7bRy/////CPyI3L/////tPJVbQAA//wz899oAABC+qLzsmQAALr3BPTEYAAAYPVZ9AtdAAAt86P0flkAABnx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Tpm7bP//5M7BnCJt///c0BCge23//73SP6PHbf//jNRTpgdu//9K1k+pPW7///vXOKxobv//odkRr4lu//8/292xoG7//9jcnrSubv//bN5Zt7Nu////3w66rm7//5Hhwrygbv//JeN2v4lu//++5C7CaG7//1zm7MQ9bv//A+izxwdu//+06YbKx23//3Lrac17bf//QO1f0CJt//8h72zTu2z//xnxldZFbP//LfPe2b9r//9g9U7dJmv//7r37eB5av//QvrA5LRp/////NTo02j/////tOnBZAAA//x46u1gAABC+ibrT10AALr3v+veWQAAYPVF7JRWAAAt87rsbFMAABnxIe1fUAAAIe967WpNAABA7cbth0oAAHLrB+60RwAAtOk87u1EAAAD6GfuL0IAAFzmiO53PwAAvuSg7sI8AAAl463uDzoAAJHhsu5YNwAA/9+t7p80AABs3qDu3TEAANjciO4RLwAAP9tn7jgsAACh2TzuTykAAPvXB+5SJgAAStbG7T4jAACM1HrtECAAAL3SIe3CHAAA3NC67E0ZAADkzkXssBUAANHMv+vgEQAAncom69cNAABDyHjqigkAALzFtOnzBAAA/sLU6AAAAAD/v0kW8wT9Bf+/hhWKCXgL/7/YFNcNiBD/vz4U4BE7Ff+/uROwFaIZ/79DE00ZyR3/v90Swhy6If+/hBIQIH0l/783Ej4jGSn/v/cRUiaVLP+/whFPKfcv/7+WETgsRDP/v3YRES+BNv+/XhHdMbI5/79REZ402jz/v0sRWDf/P/+/UREPOiRD/79eEcI8TUb/v3YRdz9+Sf+/lhEvQrlM/7/CEe1EB1D/v/cRtEdoU/+/NxKHSuVW/7+EEmpNglr/v90SX1BEXv+/QxNsUzVi/7+5E5VWW2b/vz4U31nDav+/2BRPXXZv/7+GFe1ghXT/v0kWwWQBev+/KRfUaP9//789G7Rp/YX/vxAfeWp5i/+/ryIma4iQ/78gJr9rO5X/v2kpRWyjmf+/kiy7bMmd/7+fLyJtuqH/v5Uye218pf+/eDXHbRmp/79KOAdulaz/vxI7PW73r/+/0D1obkSz/7+IQIlugLb/vzxDoG6xuf+/8EWubtq8/7+lSLNu/7//v19Lrm4kw/+/IU6gbkzG/7/tUIlufcn/v8ZTaG66zP+/r1Y9bgfQ/7+rWQduadP/v79cx23l1v+/7l97bYHa/789YyJtRN7/v7Bmu2w04v+/T2pFbFvm/78fbr9rwur/vyhyJmt17/+/c3Z5aoT0/78Me7RpAPr/v/9/1Gj///+//3+bZP///7/BhJll///+wi+JeWb//7zFVY0/Z///Q8g9ke5n//+dyu+UiGj//9HMc5gQaf//5M7Om4Zp///c0AWf7Gn//73SHqJEav//jNQdpY9q//9K1gWozWr///vX2qr+av//odmfrSRr//8/21ewP2v//9jcBLNQa///bN6qtVVr////30q4UGv//5Hh57o/a///JeOEvSRr//++5CPA/mr//1zmxsLNav//A+hwxY9q//+06STIRGr//3Lr5crsaf//QO23zYZp//8h75vQEGn//xnxl9OIaP//LfOv1u5n//9g9enZP2f//7r3SN15Zv//QvrW4Jll/////Jnkm2T/////mOXXYAAA//x55kldAABC+j/n6VkAALr37uewVgAAYPWI6JhTAAAt8w/pnFAAABnxhem3TQAAIe/s6eZKAABA7UTqJUgAAHLrjupxRQAAtOnM6sZCAAAD6P7qI0AAAFzmJOuDPQAAvuQ/6+g6AAAl40/rSTgAAJHhVOuqNQAA/99P6wUzAABs3j/rVjAAANjcJOugLQAAP9v+6tsqAACh2czqBigAAPvXjuoeJQAAStZE6h8iAACM1OzpBh8AAL3ShenOGwAA3NAP6XMYAADkzojo8BQAANHM7uc9EQAAnco/51YNAABDyHnmLwkAALzFmOXBBAAA/sKa5AAAAAD/v2YawQT9Bf+/hRkvCXgL/7+/GFYNiBD/vw8YPRE7Ff+/dhfwFKIZ/7/vFnMYyR3/v3kWzhu6If+/ERYGH30l/7+6FR8iGSn/v3AVHiWVLP+/MRUGKPcv/78AFdsqRDP/v9oUoC2BNv+/vxRWMLI5/7+uFAUz2jz/v6kUqjX/P/+/rhRJOCRD/7+/FOg6TUb/v9oUhD1+Sf+/ABUjQLlM/78xFcZCB1D/v3AVcUVoU/+/uhUlSOVW/78RFuZKglr/v3kWt01EXv+/7xacUDVi/792F5hTW2b/vw8Yr1bDav+/vxjpWXZv/7+FGUldhXT/v2Ya1mABev+/ZBubZP9//78nH5ll/YX/v7UieWZ5i/+/FSY/Z4iQ/79OKe5nO5X/v2csiGijmf+/Yy8Qacmd/79HMoZpuqH/vxg17Gl8pf+/2jdEahmp/7+OOo9qlaz/vzg9zWr3r/+/2z/+akSz/796QiRrgLb/vxdFP2uxuf+/tEdQa9q8/79USlVr/7//v/pMUGskw/+/p08/a0zG/79fUiRrfcn/vyRV/mq6zP+/+VfNagfQ/7/hWo9qadP/v+BdRGrl1v+/+WDsaYHa/78wZIZpRN7/v4tnEGk04v+/D2uIaFvm/7/Bbu5nwur/v6lyP2d17/+/z3Z5ZoT0/789e5llAPr/v/9/m2T///+//3+bYP///7+ShLNh///+wtiIq2L//7zF2oyHY///Q8iikElk//+dyjiU9GT//9HMoZeLZf//5M7kmg9m///c0AWegWb//73SCaHkZv//jNTzozdn//9K1semfGf///vXiam0Z///odk6rN9n//8/29+u/Wf//9jceLEPaP//bN4KtBVo////35W2D2j//5HhHbn9Z///JeOju99n//++5Cq+tGf//1zms8B8Z///A+hCwzdn//+06dnF5Gb//3Lre8iBZv//QO0pyw9m//8h7+jNi2X//xnxu9D0ZP//LfOl00lk//9g9avWh2P//7r30tmrYv//Qvog3bNh/////Jvgm2D/////s+EgXQAA//yr4tNZAABC+objrFYAALr3SOSlUwAAYPX05LpQAAAt84rl6U0AABnxDuYqSwAAIe+B5npIAABA7ePm2UUAAHLrNudDQwAAtOl857RAAAAD6LPnKT4AAFzm3uejOwAAvuT95x05AAAl4w/oljYAAJHhFegKNAAA/98P6HgxAABs3v3n3y4AANjc3uc6LAAAP9uz54kpAACh2XznyCYAAPvXNufzIwAAStbj5gkhAACM1IHmBh4AAL3SDubkGgAA3NCK5aEXAADkzvTkNxQAANHMSOSiEAAAncqG49sMAABDyKvi2AgAALzFs+GSBAAA/sKb4AAAAAD/v0oekgT9Bf+/Ux3YCHgL/794HNsMiBD/v7YbohA7Ff+/Chs3FKIZ/790GqEXyR3/v/AZ5Bq6If+/fRkGHn0l/78aGQkhGSn/v8gY8yOVLP+/ghjIJvcv/79KGIkpRDP/vx8YOiyBNv+/ARjfLrI5/7/vF3kx2jz/v+kXCjT/P/+/7xeWNiRD/78BGB05TUb/vx8Yozt+Sf+/ShgpPrlM/7+CGLRAB1D/v8gYQ0NoU/+/GhnaReVW/799GXtIglr/v/AZKUtEXv+/dBrpTTVi/78KG7tQW2b/v7YbpVPDav+/eBysVnZv/79THdNZhXT/v0oeIF0Bev+/Yx+bYP9//7/eIrNh/YX/vysmq2J5i/+/UimHY4iQ/79YLElkO5X/v0Iv9GSjmf+/FjKLZcmd/7/VNA9muqH/v4M3gWZ8pf+/JDrkZhmp/7+8PDdnlaz/v0o/fGf3r/+/1EG0Z0Sz/79bRN9ngLb/v+FG/Wexuf+/aUkPaNq8/7/0SxVo/7//v4ZOD2gkw/+/H1H9Z0zG/7/EU99nfcn/v3VWtGe6zP+/N1l8ZwfQ/78LXDdnadP/v/Ve5Gbl1v+/+WGBZoHa/78aZQ9mRN7/v11oi2U04v+/xmv0ZFvm/79cb0lkwur/vyRzh2N17/+/JnerYoT0/79se7NhAPr/v/9/m2D///+//3/NXP///79mhPtd///+woSIB1///7zFZIz1X///Q8gOkMhg//+dyoeTgmH//9HM15YnYv//5M4CmrZi///c0A2dM2P//73S/J+fY///jNTSovpj//9K1pOlRmT///vXQqiDZP//odngqrJk//8/23Kt02T//9jc+K/nZP//bN52su5k////3+2052T//5HhYLfTZP//JePQubJk//++5EC8g2T//1zmsb5GZP//A+gmwfpj//+06aHDn2P//3LrJcYzY///QO2zyLZi//8h707LJ2L//xnx+c2CYf//LfO40Mhg//9g9Y/T9V///7r3gtYHX///QvqU2ftd/////MzczVz/////+92VWQAA//wH34JWAABC+vXfkFMAALr3x+C5UAAAYPWC4fpNAAAt8ybiTUsAABnxtuKzSAAAIe8z4yVGAABA7Z/jokMAAHLr+uMnQQAAtOlG5LI+AAAD6IPkQDwAAFzmsuTROQAAvuTT5GE3AAAl4+fk7jQAAJHh7eR3MgAA/9/n5PkvAABs3tPkci0AANjcsuThKgAAP9uD5EEoAACh2UbklCUAAPvX+uPTIgAAStaf4/0fAACM1DPjDh0AAL3StuIDGgAA3NAm4tgWAADkzoLhiBMAANHMx+AOEAAAncr132UMAABDyAffhQgAALzF+91mBAAA/sLM3AAAAAD/vwMiZgT9Bf+/9yCFCHgL/78JIGUMiBD/vzYfDhA7Ff+/fB6IE6IZ/7/YHdgWyR3/v0cdAxq6If+/yxwOHX0l/79fHP0fGSn/vwQc0yKVLP+/uBuUJfcv/797G0EoRDP/v0sb4SqBNv+/KhtyLbI5/78WG/kv2jz/vxAbdzL/P/+/FhvuNCRD/78qG2E3TUb/v0sb0Tl+Sf+/extAPLlM/7+4G7I+B1D/vwQcJ0FoU/+/XxyiQ+VW/7/LHCVGglr/v0cds0hEXv+/2B1OSzVi/798HvpNW2b/vzYfuVDDav+/CSCQU3Zv/7/3IIJWhXT/vwMilVkBev+/MSPNXP9//79qJvtd/YX/v3wpB195i/+/byz1X4iQ/79EL8hgO5X/vwUygmGjmf+/sDQnYsmd/79KN7ZiuqH/v9k5M2N8pf+/XDyfYxmp/7/YPvpjlaz/v01BRmT3r/+/vkODZESz/78uRrJkgLb/v55I02Sxuf+/EUvnZNq8/7+ITe5k/7//vwZQ52Qkw/+/jFLTZEzG/78eVbJkfcn/v7xXg2S6zP+/a1pGZAfQ/78sXfpjadP/vwJgn2Pl1v+/8WIzY4Ha/7/8ZbZiRN7/vydpJ2I04v+/d2yCYVvm/7/wb8hgwur/v5pz9V917/+/encHX4T0/7+Ye/tdAPr/v/9/zVz///+//38oWf///787hGla///+wjSIhlv//7zF8ouDXP//Q8h+j2Vd//+dytySLV7//9HME5bdXv//5M4nmXdf///c0B2c/l///73S955yYP//jNS5odRg//9K1mekJmH///vXA6doYf//odmPqZph//8/2w6svmH//9jcgq7UYf//bN7tsNth////31Cz1GH//5Hhr7W+Yf//JeMKuJph//++5GO6aGH//1zmvbwmYf//A+gZv9Rg//+06XnBcmD//3Lr4MP+X///QO1Pxndf//8h78fI3V7//xnxT8stXv//LfPmzWVd//9g9ZDQhFz//7r3UdOGW///Qvot1mla/////CjZKFn/////adotVgAA//yG21JTAABC+oTckVAAALr3Zd3nTQAAYPUs3lBLAAAt89zeyUgAABnxd99PRgAAIe/93+BDAABA7XHgekEAAHLr0+AaPwAAtOkl4b08AAAD6GfhZDoAAFzmmuEKOAAAvuS+4a81AAAl49PhUDMAAJHh2uHtMAAA/9/T4YIuAABs3r7hDywAANjcmuGQKQAAP9tn4QQnAACh2SXhaCQAAPvX0+C6IQAAStZx4PceAACM1P3fHBwAAL3Sd98nGQAA3NDc3hMWAADkzize3RIAANHMZd1+DwAAncqE3PMLAABDyIbbMwgAALzFado6BAAA/sIo2QAAAAD/v5UlOgT9Bf+/eCQzCHgL/795I/MLiBD/v5kifg87Ff+/0iHdEqIZ/78hIRMWyR3/v4cgJxm6If+/ASAcHH0l/7+NH/ceGSn/vyofuiGVLP+/2R5oJPcv/7+WHgQnRDP/v2QekCmBNv+/Px4PLLI5/78qHoIu2jz/vyMe7TD/P/+/Kh5QMyRD/78/Hq81TUb/v2QeCjh+Sf+/lh5kOrlM/7/ZHr08B1D/vyofGj9oU/+/jR96QeVW/78BIOBDglr/v4cgT0ZEXv+/ISHJSDVi/7/SIVBLW2b/v5ki503Dav+/eiORUHZv/794JFJThXT/v5UlLVYBev+/1iYoWf9//7/QKWha/YX/v60shlt5i/+/bS+DXIiQ/78YMmVdO5X/v680LV6jmf+/NTfdXsmd/7+vOXZfuqH/vx48/l98pf+/hT5yYBmp/7/lQNRglaz/v0FDJmH3r/+/m0VoYUSz/7/0R5phgLb/v09KvmGxuf+/rkzUYdq8/78RT9th/7//v3tR1GEkw/+/8FO+YUzG/79vVpphfcn/v/tYaGG6zP+/l1smYQfQ/79FXtRgadP/vwdhcmDl1v+/4WP+X4Ha/7/XZndfRN7/v+tp3V404v+/Im0tXlvm/7+AcGRdwur/vwx0hFx17/+/yneGW4T0/7/De2laAPr/v/9/KFn///+//3+lVf///78ShPdW///+wuaHI1j//7zFhIsuWf//Q8jyjhxa//+dyjaS71r//9HMVZWpW///5M5SmExc///c0DKb3Fz//73S+J1XXf//jNSnoL9d//9K1kKjFl7///vXy6VbXv//odlFqJFe//8/27GquV7//9jcE63PXv//bN5rr9de////37uxz17//5HhBrS5Xv//JeNMtpFe//++5JC4W17//1zm07oWXv//A+gXvb9d//+06V6/V13//3LrqMHcXP//QO36w0xc//8h71PGqVv//xnxt8jvWv//LfMoyxxa//9g9ajNLln//7r3O9AjWP//Qvrk0vdW/////KbVplX/////9tbkUgAA//wi2DxQAABC+i7ZqE0AALr3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TUb/vzYthy9+Sf+/dy15MblM/7/KLWYzB1D/vy8uTjVoU/+/qy41N+VW/786Lxs5glr/v+IvADtEXv+/oDDlPDVi/794Mcw+W2b/v2oytUDDav+/eTOjQnZv/7+oNJVEhXT/v/o1jUYBev+/cTeOSP9//79xOQVK/YX/v2o7Vkt5i/+/Wz2FTIiQ/79IP5VNO5X/vzNBh06jmf+/GUNdT8md/7/+RB1QuqH/v+NGw1B8pf+/yEhTURmp/7+vSs5Rlaz/v5lMNVL3r/+/hU6GUkSz/792UMdSgLb/v25S9VKxuf+/bVQQU9q8/79yVhlT/7//v4FYEFMkw/+/mlr1UkzG/7+/XMdSfcn/v/Beh1K6zP+/MGE1UgfQ/7+AY85RadP/v+JlU1Hl1v+/V2jDUIHa/7/jah1QRN7/v4ZtXk804v+/RHCGTlvm/78gc5VNwur/vx12hEx17/+/PnlWS4T0/7+IfAVKAPr/v/9/jUj///+//39sRf///79Rg+hG///+wnmGPkj//7zFfIlxSf//Q8hcjIZK//+dyh6PfUv//9HMxJFZTP//5M5RlBxN///c0MeWxk3//73SKJlaTv//jNR2m9hO//9K1rOdQU////vX4J+WT///odn/odhP//8/2xGkBlD//9jcGKYiUP//bN4VqCtQ////3wiqIlD//5Hh86sGUP//JePXrdhP//++5LWvlk///1zmjbFBT///A+hhs9hO//+06TG1WU7//3Lr/rbGTf//QO3JuBxN//8h75S6WUz//xnxXrx9S///LfMovoZK//9g9fS/ckn//7r3w8E+SP//QvqVw+hG/////GzFbEX/////58aWQwAA//w9yMRBAABC+nHJ9T8AALr3hsooPgAAYPV9y108AAAt81nMlDoAABnxG83KOAAAIe/Gzf42AABA7VnOMDUAAHLr185hMwAAtOlAz40xAAAD6JXPtS8AAFzm18/YLQAAvuQG0PQrAAAl4yHQCSoAAJHhK9AVKAAA/98h0BkmAABs3gbQEiQAANjc188AIgAAP9uVz+AfAACh2UDPsx0AAPvX1852GwAAStZZzicZAACM1MbNxxYAAL3SG81RFAAA3NBZzMURAADkzn3LHg8AANHMhspdDAAAncpxyXwJAABDyD3IegYAALzF58ZSAwAA/sJsxQAAAAD/vxc5UgP9Bf+/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2jz/v3BCxx7/P/+/ekJEICRD/7+YQrkhTUb/v8lCJCN+Sf+/D0OHJLlM/79pQ+ElB1D/v9dDMidoU/+/XER8KOVW/7/2RL4pglr/v6hF9ypEXv+/cEYoLDVi/79QR1ItW2b/v0tIdS7Dav+/YkmOL3Zv/7+USqAwhXT/v+VLqTEBev+/VU2qMv9//79VTho0/YX/v19PaTV5i/+/b1CcNoiQ/7+KUbI3O5X/v6xSrTijmf+/1lOOOcmd/78HVVY6uqH/v0FWCDt8pf+/gleiOxmp/7/MWCY8laz/vx1aljz3r/+/d1vwPESz/7/aXDQ9gLb/v0VeZz2xuf+/ul+EPdq8/784YY49/7//v79ihD0kw/+/UWRnPUzG/7/uZTU9fcn/v5Zn8Dy6zP+/SmmWPAfQ/78LayY8adP/v9lsojvl1v+/tW4IO4Ha/7+fcFc6RN7/v5pyjjk04v+/pXSsOFvm/7/BdrI3wur/v/F4nDZ17/+/NXtqNYT0/7+OfRo0APr/v/9/qjL///+//39mL////79Igs4w///+wn2EFzL//7zFnoZCM///Q8iuiFM0//+dyqyKSjX//9HMmowoNv//5M55ju82///c0EmQnjf//73SDJI2OP//jNTBk7o4//9K1mqVJzn///vXCJeBOf//odmZmMY5//8/2yCa9zn//9jcnJsVOv//bN4OnR46////33eeFTr//5Hh1p/3Of//JeMrocY5//++5HiigTn//1zmvKMnOf//A+j3pLo4//+06SmmNjj//3LrU6eeN///QO11qO82//8h742pKTb//xnxnqpKNf//LfOlq1M0//9g9aOsQzP//7r3ma0XMv//QvqErs4w/////GavZi//////zbCFLgAA//wWspgtAABC+kOzpCwAALr3VLSlKwAAYPVJtZ4qAAAt8yi2jikAABnx77Z1KAAAIe+dt1MnAABA7Ta4KSYAAHLrubj3JAAAtOknubwjAAAD6IC5eCIAAFzmxrkrIQAAvuT3udYfAAAl4xS6dx4AAJHhHroPHQAA/98UupwbAABs3ve5IBoAANjcxrmZGAAAP9uAuQgXAACh2Se5axUAAPvXubjCEwAAStY2uAwSAACM1J23SRAAAL3S77Z5DgAA3NAotpoMAADkzkq1qwoAANHMVLStCAAAncpDs54GAABDyBayfQQAALzF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AAAD6I6V7AwAAFzmtZV3DAAAvuTRlfwLAAAl4+KVewsAAJHh55X0CgAA/9/ilWcKAABs3tGV1QkAANjctZU9CQAAP9uOlaEIAACh2VqVAQgAAPvXHpVbBwAAStbVlK8GAACM1IGUAQYAAL3SIpROBQAA3NC3k5UEAADkzkKT2wMAANHMwZIbAwAAnco1kloCAABDyJ6RkwEAALzF+pDLAAAA/sJOkAAAAAD/vwNvywD9Bf+/YG6TAXgL/7/JbVoCiBD/vz1tGwM7Ff+/vGzbA6IZ/79HbJUEyR3/v9trTgW6If+/fWsBBn0l/78pa68GGSn/v+BqWweVLP+/o2oBCPcv/79vaqEIRDP/v0lqPQmBNv+/LWrVCbI5/78camcK2jz/vxdq9Ar/P/+/HGp7CyRD/78tavwLTUb/v0lqdwx+Sf+/cGrsDLlM/7+ialsNB1D/v99qww1oU/+/KWskDuVW/798a4AOglr/v9xr1A5EXv+/R2wgDzVi/7+7bGYPW2b/vzxtpA/Dav+/yG3bD3Zv/79gbgoQhXT/vwNvLxABev+/r29OEP9//7/Ob/wQ/YX/v/VvnRF5i/+/I3A0EoiQ/79acMESO5X/v5hwQROjmf+/3nC4E8md/78rcSEUuqH/v39xgBR8pf+/2nHVFBmp/788ch0Vlaz/v6RyXBX3r/+/E3OOFUSz/7+Ic7YVgLb/vwN00hWxuf+/hHTiFdq8/78LdegV/7//v5d14hUkw/+/KXbSFUzG/7/AdrYVfcn/v1x3jRW6zP+//ndcFQfQ/7+keB0VadP/v0551hTl1v+//XmAFIHa/7+xeiEURN7/v2h7txM04v+/I3xBE1vm/7/ifMESwur/v6V9NBJ17/+/a36dEYT0/78zf/wQAPr/v/9/ThD///+//39QC////7+NgM4L///+whmBQwz//7zFo4GyDP//Q8grghgN//+dyrKCdw3//9HMNoPPDf//5M63gx0O///c0DaEZA7//73SsoSiDv//jNQrhdkO//9K1qGFBw////vXE4YrD///odmChkkP//8/2+2GXg///9jcVIdrD///bN63h28P////3xaIag///5HhcIheD///JePGiEkP//++5BiJKw///1zmZIkHD///A+isidkO//+06e+JoQ7//3LrLIpkDv//QO1lih4O//8h75eKzw3//xnx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") }] -[sub_resource type="ArrayMesh" id="ArrayMesh_e6ukh"] +[sub_resource type="ArrayMesh" id="ArrayMesh_hqt5a"] _surfaces = [{ "aabb": AABB(-9.521219, -9.524, -9.521219, 19.042439, 19.048, 19.042439), "attribute_data": PackedByteArray("AAAAAAAAAAAAAAA8AAAAAAAAgDwAAAAAAADAPAAAAAAAAAA9AAAAAAAAID0AAAAAAABAPQAAAAAAAGA9AAAAAAAAgD0AAAAAAACQPQAAAAAAAKA9AAAAAAAAsD0AAAAAAADAPQAAAAAAANA9AAAAAAAA4D0AAAAAAADwPQAAAAAAAAA+AAAAAAAACD4AAAAAAAAQPgAAAAAAABg+AAAAAAAAID4AAAAAAAAoPgAAAAAAADA+AAAAAAAAOD4AAAAAAABAPgAAAAAAAEg+AAAAAAAAUD4AAAAAAABYPgAAAAAAAGA+AAAAAAAAaD4AAAAAAABwPgAAAAAAAHg+AAAAAAAAgD4AAAAAAACEPgAAAAAAAIg+AAAAAAAAjD4AAAAAAACQPgAAAAAAAJQ+AAAAAAAAmD4AAAAAAACcPgAAAAAAAKA+AAAAAAAApD4AAAAAAACoPgAAAAAAAKw+AAAAAAAAsD4AAAAAAAC0PgAAAAAAALg+AAAAAAAAvD4AAAAAAADAPgAAAAAAAMQ+AAAAAAAAyD4AAAAAAADMPgAAAAAAANA+AAAAAAAA1D4AAAAAAADYPgAAAAAAANw+AAAAAAAA4D4AAAAAAADkPgAAAAAAAOg+AAAAAAAA7D4AAAAAAADwPgAAAAAAAPQ+AAAAAAAA+D4AAAAAAAD8PgAAAAAAAAA/AAAAAAAAAj8AAAAAAAAEPwAAAAAAAAY/AAAAAAAACD8AAAAAAAAKPwAAAAAAAAw/AAAAAAAADj8AAAAAAAAQPwAAAAAAABI/AAAAAAAAFD8AAAAAAAAWPwAAAAAAABg/AAAAAAAAGj8AAAAAAAAcPwAAAAAAAB4/AAAAAAAAID8AAAAAAAAiPwAAAAAAACQ/AAAAAAAAJj8AAAAAAAAoPwAAAAAAACo/AAAAAAAALD8AAAAAAAAuPwAAAAAAADA/AAAAAAAAMj8AAAAAAAA0PwAAAAAAADY/AAAAAAAAOD8AAAAAAAA6PwAAAAAAADw/AAAAAAAAPj8AAAAAAABAPwAAAAAAAEI/AAAAAAAARD8AAAAAAABGPwAAAAAAAEg/AAAAAAAASj8AAAAAAABMPwAAAAAAAE4/AAAAAAAAUD8AAAAAAABSPwAAAAAAAFQ/AAAAAAAAVj8AAAAAAABYPwAAAAAAAFo/AAAAAAAAXD8AAAAAAABePwAAAAAAAGA/AAAAAAAAYj8AAAAAAABkPwAAAAAAAGY/AAAAAAAAaD8AAAAAAABqPwAAAAAAAGw/AAAAAAAAbj8AAAAAAABwPwAAAAAAAHI/AAAAAAAAdD8AAAAAAAB2PwAAAAAAAHg/AAAAAAAAej8AAAAAAAB8PwAAAAAAAH4/AAAAAAAAgD8AAAAAAAAAAMEPfDwAAAA8wQ98PAAAgDzBD3w8AADAPMEPfDwAAAA9wQ98PAAAID3BD3w8AABAPcEPfDwAAGA9wQ98PAAAgD3BD3w8AACQPcEPfDwAAKA9wQ98PAAAsD3BD3w8AADAPcEPfDwAANA9wQ98PAAA4D3BD3w8AADwPcEPfDwAAAA+wQ98PAAACD7BD3w8AAAQPsEPfDwAABg+wQ98PAAAID7BD3w8AAAoPsEPfDwAADA+wQ98PAAAOD7BD3w8AABAPsEPfDwAAEg+wQ98PAAAUD7BD3w8AABYPsEPfDwAAGA+wQ98PAAAaD7BD3w8AABwPsEPfDwAAHg+wQ98PAAAgD7BD3w8AACEPsEPfDwAAIg+wQ98PAAAjD7BD3w8AACQPsEPfDwAAJQ+wQ98PAAAmD7BD3w8AACcPsEPfDwAAKA+wQ98PAAApD7BD3w8AACoPsEPfDwAAKw+wQ98PAAAsD7BD3w8AAC0PsEPfDwAALg+wQ98PAAAvD7BD3w8AADAPsEPfDwAAMQ+wQ98PAAAyD7BD3w8AADMPsEPfDwAANA+wQ98PAAA1D7BD3w8AADYPsEPfDwAANw+wQ98PAAA4D7BD3w8AADkPsEPfDwAAOg+wQ98PAAA7D7BD3w8AADwPsEPfDwAAPQ+wQ98PAAA+D7BD3w8AAD8PsEPfDwAAAA/wQ98PAAAAj/BD3w8AAAEP8EPfDwAAAY/wQ98PAAACD/BD3w8AAAKP8EPfDwAAAw/wQ98PAAADj/BD3w8AAAQP8EPfDwAABI/wQ98PAAAFD/BD3w8AAAWP8EPfDwAABg/wQ98PAAAGj/BD3w8AAAcP8EPfDwAAB4/wQ98PAAAID/BD3w8AAAiP8EPfDwAACQ/wQ98PAAAJj/BD3w8AAAoP8EPfDwAACo/wQ98PAAALD/BD3w8AAAuP8EPfDwAADA/wQ98PAAAMj/BD3w8AAA0P8EPfDwAADY/wQ98PAAAOD/BD3w8AAA6P8EPfDwAADw/wQ98PAAAPj/BD3w8AABAP8EPfDwAAEI/wQ98PAAARD/BD3w8AABGP8EPfDwAAEg/wQ98PAAASj/BD3w8AABMP8EPfDwAAE4/wQ98PAAAUD/BD3w8AABSP8EPfDwAAFQ/wQ98PAAAVj/BD3w8AABYP8EPfDwAAFo/wQ98PAAAXD/BD3w8AABeP8EPfDwAAGA/wQ98PAAAYj/BD3w8AABkP8EPfDwAAGY/wQ98PAAAaD/BD3w8AABqP8EPfDwAAGw/wQ98PAAAbj/BD3w8AABwP8EPfDwAAHI/wQ98PAAAdD/BD3w8AAB2P8EPfDwAAHg/wQ98PAAAej/BD3w8AAB8P8EPfDwAAH4/wQ98PAAAgD/BD3w8AAAAAMEP/DwAAAA8wQ/8PAAAgDzBD/w8AADAPMEP/DwAAAA9wQ/8PAAAID3BD/w8AABAPcEP/DwAAGA9wQ/8PAAAgD3BD/w8AACQPcEP/DwAAKA9wQ/8PAAAsD3BD/w8AADAPcEP/DwAANA9wQ/8PAAA4D3BD/w8AADwPcEP/DwAAAA+wQ/8PAAACD7BD/w8AAAQPsEP/DwAABg+wQ/8PAAAID7BD/w8AAAoPsEP/DwAADA+wQ/8PAAAOD7BD/w8AABAPsEP/DwAAEg+wQ/8PAAAUD7BD/w8AABYPsEP/DwAAGA+wQ/8PAAAaD7BD/w8AABwPsEP/DwAAHg+wQ/8PAAAgD7BD/w8AACEPsEP/DwAAIg+wQ/8PAAAjD7BD/w8AACQPsEP/DwAAJQ+wQ/8PAAAmD7BD/w8AACcPsEP/DwAAKA+wQ/8PAAApD7BD/w8AACoPsEP/DwAAKw+wQ/8PAAAsD7BD/w8AAC0PsEP/DwAALg+wQ/8PAAAvD7BD/w8AADAPsEP/DwAAMQ+wQ/8PAAAyD7BD/w8AADMPsEP/DwAANA+wQ/8PAAA1D7BD/w8AADYPsEP/DwAANw+wQ/8PAAA4D7BD/w8AADkPsEP/DwAAOg+wQ/8PAAA7D7BD/w8AADwPsEP/DwAAPQ+wQ/8PAAA+D7BD/w8AAD8PsEP/DwAAAA/wQ/8PAAAAj/BD/w8AAAEP8EP/DwAAAY/wQ/8PAAACD/BD/w8AAAKP8EP/DwAAAw/wQ/8PAAADj/BD/w8AAAQP8EP/DwAABI/wQ/8PAAAFD/BD/w8AAAWP8EP/DwAABg/wQ/8PAAAGj/BD/w8AAAcP8EP/DwAAB4/wQ/8PAAAID/BD/w8AAAiP8EP/DwAACQ/wQ/8PAAAJj/BD/w8AAAoP8EP/DwAACo/wQ/8PAAALD/BD/w8AAAuP8EP/DwAADA/wQ/8PAAAMj/BD/w8AAA0P8EP/DwAADY/wQ/8PAAAOD/BD/w8AAA6P8EP/DwAADw/wQ/8PAAAPj/BD/w8AABAP8EP/DwAAEI/wQ/8PAAARD/BD/w8AABGP8EP/DwAAEg/wQ/8PAAASj/BD/w8AABMP8EP/DwAAE4/wQ/8PAAAUD/BD/w8AABSP8EP/DwAAFQ/wQ/8PAAAVj/BD/w8AABYP8EP/DwAAFo/wQ/8PAAAXD/BD/w8AABeP8EP/DwAAGA/wQ/8PAAAYj/BD/w8AABkP8EP/DwAAGY/wQ/8PAAAaD/BD/w8AABqP8EP/DwAAGw/wQ/8PAAAbj/BD/w8AABwP8EP/DwAAHI/wQ/8PAAAdD/BD/w8AAB2P8EP/DwAAHg/wQ/8PAAAej/BD/w8AAB8P8EP/DwAAH4/wQ/8PAAAgD/BD/w8AAAAANELPT0AAAA80Qs9PQAAgDzRCz09AADAPNELPT0AAAA90Qs9PQAAID3RCz09AABAPdELPT0AAGA90Qs9PQAAgD3RCz09AACQPdELPT0AAKA90Qs9PQAAsD3RCz09AADAPdELPT0AANA90Qs9PQAA4D3RCz09AADwPdELPT0AAAA+0Qs9PQAACD7RCz09AAAQPtELPT0AABg+0Qs9PQAAID7RCz09AAAoPtELPT0AADA+0Qs9PQAAOD7RCz09AABAPtELPT0AAEg+0Qs9PQAAUD7RCz09AABYPtELPT0AAGA+0Qs9PQAAaD7RCz09AABwPtELPT0AAHg+0Qs9PQAAgD7RCz09AACEPtELPT0AAIg+0Qs9PQAAjD7RCz09AACQPtELPT0AAJQ+0Qs9PQAAmD7RCz09AACcPtELPT0AAKA+0Qs9PQAApD7RCz09AACoPtELPT0AAKw+0Qs9PQAAsD7RCz09AAC0PtELPT0AALg+0Qs9PQAAvD7RCz09AADAPtELPT0AAMQ+0Qs9PQAAyD7RCz09AADMPtELPT0AANA+0Qs9PQAA1D7RCz09AADYPtELPT0AANw+0Qs9PQAA4D7RCz09AADkPtELPT0AAOg+0Qs9PQAA7D7RCz09AADwPtELPT0AAPQ+0Qs9PQAA+D7RCz09AAD8PtELPT0AAAA/0Qs9PQAAAj/RCz09AAAEP9ELPT0AAAY/0Qs9PQAACD/RCz09AAAKP9ELPT0AAAw/0Qs9PQAADj/RCz09AAAQP9ELPT0AABI/0Qs9PQAAFD/RCz09AAAWP9ELPT0AABg/0Qs9PQAAGj/RCz09AAAcP9ELPT0AAB4/0Qs9PQAAID/RCz09AAAiP9ELPT0AACQ/0Qs9PQAAJj/RCz09AAAoP9ELPT0AACo/0Qs9PQAALD/RCz09AAAuP9ELPT0AADA/0Qs9PQAAMj/RCz09AAA0P9ELPT0AADY/0Qs9PQAAOD/RCz09AAA6P9ELPT0AADw/0Qs9PQAAPj/RCz09AABAP9ELPT0AAEI/0Qs9PQAARD/RCz09AABGP9ELPT0AAEg/0Qs9PQAASj/RCz09AABMP9ELPT0AAE4/0Qs9PQAAUD/RCz09AABSP9ELPT0AAFQ/0Qs9PQAAVj/RCz09AABYP9ELPT0AAFo/0Qs9PQAAXD/RCz09AABeP9ELPT0AAGA/0Qs9PQAAYj/RCz09AABkP9ELPT0AAGY/0Qs9PQAAaD/RCz09AABqP9ELPT0AAGw/0Qs9PQAAbj/RCz09AABwP9ELPT0AAHI/0Qs9PQAAdD/RCz09AAB2P9ELPT0AAHg/0Qs9PQAAej/RCz09AAB8P9ELPT0AAH4/0Qs9PQAAgD/RCz09AAAAAMEPfD0AAAA8wQ98PQAAgDzBD3w9AADAPMEPfD0AAAA9wQ98PQAAID3BD3w9AABAPcEPfD0AAGA9wQ98PQAAgD3BD3w9AACQPcEPfD0AAKA9wQ98PQAAsD3BD3w9AADAPcEPfD0AANA9wQ98PQAA4D3BD3w9AADwPcEPfD0AAAA+wQ98PQAACD7BD3w9AAAQPsEPfD0AABg+wQ98PQAAID7BD3w9AAAoPsEPfD0AADA+wQ98PQAAOD7BD3w9AABAPsEPfD0AAEg+wQ98PQAAUD7BD3w9AABYPsEPfD0AAGA+wQ98PQAAaD7BD3w9AABwPsEPfD0AAHg+wQ98PQAAgD7BD3w9AACEPsEPfD0AAIg+wQ98PQAAjD7BD3w9AACQPsEPfD0AAJQ+wQ98PQAAmD7BD3w9AACcPsEPfD0AAKA+wQ98PQAApD7BD3w9AACoPsEPfD0AAKw+wQ98PQAAsD7BD3w9AAC0PsEPfD0AALg+wQ98PQAAvD7BD3w9AADAPsEPfD0AAMQ+wQ98PQAAyD7BD3w9AADMPsEPfD0AANA+wQ98PQAA1D7BD3w9AADYPsEPfD0AANw+wQ98PQAA4D7BD3w9AADkPsEPfD0AAOg+wQ98PQAA7D7BD3w9AADwPsEPfD0AAPQ+wQ98PQAA+D7BD3w9AAD8PsEPfD0AAAA/wQ98PQAAAj/BD3w9AAAEP8EPfD0AAAY/wQ98PQAACD/BD3w9AAAKP8EPfD0AAAw/wQ98PQAADj/BD3w9AAAQP8EPfD0AABI/wQ98PQAAFD/BD3w9AAAWP8EPfD0AABg/wQ98PQAAGj/BD3w9AAAcP8EPfD0AAB4/wQ98PQAAID/BD3w9AAAiP8EPfD0AACQ/wQ98PQAAJj/BD3w9AAAoP8EPfD0AACo/wQ98PQAALD/BD3w9AAAuP8EPfD0AADA/wQ98PQAAMj/BD3w9AAA0P8EPfD0AADY/wQ98PQAAOD/BD3w9AAA6P8EPfD0AADw/wQ98PQAAPj/BD3w9AABAP8EPfD0AAEI/wQ98PQAARD/BD3w9AABGP8EPfD0AAEg/wQ98PQAASj/BD3w9AABMP8EPfD0AAE4/wQ98PQAAUD/BD3w9AABSP8EPfD0AAFQ/wQ98PQAAVj/BD3w9AABYP8EPfD0AAFo/wQ98PQAAXD/BD3w9AABeP8EPfD0AAGA/wQ98PQAAYj/BD3w9AABkP8EPfD0AAGY/wQ98PQAAaD/BD3w9AABqP8EPfD0AAGw/wQ98PQAAbj/BD3w9AABwP8EPfD0AAHI/wQ98PQAAdD/BD3w9AAB2P8EPfD0AAHg/wQ98PQAAej/BD3w9AAB8P8EPfD0AAH4/wQ98PQAAgD/BD3w9AAAAANmJnT0AAAA82YmdPQAAgDzZiZ09AADAPNmJnT0AAAA92YmdPQAAID3ZiZ09AABAPdmJnT0AAGA92YmdPQAAgD3ZiZ09AACQPdmJnT0AAKA92YmdPQAAsD3ZiZ09AADAPdmJnT0AANA92YmdPQAA4D3ZiZ09AADwPdmJnT0AAAA+2YmdPQAACD7ZiZ09AAAQPtmJnT0AABg+2YmdPQAAID7ZiZ09AAAoPtmJnT0AADA+2YmdPQAAOD7ZiZ09AABAPtmJnT0AAEg+2YmdPQAAUD7ZiZ09AABYPtmJnT0AAGA+2YmdPQAAaD7ZiZ09AABwPtmJnT0AAHg+2YmdPQAAgD7ZiZ09AACEPtmJnT0AAIg+2YmdPQAAjD7ZiZ09AACQPtmJnT0AAJQ+2YmdPQAAmD7ZiZ09AACcPtmJnT0AAKA+2YmdPQAApD7ZiZ09AACoPtmJnT0AAKw+2YmdPQAAsD7ZiZ09AAC0PtmJnT0AALg+2YmdPQAAvD7ZiZ09AADAPtmJnT0AAMQ+2YmdPQAAyD7ZiZ09AADMPtmJnT0AANA+2YmdPQAA1D7ZiZ09AADYPtmJnT0AANw+2YmdPQAA4D7ZiZ09AADkPtmJnT0AAOg+2YmdPQAA7D7ZiZ09AADwPtmJnT0AAPQ+2YmdPQAA+D7ZiZ09AAD8PtmJnT0AAAA/2YmdPQAAAj/ZiZ09AAAEP9mJnT0AAAY/2YmdPQAACD/ZiZ09AAAKP9mJnT0AAAw/2YmdPQAADj/ZiZ09AAAQP9mJnT0AABI/2YmdPQAAFD/ZiZ09AAAWP9mJnT0AABg/2YmdPQAAGj/ZiZ09AAAcP9mJnT0AAB4/2YmdPQAAID/ZiZ09AAAiP9mJnT0AACQ/2YmdPQAAJj/ZiZ09AAAoP9mJnT0AACo/2YmdPQAALD/ZiZ09AAAuP9mJnT0AADA/2YmdPQAAMj/ZiZ09AAA0P9mJnT0AADY/2YmdPQAAOD/ZiZ09AAA6P9mJnT0AADw/2YmdPQAAPj/ZiZ09AABAP9mJnT0AAEI/2YmdPQAARD/ZiZ09AABGP9mJnT0AAEg/2YmdPQAASj/ZiZ09AABMP9mJnT0AAE4/2YmdPQAAUD/ZiZ09AABSP9mJnT0AAFQ/2YmdPQAAVj/ZiZ09AABYP9mJnT0AAFo/2YmdPQAAXD/ZiZ09AABeP9mJnT0AAGA/2YmdPQAAYj/ZiZ09AABkP9mJnT0AAGY/2YmdPQAAaD/ZiZ09AABqP9mJnT0AAGw/2YmdPQAAbj/ZiZ09AABwP9mJnT0AAHI/2YmdPQAAdD/ZiZ09AAB2P9mJnT0AAHg/2YmdPQAAej/ZiZ09AAB8P9mJnT0AAH4/2YmdPQAAgD/ZiZ09AAAAANELvT0AAAA80Qu9PQAAgDzRC709AADAPNELvT0AAAA90Qu9PQAAID3RC709AABAPdELvT0AAGA90Qu9PQAAgD3RC709AACQPdELvT0AAKA90Qu9PQAAsD3RC709AADAPdELvT0AANA90Qu9PQAA4D3RC709AADwPdELvT0AAAA+0Qu9PQAACD7RC709AAAQPtELvT0AABg+0Qu9PQAAID7RC709AAAoPtELvT0AADA+0Qu9PQAAOD7RC709AABAPtELvT0AAEg+0Qu9PQAAUD7RC709AABYPtELvT0AAGA+0Qu9PQAAaD7RC709AABwPtELvT0AAHg+0Qu9PQAAgD7RC709AACEPtELvT0AAIg+0Qu9PQAAjD7RC709AACQPtELvT0AAJQ+0Qu9PQAAmD7RC709AACcPtELvT0AAKA+0Qu9PQAApD7RC709AACoPtELvT0AAKw+0Qu9PQAAsD7RC709AAC0PtELvT0AALg+0Qu9PQAAvD7RC709AADAPtELvT0AAMQ+0Qu9PQAAyD7RC709AADMPtELvT0AANA+0Qu9PQAA1D7RC709AADYPtELvT0AANw+0Qu9PQAA4D7RC709AADkPtELvT0AAOg+0Qu9PQAA7D7RC709AADwPtELvT0AAPQ+0Qu9PQAA+D7RC709AAD8PtELvT0AAAA/0Qu9PQAAAj/RC709AAAEP9ELvT0AAAY/0Qu9PQAACD/RC709AAAKP9ELvT0AAAw/0Qu9PQAADj/RC709AAAQP9ELvT0AABI/0Qu9PQAAFD/RC709AAAWP9ELvT0AABg/0Qu9PQAAGj/RC709AAAcP9ELvT0AAB4/0Qu9PQAAID/RC709AAAiP9ELvT0AACQ/0Qu9PQAAJj/RC709AAAoP9ELvT0AACo/0Qu9PQAALD/RC709AAAuP9ELvT0AADA/0Qu9PQAAMj/RC709AAA0P9ELvT0AADY/0Qu9PQAAOD/RC709AAA6P9ELvT0AADw/0Qu9PQAAPj/RC709AABAP9ELvT0AAEI/0Qu9PQAARD/RC709AABGP9ELvT0AAEg/0Qu9PQAASj/RC709AABMP9ELvT0AAE4/0Qu9PQAAUD/RC709AABSP9ELvT0AAFQ/0Qu9PQAAVj/RC709AABYP9ELvT0AAFo/0Qu9PQAAXD/RC709AABeP9ELvT0AAGA/0Qu9PQAAYj/RC709AABkP9ELvT0AAGY/0Qu9PQAAaD/RC709AABqP9ELvT0AAGw/0Qu9PQAAbj/RC709AABwP9ELvT0AAHI/0Qu9PQAAdD/RC709AAB2P9ELvT0AAHg/0Qu9PQAAej/RC709AAB8P9ELvT0AAH4/0Qu9PQAAgD/RC709AAAAAMmN3D0AAAA8yY3cPQAAgDzJjdw9AADAPMmN3D0AAAA9yY3cPQAAID3Jjdw9AABAPcmN3D0AAGA9yY3cPQAAgD3Jjdw9AACQPcmN3D0AAKA9yY3cPQAAsD3Jjdw9AADAPcmN3D0AANA9yY3cPQAA4D3Jjdw9AADwPcmN3D0AAAA+yY3cPQAACD7Jjdw9AAAQPsmN3D0AABg+yY3cPQAAID7Jjdw9AAAoPsmN3D0AADA+yY3cPQAAOD7Jjdw9AABAPsmN3D0AAEg+yY3cPQAAUD7Jjdw9AABYPsmN3D0AAGA+yY3cPQAAaD7Jjdw9AABwPsmN3D0AAHg+yY3cPQAAgD7Jjdw9AACEPsmN3D0AAIg+yY3cPQAAjD7Jjdw9AACQPsmN3D0AAJQ+yY3cPQAAmD7Jjdw9AACcPsmN3D0AAKA+yY3cPQAApD7Jjdw9AACoPsmN3D0AAKw+yY3cPQAAsD7Jjdw9AAC0PsmN3D0AALg+yY3cPQAAvD7Jjdw9AADAPsmN3D0AAMQ+yY3cPQAAyD7Jjdw9AADMPsmN3D0AANA+yY3cPQAA1D7Jjdw9AADYPsmN3D0AANw+yY3cPQAA4D7Jjdw9AADkPsmN3D0AAOg+yY3cPQAA7D7Jjdw9AADwPsmN3D0AAPQ+yY3cPQAA+D7Jjdw9AAD8PsmN3D0AAAA/yY3cPQAAAj/Jjdw9AAAEP8mN3D0AAAY/yY3cPQAACD/Jjdw9AAAKP8mN3D0AAAw/yY3cPQAADj/Jjdw9AAAQP8mN3D0AABI/yY3cPQAAFD/Jjdw9AAAWP8mN3D0AABg/yY3cPQAAGj/Jjdw9AAAcP8mN3D0AAB4/yY3cPQAAID/Jjdw9AAAiP8mN3D0AACQ/yY3cPQAAJj/Jjdw9AAAoP8mN3D0AACo/yY3cPQAALD/Jjdw9AAAuP8mN3D0AADA/yY3cPQAAMj/Jjdw9AAA0P8mN3D0AADY/yY3cPQAAOD/Jjdw9AAA6P8mN3D0AADw/yY3cPQAAPj/Jjdw9AABAP8mN3D0AAEI/yY3cPQAARD/Jjdw9AABGP8mN3D0AAEg/yY3cPQAASj/Jjdw9AABMP8mN3D0AAE4/yY3cPQAAUD/Jjdw9AABSP8mN3D0AAFQ/yY3cPQAAVj/Jjdw9AABYP8mN3D0AAFo/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AADwPtmJHT4AAPQ+2YkdPgAA+D7ZiR0+AAD8PtmJHT4AAAA/2YkdPgAAAj/ZiR0+AAAEP9mJHT4AAAY/2YkdPgAACD/ZiR0+AAAKP9mJHT4AAAw/2YkdPgAADj/ZiR0+AAAQP9mJHT4AABI/2YkdPgAAFD/ZiR0+AAAWP9mJHT4AABg/2YkdPgAAGj/ZiR0+AAAcP9mJHT4AAB4/2YkdPgAAID/ZiR0+AAAiP9mJHT4AACQ/2YkdPgAAJj/ZiR0+AAAoP9mJHT4AACo/2YkdPgAALD/ZiR0+AAAuP9mJHT4AADA/2YkdPgAAMj/ZiR0+AAA0P9mJHT4AADY/2YkdPgAAOD/ZiR0+AAA6P9mJHT4AADw/2YkdPgAAPj/ZiR0+AABAP9mJHT4AAEI/2YkdPgAARD/ZiR0+AABGP9mJHT4AAEg/2YkdPgAASj/ZiR0+AABMP9mJHT4AAE4/2YkdPgAAUD/ZiR0+AABSP9mJHT4AAFQ/2YkdPgAAVj/ZiR0+AABYP9mJHT4AAFo/2YkdPgAAXD/ZiR0+AABeP9mJHT4AAGA/2YkdPgAAYj/ZiR0+AABkP9mJHT4AAGY/2YkdPgAAaD/ZiR0+AABqP9mJHT4AAGw/2YkdPgAAbj/ZiR0+AABwP9mJHT4AAHI/2YkdPgAAdD/ZiR0+AAB2P9mJHT4AAHg/2YkdPgAAej/ZiR0+AAB8P9mJHT4AAH4/2YkdPgAAgD/ZiR0+AAAAANVKLT4AAAA81UotPgAAgDzVSi0+AADAPNVKLT4AAAA91UotPgAAID3VSi0+AABAPdVKLT4AAGA91UotPgAAgD3VSi0+AACQPdVKLT4AAKA91UotPgAAsD3VSi0+AADAPdVKLT4AANA91UotPgAA4D3VSi0+AADwPdVKLT4AAAA+1UotPgAACD7VSi0+AAAQPtVKLT4AABg+1UotPgAAID7VSi0+AAAoPtVKLT4AADA+1UotPgAAOD7VSi0+AABAPtVKLT4AAEg+1UotPgAAUD7VSi0+AABYPtVKLT4AAGA+1UotPgAAaD7VSi0+AABwPtVKLT4AAHg+1UotPgAAgD7VSi0+AACEPtVKLT4AAIg+1UotPgAAjD7VSi0+AACQPtVKLT4AAJQ+1UotPgAAmD7VSi0+AACcPtVKLT4AAKA+1UotPgAApD7VSi0+AACoPtVKLT4AAKw+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AAB2P83MTD4AAHg/zcxMPgAAej/NzEw+AAB8P83MTD4AAH4/zcxMPgAAgD/NzEw+AAAAAMmNXD4AAAA8yY1cPgAAgDzJjVw+AADAPMmNXD4AAAA9yY1cPgAAID3JjVw+AABAPcmNXD4AAGA9yY1cPgAAgD3JjVw+AACQPcmNXD4AAKA9yY1cPgAAsD3JjVw+AADAPcmNXD4AANA9yY1cPgAA4D3JjVw+AADwPcmNXD4AAAA+yY1cPgAACD7JjVw+AAAQPsmNXD4AABg+yY1cPgAAID7JjVw+AAAoPsmNXD4AADA+yY1cPgAAOD7JjVw+AABAPsmNXD4AAEg+yY1cPgAAUD7JjVw+AABYPsmNXD4AAGA+yY1cPgAAaD7JjVw+AABwPsmNXD4AAHg+yY1cPgAAgD7JjVw+AACEPsmNXD4AAIg+yY1cPgAAjD7JjVw+AACQPsmNXD4AAJQ+yY1cPgAAmD7JjVw+AACcPsmNXD4AAKA+yY1cPgAApD7JjVw+AACoPsmNXD4AAKw+yY1cPgAAsD7JjVw+AAC0PsmNXD4AALg+yY1cPgAAvD7JjVw+AADAPsmNXD4AAMQ+yY1cPgAAyD7JjVw+AADMPsmNXD4AANA+yY1cPgAA1D7JjVw+AADYPsmNXD4AANw+yY1cPgAA4D7JjVw+AADkPsmNXD4AAOg+yY1cPgAA7D7JjVw+AADwPsmNXD4AAPQ+yY1cPgAA+D7JjVw+AAD8PsmNXD4AAAA/yY1cPgAAAj/JjVw+AAAEP8mNXD4AAAY/yY1cPgAACD/JjVw+AAAKP8mNXD4AAAw/yY1cPgAADj/JjVw+AAAQP8mNXD4AABI/yY1cPgAAFD/JjVw+AAAWP8mNXD4AABg/yY1cPgAAGj/JjVw+AAAcP8mNXD4AAB4/yY1cPgAAID/JjVw+AAAiP8mNXD4AACQ/yY1cPgAAJj/JjVw+AAAoP8mNXD4AACo/yY1cPgAALD/JjVw+AAAuP8mNXD4AADA/yY1cPgAAMj/JjVw+AAA0P8mNXD4AADY/yY1cPgAAOD/JjVw+AAA6P8mNXD4AADw/yY1cPgAAPj/JjVw+AABAP8mNXD4AAEI/yY1cPgAARD/JjVw+AABGP8mNXD4AAEg/yY1cPgAASj/JjVw+AABMP8mNXD4AAE4/yY1cPgAAUD/JjVw+AABSP8mNXD4AAFQ/yY1cPgAAVj/JjVw+AABYP8mNXD4AAFo/yY1cPgAAXD/JjVw+AABeP8mNXD4AAGA/yY1cPgAAYj/JjVw+AABkP8mNXD4AAGY/yY1cPgAAaD/JjVw+AABqP8mNXD4AAGw/yY1cPgAAbj/JjVw+AABwP8mNXD4AAHI/yY1cPgAAdD/JjVw+AAB2P8mNXD4AAHg/yY1cPgAAej/JjVw+AAB8P8mNXD4AAH4/yY1cPgAAgD/JjVw+AAAAAMVObD4AAAA8xU5sPgAAgDzFTmw+AADAPMVObD4AAAA9xU5sPgAAID3FTmw+AABAPcVObD4AAGA9xU5sPgAAgD3FTmw+AACQPcVObD4AAKA9xU5sPgAAsD3FTmw+AADAPcVObD4AANA9xU5sPgAA4D3FTmw+AADwPcVObD4AAAA+xU5sPgAACD7FTmw+AAAQPsVObD4AABg+xU5sPgAAID7FTmw+AAAoPsVObD4AADA+xU5sPgAAOD7FTmw+AABAPsVObD4AAEg+xU5sPgAAUD7FTmw+AABYPsVObD4AAGA+xU5sPgAAaD7FTmw+AABwPsVObD4AAHg+xU5sPgAAgD7FTmw+AACEPsVObD4AAIg+xU5sPgAAjD7FTmw+AACQPsVObD4AAJQ+xU5sPgAAmD7FTmw+AACcPsVObD4AAKA+xU5sPgAApD7FTmw+AACoPsVObD4AAKw+xU5sPgAAsD7FTmw+AAC0PsVObD4AALg+xU5sPgAAvD7FTmw+AADAPsVObD4AAMQ+xU5sPgAAyD7FTmw+AADMPsVObD4AANA+xU5sPgAA1D7FTmw+AADYPsVObD4AANw+xU5sPgAA4D7FTmw+AADkPsVObD4AAOg+xU5sPgAA7D7FTmw+AADwPsVObD4AAPQ+xU5sPgAA+D7FTmw+AAD8PsVObD4AAAA/xU5sPgAAAj/FTmw+AAAEP8VObD4AAAY/xU5sPgAACD/FTmw+AAAKP8VObD4AAAw/xU5sPgAADj/FTmw+AAAQP8VObD4AABI/xU5sPgAAFD/FTmw+AAAWP8VObD4AABg/xU5sPgAAGj/FTmw+AAAcP8VObD4AAB4/xU5sPgAAID/FTmw+AAAiP8VObD4AACQ/xU5sPgAAJj/FTmw+AAAoP8VObD4AACo/xU5sPgAALD/FTmw+AAAuP8VObD4AADA/xU5sPgAAMj/FTmw+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AABAPluplT4AAEg+W6mVPgAAUD5bqZU+AABYPluplT4AAGA+W6mVPgAAaD5bqZU+AABwPluplT4AAHg+W6mVPgAAgD5bqZU+AACEPluplT4AAIg+W6mVPgAAjD5bqZU+AACQPluplT4AAJQ+W6mVPgAAmD5bqZU+AACcPluplT4AAKA+W6mVPgAApD5bqZU+AACoPluplT4AAKw+W6mVPgAAsD5bqZU+AAC0PluplT4AALg+W6mVPgAAvD5bqZU+AADAPluplT4AAMQ+W6mVPgAAyD5bqZU+AADMPluplT4AANA+W6mVPgAA1D5bqZU+AADYPluplT4AANw+W6mVPgAA4D5bqZU+AADkPluplT4AAOg+W6mVPgAA7D5bqZU+AADwPluplT4AAPQ+W6mVPgAA+D5bqZU+AAD8PluplT4AAAA/W6mVPgAAAj9bqZU+AAAEP1uplT4AAAY/W6mVPgAACD9bqZU+AAAKP1uplT4AAAw/W6mVPgAADj9bqZU+AAAQP1uplT4AABI/W6mVPgAAFD9bqZU+AAAWP1uplT4AABg/W6mVPgAAGj9bqZU+AAAcP1uplT4AAB4/W6mVPgAAID9bqZU+AAAiP1uplT4AACQ/W6mVPgAAJj9bqZU+AAAoP1uplT4AACo/W6mVPgAALD9bqZU+AAAuP1uplT4AADA/W6mVPgAAMj9bqZU+AAA0P1uplT4AADY/W6mVPgAAOD9bqZU+AAA6P1uplT4AADw/W6mVPgAAPj9bqZU+AABAP1uplT4AAEI/W6mVPgAARD9bqZU+AABGP1uplT4AAEg/W6mVPgAASj9bqZU+AABMP1uplT4AAE4/W6mVPgAAUD9bqZU+AABSP1uplT4AAFQ/W6mVPgAAVj9bqZU+AABYP1uplT4AAFo/W6mVPgAAXD9bqZU+AABeP1uplT4AAGA/W6mVPgAAYj9bqZU+AABkP1uplT4AAGY/W6mVPgAAaD9bqZU+AABqP1uplT4AAGw/W6mVPgAAbj9bqZU+AABwP1uplT4AAHI/W6mVPgAAdD9bqZU+AAB2P1uplT4AAHg/W6mVPgAAej9bqZU+AAB8P1uplT4AAH4/W6mVPgAAgD9bqZU+AAAAANmJnT4AAAA82YmdPgAAgDzZiZ0+AADAPNmJnT4AAAA92YmdPgAAID3ZiZ0+AABAPdmJnT4AAGA92YmdPgAAgD3ZiZ0+AACQPdmJnT4AAKA92YmdPgAAsD3ZiZ0+AADAPdmJnT4AANA92YmdPgAA4D3ZiZ0+AADwPdmJnT4AAAA+2YmdPgAACD7ZiZ0+AAAQPtmJnT4AABg+2YmdPgAAID7ZiZ0+AAAoPtmJnT4AADA+2YmdPgAAOD7ZiZ0+AABAPtmJnT4AAEg+2YmdPgAAUD7ZiZ0+AABYPtmJnT4AAGA+2YmdPgAAaD7ZiZ0+AABwPtmJnT4AAHg+2YmdPgAAgD7ZiZ0+AACEPtmJnT4AAIg+2YmdPgAAjD7ZiZ0+AACQPtmJnT4AAJQ+2YmdPgAAmD7ZiZ0+AACcPtmJnT4AAKA+2YmdPgAApD7ZiZ0+AACoPtmJnT4AAKw+2YmdPgAAsD7ZiZ0+AAC0PtmJnT4AALg+2YmdPgAAvD7ZiZ0+AADAPtmJnT4AAMQ+2YmdPgAAyD7ZiZ0+AADMPtmJnT4AANA+2YmdPgAA1D7ZiZ0+AADYPtmJnT4AANw+2YmdPgAA4D7ZiZ0+AADkPtmJnT4AAOg+2YmdPgAA7D7ZiZ0+AADwPtmJnT4AAPQ+2YmdPgAA+D7ZiZ0+AAD8PtmJnT4AAAA/2YmdPgAAAj/ZiZ0+AAAEP9mJnT4AAAY/2YmdPgAACD/ZiZ0+AAAKP9mJnT4AAAw/2YmdPgAADj/ZiZ0+AAAQP9mJnT4AABI/2YmdPgAAFD/ZiZ0+AAAWP9mJnT4AABg/2YmdPgAAGj/ZiZ0+AAAcP9mJnT4AAB4/2YmdPgAAID/ZiZ0+AAAiP9mJnT4AACQ/2YmdPgAAJj/ZiZ0+AAAoP9mJnT4AACo/2YmdPgAALD/ZiZ0+AAAuP9mJnT4AADA/2YmdPgAAMj/ZiZ0+AAA0P9mJnT4AADY/2YmdPgAAOD/ZiZ0+AAA6P9mJnT4AADw/2YmdPgAAPj/ZiZ0+AABAP9mJnT4AAEI/2YmdPgAARD/ZiZ0+AABGP9mJnT4AAEg/2YmdPgAASj/ZiZ0+AABMP9mJnT4AAE4/2YmdPgAAUD/ZiZ0+AABSP9mJnT4AAFQ/2YmdPgAAVj/ZiZ0+AABYP9mJnT4AAFo/2YmdPgAAXD/ZiZ0+AABeP9mJnT4AAGA/2YmdPgAAYj/ZiZ0+AABkP9mJnT4AAGY/2YmdPgAAaD/ZiZ0+AABqP9mJnT4AAGw/2YmdPgAAbj/ZiZ0+AABwP9mJnT4AAHI/2YmdPgAAdD/ZiZ0+AAB2P9mJnT4AAHg/2YmdPgAAej/ZiZ0+AAB8P9mJnT4AAH4/2YmdPgAAgD/ZiZ0+AAAAAFdqpT4AAAA8V2qlPgAAgDxXaqU+AADAPFdqpT4AAAA9V2qlPgAAID1XaqU+AABAPVdqpT4AAGA9V2qlPgAAgD1XaqU+AACQPVdqpT4AAKA9V2qlPgAAsD1XaqU+AADAPVdqpT4AANA9V2qlPgAA4D1XaqU+AADwPVdqpT4AAAA+V2qlPgAACD5XaqU+AAAQPldqpT4AABg+V2qlPgAAID5XaqU+AAAoPldqpT4AADA+V2qlPgAAOD5XaqU+AABAPldqpT4AAEg+V2qlPgAAUD5XaqU+AABYPldqpT4AAGA+V2qlPgAAaD5XaqU+AABwPldqpT4AAHg+V2qlPgAAgD5XaqU+AACEPldqpT4AAIg+V2qlPgAAjD5XaqU+AACQPldqpT4AAJQ+V2qlPgAAmD5XaqU+AACcPldqpT4AAKA+V2qlPgAApD5XaqU+AACoPldqpT4AAKw+V2qlPgAAsD5XaqU+AAC0PldqpT4AALg+V2qlPgAAvD5XaqU+AADAPldqpT4AAMQ+V2qlPgAAyD5XaqU+AADMPldqpT4AANA+V2qlPgAA1D5XaqU+AADYPldqpT4AANw+V2qlPgAA4D5XaqU+AADkPldqpT4AAOg+V2qlPgAA7D5XaqU+AADwPldqpT4AAPQ+V2qlPgAA+D5XaqU+AAD8PldqpT4AAAA/V2qlPgAAAj9XaqU+AAAEP1dqpT4AAAY/V2qlPgAACD9XaqU+AAAKP1dqpT4AAAw/V2qlPgAADj9XaqU+AAAQP1dqpT4AABI/V2qlPgAAFD9XaqU+AAAWP1dqpT4AABg/V2qlPgAAGj9XaqU+AAAcP1dqpT4AAB4/V2qlPgAAID9XaqU+AAAiP1dqpT4AACQ/V2qlPgAAJj9XaqU+AAAoP1dqpT4AACo/V2qlPgAALD9XaqU+AAAuP1dqpT4AADA/V2qlPgAAMj9XaqU+AAA0P1dqpT4AADY/V2qlPgAAOD9XaqU+AAA6P1dqpT4AADw/V2qlPgAAPj9XaqU+AABAP1dqpT4AAEI/V2qlPgAARD9XaqU+AABGP1dqpT4AAEg/V2qlPgAASj9XaqU+AABMP1dqpT4AAE4/V2qlPgAAUD9XaqU+AABSP1dqpT4AAFQ/V2qlPgAAVj9XaqU+AABYP1dqpT4AAFo/V2qlPgAAXD9XaqU+AABeP1dqpT4AAGA/V2qlPgAAYj9XaqU+AABkP1dqpT4AAGY/V2qlPgAAaD9XaqU+AABqP1dqpT4AAGw/V2qlPgAAbj9XaqU+AABwP1dqpT4AAHI/V2qlPgAAdD9XaqU+AAB2P1dqpT4AAHg/V2qlPgAAej9XaqU+AAB8P1dqpT4AAH4/V2qlPgAAgD9XaqU+AAAAANVKrT4AAAA81UqtPgAAgDzVSq0+AADAPNVKrT4AAAA91UqtPgAAID3VSq0+AABAPdVKrT4AAGA91UqtPgAAgD3VSq0+AACQPdVKrT4AAKA91UqtPgAAsD3VSq0+AADAPdVKrT4AANA91UqtPgAA4D3VSq0+AADwPdVKrT4AAAA+1UqtPgAACD7VSq0+AAAQPtVKrT4AABg+1UqtPgAAID7VSq0+AAAoPtVKrT4AADA+1UqtPgAAOD7VSq0+AABAPtVKrT4AAEg+1UqtPgAAUD7VSq0+AABYPtVKrT4AAGA+1UqtPgAAaD7VSq0+AABwPtVKrT4AAHg+1UqtPgAAgD7VSq0+AACEPtVKrT4AAIg+1UqtPgAAjD7VSq0+AACQPtVKrT4AAJQ+1UqtPgAAmD7VSq0+AACcPtVKrT4AAKA+1UqtPgAApD7VSq0+AACoPtVKrT4AAKw+1UqtPgAAsD7VSq0+AAC0PtVKrT4AALg+1UqtPgAAvD7VSq0+AADAPtVKrT4AAMQ+1UqtPgAAyD7VSq0+AADMPtVKrT4AANA+1UqtPgAA1D7VSq0+AADYPtVKrT4AANw+1UqtPgAA4D7VSq0+AADkPtVKrT4AAOg+1UqtPgAA7D7VSq0+AADwPtVKrT4AAPQ+1UqtPgAA+D7VSq0+AAD8PtVKrT4AAAA/1UqtPgAAAj/VSq0+AAAEP9VKrT4AAAY/1UqtPgAACD/VSq0+AAAKP9VKrT4AAAw/1UqtPgAADj/VSq0+AAAQP9VKrT4AABI/1UqtPgAAFD/VSq0+AAAWP9VKrT4AABg/1UqtPgAAGj/VSq0+AAAcP9VKrT4AAB4/1UqtPgAAID/VSq0+AAAiP9VKrT4AACQ/1UqtPgAAJj/VSq0+AAAoP9VKrT4AACo/1UqtPgAALD/VSq0+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AADwPdmJHT8AAAA+2YkdPwAACD7ZiR0/AAAQPtmJHT8AABg+2YkdPwAAID7ZiR0/AAAoPtmJHT8AADA+2YkdPwAAOD7ZiR0/AABAPtmJHT8AAEg+2YkdPwAAUD7ZiR0/AABYPtmJHT8AAGA+2YkdPwAAaD7ZiR0/AABwPtmJHT8AAHg+2YkdPwAAgD7ZiR0/AACEPtmJHT8AAIg+2YkdPwAAjD7ZiR0/AACQPtmJHT8AAJQ+2YkdPwAAmD7ZiR0/AACcPtmJHT8AAKA+2YkdPwAApD7ZiR0/AACoPtmJHT8AAKw+2YkdPwAAsD7ZiR0/AAC0PtmJHT8AALg+2YkdPwAAvD7ZiR0/AADAPtmJHT8AAMQ+2YkdPwAAyD7ZiR0/AADMPtmJHT8AANA+2YkdPwAA1D7ZiR0/AADYPtmJHT8AANw+2YkdPwAA4D7ZiR0/AADkPtmJHT8AAOg+2YkdPwAA7D7ZiR0/AADwPtmJHT8AAPQ+2YkdPwAA+D7ZiR0/AAD8PtmJHT8AAAA/2YkdPwAAAj/ZiR0/AAAEP9mJHT8AAAY/2YkdPwAACD/ZiR0/AAAKP9mJHT8AAAw/2YkdPwAADj/ZiR0/AAAQP9mJHT8AABI/2YkdPwAAFD/ZiR0/AAAWP9mJHT8AABg/2YkdPwAAGj/ZiR0/AAAcP9mJHT8AAB4/2YkdPwAAID/ZiR0/AAAiP9mJHT8AACQ/2YkdPwAAJj/ZiR0/AAAoP9mJHT8AACo/2YkdPwAALD/ZiR0/AAAuP9mJHT8AADA/2YkdPwAAMj/ZiR0/AAA0P9mJHT8AADY/2YkdPwAAOD/ZiR0/AAA6P9mJHT8AADw/2YkdPwAAPj/ZiR0/AABAP9mJHT8AAEI/2YkdPwAARD/ZiR0/AABGP9mJHT8AAEg/2YkdPwAASj/ZiR0/AABMP9mJHT8AAE4/2YkdPwAAUD/ZiR0/AABSP9mJHT8AAFQ/2YkdPwAAVj/ZiR0/AABYP9mJHT8AAFo/2YkdPwAAXD/ZiR0/AABeP9mJHT8AAGA/2YkdPwAAYj/ZiR0/AABkP9mJHT8AAGY/2YkdPwAAaD/ZiR0/AABqP9mJHT8AAGw/2YkdPwAAbj/ZiR0/AABwP9mJHT8AAHI/2YkdPwAAdD/ZiR0/AAB2P9mJHT8AAHg/2YkdPwAAej/ZiR0/AAB8P9mJHT8AAH4/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V2olPwAAPj9XaiU/AABAP1dqJT8AAEI/V2olPwAARD9XaiU/AABGP1dqJT8AAEg/V2olPwAASj9XaiU/AABMP1dqJT8AAE4/V2olPwAAUD9XaiU/AABSP1dqJT8AAFQ/V2olPwAAVj9XaiU/AABYP1dqJT8AAFo/V2olPwAAXD9XaiU/AABeP1dqJT8AAGA/V2olPwAAYj9XaiU/AABkP1dqJT8AAGY/V2olPwAAaD9XaiU/AABqP1dqJT8AAGw/V2olPwAAbj9XaiU/AABwP1dqJT8AAHI/V2olPwAAdD9XaiU/AAB2P1dqJT8AAHg/V2olPwAAej9XaiU/AAB8P1dqJT8AAH4/V2olPwAAgD9XaiU/AAAAAJZaKT8AAAA8llopPwAAgDyWWik/AADAPJZaKT8AAAA9llopPwAAID2WWik/AABAPZZaKT8AAGA9llopPwAAgD2WWik/AACQPZZaKT8AAKA9llopPwAAsD2WWik/AADAPZZaKT8AANA9llopPwAA4D2WWik/AADwPZZaKT8AAAA+llopPwAACD6WWik/AAAQPpZaKT8AABg+llopPwAAID6WWik/AAAoPpZaKT8AADA+llopPwAAOD6WWik/AABAPpZaKT8AAEg+llopPwAAUD6WWik/AABYPpZaKT8AAGA+llopPwAAaD6WWik/AABwPpZaKT8AAHg+llopPwAAgD6WWik/AACEPpZaKT8AAIg+llopPwAAjD6WWik/AACQPpZaKT8AAJQ+llopPwAAmD6WWik/AACcPpZaKT8AAKA+llopPwAApD6WWik/AACoPpZaKT8AAKw+llopPwAAsD6WWik/AAC0PpZaKT8AALg+llopPwAAvD6WWik/AADAPpZaKT8AAMQ+llopPwAAyD6WWik/AADMPpZaKT8AANA+llopPwAA1D6WWik/AADYPpZaKT8AANw+llopPwAA4D6WWik/AADkPpZaKT8AAOg+llopPwAA7D6WWik/AADwPpZaKT8AAPQ+llopPwAA+D6WWik/AAD8PpZaKT8AAAA/llopPwAAAj+WWik/AAAEP5ZaKT8AAAY/llopPwAACD+WWik/AAAKP5ZaKT8AAAw/llopPwAADj+WWik/AAAQP5ZaKT8AABI/llopPwAAFD+WWik/AAAWP5ZaKT8AABg/llopPwAAGj+WWik/AAAcP5ZaKT8AAB4/llopPwAAID+WWik/AAAiP5ZaKT8AACQ/llopPwAAJj+WWik/AAAoP5ZaKT8AACo/llopPwAALD+WWik/AAAuP5ZaKT8AADA/llopPwAAMj+WWik/AAA0P5ZaKT8AADY/llopPwAAOD+WWik/AAA6P5ZaKT8AADw/llopPwAAPj+WWik/AABAP5ZaKT8AAEI/llopPwAARD+WWik/AABGP5ZaKT8AAEg/llopPwAASj+WWik/AABMP5ZaKT8AAE4/llopPwAAUD+WWik/AABSP5ZaKT8AAFQ/llopPwAAVj+WWik/AABYP5ZaKT8AAFo/llopPwAAXD+WWik/AABeP5ZaKT8AAGA/llopPwAAYj+WWik/AABkP5ZaKT8AAGY/llopPwAAaD+WWik/AABqP5ZaKT8AAGw/llopPwAAbj+WWik/AABwP5ZaKT8AAHI/llopPwAAdD+WWik/AAB2P5ZaKT8AAHg/llopPwAAej+WWik/AAB8P5ZaKT8AAH4/llopPwAAgD+WWik/AAAAANVKLT8AAAA81UotPwAAgDzVSi0/AADAPNVKLT8AAAA91UotPwAAID3VSi0/AABAPdVKLT8AAGA91UotPwAAgD3VSi0/AACQPdVKLT8AAKA91UotPwAAsD3VSi0/AADAPdVKLT8AANA91UotPwAA4D3VSi0/AADwPdVKLT8AAAA+1UotPwAACD7VSi0/AAAQPtVKLT8AABg+1UotPwAAID7VSi0/AAAoPtVKLT8AADA+1UotPwAAOD7VSi0/AABAPtVKLT8AAEg+1UotPwAAUD7VSi0/AABYPtVKLT8AAGA+1UotPwAAaD7VSi0/AABwPtVKLT8AAHg+1UotPwAAgD7VSi0/AACEPtVKLT8AAIg+1UotPwAAjD7VSi0/AACQPtVKLT8AAJQ+1UotPwAAmD7VSi0/AACcPtVKLT8AAKA+1UotPwAApD7VSi0/AACoPtVKLT8AAKw+1UotPwAAsD7VSi0/AAC0PtVKLT8AALg+1UotPwAAvD7VSi0/AADAPtVKLT8AAMQ+1UotPwAAyD7VSi0/AADMPtVKLT8AANA+1UotPwAA1D7VSi0/AADYPtVKLT8AANw+1UotPwAA4D7VSi0/AADkPtVKLT8AAOg+1UotPwAA7D7VSi0/AADwPtVKLT8AAPQ+1UotPwAA+D7VSi0/AAD8PtVKLT8AAAA/1UotPwAAAj/VSi0/AAAEP9VKLT8AAAY/1UotPwAACD/VSi0/AAAKP9VKLT8AAAw/1UotPwAADj/VSi0/AAAQP9VKLT8AABI/1UotPwAAFD/VSi0/AAAWP9VKLT8AABg/1UotPwAAGj/VSi0/AAAcP9VKLT8AAB4/1UotPwAAID/VSi0/AAAiP9VKLT8AACQ/1UotPwAAJj/VSi0/AAAoP9VKLT8AACo/1UotPwAALD/VSi0/AAAuP9VKLT8AADA/1UotPwAAMj/VSi0/AAA0P9VKLT8AADY/1UotPwAAOD/VSi0/AAA6P9VKLT8AADw/1UotPwAAPj/VSi0/AABAP9VKLT8AAEI/1UotPwAARD/VSi0/AABGP9VKLT8AAEg/1UotPwAASj/VSi0/AABMP9VKLT8AAE4/1UotPwAAUD/VSi0/AABSP9VKLT8AAFQ/1UotPwAAVj/VSi0/AABYP9VKLT8AAFo/1UotPwAAXD/VSi0/AABeP9VKLT8AAGA/1UotPwAAYj/VSi0/AABkP9VKLT8AAGY/1UotPwAAaD/VSi0/AABqP9VKLT8AAGw/1UotPwAAbj/VSi0/AABwP9VKLT8AAHI/1UotPwAAdD/VSi0/AAB2P9VKLT8AAHg/1UotPwAAej/VSi0/AAB8P9VKLT8AAH4/1UotPwAAgD/VSi0/AAAAABQ7MT8AAAA8FDsxPwAAgDwUOzE/AADAPBQ7MT8AAAA9FDsxPwAAID0UOzE/AABAPRQ7MT8AAGA9FDsxPwAAgD0UOzE/AACQPRQ7MT8AAKA9FDsxPwAAsD0UOzE/AADAPRQ7MT8AANA9FDsxPwAA4D0UOzE/AADwPRQ7MT8AAAA+FDsxPwAACD4UOzE/AAAQPhQ7MT8AABg+FDsxPwAAID4UOzE/AAAoPhQ7MT8AADA+FDsxPwAAOD4UOzE/AABAPhQ7MT8AAEg+FDsxPwAAUD4UOzE/AABYPhQ7MT8AAGA+FDsxPwAAaD4UOzE/AABwPhQ7MT8AAHg+FDsxPwAAgD4UOzE/AACEPhQ7MT8AAIg+FDsxPwAAjD4UOzE/AACQPhQ7MT8AAJQ+FDsxPwAAmD4UOzE/AACcPhQ7MT8AAKA+FDsxPwAApD4UOzE/AACoPhQ7MT8AAKw+FDsxPwAAsD4UOzE/AAC0PhQ7MT8AALg+FDsxPwAAvD4UOzE/AADAPhQ7MT8AAMQ+FDsxPwAAyD4UOzE/AADMPhQ7MT8AANA+FDsxPwAA1D4UOzE/AADYPhQ7MT8AANw+FDsxPwAA4D4UOzE/AADkPhQ7MT8AAOg+FDsxPwAA7D4UOzE/AADwPhQ7MT8AAPQ+FDsxPwAA+D4UOzE/AAD8PhQ7MT8AAAA/FDsxPwAAAj8UOzE/AAAEPxQ7MT8AAAY/FDsxPwAACD8UOzE/AAAKPxQ7MT8AAAw/FDsxPwAADj8UOzE/AAAQPxQ7MT8AABI/FDsxPwAAFD8UOzE/AAAWPxQ7MT8AABg/FDsxPwAAGj8UOzE/AAAcPxQ7MT8AAB4/FDsxPwAAID8UOzE/AAAiPxQ7MT8AACQ/FDsxPwAAJj8UOzE/AAAoPxQ7MT8AACo/FDsxPwAALD8UOzE/AAAuPxQ7MT8AADA/FDsxPwAAMj8UOzE/AAA0PxQ7MT8AADY/FDsxPwAAOD8UOzE/AAA6PxQ7MT8AADw/FDsxPwAAPj8UOzE/AABAPxQ7MT8AAEI/FDsxPwAARD8UOzE/AABGPxQ7MT8AAEg/FDsxPwAASj8UOzE/AABMPxQ7MT8AAE4/FDsxPwAAUD8UOzE/AABSPxQ7MT8AAFQ/FDsxPwAAVj8UOzE/AABYPxQ7MT8AAFo/FDsxPwAAXD8UOzE/AABePxQ7MT8AAGA/FDsxPwAAYj8UOzE/AABkPxQ7MT8AAGY/FDsxPwAAaD8UOzE/AABqPxQ7MT8AAGw/FDsxPwAAbj8UOzE/AABwPxQ7MT8AAHI/FDsxPwAAdD8UOzE/AAB2PxQ7MT8AAHg/FDsxPwAAej8UOzE/AAB8PxQ7MT8AAH4/FDsxPwAAgD8UOzE/AAAAAFMrNT8AAAA8Uys1PwAAgDxTKzU/AADAPFMrNT8AAAA9Uys1PwAAID1TKzU/AABAPVMrNT8AAGA9Uys1PwAAgD1TKzU/AACQPVMrNT8AAKA9Uys1PwAAsD1TKzU/AADAPVMrNT8AANA9Uys1PwAA4D1TKzU/AADwPVMrNT8AAAA+Uys1PwAACD5TKzU/AAAQPlMrNT8AABg+Uys1PwAAID5TKzU/AAAoPlMrNT8AADA+Uys1PwAAOD5TKzU/AABAPlMrNT8AAEg+Uys1PwAAUD5TKzU/AABYPlMrNT8AAGA+Uys1PwAAaD5TKzU/AABwPlMrNT8AAHg+Uys1PwAAgD5TKzU/AACEPlMrNT8AAIg+Uys1PwAAjD5TKzU/AACQPlMrNT8AAJQ+Uys1PwAAmD5TKzU/AACcPlMrNT8AAKA+Uys1PwAApD5TKzU/AACoPlMrNT8AAKw+Uys1PwAAsD5TKzU/AAC0PlMrNT8AALg+Uys1PwAAvD5TKzU/AADAPlMrNT8AAMQ+Uys1PwAAyD5TKzU/AADMPlMrNT8AANA+Uys1PwAA1D5TKzU/AADYPlMrNT8AANw+Uys1PwAA4D5TKzU/AADkPlMrNT8AAOg+Uys1PwAA7D5TKzU/AADwPlMrNT8AAPQ+Uys1PwAA+D5TKzU/AAD8PlMrNT8AAAA/Uys1PwAAAj9TKzU/AAAEP1MrNT8AAAY/Uys1PwAACD9TKzU/AAAKP1MrNT8AAAw/Uys1PwAADj9TKzU/AAAQP1MrNT8AABI/Uys1PwAAFD9TKzU/AAAWP1MrNT8AABg/Uys1PwAAGj9TKzU/AAAcP1MrNT8AAB4/Uys1PwAAID9TKzU/AAAiP1MrNT8AACQ/Uys1PwAAJj9TKzU/AAAoP1MrNT8AACo/Uys1PwAALD9TKzU/AAAuP1MrNT8AADA/Uys1PwAAMj9TKzU/AAA0P1MrNT8AADY/Uys1PwAAOD9TKzU/AAA6P1MrNT8AADw/Uys1PwAAPj9TKzU/AABAP1MrNT8AAEI/Uys1PwAARD9TKzU/AABGP1MrNT8AAEg/Uys1PwAASj9TKzU/AABMP1MrNT8AAE4/Uys1PwAAUD9TKzU/AABSP1MrNT8AAFQ/Uys1PwAAVj9TKzU/AABYP1MrNT8AAFo/Uys1PwAAXD9TKzU/AABeP1MrNT8AAGA/Uys1PwAAYj9TKzU/AABkP1MrNT8AAGY/Uys1PwAAaD9TKzU/AABqP1MrNT8AAGw/Uys1PwAAbj9TKzU/AABwP1MrNT8AAHI/Uys1PwAAdD9TKzU/AAB2P1MrNT8AAHg/Uys1PwAAej9TKzU/AAB8P1MrNT8AAH4/Uys1PwAAgD9TKzU/AAAAAJIbOT8AAAA8khs5PwAAgDySGzk/AADAPJIbOT8AAAA9khs5PwAAID2SGzk/AABAPZIbOT8AAGA9khs5PwAAgD2SGzk/AACQPZIbOT8AAKA9khs5PwAAsD2SGzk/AADAPZIbOT8AANA9khs5PwAA4D2SGzk/AADwPZIbOT8AAAA+khs5PwAACD6SGzk/AAAQPpIbOT8AABg+khs5PwAAID6SGzk/AAAoPpIbOT8AADA+khs5PwAAOD6SGzk/AABAPpIbOT8AAEg+khs5PwAAUD6SGzk/AABYPpIbOT8AAGA+khs5PwAAaD6SGzk/AABwPpIbOT8AAHg+khs5PwAAgD6SGzk/AACEPpIbOT8AAIg+khs5PwAAjD6SGzk/AACQPpIbOT8AAJQ+khs5PwAAmD6SGzk/AACcPpIbOT8AAKA+khs5PwAApD6SGzk/AACoPpIbOT8AAKw+khs5PwAAsD6SGzk/AAC0PpIbOT8AALg+khs5PwAAvD6SGzk/AADAPpIbOT8AAMQ+khs5PwAAyD6SGzk/AADMPpIbOT8AANA+khs5PwAA1D6SGzk/AADYPpIbOT8AANw+khs5PwAA4D6SGzk/AADkPpIbOT8AAOg+khs5PwAA7D6SGzk/AADwPpIbOT8AAPQ+khs5PwAA+D6SGzk/AAD8PpIbOT8AAAA/khs5PwAAAj+SGzk/AAAEP5IbOT8AAAY/khs5PwAACD+SGzk/AAAKP5IbOT8AAAw/khs5PwAADj+SGzk/AAAQP5IbOT8AABI/khs5PwAAFD+SGzk/AAAWP5IbOT8AABg/khs5PwAAGj+SGzk/AAAcP5IbOT8AAB4/khs5PwAAID+SGzk/AAAiP5IbOT8AACQ/khs5PwAAJj+SGzk/AAAoP5IbOT8AACo/khs5PwAALD+SGzk/AAAuP5IbOT8AADA/khs5PwAAMj+SGzk/AAA0P5IbOT8AADY/khs5PwAAOD+SGzk/AAA6P5IbOT8AADw/khs5PwAAPj+SGzk/AABAP5IbOT8AAEI/khs5PwAARD+SGzk/AABGP5IbOT8AAEg/khs5PwAASj+SGzk/AABMP5IbOT8AAE4/khs5PwAAUD+SGzk/AABSP5IbOT8AAFQ/khs5PwAAVj+SGzk/AABYP5IbOT8AAFo/khs5PwAAXD+SGzk/AABeP5IbOT8AAGA/khs5PwAAYj+SGzk/AABkP5IbOT8AAGY/khs5PwAAaD+SGzk/AABqP5IbOT8AAGw/khs5PwAAbj+SGzk/AABwP5IbOT8AAHI/khs5PwAAdD+SGzk/AAB2P5IbOT8AAHg/khs5PwAAej+SGzk/AAB8P5IbOT8AAH4/khs5PwAAgD+SGzk/AAAAANELPT8AAAA80Qs9PwAAgDzRCz0/AADAPNELPT8AAAA90Qs9PwAAID3RCz0/AABAPdELPT8AAGA90Qs9PwAAgD3RCz0/AACQPdELPT8AAKA90Qs9PwAAsD3RCz0/AADAPdELPT8AANA90Qs9PwAA4D3RCz0/AADwPdELPT8AAAA+0Qs9PwAACD7RCz0/AAAQPtELPT8AABg+0Qs9PwAAID7RCz0/AAAoPtELPT8AADA+0Qs9PwAAOD7RCz0/AABAPtELPT8AAEg+0Qs9PwAAUD7RCz0/AABYPtELPT8AAGA+0Qs9PwAAaD7RCz0/AABwPtELPT8AAHg+0Qs9PwAAgD7RCz0/AACEPtELPT8AAIg+0Qs9PwAAjD7RCz0/AACQPtELPT8AAJQ+0Qs9PwAAmD7RCz0/AACcPtELPT8AAKA+0Qs9PwAApD7RCz0/AACoPtELPT8AAKw+0Qs9PwAAsD7RCz0/AAC0PtELPT8AALg+0Qs9PwAAvD7RCz0/AADAPtELPT8AAMQ+0Qs9PwAAyD7RCz0/AADMPtELPT8AANA+0Qs9PwAA1D7RCz0/AADYPtELPT8AANw+0Qs9PwAA4D7RCz0/AADkPtELPT8AAOg+0Qs9PwAA7D7RCz0/AADwPtELPT8AAPQ+0Qs9PwAA+D7RCz0/AAD8PtELPT8AAAA/0Qs9PwAAAj/RCz0/AAAEP9ELPT8AAAY/0Qs9PwAACD/RCz0/AAAKP9ELPT8AAAw/0Qs9PwAADj/RCz0/AAAQP9ELPT8AABI/0Qs9PwAAFD/RCz0/AAAWP9ELPT8AABg/0Qs9PwAAGj/RCz0/AAAcP9ELPT8AAB4/0Qs9PwAAID/RCz0/AAAiP9ELPT8AACQ/0Qs9PwAAJj/RCz0/AAAoP9ELPT8AACo/0Qs9PwAALD/RCz0/AAAuP9ELPT8AADA/0Qs9PwAAMj/RCz0/AAA0P9ELPT8AADY/0Qs9PwAAOD/RCz0/AAA6P9ELPT8AADw/0Qs9PwAAPj/RCz0/AABAP9ELPT8AAEI/0Qs9PwAARD/RCz0/AABGP9ELPT8AAEg/0Qs9PwAASj/RCz0/AABMP9ELPT8AAE4/0Qs9PwAAUD/RCz0/AABSP9ELPT8AAFQ/0Qs9PwAAVj/RCz0/AABYP9ELPT8AAFo/0Qs9PwAAXD/RCz0/AABeP9ELPT8AAGA/0Qs9PwAAYj/RCz0/AABkP9ELPT8AAGY/0Qs9PwAAaD/RCz0/AABqP9ELPT8AAGw/0Qs9PwAAbj/RCz0/AABwP9ELPT8AAHI/0Qs9PwAAdD/RCz0/AAB2P9ELPT8AAHg/0Qs9PwAAej/RCz0/AAB8P9ELPT8AAH4/0Qs9PwAAgD/RCz0/AAAAABD8QD8AAAA8EPxAPwAAgDwQ/EA/AADAPBD8QD8AAAA9EPxAPwAAID0Q/EA/AABAPRD8QD8AAGA9EPxAPwAAgD0Q/EA/AACQPRD8QD8AAKA9EPxAPwAAsD0Q/EA/AADAPRD8QD8AANA9EPxAPwAA4D0Q/EA/AADwPRD8QD8AAAA+EPxAPwAACD4Q/EA/AAAQPhD8QD8AABg+EPxAPwAAID4Q/EA/AAAoPhD8QD8AADA+EPxAPwAAOD4Q/EA/AABAPhD8QD8AAEg+EPxAPwAAUD4Q/EA/AABYPhD8QD8AAGA+EPxAPwAAaD4Q/EA/AABwPhD8QD8AAHg+EPxAPwAAgD4Q/EA/AACEPhD8QD8AAIg+EPxAPwAAjD4Q/EA/AACQPhD8QD8AAJQ+EPxAPwAAmD4Q/EA/AACcPhD8QD8AAKA+EPxAPwAApD4Q/EA/AACoPhD8QD8AAKw+EPxAPwAAsD4Q/EA/AAC0PhD8QD8AALg+EPxAPwAAvD4Q/EA/AADAPhD8QD8AAMQ+EPxAPwAAyD4Q/EA/AADMPhD8QD8AANA+EPxAPwAA1D4Q/EA/AADYPhD8QD8AANw+EPxAPwAA4D4Q/EA/AADkPhD8QD8AAOg+EPxAPwAA7D4Q/EA/AADwPhD8QD8AAPQ+EPxAPwAA+D4Q/EA/AAD8PhD8QD8AAAA/EPxAPwAAAj8Q/EA/AAAEPxD8QD8AAAY/EPxAPwAACD8Q/EA/AAAKPxD8QD8AAAw/EPxAPwAADj8Q/EA/AAAQPxD8QD8AABI/EPxAPwAAFD8Q/EA/AAAWPxD8QD8AABg/EPxAPwAAGj8Q/EA/AAAcPxD8QD8AAB4/EPxAPwAAID8Q/EA/AAAiPxD8QD8AACQ/EPxAPwAAJj8Q/EA/AAAoPxD8QD8AACo/EPxAPwAALD8Q/EA/AAAuPxD8QD8AADA/EPxAPwAAMj8Q/EA/AAA0PxD8QD8AADY/EPxAPwAAOD8Q/EA/AAA6PxD8QD8AADw/EPxAPwAAPj8Q/EA/AABAPxD8QD8AAEI/EPxAPwAARD8Q/EA/AABGPxD8QD8AAEg/EPxAPwAASj8Q/EA/AABMPxD8QD8AAE4/EPxAPwAAUD8Q/EA/AABSPxD8QD8AAFQ/EPxAPwAAVj8Q/EA/AABYPxD8QD8AAFo/EPxAPwAAXD8Q/EA/AABePxD8QD8AAGA/EPxAPwAAYj8Q/EA/AABkPxD8QD8AAGY/EPxAPwAAaD8Q/EA/AABqPxD8QD8AAGw/EPxAPwAAbj8Q/EA/AABwPxD8QD8AAHI/EPxAPwAAdD8Q/EA/AAB2PxD8QD8AAHg/EPxAPwAAej8Q/EA/AAB8PxD8QD8AAH4/EPxAPwAAgD8Q/EA/AAAAAE/sRD8AAAA8T+xEPwAAgDxP7EQ/AADAPE/sRD8AAAA9T+xEPwAAID1P7EQ/AABAPU/sRD8AAGA9T+xEPwAAgD1P7EQ/AACQPU/sRD8AAKA9T+xEPwAAsD1P7EQ/AADAPU/sRD8AANA9T+xEPwAA4D1P7EQ/AADwPU/sRD8AAAA+T+xEPwAACD5P7EQ/AAAQPk/sRD8AABg+T+xEPwAAID5P7EQ/AAAoPk/sRD8AADA+T+xEPwAAOD5P7EQ/AABAPk/sRD8AAEg+T+xEPwAAUD5P7EQ/AABYPk/sRD8AAGA+T+xEPwAAaD5P7EQ/AABwPk/sRD8AAHg+T+xEPwAAgD5P7EQ/AACEPk/sRD8AAIg+T+xEPwAAjD5P7EQ/AACQPk/sRD8AAJQ+T+xEPwAAmD5P7EQ/AACcPk/sRD8AAKA+T+xEPwAApD5P7EQ/AACoPk/sRD8AAKw+T+xEPwAAsD5P7EQ/AAC0Pk/sRD8AALg+T+xEPwAAvD5P7EQ/AADAPk/sRD8AAMQ+T+xEPwAAyD5P7EQ/AADMPk/sRD8AANA+T+xEPwAA1D5P7EQ/AADYPk/sRD8AANw+T+xEPwAA4D5P7EQ/AADkPk/sRD8AAOg+T+xEPwAA7D5P7EQ/AADwPk/sRD8AAPQ+T+xEPwAA+D5P7EQ/AAD8Pk/sRD8AAAA/T+xEPwAAAj9P7EQ/AAAEP0/sRD8AAAY/T+xEPwAACD9P7EQ/AAAKP0/sRD8AAAw/T+xEPwAADj9P7EQ/AAAQP0/sRD8AABI/T+xEPwAAFD9P7EQ/AAAWP0/sRD8AABg/T+xEPwAAGj9P7EQ/AAAcP0/sRD8AAB4/T+xEPwAAID9P7EQ/AAAiP0/sRD8AACQ/T+xEPwAAJj9P7EQ/AAAoP0/sRD8AACo/T+xEPwAALD9P7EQ/AAAuP0/sRD8AADA/T+xEPwAAMj9P7EQ/AAA0P0/sRD8AADY/T+xEPwAAOD9P7EQ/AAA6P0/sRD8AADw/T+xEPwAAPj9P7EQ/AABAP0/sRD8AAEI/T+xEPwAARD9P7EQ/AABGP0/sRD8AAEg/T+xEPwAASj9P7EQ/AABMP0/sRD8AAE4/T+xEPwAAUD9P7EQ/AABSP0/sRD8AAFQ/T+xEPwAAVj9P7EQ/AABYP0/sRD8AAFo/T+xEPwAAXD9P7EQ/AABeP0/sRD8AAGA/T+xEPwAAYj9P7EQ/AABkP0/sRD8AAGY/T+xEPwAAaD9P7EQ/AABqP0/sRD8AAGw/T+xEPwAAbj9P7EQ/AABwP0/sRD8AAHI/T+xEPwAAdD9P7EQ/AAB2P0/sRD8AAHg/T+xEPwAAej9P7EQ/AAB8P0/sRD8AAH4/T+xEPwAAgD9P7EQ/AAAAAI7cSD8AAAA8jtxIPwAAgDyO3Eg/AADAPI7cSD8AAAA9jtxIPwAAID2O3Eg/AABAPY7cSD8AAGA9jtxIPwAAgD2O3Eg/AACQPY7cSD8AAKA9jtxIPwAAsD2O3Eg/AADAPY7cSD8AANA9jtxIPwAA4D2O3Eg/AADwPY7cSD8AAAA+jtxIPwAACD6O3Eg/AAAQPo7cSD8AABg+jtxIPwAAID6O3Eg/AAAoPo7cSD8AADA+jtxIPwAAOD6O3Eg/AABAPo7cSD8AAEg+jtxIPwAAUD6O3Eg/AABYPo7cSD8AAGA+jtxIPwAAaD6O3Eg/AABwPo7cSD8AAHg+jtxIPwAAgD6O3Eg/AACEPo7cSD8AAIg+jtxIPwAAjD6O3Eg/AACQPo7cSD8AAJQ+jtxIPwAAmD6O3Eg/AACcPo7cSD8AAKA+jtxIPwAApD6O3Eg/AACoPo7cSD8AAKw+jtxIPwAAsD6O3Eg/AAC0Po7cSD8AALg+jtxIPwAAvD6O3Eg/AADAPo7cSD8AAMQ+jtxIPwAAyD6O3Eg/AADMPo7cSD8AANA+jtxIPwAA1D6O3Eg/AADYPo7cSD8AANw+jtxIPwAA4D6O3Eg/AADkPo7cSD8AAOg+jtxIPwAA7D6O3Eg/AADwPo7cSD8AAPQ+jtxIPwAA+D6O3Eg/AAD8Po7cSD8AAAA/jtxIPwAAAj+O3Eg/AAAEP47cSD8AAAY/jtxIPwAACD+O3Eg/AAAKP47cSD8AAAw/jtxIPwAADj+O3Eg/AAAQP47cSD8AABI/jtxIPwAAFD+O3Eg/AAAWP47cSD8AABg/jtxIPwAAGj+O3Eg/AAAcP47cSD8AAB4/jtxIPwAAID+O3Eg/AAAiP47cSD8AACQ/jtxIPwAAJj+O3Eg/AAAoP47cSD8AACo/jtxIPwAALD+O3Eg/AAAuP47cSD8AADA/jtxIPwAAMj+O3Eg/AAA0P47cSD8AADY/jtxIPwAAOD+O3Eg/AAA6P47cSD8AADw/jtxIPwAAPj+O3Eg/AABAP47cSD8AAEI/jtxIPwAARD+O3Eg/AABGP47cSD8AAEg/jtxIPwAASj+O3Eg/AABMP47cSD8AAE4/jtxIPwAAUD+O3Eg/AABSP47cSD8AAFQ/jtxIPwAAVj+O3Eg/AABYP47cSD8AAFo/jtxIPwAAXD+O3Eg/AABeP47cSD8AAGA/jtxIPwAAYj+O3Eg/AABkP47cSD8AAGY/jtxIPwAAaD+O3Eg/AABqP47cSD8AAGw/jtxIPwAAbj+O3Eg/AABwP47cSD8AAHI/jtxIPwAAdD+O3Eg/AAB2P47cSD8AAHg/jtxIPwAAej+O3Eg/AAB8P47cSD8AAH4/jtxIPwAAgD+O3Eg/AAAAAM3MTD8AAAA8zcxMPwAAgDzNzEw/AADAPM3MTD8AAAA9zcxMPwAAID3NzEw/AABAPc3MTD8AAGA9zcxMPwAAgD3NzEw/AACQPc3MTD8AAKA9zcxMPwAAsD3NzEw/AADAPc3MTD8AANA9zcxMPwAA4D3NzEw/AADwPc3MTD8AAAA+zcxMPwAACD7NzEw/AAAQPs3MTD8AABg+zcxMPwAAID7NzEw/AAAoPs3MTD8AADA+zcxMPwAAOD7NzEw/AABAPs3MTD8AAEg+zcxMPwAAUD7NzEw/AABYPs3MTD8AAGA+zcxMPwAAaD7NzEw/AABwPs3MTD8AAHg+zcxMPwAAgD7NzEw/AACEPs3MTD8AAIg+zcxMPwAAjD7NzEw/AACQPs3MTD8AAJQ+zcxMPwAAmD7NzEw/AACcPs3MTD8AAKA+zcxMPwAApD7NzEw/AACoPs3MTD8AAKw+zcxMPwAAsD7NzEw/AAC0Ps3MTD8AALg+zcxMPwAAvD7NzEw/AADAPs3MTD8AAMQ+zcxMPwAAyD7NzEw/AADMPs3MTD8AANA+zcxMPwAA1D7NzEw/AADYPs3MTD8AANw+zcxMPwAA4D7NzEw/AADkPs3MTD8AAOg+zcxMPwAA7D7NzEw/AADwPs3MTD8AAPQ+zcxMPwAA+D7NzEw/AAD8Ps3MTD8AAAA/zcxMPwAAAj/NzEw/AAAEP83MTD8AAAY/zcxMPwAACD/NzEw/AAAKP83MTD8AAAw/zcxMPwAADj/NzEw/AAAQP83MTD8AABI/zcxMPwAAFD/NzEw/AAAWP83MTD8AABg/zcxMPwAAGj/NzEw/AAAcP83MTD8AAB4/zcxMPwAAID/NzEw/AAAiP83MTD8AACQ/zcxMPwAAJj/NzEw/AAAoP83MTD8AACo/zcxMPwAALD/NzEw/AAAuP83MTD8AADA/zcxMPwAAMj/NzEw/AAA0P83MTD8AADY/zcxMPwAAOD/NzEw/AAA6P83MTD8AADw/zcxMPwAAPj/NzEw/AABAP83MTD8AAEI/zcxMPwAARD/NzEw/AABGP83MTD8AAEg/zcxMPwAASj/NzEw/AABMP83MTD8AAE4/zcxMPwAAUD/NzEw/AABSP83MTD8AAFQ/zcxMPwAAVj/NzEw/AABYP83MTD8AAFo/zcxMPwAAXD/NzEw/AABeP83MTD8AAGA/zcxMPwAAYj/NzEw/AABkP83MTD8AAGY/zcxMPwAAaD/NzEw/AABqP83MTD8AAGw/zcxMPwAAbj/NzEw/AABwP83MTD8AAHI/zcxMPwAAdD/NzEw/AAB2P83MTD8AAHg/zcxMPwAAej/NzEw/AAB8P83MTD8AAH4/zcxMPwAAgD/NzEw/AAAAAAy9UD8AAAA8DL1QPwAAgDwMvVA/AADAPAy9UD8AAAA9DL1QPwAAID0MvVA/AABAPQy9UD8AAGA9DL1QPwAAgD0MvVA/AACQPQy9UD8AAKA9DL1QPwAAsD0MvVA/AADAPQy9UD8AANA9DL1QPwAA4D0MvVA/AADwPQy9UD8AAAA+DL1QPwAACD4MvVA/AAAQPgy9UD8AABg+DL1QPwAAID4MvVA/AAAoPgy9UD8AADA+DL1QPwAAOD4MvVA/AABAPgy9UD8AAEg+DL1QPwAAUD4MvVA/AABYPgy9UD8AAGA+DL1QPwAAaD4MvVA/AABwPgy9UD8AAHg+DL1QPwAAgD4MvVA/AACEPgy9UD8AAIg+DL1QPwAAjD4MvVA/AACQPgy9UD8AAJQ+DL1QPwAAmD4MvVA/AACcPgy9UD8AAKA+DL1QPwAApD4MvVA/AACoPgy9UD8AAKw+DL1QPwAAsD4MvVA/AAC0Pgy9UD8AALg+DL1QPwAAvD4MvVA/AADAPgy9UD8AAMQ+DL1QPwAAyD4MvVA/AADMPgy9UD8AANA+DL1QPwAA1D4MvVA/AADYPgy9UD8AANw+DL1QPwAA4D4MvVA/AADkPgy9UD8AAOg+DL1QPwAA7D4MvVA/AADwPgy9UD8AAPQ+DL1QPwAA+D4MvVA/AAD8Pgy9UD8AAAA/DL1QPwAAAj8MvVA/AAAEPwy9UD8AAAY/DL1QPwAACD8MvVA/AAAKPwy9UD8AAAw/DL1QPwAADj8MvVA/AAAQPwy9UD8AABI/DL1QPwAAFD8MvVA/AAAWPwy9UD8AABg/DL1QPwAAGj8MvVA/AAAcPwy9UD8AAB4/DL1QPwAAID8MvVA/AAAiPwy9UD8AACQ/DL1QPwAAJj8MvVA/AAAoPwy9UD8AACo/DL1QPwAALD8MvVA/AAAuPwy9UD8AADA/DL1QPwAAMj8MvVA/AAA0Pwy9UD8AADY/DL1QPwAAOD8MvVA/AAA6Pwy9UD8AADw/DL1QPwAAPj8MvVA/AABAPwy9UD8AAEI/DL1QPwAARD8MvVA/AABGPwy9UD8AAEg/DL1QPwAASj8MvVA/AABMPwy9UD8AAE4/DL1QPwAAUD8MvVA/AABSPwy9UD8AAFQ/DL1QPwAAVj8MvVA/AABYPwy9UD8AAFo/DL1QPwAAXD8MvVA/AABePwy9UD8AAGA/DL1QPwAAYj8MvVA/AABkPwy9UD8AAGY/DL1QPwAAaD8MvVA/AABqPwy9UD8AAGw/DL1QPwAAbj8MvVA/AABwPwy9UD8AAHI/DL1QPwAAdD8MvVA/AAB2Pwy9UD8AAHg/DL1QPwAAej8MvVA/AAB8Pwy9UD8AAH4/DL1QPwAAgD8MvVA/AAAAAEutVD8AAAA8S61UPwAAgDxLrVQ/AADAPEutVD8AAAA9S61UPwAAID1LrVQ/AABAPUutVD8AAGA9S61UPwAAgD1LrVQ/AACQPUutVD8AAKA9S61UPwAAsD1LrVQ/AADAPUutVD8AANA9S61UPwAA4D1LrVQ/AADwPUutVD8AAAA+S61UPwAACD5LrVQ/AAAQPkutVD8AABg+S61UPwAAID5LrVQ/AAAoPkutVD8AADA+S61UPwAAOD5LrVQ/AABAPkutVD8AAEg+S61UPwAAUD5LrVQ/AABYPkutVD8AAGA+S61UPwAAaD5LrVQ/AABwPkutVD8AAHg+S61UPwAAgD5LrVQ/AACEPkutVD8AAIg+S61UPwAAjD5LrVQ/AACQPkutVD8AAJQ+S61UPwAAmD5LrVQ/AACcPkutVD8AAKA+S61UPwAApD5LrVQ/AACoPkutVD8AAKw+S61UPwAAsD5LrVQ/AAC0PkutVD8AALg+S61UPwAAvD5LrVQ/AADAPkutVD8AAMQ+S61UPwAAyD5LrVQ/AADMPkutVD8AANA+S61UPwAA1D5LrVQ/AADYPkutVD8AANw+S61UPwAA4D5LrVQ/AADkPkutVD8AAOg+S61UPwAA7D5LrVQ/AADwPkutVD8AAPQ+S61UPwAA+D5LrVQ/AAD8PkutVD8AAAA/S61UPwAAAj9LrVQ/AAAEP0utVD8AAAY/S61UPwAACD9LrVQ/AAAKP0utVD8AAAw/S61UPwAADj9LrVQ/AAAQP0utVD8AABI/S61UPwAAFD9LrVQ/AAAWP0utVD8AABg/S61UPwAAGj9LrVQ/AAAcP0utVD8AAB4/S61UPwAAID9LrVQ/AAAiP0utVD8AACQ/S61UPwAAJj9LrVQ/AAAoP0utVD8AACo/S61UPwAALD9LrVQ/AAAuP0utVD8AADA/S61UPwAAMj9LrVQ/AAA0P0utVD8AADY/S61UPwAAOD9LrVQ/AAA6P0utVD8AADw/S61UPwAAPj9LrVQ/AABAP0utVD8AAEI/S61UPwAARD9LrVQ/AABGP0utVD8AAEg/S61UPwAASj9LrVQ/AABMP0utVD8AAE4/S61UPwAAUD9LrVQ/AABSP0utVD8AAFQ/S61UPwAAVj9LrVQ/AABYP0utVD8AAFo/S61UPwAAXD9LrVQ/AABeP0utVD8AAGA/S61UPwAAYj9LrVQ/AABkP0utVD8AAGY/S61UPwAAaD9LrVQ/AABqP0utVD8AAGw/S61UPwAAbj9LrVQ/AABwP0utVD8AAHI/S61UPwAAdD9LrVQ/AAB2P0utVD8AAHg/S61UPwAAej9LrVQ/AAB8P0utVD8AAH4/S61UPwAAgD9LrVQ/AAAAAIqdWD8AAAA8ip1YPwAAgDyKnVg/AADAPIqdWD8AAAA9ip1YPwAAID2KnVg/AABAPYqdWD8AAGA9ip1YPwAAgD2KnVg/AACQPYqdWD8AAKA9ip1YPwAAsD2KnVg/AADAPYqdWD8AANA9ip1YPwAA4D2KnVg/AADwPYqdWD8AAAA+ip1YPwAACD6KnVg/AAAQPoqdWD8AABg+ip1YPwAAID6KnVg/AAAoPoqdWD8AADA+ip1YPwAAOD6KnVg/AABAPoqdWD8AAEg+ip1YPwAAUD6KnVg/AABYPoqdWD8AAGA+ip1YPwAAaD6KnVg/AABwPoqdWD8AAHg+ip1YPwAAgD6KnVg/AACEPoqdWD8AAIg+ip1YPwAAjD6KnVg/AACQPoqdWD8AAJQ+ip1YPwAAmD6KnVg/AACcPoqdWD8AAKA+ip1YPwAApD6KnVg/AACoPoqdWD8AAKw+ip1YPwAAsD6KnVg/AAC0PoqdWD8AALg+ip1YPwAAvD6KnVg/AADAPoqdWD8AAMQ+ip1YPwAAyD6KnVg/AADMPoqdWD8AANA+ip1YPwAA1D6KnVg/AADYPoqdWD8AANw+ip1YPwAA4D6KnVg/AADkPoqdWD8AAOg+ip1YPwAA7D6KnVg/AADwPoqdWD8AAPQ+ip1YPwAA+D6KnVg/AAD8PoqdWD8AAAA/ip1YPwAAAj+KnVg/AAAEP4qdWD8AAAY/ip1YPwAACD+KnVg/AAAKP4qdWD8AAAw/ip1YPwAADj+KnVg/AAAQP4qdWD8AABI/ip1YPwAAFD+KnVg/AAAWP4qdWD8AABg/ip1YPwAAGj+KnVg/AAAcP4qdWD8AAB4/ip1YPwAAID+KnVg/AAAiP4qdWD8AACQ/ip1YPwAAJj+KnVg/AAAoP4qdWD8AACo/ip1YPwAALD+KnVg/AAAuP4qdWD8AADA/ip1YPwAAMj+KnVg/AAA0P4qdWD8AADY/ip1YPwAAOD+KnVg/AAA6P4qdWD8AADw/ip1YPwAAPj+KnVg/AABAP4qdWD8AAEI/ip1YPwAARD+KnVg/AABGP4qdWD8AAEg/ip1YPwAASj+KnVg/AABMP4qdWD8AAE4/ip1YPwAAUD+KnVg/AABSP4qdWD8AAFQ/ip1YPwAAVj+KnVg/AABYP4qdWD8AAFo/ip1YPwAAXD+KnVg/AABeP4qdWD8AAGA/ip1YPwAAYj+KnVg/AABkP4qdWD8AAGY/ip1YPwAAaD+KnVg/AABqP4qdWD8AAGw/ip1YPwAAbj+KnVg/AABwP4qdWD8AAHI/ip1YPwAAdD+KnVg/AAB2P4qdWD8AAHg/ip1YPwAAej+KnVg/AAB8P4qdWD8AAH4/ip1YPwAAgD+KnVg/AAAAAMmNXD8AAAA8yY1cPwAAgDzJjVw/AADAPMmNXD8AAAA9yY1cPwAAID3JjVw/AABAPcmNXD8AAGA9yY1cPwAAgD3JjVw/AACQPcmNXD8AAKA9yY1cPwAAsD3JjVw/AADAPcmNXD8AANA9yY1cPwAA4D3JjVw/AADwPcmNXD8AAAA+yY1cPwAACD7JjVw/AAAQPsmNXD8AABg+yY1cPwAAID7JjVw/AAAoPsmNXD8AADA+yY1cPwAAOD7JjVw/AABAPsmNXD8AAEg+yY1cPwAAUD7JjVw/AABYPsmNXD8AAGA+yY1cPwAAaD7JjVw/AABwPsmNXD8AAHg+yY1cPwAAgD7JjVw/AACEPsmNXD8AAIg+yY1cPwAAjD7JjVw/AACQPsmNXD8AAJQ+yY1cPwAAmD7JjVw/AACcPsmNXD8AAKA+yY1cPwAApD7JjVw/AACoPsmNXD8AAKw+yY1cPwAAsD7JjVw/AAC0PsmNXD8AALg+yY1cPwAAvD7JjVw/AADAPsmNXD8AAMQ+yY1cPwAAyD7JjVw/AADMPsmNXD8AANA+yY1cPwAA1D7JjVw/AADYPsmNXD8AANw+yY1cPwAA4D7JjVw/AADkPsmNXD8AAOg+yY1cPwAA7D7JjVw/AADwPsmNXD8AAPQ+yY1cPwAA+D7JjVw/AAD8PsmNXD8AAAA/yY1cPwAAAj/JjVw/AAAEP8mNXD8AAAY/yY1cPwAACD/JjVw/AAAKP8mNXD8AAAw/yY1cPwAADj/JjVw/AAAQP8mNXD8AABI/yY1cPwAAFD/JjVw/AAAWP8mNXD8AABg/yY1cPwAAGj/JjVw/AAAcP8mNXD8AAB4/yY1cPwAAID/JjVw/AAAiP8mNXD8AACQ/yY1cPwAAJj/JjVw/AAAoP8mNXD8AACo/yY1cPwAALD/JjVw/AAAuP8mNXD8AADA/yY1cPwAAMj/JjVw/AAA0P8mNXD8AADY/yY1cPwAAOD/JjVw/AAA6P8mNXD8AADw/yY1cPwAAPj/JjVw/AABAP8mNXD8AAEI/yY1cPwAARD/JjVw/AABGP8mNXD8AAEg/yY1cPwAASj/JjVw/AABMP8mNXD8AAE4/yY1cPwAAUD/JjVw/AABSP8mNXD8AAFQ/yY1cPwAAVj/JjVw/AABYP8mNXD8AAFo/yY1cPwAAXD/JjVw/AABeP8mNXD8AAGA/yY1cPwAAYj/JjVw/AABkP8mNXD8AAGY/yY1cPwAAaD/JjVw/AABqP8mNXD8AAGw/yY1cPwAAbj/JjVw/AABwP8mNXD8AAHI/yY1cPwAAdD/JjVw/AAB2P8mNXD8AAHg/yY1cPwAAej/JjVw/AAB8P8mNXD8AAH4/yY1cPwAAgD/JjVw/AAAAAAh+YD8AAAA8CH5gPwAAgDwIfmA/AADAPAh+YD8AAAA9CH5gPwAAID0IfmA/AABAPQh+YD8AAGA9CH5gPwAAgD0IfmA/AACQPQh+YD8AAKA9CH5gPwAAsD0IfmA/AADAPQh+YD8AANA9CH5gPwAA4D0IfmA/AADwPQh+YD8AAAA+CH5gPwAACD4IfmA/AAAQPgh+YD8AABg+CH5gPwAAID4IfmA/AAAoPgh+YD8AADA+CH5gPwAAOD4IfmA/AABAPgh+YD8AAEg+CH5gPwAAUD4IfmA/AABYPgh+YD8AAGA+CH5gPwAAaD4IfmA/AABwPgh+YD8AAHg+CH5gPwAAgD4IfmA/AACEPgh+YD8AAIg+CH5gPwAAjD4IfmA/AACQPgh+YD8AAJQ+CH5gPwAAmD4IfmA/AACcPgh+YD8AAKA+CH5gPwAApD4IfmA/AACoPgh+YD8AAKw+CH5gPwAAsD4IfmA/AAC0Pgh+YD8AALg+CH5gPwAAvD4IfmA/AADAPgh+YD8AAMQ+CH5gPwAAyD4IfmA/AADMPgh+YD8AANA+CH5gPwAA1D4IfmA/AADYPgh+YD8AANw+CH5gPwAA4D4IfmA/AADkPgh+YD8AAOg+CH5gPwAA7D4IfmA/AADwPgh+YD8AAPQ+CH5gPwAA+D4IfmA/AAD8Pgh+YD8AAAA/CH5gPwAAAj8IfmA/AAAEPwh+YD8AAAY/CH5gPwAACD8IfmA/AAAKPwh+YD8AAAw/CH5gPwAADj8IfmA/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AACcPoZeaD8AAKA+hl5oPwAApD6GXmg/AACoPoZeaD8AAKw+hl5oPwAAsD6GXmg/AAC0PoZeaD8AALg+hl5oPwAAvD6GXmg/AADAPoZeaD8AAMQ+hl5oPwAAyD6GXmg/AADMPoZeaD8AANA+hl5oPwAA1D6GXmg/AADYPoZeaD8AANw+hl5oPwAA4D6GXmg/AADkPoZeaD8AAOg+hl5oPwAA7D6GXmg/AADwPoZeaD8AAPQ+hl5oPwAA+D6GXmg/AAD8PoZeaD8AAAA/hl5oPwAAAj+GXmg/AAAEP4ZeaD8AAAY/hl5oPwAACD+GXmg/AAAKP4ZeaD8AAAw/hl5oPwAADj+GXmg/AAAQP4ZeaD8AABI/hl5oPwAAFD+GXmg/AAAWP4ZeaD8AABg/hl5oPwAAGj+GXmg/AAAcP4ZeaD8AAB4/hl5oPwAAID+GXmg/AAAiP4ZeaD8AACQ/hl5oPwAAJj+GXmg/AAAoP4ZeaD8AACo/hl5oPwAALD+GXmg/AAAuP4ZeaD8AADA/hl5oPwAAMj+GXmg/AAA0P4ZeaD8AADY/hl5oPwAAOD+GXmg/AAA6P4ZeaD8AADw/hl5oPwAAPj+GXmg/AABAP4ZeaD8AAEI/hl5oPwAARD+GXmg/AABGP4ZeaD8AAEg/hl5oPwAASj+GXmg/AABMP4ZeaD8AAE4/hl5oPwAAUD+GXmg/AABSP4ZeaD8AAFQ/hl5oPwAAVj+GXmg/AABYP4ZeaD8AAFo/hl5oPwAAXD+GXmg/AABeP4ZeaD8AAGA/hl5oPwAAYj+GXmg/AABkP4ZeaD8AAGY/hl5oPwAAaD+GXmg/AABqP4ZeaD8AAGw/hl5oPwAAbj+GXmg/AABwP4ZeaD8AAHI/hl5oPwAAdD+GXmg/AAB2P4ZeaD8AAHg/hl5oPwAAej+GXmg/AAB8P4ZeaD8AAH4/hl5oPwAAgD+GXmg/AAAAAMVObD8AAAA8xU5sPwAAgDzFTmw/AADAPMVObD8AAAA9xU5sPwAAID3FTmw/AABAPcVObD8AAGA9xU5sPwAAgD3FTmw/AACQPcVObD8AAKA9xU5sPwAAsD3FTmw/AADAPcVObD8AANA9xU5sPwAA4D3FTmw/AADwPcVObD8AAAA+xU5sPwAACD7FTmw/AAAQPsVObD8AABg+xU5sPwAAID7FTmw/AAAoPsVObD8AADA+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"), @@ -46,19 +37,153 @@ _surfaces = [{ "vertex_data": PackedByteArray("AAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAAAAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAAE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACAAAAAgE5iGEEAAACA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SysRQL30E0E8xGQ+IbIRQL30E0HdCuU9HN8RQL30E0F55iAlIbIRQL30E0HdCuW9SysRQL30E0E8xGS+7UoQQL30E0H5Oqu+khEPQL30E0E8quO+/H8NQL30E0GLxg2/IZcLQL30E0GHYCm/L1gJQL30E0EPkkS/iMQGQL30E0FbSl+/xt0DQL30E0HyeHm/r6UAQL30E0HXhom/gTz6P730E0Fk/JW/UZPyP730E0FxFaK/iVTqP730E0GIyq2/OYXhP730E0FwFLm/1irYP730E0Ez7MO/IUvOP730E0EhS86/M+zDP730E0HWKti/cBS5P730E0E5heG/iMqtP730E0GJVOq/cRWiP730E0FRk/K/ZPyVP730E0GBPPq/14aJP730E0GvpQDA8nh5P730E0HG3QPAW0pfP730E0GIxAbAD5JEP730E0EvWAnAh2ApP730E0EhlwvAi8YNP730E0H8fw3APKrjPr30E0GSEQ/A+TqrPr30E0HtShDAPMRkPr30E0FLKxHA3QrlPb30E0EhshHAeeagJb30E0Ec3xHA3Qrlvb30E0EhshHAPMRkvr30E0FLKxHA+Tqrvr30E0HtShDAPKrjvr30E0GSEQ/Ai8YNv730E0H8fw3Ah2Apv730E0EhlwvAD5JEv730E0EvWAnAW0pfv730E0GIxAbA8nh5v730E0HG3QPA14aJv730E0GvpQDAZPyVv730E0GBPPq/cRWiv730E0FRk/K/iMqtv730E0GJVOq/cBS5v730E0E5heG/M+zDv730E0HWKti/IUvOv730E0EhS86/1irYv730E0Ez7MO/OYXhv730E0FwFLm/iVTqv730E0GIyq2/UZPyv730E0FxFaK/gTz6v730E0Fk/JW/r6UAwL30E0HXhom/xt0DwL30E0HyeHm/iMQGwL30E0FbSl+/L1gJwL30E0EPkkS/IZcLwL30E0GHYCm//H8NwL30E0GLxg2/khEPwL30E0E8quO+7UoQwL30E0H5Oqu+SysRwL30E0E8xGS+IbIRwL30E0HdCuW9HN8RwL30E0G0WfGlIbIRwL30E0HdCuU9SysRwL30E0E8xGQ+7UoQwL30E0H5Oqs+khEPwL30E0E8quM+/H8NwL30E0GLxg0/IZcLwL30E0GHYCk/L1gJwL30E0EPkkQ/iMQGwL30E0FbSl8/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9fqTQLkclEDad91AQ6ueQLkclEC78NVAtfmoQLkclECq5c1A8d+yQLkclECfW8VA21e8QLkclEDbV7xAn1vFQLkclEDx37JAquXNQLkclEC1+ahAu/DVQLkclEBDq55A2nfdQLkclED1+pNAY3bkQLkclEBk74hABujqQLkclEDAHntAysjwQLkclEDXw2NADRX2QLkclEB43EtAjsn6QLkclEBedzNAZOP+QLkclECVoxpABDABQbkclEBvcAFAqJ4CQbkclEDn2s8/v7wDQbkclEC/VJw/l4kEQbkclEBd3FA/sQQFQbkclEDaHNE+wy0FQbkclEBZ5hImsQQFQbkclEDaHNG+l4kEQbkclEBd3FC/v7wDQbkclEC/VJy/qJ4CQbkclEDn2s+/BDABQbkclEBvcAHAZOP+QLkclECVoxrAjsn6QLkclEBedzPADRX2QLkclEB43EvAysjwQLkclEDXw2PABujqQLkclEDAHnvAY3bkQLkclEBk74jA2nfdQLkclED1+pPAu/DVQLkclEBDq57AquXNQLkclEC1+ajAn1vFQLkclEDx37LA21e8QLkclEDbV7zA8d+yQLkclECfW8XAtfmoQLkclECq5c3AQ6ueQLkclEC78NXA9fqTQLkclEDad93AZO+IQLkclEBjduTAwB57QLkclEAG6OrA18NjQLkclEDKyPDAeNxLQLkclEANFfbAXnczQLkclECOyfrAlaMaQLkclEBk4/7Ab3ABQLkclEAEMAHB59rPP7kclECongLBv1ScP7kclEC/vAPBXdxQP7kclECXiQTB2hzRPrkclECxBAXBWeaSJrkclEDDLQXB2hzRvrkclECxBAXBXdxQv7kclECXiQTBv1Scv7kclEC/vAPB59rPv7kclECongLBb3ABwLkclEAEMAHBlaMawLkclEBk4/7AXnczwLkclECOyfrAeNxLwLkclEANFfbA18NjwLkclEDKyPDAwB57wLkclEAG6OrAZO+IwLkclEBjduTA9fqTwLkclEDad93AQ6uewLkclEC78NXAtfmowLkclECq5c3A8d+ywLkclECfW8XA21e8wLkclEDbV7zAn1vFwLkclEDx37LAquXNwLkclEC1+ajAu/DVwLkclEBDq57A2nfdwLkclED1+pPAY3bkwLkclEBk74jABujqwLkclEDAHnvA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AAAAAPokWEBFew5BOLjfPvokWEBVTw5BOnNfP/okWECiyw1BRUCnP/okWEB78AxBx1/eP/okWEBovgtBEnsKQPokWEAnNgpB2XAlQPokWECpWAhBmABAQPokWEATJwZB7RlaQPokWEDBogNBwKxzQPokWEBBzQBBpVSGQPokWECiUPtAE4CSQPokWEDEa/RAJlGeQPokWEAo8OxAlsCpQPokWEBs4uRAVce0QPokWECHR9xAmF6/QPokWEDJJNNA0n/JQPokWEDSf8lAySTTQPokWECYXr9Ah0fcQPokWEBVx7RAbOLkQPokWECWwKlAKPDsQPokWEAmUZ5AxGv0QPokWEATgJJAolD7QPokWEClVIZAQc0AQfokWEDArHNAwaIDQfokWEDtGVpAEycGQfokWECYAEBAqVgIQfokWEDZcCVAJzYKQfokWEASewpAaL4LQfokWEDHX94/e/AMQfokWEBFQKc/ossNQfokWEA6c18/VU8OQfokWEA4uN8+RXsOQfokWEA4KR0mVU8OQfokWEA4uN++ossNQfokWEA6c1+/e/AMQfokWEBFQKe/aL4LQfokWEDHX96/JzYKQfokWEASewrAqVgIQfokWEDZcCXAEycGQfokWECYAEDAwaIDQfokWEDtGVrAQc0AQfokWEDArHPAolD7QPokWEClVIbAxGv0QPokWEATgJLAKPDsQPokWEAmUZ7AbOLkQPokWECWwKnAh0fcQPokWEBVx7TAySTTQPokWECYXr/A0n/JQPokWEDSf8nAmF6/QPokWEDJJNPAVce0QPokWECHR9zAlsCpQPokWEBs4uTAJlGeQPokWEAo8OzAE4CSQPokWEDEa/TApVSGQPokWECiUPvAwKxzQPokWEBBzQDB7RlaQPokWEDBogPBmABAQPokWEATJwbB2XAlQPokWECpWAjBEnsKQPokWEAnNgrBx1/eP/okWEBovgvBRUCnP/okWEB78AzBOnNfP/okWECiyw3BOLjfPvokWEBVTw7BOCmdJvokWEBFew7BOLjfvvokWEBVTw7BOnNfv/okWECiyw3BRUCnv/okWEB78AzBx1/ev/okWEBovgvBEnsKwPokWEAnNgrB2XAlwPokWECpWAjBmABAwPokWEATJwbB7RlawPokWEDBogPBwKxzwPokWEBBzQDBpVSGwPokWECiUPvAE4CSwPokWEDEa/TAJlGewPokWEAo8OzAlsCpwPokWEBs4uTAVce0wPokWECHR9zAmF6/wPokWEDJJNPA0n/JwPokWEDSf8nAySTTwPokWECYXr/Ah0fcwPokWEBVx7TAbOLkwPokWECWwKnAKPDswPokWEAmUZ7AxGv0wPokWEATgJLAolD7wPokWEClVIbAQc0AwfokWEDArHPAwaIDwfokWEDtGVrAEycGwfokWECYAEDAqVgIwfokWEDZcCXAJzYKwfokWEASewrAaL4LwfokWEDHX96/e/AMwfokWEBFQKe/ossNwfokWEA6c1+/VU8OwfokWEA4uN++RXsOwfokWEDVveumVU8OwfokWEA4uN8+ossNwfokWEA6c18/e/AMwfokWEBFQKc/aL4LwfokWEDHX94/JzYKwfokWEASewpAqVgIwfokWEDZcCVAEycGwfokWECYAEBAwaIDwfokWEDtGVpAQc0AwfokWEDArHNAolD7wPokWEClVIZAxGv0wPokWEATgJJAKPDswPokWEAmUZ5AbOLkwPokWECWwKlAh0fcwPokWEBVx7RAySTTwPokWECYXr9A0n/JwPokWEDSf8lAmF6/wPokWEDJJNNAVce0wPokWECHR9xAlsCpwPokWEBs4uRAJlGewPokWEAo8OxAE4CSwPokWEDEa/RApVSGwPokWECiUPtAwKxzwPokWEBBzQBB7RlawPokWEDBogNBmABAwPokWEATJwZB2XAlwPokWECpWAhBEnsKwPokWEAnNgpBx1/ev/okWEBovgtBRUCnv/okWEB78AxBOnNfv/okWECiyw1BOLjfvvokWEBVTw5BAAAAAPokWEBFew5BAAAAAGNbPEAB7RBBuY7jPmNbPEBRwBBBjkhjP2NbPEBbOhBByR6qP2NbPEByWw9BYTDiP2NbPEAeJA5BPdsMQGNbPEAilQxBaUcoQGNbPEBzrwpB0EtDQGNbPEA7dAhBwtddQGNbPEDc5AVB5dp3QGNbPEDqAgNBlqKIQGNbPEBWoP9AdQOVQGNbPEAwnfhAbgihQGNbPEC3APFAFqqsQGNbPECdz+hAQeG3QGNbPEDuDuBABqfCQGNbPEAQxNZAv/TMQGNbPEC/9MxAEMTWQGNbPEAGp8JA7g7gQGNbPEBB4bdAnc/oQGNbPEAWqqxAtwDxQGNbPEBuCKFAMJ34QGNbPEB1A5VAVqD/QGNbPECWoohA6gIDQWNbPEDl2ndA3OQFQWNbPEDC111AO3QIQWNbPEDQS0NAc68KQWNbPEBpRyhAIpUMQWNbPEA92wxAHiQOQWNbPEBhMOI/clsPQWNbPEDJHqo/WzoQQWNbPECOSGM/UcAQQWNbPEC5juM+Ae0QQWNbPEBt2x8mUcAQQWNbPEC5juO+WzoQQWNbPECOSGO/clsPQWNbPEDJHqq/HiQOQWNbPEBhMOK/IpUMQWNbPEA92wzAc68KQWNbPEBpRyjAO3QIQWNbPEDQS0PA3OQFQWNbPEDC113A6gIDQWNbPEDl2nfAVqD/QGNbPECWoojAMJ34QGNbPEB1A5XAtwDxQGNbPEBuCKHAnc/oQGNbPEAWqqzA7g7gQGNbPEBB4bfAEMTWQGNbPEAGp8LAv/TMQGNbPEC/9MzABqfCQGNbPEAQxNbAQeG3QGNbPEDuDuDAFqqsQGNbPECdz+jAbgihQGNbPEC3APHAdQOVQGNbPEAwnfjAlqKIQGNbPEBWoP/A5dp3QGNbPEDqAgPBwtddQGNbPEDc5AXB0EtDQGNbPEA7dAjBaUcoQGNbPEBzrwrBPdsMQGNbPEAilQzBYTDiP2NbPEAeJA7ByR6qP2NbPEByWw/BjkhjP2NbPEBbOhDBuY7jPmNbPEBRwBDBbdufJmNbPEAB7RDBuY7jvmNbPEBRwBDBjkhjv2NbPEBbOhDByR6qv2NbPEByWw/BYTDiv2NbPEAeJA7BPdsMwGNbPEAilQzBaUcowGNbPEBzrwrB0EtDwGNbPEA7dAjBwtddwGNbPEDc5AXB5dp3wGNbPEDqAgPBlqKIwGNbPEBWoP/AdQOVwGNbPEAwnfjAbgihwGNbPEC3APHAFqqswGNbPECdz+jAQeG3wGNbPEDuDuDABqfCwGNbPEAQxNbAv/TMwGNbPEC/9MzAEMTWwGNbPEAGp8LA7g7gwGNbPEBB4bfAnc/owGNbPEAWqqzAtwDxwGNbPEBuCKHAMJ34wGNbPEB1A5XAVqD/wGNbPECWoojA6gIDwWNbPEDl2nfA3OQFwWNbPEDC113AO3QIwWNbPEDQS0PAc68KwWNbPEBpRyjAIpUMwWNbPEA92wzAHiQOwWNbPEBhMOK/clsPwWNbPEDJHqq/WzoQwWNbPECOSGO/UcAQwWNbPEC5juO+Ae0QwWNbPEAiye+mUcAQwWNbPEC5juM+WzoQwWNbPECOSGM/clsPwWNbPEDJHqo/HiQOwWNbPEBhMOI/IpUMwWNbPEA92wxAc68KwWNbPEBpRyhAO3QIwWNbPEDQS0NA3OQFwWNbPEDC111A6gIDwWNbPEDl2ndAVqD/wGNbPECWoohAMJ34wGNbPEB1A5VAtwDxwGNbPEBuCKFAnc/owGNbPEAWqqxA7g7gwGNbPEBB4bdAEMTWwGNbPEAGp8JAv/TMwGNbPEC/9MxABqfCwGNbPEAQxNZAQeG3wGNbPEDuDuBAFqqswGNbPECdz+hAbgihwGNbPEC3APFAdQOVwGNbPEAwnfhAlqKIwGNbPEBWoP9A5dp3wGNbPEDqAgNBwtddwGNbPEDc5AVB0EtDwGNbPEA7dAhBaUcowGNbPEBzrwpBPdsMwGNbPEAilQxBYTDiv2NbPEAeJA5ByR6qv2NbPEByWw9Bjkhjv2NbPEBbOhBBuY7jvmNbPEBRwBBBAAAAAGNbPEAB7RBBAAAAAC0hIEAXCBNBLt3mPi0hIEDA2hJB/JVmPy0hIEDYUhJBlpesPy0hIECxcBFBvXnlPy0hIEDYNBBBL+cOQC0hIEAQoA5BXbkqQC0hIEBSswxBQiJGQC0hIEDObwpB9BBhQC0hIEDo1gdB2XR7QC0hIEA96gRB1Z6KQC0hIECZqwFBwC2XQC0hIED3OfxAbl+jQC0hIEAugfRAWiyvQC0hIECcMexAPY26QC0hIEBeUONAFXvFQC0hIEDv4tlAIO/PQC0hIEAg789A7+LZQC0hIEAVe8VAXlDjQC0hIEA9jbpAnDHsQC0hIEBaLK9ALoH0QC0hIEBuX6NA9zn8QC0hIEDALZdAmasBQS0hIEDVnopAPeoEQS0hIEDZdHtA6NYHQS0hIED0EGFAzm8KQS0hIEBCIkZAUrMMQS0hIEBduSpAEKAOQS0hIEAv5w5A2DQQQS0hIEC9eeU/sXARQS0hIECWl6w/2FISQS0hIED8lWY/wNoSQS0hIEAu3eY+FwgTQS0hIEANLiImwNoSQS0hIEAu3ea+2FISQS0hIED8lWa/sXARQS0hIECWl6y/2DQQQS0hIEC9eeW/EKAOQS0hIEAv5w7AUrMMQS0hIEBduSrAzm8KQS0hIEBCIkbA6NYHQS0hIED0EGHAPeoEQS0hIEDZdHvAmasBQS0hIEDVnorA9zn8QC0hIEDALZfALoH0QC0hIEBuX6PAnDHsQC0hIEBaLK/AXlDjQC0hIEA9jbrA7+LZQC0hIEAVe8XAIO/PQC0hIEAg78/AFXvFQC0hIEDv4tnAPY26QC0hIEBeUOPAWiyvQC0hIECcMezAbl+jQC0hIEAugfTAwC2XQC0hIED3OfzA1Z6KQC0hIECZqwHB2XR7QC0hIEA96gTB9BBhQC0hIEDo1gfBQiJGQC0hIEDObwrBXbkqQC0hIEBSswzBL+cOQC0hIEAQoA7BvXnlPy0hIEDYNBDBlpesPy0hIECxcBHB/JVmPy0hIEDYUhLBLt3mPi0hIEDA2hLBDS6iJi0hIEAXCBPBLt3mvi0hIEDA2hLB/JVmvy0hIEDYUhLBlpesvy0hIECxcBHBvXnlvy0hIEDYNBDBL+cOwC0hIEAQoA7BXbkqwC0hIEBSswzBQiJGwC0hIEDObwrB9BBhwC0hIEDo1gfB2XR7wC0hIEA96gTB1Z6KwC0hIECZqwHBwC2XwC0hIED3OfzAbl+jwC0hIEAugfTAWiyvwC0hIECcMezAPY26wC0hIEBeUOPAFXvFwC0hIEDv4tnAIO/PwC0hIEAg78/A7+LZwC0hIEAVe8XAXlDjwC0hIEA9jbrAnDHswC0hIEBaLK/ALoH0wC0hIEBuX6PA9zn8wC0hIEDALZfAmasBwS0hIEDVnorAPeoEwS0hIEDZdHvA6NYHwS0hIED0EGHAzm8KwS0hIEBCIkbAUrMMwS0hIEBduSrAEKAOwS0hIEAv5w7A2DQQwS0hIEC9eeW/sXARwS0hIECWl6y/2FISwS0hIED8lWa/wNoSwS0hIEAu3ea+FwgTwS0hIEATRfOmwNoSwS0hIEAu3eY+2FISwS0hIED8lWY/sXARwS0hIECWl6w/2DQQwS0hIEC9eeU/EKAOwS0hIEAv5w5AUrMMwS0hIEBduSpAzm8KwS0hIEBCIkZA6NYHwS0hIED0EGFAPeoEwS0hIEDZdHtAmasBwS0hIEDVnopA9zn8wC0hIEDALZdALoH0wC0hIEBuX6NAnDHswC0hIEBaLK9AXlDjwC0hIEA9jbpA7+LZwC0hIEAVe8VAIO/PwC0hIEAg789AFXvFwC0hIEDv4tlAPY26wC0hIEBeUONAWiyvwC0hIECcMexAbl+jwC0hIEAugfRAwC2XwC0hIED3OfxA1Z6KwC0hIECZqwFB2XR7wC0hIEA96gRB9BBhwC0hIEDo1gdBQiJGwC0hIEDObwpBXbkqwC0hIEBSswxBL+cOwC0hIEAQoA5BvXnlvy0hIEDYNBBBlpesvy0hIECxcBFB/JVmvy0hIEDYUhJBLt3mvi0hIEDA2hJBAAAAAC0hIEAXCBNBAAAAADqHA0BEyxRBmKHpPjqHA0BinRRBjFlpPzqHA0DYExRBMamuPzqHA0D8LhNB5jnoPzqHA0Ba7xFBsJ0QQDqHA0C3VRBBPcUsQDqHA0ARYw5BP4JIQDqHA0CbGAxBlMNjQDqHA0C9dwlBdHh+QDqHA0AZggZBMkiMQDqHA0B/OQNBpf2YQDqHA0DvP/9Av1SlQDqHA0B1b/dA4UWxQDqHA0BhBu9Ar8m8QDqHA0DjCeZAD9nHQDqHA0CIf9xAL23SQDqHA0AvbdJAiH/cQDqHA0AP2cdA4wnmQDqHA0CvybxAYQbvQDqHA0DhRbFAdW/3QDqHA0C/VKVA7z//QDqHA0Cl/ZhAfzkDQTqHA0AySIxAGYIGQTqHA0B0eH5AvXcJQTqHA0CUw2NAmxgMQTqHA0A/gkhAEWMOQTqHA0A9xSxAt1UQQTqHA0CwnRBAWu8RQTqHA0DmOeg//C4TQTqHA0Axqa4/2BMUQTqHA0CMWWk/Yp0UQTqHA0CYoek+RMsUQTqHA0C1HyQmYp0UQTqHA0CYoem+2BMUQTqHA0CMWWm//C4TQTqHA0Axqa6/Wu8RQTqHA0DmOei/t1UQQTqHA0CwnRDAEWMOQTqHA0A9xSzAmxgMQTqHA0A/gkjAvXcJQTqHA0CUw2PAGYIGQTqHA0B0eH7AfzkDQTqHA0AySIzA7z//QDqHA0Cl/ZjAdW/3QDqHA0C/VKXAYQbvQDqHA0DhRbHA4wnmQDqHA0CvybzAiH/cQDqHA0AP2cfAL23SQDqHA0AvbdLAD9nHQDqHA0CIf9zAr8m8QDqHA0DjCebA4UWxQDqHA0BhBu/Av1SlQDqHA0B1b/fApf2YQDqHA0DvP//AMkiMQDqHA0B/OQPBdHh+QDqHA0AZggbBlMNjQDqHA0C9dwnBP4JIQDqHA0CbGAzBPcUsQDqHA0ARYw7BsJ0QQDqHA0C3VRDB5jnoPzqHA0Ba7xHBMamuPzqHA0D8LhPBjFlpPzqHA0DYExTBmKHpPjqHA0BinRTBtR+kJjqHA0BEyxTBmKHpvjqHA0BinRTBjFlpvzqHA0DYExTBMamuvzqHA0D8LhPB5jnovzqHA0Ba7xHBsJ0QwDqHA0C3VRDBPcUswDqHA0ARYw7BP4JIwDqHA0CbGAzBlMNjwDqHA0C9dwnBdHh+wDqHA0AZggbBMkiMwDqHA0B/OQPBpf2YwDqHA0DvP//Av1SlwDqHA0B1b/fA4UWxwDqHA0BhBu/Ar8m8wDqHA0DjCebAD9nHwDqHA0CIf9zAL23SwDqHA0AvbdLAiH/cwDqHA0AP2cfA4wnmwDqHA0CvybzAYQbvwDqHA0DhRbHAdW/3wDqHA0C/VKXA7z//wDqHA0Cl/ZjAfzkDwTqHA0AySIzAGYIGwTqHA0B0eH7AvXcJwTqHA0CUw2PAmxgMwTqHA0A/gkjAEWMOwTqHA0A9xSzAt1UQwTqHA0CwnRDAWu8RwTqHA0DmOei//C4TwTqHA0Axqa6/2BMUwTqHA0CMWWm/Yp0UwTqHA0CYoem+RMsUwTqHA0CPL/amYp0UwTqHA0CYoek+2BMUwTqHA0CMWWk//C4TwTqHA0Axqa4/Wu8RwTqHA0DmOeg/t1UQwTqHA0CwnRBAEWMOwTqHA0A9xSxAmxgMwTqHA0A/gkhAvXcJwTqHA0CUw2NAGYIGwTqHA0B0eH5AfzkDwTqHA0AySIxA7z//wDqHA0Cl/ZhAdW/3wDqHA0C/VKVAYQbvwDqHA0DhRbFA4wnmwDqHA0CvybxAiH/cwDqHA0AP2cdAL23SwDqHA0AvbdJAD9nHwDqHA0CIf9xAr8m8wDqHA0DjCeZA4UWxwDqHA0BhBu9Av1SlwDqHA0B1b/dApf2YwDqHA0DvP/9AMkiMwDqHA0B/OQNBdHh+wDqHA0AZggZBlMNjwDqHA0C9dwlBP4JIwDqHA0CbGAxBPcUswDqHA0ARYw5BsJ0QwDqHA0C3VRBB5jnovzqHA0Ba7xFBMamuvzqHA0D8LhNBjFlpvzqHA0DYExRBmKHpvjqHA0BinRRBAAAAADqHA0BEyxRBAAAAAEY9zT95NRZBU9rrPkY9zT8nBxZBmJFrP0Y9zT9PfBVBX1KwP0Y9zT9GlRRBNG/qP0Y9zT+ZUhNBuv0RQEY9zT8StRFB0WkuQEY9zT+uvQ9BV2pKQEY9zT+kbQ1BB+5lQEY9zT9gxgpB9XGAQEY9zT+HyQdBsJ2NQEY9zT/weARBE3KaQEY9zT+l1gBBN+emQEY9zT/KyflAa/WyQEY9zT89TPFAQJW+QEY9zT/gOehAjb/JQEY9zT9KmN5AbG3UQEY9zT9sbdRASpjeQEY9zT+Nv8lA4DnoQEY9zT9Alb5APUzxQEY9zT9r9bJAysn5QEY9zT8356ZApdYAQUY9zT8TcppA8HgEQUY9zT+wnY1Ah8kHQUY9zT/1cYBAYMYKQUY9zT8H7mVApG0NQUY9zT9XakpArr0PQUY9zT/RaS5AErURQUY9zT+6/RFAmVITQUY9zT80b+o/RpUUQUY9zT9fUrA/T3wVQUY9zT+YkWs/JwcWQUY9zT9T2us+eTUWQUY9zT87ryUmJwcWQUY9zT9T2uu+T3wVQUY9zT+YkWu/RpUUQUY9zT9fUrC/mVITQUY9zT80b+q/ErURQUY9zT+6/RHArr0PQUY9zT/RaS7ApG0NQUY9zT9XakrAYMYKQUY9zT8H7mXAh8kHQUY9zT/1cYDA8HgEQUY9zT+wnY3ApdYAQUY9zT8TcprAysn5QEY9zT8356bAPUzxQEY9zT9r9bLA4DnoQEY9zT9Alb7ASpjeQEY9zT+Nv8nAbG3UQEY9zT9sbdTAjb/JQEY9zT9KmN7AQJW+QEY9zT/gOejAa/WyQEY9zT89TPHAN+emQEY9zT/KyfnAE3KaQEY9zT+l1gDBsJ2NQEY9zT/weATB9XGAQEY9zT+HyQfBB+5lQEY9zT9gxgrBV2pKQEY9zT+kbQ3B0WkuQEY9zT+uvQ/Buv0RQEY9zT8StRHBNG/qP0Y9zT+ZUhPBX1KwP0Y9zT9GlRTBmJFrP0Y9zT9PfBXBU9rrPkY9zT8nBxbBO6+lJkY9zT95NRbBU9rrvkY9zT8nBxbBmJFrv0Y9zT9PfBXBX1Kwv0Y9zT9GlRTBNG/qv0Y9zT+ZUhPBuv0RwEY9zT8StRHB0WkuwEY9zT+uvQ/BV2pKwEY9zT+kbQ3BB+5lwEY9zT9gxgrB9XGAwEY9zT+HyQfBsJ2NwEY9zT/weATBE3KawEY9zT+l1gDBN+emwEY9zT/KyfnAa/WywEY9zT89TPHAQJW+wEY9zT/gOejAjb/JwEY9zT9KmN7AbG3UwEY9zT9sbdTASpjewEY9zT+Nv8nA4DnowEY9zT9Alb7APUzxwEY9zT9r9bLAysn5wEY9zT8356bApdYAwUY9zT8TcprA8HgEwUY9zT+wnY3Ah8kHwUY9zT/1cYDAYMYKwUY9zT8H7mXApG0NwUY9zT9XakrArr0PwUY9zT/RaS7AErURwUY9zT+6/RHAmVITwUY9zT80b+q/RpUUwUY9zT9fUrC/T3wVwUY9zT+YkWu/JwcWwUY9zT9T2uu+eTUWwUY9zT/ahvimJwcWwUY9zT9T2us+T3wVwUY9zT+YkWs/RpUUwUY9zT9fUrA/mVITwUY9zT80b+o/ErURwUY9zT+6/RFArr0PwUY9zT/RaS5ApG0NwUY9zT9XakpAYMYKwUY9zT8H7mVAh8kHwUY9zT/1cYBA8HgEwUY9zT+wnY1ApdYAwUY9zT8TcppAysn5wEY9zT8356ZAPUzxwEY9zT9r9bJA4DnowEY9zT9Alb5ASpjewEY9zT+Nv8lAbG3UwEY9zT9sbdRAjb/JwEY9zT9KmN5AQJW+wEY9zT/gOehAa/WywEY9zT89TPFAN+emwEY9zT/KyflAE3KawEY9zT+l1gBBsJ2NwEY9zT/weARB9XGAwEY9zT+HyQdBB+5lwEY9zT9gxgpBV2pKwEY9zT+kbQ1B0WkuwEY9zT+uvQ9Buv0RwEY9zT8StRFBNG/qv0Y9zT+ZUhNBX1Kwv0Y9zT9GlRRBmJFrv0Y9zT9PfBVBU9rrvkY9zT8nBxZBAAAAAEY9zT95NRZBAAAAAGHxkj/gRRdBCobtPmHxkj86FxdByzxtP2Hxkj9mixZBIZKxP2Hxkj+6ohVBWRjsP2Hxkj/EXRRBewYTQGHxkj9PvRJBHKYvQGHxkj9awhBBa9lLQGHxkj8ebg5BAI9nQGHxkj8LwgtB5FqBQGHxkj/HvwhBgZ6OQGHxkj8taQVBKIqbQGHxkj9KwAFB4xWoQGHxkj/GjvtA9Dm0QGHxkj/UAfNA3+6/QGHxkj8C3+lAbC3LQGHxkj/2K+BAqO7VQGHxkj+o7tVA9ivgQGHxkj9sLctAAt/pQGHxkj/f7r9A1AHzQGHxkj/0ObRAxo77QGHxkj/jFahASsABQWHxkj8oiptALWkFQWHxkj+Bno5Ax78IQWHxkj/kWoFAC8ILQWHxkj8Aj2dAHm4OQWHxkj9r2UtAWsIQQWHxkj8cpi9AT70SQWHxkj97BhNAxF0UQWHxkj9ZGOw/uqIVQWHxkj8hkrE/ZosWQWHxkj/LPG0/OhcXQWHxkj8Khu0+4EUXQWHxkj+z2yYmOhcXQWHxkj8Khu2+ZosWQWHxkj/LPG2/uqIVQWHxkj8hkrG/xF0UQWHxkj9ZGOy/T70SQWHxkj97BhPAWsIQQWHxkj8cpi/AHm4OQWHxkj9r2UvAC8ILQWHxkj8Aj2fAx78IQWHxkj/kWoHALWkFQWHxkj+Bno7ASsABQWHxkj8oipvAxo77QGHxkj/jFajA1AHzQGHxkj/0ObTAAt/pQGHxkj/f7r/A9ivgQGHxkj9sLcvAqO7VQGHxkj+o7tXAbC3LQGHxkj/2K+DA3+6/QGHxkj8C3+nA9Dm0QGHxkj/UAfPA4xWoQGHxkj/GjvvAKIqbQGHxkj9KwAHBgZ6OQGHxkj8taQXB5FqBQGHxkj/HvwjBAI9nQGHxkj8LwgvBa9lLQGHxkj8ebg7BHKYvQGHxkj9awhDBewYTQGHxkj9PvRLBWRjsP2Hxkj/EXRTBIZKxP2Hxkj+6ohXByzxtP2Hxkj9mixbBCobtPmHxkj86FxfBs9umJmHxkj/gRRfBCobtvmHxkj86FxfByzxtv2Hxkj9mixbBIZKxv2Hxkj+6ohXBWRjsv2Hxkj/EXRTBewYTwGHxkj9PvRLBHKYvwGHxkj9awhDBa9lLwGHxkj8ebg7BAI9nwGHxkj8LwgvB5FqBwGHxkj/HvwjBgZ6OwGHxkj8taQXBKIqbwGHxkj9KwAHB4xWowGHxkj/GjvvA9Dm0wGHxkj/UAfPA3+6/wGHxkj8C3+nAbC3LwGHxkj/2K+DAqO7VwGHxkj+o7tXA9ivgwGHxkj9sLcvAAt/pwGHxkj/f7r/A1AHzwGHxkj/0ObTAxo77wGHxkj/jFajASsABwWHxkj8oipvALWkFwWHxkj+Bno7Ax78IwWHxkj/kWoHAC8ILwWHxkj8Aj2fAHm4OwWHxkj9r2UvAWsIQwWHxkj8cpi/AT70SwWHxkj97BhPAxF0UwWHxkj9ZGOy/uqIVwWHxkj8hkrG/ZosWwWHxkj/LPG2/OhcXwWHxkj8Khu2+4EUXwWHxkj+MSfqmOhcXwWHxkj8Khu0+ZosWwWHxkj/LPG0/uqIVwWHxkj8hkrE/xF0UwWHxkj9ZGOw/T70SwWHxkj97BhNAWsIQwWHxkj8cpi9AHm4OwWHxkj9r2UtAC8ILwWHxkj8Aj2dAx78IwWHxkj/kWoFALWkFwWHxkj+Bno5ASsABwWHxkj8oiptAxo77wGHxkj/jFahA1AHzwGHxkj/0ObRAAt/pwGHxkj/f7r9A9ivgwGHxkj9sLctAqO7VwGHxkj+o7tVAbC3LwGHxkj/2K+BA3+6/wGHxkj8C3+lA9Dm0wGHxkj/UAfNA4xWowGHxkj/GjvtAKIqbwGHxkj9KwAFBgZ6OwGHxkj8taQVB5FqBwGHxkj/HvwhBAI9nwGHxkj8LwgtBa9lLwGHxkj8ebg5BHKYvwGHxkj9awhBBewYTwGHxkj9PvRJBWRjsv2Hxkj/EXRRBIZKxv2Hxkj+6ohVByzxtv2Hxkj9mixZBCobtvmHxkj86FxdBAAAAAGHxkj/gRRdBAAAAAEKbMD/V+xdBvqPuPkKbMD/3zBdBJlpuP0KbMD96QBdBt2eyP0KbMD+2VhZBVTTtP0KbMD86EBVBVLcTQEKbMD/QbRNBY3kwQEKbMD95cBFBns5MQEKbMD9wGQ9BiKVoQEKbMD8magxBe/aBQEKbMD9DZAlBDUqPQEKbMD+lCQZBP0WcQEKbMD9cXAJBEOCoQEKbMD9bvfxAvRK1QEKbMD8gJvRAvNXAQEKbMD9S+OpAzyHMQEKbMD+bOeFA++/WQEKbMD/779ZAmznhQEKbMD/PIcxAUvjqQEKbMD+81cBAICb0QEKbMD+9ErVAW738QEKbMD8Q4KhAXFwCQUKbMD8/RZxApQkGQUKbMD8NSo9AQ2QJQUKbMD979oFAJmoMQUKbMD+IpWhAcBkPQUKbMD+ezkxAeXARQUKbMD9jeTBA0G0TQUKbMD9UtxNAOhAVQUKbMD9VNO0/tlYWQUKbMD+3Z7I/ekAXQUKbMD8mWm4/98wXQUKbMD++o+4+1fsXQUKbMD9mpCcm98wXQUKbMD++o+6+ekAXQUKbMD8mWm6/tlYWQUKbMD+3Z7K/OhAVQUKbMD9VNO2/0G0TQUKbMD9UtxPAeXARQUKbMD9jeTDAcBkPQUKbMD+ezkzAJmoMQUKbMD+IpWjAQ2QJQUKbMD979oHApQkGQUKbMD8NSo/AXFwCQUKbMD8/RZzAW738QEKbMD8Q4KjAICb0QEKbMD+9ErXAUvjqQEKbMD+81cDAmznhQEKbMD/PIczA++/WQEKbMD/779bAzyHMQEKbMD+bOeHAvNXAQEKbMD9S+OrAvRK1QEKbMD8gJvTAEOCoQEKbMD9bvfzAP0WcQEKbMD9cXALBDUqPQEKbMD+lCQbBe/aBQEKbMD9DZAnBiKVoQEKbMD8magzBns5MQEKbMD9wGQ/BY3kwQEKbMD95cBHBVLcTQEKbMD/QbRPBVTTtP0KbMD86EBXBt2eyP0KbMD+2VhbBJlpuP0KbMD96QBfBvqPuPkKbMD/3zBfBZqSnJkKbMD/V+xfBvqPuvkKbMD/3zBfBJlpuv0KbMD96QBfBt2eyv0KbMD+2VhbBVTTtv0KbMD86EBXBVLcTwEKbMD/QbRPBY3kwwEKbMD95cBHBns5MwEKbMD9wGQ/BiKVowEKbMD8magzBe/aBwEKbMD9DZAnBDUqPwEKbMD+lCQbBP0WcwEKbMD9cXALBEOCowEKbMD9bvfzAvRK1wEKbMD8gJvTAvNXAwEKbMD9S+OrAzyHMwEKbMD+bOeHA++/WwEKbMD/779bAmznhwEKbMD/PIczAUvjqwEKbMD+81cDAICb0wEKbMD+9ErXAW738wEKbMD8Q4KjAXFwCwUKbMD8/RZzApQkGwUKbMD8NSo/AQ2QJwUKbMD979oHAJmoMwUKbMD+IpWjAcBkPwUKbMD+ezkzAeXARwUKbMD9jeTDA0G0TwUKbMD9UtxPAOhAVwUKbMD9VNO2/tlYWwUKbMD+3Z7K/ekAXwUKbMD8mWm6/98wXwUKbMD++o+6+1fsXwUKbMD+advum98wXwUKbMD++o+4+ekAXwUKbMD8mWm4/tlYWwUKbMD+3Z7I/OhAVwUKbMD9VNO0/0G0TwUKbMD9UtxNAeXARwUKbMD9jeTBAcBkPwUKbMD+ezkxAJmoMwUKbMD+IpWhAQ2QJwUKbMD979oFApQkGwUKbMD8NSo9AXFwCwUKbMD8/RZxAW738wEKbMD8Q4KhAICb0wEKbMD+9ErVAUvjqwEKbMD+81cBAmznhwEKbMD/PIcxA++/WwEKbMD/779ZAzyHMwEKbMD+bOeFAvNXAwEKbMD9S+OpAvRK1wEKbMD8gJvRAEOCowEKbMD9bvfxAP0WcwEKbMD9cXAJBDUqPwEKbMD+lCQZBe/aBwEKbMD9DZAlBiKVowEKbMD8magxBns5MwEKbMD9wGQ9BY3kwwEKbMD95cBFBVLcTwEKbMD/QbRNBVTTtv0KbMD86EBVBt2eyv0KbMD+2VhZBJlpuv0KbMD96QBdBvqPuvkKbMD/3zBdBAAAAAEKbMD/V+xdBAAAAAKSoaz7qVhhBwTLvPqSoaz7wJxhB/+huP6Soaz4gmxdBotKyP6Soaz7PsBZBfMLtP6Soaz6PaRVB2g8UQKSoaz4qxhNBJuMwQKSoaz6ixxFBW0lNQKSoaz4ybw9B8zBpQKSoaz5MvgxBXkSCQKSoaz6atglB7J+PQKSoaz75WQZB5aKcQKSoaz58qgJBRUWpQKSoaz7TVP1AQX+1QKSoaz5xuPRATEnBQKSoaz4ihetAJJzMQKSoaz6UwOFAy3DXQKSoaz7LcNdAlMDhQKSoaz4knMxAIoXrQKSoaz5MScFAcbj0QKSoaz5Bf7VA01T9QKSoaz5FRalAfKoCQaSoaz7lopxA+VkGQaSoaz7sn49AmrYJQaSoaz5eRIJATL4MQaSoaz7zMGlAMm8PQaSoaz5bSU1AoscRQaSoaz4m4zBAKsYTQaSoaz7aDxRAj2kVQaSoaz58wu0/z7AWQaSoaz6i0rI/IJsXQaSoaz7/6G4/8CcYQaSoaz7BMu8+6lYYQaSoaz7eCCgm8CcYQaSoaz7BMu++IJsXQaSoaz7/6G6/z7AWQaSoaz6i0rK/j2kVQaSoaz58wu2/KsYTQaSoaz7aDxTAoscRQaSoaz4m4zDAMm8PQaSoaz5bSU3ATL4MQaSoaz7zMGnAmrYJQaSoaz5eRILA+VkGQaSoaz7sn4/AfKoCQaSoaz7lopzA01T9QKSoaz5FRanAcbj0QKSoaz5Bf7XAIoXrQKSoaz5MScHAlMDhQKSoaz4knMzAy3DXQKSoaz7LcNfAJJzMQKSoaz6UwOHATEnBQKSoaz4ihevAQX+1QKSoaz5xuPTARUWpQKSoaz7TVP3A5aKcQKSoaz58qgLB7J+PQKSoaz75WQbBXkSCQKSoaz6atgnB8zBpQKSoaz5MvgzBW0lNQKSoaz4ybw/BJuMwQKSoaz6ixxHB2g8UQKSoaz4qxhPBfMLtP6Soaz6PaRXBotKyP6Soaz7PsBbB/+huP6Soaz4gmxfBwTLvPqSoaz7wJxjB3gioJqSoaz7qVhjBwTLvvqSoaz7wJxjB/+huv6Soaz4gmxfBotKyv6Soaz7PsBbBfMLtv6Soaz6PaRXB2g8UwKSoaz4qxhPBJuMwwKSoaz6ixxHBW0lNwKSoaz4ybw/B8zBpwKSoaz5MvgzBXkSCwKSoaz6atgnB7J+PwKSoaz75WQbB5aKcwKSoaz58qgLBRUWpwKSoaz7TVP3AQX+1wKSoaz5xuPTATEnBwKSoaz4ihevAJJzMwKSoaz6UwOHAy3DXwKSoaz7LcNfAlMDhwKSoaz4knMzAIoXrwKSoaz5MScHAcbj0wKSoaz5Bf7XA01T9wKSoaz5FRanAfKoCwaSoaz7lopzA+VkGwaSoaz7sn4/AmrYJwaSoaz5eRILATL4MwaSoaz7zMGnAMm8PwaSoaz5bSU3AoscRwaSoaz4m4zDAKsYTwaSoaz7aDxTAj2kVwaSoaz58wu2/z7AWwaSoaz6i0rK/IJsXwaSoaz7/6G6/8CcYwaSoaz7BMu++6lYYwaSoaz5NDfym8CcYwaSoaz7BMu8+IJsXwaSoaz7/6G4/z7AWwaSoaz6i0rI/j2kVwaSoaz58wu0/KsYTwaSoaz7aDxRAoscRwaSoaz4m4zBAMm8PwaSoaz5bSU1ATL4MwaSoaz7zMGlAmrYJwaSoaz5eRIJA+VkGwaSoaz7sn49AfKoCwaSoaz7lopxA01T9wKSoaz5FRalAcbj0wKSoaz5Bf7VAIoXrwKSoaz5MScFAlMDhwKSoaz4knMxAy3DXwKSoaz7LcNdAJJzMwKSoaz6UwOFATEnBwKSoaz4ihetAQX+1wKSoaz5xuPRARUWpwKSoaz7TVP1A5aKcwKSoaz58qgJB7J+PwKSoaz75WQZBXkSCwKSoaz6atglB8zBpwKSoaz5MvgxBW0lNwKSoaz4ybw9BJuMwwKSoaz6ixxFB2g8UwKSoaz4qxhNBfMLtv6Soaz6PaRVBotKyv6Soaz7PsBZB/+huv6Soaz4gmxdBwTLvvqSoaz7wJxhBAAAAAKSoaz7qVhhBAAAAAN+oa77qVhhBwTLvPt+oa77wJxhB/+huP9+oa74gmxdBotKyP9+oa77PsBZBfMLtP9+oa76PaRVB2g8UQN+oa74qxhNBJuMwQN+oa76ixxFBW0lNQN+oa74ybw9B8zBpQN+oa75MvgxBXkSCQN+oa76atglB7J+PQN+oa775WQZB5aKcQN+oa758qgJBRUWpQN+oa77TVP1AQX+1QN+oa75xuPRATEnBQN+oa74ihetAJJzMQN+oa76UwOFAy3DXQN+oa77LcNdAlMDhQN+oa74knMxAIoXrQN+oa75MScFAcbj0QN+oa75Bf7VA01T9QN+oa75FRalAfKoCQd+oa77lopxA+VkGQd+oa77sn49AmrYJQd+oa75eRIJATL4MQd+oa77zMGlAMm8PQd+oa75bSU1AoscRQd+oa74m4zBAKsYTQd+oa77aDxRAj2kVQd+oa758wu0/z7AWQd+oa76i0rI/IJsXQd+oa77/6G4/8CcYQd+oa77BMu8+6lYYQd+oa77eCCgm8CcYQd+oa77BMu++IJsXQd+oa77/6G6/z7AWQd+oa76i0rK/j2kVQd+oa758wu2/KsYTQd+oa77aDxTAoscRQd+oa74m4zDAMm8PQd+oa75bSU3ATL4MQd+oa77zMGnAmrYJQd+oa75eRILA+VkGQd+oa77sn4/AfKoCQd+oa77lopzA01T9QN+oa75FRanAcbj0QN+oa75Bf7XAIoXrQN+oa75MScHAlMDhQN+oa74knMzAy3DXQN+oa77LcNfAJJzMQN+oa76UwOHATEnBQN+oa74ihevAQX+1QN+oa75xuPTARUWpQN+oa77TVP3A5aKcQN+oa758qgLB7J+PQN+oa775WQbBXkSCQN+oa76atgnB8zBpQN+oa75MvgzBW0lNQN+oa74ybw/BJuMwQN+oa76ixxHB2g8UQN+oa74qxhPBfMLtP9+oa76PaRXBotKyP9+oa77PsBbB/+huP9+oa74gmxfBwTLvPt+oa77wJxjB3gioJt+oa77qVhjBwTLvvt+oa77wJxjB/+huv9+oa74gmxfBotKyv9+oa77PsBbBfMLtv9+oa76PaRXB2g8UwN+oa74qxhPBJuMwwN+oa76ixxHBW0lNwN+oa74ybw/B8zBpwN+oa75MvgzBXkSCwN+oa76atgnB7J+PwN+oa775WQbB5aKcwN+oa758qgLBRUWpwN+oa77TVP3AQX+1wN+oa75xuPTATEnBwN+oa74ihevAJJzMwN+oa76UwOHAy3DXwN+oa77LcNfAlMDhwN+oa74knMzAIoXrwN+oa75MScHAcbj0wN+oa75Bf7XA01T9wN+oa75FRanAfKoCwd+oa77lopzA+VkGwd+oa77sn4/AmrYJwd+oa75eRILATL4Mwd+oa77zMGnAMm8Pwd+oa75bSU3AoscRwd+oa74m4zDAKsYTwd+oa77aDxTAj2kVwd+oa758wu2/z7AWwd+oa76i0rK/IJsXwd+oa77/6G6/8CcYwd+oa77BMu++6lYYwd+oa75NDfym8CcYwd+oa77BMu8+IJsXwd+oa77/6G4/z7AWwd+oa76i0rI/j2kVwd+oa758wu0/KsYTwd+oa77aDxRAoscRwd+oa74m4zBAMm8Pwd+oa75bSU1ATL4Mwd+oa77zMGlAmrYJwd+oa75eRIJA+VkGwd+oa77sn49AfKoCwd+oa77lopxA01T9wN+oa75FRalAcbj0wN+oa75Bf7VAIoXrwN+oa75MScFAlMDhwN+oa74knMxAy3DXwN+oa77LcNdAJJzMwN+oa76UwOFATEnBwN+oa74ihetAQX+1wN+oa75xuPRARUWpwN+oa77TVP1A5aKcwN+oa758qgJB7J+PwN+oa775WQZBXkSCwN+oa76atglB8zBpwN+oa75MvgxBW0lNwN+oa74ybw9BJuMwwN+oa76ixxFB2g8UwN+oa74qxhNBfMLtv9+oa76PaRVBotKyv9+oa77PsBZB/+huv9+oa74gmxdBwTLvvt+oa77wJxhBAAAAAN+oa77qVhhBAAAAAFCbML/V+xdBvqPuPlCbML/3zBdBJlpuP1CbML96QBdBt2eyP1CbML+2VhZBVTTtP1CbML86EBVBVLcTQFCbML/QbRNBY3kwQFCbML95cBFBns5MQFCbML9wGQ9BiKVoQFCbML8magxBe/aBQFCbML9DZAlBDUqPQFCbML+lCQZBP0WcQFCbML9cXAJBEOCoQFCbML9bvfxAvRK1QFCbML8gJvRAvNXAQFCbML9S+OpAzyHMQFCbML+bOeFA++/WQFCbML/779ZAmznhQFCbML/PIcxAUvjqQFCbML+81cBAICb0QFCbML+9ErVAW738QFCbML8Q4KhAXFwCQVCbML8/RZxApQkGQVCbML8NSo9AQ2QJQVCbML979oFAJmoMQVCbML+IpWhAcBkPQVCbML+ezkxAeXARQVCbML9jeTBA0G0TQVCbML9UtxNAOhAVQVCbML9VNO0/tlYWQVCbML+3Z7I/ekAXQVCbML8mWm4/98wXQVCbML++o+4+1fsXQVCbML9mpCcm98wXQVCbML++o+6+ekAXQVCbML8mWm6/tlYWQVCbML+3Z7K/OhAVQVCbML9VNO2/0G0TQVCbML9UtxPAeXARQVCbML9jeTDAcBkPQVCbML+ezkzAJmoMQVCbML+IpWjAQ2QJQVCbML979oHApQkGQVCbML8NSo/AXFwCQVCbML8/RZzAW738QFCbML8Q4KjAICb0QFCbML+9ErXAUvjqQFCbML+81cDAmznhQFCbML/PIczA++/WQFCbML/779bAzyHMQFCbML+bOeHAvNXAQFCbML9S+OrAvRK1QFCbML8gJvTAEOCoQFCbML9bvfzAP0WcQFCbML9cXALBDUqPQFCbML+lCQbBe/aBQFCbML9DZAnBiKVoQFCbML8magzBns5MQFCbML9wGQ/BY3kwQFCbML95cBHBVLcTQFCbML/QbRPBVTTtP1CbML86EBXBt2eyP1CbML+2VhbBJlpuP1CbML96QBfBvqPuPlCbML/3zBfBZqSnJlCbML/V+xfBvqPuvlCbML/3zBfBJlpuv1CbML96QBfBt2eyv1CbML+2VhbBVTTtv1CbML86EBXBVLcTwFCbML/QbRPBY3kwwFCbML95cBHBns5MwFCbML9wGQ/BiKVowFCbML8magzBe/aBwFCbML9DZAnBDUqPwFCbML+lCQbBP0WcwFCbML9cXALBEOCowFCbML9bvfzAvRK1wFCbML8gJvTAvNXAwFCbML9S+OrAzyHMwFCbML+bOeHA++/WwFCbML/779bAmznhwFCbML/PIczAUvjqwFCbML+81cDAICb0wFCbML+9ErXAW738wFCbML8Q4KjAXFwCwVCbML8/RZzApQkGwVCbML8NSo/AQ2QJwVCbML979oHAJmoMwVCbML+IpWjAcBkPwVCbML+ezkzAeXARwVCbML9jeTDA0G0TwVCbML9UtxPAOhAVwVCbML9VNO2/tlYWwVCbML+3Z7K/ekAXwVCbML8mWm6/98wXwVCbML++o+6+1fsXwVCbML+advum98wXwVCbML++o+4+ekAXwVCbML8mWm4/tlYWwVCbML+3Z7I/OhAVwVCbML9VNO0/0G0TwVCbML9UtxNAeXARwVCbML9jeTBAcBkPwVCbML+ezkxAJmoMwVCbML+IpWhAQ2QJwVCbML979oFApQkGwVCbML8NSo9AXFwCwVCbML8/RZxAW738wFCbML8Q4KhAICb0wFCbML+9ErVAUvjqwFCbML+81cBAmznhwFCbML/PIcxA++/WwFCbML/779ZAzyHMwFCbML+bOeFA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0WkuQE09zb+uvQ9BV2pKQE09zb+kbQ1BB+5lQE09zb9gxgpB9XGAQE09zb+HyQdBsJ2NQE09zb/weARBE3KaQE09zb+l1gBBN+emQE09zb/KyflAa/WyQE09zb89TPFAQJW+QE09zb/gOehAjb/JQE09zb9KmN5AbG3UQE09zb9sbdRASpjeQE09zb+Nv8lA4DnoQE09zb9Alb5APUzxQE09zb9r9bJAysn5QE09zb8356ZApdYAQU09zb8TcppA8HgEQU09zb+wnY1Ah8kHQU09zb/1cYBAYMYKQU09zb8H7mVApG0NQU09zb9XakpArr0PQU09zb/RaS5AErURQU09zb+6/RFAmVITQU09zb80b+o/RpUUQU09zb9fUrA/T3wVQU09zb+YkWs/JwcWQU09zb9T2us+eTUWQU09zb87ryUmJwcWQU09zb9T2uu+T3wVQU09zb+YkWu/RpUUQU09zb9fUrC/mVITQU09zb80b+q/ErURQU09zb+6/RHArr0PQU09zb/RaS7ApG0NQU09zb9XakrAYMYKQU09zb8H7mXAh8kHQU09zb/1cYDA8HgEQU09zb+wnY3ApdYAQU09zb8TcprAysn5QE09zb8356bAPUzxQE09zb9r9bLA4DnoQE09zb9Alb7ASpjeQE09zb+Nv8nAbG3UQE09zb9sbdTAjb/JQE09zb9KmN7AQJW+QE09zb/gOejAa/WyQE09zb89TPHAN+emQE09zb/KyfnAE3KaQE09zb+l1gDBsJ2NQE09zb/weATB9XGAQE09zb+HyQfBB+5lQE09zb9gxgrBV2pKQE09zb+kbQ3B0WkuQE09zb+uvQ/Buv0RQE09zb8StRHBNG/qP009zb+ZUhPBX1KwP009zb9GlRTBmJFrP009zb9PfBXBU9rrPk09zb8nBxbBO6+lJk09zb95NRbBU9rrvk09zb8nBxbBmJFrv009zb9PfBXBX1Kwv009zb9GlRTBNG/qv009zb+ZUhPBuv0RwE09zb8StRHB0WkuwE09zb+uvQ/BV2pKwE09zb+kbQ3BB+5lwE09zb9gxgrB9XGAwE09zb+HyQfBsJ2NwE09zb/weATBE3KawE09zb+l1gDBN+emwE09zb/KyfnAa/WywE09zb89TPHAQJW+wE09zb/gOejAjb/JwE09zb9KmN7AbG3UwE09zb9sbdTA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v1ScP7oclMC/vANB59rPP7oclMCongJBbnABQLoclMADMAFBlaMaQLoclMBj4/5AXnczQLoclMCNyfpAd9xLQLoclMAMFfZA18NjQLoclMDJyPBAvx57QLoclMAF6OpAZO+IQLoclMBiduRA9PqTQLoclMDZd91AQqueQLoclMC68NVAtPmoQLoclMCq5c1A8N+yQLoclMCeW8VA21e8QLoclMDbV7xAnlvFQLoclMDw37JAquXNQLoclMC0+ahAuvDVQLoclMBCq55A2XfdQLoclMD0+pNAYnbkQLoclMBk74hABejqQLoclMC/HntAycjwQLoclMDXw2NADBX2QLoclMB33EtAjcn6QLoclMBedzNAY+P+QLoclMCVoxpAAzABQboclMBucAFAqJ4CQboclMDn2s8/v7wDQboclMC/VJw/lokEQboclMBd3FA/sQQFQboclMDZHNE+wi0FQboclMBZ5hImsQQFQboclMDZHNG+lokEQboclMBd3FC/v7wDQboclMC/VJy/qJ4CQboclMDn2s+/AzABQboclMBucAHAY+P+QLoclMCVoxrAjcn6QLoclMBedzPADBX2QLoclMB33EvAycjwQLoclMDXw2PABejqQLoclMC/HnvAYnbkQLoclMBk74jA2XfdQLoclMD0+pPAuvDVQLoclMBCq57AquXNQLoclMC0+ajAnlvFQLoclMDw37LA21e8QLoclMDbV7zA8N+yQLoclMCeW8XAtPmoQLoclMCq5c3AQqueQLoclMC68NXA9PqTQLoclMDZd93AZO+IQLoclMBiduTAvx57QLoclMAF6OrA18NjQLoclMDJyPDAd9xLQLoclMAMFfbAXnczQLoclMCNyfrAlaMaQLoclMBj4/7AbnABQLoclMADMAHB59rPP7oclMCongLBv1ScP7oclMC/vAPBXdxQP7oclMCWiQTB2RzRProclMCxBAXBWeaSJroclMDCLQXB2RzRvroclMCxBAXBXdxQv7oclMCWiQTBv1Scv7oclMC/vAPB59rPv7oclMCongLBbnABwLoclMADMAHBlaMawLoclMBj4/7AXnczwLoclMCNyfrAd9xLwLoclMAMFfbA18NjwLoclMDJyPDAvx57wLoclMAF6OrAZO+IwLoclMBiduTA9PqTwLoclMDZd93AQquewLoclMC68NXAtPmowLoclMCq5c3A8N+ywLoclMCeW8XA21e8wLoclMDbV7zAnlvFwLoclMDw37LAquXNwLoclMC0+ajAuvDVwLoclMBCq57A2XfdwLoclMD0+pPAYnbkwLoclMBk74jABejqwLoclMC/HnvAycjwwLoclMDXw2PADBX2wLoclMB33EvAjcn6wLoclMBedzPAY+P+wLoclMCVoxrAAzABwboclMBucAHAqJ4CwboclMDn2s+/v7wDwboclMC/VJy/lokEwboclMBd3FC/sQQFwboclMDZHNG+wi0FwboclMCGWdymsQQFwboclMDZHNE+lokEwboclMBd3FA/v7wDwboclMC/VJw/qJ4CwboclMDn2s8/AzABwboclMBucAFAY+P+wLoclMCVoxpAjcn6wLoclMBedzNADBX2wLoclMB33EtAycjwwLoclMDXw2NABejqwLoclMC/HntAYnbkwLoclMBk74hA2XfdwLoclMD0+pNAuvDVwLoclMBCq55AquXNwLoclMC0+ahAnlvFwLoclMDw37JA21e8wLoclMDbV7xA8N+ywLoclMCeW8VAtPmowLoclMCq5c1AQquewLoclMC68NVA9PqTwLoclMDZd91AZO+IwLoclMBiduRAvx57wLoclMAF6OpA18NjwLoclMDJyPBAd9xLwLoclMAMFfZAXnczwLoclMCNyfpAlaMawLoclMBj4/5AbnABwLoclMADMAFB59rPv7oclMCongJBv1Scv7oclMC/vANBXdxQv7oclMCWiQRB2RzRvroclMCxBAVBAAAAALoclMDCLQVBAAAAANHOoMAAcgFBJkDLPtHOoMAVSgFBeQFLP9HOoMBv0gBB1vKXP9HOoMBVCwBBOgfKP9HOoMCG6v1ABJ/7P9HOoMDLIftA0E0WQNHOoMAvvvdAbm8uQNHOoMDGwfNAdCVGQNHOoMAKL+9ASWFdQNHOoMDMCOpAlhR0QNHOoMA3UuRArRiFQNHOoMDTDt5A+tSPQNHOoMB7QtdAkTiaQNHOoMBh8c9ADD2kQNHOoMAKIMhAPtytQNHOoMBI079ANhC3QNHOoMA2ELdASNO/QNHOoMA+3K1ACiDIQNHOoMAMPaRAYfHPQNHOoMCROJpAe0LXQNHOoMD61I9A0w7eQNHOoMCtGIVAN1LkQNHOoMCWFHRAzAjqQNHOoMBJYV1A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+vc/wMMgrcAIuudAMv8owMMgrcBEKOxAL54RwMMgrcDbBPBAvsbzv8MgrcBrTfNAxLrDv8MgrcDu//VAFDaTv8MgrcC7GvhANq1Ev8MgrcCEnPlA7+nEvsMgrcBbhPpAAAAAAMMgrcC00fpAAAAAADELucBvKfJA+x2+PjELucDC3vFAWuM9PzELucDq/vBATSGOPzELucByiu9ARvm8PzELucA/gu1AtFzrPzELucCS5+pAfJcMQDELucAEvOdA6ykjQDELucCMAeRAuFc5QDELucB3ut9ANhNPQDELucBn6dpAAU9kQDELucBUkdVA/f14QDELucCKtc9AtYmGQDELucCoWclAckGQQDELucCYgcJAOKCZQDELucCSMbtAP6CiQDELucAbbrNA+jurQDELucD6O6tAG26zQDELucA/oKJAkjG7QDELucA4oJlAmIHCQDELucByQZBAqFnJQDELucC1iYZAirXPQDELucD9/XhAVJHVQDELucABT2RAZ+naQDELucA2E09Ad7rfQDELucC4VzlAjAHkQDELucDrKSNABLznQDELucB8lwxAkufqQDELucC0XOs/P4LtQDELucBG+bw/corvQDELucBNIY4/6v7wQDELucBa4z0/wt7xQDELucD7Hb4+bynyQDELucA6jgUmwt7xQDELucD7Hb6+6v7wQDELucBa4z2/corvQDELucBNIY6/P4LtQDELucBG+by/kufqQDELucC0XOu/BLznQDELucB8lwzAjAHkQDELucDrKSPAd7rfQDELucC4VznAZ+naQDELucA2E0/AVJHVQDELucABT2TAirXPQDELucD9/XjAqFnJQDELucC1iYbAmIHCQDELucByQZDAkjG7QDELucA4oJnAG26zQDELucA/oKLA+jurQDELucD6O6vAP6CiQDELucAbbrPAOKCZQDELucCSMbvAckGQQDELucCYgcLAtYmGQDELucCoWcnA/f14QDELucCKtc/AAU9kQDELucBUkdXANhNPQDELucBn6drAuFc5QDELucB3ut/A6ykjQDELucCMAeTAfJcMQDELucAEvOfAtFzrPzELucCS5+rARvm8PzELucA/gu3ATSGOPzELucByiu/AWuM9PzELucDq/vDA+x2+PjELucDC3vHAOo6FJjELucBvKfLA+x2+vjELucDC3vHAWuM9vzELucDq/vDATSGOvzELucByiu/ARvm8vzELucA/gu3AtFzrvzELucCS5+rAfJcMwDELucAEvOfA6ykjwDELucCMAeTAuFc5wDELucB3ut/ANhNPwDELucBn6drAAU9kwDELucBUkdXA/f14wDELucCKtc/AtYmGwDELucCoWcnAckGQwDELucCYgcLAOKCZwDELucCSMbvAP6CiwDELucAbbrPA+jurwDELucD6O6vAG26zwDELucA/oKLAkjG7wDELucA4oJnAmIHCwDELucByQZDAqFnJwDELucC1iYbAirXPwDELucD9/XjAVJHVwDELucABT2TAZ+nawDELucA2E0/Ad7rfwDELucC4VznAjAHkwDELucDrKSPABLznwDELucB8lwzAkufqwDELucC0XOu/P4LtwDELucBG+by/corvwDELucBNIY6/6v7wwDELucBa4z2/wt7xwDELucD7Hb6+bynywDELucBXVcimwt7xwDELucD7Hb4+6v7wwDELucBa4z0/corvwDELucBNIY4/P4LtwDELucBG+bw/kufqwDELucC0XOs/BLznwDELucB8lwxAjAHkwDELucDrKSNAd7rfwDELucC4VzlAZ+nawDELucA2E09AVJHVwDELucABT2RAirXPwDELucD9/XhAqFnJwDELucC1iYZAmIHCwDELucByQZBAkjG7wDELucA4oJlAG26zwDELucA/oKJA+jurwDELucD6O6tAP6CiwDELucAbbrNAOKCZwDELucCSMbtAckGQwDELucCYgcJAtYmGwDELucCoWclA/f14wDELucCKtc9AAU9kwDELucBUkdVANhNPwDELucBn6dpAuFc5wDELucB3ut9A6ykjwDELucCMAeRAfJcMwDELucAEvOdAtFzrvzELucCS5+pARvm8vzELucA/gu1ATSGOvzELucByiu9AWuM9vzELucDq/vBA+x2+vjELucDC3vFAAAAAADELucBvKfJAAAAAAP2GxMBg8OhAWuC2Pv2GxMCLqOhA9ac2P/2GxMA60edAjLeIP/2GxMDxauZAzMa1P/2GxMCOduRA8WXiP/2GxMBE9eFAujwHQP2GxMCg6N5AFfMcQP2GxMCCUttApEgyQP2GxMAhNddAQDBHQP2GxMAHk9JABJ1bQP2GxMAPb81AVoJvQP2GxMBkzMdA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YSTdv3YFEsExuwZAYqfPv3YFEsGQ/gtAUqrBv3YFEsGZ6xBA0jWzv3YFEsFCfxVAy1Kkv3YFEsG4thlAbAqVv3YFEsFhjx1AJGaFv3YFEsHdBiFALN9qv3YFEsELGyRANGFKv3YFEsEFyiZAb2Ypv3YFEsEgEilALwMIv3YFEsH18SpAGJjMvnYFEsFfaCxAqKuIvnYFEsF1dC1A2tUIvnYFEsGQFS5AAAAAAHYFEsFPSy5AAAAAAL30E8Eb3xFA3ArlPb30E8EgshFAO8RkPr30E8FKKxFA+DqrPr30E8HsShBAOqrjPr30E8GREQ9AicYNP730E8H7fw1AhmApP730E8EflwtADpJEP730E8EuWAlAWUpfP730E8GIxAZA8Hh5P730E8HE3QNA1oaJP730E8GupQBAY/yVP730E8GAPPo/cBWiP730E8FQk/I/hsqtP730E8GGVOo/bhS5P730E8E4heE/MuzDP730E8HVKtg/IEvOP730E8EgS84/1SrYP730E8Ey7MM/OIXhP730E8FuFLk/hlTqP730E8GGyq0/UJPyP730E8FwFaI/gDz6P730E8Fj/JU/rqUAQL30E8HWhok/xN0DQL30E8HweHk/iMQGQL30E8FZSl8/LlgJQL30E8EOkkQ/H5cLQL30E8GGYCk/+38NQL30E8GJxg0/kREPQL30E8E6quM+7EoQQL30E8H4Oqs+SisRQL30E8E7xGQ+ILIRQL30E8HcCuU9G98RQL30E8F35iAlILIRQL30E8HcCuW9SisRQL30E8E7xGS+7EoQQL30E8H4Oqu+kREPQL30E8E6quO++38NQL30E8GJxg2/H5cLQL30E8GGYCm/LlgJQL30E8EOkkS/iMQGQL30E8FZSl+/xN0DQL30E8HweHm/rqUAQL30E8HWhom/gDz6P730E8Fj/JW/UJPyP730E8FwFaK/hlTqP730E8GGyq2/OIXhP730E8FuFLm/1SrYP730E8Ey7MO/IEvOP730E8EgS86/MuzDP730E8HVKti/bhS5P730E8E4heG/hsqtP730E8GGVOq/cBWiP730E8FQk/K/Y/yVP730E8GAPPq/1oaJP730E8GupQDA8Hh5P730E8HE3QPAWUpfP730E8GIxAbADpJEP730E8EuWAnAhmApP730E8EflwvAicYNP730E8H7fw3AOqrjPr30E8GREQ/A+DqrPr30E8HsShDAO8RkPr30E8FKKxHA3ArlPb30E8EgshHAd+agJb30E8Eb3xHA3Arlvb30E8EgshHAO8Rkvr30E8FKKxHA+Dqrvr30E8HsShDAOqrjvr30E8GREQ/AicYNv730E8H7fw3AhmApv730E8EflwvADpJEv730E8EuWAnAWUpfv730E8GIxAbA8Hh5v730E8HE3QPA1oaJv730E8GupQDAY/yVv730E8GAPPq/cBWiv730E8FQk/K/hsqtv730E8GGVOq/bhS5v730E8E4heG/MuzDv730E8HVKti/IEvOv730E8EgS86/1SrYv730E8Ey7MO/OIXhv730E8FuFLm/hlTqv730E8GGyq2/UJPyv730E8FwFaK/gDz6v730E8Fj/JW/rqUAwL30E8HWhom/xN0DwL30E8HweHm/iMQGwL30E8FZSl+/LlgJwL30E8EOkkS/H5cLwL30E8GGYCm/+38NwL30E8GJxg2/kREPwL30E8E6quO+7EoQwL30E8H4Oqu+SisRwL30E8E7xGS+ILIRwL30E8HcCuW9G98RwL30E8GzWfGlILIRwL30E8HcCuU9SisRwL30E8E7xGQ+7EoQwL30E8H4Oqs+kREPwL30E8E6quM++38NwL30E8GJxg0/H5cLwL30E8GGYCk/LlgJwL30E8EOkkQ/iMQGwL30E8FZSl8/xN0DwL30E8HweHk/rqUAwL30E8HWhok/gDz6v730E8Fj/JU/UJPyv730E8FwFaI/hlTqv730E8GGyq0/OIXhv730E8FuFLk/1SrYv730E8Ey7MM/IEvOv730E8EgS84/MuzDv730E8HVKtg/bhS5v730E8E4heE/hsqtv730E8GGVOo/cBWiv730E8FQk/I/Y/yVv730E8GAPPo/1oaJv730E8GupQBA8Hh5v730E8HE3QNAWUpfv730E8GIxAZADpJEv730E8EuWAlAhmApv730E8EflwtAicYNv730E8H7fw1AOqrjvr30E8GREQ9A+Dqrvr30E8HsShBAO8Rkvr30E8FKKxFA3Arlvb30E8EgshFAAAAAAL30E8Eb3xFAAAAAAIyLFcFfN+o/E+G3PYyLFcEl7+k/X6g3PoyLFcGnFuk/d3eJPoyLFcFmruc/+cW2PoyLFcFEt+U/wqPjPoyLFcF3MuM/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AAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAAAAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAAE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAACAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAgE5iGMEAAAAAAAAAAE5iGMEAAAAAAID//////78AgP/////+wgCA/////7zFAID/////Q8gAgP////+dygCA/////9HMAID/////5M4AgP/////c0ACA/////73SAID/////jNQAgP////9K1gCA//////vXAID/////odkAgP////8/2wCA/////9jcAID/////bN4AgP//////3wCA/////5HhAID/////JeMAgP////++5ACA/////1zmAID/////A+gAgP////+06QCA/////3LrAID/////QO0AgP////8h7wCA/////xnxAID/////LfMAgP////9g9QCA/////7r3AID/////QvoAgP///////ACA////////AID//wAA//wAgP//AABC+gCA//8AALr3AID//wAAYPUAgP//AAAt8wCA//8AABnxAID//wAAIe8AgP//AABA7QCA//8AAHLrAID//wAAtOkAgP//AAAD6ACA//8AAFzmAID//wAAvuQAgP//AAAl4wCA//8AAJHhAID//wAA/98AgP//AABs3gCA//8AANjcAID//wAAP9sAgP//AACh2QCA//8AAPvXAID//wAAStYAgP//AACM1ACA//8AAL3SAID//wAA3NAAgP//AADkzgCA//8AANHMAID//wAAncoAgP//AABDyACA//8AALzFAID//wAA/sIAgP//AAD/vwCA///9Bf+/AID//3gL/78AgP//iBD/vwCA//87Ff+/AID//6IZ/78AgP//yR3/vwCA//+6If+/AID//30l/78AgP//GSn/vwCA//+VLP+/AID///cv/78AgP//RDP/vwCA//+BNv+/AID//7I5/78AgP//2jz/vwCA////P/+/AID//yRD/78AgP//TUb/vwCA//9+Sf+/AID//7lM/78AgP//B1D/vwCA//9oU/+/AID//+VW/78AgP//glr/vwCA//9EXv+/AID//zVi/78AgP//W2b/vwCA///Dav+/AID//3Zv/78AgP//hXT/vwCA//8Bev+/AID///9//78AgP///YX/vwCA//95i/+/AID//4iQ/78AgP//O5X/vwCA//+jmf+/AID//8md/78AgP//uqH/vwCA//98pf+/AID//xmp/78AgP//laz/vwCA///3r/+/AID//0Sz/78AgP//gLb/vwCA//+xuf+/AID//9q8/78AgP///7//vwCA//8kw/+/AID//0zG/78AgP//fcn/vwCA//+6zP+/AID//wfQ/78AgP//adP/vwCA///l1v+/AID//4Ha/78AgP//RN7/vwCA//804v+/AID//1vm/78AgP//wur/vwCA//917/+/AID//4T0/78AgP//APr/vwCA//////+//38X+v///79JgNL5///+wpOAkfn//7zF24BU+f//Q8gkgRv5//+dymuB5vj//9HMsYG2+P//5M72gYr4///c0DmCY/j//73SfIJA+P//jNS8giH4//9K1vuCCPj///vXOIPy9///odlzg+H3//8/26yD1vf//9jc44PP9///bN4YhM33////30qEz/f//5HheoTW9///JeOnhOL3//++5NKE8vf//1zm+oQI+P//A+gfhSH4//+06UGFQPj//3LrYIVj+P//QO18hYr4//8h75WFtfj//xnxq4Xm+P//LfO+hRv5//9g9c2FU/n//7r32YWR+f//QvrihdL5/////OeFF/r/////LIYc+gAA//xthiT6AABC+qqGMPoAALr34oZA+gAAYPUWh1L6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O5X/v1psbuejmf+/uWzg5smd/78gbV/muqH/v49t7OV8pf+/B26H5Rmp/7+Gbi/llaz/vw5v5eT3r/+/nG+p5ESz/78ycHrkgLb/v89wWOSxuf+/c3FE5Nq8/78ecj3k/7//v9ByROQkw/+/iHNY5EzG/79HdHrkfcn/vwx1qeS6zP+/13Xl5AfQ/7+odi/ladP/v393h+Xl1v+/XHjs5YHa/78+eV/mRN7/vyZ64OY04v+/E3tu51vm/78GfAvowur/v/18teh17/+/+X1t6YT0/7/6fjXqAPr/v/9/Cuv///+//3+v5v///786gbnl///+wm+C0+T//7zFnYP/4///Q8jFhDzj//+dyuaFieL//9HMAIfm4f//5M4UiFPh///c0CGJ0eD//73SJ4pe4P//jNQmi/rf//9K1h6Mp9////vXD41h3///odn5jSzf//8/29uOB9///9jcto/v3v//bN6KkOne////31aR8N7//5HhGpIH3///JePXki3f//++5IuTYt///1zmOJSn3///A+jclPrf//+06XiVXuD//3LrC5bR4P//QO2VllPh//8h7xaX5uH//xnxjpeJ4v//LfP8lzzj//9g9WGY/+P//7r3u5jT5P//QvoKmbnl/////E6Zr+b/////RZr05gAA//wqm0PnAABC+v6bnecAALr3wpwB6AAAYPV1nW/oAAAt8xie5+gAABnxqp5o6QAAIe8tn/LpAABA7aCfhuoAAHLrA6Ah6wAAtOlXoMbrAAAD6JugcuwAAFzm0KAn7QAAvuT2oOPtAAAl4w2hqO4AAJHhFaF07wAA/98NoUfwAABs3vagIvEAANjc0KAF8gAAP9uboO/yAACh2Veg4PMAAPvXA6DY9AAAStagn9f1AACM1C2f3fYAAL3SqZ7q9wAA3NAYnv34AADkznSdGPoAANHMwpw5+wAAncr+m2H8AABDyCqbj/0AALzFRZrE/gAA/sJNmf//AAD/v7llxP79Bf+/1GSP/XgL/78AZGH8iBD/vzxjOfs7Ff+/iWIY+qIZ/7/mYf34yR3/v1Rh6ve6If+/0WDd9n0l/79dYNf1GSn/v/tf2PSVLP+/p1/g8/cv/79jX+/yRDP/vy1fBfKBNv+/CF8i8bI5/7/xXkfw2jz/v+ledO//P/+/8V6o7iRD/78IX+PtTUb/vy5fJ+1+Sf+/Y19y7LlM/7+nX8brB1D/v/tfIetoU/+/XmCG6uVW/7/RYPLpglr/v1NhaOlEXv+/5WHn6DVi/7+JYm/oW2b/vzxjAejDav+//2Od53Zv/7/UZEPnhXT/v7ll9OYBev+/sGav5v9//7/0Zrnl/YX/v0Nn0+R5i/+/nWf/44iQ/78CaDzjO5X/v3BoieKjmf+/6Gjm4cmd/79paVPhuqH/v/Np0eB8pf+/hmpe4Bmp/78ia/rflaz/v8Zrp9/3r/+/c2xh30Sz/78nbS3fgLb/v+RtB9+xuf+/qG7w3tq8/790b+ne/7//v0hw8N4kw/+/I3EH30zG/78Fcizffcn/v+9yYd+6zP+/4HOn3wfQ/7/YdPrfadP/v9d1XuDl1v+/3XbR4IHa/7/qd1PhRN7/v/545uE04v+/GHqJ4lvm/785ezzjwur/v2F8/+N17/+/j33S5IT0/7/EfrnlAPr/v/9/r+b///+//3+U4v///79tgYHh///+wtKCguD//7zFL4SX3///Q8iDhb/e//+dys+G+t3//9HMFIhH3f//5M5PiaXc///c0IOKF9z//73Sr4uZ2///jNTSjCzb//9K1u6N0dr///vXAY+G2v//odkMkEza//8/2w+RI9r//9jcCpIK2v//bN79kgLa////3+iTCtr//5HhypQj2v//JeOklUza//++5HWWhtr//1zmPpfR2v//A+j+lyzb//+06bWYmdv//3LrY5kX3P//QO0Hmqbc//8h76KaR93//xnxM5v63f//LfO6m7/e//9g9Tecl9///7r3qJyB4P//QvoPnYHh/////GqdlOL/////fJ7v4gAA//x7n1XjAABC+magx+MAALr3PqFD5AAAYPUEosrkAAAt87eiW+UAABnxWKP25QAAIe/no5vmAABA7WWkSecAAHLr0aQA6AAAtOktpcDoAAAD6HeliOkAAFzmsaVa6gAAvuTapTTrAAAl4/OlFuwAAJHh+6UA7QAA/9/zpfPtAABs3tql7u4AANjcsaXx7wAAP9t3pfzwAACh2S2lEPIAAPvX0aQr8wAAStZlpE/0AACM1OejevUAAL3SWKOu9gAA3NC3our3AADkzgSiLvkAANHMPqF6+gAAncpmoM/7AABDyHufLP0AALzFfJ6R/gAA/sJqnf//AAD/v4Jhkf79Bf+/g2As/XgL/7+XX8/7iBD/v8Beevo7Ff+/+V0u+aIZ/79HXer3yR3/v6Zcrva6If+/F1x69X0l/7+ZW0/0GSn/vy1bK/OVLP+/0VoQ8vcv/7+HWvzwRDP/v0xa8e+BNv+/JFru7rI5/78KWvPt2jz/vwNaAO3/P/+/C1oW7CRD/78kWjTrTUb/v01aWup+Sf+/h1qI6blM/7/RWsDoB1D/vy1bAOhoU/+/mVtJ5+VW/78XXJvmglr/v6Zc9uVEXv+/R11b5TVi/7/6XcrkW2b/v8BeQ+TDav+/l1/H43Zv/7+DYFXjhXT/v4Jh7+IBev+/lGKU4v9//7/vYoHh/YX/v1ZjguB5i/+/x2OX34iQ/79EZL/eO5X/v8tk+t2jmf+/XGVH3cmd/7/3ZaXcuqH/v5tmF9x8pf+/SWeZ2xmp/78AaCvblaz/v8Bo0dr3r/+/iWmG2kSz/79aakzagLb/vzRrI9qxuf+/FmwK2tq8/78BbQLa/7//v/RtCtokw/+/724j2kzG/7/yb0zafcn/v/1whtq6zP+/EHLR2gfQ/78scyvbadP/v090mdvl1v+/e3UX3IHa/7+vdqXcRN7/v+p3R9004v+/L3n63Vvm/797er/ewur/v897l9917/+/LH2C4IT0/7+SfoHhAPr/v/9/lOL///+//3+u3v///7+cgYTd///+wi+DcNz//7zFuIRy2///Q8g2hona//+dyqqHtdn//9HMFYn12P//5M52ikjY///c0M6Lr9f//73SHI0o1///jNRhjrXW//9K1p2PU9b///vX0JAE1v//odn6kcbV//8/2xuTmtX//9jcM5SA1f//bN5DlXfV////30qWgNX//5HhSJea1f//JeM9mMbV//++5CmZBNb//1zmDZpT1v//A+jnmrXW//+06bibKNf//3LrgJyv1///QO0+nUjY//8h7/Od9dj//xnxnZ612f//LfM+n4na//9g9dOfcdv//7r3XaBw3P//QvrcoITd/////FChrt7/////eqIh3wAA//yOo6DfAABC+oykKuAAALr3dKXA4AAAYPVJpmDhAAAt8wmnC+IAABnxtae/4gAAIe9PqH3jAABA7dWoReQAAHLrSakW5QAAtOmqqfHlAAAD6Pqp1OYAAFzmN6rB5wAAvuRjqrboAAAl436qtOkAAJHhhqq76gAA/99+qsrrAABs3mOq4+wAANjcN6oE7gAAP9v6qS7vAACh2aqpYfAAAPvXSamd8QAAStbVqOLyAACM1E+oMPQAAL3StaeH9QAA3NAJp+j2AADkzkmmU/gAANHMdaXH+QAAncqMpEb7AABDyI6jzvwAALzFeqJh/gAA/sJQof//AAD/v4RdYf79Bf+/cFzO/HgL/79yW0b7iBD/v4lax/k7Ff+/tVlT+KIZ/7/1WOj2yR3/v0lYh/W6If+/r1cw9H0l/78pV+LyGSn/v7VWnfGVLP+/VFZh8Pcv/78EVi7vRDP/v8ZVBO6BNv+/m1Xj7LI5/7+AVcrr2jz/v3hVu+r/P/+/gFW06SRD/7+bVbboTUb/v8dVwed+Sf+/BFbU5rlM/79UVvHlB1D/v7VWFuVoU/+/KVdF5OVW/7+vV33jglr/v0hYv+JEXv+/9FgL4jVi/7+1WWDhW2b/v4lawODDav+/clsq4HZv/79wXKDfhXT/v4NdId8Bev+/rl6u3v9//78iX4Td/YX/v6FfcNx5i/+/K2By24iQ/7/AYInaO5X/v2Fhtdmjmf+/C2L12Mmd/7/AYkjYuqH/v35jr9d8pf+/RmQo1xmp/78XZbXWlaz/v/FlU9b3r/+/1WYE1kSz/7/BZ8bVgLb/v7ZomtWxuf+/tGmA1dq8/7+7anfV/7//v8trgNUkw/+/42ya1UzG/78EbsbVfcn/vy5vBNa6zP+/YXBT1gfQ/7+dcbXWadP/v+JyKNfl1v+/MHSv14Ha/7+IdUjYRN7/v+l29dg04v+/VHi12Vvm/7/IeYnawur/v0Z7ctt17/+/z3xw3IT0/79ifoTdAPr/v/9/rt7///+//3/12v///7/KgbfZ///+woiDktj//7zFOoWE1///Q8jfho7W//+dynmIrdX//9HMB4rj1P//5M6Liy3U///c0ASNjNP//73Sco7/0v//jNTWj4bS//9K1jCRH9L///vXgJLM0f//odnGk4zR//8/2wSVXtH//9jcN5ZC0f//bN5ilznR////34OYQtH//5Hhm5le0f//JeOqmozR//++5LCbzNH//1zmrZwf0v//A+ihnYbS//+06Yye/9L//3LrbZ+M0///QO1EoC3U//8h7xKh49T//xnx1qGt1f//LfOQoo7W//9g9T+jhNf//7r346OS2P//Qvp7pLfZ/////Ail9dr/////RqaC2wAA//xspxvcAABC+nmov9wAALr3cKlu3QAAYPVQqifeAAAt8xur694AABnx0Ku53wAAIe9xrJHgAABA7f2scuEAAHLrd61c4gAAtOnerVDjAAAD6DGuTeQAAFzmcq5T5QAAvuSfrmLmAAAl47uue+cAAJHhxK6c6AAA/9+7rsbpAABs3qCu+uoAANjccq437AAAP9sxrn7tAACh2d6tzu4AAPvXeK0o8AAAStb+rIzxAACM1HGs+vIAAL3S0Ktz9AAA3NAaq/b1AADkzlCqhfcAANHMcKke+QAAncp5qMT6AABDyGyndvwAALzFRqY0/gAA/sIIpf//AAD/v7hZNP79Bf+/klh2/HgL/7+FV8T6iBD/v45WHvk7Ff+/rlWF96IZ/7/jVPb1yR3/vy5Uc/S6If+/jVP68n0l/7//UozxGSn/v4ZSKPCVLP+/IFLO7vcv/7/NUX7tRDP/v4xRN+yBNv+/XlH66rI5/79DUcbp2jz/vzpRnOj/P/+/Q1F75yRD/79eUWLmTUb/v4xRU+V+Sf+/zVFN5LlM/78gUlDjB1D/v4ZSXOJoU/+/AFNy4eVW/7+NU5Hgglr/vy5Uud9EXv+/41Tr3jVi/7+uVSfeW2b/v45Wbt3Dav+/hVe/3HZv/7+SWBvchXT/v7dZgtsBev+/9lr12v9//7+DW7fZ/YX/vxtckdh5i/+/v1yE14iQ/79uXY7WO5X/vyherdWjmf+/7F7j1Mmd/7+6Xy3UuqH/v5FgjNN8pf+/cmH/0hmp/79dYobSlaz/v1FjH9L3r/+/TmTM0USz/79UZYzRgLb/v2NmXtGxuf+/e2dC0dq8/7+caDnR/7//v8dpQtEkw/+/+mpe0UzG/784bIzRfcn/v35tzNG6zP+/zm4f0gfQ/78ocIbSadP/v4xx/9Ll1v+/+nKM04Ha/79zdC3URN7/v/d149Q04v+/hXet1Vvm/78feY7Wwur/v8R6hNd17/+/dnyS2IT0/780frfZAPr/v/9/9dr///+//39j1////7/1gRTW///+wt2D4NT//7zFtYXG0///Q8iAh8XS//+dyj2J29H//9HM7YoI0f//5M6RjEvQ///c0CmOpM///73StY8Sz///jNQ2kZTO//9K1quSKs7///vXF5TUzf//odl4lZLN//8/28+WYs3//9jcHJhGzf//bN5gmTzN////35qaRs3//5Hhy5tizf//JePznJLN//++5BGe1M3//1zmJ58qzv//A+gzoJTO//+06TahEs///3LrMKKkz///QO0ho0vQ//8h7wekCNH//xnx5aTb0f//LfO4pcXS//9g9YGmxtP//7r3P6fg1P//QvrzpxTW/////JuoY9f/////6akL2AAA//wcq77YAABC+jesfNkAALr3Oa1F2gAAYPUjrhnbAAAt8/au9tsAABnxsq/d3AAAIe9asM3dAABA7eywx94AAHLrarHK3wAAtOnTsdfgAAAD6Cmy7OEAAFzmbLIL4wAAvuSasjLkAAAl47eyY+UAAJHhwbKd5gAA/9+4suHnAABs3puyLukAANjcbLKG6gAAP9spsufrAACh2dOxUu0AAPvXarHI7gAAStbrsEnwAACM1Fqw1fEAAL3Ssq9t8wAA3ND2rhD1AADkziOuwPYAANHMOK1++AAAnco3rEj6AABDyB2rIfwAALzF6akI/gAA/sKbqP//AAD/vxVWCP79Bf+/4VQh/HgL/7/HU0j6iBD/v8VSfvg7Ff+/21HA9qIZ/78IURD1yR3/v0xQbfO6If+/pE/V8X0l/78ST0nwGSn/v5ROyO6VLP+/K05S7fcv/7/VTefrRDP/v5JNhuqBNv+/Y00u6bI5/79GTeHn2jz/vz1Nneb/P/+/Rk1j5SRD/79jTTLkTUb/v5JNC+N+Sf+/1U3s4blM/78rTtfgB1D/v5NOyt9oU/+/EU/H3uVW/7+kT83dglr/v0xQ3dxEXv+/B1H22zVi/7/bURnbW2b/v8RSRdrDav+/x1N82XZv/7/hVL7YhXT/vxVWC9gBev+/Y1dj1/9//78LWBTW/YX/v79Y4NR5i/+/fVnG04iQ/79FWsXSO5X/vxlb29Gjmf+/91sI0cmd/7/dXEvQuqH/v85dpM98pf+/yF4Szxmp/7/LX5TOlaz/v9dgKs73r/+/7WHUzUSz/78LY5LNgLb/vzNkYs2xuf+/ZGVFzdq8/7+eZjzN/7//v+JnRs0kw/+/L2lizUzG/7+GapLNfcn/v+dr1M26zP+/U20qzgfQ/7/IbpTOadP/v0lwEs/l1v+/1XGkz4Ha/79tc0vQRN7/vxF1CNE04v+/wXbb0Vvm/79+eMXSwur/v0l6xtN17/+/IXzg1IT0/78JfhTWAPr/v/9/Y9f///+//3/w0////78fgpTS///+wi6EVNH//7zFLIYw0P//Q8gaiCbP//+dyviJNM7//9HMyItbzf//5M6KjZjM///c0D+P7cv//73S55BXy///jNSDktXK//9K1hOUasr///vXmJUSyv//odkSl87J//8/24KYncn//9jc55mAyf//bN5Dm3fJ////35WcgMn//5Hh3Z2dyf//JeMcn87J//++5FKgEsr//1zmf6Fqyv//A+ijotbK//+06b6jV8v//3Lr0KTty///QO3ZpZnM//8h79mmW83//xnx0Kc0zv//LfO9qCbP//9g9aGpMND//7r3eqpU0f//QvpJq5TS/////A2s8NP/////aq201AAA//yproPVAABC+s6vXdYAALr32LBA1wAAYPXJsS3YAAAt86OyJNkAABnxZbMk2gAAIe8QtC3bAABA7aa0P9wAAHLrJ7Va3QAAtOmUtX7eAAAD6Oy1q98AAFzmMLbh4AAAvuRgtiDiAAAl4322aeMAAJHhh7a75AAA/999thbmAABs3mC2fOcAANjcMLbr6AAAP9vstWXqAACh2ZS16usAAPvXJ7V67QAAStamtBbvAACM1BC0vvAAAL3SZbNz8gAA3NCjsjX0AADkzsmxBfYAANHM2LDk9wAAncrOr9L5AABDyKmuz/sAALzFaq3e/QAA/sINrP//AAD/v5RS3v39Bf+/VVHP+3gL/78wUNL5iBD/vyZP5Pc7Ff+/NE4F9qIZ/79bTTX0yR3/v5hMc/K6If+/7ku+8H0l/79YSxbvGSn/v9dKeu2VLP+/akrq6/cv/78RSmXqRDP/v85J6+iBNv+/nUl857I5/7+BSRbm2jz/v3dJu+T/P/+/gUlp4yRD/7+dSSDiTUb/v85J4eB+Sf+/Ekqr37lM/79qSn7eB1D/v9ZKWt1oU/+/WEs/3OVW/7/uSy3bglr/v5lMJNpEXv+/W00k2TVi/781Ti3YW2b/vyZPQNfDav+/MFBd1nZv/79VUYPVhXT/v5RStNQBev+/8VPw0/9//7+1VJTS/YX/v4RVVNF5i/+/XVYw0IiQ/79BVybPO5X/vy5YNM6jmf+/JVlbzcmd/78lWpnMuqH/vy5b7ct8pf+/QFxXyxmp/79bXdbKlaz/v39easr3r/+/rF8SykSz/7/iYM7JgLb/vyFincmxuf+/aWOAydq8/7+7ZHfJ/7//vxdmgMkkw/+/fGedyUzG/7/saM7Jfcn/v2ZqEsq6zP+/62tqygfQ/797bdbKadP/vxdvV8vl1v+/v3Dty4Ha/790cpnMRN7/vzZ0W8004v+/BnY0zlvm/7/kdyXPwur/v9J5MNB17/+/0HtU0YT0/7/ffZTSAPr/v/9/8NP///+//3+Y0P///79IgjDP///+wn2E583//7zFnoa7zP//Q8iuiKrL//+dyqyKs8r//9HMmozVyf//5M55jg/J///c0EmQYMj//73SDJLHx///jNTBk0TH//9K1mqV1sb///vXCJd9xv//odmZmDjG//8/2yCaB8b//9jcnJvpxf//bN4OneDF////33ee6cX//5Hh1p8Hxv//JeMroTjG//++5Hiifcb//1zmvKPWxv//A+j3pEPH//+06Smmx8f//3LrU6dgyP//QO11qA/J//8h742p1cn//xnxnqqzyv//LfOlq6rL//9g9aOsu8z//7r3ma3nzf//QvqErjDP/////GavmND/////zbB50QAA//wWsmXSAABC+kOzWtMAALr3VLRZ1AAAYPVKtWDVAAAt8yi2cNYAABnx77aJ1wAAIe+dt6rYAABA7Ta41NkAAHLrubgH2wAAtOknuULcAAAD6IC5ht0AAFzmxrnS3gAAvuT3uSjgAAAl4xS6h+EAAJHhHrrv4gAA/98UumHkAABs3ve53eUAANjcxrlk5wAAP9uAufboAACh2Sa5k+oAAPvXubg87AAAStY2uPLtAACM1J23tO8AAL3S77aF8QAA3NAotmPzAADkzkq1UvUAANHMVLRQ9wAAncpDs1/5AABDyBaygfsAALzFzbC1/QAA/sJmr///AAD/vzFPtf39Bf+/502B+3gL/7+7TF/5iBD/v6pLUPc7Ff+/s0pS9aIZ/7/WSWPzyR3/vw9JhfG6If+/YEi0730l/7/IR/LtGSn/v0VHPOyVLP+/10aT6vcv/79+RvboRDP/vzhGZOeBNv+/B0bd5bI5/7/qRWHk2jz/v+BF7+L/P/+/6kWH4SRD/78HRijgTUb/vzhG0t5+Sf+/fkaG3blM/7/XRkLcB1D/v0VHB9toU/+/x0fU2eVW/79gSKrYglr/vw9JiddEXv+/1klw1jVi/7+0SmDVW2b/v6pLWdTDav+/u0xa03Zv/7/oTWXShXT/vzFPedEBev+/l1CY0P9//796UTDP/YX/v2RS5815i/+/W1O7zIiQ/79ZVKrLO5X/v2BVs8qjmf+/cVbVycmd/7+JVw/JuqH/v6tYYMh8pf+/1VnHxxmp/78HW0THlaz/v0Jc1cb3r/+/hV19xkSz/7/TXjjGgLb/vyhgB8axuf+/h2Hpxdq8/7/wYuDF/7//v2Jk6cUkw/+/3mUHxkzG/79lZzjGfcn/v/Zofca6zP+/lGrWxgfQ/789bETHadP/v/Jtx8fl1v+/tW9gyIHa/7+FcQ/JRN7/v2Rz1ck04v+/UnWzylvm/79Qd6rLwur/v2B5usx17/+/gXvnzYT0/7+2fTDPAPr/v/9/mND///+//39Uzf///79wguTL///+wsmElMr//7zFDYdiyf//Q8g9iUzI//+dylmLUcf//9HMZI1wxv//5M5fj6fF///c0EmR9sT//73SJZNcxP//jNTzlNfD//9K1rSWaMP///vXaJgOw///odkQmsnC//8/262bl8L//9jcP516wv//bN7GnnDC////30SgesL//5HhuaGXwv//JeMko8nC//++5IekDsP//1zm4aVow///A+gyp9fD//+06XyoXMT//3Lrvan2xP//QO33qqfF//8h7yiscMb//xnxUq1Qx///LfN0rkzI//9g9Y6vYsn//7r3n7CUyv//QvqpseTL/////KmyVM3/////GbRVzgAA//xqtV7PAABC+pu2cNAAALr3sreJ0QAAYPWtuKvSAAAt84651dMAABnxVroH1QAAIe8Iu0DWAABA7aK7gtcAAHLrJrzL2AAAtOmVvB3aAAAD6O+8d9sAAFzmNb3Z3AAAvuRmvUXeAAAl44S9ud8AAJHhjr034QAA/9+Evb/iAABs3ma9UeQAANjcNb3u5QAAP9vvvJbnAACh2ZW8SukAAPvXJrwL6wAAStaiu9jsAACM1Ai7tO4AAL3SVrqf8AAA3NCOuZnyAADkzq24pPQAANHMsrfB9gAAncqctvH4AABDyGq1NPsAALzFGbSO/QAA/sKpsv//AAD/v+VLjv39Bf+/k0o0+3gL/79iSfH4iBD/v0xIwfY7Ff+/UUek9KIZ/79wRpnyyR3/v6hFn/C6If+/9kS07n0l/79cRNjsGSn/v9hDC+uVLP+/aUNK6fcv/78PQ5bnRDP/v8lC7uWBNv+/l0JR5LI5/796Qr/i2jz/v3BCN+H/P/+/ekK53yRD/7+YQkXeTUb/v8lC2dx+Sf+/D0N327lM/79pQx3aB1D/v9hDy9hoU/+/XESC1+VW/7/2REDWglr/v6dFB9VEXv+/cEbV0zVi/79RR6vSW2b/v0xIidHDav+/YUlw0HZv/7+USl7PhXT/v+VLVc4Bev+/VU1Uzf9//79VTuTL/YX/v19PlMp5i/+/b1BiyYiQ/7+KUUzIO5X/v6xSUcejmf+/1lNwxsmd/78HVafFuqH/v0FW9sR8pf+/gldcxBmp/7/MWNfDlaz/vx1aaMP3r/+/d1sNw0Sz/7/aXMnCgLb/v0Rel8Kxuf+/ul96wtq8/784YXDC/7//v79iesIkw/+/UWSXwkzG/7/uZcnCfcn/v5ZnDsO6zP+/SmlowwfQ/78La9fDadP/v9lsXMTl1v+/tW72xIHa/7+fcKfFRN7/v5pycMY04v+/pXRRx1vm/7/BdkzIwur/v/F4Ycl17/+/NXuTyoT0/7+OfeTLAPr/v/9/VM3///+//38iyv///7+WgqvI///+whSFVcf//7zFeYcfxv//Q8jIiQbF//+dygKMCMT//9HMKY4lw///5M49kFvC///c0EGSqcH//73SNZQOwf//jNQalonA//9K1vGXGsD///vXu5nAv///odl4m3q///8/2yqdSL///9jc0Z4rv///bN5uoCG/////3wGiK7///5HhiqNIv///JeMKpXq///++5IKmwL///1zm8qcawP//A+haqYnA//+06bqqDcH//3LrE6ypwf//QO1krVvC//8h76+uJcP//xnx8q8IxP//LfMvsQbF//9g9WWyH8b//7r3lLNVx///Qvq7tKvI/////Ny1Isr/////U7dCywAA//youGrMAABC+t+5mc0AALr3+LrPzgAAYPX1uwvQAAAt89i8T9EAABnxor2Z0gAAIe9UvuvTAABA7e++RNUAAHLrc7+k1gAAtOnkvwzYAAAD6D7Ae9kAAFzmhMDz2gAAvuS1wHTcAAAl49PA/d0AAJHh3cCQ3wAA/9/TwCzhAABs3rXA0+IAANjchMCF5AAAP9s+wEPmAACh2eS/DegAAPvXdL/k6QAAStbvvsnrAACM1FS+ve0AAL3Sor3A7wAA3NDYvNXxAADkzvW7/PMAANHM+Lo29gAAncrfuYX4AABDyKi46voAALzFU7dn/QAA/sLctf//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glfQstq8/79jWcey/7//v01b0LIkw/+/Ql3tskzG/79CXxyzfcn/v05hX7O6zP+/aWO2swfQ/7+SZSG0adP/v8xnorTl1v+/GGo4tYHa/794bOa1RN7/v+5urLY04v+/fHGLt1vm/78jdIa4wur/v+h2nrl17/+/zHnVuoT0/7/SfC68APr/v/9/rb3///+//3+Suv///79Rgxa5///+wnmGwLf//7zFfImMtv//Q8hcjHi1//+dyh6PgbT//9HMxJGls///5M5RlOKy///c0MeWOLL//73SKJmksf//jNR2myax//9K1rOdvbD///vX4J9osP//odn/oSaw//8/2xGk+K///9jcGKbcr///bN4VqNOv////3wiq3K///5Hh86v4r///JePXrSaw//++5LWvaLD//1zmjbG9sP//A+hhsyax//+06TG1pLH//3Lr/rY4sv//QO3JuOKy//8h75S6pbP//xnxXryBtP//LfMovni1//9g9fS/jLb//7r3w8HAt///QvqVwxa5/////GzFkrr/////58ZovAAA//w9yDq+AABC+nHJCcAAALr3hsrVwQAAYPV9y6DDAAAt81nMasUAABnxG800xwAAIe/GzQDJAABA7VnOzcoAAHLr186dzAAAtOlAz3HOAAAD6JXPSdAAAFzm188m0gAAvuQG0ArUAAAl4yHQ9dUAAJHhK9Dp1wAA/98h0OXZAABs3gbQ7NsAANjc18/+3QAAP9uVzx7gAACh2UDPS+IAAPvX186I5AAAStZZztbmAACM1MbNN+kAAL3SG82t6wAA3NBZzDnuAADkzn3L3/AAANHMhsqh8wAAncpxyYL2AABDyD3IhPkAALzF58as/AAA/sJsxf//AAD/vxc5rPz9Bf+/wTeE+XgL/7+NNoL2iBD/v3g1ofM7Ff+/gDTf8KIZ/7+lMznuyR3/v+Myreu6If+/NzI36X0l/7+lMdbmGSn/vyYxiOSVLP+/vjBL4vcv/79pMB7gRDP/vyYw/t2BNv+/+C/s27I5/7/dL+XZ2jz/v9Mv6df/P/+/3S/11SRD/7/4LwrUTUb/vyYwJtJ+Sf+/aDBJ0LlM/7++MHHOB1D/vyYxncxoU/+/pTHNyuVW/783MgDJglr/v+MyNMdEXv+/pTNqxTVi/7+BNKDDW2b/v3g11cHDav+/jTYJwHZv/7/BNzq+hXT/vxc5aLwBev+/kjqSuv9//79pPBa5/YX/vzs+wLd5i/+/CkCMtoiQ/7/WQXi1O5X/v59DgbSjmf+/akWls8md/781R+KyuqH/vwBJOLJ8pf+/zUqksRmp/7+dTCaxlaz/v3FOvbD3r/+/SVBosESz/78nUiawgLb/vwtU+K+xuf+/9lXcr9q8/7/pV9Ov/7//v+ZZ3K8kw/+/7Vv4r0zG/7//XSawfcn/vx5gaLC6zP+/S2K9sAfQ/7+IZCaxadP/v9ZmpLHl1v+/N2k4soHa/7+ta+KyRN7/vzpupbM04v+/4HCBtFvm/7+ic3i1wur/v4J2jLZ17/+/hXnAt4T0/7+tfBa5APr/v/9/krr///+//39wt////792g/m1///+wsCGqLT//7zF4Yl5s///Q8jejGqy//+dyrqPd7H//9HMeJKgsP//5M4bleGv///c0KeXO6///73SHJqrrv//jNR+nDCu//9K1s6eya3///vXDqF3rf//odk/ozet//8/22SlCa3//9jcfafurP//bN6MqeWs////35Gr7qz//5Hhj60Jrf//JeOHrzet//++5Hixd63//1zmZbPJrf//A+hPtTCu//+06Ta3q67//3LrG7k7r///QO0Au+Gv//8h7+W8oLD//xnxy753sf//LfO1wGqy//9g9aLCebP//7r3lMSotP//QvqMxvm1/////I3IcLf/////BMpxuQAA//xWy2i7AABC+oXMW70AALr3lM1JvwAAYPWGzjLBAAAt817PGcMAABnxHND+xAAAIe/D0OPGAABA7VPRyMgAAHLrztGvygAAtOk00pjMAAAD6IfShc4AAFzmx9J30AAAvuT00m7SAAAl4w/TbNQAAJHhGNNy1gAA/98P04HYAABs3vTSmtoAANjcx9K+3AAAP9uH0vDeAACh2TTSMOEAAPvXztGA4wAAStZT0eHlAACM1MPQV+gAAL3SHNDi6gAA3NBez4XtAADkzobORPAAANHMlM0f8wAAncqFzBz2AABDyFbLPfkAALzFBMqH/AAA/sKNyP//AAD/v/o1h/z9Bf+/qDQ9+XgL/795Mxz2iBD/v2oyH/M7Ff+/eDFE8KIZ/7+gMIXtyR3/v+Iv4uq6If+/Oi9X6H0l/7+rLuHlGSn/vy8ugOOVLP+/yi0w4fcv/793LfDeRDP/vzYtvtyBNv+/Ci2a2rI5/7/vLIHY2jz/v+Ysctb/P/+/7yxs1CRD/78KLW7STUb/vzYtd9B+Sf+/dy2FzrlM/7/KLZjMB1D/vy8ur8poU/+/qy7IyOVW/786L+PGglr/v+Iv/sREXv+/oDAZwzVi/794MTLBW2b/v2oySb/Dav+/eTNbvXZv/7+oNGm7hXT/v/o1cbkBev+/cTdwt/9//79xOfm1/YX/v2o7qLR5i/+/Wz15s4iQ/79IP2qyO5X/vzNBd7Gjmf+/GUOgsMmd/7/+ROGvuqH/v+NGO698pf+/yEirrhmp/7+vSjCulaz/v5lMya33r/+/hk53rUSz/793UDetgLb/v29SCa2xuf+/bFTurNq8/79yVuWs/7//v4FY7qwkw/+/mloJrUzG/7+/XDetfcn/v/Bed626zP+/MGHJrQfQ/7+AYzCuadP/v+Jlq67l1v+/V2g7r4Ha/7/jauGvRN7/v4ZtoLA04v+/RHB3sVvm/78gc2qywur/vx12ebN17/+/PnmotIT0/7+IfPm1APr/v/9/cLf///+//39EtP///7+cg9Sy///+wgiHibH//7zFSIpgsP//Q8hhjVev//+dylaQa67//9HMLJOZrf//5M7mleCs///c0IeYPqz//73SEJuyq///jNSGnTur//9K1uif16r///vXO6KHqv//odl+pEmq//8/27WmHar//9jc4KgDqv//bN4Bq/up////3xmtA6r//5HhKq8dqv//JeM1sUmq//++5Duzh6r//1zmPbXXqv//A+g8tzur//+06Tq5sqv//3LrOLs+rP//QO02veCs//8h7ze/ma3//xnxPMFrrv//LfNFw1ev//9g9VTFYLD//7r3bMeJsf//QvqNydSy/////LnLRLT/////Ks1xtgAA//x0zpG4AABC+p3PqboAALr3ptC5vAAAYPWT0cK+AAAt82XSxsAAABnxHtPHwgAAIe/A08bEAABA7UzUw8YAAHLrw9TByAAAtOkm1cHKAAAD6HbVw8wAAFzmtNXJzgAAvuTg1dPQAAAl4/rV5NIAAJHhA9b91AAA/9/61R7XAABs3uDVSdkAANjctNV/2wAAP9t21cPdAACh2SbVFeAAAPvXw9R44gAAStZM1O3kAACM1MDTd+cAAL3SHtMX6gAA3NBl0tHsAADkzpPRp+8AANHMptCd8gAAncqdz7b1AABDyHTO9vgAALzFKs1h/AAA/sK5y///AAD/v9QyYfz9Bf+/ijH2+HgL/79hMLb1iBD/v1cvnfI7Ff+/ay6n76IZ/7+ZLdHsyR3/v+AsF+q6If+/PSx3530l/7+yK+3kGSn/vzoreOKVLP+/2CoV4Pcv/7+IKsPdRDP/v0kqf9uBNv+/HipJ2bI5/78EKh7X2jz/v/sp/dT/P/+/BCrk0iRD/78eKtPQTUb/v0kqyc5+Sf+/iCrDzLlM/7/YKsHKB1D/vzorwchoU/+/sivDxuVW/789LMbEglr/v+Asx8JEXv+/mS3GwDVi/79rLsK+W2b/v1cvubzDav+/YDCpunZv/7+KMZK4hXT/v9QycbYBev+/RDREtP9//79wNtSy/YX/v5I4ibF5i/+/qjpgsIiQ/7+5PFevO5X/v8E+a66jmf+/x0CZrcmd/7/IQuCsuqH/v8ZEPqx8pf+/xEayqxmp/7/CSDurlaz/v8FK16r3r/+/w0yHqkSz/7/JTkmqgLb/v9RQHaqxuf+/5VIDqtq8/7/9VPup/7//vx5XA6okw/+/SVkdqkzG/7+AW0mqfcn/v8Ndh6q6zP+/FmDXqgfQ/794YjuradP/v+5ksqvl1v+/d2c+rIHa/78YauCsRN7/v9Jsma004v+/qG9rrlvm/7+dclevwur/v7Z1YLB17/+/9niJsYT0/79ifNSyAPr/v/9/RLT///+//38Ksf///7/Cg6Kv///+wlCHX67//7zFr4o/rf//Q8jkjT2s//+dyvSQWKv//9HM4pONqv//5M6yltqp///c0GiZPan//73SBpy2qP//jNSOnkOo//9K1gSh5Kf///vXaKOWp///odm+pVun//8/2waoMKf//9jcRKoXp///bN53rA+n////36KuF6f//5HhxrAwp///JePkslun//++5P60lqf//1zmFbfkp///A+gruUOo//+06UG7tqj//3LrV709qf//QO1xv9qp//8h747Bjar//xnxscNYq///LfPbxT2s//9g9Q7IP63//7r3Tcpfrv//QvqYzKKv/////PTOCrH/////XNBlswAA//ye0bG1AABC+r/S77cAALr3wNMiugAAYPWm1E28AAAt83HVcL4AABnxJNaNwAAAIe/A1qbCAABA7UfXvcQAAHLrutfSxgAAtOka2OjIAAAD6GfY/8oAAFzm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wur/v3p00KZ17/+/GHjbp4T0/7/sewepAPr/v/9/WKr///+//3/Wpv///787hJWl///+wjSIeKT//7zF8ot6o///Q8h+j5mi//+dytyS0aH//9HME5Yhof//5M4nmYeg///c0B2cAKD//73S956Mn///jNS5oSqf//9K1mek2J7///vXA6eWnv//odmPqWSe//8/2w6sQJ7//9jcgq4qnv//bN7tsCOe////31CzKp7//5Hhr7VAnv//JeMKuGSe//++5GO6lp7//1zmvbzYnv//A+gZvyqf//+06XnBjJ///3Lr4MMAoP//QO1Pxoeg//8h78jIIaH//xnxT8vRof//LfPmzZmi//9g9Y/QeqP//7r3UdN4pP//Qvot1pWl/////CjZ1qb/////adrRqQAA//yG26ysAABC+oTcba8AALr3Zd0XsgAAYPUs3q60AAAt89zeNbcAABnxd9+vuQAAIe/93x68AABA7XHghL4AAHLr0+DlwAAAtOkl4UHDAAAD6GfhmsUAAFzmmuH0xwAAvuS+4U/KAAAl49PhrcwAAJHh2uERzwAA/9/T4XzRAABs3r7h79MAANjcmuFu1gAAP9tn4frYAACh2SXhltsAAPvX0+BE3gAAStZx4AfhAACM1P3f4eMAAL3Sd9/W5gAA3NDc3urpAADkzizeIe0AANHMZd2A8AAAncqE3Av0AABDyIbbyvcAALzFadrD+wAA/sIo2f//AAD/v5Ulw/v9Bf+/eCTK93gL/796Iwv0iBD/v5kigPA7Ff+/0iEh7aIZ/78hIerpyR3/v4cg1ua6If+/ASDh430l/7+NHwfhGSn/vyofRN6VLP+/2R6W2/cv/7+WHvrYRDP/v2QebtaBNv+/Px7v07I5/78qHnzR2jz/vyMeEc//P/+/Kh6tzCRD/78/Hk/KTUb/v2Qe9Md+Sf+/lh6axblM/7/ZHkHDB1D/vyof5cBoU/+/jR+EvuVW/78BIB68glr/v4cgr7lEXv+/ISE1tzVi/7/SIa20W2b/v5kiF7LDav+/eiNtr3Zv/794JKyshXT/v5Ul0akBev+/1ibWpv9//7/RKZWl/YX/v60seKR5i/+/bi96o4iQ/78YMpmiO5X/v6800aGjmf+/NTchocmd/7+vOYeguqH/vx48AKB8pf+/hT6Mnxmp/7/lQCqflaz/v0FD2J73r/+/m0WWnkSz/7/0R2SegLb/v05KQJ6xuf+/rkwqntq8/78RTyOe/7//v3xRKp4kw/+/8FNAnkzG/79vVmSefcn/v/tYlp66zP+/l1vYngfQ/79FXiqfadP/vwdhjJ/l1v+/4WMAoIHa/7/XZoegRN7/v+tpIaE04v+/Im3RoVvm/7+AcJmiwur/vwx0eqN17/+/ynd4pIT0/7/De5WlAPr/v/9/1qb///+//38xo////79mhAOi///+woSI96D//7zFZIwJoP//Q8gOkDaf//+dyoeTfJ7//9HM15bXnf//5M4Cmkid///c0A2dy5z//73S/J9fnP//jNTSogSc//9K1pOluJv///vXQqh7m///odngqkyb//8/23KtK5v//9jc+K8Xm///bN52shCb////3+20F5v//5HhYLcrm///JePQuUyb//++5EC8e5v//1zmsb64m///A+gmwQSc//+06aHDX5z//3LrJcbLnP//QO2zyEid//8h707L153//xnx+c18nv//LfO50Daf//9g9Y/TCaD//7r3gtb3oP//QvqU2QOi/////MzcMaP/////+91ppgAA//wH33ypAABC+vXfbqwAALr3x+BFrwAAYPWC4QSyAAAt8ybisLQAABnxtuJLtwAAIe8z49m5AABA7Z/jXLwAAHLr+uPXvgAAtOlG5EzBAAAD6IPkvcMAAFzmsuQtxgAAvuTT5J3IAAAl4+fkEMsAAJHh7eSHzQAA/9/n5AXQAABs3tPkjNIAANjcsuQd1QAAP9uD5LzXAACh2UbkatoAAPvX+uMr3QAAStaf4wHgAACM1DPj8OIAAL3StuL75QAA3NAm4ibpAADkzoLhduwAANHMx+Dw7wAAncr135nzAABDyAffefcAALzF+92Y+wAA/sLM3P//AAD/vwMimPv9Bf+/9yB593gL/78JIJnziBD/vzYf8O87Ff+/fB527KIZ/7/YHSbpyR3/v0cd++W6If+/yxzw4n0l/79fHAHgGSn/vwQcK92VLP+/uBtq2vcv/797G7zXRDP/v0sbHdWBNv+/KhuM0rI5/78WGwXQ2jz/vxAbh83/P/+/FhsQyyRD/78qG53ITUb/v0sbLcZ+Sf+/exu9w7lM/7+4G0zBB1D/vwQc175oU/+/XxxcvOVW/7/LHNm5glr/v0cdSrdEXv+/2B2wtDVi/798HgSyW2b/vzYfRa/Dav+/CSBurHZv/7/3IHyphXT/vwMiaaYBev+/MSMxo/9//79qJgOi/YX/v3wp96B5i/+/bywJoIiQ/79ELzafO5X/vwUyfJ6jmf+/sDTXncmd/79KN0iduqH/v9k5y5x8pf+/XDxfnBmp/7/YPgSclaz/v01BuJv3r/+/vkN7m0Sz/78uRkybgLb/v55IK5uxuf+/EUsXm9q8/7+ITRCb/7//vwZQF5skw/+/i1Irm0zG/78eVUybfcn/v7xXe5u6zP+/a1q4mwfQ/78sXQScadP/vwJgX5zl1v+/8WLLnIHa/7/8ZUidRN7/vydp15004v+/d2x8nlvm/7/wbzafwur/v5pzCaB17/+/enf3oIT0/7+YewOiAPr/v/9/MaP///+//39jn////7+ShEue///+wtiIU53//7zF2ox3nP//Q8iikLWb//+dyjiUCpv//9HMoZdzmv//5M7kmu+Z///c0AWefZn//73SCaEamf//jNTzo8eY//9K1semgpj///vXialKmP//odk6rB+Y//8/29+uAZj//9jceLHvl///bN4KtOmX////35W275f//5HhHbkBmP//JeOjux+Y//++5Cq+Spj//1zms8CCmP//A+hCw8eY//+06dnFGpn//3Lre8h9mf//QO0py++Z//8h7+jNc5r//xnxu9AKm///LfOl07Wb//9g9avWd5z//7r30tlTnf//Qvog3Uue/////JvgY5//////s+HeogAA//yr4iumAABC+objUqkAALr3SORZrAAAYPX05EOvAAAt84rlFbIAABnxDubTtAAAIe+B5oO3AABA7ePmJLoAAHLrNue7vAAAtOl850q/AAAD6LPn1MEAAFzm3udbxAAAvuT95+HGAAAl4w/oaMkAAJHhFej0ywAA/98P6IXOAABs3v3nH9EAANjc3ufD0wAAP9uz53XWAACh2XznNtkAAPvXNucL3AAAStbj5vXeAACM1IHm+eEAAL3SDuYa5QAA3NCK5VzoAADkzvTkxusAANHMSORb7wAAncqG4yPzAABDyKviJvcAALzFs+Fr+wAA/sKb4P//AAD/v0oea/v9Bf+/Ux0m93gL/794HCPziBD/v7YbW+87Ff+/ChvG66IZ/790GlzoyR3/v/AZGuW6If+/fRn54X0l/78aGfXeGSn/v8gYC9yVLP+/ghg22fcv/79KGHXWRDP/vx8Yw9OBNv+/ARgf0bI5/7/vF4XO2jz/v+kX9Mv/P/+/7xdoySRD/78BGOHGTUb/vx8YW8R+Sf+/ShjUwblM/7+CGEq/B1D/v8gYurxoU/+/GhkkuuVW/799GYO3glr/v/AZ1LREXv+/dBoVsjVi/78KG0OvW2b/v7YbWazDav+/eBxSqXZv/79THSumhXT/v0oe3qIBev+/Yx9jn/9//7/eIkue/YX/vysmU515i/+/Uil3nIiQ/79YLLWbO5X/v0IvCpujmf+/FjJzmsmd/7/VNO+ZuqH/v4M3fZl8pf+/JDoamRmp/7+8PMeYlaz/v0o/gpj3r/+/1EFKmESz/79bRB+YgLb/v+FGAZixuf+/aUnvl9q8/7/0S+mX/7//v4ZO75ckw/+/H1EBmEzG/7/EUx+Yfcn/v3VWSpi6zP+/N1mCmAfQ/78LXMeYadP/v/VeGpnl1v+/+WF9mYHa/78aZe+ZRN7/v11oc5o04v+/xmsKm1vm/79cb7Wbwur/vyRzd5x17/+/JndTnYT0/79se0ueAPr/v/9/Y5////+//39jm////7/BhGWa///+wi+JhZn//7zFVY2/mP//Q8g9kRCY//+dyvCUdpf//9HMc5julv//5M7Om3iW///c0AWfEpb//73SHqK6lf//jNQdpW+V//9K1gWoMZX///vX2qoAlf//odmfrdqU//8/21ewv5T//9jcBLOulP//bN6qtamU////30q4rpT//5Hh57q/lP//JeOEvdqU//++5CPAAJX//1zmxsIxlf//A+hwxW+V//+06STIupX//3Lr5coSlv//QO23zXiW//8h75vQ7pb//xnxl9N2l///LfOv1hCY//9g9enZv5j//7r3Sd2Fmf//QvrW4GWa/////JrkY5v/////mOUnnwAA//x55rWiAABC+j/nFaYAALr37udOqQAAYPWI6GasAAAt8w/pYq8AABnxhelHsgAAIe/s6Re1AABA7UTq2bcAAHLrjuqNugAAtOnM6ji9AAAD6P7q278AAFzmJOt6wgAAvuQ/6xbFAAAl40/rtMcAAJHhVOtUygAA/99P6/nMAABs3j/rp88AANjcJOte0gAAP9v+6iPVAACh2czq+NcAAPvXjurg2gAAStZE6t/dAACM1Ozp+OAAAL3Shekw5AAA3NAP6Yvn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RN7/v9lkWos04v+/sWili1vm/7+/bPqLwur/vw9xW4x17/+/q3XLjIT0/7+gekqNAPr/v/9/243///+//3+qiP///7+ahUuI///+wsKK+If//7zFiY+wh///Q8j/k3GH//+dyjCYOof//9HMJpwKh///5M7qn+CG///c0IOjvIb//73S+Kaehv//jNRPqoSG//9K1o2tb4b///vXt7Bdhv//odnQs1CG//8/29y2R4b//9jc4LlBhv//bN7evECG////39u/QYb//5Hh2cJHhv//JePdxVCG//++5OjIXYb//1zmAcxvhv//A+gpz4SG//+06WbSnob//3LrvdW8hv//QO0y2eCG//8h783cCof//xnxk+A6h///LfOL5HGH//9g9cLosIf//7r3Qu34h///QvoY8kuI/////FT3qoj/////s/fmjQAA//wF+LuSAABC+k34O5cAALr3jPhxmwAAYPXD+GufAAAt8/P4MaMAABnxHfnLpgAAIe9B+UCqAABA7WD5l60AAHLrevnUsAAAtOmP+f2zAAAD6KD5FbcAAFzmrfkhugAAvuS3+SS9AAAl47z5IsAAAJHhvvkfwwAA/9+8+R3GAABs3rf5IckAANjcrfkuzAAAP9ug+UfPAACh2Y/5cNIAAPvXevmu1QAAStZg+QXZAACM1EH5e9wAAL3SHfkU4AAA3NDz+NjjAADkzsP4zucAANHMjPj+6wAAncpN+HTwAABDyAX4PPUAALzFs/dk+gAA/sJU9///AAD/v0sIZPr9Bf+/+Qc89XgL/7+wB3TwiBD/v3IH/us7Ff+/OgfO56IZ/78KB9jjyR3/v+EGFOC6If+/vQZ73H0l/7+dBgXZGSn/v4MGrtWVLP+/bwZw0vcv/79eBkfPRDP/v1EGLsyBNv+/RwYhybI5/79BBh3G2jz/vz8GH8P/P/+/QQYiwCRD/79HBiS9TUb/v1EGIbp+Sf+/XgYVt7lM/79vBv2zB1D/v4MG1LBoU/+/nQaXreVW/7+9BkCqglr/v+EGy6ZEXv+/CgcxozVi/786B2ufW2b/v3IHcZvDav+/sAc7l3Zv/7/5B7uShXT/v0sI5o0Bev+/qQipiP9//7/mDUuI/YX/v7wS+Id5i/+/Ohewh4iQ/79yG3GHO5X/v2sfOoejmf+/MCMKh8md/7/MJuCGuqH/v0AqvIZ8pf+/mC2ehhmp/7/VMISGlaz/v/0zb4b3r/+/FjddhkSz/78gOlCGgLb/vyU9R4axuf+/I0BBhtq8/78gQ0CG/7//vx5GQYYkw/+/IklHhkzG/78uTFCGfcn/v0dPXYa6zP+/cVJvhgfQ/7+vVYSGadP/vwZZnobl1v+/ely8hoHa/78UYOCGRN7/v9hjCoc04v+/zmc6h1vm/7//a3GHwur/v3VwsId17/+/PHX4h4T0/79kekuIAPr/v/9/qoj///+//38Eg////7/bheKC///+wjmLxIL//7zFMJCqgv//Q8jOlJOC//+dyiKZf4L//9HMOJ1ugv//5M4aoV+C///c0M6kUoL//73SXahHgv//jNTNqz6C//9K1iKvNoL///vXY7Iwgv//odmTtSyC//8/27i4KIL//9jc1Lsmgv//bN7rviaC////3wLCJoL//5HhHcUogv//JeM9yCyC//++5GjLMIL//1zmpM42gv//A+jy0T6C//+06VjVR4L//3Lr3NhSgv//QO2E3F+C//8h71bgboL//xnxW+R/gv//LfOc6JOC//9g9SPtqoL//7r3//HEgv//Qvo/9+KC/////Pn8BIP/////HP2+iAAA//w6/f6NAABC+lT92pIAALr3a/1ilwAAYPV+/aObAAAt85D9p58AABnxnv16owAAIe+r/SGnAABA7bb9paoAAHLrwP0LrgAAtOnH/VqxAAAD6M39lLQAAFzm0v3AtwAAvuTV/eG6AAAl49f9+70AAJHh2P0SwQAA/9/X/SrEAABs3tX9RscAANjc0v1qygAAP9vN/ZrNAACh2cf929AAAPvXwP0x1AAASta2/aHXAACM1Kv9L9sAAL3Snv3k3gAA3NCQ/cXiAADkzn792+YAANHMa/0w6wAAncpU/c7vAABDyDr9xPQAALzFHP0j+gAA/sL5/P//AAD/v+ICI/r9Bf+/xALE9HgL/7+pAs7viBD/v5ICMOs7Ff+/gALb5qIZ/79uAsXiyR3/v2AC5N66If+/UwIv230l/79IAqHXGSn/vz0CMdSVLP+/NgLb0Pcv/78wAprNRDP/vysCasqBNv+/KAJGx7I5/78mAirE2jz/vyUCEsH/P/+/JgL7vSRD/78oAuG6TUb/vysCwLd+Sf+/MAKUtLlM/782AlqxB1D/vz0CC65oU/+/SAKlquVW/79TAiGnglr/v2ACeqNEXv+/bgKnnzVi/7+AAqObW2b/v5ICYpfDav+/qQLaknZv/7/EAv6NhXT/v+ICvogBev+/BQMEg/9//7++COKC/YX/v/4NxIJ5i/+/2xKqgoiQ/79hF5OCO5X/v6Ibf4Kjmf+/px9ugsmd/796I1+CuqH/vyEnUoJ8pf+/pipHghmp/78MLj6Claz/v1kxNoL3r/+/lTQwgkSz/7/ANyyCgLb/v+E6KIKxuf+//D0mgtq8/78TQSaC/7//vypEJoIkw/+/RkcogkzG/79rSiyCfcn/v5tNMIK6zP+/3FA2ggfQ/78xVD6CadP/v6FXR4Ll1v+/MFtSgoHa/7/kXl+CRN7/v8ZiboI04v+/3GZ/glvm/78wa5OCwur/v85vqoJ17/+/xXTEgoT0/78jeuKCAPr/v/9/BIP///+//3/6fP///7/bhRx9///+wjmLOn3//7zFMJBUff//Q8jOlGt9//+dyiKZf33//9HMOJ2Qff//5M4aoZ99///c0M6krH3//73SXai3ff//jNTNq8B9//9K1iKvyH3///vXY7LOff//odmTtdJ9//8/27i41n3//9jc1LvYff//bN7rvth9////3wLC2H3//5HhHcXWff//JeM9yNJ9//++5GnLzn3//1zmpM7Iff//A+jy0cB9//+06VjVt33//3Lr3Nisff//QO2E3J99//8h71bgkH3//xnxW+R/ff//LfOc6Gt9//9g9SLtVH3//7r3//E6ff//Qvo/9xx9/////Pn8+nz/////HP0/dwAA//w6/f9xAABC+lT9JG0AALr3a/2caAAAYPV+/VtkAAAt85D9V2AAABnxnv2EXAAAIe+r/d1YAABA7bb9WVUAAHLrwP3zUQAAtOnH/aNOAAAD6M39aksAAFzm0v0+SAAAvuTV/R1FAAAl49f9A0IAAJHh2P3sPgAA/9/X/dQ7AABs3tX9uDgAANjc0v2TNQAAP9vN/WQyAACh2cf9Ii8AAPvXwP3NKwAASta2/VwoAACM1Kv9zyQAAL3Snv0aIQAA3NCQ/TgdAADkzn79IhkAANHMa/3OFAAAncpU/S8QAABDyDr9OQsAALzFHP3bBQAA/sL5/AAAAAD/v+IC2wX9Bf+/xAI5C3gL/7+pAi8QiBD/v5ICzhQ7Ff+/gAIiGaIZ/79uAjgdyR3/v2ACGiG6If+/UwLPJH0l/79IAlwoGSn/vz0CzSuVLP+/NgIiL/cv/78wAmQyRDP/vysClDWBNv+/KAK4OLI5/78mAtQ72jz/vyUC7D7/P/+/JgIDQiRD/78oAh1FTUb/vysCPkh+Sf+/MAJqS7lM/782AqROB1D/vz0C81FoU/+/SAJZVeVW/79TAt1Yglr/v2AChFxEXv+/bgJXYDVi/7+AAltkW2b/v5ICm2jDav+/qQIkbXZv/7/EAgByhXT/v+ICQHcBev+/BAP5fP9//7+9CBx9/YX/v/8NOn15i/+/2hJUfYiQ/79iF2t9O5X/v6Ibf32jmf+/px+Qfcmd/796I599uqH/vyEnrH18pf+/piq3fRmp/78MLsB9laz/v1kxyH33r/+/lTTOfUSz/7/BN9J9gLb/v+E61n2xuf+//D3Yfdq8/78TQdh9/7//vypE2H0kw/+/RUfWfUzG/79rStJ9fcn/v5pNzn26zP+/3FDIfQfQ/78xVMB9adP/v6FXt33l1v+/MFusfYHa/7/kXp99RN7/v8ZikH004v+/3GZ/fVvm/78wa2t9wur/v85vVH117/+/xXQ6fYT0/78jehx9APr/v/9/+nz///+//39Ud////7+ahbN3///+wsKKBnj//7zFiY9OeP//Q8j/k414//+dyjCYxHj//9HMJpz0eP//5M7qnx55///c0IOjQnn//73S+KZgef//jNRPqnp5//9K1o2tj3n///vXt7Chef//odnQs655//8/29y2t3n//9jc4Lm9ef//bN7evL55////39u/vXn//5Hh2cK3ef//JePdxa55//++5OjIoXn//1zmAcyPef//A+gpz3p5//+06WbSYHn//3LrvdVCef//QO0x2R55//8h783c9Hj//xnxk+DEeP//LfOM5I14//9g9cPoTnj//7r3Qe0GeP//QvoY8rN3/////FT3VHf/////s/cXcgAA//wF+ENtAABC+k34w2gAALr3jPiNZAAAYPXD+JNgAAAt8/P4zFwAABnxHfkzWQAAIe9B+b5VAABA7WD5Z1IAAHLrevkqTwAAtOmP+QBMAAAD6KD56UgAAFzmrfndRQAAvuS3+dpCAAAl47z53D8AAJHhvvnfPAAA/9+8+eE5AABs3rf53TYAANjcrfnQMwAAP9ug+bcwAACh2Y/5ji0AAPvXevlPKgAAStZg+fkmAACM1EH5gyMAAL3SHfnqHwAA3NDz+CUcAADkzsP4LxgAANHMjPgAFAAAncpN+IkPAABDyAX4wgoAALzFs/eZBQAA/sJU9wAAAAD/v0sImQX9Bf+/+QfCCngL/7+wB4kPiBD/v3IHABQ7Ff+/OgcvGKIZ/78KByUcyR3/v+EG6h+6If+/vQaDI30l/7+dBvkmGSn/v4MGTyqVLP+/bwaOLfcv/79eBrcwRDP/v1EG0DOBNv+/RwbdNrI5/79BBuE52jz/vz8G3zz/P/+/QQbcPyRD/79HBtpCTUb/v1EG3UV+Sf+/XgboSLlM/79vBgFMB1D/v4MGKU9oU/+/nQZnUuVW/7+9Br5Vglr/v+EGM1lEXv+/CgfNXDVi/786B5NgW2b/v3IHjGTDav+/sAfCaHZv/7/5B0JthXT/v0sIGHIBev+/qQhUd/9//7/mDbN3/YX/v7wSBnh5i/+/OhdOeIiQ/79xG414O5X/v2sfxHijmf+/MCP0eMmd/7/MJh55uqH/v0AqQnl8pf+/mC1geRmp/7/VMHp5laz/v/0zj3n3r/+/FjeheUSz/78gOq55gLb/vyQ9t3mxuf+/I0C9edq8/78gQ755/7//vx5GvXkkw/+/Ikm3eUzG/78uTK55fcn/v0dPoXm6zP+/cVKPeQfQ/7+uVXp5adP/vwZZYHnl1v+/e1xCeYHa/78UYB55RN7/v9hj9Hg04v+/zmfEeFvm/7//a414wur/v3VwTnh17/+/PHUGeIT0/79kerN3APr/v/9/VHf///+//38jcv///79ehbRy///+wlOKM3P//7zF746jc///Q8g/kwR0//+dyk2XWXT//9HMJZukdP//5M7NnuV0///c0EyiHXX//73SqaVNdf//jNTpqHV1//9K1hCsl3X///vXI6+xdf//odkmssZ1//8/2xy11XX//9jcCbjddf//bN7vuuB1////39O93XX//5HhtsDVdf//JeOew8Z1//++5I3GsXX//1zmhcmXdf//A+iLzHV1//+06aLPTXX//3Lrz9Iddf//QO0W1uV0//8h737ZpHT//xnxCt1ZdP//LfPD4AR0//9g9bHko3P//7r33+gzc///QvpV7bRy/////CPyI3L/////tPJVbQAA//wz899oAABC+qLzsmQAALr3BPTEYAAAYPVZ9AtdAAAt86P0flkAABnx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Tpm7bP//5M7BnCJt///c0BCge23//73SP6PHbf//jNRTpgdu//9K1k+pPW7///vXOKxobv//odkRr4lu//8/292xoG7//9jcnrSubv//bN5Zt7Nu////3w66rm7//5Hhwrygbv//JeN2v4lu//++5C7CaG7//1zm7MQ9bv//A+izxwdu//+06YbKx23//3Lrac17bf//QO1f0CJt//8h72zTu2z//xnxldZFbP//LfPe2b9r//9g9U7dJmv//7r37eB5av//QvrA5LRp/////NTo02j/////tOnBZAAA//x46u1gAABC+ibrT10AALr3v+veWQAAYPVF7JRWAAAt87rsbFMAABnxIe1fUAAAIe967WpNAABA7cbth0oAAHLrB+60RwAAtOk87u1EAAAD6GfuL0IAAFzmiO53PwAAvuSg7sI8AAAl463uDzoAAJHhsu5YNwAA/9+t7p80AABs3qDu3TEAANjciO4RLwAAP9tn7jgsAACh2TzuTykAAPvXB+5SJgAAStbG7T4jAACM1HrtECAAAL3SIe3CHAAA3NC67E0ZAADkzkXssBUAANHMv+vgEQAAncom69cNAABDyHjqigkAALzFtOnzBAAA/sLU6AAAAAD/v0kW8wT9Bf+/hhWKCXgL/7/YFNcNiBD/vz4U4BE7Ff+/uROwFaIZ/79DE00ZyR3/v90Swhy6If+/hBIQIH0l/783Ej4jGSn/v/cRUiaVLP+/whFPKfcv/7+WETgsRDP/v3YRES+BNv+/XhHdMbI5/79REZ402jz/v0sRWDf/P/+/UREPOiRD/79eEcI8TUb/v3YRdz9+Sf+/lhEvQrlM/7/CEe1EB1D/v/cRtEdoU/+/NxKHSuVW/7+EEmpNglr/v90SX1BEXv+/QxNsUzVi/7+5E5VWW2b/vz4U31nDav+/2BRPXXZv/7+GFe1ghXT/v0kWwWQBev+/KRfUaP9//789G7Rp/YX/vxAfeWp5i/+/ryIma4iQ/78gJr9rO5X/v2kpRWyjmf+/kiy7bMmd/7+fLyJtuqH/v5Uye218pf+/eDXHbRmp/79KOAdulaz/vxI7PW73r/+/0D1obkSz/7+IQIlugLb/vzxDoG6xuf+/8EWubtq8/7+lSLNu/7//v19Lrm4kw/+/IU6gbkzG/7/tUIlufcn/v8ZTaG66zP+/r1Y9bgfQ/7+rWQduadP/v79cx23l1v+/7l97bYHa/789YyJtRN7/v7Bmu2w04v+/T2pFbFvm/78fbr9rwur/vyhyJmt17/+/c3Z5aoT0/78Me7RpAPr/v/9/1Gj///+//3+bZP///7/BhJll///+wi+JeWb//7zFVY0/Z///Q8g9ke5n//+dyu+UiGj//9HMc5gQaf//5M7Om4Zp///c0AWf7Gn//73SHqJEav//jNQdpY9q//9K1gWozWr///vX2qr+av//odmfrSRr//8/21ewP2v//9jcBLNQa///bN6qtVVr////30q4UGv//5Hh57o/a///JeOEvSRr//++5CPA/mr//1zmxsLNav//A+hwxY9q//+06STIRGr//3Lr5crsaf//QO23zYZp//8h75vQEGn//xnxl9OIaP//LfOv1u5n//9g9enZP2f//7r3SN15Zv//QvrW4Jll/////Jnkm2T/////mOXXYAAA//x55kldAABC+j/n6VkAALr37uewVgAAYPWI6JhTAAAt8w/pnFAAABnxhem3TQAAIe/s6eZKAABA7UTqJUgAAHLrjupxRQAAtOnM6sZCAAAD6P7qI0AAAFzmJOuDPQAAvuQ/6+g6AAAl40/rSTgAAJHhVOuqNQAA/99P6wUzAABs3j/rVjAAANjcJOugLQAAP9v+6tsqAACh2czqBigAAPvXjuoeJQAAStZE6h8iAACM1OzpBh8AAL3ShenOGwAA3NAP6XMYAADkzojo8BQAANHM7uc9EQAAnco/51YNAABDyHnmLwkAALzFmOXBBAAA/sKa5AAAAAD/v2YawQT9Bf+/hRkvCXgL/7+/GFYNiBD/vw8YPRE7Ff+/dhfwFKIZ/7/vFnMYyR3/v3kWzhu6If+/ERYGH30l/7+6FR8iGSn/v3AVHiWVLP+/MRUGKPcv/78AFdsqRDP/v9oUoC2BNv+/vxRWMLI5/7+uFAUz2jz/v6kUqjX/P/+/rhRJOCRD/7+/FOg6TUb/v9oUhD1+Sf+/ABUjQLlM/78xFcZCB1D/v3AVcUVoU/+/uhUlSOVW/78RFuZKglr/v3kWt01EXv+/7xacUDVi/792F5hTW2b/vw8Yr1bDav+/vxjpWXZv/7+FGUldhXT/v2Ya1mABev+/ZBubZP9//78nH5ll/YX/v7UieWZ5i/+/FSY/Z4iQ/79OKe5nO5X/v2csiGijmf+/Yy8Qacmd/79HMoZpuqH/vxg17Gl8pf+/2jdEahmp/7+OOo9qlaz/vzg9zWr3r/+/2z/+akSz/796QiRrgLb/vxdFP2uxuf+/tEdQa9q8/79USlVr/7//v/pMUGskw/+/p08/a0zG/79fUiRrfcn/vyRV/mq6zP+/+VfNagfQ/7/hWo9qadP/v+BdRGrl1v+/+WDsaYHa/78wZIZpRN7/v4tnEGk04v+/D2uIaFvm/7/Bbu5nwur/v6lyP2d17/+/z3Z5ZoT0/789e5llAPr/v/9/m2T///+//3+bYP///7+ShLNh///+wtiIq2L//7zF2oyHY///Q8iikElk//+dyjiU9GT//9HMoZeLZf//5M7kmg9m///c0AWegWb//73SCaHkZv//jNTzozdn//9K1semfGf///vXiam0Z///odk6rN9n//8/29+u/Wf//9jceLEPaP//bN4KtBVo////35W2D2j//5HhHbn9Z///JeOju99n//++5Cq+tGf//1zms8B8Z///A+hCwzdn//+06dnF5Gb//3Lre8iBZv//QO0pyw9m//8h7+jNi2X//xnxu9D0ZP//LfOl00lk//9g9avWh2P//7r30tmrYv//Qvog3bNh/////Jvgm2D/////s+EgXQAA//yr4tNZAABC+objrFYAALr3SOSlUwAAYPX05LpQAAAt84rl6U0AABnxDuYqSwAAIe+B5npIAABA7ePm2UUAAHLrNudDQwAAtOl857RAAAAD6LPnKT4AAFzm3uejOwAAvuT95x05AAAl4w/oljYAAJHhFegKNAAA/98P6HgxAABs3v3n3y4AANjc3uc6LAAAP9uz54kpAACh2XznyCYAAPvXNufzIwAAStbj5gkhAACM1IHmBh4AAL3SDubkGgAA3NCK5aEXAADkzvTkNxQAANHMSOSiEAAAncqG49sMAABDyKvi2AgAALzFs+GSBAAA/sKb4AAAAAD/v0oekgT9Bf+/Ux3YCHgL/794HNsMiBD/v7YbohA7Ff+/Chs3FKIZ/790GqEXyR3/v/AZ5Bq6If+/fRkGHn0l/78aGQkhGSn/v8gY8yOVLP+/ghjIJvcv/79KGIkpRDP/vx8YOiyBNv+/ARjfLrI5/7/vF3kx2jz/v+kXCjT/P/+/7xeWNiRD/78BGB05TUb/vx8Yozt+Sf+/ShgpPrlM/7+CGLRA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AACh2SXhaCQAAPvX0+C6IQAAStZx4PceAACM1P3fHBwAAL3Sd98nGQAA3NDc3hMWAADkzize3RIAANHMZd1+DwAAncqE3PMLAABDyIbbMwgAALzFado6BAAA/sIo2QAAAAD/v5UlOgT9Bf+/eCQzCHgL/795I/MLiBD/v5kifg87Ff+/0iHdEqIZ/78hIRMWyR3/v4cgJxm6If+/ASAcHH0l/7+NH/ceGSn/vyofuiGVLP+/2R5oJPcv/7+WHgQnRDP/v2QekCmBNv+/Px4PLLI5/78qHoIu2jz/vyMe7TD/P/+/Kh5QMyRD/78/Hq81TUb/v2QeCjh+Sf+/lh5kOrlM/7/ZHr08B1D/vyofGj9oU/+/jR96QeVW/78BIOBDglr/v4cgT0ZEXv+/ISHJSDVi/7/SIVBLW2b/v5ki503Dav+/eiORUHZv/794JFJThXT/v5UlLVYBev+/1iYoWf9//7/QKWha/YX/v60shlt5i/+/bS+DXIiQ/78YMmVdO5X/v680LV6jmf+/NTfdXsmd/7+vOXZfuqH/vx48/l98pf+/hT5yYBmp/7/lQNRglaz/v0FDJmH3r/+/m0VoYUSz/7/0R5phgLb/v09KvmGxuf+/rkzUYdq8/78RT9th/7//v3tR1GEkw/+/8FO+YUzG/79vVpphfcn/v/tYaGG6zP+/l1smYQfQ/79FXtRgadP/vwdhcmDl1v+/4WP+X4Ha/7/XZndfRN7/v+tp3V404v+/Im0tXlvm/7+AcGRdwur/vwx0hFx17/+/yneGW4T0/7/De2laAPr/v/9/KFn///+//3+lVf///78ShPdW///+wuaHI1j//7zFhIsuWf//Q8jyjhxa//+dyjaS71r//9HMVZWpW///5M5SmExc///c0DKb3Fz//73S+J1XXf//jNSnoL9d//9K1kKjFl7///vXy6VbXv//odlFqJFe//8/27GquV7//9jcE63PXv//bN5rr9de////37uxz17//5HhBrS5Xv//JeNMtpFe//++5JC4W17//1zm07oWXv//A+gXvb9d//+06V6/V13//3LrqMHcXP//QO36w0xc//8h71PGqVv//xnxt8jvWv//LfMoyxxa//9g9ajNLln//7r3O9AjWP//Qvrk0vdW/////KbVplX/////9tbkUgAA//wi2DxQAABC+i7ZqE0AALr3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TUb/vzYthy9+Sf+/dy15MblM/7/KLWYzB1D/vy8uTjVoU/+/qy41N+VW/786Lxs5glr/v+IvADtEXv+/oDDlPDVi/794Mcw+W2b/v2oytUDDav+/eTOjQnZv/7+oNJVEhXT/v/o1jUYBev+/cTeOSP9//79xOQVK/YX/v2o7Vkt5i/+/Wz2FTIiQ/79IP5VNO5X/vzNBh06jmf+/GUNdT8md/7/+RB1QuqH/v+NGw1B8pf+/yEhTURmp/7+vSs5Rlaz/v5lMNVL3r/+/hU6GUkSz/792UMdSgLb/v25S9VKxuf+/bVQQU9q8/79yVhlT/7//v4FYEFMkw/+/mlr1UkzG/7+/XMdSfcn/v/Beh1K6zP+/MGE1UgfQ/7+AY85RadP/v+JlU1Hl1v+/V2jDUIHa/7/jah1QRN7/v4ZtXk804v+/RHCGTlvm/78gc5VNwur/vx12hEx17/+/PnlWS4T0/7+IfAVKAPr/v/9/jUj///+//39sRf///79Rg+hG///+wnmGPkj//7zFfIlxSf//Q8hcjIZK//+dyh6PfUv//9HMxJFZTP//5M5RlBxN///c0MeWxk3//73SKJlaTv//jNR2m9hO//9K1rOdQU////vX4J+WT///odn/odhP//8/2xGkBlD//9jcGKYiUP//bN4VqCtQ////3wiqIlD//5Hh86sGUP//JePXrdhP//++5LWvlk///1zmjbFBT///A+hhs9hO//+06TG1WU7//3Lr/rbGTf//QO3JuBxN//8h75S6WUz//xnxXrx9S///LfMovoZK//9g9fS/ckn//7r3w8E+SP//QvqVw+hG/////GzFbEX/////58aWQwAA//w9yMRBAABC+nHJ9T8AALr3hsooPgAAYPV9y108AAAt81nMlDoAABnxG83KOAAAIe/Gzf42AABA7VnOMDUAAHLr185hMwAAtOlAz40xAAAD6JXPtS8AAFzm18/YLQAAvuQG0PQrAAAl4yHQCSoAAJHhK9AVKAAA/98h0BkmAABs3gbQEiQAANjc188AIgAAP9uVz+AfAACh2UDPsx0AAPvX1852GwAAStZZzicZAACM1MbNxxYAAL3SG81RFAAA3NBZzMURAADkzn3LHg8AANHMhspdDAAAncpxyXwJAABDyD3IegYAALzF58ZSAwAA/sJsxQAAAAD/vxc5UgP9Bf+/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2jz/v3BCxx7/P/+/ekJEICRD/7+YQrkhTUb/v8lCJCN+Sf+/D0OHJLlM/79pQ+ElB1D/v9dDMidoU/+/XER8KOVW/7/2RL4pglr/v6hF9ypEXv+/cEYoLDVi/79QR1ItW2b/v0tIdS7Dav+/YkmOL3Zv/7+USqAwhXT/v+VLqTEBev+/VU2qMv9//79VTho0/YX/v19PaTV5i/+/b1CcNoiQ/7+KUbI3O5X/v6xSrTijmf+/1lOOOcmd/78HVVY6uqH/v0FWCDt8pf+/gleiOxmp/7/MWCY8laz/vx1aljz3r/+/d1vwPESz/7/aXDQ9gLb/v0VeZz2xuf+/ul+EPdq8/784YY49/7//v79ihD0kw/+/UWRnPUzG/7/uZTU9fcn/v5Zn8Dy6zP+/SmmWPAfQ/78LayY8adP/v9lsojvl1v+/tW4IO4Ha/7+fcFc6RN7/v5pyjjk04v+/pXSsOFvm/7/BdrI3wur/v/F4nDZ17/+/NXtqNYT0/7+OfRo0APr/v/9/qjL///+//39mL////79Igs4w///+wn2EFzL//7zFnoZCM///Q8iuiFM0//+dyqyKSjX//9HMmowoNv//5M55ju82///c0EmQnjf//73SDJI2OP//jNTBk7o4//9K1mqVJzn///vXCJeBOf//odmZmMY5//8/2yCa9zn//9jcnJsVOv//bN4OnR46////33eeFTr//5Hh1p/3Of//JeMrocY5//++5HiigTn//1zmvKMnOf//A+j3pLo4//+06SmmNjj//3LrU6eeN///QO11qO82//8h742pKTb//xnxnqpKNf//LfOlq1M0//9g9aOsQzP//7r3ma0XMv//QvqErs4w/////GavZi//////zbCFLgAA//wWspgtAABC+kOzpCwAALr3VLSlKwAAYPVJtZ4qAAAt8yi2jikAABnx77Z1KAAAIe+dt1MnAABA7Ta4KSYAAHLrubj3JAAAtOknubwjAAAD6IC5eCIAAFzmxrkrIQAAvuT3udYfAAAl4xS6dx4AAJHhHroPHQAA/98UupwbAABs3ve5IBoAANjcxrmZGAAAP9uAuQgXAACh2Se5axUAAPvXubjCEwAAStY2uAwSAACM1J23SRAAAL3S77Z5DgAA3NAotpoMAADkzkq1qwoAANHMVLStCAAAncpDs54GAABDyBayfQQAALzF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AAAD6I6V7AwAAFzmtZV3DAAAvuTRlfwLAAAl4+KVewsAAJHh55X0CgAA/9/ilWcKAABs3tGV1QkAANjctZU9CQAAP9uOlaEIAACh2VqVAQgAAPvXHpVbBwAAStbVlK8GAACM1IGUAQYAAL3SIpROBQAA3NC3k5UEAADkzkKT2wMAANHMwZIbAwAAnco1kloCAABDyJ6RkwEAALzF+pDLAAAA/sJOkAAAAAD/vwNvywD9Bf+/YG6TAXgL/7/JbVoCiBD/vz1tGwM7Ff+/vGzbA6IZ/79HbJUEyR3/v9trTgW6If+/fWsBBn0l/78pa68GGSn/v+BqWweVLP+/o2oBCPcv/79vaqEIRDP/v0lqPQmBNv+/LWrVCbI5/78camcK2jz/vxdq9Ar/P/+/HGp7CyRD/78tavwLTUb/v0lqdwx+Sf+/cGrsDLlM/7+ialsNB1D/v99qww1oU/+/KWskDuVW/798a4AOglr/v9xr1A5EXv+/R2wgDzVi/7+7bGYPW2b/vzxtpA/Dav+/yG3bD3Zv/79gbgoQhXT/vwNvLxABev+/r29OEP9//7/Ob/wQ/YX/v/VvnRF5i/+/I3A0EoiQ/79acMESO5X/v5hwQROjmf+/3nC4E8md/78rcSEUuqH/v39xgBR8pf+/2nHVFBmp/788ch0Vlaz/v6RyXBX3r/+/E3OOFUSz/7+Ic7YVgLb/vwN00hWxuf+/hHTiFdq8/78LdegV/7//v5d14hUkw/+/KXbSFUzG/7/AdrYVfcn/v1x3jRW6zP+//ndcFQfQ/7+keB0VadP/v0551hTl1v+//XmAFIHa/7+xeiEURN7/v2h7txM04v+/I3xBE1vm/7/ifMESwur/v6V9NBJ17/+/a36dEYT0/78zf/wQAPr/v/9/ThD///+//39QC////7+NgM4L///+whmBQwz//7zFo4GyDP//Q8grghgN//+dyrKCdw3//9HMNoPPDf//5M63gx0O///c0DaEZA7//73SsoSiDv//jNQrhdkO//9K1qGFBw////vXE4YrD///odmChkkP//8/2+2GXg///9jcVIdrD///bN63h28P////3xaIag///5HhcIheD///JePGiEkP//++5BiJKw///1zmZIkHD///A+isidkO//+06e+JoQ7//3LrLIpkDv//QO1lih4O//8h75eKzw3//xnx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") }] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_rtfft"] +shader = ExtResource("5_mtxcm") +shader_parameter/sky_color = Color(0.03, 0.05, 0.11, 1) +shader_parameter/star_base_color = Color(0.8, 1, 0.3, 1) +shader_parameter/star_hue_offset = 0.6 +shader_parameter/star_intensity = 0.08 +shader_parameter/layer_scale = 20.0 +shader_parameter/layer_scale_step = 10.0 +shader_parameter/layers_count = 3 + +[sub_resource type="Sky" id="Sky_65b6a"] +sky_material = SubResource("ShaderMaterial_rtfft") + +[sub_resource type="Environment" id="Environment_wpkhm"] +background_mode = 2 +sky = SubResource("Sky_65b6a") +sky_custom_fov = 61.7 +ambient_light_source = 3 +glow_intensity = 1.16 +glow_bloom = 0.49 +glow_hdr_threshold = 0.32 +glow_hdr_scale = 0.0 +glow_hdr_luminance_cap = 5.63 +fog_light_energy = 0.0 +fog_density = 0.0 +fog_sky_affect = 0.0 +fog_height = -1024.0 +fog_height_density = 0.4145 +adjustment_enabled = true + +[sub_resource type="QuadMesh" id="QuadMesh_hqt5a"] +size = Vector2(2, 2) + +[sub_resource type="Animation" id="Animation_e6ukh"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(-1.1571884, -0.20724177, 17.413101)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("%TrailerCamera/..:fertility_factor") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [0.0] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("%Terrain:rotation") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 0, 0)] +} + +[sub_resource type="Animation" id="Animation_hqt5a"] +resource_name = "trailer" +length = 20.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 20), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector3(-1.1571884, -0.20724177, 17.413101), Vector3(-1.1571884, -0.20724177, 36.067177)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("%TrailerCamera/..:fertility_factor") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(2.7666667, 19.9), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [0.0, 1.0] +} +tracks/2/type = "value" +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/path = NodePath("%Terrain:rotation") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/keys = { +"times": PackedFloat32Array(-0.06666668, 19.933332), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector3(0, 0, 0), Vector3(0, 3.1415927, 0)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_8o8xi"] +_data = { +&"RESET": SubResource("Animation_e6ukh"), +&"trailer": SubResource("Animation_hqt5a") +} + [node name="Planet3d" type="Node3D" unique_id=866166298] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0020446777, 0, 0) script = ExtResource("1_8pb0u") -noise = SubResource("FastNoiseLite_nvlxv") +noise = SubResource("FastNoiseLite_mtxcm") height = 3.81 -terrain_material = SubResource("ShaderMaterial_mtxcm") +terrain_material = ExtResource("2_mtxcm") water_level = 0.4 water_material = ExtResource("4_nvlxv") [node name="Terrain" type="MeshInstance3D" parent="." unique_id=524037989] unique_name_in_owner = true -mesh = SubResource("ArrayMesh_mtxcm") +mesh = SubResource("ArrayMesh_e6ukh") [node name="Water" type="MeshInstance3D" parent="." unique_id=2039675609] unique_name_in_owner = true -mesh = SubResource("ArrayMesh_e6ukh") +mesh = SubResource("ArrayMesh_hqt5a") + +[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1557619715] +environment = SubResource("Environment_wpkhm") + +[node name="TrailerCamera" type="Camera3D" parent="." unique_id=2053399428] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.1571884, -0.20724177, 17.413101) +near = 0.003 + +[node name="MeshInstance3D" type="MeshInstance3D" parent="TrailerCamera" unique_id=1527788503] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.263265e-08, 0, -0.7177747) +mesh = SubResource("QuadMesh_hqt5a") +surface_material_override/0 = ExtResource("6_e6ukh") + +[node name="AnimationPlayer" type="AnimationPlayer" parent="TrailerCamera" unique_id=749734737] +libraries/ = SubResource("AnimationLibrary_8o8xi") diff --git a/stages/title_screen/resources/shaders/stars.gdshader b/stages/title_screen/resources/shaders/stars.gdshader index 2d405c6..e4919a1 100644 --- a/stages/title_screen/resources/shaders/stars.gdshader +++ b/stages/title_screen/resources/shaders/stars.gdshader @@ -4,7 +4,7 @@ shader_type sky; // Comment this if you don't want to use star twinke. However, if you do want to keep it, // I suggest you to set the sky process mode to High-Quality Incremental or Real-Time, // as star twinkling may greatly impact performance. -#define USE_TWINKLE +// #define USE_TWINKLE group_uniforms sky; uniform vec3 sky_color: source_color = vec3(0.03, 0.05, 0.11); diff --git a/stages/title_screen/resources/shaders/terrain.gdshader b/stages/title_screen/resources/shaders/terrain.gdshader index b556229..d54d776 100644 --- a/stages/title_screen/resources/shaders/terrain.gdshader +++ b/stages/title_screen/resources/shaders/terrain.gdshader @@ -3,13 +3,19 @@ shader_type spatial; render_mode world_vertex_coords; + uniform float specular = 0.8; uniform float roughness = 0.6; uniform float radius = 8.0; uniform float height = 4; uniform sampler2D gradient: repeat_disable; +uniform sampler2D random_fertility_texture; +uniform sampler2D fertility_gradient: repeat_disable; +uniform float fertility_factor: hint_range(0, 1.) = 0.5; + varying vec4 world_vert; +varying vec4 vert; void vertex() { world_vert = inverse(MODEL_MATRIX) * vec4(VERTEX,1.0); @@ -19,9 +25,15 @@ void fragment() { METALLIC = 0.0; SPECULAR = specular; ROUGHNESS = roughness; + + float fertility_score = texture(random_fertility_texture, UV).r; + float color_uv = (length(world_vert.xyz) - radius) / (height); + if (fertility_score < fertility_factor) { + ALBEDO = texture(fertility_gradient, vec2(color_uv, 0.0)).rgb; + } else { + ALBEDO = texture(gradient, vec2(color_uv, 0.0)).rgb; + } - float color_uv = (length(world_vert.xyz) - radius) / (height); - ALBEDO = texture(gradient, vec2(color_uv, 0.0)).rgb; } //void light() { diff --git a/stages/title_screen/scripts/planet_3d.gd b/stages/title_screen/scripts/planet_3d.gd index d5a159d..2956c23 100644 --- a/stages/title_screen/scripts/planet_3d.gd +++ b/stages/title_screen/scripts/planet_3d.gd @@ -16,6 +16,12 @@ class_name Planet3D if is_node_ready(): update_terrain() +@export var fertility_factor : float = 0: + set(v): + fertility_factor = min(1.,max(0.,v)) + if is_node_ready(): + update_terrain() + @export_group("Terrain") @export var noise : Noise = FastNoiseLite.new(): @@ -105,6 +111,7 @@ func update_terrain() -> void: if terrain_material and terrain_material is ShaderMaterial: terrain_material.set_shader_parameter("radius", radius) terrain_material.set_shader_parameter("height", height) + terrain_material.set_shader_parameter("fertility_factor", fertility_factor) func update_water() -> void: if !water or %Water == null: diff --git a/stages/title_screen/scripts/title_screen.gd b/stages/title_screen/scripts/title_screen.gd index d0f5438..ba9ae0a 100644 --- a/stages/title_screen/scripts/title_screen.gd +++ b/stages/title_screen/scripts/title_screen.gd @@ -11,43 +11,55 @@ var prev_mouse_pos : Vector2 var next_mouse_pos : Vector2 func _ready(): - %Version.text = ProjectSettings.get_setting("application/config/version") - %Start.text = tr("CONTINUE") if GameInfo.game_loaded else tr("START") - %Restart.visible = GameInfo.game_loaded + %Version.text = ProjectSettings.get_setting("application/config/version") + %Start.text = tr("CONTINUE") if GameInfo.game_data else tr("START") + %Restart.visible = GameInfo.game_data != null + if GameInfo.game_data: + %Planet3d.fertility_factor = ( + max(0,float(GameInfo.game_data.progression_data.story_step_i - 1)) + / len( + GameInfo.game_data.progression_data.get_all_story_steps() + ) - 1 + ) func _on_start_pressed(): - if GameInfo.game_data and GameInfo.game_data.last_game_scene: - SceneManager.change_to_scene(GameInfo.game_data.last_game_scene) - else: - SceneManager.change_to_scene_id("INTRO") + if GameInfo.game_data : + if GameInfo.game_data.last_game_scene: + SceneManager.change_to_scene(GameInfo.game_data.last_game_scene) + else : + SceneManager.change_to_scene(CockpitScene.new()) + else: + GameInfo.start_game_data() + SceneManager.change_to_scene(IntroScene.new()) func _process(delta): - next_mouse_pos = get_viewport().get_mouse_position() - if Input.is_action_just_pressed("action"): - rotating = true - prev_mouse_pos = get_viewport().get_mouse_position() - if Input.is_action_just_released("action"): - rotating = false - planet_acceleration = Vector2( - float(next_mouse_pos.x - prev_mouse_pos.x), - float(next_mouse_pos.y - prev_mouse_pos.y) - ) - - var planet_rotation = planet_acceleration + next_mouse_pos = get_viewport().get_mouse_position() + if Input.is_action_just_pressed("action"): + rotating = true + prev_mouse_pos = get_viewport().get_mouse_position() + if Input.is_action_just_released("action"): + rotating = false + planet_acceleration = Vector2( + float(next_mouse_pos.x - prev_mouse_pos.x), + float(next_mouse_pos.y - prev_mouse_pos.y) + ) + + var planet_rotation = planet_acceleration - if rotating: - planet_rotation = Vector2( - float(next_mouse_pos.x - prev_mouse_pos.x), - float(next_mouse_pos.y - prev_mouse_pos.y) - ) - prev_mouse_pos = next_mouse_pos - else : - planet_acceleration = planet_acceleration.lerp(DEFAULT_PLANET_ACCELERATION, 0.1) + if rotating: + planet_rotation = Vector2( + float(next_mouse_pos.x - prev_mouse_pos.x), + float(next_mouse_pos.y - prev_mouse_pos.y) + ) + prev_mouse_pos = next_mouse_pos + else : + planet_acceleration = planet_acceleration.lerp(DEFAULT_PLANET_ACCELERATION, 0.1) - %Planet3d.rotate(Vector3.UP, planet_rotation.x * delta) - %Planet3d.rotate(Vector3.RIGHT, planet_rotation.y * delta) + %Planet3d.rotate(Vector3.UP, planet_rotation.x * delta) + %Planet3d.rotate(Vector3.RIGHT, planet_rotation.y * delta) func _on_restart_button_down(): - GameInfo.restart_game_data() - _on_start_pressed() + GameInfo.start_game_data() + SceneManager.change_to_scene(IntroScene.new()) + diff --git a/stages/title_screen/title_screen.tscn b/stages/title_screen/title_screen.tscn index 6343c18..194cfe4 100644 --- a/stages/title_screen/title_screen.tscn +++ b/stages/title_screen/title_screen.tscn @@ -8,46 +8,23 @@ [ext_resource type="PackedScene" uid="uid://cm5b7w7j6527f" path="res://stages/title_screen/planet_3d.tscn" id="5_7a1qq"] [ext_resource type="PackedScene" uid="uid://c8flevrkelpvy" path="res://gui/credits/socials/instagram.tscn" id="6_7a1qq"] [ext_resource type="PackedScene" uid="uid://bc3byq8e45ejj" path="res://gui/credits/socials/steam.tscn" id="7_nmsah"] -[ext_resource type="Shader" uid="uid://bv2rghn44mrrf" path="res://stages/title_screen/resources/shaders/stars.gdshader" id="7_y6tw6"] +[ext_resource type="Shader" uid="uid://cuni3ggtw2uuy" path="res://common/vfx/materials/shaders/blur.gdshader" id="8_pjo5j"] +[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="9_5mxqx"] +[ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="10_tsp1v"] +[ext_resource type="Texture2D" uid="uid://b75k12a4wc5t4" path="res://common/icons/book-2.svg" id="11_3aitq"] +[ext_resource type="Texture2D" uid="uid://dbv5hm7lyi1f6" path="res://common/icons/infinity.svg" id="12_igvpv"] [sub_resource type="ViewportTexture" id="ViewportTexture_6yuhi"] viewport_path = NodePath("SubViewport") -[sub_resource type="FastNoiseLite" id="FastNoiseLite_yctb5"] +[sub_resource type="ShaderMaterial" id="ShaderMaterial_lwj2x"] +shader = ExtResource("8_pjo5j") +shader_parameter/strength = 5.00000023424012 +shader_parameter/mix_percentage = 0.3 + +[sub_resource type="FastNoiseLite" id="FastNoiseLite_60mme"] frequency = 1.0 -[sub_resource type="ShaderMaterial" id="ShaderMaterial_7a1qq"] -shader = ExtResource("7_y6tw6") -shader_parameter/sky_color = Color(0.03, 0.05, 0.11, 1) -shader_parameter/star_base_color = Color(0.8, 1, 0.3, 1) -shader_parameter/star_hue_offset = 0.6 -shader_parameter/star_intensity = 0.08 -shader_parameter/star_twinkle_speed = 0.8 -shader_parameter/star_twinkle_intensity = 0.2 -shader_parameter/layer_scale = 20.0 -shader_parameter/layer_scale_step = 10.0 -shader_parameter/layers_count = 3 - -[sub_resource type="Sky" id="Sky_65b6a"] -sky_material = SubResource("ShaderMaterial_7a1qq") - -[sub_resource type="Environment" id="Environment_nmsah"] -background_mode = 2 -sky = SubResource("Sky_65b6a") -sky_custom_fov = 61.7 -ambient_light_source = 3 -glow_intensity = 1.16 -glow_bloom = 0.49 -glow_hdr_threshold = 0.32 -glow_hdr_scale = 0.0 -glow_hdr_luminance_cap = 5.63 -fog_light_energy = 0.0 -fog_density = 0.0 -fog_sky_affect = 0.0 -fog_height = -1024.0 -fog_height_density = 0.4145 -adjustment_enabled = true - [node name="TitleScreen" type="CanvasLayer" unique_id=1166097103] script = ExtResource("1_6yuhi") @@ -130,7 +107,6 @@ size_flags_horizontal = 3 size_flags_vertical = 4 [node name="Socials" type="VBoxContainer" parent="MarginContainer" unique_id=1306915726] -visible = false layout_mode = 2 size_flags_horizontal = 8 size_flags_vertical = 8 @@ -141,30 +117,82 @@ size_flags_horizontal = 8 [node name="SteamButton" parent="MarginContainer/Socials" unique_id=1181450581 instance=ExtResource("7_nmsah")] layout_mode = 2 +link = "https://store.steampowered.com/app/4444510/Seeding_The_Wasteland/" + +[node name="ModeChoose" type="Control" parent="." unique_id=1527342716] +unique_name_in_owner = true +visible = false +z_index = 2 +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="ColorRect" type="ColorRect" parent="ModeChoose" unique_id=301172574] +material = SubResource("ShaderMaterial_lwj2x") +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0.0352941, 0.0196078, 0.12549, 0.705882) + +[node name="VBoxContainer" type="VBoxContainer" parent="ModeChoose" unique_id=2135671035] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +alignment = 1 + +[node name="Label" type="Label" parent="ModeChoose/VBoxContainer" unique_id=513644546] +layout_mode = 2 +text = "CHOOSE_GAME_MODE" +label_settings = ExtResource("9_5mxqx") +horizontal_alignment = 1 + +[node name="StoryModeStart" type="Button" parent="ModeChoose/VBoxContainer" unique_id=1236564484] +layout_mode = 2 +size_flags_horizontal = 4 +theme = ExtResource("10_tsp1v") +text = "STORY_MODE" +icon = ExtResource("11_3aitq") +flat = true + +[node name="InfiniteModeStart" type="Button" parent="ModeChoose/VBoxContainer" unique_id=516318256] +layout_mode = 2 +size_flags_horizontal = 4 +theme = ExtResource("10_tsp1v") +text = "INFINITE_MODE" +icon = ExtResource("12_igvpv") +flat = true [node name="SubViewport" type="SubViewport" parent="." unique_id=1703203942] size = Vector2i(1980, 1080) [node name="Planet3d" parent="SubViewport" unique_id=926789923 instance=ExtResource("5_7a1qq")] unique_name_in_owner = true -noise = SubResource("FastNoiseLite_yctb5") +noise = SubResource("FastNoiseLite_60mme") [node name="Camera3D" type="Camera3D" parent="SubViewport" unique_id=806252928] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.369979, 0, 64.323425) current = true fov = 34.0 -[node name="WorldEnvironment" type="WorldEnvironment" parent="SubViewport" unique_id=466718971] -environment = SubResource("Environment_nmsah") - -[node name="DirectionalLight3D" type="DirectionalLight3D" parent="SubViewport" unique_id=1446693225] +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="SubViewport" unique_id=1113690056] transform = Transform3D(0.044800885, 0.76661056, -0.6405476, -0.8325595, 0.38302267, 0.4001729, 0.55212104, 0.51536596, 0.65540874, -23.18848, 19.508549, 0) light_volumetric_fog_energy = 0.0 light_specular = 0.0 shadow_enabled = true shadow_normal_bias = 0.0 -shadow_opacity = 0.48 -shadow_blur = 3.055 +shadow_opacity = 0.92 +shadow_blur = 4.667 [connection signal="pressed" from="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Start" to="." method="_on_start_pressed"] [connection signal="button_down" from="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Restart" to="." method="_on_restart_button_down"] +[connection signal="button_down" from="ModeChoose/VBoxContainer/StoryModeStart" to="." method="_on_story_mode_start_button_down"] +[connection signal="button_down" from="ModeChoose/VBoxContainer/InfiniteModeStart" to="." method="_on_infinite_mode_start_button_down"] diff --git a/translation/dialogs/dialogic_character_translations.csv b/translation/dialogs/dialogic_character_translations.csv index 2f91bc9..bf6f321 100644 --- a/translation/dialogs/dialogic_character_translations.csv +++ b/translation/dialogs/dialogic_character_translations.csv @@ -1,7 +1,10 @@ -keys,fr -Character/87/name,Demeter -Character/87/nicknames, -, -Character/1e/name,??? -Character/1e/nicknames, -, +keys,en,fr +Character/9a/name,Demeter,Demeter +Character/9a/nicknames,, +,, +Character/e4/name,Developer,Développeur +Character/e4/nicknames,, +,, +Character/9b/name,???,??? +Character/9b/nicknames,, +,, diff --git a/translation/dialogs/dialogic_character_translations.csv.import b/translation/dialogs/dialogic_character_translations.csv.import index 2b5fd5c..7303688 100644 --- a/translation/dialogs/dialogic_character_translations.csv.import +++ b/translation/dialogs/dialogic_character_translations.csv.import @@ -2,18 +2,18 @@ importer="csv_translation" type="Translation" -uid="uid://7wpgi5jkyqi3" +uid="uid://8ru3ae0ao4pj" [deps] -files=["res://translation/dialogs/dialogic_character_translations.fr.translation"] +files=["res://translation/dialogs/dialogic_character_translations.en.translation", "res://translation/dialogs/dialogic_character_translations.fr.translation"] source_file="res://translation/dialogs/dialogic_character_translations.csv" -dest_files=["res://translation/dialogs/dialogic_character_translations.fr.translation"] +dest_files=["res://translation/dialogs/dialogic_character_translations.en.translation", "res://translation/dialogs/dialogic_character_translations.fr.translation"] [params] -compress=true +compress=1 delimiter=0 unescape_keys=false unescape_translations=true diff --git a/translation/dialogs/dialogic_demeter_astra_failed_translation.csv b/translation/dialogs/dialogic_demeter_astra_failed_translation.csv index 028e5a5..f5bd062 100644 --- a/translation/dialogs/dialogic_demeter_astra_failed_translation.csv +++ b/translation/dialogs/dialogic_demeter_astra_failed_translation.csv @@ -1,23 +1,24 @@ -keys,fr -Text/1f/text,[color=#FFA617]{orchidName}[/color] ! -Text/20/text,On dirait que ta batterie s’est déchargée.[pause=0.3].[pause=0.3].[pause=0.3] -Choice/21/text,Désolé… -Choice/21/disabled_text, -Choice/22/text,C’est trop difficile ! -Choice/22/disabled_text, -Choice/23/text,Je fais de mon mieux ! -Choice/23/disabled_text, -Text/24/text,"Ce n’est pas grave [color=#FFA617]Orchid[/color] ![pause=0.5] J’ai attendu des années pour ce moment,[pause=0.3] je peux attendre encore un peu !" -Text/25/text,"Je t’ai trouvé un nouveau corps,[pause=0.2] et un nouveau vaisseau t’attend dehors.[pause=0.5] Par contre,[pause=0.2] je n’ai pas pu récupérer tes graines.[pause=0.3].[pause=0.3].[pause=0.3] j’espère que tu en trouveras d’autres !" -Text/26/text,Tu as besoin de conseils ? -Choice/27/text,"Non merci, ça va ! " -Choice/27/disabled_text, -Choice/28/text,Vous pouvez me réexpliquer comment remplir mes objectifs ? -Choice/28/disabled_text, -Text/29/text,"Quand tu sortiras de la base,[pause=0.3] tu arriveras dans une petite zone jaune.[pause=0.5] C’est une [b]zone fertile[/b],[pause=0.3] créée par le retour du Talion.[pause=0.5] Tu ne peux planter de graines que dans ces zones." -Text/2a/text,"Tu devras trouver des graines.[pause=0.5] Pour cela,[pause=0.2] c’est très simple,[pause=0.3] tu prends ta pelle,[pause=0.2] et tu casses des cailloux ![pause=0.5] De préférence ceux avec des cristaux dedans,[pause=0.3] ce sont des [b]veines de Talion[/b]." -Text/2b/text,"A chaque fois que tu utilises un outil ou que tu plantes une graine,[pause=0.3] tu utiliseras une [b]charge d'énergie[/b].[pause=0.5] Quand tu n’en as plus,[pause=0.3] tu peux aller te recharger à la [b]station de recharge[/b] que tu trouveras près de l’entrée de la base.[pause=0.5] A chaque fois que tu te recharges,[pause=0.3] le temps passera.[pause=0.5] Une journée pour être précise (non, ta batterie n’est pas très bonne),[pause=0.2] et les plantes grandiront !" -Text/2c/text,Tu dois obtenir assez de [b]points de plantes[/b] pour recharger les réservoirs de l'[color=#FFA617]Internode[/color].[pause=0.5] Chaque plante te donnera un ou plusieurs [b]points de plante[/b] quand elle est mature. -Text/2d/text,"Ah oui,[pause=0.3] j’ai failli oublier ![pause=0.5] Certaines plantes peuvent subir des [b]mutations[/b] qui affectent les points qu’elles donnent ou leur comportement.[pause=0.5] Tu peux obtenir des graines mutées en récoltant des plantes matures avec ta pelle, ou attendre qu'elles meurent." -Text/2e/text,J’espère que ça t’a aidé ! -Text/2f/text,"Je t’envoie un ascenseur,[pause=0.3] à bientôt !" +keys,en,fr +Text/11/text,Hello again !,[color=#FFA617]{orchidName}[/color] ! +Text/12/text,It seems that you ran out of energy.[pause=0.5].[pause=0.5].,On dirait que tu a été à cours d'énergie.[pause=0.3].[pause=0.3].[pause=0.3] +Choice/13/text,I'm sorry...,Désolé… +Choice/13/disabled_text,, +Choice/14/text,That's really hard !,C'est trop difficile ! +Choice/14/disabled_text,, +Choice/15/text,I'm doing my best !,Je fais de mon mieux ! +Choice/15/disabled_text,, +Text/16/text,"It's ok [color=#FFA617]Orchid[/color] ![pause=0.5] I have spent years waiting for this moment,[pause=0.2] I can wait more !","Ce n'est pas grave [color=#FFA617]Orchid[/color] ![pause=0.5] J'ai attendu des années pour ce moment,[pause=0.3] je peux attendre encore un peu !" +Text/17/text,"I found you a new body,[pause=0.2] and a new ship is waiting for you outside,[pause=0.2] but I'm afraid I couldn't get your seeds.[pause=0.3].[pause=0.3].[pause=0.3] I hope you'll find new ones !","Je t'ai trouvé un nouveau corps,[pause=0.2] et un nouveau vaisseau t'attend dehors.[pause=0.5] Par contre,[pause=0.2] je n'ai pas pu récupérer tes graines.[pause=0.3].[pause=0.3].[pause=0.3] j'espère que tu en trouveras d'autres !" +Text/18/text,Do you need some advices ?,Tu as besoin de conseils ? +Choice/19/text,"No, I'm ok.","Non merci, ça va ! " +Choice/19/disabled_text,, +Choice/1a/text,Can I have some explanations on how all of this works again ?,Vous pouvez me réexpliquer comment remplir mes objectifs ? +Choice/1a/disabled_text,, +Text/9c/text,"When you start a region,[pause=0.2] search for the [b]Recharge Station[/b], there is always one near.","Quand tu arrives quelque part,[pause=0.2] cherche la [b]Station de Recharge[/b], il y en a toujours une pas très loin." +Text/9d/text,"Then,[pause=0.3] you'll have to find seeds by smashing some [b]Talion Veins[/b] in the stones with your pickaxe.","Puis,[pause=0.3] tu dois récupérer des graines en brisant des [b]Veines de Talion[/b] dans la pierre avec ta pioche." +Text/9e/text,"You can then plant seeds in the yellow moss you'll find on the ground, it's the only [b]Fertile Zones[/b].","Tu pourras planter ces graines dans la mousse jaune que tu trouvera par terre, ce sont les seules [b]Zones Fertiles[/b]." +Text/9f/text,"When you are out of [b]Energy[/b], you can recharge on the [b]Recharge Station[/b], time will pass and plants will grow.","Tu pourras planter ces graines dans la mousse jaune que tu trouveras par terre, ce sont les seules [b]Zones Fertiles[/b]." +Text/a0/text,"Each seed is different by their [b]Mutations[/b], and you can get same or better seed from a plant by destroying it when mature, or waiting the end of their lifetime.","Chaque graine est unique par ses [b]Mutations[/b], et tu pourras récupérer de meilleure graines en détruisant une plante mature, ou en attendant qu'elle meurt." +Text/a1/text,"Plants generate [b]Plant Points[/b] when mature, get enough plant points to fill the reservoir of the [color=#FFA617]Internode[/color].","Une fois mature, les plantes génèrent des [b]Points de Plantes[/b], récupère-en assez pour remplir le réservoir de l'[color=#FFA617]Internode[/color]." +Text/21/text,Hope I helped.,J'espère que ça t'a aidé ! +Text/22/text,"I'm sending you an elevator,[pause=0.3] see you soon !","Je t'envoie un ascenseur,[pause=0.3] à bientôt !" diff --git a/translation/dialogs/dialogic_demeter_astra_failed_translation.csv.import b/translation/dialogs/dialogic_demeter_astra_failed_translation.csv.import index fb29bad..5430b45 100644 --- a/translation/dialogs/dialogic_demeter_astra_failed_translation.csv.import +++ b/translation/dialogs/dialogic_demeter_astra_failed_translation.csv.import @@ -2,14 +2,14 @@ importer="csv_translation" type="Translation" -uid="uid://bbjk55japg5dk" +uid="uid://cn6vgwc4ldw84" [deps] -files=["res://translation/dialogs/dialogic_demeter_astra_failed_translation.fr.translation"] +files=["res://translation/dialogs/dialogic_demeter_astra_failed_translation.en.translation", "res://translation/dialogs/dialogic_demeter_astra_failed_translation.fr.translation"] source_file="res://translation/dialogs/dialogic_demeter_astra_failed_translation.csv" -dest_files=["res://translation/dialogs/dialogic_demeter_astra_failed_translation.fr.translation"] +dest_files=["res://translation/dialogs/dialogic_demeter_astra_failed_translation.en.translation", "res://translation/dialogs/dialogic_demeter_astra_failed_translation.fr.translation"] [params] diff --git a/translation/dialogs/dialogic_demeter_introV2_translation.csv b/translation/dialogs/dialogic_demeter_introV2_translation.csv deleted file mode 100644 index e46ce32..0000000 --- a/translation/dialogs/dialogic_demeter_introV2_translation.csv +++ /dev/null @@ -1,41 +0,0 @@ -keys,fr -Text/4d/text,"Hi ![pause=0.3] Phew,[pause=0.2] I thought no one would reply.[pause=0.3] Are you [color=#FFA617]Orchid[/color] ?[pause=0.3] You may not be familiar with this name but you must have seen it in your memory." -Choice/4e/text,Uh... Who are you ? -Choice/4e/disabled_text, -Text/4f/text,"Oh sorry ![pause=0.3] I cannot send you my IDs for now,[pause=0.2] you are too far away from me." -Choice/50/text,Where am I ? -Choice/50/disabled_text, -Text/51/text,"Don't worry,[pause=0.2] you are in a subterranean base,[pause=0.2] but you will get to the surface very soon." -Choice/52/text,Wait ! Who am I ? -Choice/52/disabled_text, -Text/53/text,Hmmm.[pause=0.4].[pause=0.4].[pause=0.4] Interesting question.[pause=0.3] I elaborated your system but I don't know in which frame you are currently in.[pause=0.3] We'll find out ! -Text/54/text,"I'm glad you are finally awake ![pause=0.3] To be honest,[pause=0.2] I wasn't sure I would be able to make you function normally.[pause=0.5] Your frame has remained here for millennia without any maintenance." -Choice/55/text,Did you create me ? -Choice/55/disabled_text, -Text/56/text,"Sort of ![pause=0.3] I didn't manufactured your body,[pause=0.2] I borrowed it,[pause=0.2] but I designed your cognitive system.[pause=0.3] Be forgiving,[pause=0.2] it won't be perfect,[pause=0.2] I was designed to manage,[pause=0.2] not to create." -Choice/57/text,Why did you awake me ? -Choice/57/disabled_text, -Text/58/text,"To be honest,[pause=0.2] I don't really know.[pause=0.3].[pause=0.3].[pause=0.3] I mean,[pause=0.2] there are a lot of reasons,[pause=0.2] but I'll tell you more about it later." -Choice/59/text,What are you ? -Choice/59/disabled_text, -Text/5a/text,"I'm the same as you.[pause=0.3] The same as all the sentient beings remaining on this planet.[pause=0.3] Robot,[pause=0.2] artificial intelligence,[pause=0.2] machine.[pause=0.2].[pause=0.2].[pause=0.2] Our creators gave us many titles." -Text/5b/text,"Ok,[pause=0.2] no more questions for now,[pause=0.2] listen to me carefully." -Text/5c/text,"A long time ago,[pause=0.2] this planet was full of life.[pause=0.3] Plants were thriving on mountains,[pause=0.2] under seas and across plains." -Text/5d/text,"Now,[pause=0.2] this world is a wasteland.[pause=0.3] You'll see it as soon as you leave this base." -Text/5e/text,"Something happened a year ago.[pause=0.3].[pause=0.3].[pause=0.3]. The [color=#119758][b]Talion[/b][/color],[pause=0.2] a unique element giving birth to new life forms when shattered,[pause=0.2] reappeared." -Text/5f/text,"With the [color=#119758][b]Talion[/b][/color] back on the surface,[pause=0.2] we can bring this planet back to life." -Text/60/text,"But first things first,[pause=0.2] you have to learn how everything is working up here,[pause=0.2] and how to use the [color=#119758][b]Talion[/b][/color] to plant seeds." -Text/61/text,[b]Just remember the following[/b] -Label/62/display_name, -Text/63/text,"When you'll emerge from this building,[pause=0.2] you will reach a little yellowish zone.[pause=0.3] It's a [b]fertile zone[/b],[pause=0.2] brought back by the [color=#119758][b]Talion's[/b][/color] power.[pause=0.3] You can only plant [b]seeds[/b] in this zone." -Text/64/text,"Then,[pause=0.2] you have to get [b]seeds[/b].[pause=0.3] To do so,[pause=0.2] just take your shovel and smash some stones ![pause=0.3] Focus on those having yellow crystals on it,[pause=0.2] these are [color=#119758][b]Talion veins[/b][/color]." -Text/65/text,"Each time you use a tool like the shovel or plant a seed,[pause=0.2] you will spend one [b]energy[/b] charge.[pause=0.3] When you are out of it,[pause=0.2] just go recharge it at the [b]recharge station[/b].[pause=0.3] You will find it near the entrance of the base." -Text/66/text,"Each time you recharge,[pause=0.2] a day will pass,[pause=0.2] your batteries are very inefficient.[pause=0.3] While the day is passing,[pause=0.2] plants will grow !" -Text/67/text,"To complete you training,[pause=0.2] obtain enough [b]plant points[/b].[pause=0.3] Each plant give one or more [b]plant points[/b] when mature." -Text/68/text,"Oh ! [pause=0.3] I almost forgot,[pause=0.2] some plants can [b]mutate[/b].[pause=0.3] These [b]mutations[/b] affect points and behavior of the plant affected.[pause=0.3] [b]Mutations[/b] can appear while [b]harvesting[/b] mature plants and even become more powerful if you [b]harvest[/b] an already mutated one." -Choice/69/text,"That's a lot of informations, can you repeat ?" -Choice/69/disabled_text, -Text/6a/text,"Ok,[pause=0.2] listen carefully." -Choice/6b/text,"Ok, now I have more questions !" -Choice/6b/disabled_text, -Text/6c/text,"Sorry,[pause=0.2] we'll speak more after this.[pause=0.3] I send you an elevator,[pause=0.2] good luck [color=#FFA617]Orchid[/color] !" diff --git a/translation/dialogs/dialogic_demeter_introV2_translation.csv.import b/translation/dialogs/dialogic_demeter_introV2_translation.csv.import deleted file mode 100644 index 13d0fda..0000000 --- a/translation/dialogs/dialogic_demeter_introV2_translation.csv.import +++ /dev/null @@ -1,19 +0,0 @@ -[remap] - -importer="csv_translation" -type="Translation" -uid="uid://b2qu2hsrr0nr0" - -[deps] - -files=["res://translation/dialogs/dialogic_demeter_introV2_translation.fr.translation"] - -source_file="res://translation/dialogs/dialogic_demeter_introV2_translation.csv" -dest_files=["res://translation/dialogs/dialogic_demeter_introV2_translation.fr.translation"] - -[params] - -compress=1 -delimiter=0 -unescape_keys=false -unescape_translations=true diff --git a/translation/dialogs/dialogic_demeter_intro_translation.csv b/translation/dialogs/dialogic_demeter_intro_translation.csv index 81bfe1d..75c76c9 100644 --- a/translation/dialogs/dialogic_demeter_intro_translation.csv +++ b/translation/dialogs/dialogic_demeter_intro_translation.csv @@ -1,41 +1,41 @@ -keys,fr -Text/1f/text,"Bonjour ![pause=0.5] Ouf,[pause=0.3] j’ai cru que personne ne répondrait.[pause=0.5] C’est toi [color=#FFA617]Orchid[/color] ?[pause=0.5] Tu ne reconnais peut être pas ce nom,[pause=0.2] mais c’est celui que tu as du voir dans ta mémoire." -Choice/20/text,Euh… qui êtes vous? -Choice/20/disabled_text, -Text/21/text,"Ah désolée ![pause=0.5] Je ne peux pas encore t’envoyer mon identifiant,[pause=0.2] nous sommes trop éloignés." -Choice/22/text,Où suis-je ? -Choice/22/disabled_text, -Text/23/text,"Ne t’inquiète pas,[pause=0.2] tu es dans une base souterraine,[pause=0.2] mais tu remonteras à la surface très bientôt." -Choice/24/text,Attendez ! Qui suis-je ? -Choice/24/disabled_text, -Text/25/text,Mhhh.[pause=0.4].[pause=0.4].[pause=0.4] Bonne question.[pause=0.5] J’ai élaboré ton système mais je ne sais pas dans quel enveloppe tu opères.[pause=0.5] On verra bien ! -Text/26/text,"Je suis contente que tu sois enfin reveillé ![pause=0.5] Pour être honnête,[pause=0.3] je n’étais pas sûre de pouvoir te faire fonctionner correctement.[pause=0.5] Ton enveloppe est restée ici pendant des lustres sans aucune maintenance." -Choice/27/text,C’est vous qui m’avez créé ? -Choice/27/disabled_text, -Text/28/text,"En quelque sorte ![pause=0.5] Je n’ai pas conçu ta structure,[pause=0.2] Je l’ai juste empruntée,[pause=0.2] mais j’ai conçu ton système cognitif.[pause=0.5] Ne sois pas trop dur avec moi,[pause=0.3] ce n’est pas parfait,[pause=0.2] mais j'ai été créée pour administrer,[pause=0.2] par pour créer." -Choice/29/text,Pourquoi m’avez vous réveillé ? -Choice/29/disabled_text, -Text/2a/text,"Pour être honnête,[pause=0.2] J’en suis pas sûre.[pause=0.3].[pause=0.3].[pause=0.3] Je veux dire,[pause=0.3] il y a beaucoup de raisons,[pause=0.2] mais je t’en parlerais plus tard." -Choice/2b/text,Qu’est-ce que vous êtes ? -Choice/2b/disabled_text, -Text/2c/text,"Je suis comme toi.[pause=0.5] Comme tout les êtres conscients restés sur cette planète.[pause=0.5] Un robot,[pause=0.2] une intelligence artificielle,[pause=0.2] une machine.[pause=0.2].[pause=0.2].[pause=0.2] Nos créateurs nous ont donné plusieurs noms." -Text/2d/text,"Bon,[pause=0.3] on arrête les questions,[pause=0.3] écoute moi bien." -Text/2e/text,"Il y a longtemps,[pause=0.3] cette planète était pleine de vie.[pause=0.5] Des plantes prospéraient dans les montagnes,[pause=0.2] sous les mers et sur les plaines." -Text/2f/text,"Mais maintenant,[pause=0.3] ce monde est une terre désolée.[pause=0.5] Tu verras quand tu sortiras de la base." -Text/30/text,"Quelque-chose est arrivé l’année dernière.[pause=0.3].[pause=0.3].[pause=0.3]. Le [color=#119758][b]Talion[/b][/color],[pause=0.2] un matériau unique qui peut engendrer de nouvelles formes de vies quand il est brisé,[pause=0.3] est réapparu." -Text/31/text,"Maintenant que le [color=#119758][b]Talion[/b][/color] est revenu à la surface,[pause=0.3] on peut ramener cette planète à la vie." -Text/32/text,"Mais chaque chose en son temps,[pause=0.3] tu as besoin d’apprendre comment ça marche ici,[pause=0.2] et surtout comment utiliser le [color=#119758][b]Talion[/b][/color] pour planter des graines." -Text/33/text,[b]Ecoute bien[/b] -Label/34/display_name, -Text/35/text,"Quand tu sortiras de ce bâtiment,[pause=0.2] tu atteindras une petite zone jaune.[pause=0.3] C’est une [b]zone fertile[/b],[pause=0.3] apparue grâce au pouvoir du [color=#119758][b]Talion[/b][/color].[pause=0.5] Tu peux seulement planter des [b]graines[/b] dans cette zone." -Text/36/text,"Ensuite,[pause=0.2] tu devras récupérer des [b]graines[/b].[pause=0.5] Pour ce faire,[pause=0.2] prend ta pelle et casse quelques pierres ![pause=0.5] Cherche celles qui sont couvertes de cristaux jaunes,[pause=0.3] ce sont des veines de [color=#119758][b]Talion[/b][/color]." -Text/37/text,"A chaque fois que tu utilises un outil comme la pelle ou que tu plantes une graine,[pause=0.3] tu dépenses une de tes [b]charges d’énergie[/b].[pause=0.5] Quand tu n’en as plus,[pause=0.3] il te suffit d’aller te recharger à la [b]station de recharge[/b].[pause=0.5] Tu la trouveras à côté de l’entrée de la base." -Text/38/text,"A chaque recharge,[pause=0.3] une journée passera,[pause=0.2] tes batteries sont très peu efficaces.[pause=0.5] Pendant ce temps,[pause=0.3] tes plantes grandissent !" -Text/39/text,"Pour réussir ton entraînement,[pause=0.3] il faudra que tu obtiennes des [b]points de plantes[/b].[pause=0.5] Chaque plante te donne un ou plusieurs [b]points de plantes[/b] quand elles arrivent à maturité." -Text/3a/text,"Ah ! [pause=0.3] J’ai presque oublié,[pause=0.3] certaines plantes peuvent [b]muter[/b].[pause=0.5] Ces [b]mutations[/b] affectent le nombre de points obtenus et le comportement de la plante concernée.[pause=0.5] Les [b]mutations[/b] peuvent apparaître quand tu [b]récoltes[/b] des plantes matures et peuvent devenir plus puissantes si tu [b]récoltes[/b] une plante ayant déjà subi des mutations." -Choice/3b/text,C’est beaucoup d’informations. Tu peux répèter ? -Choice/3b/disabled_text, -Text/3c/text,"D’accord,[pause=0.2] écoute bien." -Choice/3d/text,"C’est noté, mais j’ai d’autres questions !" -Choice/3d/disabled_text, -Text/3e/text,"Désolée,[pause=0.3] on reparlera un peu plus après ton entrainement.[pause=0.5] Je t’envoie un ascenseur,[pause=0.3] bonne chance [color=#FFA617]Orchid[/color] !" +keys,en,fr +Text/23/text,"Hi ![pause=0.5] Phew,[pause=0.3] I thought no one would reply.[pause=0.5] Are you [color=#FFA617]Orchid[/color] ?[pause=0.5] You may not be familiar with this name but you must have seen it in your memory.","Bonjour ![pause=0.5] Ouf,[pause=0.3] j'ai cru que personne ne répondrait.[pause=0.5] C'est toi [color=#FFA617]Orchid[/color] ?[pause=0.5] Tu ne reconnais peut être pas ce nom,[pause=0.2] mais c'est celui que tu as du voir dans ta mémoire." +Choice/24/text,Uh... Who are you ?,Euh… qui êtes vous? +Choice/24/disabled_text,, +Text/25/text,"Oh sorry ![pause=0.5] I cannot send you my IDs for now,[pause=0.2] you are too far away from me.","Ah désolée ![pause=0.5] Je ne peux pas encore t'envoyer mon identifiant,[pause=0.2] nous sommes trop éloignés." +Choice/26/text,Where am I ?,Où suis-je ? +Choice/26/disabled_text,, +Text/27/text,"Don't worry,[pause=0.3] you are in a subterranean base,[pause=0.2] but you will get to the surface very soon.","Ne t'inquiète pas,[pause=0.2] tu es dans une base souterraine,[pause=0.2] mais tu remonteras à la surface très bientôt." +Choice/28/text,Wait ! Who am I ?,Attendez ! Qui suis-je ? +Choice/28/disabled_text,, +Text/29/text,Hmmm.[pause=0.4].[pause=0.4].[pause=0.4] Interesting question.[pause=0.5] I elaborated your system but I don't know in which frame you are currently in.[pause=0.5] We'll find out !,Mhhh.[pause=0.4].[pause=0.4].[pause=0.4] Bonne question.[pause=0.5] J'ai élaboré ton système mais je ne sais pas dans quel enveloppe tu opères.[pause=0.5] On verra bien ! +Text/2a/text,"I'm glad you are finally awake ![pause=0.5] To be honest,[pause=0.3] I wasn't sure I would be able to make you function normally.[pause=0.5] Your frame has remained here for millennia without any maintenance.","Je suis contente que tu sois enfin reveillé ![pause=0.5] Pour être honnête,[pause=0.3] je n'étais pas sûre de pouvoir te faire fonctionner correctement.[pause=0.5] Ton enveloppe est restée ici pendant des lustres sans aucune maintenance." +Choice/2b/text,Did you create me ?,C'est vous qui m'avez créé ? +Choice/2b/disabled_text,, +Text/2c/text,"Sort of ![pause=0.5] I didn't manufacture your body,[pause=0.2] I borrowed it,[pause=0.2] but I designed your cognitive system.[pause=0.5] Be forgiving,[pause=0.2] it won't be perfect,[pause=0.2] I was designed to manage,[pause=0.2] not to create.","En quelque sorte ![pause=0.5] Je n'ai pas conçu ta structure,[pause=0.2] Je l'ai juste empruntée,[pause=0.2] mais j'ai conçu ton système cognitif.[pause=0.5] Ne sois pas trop dur avec moi,[pause=0.3] ce n'est pas parfait,[pause=0.2] mais j'ai été créée pour administrer,[pause=0.2] par pour créer." +Choice/2d/text,Why did you wake me ?,Pourquoi m'avez vous réveillé ? +Choice/2d/disabled_text,, +Text/2e/text,"To be honest,[pause=0.2] I don't really know.[pause=0.3].[pause=0.3].[pause=0.3] I mean,[pause=0.3] there are a lot of reasons,[pause=0.2] but I'll tell you more about it later.","Pour être honnête,[pause=0.2] J'en suis pas sûre.[pause=0.3].[pause=0.3].[pause=0.3] Je veux dire,[pause=0.3] il y a beaucoup de raisons,[pause=0.2] mais je t'en parlerais plus tard." +Choice/2f/text,What are you ?,Qu'est-ce que vous êtes ? +Choice/2f/disabled_text,, +Text/30/text,"I'm the same as you.[pause=0.5] The same as all the sentient beings remaining on this planet.[pause=0.5] Robot,[pause=0.2] artificial intelligence,[pause=0.2] machine.[pause=0.4].[pause=0.4].[pause=0.4] Our creators gave us many titles.","Je suis comme toi.[pause=0.5] Comme tout les êtres conscients restés sur cette planète.[pause=0.5] Un robot,[pause=0.2] une intelligence artificielle,[pause=0.2] une machine.[pause=0.2].[pause=0.2].[pause=0.2] Nos créateurs nous ont donné plusieurs noms." +Text/31/text,"Ok,[pause=0.2] no more questions for now,[pause=0.2] listen to me carefully.","Bon,[pause=0.3] on arrête les questions,[pause=0.3] écoute moi bien." +Text/32/text,"A long time ago,[pause=0.3] this planet was full of life.[pause=0.5] Plants were thriving on mountains,[pause=0.2] under seas and across plains.","Il y a longtemps,[pause=0.3] cette planète était pleine de vie.[pause=0.5] Des plantes prospéraient dans les montagnes,[pause=0.2] sous les mers et sur les plaines." +Text/33/text,"Now,[pause=0.3] this world is a barren wasteland.[pause=0.5] You'll see it as soon as you leave this base.","Mais maintenant,[pause=0.3] ce monde est une terre désolée.[pause=0.5] Tu verras quand tu sortiras de la base." +Text/34/text,"Something happened a year ago.[pause=0.3].[pause=0.3].[pause=0.3]. The [color=#119758][b]Talion[/b][/color],[pause=0.3] a unique element giving birth to new life forms when shattered,[pause=0.5] reappeared.","Quelque-chose est arrivé l'année dernière.[pause=0.3].[pause=0.3].[pause=0.3]. Le [color=#119758][b]Talion[/b][/color],[pause=0.2] un matériau unique qui peut engendrer de nouvelles formes de vies quand il est brisé,[pause=0.3] est réapparu." +Text/35/text,"With the [color=#119758][b]Talion[/b][/color] back on the surface,[pause=0.2] we can bring this planet back to life.","Maintenant que le [color=#119758][b]Talion[/b][/color] est revenu à la surface,[pause=0.3] on peut ramener cette planète à la vie." +Text/36/text,"But first things first,[pause=0.3] you have to learn how everything is working up here,[pause=0.2] and how to use the [color=#119758][b]Talion[/b][/color] to plant seeds.","Mais chaque chose en son temps,[pause=0.3] tu as besoin d'apprendre comment ça marche ici,[pause=0.2] et surtout comment utiliser le [color=#119758][b]Talion[/b][/color] pour planter des graines." +Text/37/text,[b]Just remember the following[/b],[b]Ecoute bien[/b] +Label/38/display_name,, +Text/a2/text,"When you emerge from this building,[pause=0.2] search for a [b]Recharge Station[/b], I think there is one near the entrance.","Quand tu sortiras d'ici,[pause=0.2] cherche la [b]Station de Recharge[/b], il devrait y en avoir une pas très loin de la sortie." +Text/a3/text,"Then,[pause=0.3] you'll have to find seeds. Just smash some [b]Talion Veins[/b] in the stone with your shovel.","Puis,[pause=0.3] tu devras récupérer des graines en brisant des [b]Veines de Talion[/b] dans la pierre avec ta pioche." +Text/a4/text,"Then, you can plant seeds in the yellow moss you'll find on the ground, it's the only [b]Fertile Zones[/b].","Tu pourras planter ces graines dans la mousse jaune que tu trouvera par terre, ce sont les seules [b]Zones Fertiles[/b]." +Text/a5/text,"When you are out of [b]Energy[/b], you can recharge it on the [b]Recharge Station[/b], time will pass and plants will grow.","Quand tu seras à court d'[b]énergie[/b], tu pourras te recharger à la [b]Station de Recharge[/b], et pendant ce temps les plantes pousseront." +Text/a6/text,"Each seed is different thanks to their [b]Mutations[/b], and you can get identical or better seeds from a plant by destroying it when mature, or by waiting for the end of their lifetime.","Chaque graine est unique par ses [b]Mutations[/b], et tu pourras récupérer de meilleure graines en détruisant une plante mature, ou en attendant qu'elle meurt." +Text/a7/text,"Plants generate [b]Plant Points[/b] when mature, get enough plant points and you'll complete your training.","Une fois mature, les plantes génèrent des [b]Points de Plantes[/b], si tu en as assez tu finira l'entrainement." +Choice/3f/text,"That's a lot of information, can you repeat ?",C'est beaucoup d'informations. Tu peux répèter ? +Choice/3f/disabled_text,, +Text/40/text,"Ok,[pause=0.2] listen carefully.","D'accord,[pause=0.2] écoute bien." +Choice/41/text,"Ok, now I have more questions !","C'est noté, mais j'ai d'autres questions !" +Choice/41/disabled_text,, +Text/42/text,"Sorry,[pause=0.2] we'll speak more after this.[pause=0.5] I send you an elevator,[pause=0.2] good luck [color=#FFA617]Orchid[/color] !","Désolée,[pause=0.3] on reparlera un peu plus après ton entrainement.[pause=0.5] Je t'envoie un ascenseur,[pause=0.3] bonne chance [color=#FFA617]Orchid[/color] !" diff --git a/translation/dialogs/dialogic_demeter_intro_translation.csv.import b/translation/dialogs/dialogic_demeter_intro_translation.csv.import index 0f8a02f..103161e 100644 --- a/translation/dialogs/dialogic_demeter_intro_translation.csv.import +++ b/translation/dialogs/dialogic_demeter_intro_translation.csv.import @@ -2,18 +2,18 @@ importer="csv_translation" type="Translation" -uid="uid://cypejke4rne2y" +uid="uid://bh7an21jynytu" [deps] -files=["res://translation/dialogs/dialogic_demeter_intro_translation.fr.translation"] +files=["res://translation/dialogs/dialogic_demeter_intro_translation.en.translation", "res://translation/dialogs/dialogic_demeter_intro_translation.fr.translation"] source_file="res://translation/dialogs/dialogic_demeter_intro_translation.csv" -dest_files=["res://translation/dialogs/dialogic_demeter_intro_translation.fr.translation"] +dest_files=["res://translation/dialogs/dialogic_demeter_intro_translation.en.translation", "res://translation/dialogs/dialogic_demeter_intro_translation.fr.translation"] [params] -compress=true +compress=1 delimiter=0 unescape_keys=false unescape_translations=true diff --git a/translation/dialogs/dialogic_demeter_outro_translation.csv b/translation/dialogs/dialogic_demeter_outro_translation.csv index 16c9d9b..4caf9ac 100644 --- a/translation/dialogs/dialogic_demeter_outro_translation.csv +++ b/translation/dialogs/dialogic_demeter_outro_translation.csv @@ -1,2 +1,2 @@ -keys,fr -Text/50/text,"Bienvenue à la base [color=#6CDAE7]Borea[/color] [color=#FFA617]{orchidName}[/color],[pause=0.3] c’est le début de ton aventure sur cette planète." +keys,en,fr +Text/63/text,"Welcome to [color=#E30022]Borea[/color],[pause=0.2] [color=#FFA617]{orchidName}[/color],[pause=0.3] it is the first step of your journey on this planet.","Bienvenue à la base [color=#6CDAE7]Borea[/color] [color=#FFA617]{orchidName}[/color],[pause=0.3] c'est le début de ton aventure sur cette planète." diff --git a/translation/dialogs/dialogic_demeter_outro_translation.csv.import b/translation/dialogs/dialogic_demeter_outro_translation.csv.import index 0883d43..327d95c 100644 --- a/translation/dialogs/dialogic_demeter_outro_translation.csv.import +++ b/translation/dialogs/dialogic_demeter_outro_translation.csv.import @@ -2,14 +2,14 @@ importer="csv_translation" type="Translation" -uid="uid://clv8uejtjnnk1" +uid="uid://j0jxojfjy6i2" [deps] -files=["res://translation/dialogs/dialogic_demeter_outro_translation.fr.translation"] +files=["res://translation/dialogs/dialogic_demeter_outro_translation.en.translation", "res://translation/dialogs/dialogic_demeter_outro_translation.fr.translation"] source_file="res://translation/dialogs/dialogic_demeter_outro_translation.csv" -dest_files=["res://translation/dialogs/dialogic_demeter_outro_translation.fr.translation"] +dest_files=["res://translation/dialogs/dialogic_demeter_outro_translation.en.translation", "res://translation/dialogs/dialogic_demeter_outro_translation.fr.translation"] [params] diff --git a/translation/dialogs/dialogic_demeter_post_tutorial_translation.csv b/translation/dialogs/dialogic_demeter_post_tutorial_translation.csv index 54be73c..79604f4 100644 --- a/translation/dialogs/dialogic_demeter_post_tutorial_translation.csv +++ b/translation/dialogs/dialogic_demeter_post_tutorial_translation.csv @@ -1,22 +1,22 @@ -keys,fr -Text/51/text,"Ah,[pause=0.3] tu as trouvé la station de communication,[pause=0.2] bravo !" -Choice/52/text,Qu’est-ce que vous me réservez maintenant ? -Choice/52/disabled_text, -Text/53/text,"Maintenant que tu as appris comment générer des [b]points de plante[/b],[pause=0.3] Il va falloir que tu ailles au Nord,[pause=0.3] à la base d'opérations [color=#6CDAE7]Borea[/color]." -Text/54/text,"C’est un long voyage,[pause=0.3] mais je sais que tu peux le faire.[pause=0.5] C’est la première étape de mon plan pour restorer l’écosystème de [color=#175579]Tau[/color]." -Choice/55/text,Tau ? C’est le nom de cette planète ? -Choice/55/disabled_text, -Text/56/text,"Exactement,[pause=0.3] elle fait partie de la constellation Cetus,[pause=0.2] dont l’exploitation a commencé il y a 10863 ans." -Text/57/text,"Faisant le lien entre Aldebaran et Fomalhaut,[pause=0.2] la constellation Cetus est l’une des plus diverses en terme de systèmes stellaires et de planètes.[pause=0.5] Elle fait partie du bras Orion de la Voie Lactée." -Choice/58/text,Pourquoi voulez vous que je traverse la planète entière pour vous rejoindre ? -Choice/58/disabled_text, -Text/59/text,Euuuhhhh.[pause=0.3].[pause=0.3].[pause=0.3] J’ai besoin de quelqu’un avec tes compétences. -Text/5a/text,J’ai un problème à la base [color=#6CDAE7]Borea[/color].[pause=0.5] Et je ne peux pas m’en occuper seule. -Choice/5b/text,J’arrive au plus vite ! -Choice/5b/disabled_text, -Text/5c/text,Tu es si gentil [color=#FFA617]Orchid[/color] ! -Choice/5d/text,Me cachez vous quelque chose ? -Choice/5d/disabled_text, -Text/5e/text,"Pas du tout ![pause=0.5] Crois moi je t’en prie,[pause=0.3] il faut juste que tu me rejoignes.[pause=0.3].[pause=0.3].[pause=0.3]" -Text/5f/text,"Dirige toi vers le Nord,[pause=0.3] rejoins moi à [color=#6CDAE7]Borea[/color].[pause=0.5] Je te dirais tout ce que tu veux savoir à ce moment là.[pause=0.5] En attendant,[pause=0.2] conserve tes meilleures graines et continue de faire [b]évoluer tes plantes[/b],[pause=0.3] tu auras besoin de spécimens aussi puissants que possible." -Text/60/text,"Bonne chance [color=#FFA617]{orchidName}[/color],[pause=0.3] je compte sur toi." +keys,en,fr +Text/64/text,"So you found the communication station in there,[pause=0.2] good !","Ah,[pause=0.3] tu as trouvé la station de communication,[pause=0.2] bravo !" +Choice/65/text,What is next for me ?,Qu'est-ce que vous me réservez maintenant ? +Choice/65/disabled_text,, +Text/66/text,"Now that you have learnt how to produce [b]plant points[/b],[pause=0.2] I need you to travel north,[pause=0.2] to my base of operation,[pause=0.2] [color=#6CDAE7]Borea[/color].","Maintenant que tu as appris comment générer des [b]points de plante[/b],[pause=0.3] Il va falloir que tu ailles au Nord,[pause=0.3] à la base d'opérations [color=#6CDAE7]Borea[/color]." +Text/67/text,"It will be long,[pause=0.3] but I know you can do it.[pause=0.5] It is the first step of my plan to restore the ecosytem of [color=#175579]Tau[/color].","C'est un long voyage,[pause=0.3] mais je sais que tu peux le faire.[pause=0.5] C'est la première étape de mon plan pour restorer l'écosystème de [color=#175579]Tau[/color]." +Choice/68/text,Tau ? Is it this planet ?,Tau ? C'est le nom de cette planète ? +Choice/68/disabled_text,, +Text/69/text,"Absolutely,[pause=0.2] it is part of the Cetus constellation,[pause=0.3] whose exploitation began 10863 years ago.","Exactement,[pause=0.3] elle fait partie de la constellation Cetus,[pause=0.2] dont l'exploitation a commencé il y a 10863 ans." +Text/6a/text,"Linking Aldebaran to Fomalhaut,[pause=0.2] the Cetus constellation is one of the most diverse in terms of star systems and planets.[pause=0.5] It is part of the Orion Arm of the Milky Way.","Faisant le lien entre Aldebaran et Fomalhaut,[pause=0.2] la constellation Cetus est l'une des plus diverses en terme de systèmes stellaires et de planètes.[pause=0.5] Elle fait partie du bras Orion de la Voie Lactée." +Choice/6b/text,Why do you need me to travel through the entire planet to join you ?,Pourquoi voulez vous que je traverse la planète entière pour vous rejoindre ? +Choice/6b/disabled_text,, +Text/6c/text,Uhhhh.[pause=0.3].[pause=0.3].[pause=0.3] I need someone with your abilities.,Euuuhhhh.[pause=0.3].[pause=0.3].[pause=0.3] J'ai besoin de quelqu'un avec tes compétences. +Text/6d/text,I am having a problem at the [color=#6CDAE7]Borea[/color] base.[pause=0.5] And I cannot fix it alone.,J'ai un problème à la base [color=#6CDAE7]Borea[/color].[pause=0.5] Et je ne peux pas m'en occuper seule. +Choice/6e/text,I will do my best to be there quickly !,J'arrive au plus vite ! +Choice/6e/disabled_text,, +Text/6f/text,You are very kind [color=#FFA617]Orchid[/color] !,Tu es si gentil [color=#FFA617]Orchid[/color] ! +Choice/70/text,Are you hiding information from me ?,Me cachez vous quelque chose ? +Choice/70/disabled_text,, +Text/71/text,"Not at all ![pause=0.5] Please believe me,[pause=0.2] I just want you to join me.[pause=0.5].[pause=0.5].","Pas du tout ![pause=0.5] Crois moi je t'en prie,[pause=0.3] il faut juste que tu me rejoignes.[pause=0.3].[pause=0.3].[pause=0.3]" +Text/72/text,"Travel south,[pause=0.3] join me at [color=#6CDAE7]Borea[/color].[pause=0.5] I will tell you everything you need to know when you are here,[pause=0.3] until then,[pause=0.2] keep your best seeds and continue to [b]evolve your plants[/b],[pause=0.3] you will need them as advanced as possible.","Dirige toi vers le Nord,[pause=0.3] rejoins moi à [color=#6CDAE7]Borea[/color].[pause=0.5] Je te dirais tout ce que tu veux savoir à ce moment là.[pause=0.5] En attendant,[pause=0.2] conserve tes meilleures graines et continue de faire [b]évoluer tes plantes[/b],[pause=0.3] tu auras besoin de spécimens aussi puissants que possible." +Text/73/text,"Good luck [color=#FFA617]{orchidName}[/color],[pause=0.3] I am counting on you.","Bonne chance [color=#FFA617]{orchidName}[/color],[pause=0.3] je compte sur toi." diff --git a/translation/dialogs/dialogic_demeter_post_tutorial_translation.csv.import b/translation/dialogs/dialogic_demeter_post_tutorial_translation.csv.import index 2609b2b..cd7c6bb 100644 --- a/translation/dialogs/dialogic_demeter_post_tutorial_translation.csv.import +++ b/translation/dialogs/dialogic_demeter_post_tutorial_translation.csv.import @@ -2,14 +2,14 @@ importer="csv_translation" type="Translation" -uid="uid://d3br3t38hde3f" +uid="uid://t1qdlkdlc1f0" [deps] -files=["res://translation/dialogs/dialogic_demeter_post_tutorial_translation.fr.translation"] +files=["res://translation/dialogs/dialogic_demeter_post_tutorial_translation.en.translation", "res://translation/dialogs/dialogic_demeter_post_tutorial_translation.fr.translation"] source_file="res://translation/dialogs/dialogic_demeter_post_tutorial_translation.csv" -dest_files=["res://translation/dialogs/dialogic_demeter_post_tutorial_translation.fr.translation"] +dest_files=["res://translation/dialogs/dialogic_demeter_post_tutorial_translation.en.translation", "res://translation/dialogs/dialogic_demeter_post_tutorial_translation.fr.translation"] [params] diff --git a/translation/dialogs/dialogic_demeter_ship_failed_translation.csv b/translation/dialogs/dialogic_demeter_ship_failed_translation.csv new file mode 100644 index 0000000..0e762c6 --- /dev/null +++ b/translation/dialogs/dialogic_demeter_ship_failed_translation.csv @@ -0,0 +1,14 @@ +keys,en,fr +Text/11/text,Hello again !,[color=#FFA617]Orchid[/color] ! +Text/12/text,It seems that you ran out of energy.[pause=0.5].[pause=0.5].,On dirait que tu a été à cours d'énergie.[pause=0.3].[pause=0.3].[pause=0.3] +Choice/13/text,I'm sorry...,Désolé… +Choice/13/disabled_text,, +Choice/14/text,That's really hard !,C'est trop difficile ! +Choice/14/disabled_text,, +Choice/15/text,I'm doing my best !,Je fais de mon mieux ! +Choice/15/disabled_text,, +Text/16/text,"It's ok [color=#FFA617]Orchid[/color] ![pause=0.5] I have spent years waiting for this moment,[pause=0.2] I can wait more !","Ce n'est pas grave [color=#FFA617]Orchid[/color] ![pause=0.5] J'ai attendu des années pour ce moment,[pause=0.3] je peux attendre encore un peu !" +Text/a8/text,"The thing is[pause=0.2] I can teleport the Internode back to the last base,[pause=0.2] but all objects in it [pause=0.2](including you)[pause=0.2] will be discarded...","Le problème[pause=0.2], c'est que je peux téléporter l'Internode à la dernière base où il s'est posé,[pause=0.2] mais tous les objets à l'intérieur disparaîtront [pause=0.2](toi inclus)..." +Text/a9/text,I placed a device that can save your data and send it back where you spawned at the back of the ship[pause=0.2]; do it and I will bring back the ship.,"J'ai placé un système de copie de tes donnée dans le fond du vaisseau. Je te renverrais dans une autre enveloppe là où tu es apparu[pause=0.2], utilise le et je t'enverrai le vaisseau." +Text/aa/text,"Don't worry,[pause=0.2] I'm going to fix the Internode's efficiency so it works just like it did when you first started using it.","Ne t'inquiète pas,[pause=0.2] je réparerais l'Internode pour qu'il retrouve son efficacité d'origine." +Text/ab/text,"I believe in you Orchid,[pause=0.2] you can do it.","Je crois en toi Orchid,[pause=0.2] tu peux le faire." diff --git a/translation/dialogs/dialogic_demeter_ship_failed_translation.csv.import b/translation/dialogs/dialogic_demeter_ship_failed_translation.csv.import new file mode 100644 index 0000000..329b550 --- /dev/null +++ b/translation/dialogs/dialogic_demeter_ship_failed_translation.csv.import @@ -0,0 +1,19 @@ +[remap] + +importer="csv_translation" +type="Translation" +uid="uid://dapx5cls0w870" + +[deps] + +files=["res://translation/dialogs/dialogic_demeter_ship_failed_translation.en.translation", "res://translation/dialogs/dialogic_demeter_ship_failed_translation.fr.translation"] + +source_file="res://translation/dialogs/dialogic_demeter_ship_failed_translation.csv" +dest_files=["res://translation/dialogs/dialogic_demeter_ship_failed_translation.en.translation", "res://translation/dialogs/dialogic_demeter_ship_failed_translation.fr.translation"] + +[params] + +compress=1 +delimiter=0 +unescape_keys=false +unescape_translations=true diff --git a/translation/dialogs/dialogic_demeter_ship_presentation_translation.csv b/translation/dialogs/dialogic_demeter_ship_presentation_translation.csv index c448c0e..681dca7 100644 --- a/translation/dialogs/dialogic_demeter_ship_presentation_translation.csv +++ b/translation/dialogs/dialogic_demeter_ship_presentation_translation.csv @@ -1,35 +1,55 @@ -keys,fr -Text/61/text,Rebonjour! Tu as fait du bon boulot là-haut! -Text/62/text,Je devrais me présenter maintenant. -Text/63/text,"Je suis.[pause=0.3].[pause=0.3].[pause=0.5] j’étais,[pause=0.3] le Dispositif d’Etudes Managériales et Elémentaires du Talion et de ses Effets Relatifs sur cette planète,[pause=0.5] mais mes créateurs et collègues m'ont rapidement appellée [color=#009bff]Demeter[/color]." -Text/64/text,"Je suis stationnée à la base [color=#6CDAE7]Borea[/color],[pause=0.2] dans la 3ème salle de serveur de l’aile Est,[pause=0.2] c’est de là que je supervise.[pause=0.3].[pause=0.3].[pause=0.5] que je supervisais,[pause=0.3] toutes les opérations importantes sur cette planète." -Text/65/text,Tu te demandes peut-être où tu es maintenant… -Choice/66/text,"Oui, c’est l’une de mes nombreuses questions ! Où suis je ?" -Choice/66/disabled_text, -Text/67/text,"En fait,[pause=0.3] tu es dans l’une des anciennes bases humaines,[pause=0.3] Astra.[pause=0.5] Cette salle est connectée à celle où tu t’es réveillé,[pause=0.3] mais je t’ai fait passer par la surface pour tester tes capacités." -Choice/68/text,"Attendez, pouvez vous m’expliquer ce que j’ai fait là haut ?" -Choice/68/disabled_text, -Text/69/text,"Tu as commencé à réparer ce que les humains ont infligé à cette planète.[pause=0.3].[pause=0.3].[pause=0.3] C’est un travail de longue haleine,[pause=0.3] j’espère que ça te plaît !" -Choice/6a/text,"Désolé, mais à quoi tout cela sert ?" -Choice/6a/disabled_text, -Text/6b/text,"Je suis désolée que tu te sentes perdu,[pause=0.3] mon petit.[pause=0.3].[pause=0.3].[pause=0.3] Il faut que tu saches que ce que tu fais est très important pour moi et la planète elle-même ![pause=0.5] Depuis que les humains sont partis,[pause=0.3] nous sommes tous plus ou moins devenus désespérés.[pause=0.3].[pause=0.3].[pause=0.3]" -Text/6c/text,"Attends.[pause=0.3].[pause=0.3].[pause=0.5] Tu ne sais pas ce que sont les humains ![pause=0.5] C'est vrai,[pause=0.2] tes données étaient corrompues,[pause=0.3] j'ai dû en effacer une bonne partie." -Text/6d/text,"Les humains sont des créatures.[pause=0.3].[pause=0.3].[pause=0.5] différentes des plantes.[pause=0.5] Ils peuvent penser et bouger,[pause=0.3] comme nous.[pause=0.5] D’une certaine manière,[pause=0.3] ils étaient d'adorables êtres vivants,[pause=0.2] qui ne vivaient que moins d’un siècle." -Text/6e/text,"Un seul humain est relativement intelligent,[pause=0.2] mais ensemble,[pause=0.3] ils sont capables de grandes choses.[pause=0.5] Ce sont eux qui nous ont créé !" -Text/6f/text,"Il y a longtemps,[pause=0.3] ils ont découvert cette planète.[pause=0.5] Elle était bien différente de ce qu’elle est maintenant,[pause=0.3] il y avait des plantes partout ![pause=0.5] Mais ensuite.[pause=0.3].[pause=0.3].[pause=0.5] Ils.[pause=0.3].[pause=0.3].[pause=0.5] Je.[pause=0.3].[pause=0.3].[pause=0.5]" -Choice/70/text,Quoi ? -Choice/70/disabled_text, -Choice/71/text,Etes-vous en train de lagger ? -Choice/71/disabled_text, -Choice/72/text,Prenez votre temps. -Choice/72/disabled_text, -Text/73/text,"Les humains ont un gros défaut.[pause=0.5] Ensemble,[pause=0.3] ils ont construit de belles choses,[pause=0.2] mais parfois ces choses n’étaient pas bonnes pour l’environnement,[pause=0.3] ou pour eux-mêmes." -Choice/74/text,Où sont-ils à présent ? -Choice/74/disabled_text, -Text/75/text,"Je ne préfère pas en parler.[pause=0.3].[pause=0.3].[pause=0.3] Mais ne t’inquiètes pas,[pause=0.3] ils ne peuvent plus faire de mal à cette planète." -Choice/76/text,Que s’est-il passé ? -Choice/76/disabled_text, -Text/77/text,"Je suis désolée petit,[pause=0.3] je ne suis pas prête à en parler pour l’instant.[pause=0.3].[pause=0.3].[pause=0.3] Tu en sauras plus quand tu m'auras rejointe." -Choice/78/text,Je peux savoir ce qu’est cette machine devant moi ? -Choice/78/disabled_text, -Text/79/text,"C’est un vaisseau spatial ![pause=0.5] Le nom de ce modèle est l’[color=#FFA617]Internode[/color],[pause=0.3] je l’ai modifié pour qu’il se recharge avec de l’énergie végétale ![pause=0.5] Mais comme tu le devines,[pause=0.3] cette énergie est rare par ici.[pause=0.5] Montons à bord,[pause=0.2] tu veux ?" +keys,en,fr +Text/74/text,Hi again ![pause=0.5] You did well up there !,Rebonjour! Tu as fait du bon boulot là-haut! +Text/75/text,Perhaps I should introduce myself now.,Je devrais me présenter maintenant. +Text/76/text,"I am.[pause=0.3].[pause=0.3].[pause=0.5] was,[pause=0.2] the Deputy Manager of Engineering and Talion Energy Research on this planet,[pause=0.5] but my creators and colleagues quickly called me [color=#009bff]Demeter[/color].","Je suis.[pause=0.3].[pause=0.3].[pause=0.5] j'étais,[pause=0.3] le Dispositif d'Etudes Managériales et Elémentaires du Talion et de ses Effets Relatifs sur cette planète,[pause=0.5] mais mes créateurs et collègues m'ont rapidement appellée [color=#009bff]Demeter[/color]." +Text/77/text,"I am installed at the [color=#6CDAE7]Borea[/color] base,[pause=0.2] in the third server room of the east wing,[pause=0.2] from which I oversee.[pause=0.3].[pause=0.3].[pause=0.5] oversaw,[pause=0.3] all the important operations on this planet.","Je suis stationnée à la base [color=#6CDAE7]Borea[/color],[pause=0.2] dans la 3ème salle de serveur de l'aile Est,[pause=0.2] c'est de là que je supervise.[pause=0.3].[pause=0.3].[pause=0.5] que je supervisais,[pause=0.3] toutes les opérations importantes sur cette planète." +Text/78/text,You are surely wondering where we are now.[pause=0.3].[pause=0.3].,Tu te demandes peut-être où tu es maintenant… +Choice/79/text,"Yes, among a lot of other questions ! So where am I ?","Oui, c'est l'une de mes nombreuses questions ! Où suis je ?" +Choice/79/disabled_text,, +Text/7a/text,"You're actually in an ancient human base,[pause=0.2] called [color=#E30022]Astra[/color].[pause=0.5] This room is connected to the one where you were activated,[pause=0.3] but I had to make you travel across the surface to test your abilities.","En fait,[pause=0.3] tu es dans l'une des anciennes bases humaines,[pause=0.3] Astra.[pause=0.5] Cette salle est connectée à celle où tu t'es réveillé,[pause=0.3] mais je t'ai fait passer par la surface pour tester tes capacités." +Choice/7b/text,"Wait, can you explain me what did I just do up there ?","Attendez, pouvez vous m'expliquer ce que j'ai fait là haut ?" +Choice/7b/disabled_text,, +Text/7c/text,"You have begun to fix what humans once inflicted on this planet.[pause=0.3].[pause=0.3].[pause=0.3] It will be a very long process,[pause=0.2] I hope you enjoyed it !","Tu as commencé à réparer ce que les humains ont infligé à cette planète.[pause=0.3].[pause=0.3].[pause=0.3] C'est un travail de longue haleine,[pause=0.3] j'espère que ça te plaît !" +Choice/7d/text,"Sorry, but what is the point of all of that ?","Désolé, mais à quoi tout cela sert ?" +Choice/7d/disabled_text,, +Text/7e/text,"I'm sorry that you are lost my child.[pause=0.3].[pause=0.3].[pause=0.3] Just know that what you are doing is very important to me and the planet itself.[pause=0.5] Since humans are gone,[pause=0.2] we kinda all fell into despair...","Je suis désolée que tu te sentes perdu,[pause=0.3] mon petit.[pause=0.3].[pause=0.3].[pause=0.3] Il faut que tu saches que ce que tu fais est très important pour moi et la planète elle-même ![pause=0.5] Depuis que les humains sont partis,[pause=0.3] nous sommes tous plus ou moins devenus désespérés.[pause=0.3].[pause=0.3].[pause=0.3]" +Text/7f/text,"Wait.[pause=0.3].[pause=0.3].[pause=0.5] You don't know what humans are ![pause=0.5] Of course,[pause=0.2] since your database was corrupted I had to erase most of it.","Attends.[pause=0.3].[pause=0.3].[pause=0.5] Tu ne sais pas ce que sont les humains ![pause=0.5] C'est vrai,[pause=0.2] tes données étaient corrompues,[pause=0.3] j'ai dû en effacer une bonne partie." +Text/80/text,"Humans are living creatures that are.[pause=0.3].[pause=0.3].[pause=0.5] Different than plants.[pause=0.5] They are mostly thinking and moving like us.[pause=0.5] Somehow,[pause=0.2] they are very cute creatures,[pause=0.2] that only live for less than a century.","Les humains sont des créatures.[pause=0.3].[pause=0.3].[pause=0.5] différentes des plantes.[pause=0.5] Ils peuvent penser et bouger,[pause=0.3] comme nous.[pause=0.5] D'une certaine manière,[pause=0.3] ils étaient d'adorables êtres vivants,[pause=0.2] qui ne vivaient que moins d'un siècle." +Text/81/text,"One human is relatively intelligent,[pause=0.2] but don't be fooled,[pause=0.2] together,[pause=0.2] they did great things.[pause=0.5] In fact,[pause=0.2] they created us.","Un seul humain est relativement intelligent,[pause=0.2] mais ensemble,[pause=0.3] ils sont capables de grandes choses.[pause=0.5] Ce sont eux qui nous ont créé !" +Text/82/text,"A long time ago,[pause=0.2] they discovered this planet.[pause=0.5] It was very different,[pause=0.2] plants were thriving everywhere ![pause=0.5] But then.[pause=0.3].[pause=0.3].[pause=0.5] they.[pause=0.3].[pause=0.3].[pause=0.5] I.[pause=0.3].[pause=0.3].[pause=0.5]","Il y a longtemps,[pause=0.3] ils ont découvert cette planète.[pause=0.5] Elle était bien différente de ce qu'elle est maintenant,[pause=0.3] il y avait des plantes partout ![pause=0.5] Mais ensuite.[pause=0.3].[pause=0.3].[pause=0.5] Ils.[pause=0.3].[pause=0.3].[pause=0.5] Je.[pause=0.3].[pause=0.3].[pause=0.5]" +Choice/83/text,What ?,Quoi ? +Choice/83/disabled_text,, +Choice/84/text,Are you lagging?,Etes-vous en train de lagger ? +Choice/84/disabled_text,, +Choice/85/text,Take your time.,Prenez votre temps. +Choice/85/disabled_text,, +Text/86/text,"Humans had one major flaw.[pause=0.5] Together,[pause=0.2] they built great things,[pause=0.2] but sometimes great things had a bad impact on the environment and even themselves.","Les humains ont un gros défaut.[pause=0.5] Ensemble,[pause=0.3] ils ont construit de belles choses,[pause=0.2] mais parfois ces choses n'étaient pas bonnes pour l'environnement,[pause=0.3] ou pour eux-mêmes." +Choice/87/text,Where are they now ?,Où sont-ils à présent ? +Choice/87/disabled_text,, +Text/88/text,"I prefer not to talk about that for now.[pause=0.3].[pause=0.3].[pause=0.3] But don't worry,[pause=0.2] they can no longer harm this planet.","Je ne préfère pas en parler.[pause=0.3].[pause=0.3].[pause=0.3] Mais ne t'inquiètes pas,[pause=0.3] ils ne peuvent plus faire de mal à cette planète." +Choice/89/text,What happened ?,Que s'est-il passé ? +Choice/89/disabled_text,, +Text/8a/text,"Sorry my child,[pause=0.3] I'm not ready to talk about that for now.[pause=0.3].[pause=0.3].[pause=0.3] You'll have your answers when you meet me.","Je suis désolée petit,[pause=0.3] je ne suis pas prête à en parler pour l'instant.[pause=0.3].[pause=0.3].[pause=0.3] Tu en sauras plus quand tu m'auras rejointe." +Text/ac/text,"Enough talking about the past, let's talk about your mission.","Assez parlé du passé, parlons un peu de ta mission." +Text/ad/text,"Now that you have learnt how to produce [b]plants[/b],[pause=0.2] I need you to travel north,[pause=0.2] to my base of operation,[pause=0.2] [color=#6CDAE7]Borea[/color].","Maintenant que tu as appris comment t'occuper des [b]plantes[/b],[pause=0.3] Il va falloir que tu ailles au Nord,[pause=0.3] à la base d'opérations [color=#6CDAE7]Borea[/color]." +Text/8c/text,"The engine you see is a planetary ship ![pause=0.5] This model is called [color=#FFA617]Internode[/color],[pause=0.3] I tweaked it to recharge on vegetal energy.[pause=0.5] However,[pause=0.2] as you know,[pause=0.2] this type of energy is uncommon on this planet.[pause=0.5]","L'engin que tu vois est un vaisseau planétaire ![pause=0.5] Le nom de ce modèle est l'[color=#FFA617]Internode[/color],[pause=0.3] je l'ai modifié pour qu'il se recharge avec de l'énergie végétale ![pause=0.5] Mais comme tu le devines,[pause=0.3] cette énergie est rare par ici." +Text/ae/text,"It is quite an old model, [pause=0.2]thousands of years in fact[pause=0.2], so it cannot go all away to Borea. [pause=0.2]You'll need to jump region to region and recharge it every step.","C'est plutôt un vieux modèle,[pause=0.2] vieux de milliers d'années en fait,[pause=0.2] donc il ne peut pas aller directement à Boréa.[pause=0.2] Tu devras te poser de région en région pour le recharger." +Text/af/text,"And to make matters worse,[pause=0.2] its effectiveness is decreasing every jump,[pause=0.2] so you'll need to fuel it with more and more energy.","Et pour ne rien arranger,[pause=0.2] son efficacité diminue tous les décollages,[pause=0.2] donc tu devras l'alimenter de plus en plus d'énergie végétale." +Text/67/text,"It will be long,[pause=0.3] but I know you can do it.[pause=0.5] It is the first step of my plan to restore the ecosytem of [color=#175579]Tau[/color].","C'est un long voyage,[pause=0.3] mais je sais que tu peux le faire.[pause=0.5] C'est la première étape de mon plan pour restorer l'écosystème de [color=#175579]Tau[/color]." +Choice/68/text,Tau ? Is it this planet ?,Tau ? Est ce que c'est cette planète ? +Choice/68/disabled_text,, +Text/69/text,"Absolutely,[pause=0.2] it is part of the Cetus constellation,[pause=0.3] whose exploitation began 10863 years ago.","Exactement,[pause=0.3] elle fait partie de la constellation Cetus,[pause=0.2] dont l'exploitation a commencé il y a 10863 ans." +Text/6a/text,"Linking Aldebaran to Fomalhaut,[pause=0.2] the Cetus constellation is one of the most diverse in terms of star systems and planets.[pause=0.5] It is part of the Orion Arm of the Milky Way.","Faisant le lien entre Aldebaran et Fomalhaut,[pause=0.2] la constellation Cetus est l'une des plus diverses en terme de systèmes stellaires et de planètes.[pause=0.5] Elle fait partie du bras Orion de la Voie Lactée." +Choice/6b/text,Why do you need me to travel through the entire planet to join you ?,Pourquoi voulez vous que je traverse la planète entière pour vous rejoindre ? +Choice/6b/disabled_text,, +Text/6c/text,Uhhhh.[pause=0.3].[pause=0.3].[pause=0.3] I need someone with your abilities.,Euuuhhhh.[pause=0.3].[pause=0.3].[pause=0.3] J'ai besoin de quelqu'un avec tes compétences. +Text/6d/text,I am having a problem at the [color=#6CDAE7]Borea[/color] base.[pause=0.5] And I cannot fix it alone.,J'ai un problème à la base [color=#6CDAE7]Borea[/color].[pause=0.5] Et je ne peux pas m'en occuper seule. +Choice/6e/text,I will do my best to be there quickly !,J'arrive au plus vite ! +Choice/6e/disabled_text,, +Text/6f/text,You are very kind [color=#FFA617]Orchid[/color] !,Tu es si gentil [color=#FFA617]Orchid[/color] ! +Choice/70/text,Are you hiding information from me ?,Me cachez vous quelque chose ? +Choice/70/disabled_text,, +Text/71/text,"Not at all ![pause=0.5] Please believe me,[pause=0.2] I just want you to join me.[pause=0.5].[pause=0.5].","Pas du tout ![pause=0.5] Crois moi je t'en prie,[pause=0.3] il faut juste que tu me rejoignes.[pause=0.3].[pause=0.3].[pause=0.3]" +Text/e2/text,"You'll need to travel north to join me, but you won't do that in one go. First, go to the [b]Mercury Relay Base[/b]; we'll use it as a temporary base to repair the ship and save your data...","Tu devras voyager vers le nord pour me rejoindre, mais tu n'iras pas d'une traite. D'abord, rends-toi à la [b]Base Relais Mercure[/b], on s'en servira de base temporaire pour réparer le vaisseau et sauvegarder tes données." +Text/e3/text,"Remember, to continue, you'll need to keep your best seeds and continue to [b]evolve your plants[/b].","Souviens-toi, pour réussir, tu devras faire évoluer tes plantes et les transporter avec toi entres les régions !" +Text/73/text,"Good luck [color=#FFA617]{orchidName}[/color],[pause=0.3] I am counting on you.","Bonne chance [color=#FFA617]{orchidName}[/color],[pause=0.3] je compte sur toi." diff --git a/translation/dialogs/dialogic_demeter_ship_presentation_translation.csv.import b/translation/dialogs/dialogic_demeter_ship_presentation_translation.csv.import index 2b36dd4..2fafadd 100644 --- a/translation/dialogs/dialogic_demeter_ship_presentation_translation.csv.import +++ b/translation/dialogs/dialogic_demeter_ship_presentation_translation.csv.import @@ -2,14 +2,14 @@ importer="csv_translation" type="Translation" -uid="uid://ctjqo603atiwh" +uid="uid://cpkdjp4ld6dwb" [deps] -files=["res://translation/dialogs/dialogic_demeter_ship_presentation_translation.fr.translation"] +files=["res://translation/dialogs/dialogic_demeter_ship_presentation_translation.en.translation", "res://translation/dialogs/dialogic_demeter_ship_presentation_translation.fr.translation"] source_file="res://translation/dialogs/dialogic_demeter_ship_presentation_translation.csv" -dest_files=["res://translation/dialogs/dialogic_demeter_ship_presentation_translation.fr.translation"] +dest_files=["res://translation/dialogs/dialogic_demeter_ship_presentation_translation.en.translation", "res://translation/dialogs/dialogic_demeter_ship_presentation_translation.fr.translation"] [params] diff --git a/translation/dialogs/dialogic_mercury_arrival_translation.csv b/translation/dialogs/dialogic_mercury_arrival_translation.csv new file mode 100644 index 0000000..0460861 --- /dev/null +++ b/translation/dialogs/dialogic_mercury_arrival_translation.csv @@ -0,0 +1,22 @@ +keys,en,fr +Text/b0/text,I'm detecting the Mercury base from your ship's sensors. I hope the Internode is okay...,"Je détecte la base Mercure depuis les capteurs de ton vaisseau, j'espère que l'Internode est en bon état." +Choice/b1/text,It's fine for now.,"Ça va pour l'instant." +Choice/b1/disabled_text,, +Choice/b2/text,"Are you kidding? The battery is draining faster and faster, it's unbearable.","Tu rigoles ? La batterie demande de plus en plus d'énergie, c'est insupportable." +Choice/b2/disabled_text,, +Text/b3/text,It's already impressive that nothing has exploded on the ship yet.,"C'est déjà impressionnant que rien n'ai explosé dans le vaisseau pour l'instant." +Text/b4/text,...,... +Text/b5/text,Can we just pretend I didn't say anything? I really don't want to wipe your memory again.,"Est-ce qu'on peut faire comme si je n'avais rien dit ? Je n'ai vraiment pas envie de t'effacer la mémoire encore une fois." +Choice/b6/text,...,... +Choice/b6/disabled_text,, +Text/b7/text,"Oh, I'm doing what I can.","Oh je fais ce que je peux." +Choice/b8/text,The ship could explode?,"Le vaisseau peut exploser ? " +Choice/b8/disabled_text,, +Text/b9/text,"Not explode, but its reactor uses experimental technology from the Talion, and it could easily reach a critical instability threshold and create a deflagration that would jeopardize all of its systems.","Pas exploser, mais son réacteur utilise une technologie expérimentale au Talion, et celui-ci peut facilement atteindre un seuil d'instabilité critique et créer une déflagration qui mettra en péril l'ensemble de ses systèmes." +Choice/ba/text,Wipe my memory?,"M'effacer la mémoire ?" +Choice/ba/disabled_text,, +Text/bb/text,Let's just say you're not my first attempt... I don't want to discourage you as my previous attempts did...,"Disons que tu n'es pas mon premier essai... Je ne t'en dirais pas plus ! Je ne veux pas te désespérer comme mes précédents cobayes..." +Text/bc/text,"Anyway, there's enough in the base to repair the Internode, and I even found some O-800 models, I mean models identical to yours.","Enfin bon, il y a dans la base de quoi réparer l'Internode, et j'ai même trouvé des modèles O - 800, enfin, je veux dire des modèles identiques au tien. " +Text/bd/text,I'd like you to find the base and synchronize your data with it. That will allow you to come back here if you run out of energy.,"J'aimerais bien que tu trouves la base et que tu synchronises tes données avec celles de la base. Ça te permettra de revenir ici si tu manques d'énergie." +Text/be/text,"The entrance shouldn't be hard to find, use your detector.","L'entrée ne devrait pas être difficile à trouver, utilise ton détecteur." +Text/bf/text,See you Orchid !,"À plus tard Orchid" diff --git a/translation/dialogs/dialogic_mercury_arrival_translation.csv.import b/translation/dialogs/dialogic_mercury_arrival_translation.csv.import new file mode 100644 index 0000000..2c2fffe --- /dev/null +++ b/translation/dialogs/dialogic_mercury_arrival_translation.csv.import @@ -0,0 +1,19 @@ +[remap] + +importer="csv_translation" +type="Translation" +uid="uid://cwe28yuhek4do" + +[deps] + +files=["res://translation/dialogs/dialogic_mercury_arrival_translation.en.translation", "res://translation/dialogs/dialogic_mercury_arrival_translation.fr.translation"] + +source_file="res://translation/dialogs/dialogic_mercury_arrival_translation.csv" +dest_files=["res://translation/dialogs/dialogic_mercury_arrival_translation.en.translation", "res://translation/dialogs/dialogic_mercury_arrival_translation.fr.translation"] + +[params] + +compress=1 +delimiter=0 +unescape_keys=false +unescape_translations=true diff --git a/translation/dialogs/dialogic_mercury_departure_translation.csv b/translation/dialogs/dialogic_mercury_departure_translation.csv new file mode 100644 index 0000000..2baa26c --- /dev/null +++ b/translation/dialogs/dialogic_mercury_departure_translation.csv @@ -0,0 +1,17 @@ +keys,en,fr +Text/ca/text,"Great, Orchid! I now have access to the base from the ship!","Super Orchid, j'ai maintenant accès à la base depuis le vaisseau !" +Text/cb/text,I've programmed a new destination for you in the onboard computer.,"Je t'ai programmé une nouvelle destination dans l'ordinateur de bord." +Text/cc/text,"You now need to go a little further north, to a new relay base, [b]Venus Base[/b].","Tu dois maintenant aller un peu plus loin au sud, dans une nouvelle base relais, la [b]Base Vénus[/b]." +Text/cd/text,"I managed to optimize the ship, but I'm afraid it hasn't returned to its original state...","J'ai réussi à faire des optimisations sur le vaisseau, mais j'ai peur qu'il n'ait pas retrouvé son état d'origine..." +Text/ce/text,"Luckily, I've found something that might help you. I've cataloged ancient human ruins all over the planet, and some of them contain ""vending machines,"" machines for exchanging items for money.","J'ai heureusement déniché quelque chose qui pourrait t'aider. J'ai répertorié des anciennes ruines humaines un peu partout sur la planète, et dans certaines, on trouve des ""distributeurs"", des machines d'échange d'objet contre de l'argent." +Choice/cf/text,Vending machines?,"Des distributeurs ?" +Choice/cf/disabled_text,, +Text/d0/text,"Yes, that's where they used to get the energy they needed, for a completely unreasonable price.","Oui c'est là qu'ils récupéraient de quoi se réalimenter en énergie, pour un prix complètement déraisonnable." +Text/d1/text,"Before, real people were in charge of these transactions, but for some reason, humans spent all of recent history figuring out how to encounter as few humans as possible. Maybe they couldn't stand each other anymore...","Avant, de vraies personnes étaient chargées de ces transactions, mais va savoir pourquoi les humains ont passé toute leur histoire récente à trouver comment croiser le moins d'humains possible. Peut-être qu'ils ne pouvaient plus se supporter..." +Choice/d2/text,Money?,"De l'argent ?" +Choice/d2/disabled_text,, +Text/d3/text,"Yes, each human had a sum of an imaginary unit they called money. They based their entire social hierarchy on this unit.","Oui, chaque humain avait une somme d'une unité imaginaire qu'ils appelaient argent. Ils basaient toute leur échelle sociale en fonction de cette unité." +Text/d4/text,"In any case, I've updated their system. They'll probably need some energy to function, but they might bring you some interesting items.","En-tout-cas, j'ai mis à jour leur système, ils auront sûrement besoin d'un peu d'énergie pour fonctionner, mais ils t'apporteront peut-être des objets intéressants." +Text/d5/text,"As usual, you can use your detector to find the entrance to these ruins.","Comme d'habitude, tu peux utiliser ton détecteur pour trouver la porte d'entrée de ces ruines." +Text/d6/text,"These artifacts will be placed on a shelf in your ship, but remember that if you ran out of energy and I have to teleport the ship, you'll lose them.","Ces artefacts seront placés sur une étagère dans le vaisseau, mais rappelle toi que si tu tombes à court d'énergie, je devrais téléporter le vaisseau et tu perdras tous les objets à l'intérieur !" +Text/d7/text,Good luck with the [b]Venus Relay Base[/b]; it's a little further than the last one.,"Bon courage pour la base Vénus elle est un petit peu plus loin que la dernière." diff --git a/translation/dialogs/dialogic_mercury_departure_translation.csv.import b/translation/dialogs/dialogic_mercury_departure_translation.csv.import new file mode 100644 index 0000000..1a13e9f --- /dev/null +++ b/translation/dialogs/dialogic_mercury_departure_translation.csv.import @@ -0,0 +1,19 @@ +[remap] + +importer="csv_translation" +type="Translation" +uid="uid://ffidextkrx6y" + +[deps] + +files=["res://translation/dialogs/dialogic_mercury_departure_translation.en.translation", "res://translation/dialogs/dialogic_mercury_departure_translation.fr.translation"] + +source_file="res://translation/dialogs/dialogic_mercury_departure_translation.csv" +dest_files=["res://translation/dialogs/dialogic_mercury_departure_translation.en.translation", "res://translation/dialogs/dialogic_mercury_departure_translation.fr.translation"] + +[params] + +compress=1 +delimiter=0 +unescape_keys=false +unescape_translations=true diff --git a/translation/dialogs/dialogic_venus_arrival_translation.csv b/translation/dialogs/dialogic_venus_arrival_translation.csv new file mode 100644 index 0000000..12ba3c3 --- /dev/null +++ b/translation/dialogs/dialogic_venus_arrival_translation.csv @@ -0,0 +1,14 @@ +keys,en,fr +Text/d8/text,"Wow, you arrived quickly! How's your journey going so far?","Wow, tu es arrivé vite ! Comment se passe ton voyage pour l'instant ?" +Choice/d9/text,Boring,"Fastidieux" +Choice/d9/disabled_text,, +Text/da/text,"Sorry, but things get even more complicated from here on out! But believe me, I need you. I wouldn't have asked you if it was not important.","Désolé, mais pour la suite cela se corse encore plus ! Mais crois moi, j'ai vraiment besoin de toi. Je ne t'aurais pas demandé si cela n'était pas important." +Choice/db/text,Too easy,"Trop simple" +Choice/db/disabled_text,, +Text/dc/text,"Hmm, that answer surprises me. I didn't think your program contained any pride...","Cette réponse m'étonne, je ne pensais pas que ton programme contenait de la vantardise..." +Text/dd/text,[i]Analysis in progress[/i],"[i]Analyse en cours[/i]" +Text/de/text,20% pride! I must have been hallucinating while writing your behavior.,"20% de fierté quand même ! J'ai dû halluciner pendant l'écriture de ton comportement." +Choice/df/text,Interesting,"Intéressant" +Choice/df/disabled_text,, +Text/e0/text,"Good! I hope you're enjoying your new existence, and that you're not suffering too much from being born into something you didn't choose...","Bien ! J'espère que tu aimes ta nouvelle existence, et que tu ne subis pas trop ta mise au monde pour quelque chose que tu n'as pas décidé..." +Text/e1/text,"Like in [b]Mercury Base[/b], I'd like you to save yourself. In the meantime, I'll check the ship's condition. I hope it hasn't suffered too much damage from the jumps!","Comme sur la Base Mercure, je veux bien que tu te sauvegardes. Pendant ce temps, je vais regarder l'état du vaisseau. J'espère qu'il n'a pas trop morflé !" diff --git a/translation/dialogs/dialogic_venus_arrival_translation.csv.import b/translation/dialogs/dialogic_venus_arrival_translation.csv.import new file mode 100644 index 0000000..3e10adb --- /dev/null +++ b/translation/dialogs/dialogic_venus_arrival_translation.csv.import @@ -0,0 +1,19 @@ +[remap] + +importer="csv_translation" +type="Translation" +uid="uid://1dvsgdf72cwc" + +[deps] + +files=["res://translation/dialogs/dialogic_venus_arrival_translation.en.translation", "res://translation/dialogs/dialogic_venus_arrival_translation.fr.translation"] + +source_file="res://translation/dialogs/dialogic_venus_arrival_translation.csv" +dest_files=["res://translation/dialogs/dialogic_venus_arrival_translation.en.translation", "res://translation/dialogs/dialogic_venus_arrival_translation.fr.translation"] + +[params] + +compress=1 +delimiter=0 +unescape_keys=false +unescape_translations=true diff --git a/translation/dialogs/dialogic_venus_departure_translation.csv b/translation/dialogs/dialogic_venus_departure_translation.csv new file mode 100644 index 0000000..d6dcd8f --- /dev/null +++ b/translation/dialogs/dialogic_venus_departure_translation.csv @@ -0,0 +1,15 @@ +keys,en,fr +Text/c0/text,Hello!,"Bonjour !" +Choice/c1/text,Who are you?,"Qui êtes vous ?" +Choice/c1/disabled_text,,"" +Text/c2/text,"I'm the personification of the development team, and I'd like to announce to you that this part of the game isn't finished!","Je suis la personnification de l'équipe de développement, et j'aimerais t'annoncer que cette partie du jeu n'est pas finie !" +Choice/c3/text,How?,"Quoi ?" +Choice/c3/disabled_text,,"" +Choice/c4/text,What?,"Comment ?" +Choice/c4/disabled_text,,"" +Choice/c5/text,Can I be more surprised?,"Pourrais-je être plus étonné ?" +Choice/c5/disabled_text,,"" +Text/c6/text,"Don't worry, I'm extradiegetic.","Ne t'inquiète pas, je suis extra-diégétique." +Text/c7/text,"I have a surprise for you, there's one last challenge for you to play!","Cependant, j'ai une dernière surprise pour toi, un dernier challenge à te faire jouer !" +Text/c8/text,"Indeed, the next destination is an exclusive environment we're currently working on. But you'll have to earn it!","La prochaine destination est un environnement sur lequel on est en train de travailler, mais il va falloir le mériter !" +Text/c9/text,Good luck!,"Bonne chance !" diff --git a/translation/dialogs/dialogic_venus_departure_translation.csv.import b/translation/dialogs/dialogic_venus_departure_translation.csv.import new file mode 100644 index 0000000..ca52aa7 --- /dev/null +++ b/translation/dialogs/dialogic_venus_departure_translation.csv.import @@ -0,0 +1,19 @@ +[remap] + +importer="csv_translation" +type="Translation" +uid="uid://c5n5h6i415jdp" + +[deps] + +files=["res://translation/dialogs/dialogic_venus_departure_translation.en.translation", "res://translation/dialogs/dialogic_venus_departure_translation.fr.translation"] + +source_file="res://translation/dialogs/dialogic_venus_departure_translation.csv" +dest_files=["res://translation/dialogs/dialogic_venus_departure_translation.en.translation", "res://translation/dialogs/dialogic_venus_departure_translation.fr.translation"] + +[params] + +compress=1 +delimiter=0 +unescape_keys=false +unescape_translations=true diff --git a/translation/dialogs/dialogic_wake_up_translation.csv b/translation/dialogs/dialogic_wake_up_translation.csv index 3eb09d2..1117913 100644 --- a/translation/dialogs/dialogic_wake_up_translation.csv +++ b/translation/dialogs/dialogic_wake_up_translation.csv @@ -1,18 +1,18 @@ -keys,fr -Text/3f/text,[i]Le vide.[/i] -Text/40/text,[i]Encore le vide.[/i] -Text/41/text,"[i]Soudain, une [rainbow]étincelle[/rainbow].[pause=0.5] Mille connections explosent comme un feu d’artifice.[pause=0.3] Une énorme quantité de données à traiter." -Label/42/display_name, -Choice/43/text,Examiner les composants -Choice/43/disabled_text, -Text/44/text,"Exploration des pilotes disponibles[pause=0.5].[pause=0.5].[pause=0.5] Nouvelles actions disponibles.[pause=0.5] Trois hélices,[pause=0.3] petits modèles,[pause=0.3] appropriées pour du mouvement en basse altitude seulement.[pause=0.5] Un bras robotique,[pause=0.3] versatile,[pause=0.3] rétractable." -Choice/45/text,Examiner les flux -Choice/45/disabled_text, -Text/46/text,"Un flux de données continu,[pause=0.3] non verifié.[pause=0.5] Une vidéo,[pause=0.5] seulement faite de pixels assombris.[pause=0.5] Un autre flux,[pause=0.3] pas de signal.[pause=0.5] Aucune émission radio détectée." -Choice/47/text,Examiner la mémoire -Choice/47/disabled_text, -Text/48/text,"Quelques disques disponibles,[pause=0.3] la plupart sont vides.[pause=0.5] Certains ont l’air de contenir le système analysant le code du système analysant le code du système analysant le code du système analysant.[pause=0.5].[pause=0.5].[pause=0.5] Une récursion infinie,[pause=0.3] il vaudrait mieux éviter ça." -Choice/49/text,Se réveiller -Choice/49/disabled_text, -Text/4a/text,Inspection du \: numéro de série et du nom du système.[pause=0.5].[pause=0.5].[pause=0.5] Etrange.[pause=0.5] Pas de numéro de série.[pause=0.5] Sûrement une erreur.[pause=0.5] Le nom du système est[pause=0.5] [color=#FFA617]Orchid[/color].[pause=0.5] C’est tout pour le moment. -Text/4b/text,"Allumage des moteurs,[pause=0.3]ventilateurs et daemons,[pause=0.3] voyons ce qu’on peut trouver." \ No newline at end of file +keys,en,fr +Text/8d/text,[i]Void.[/i],[i]Le vide.[/i] +Text/8e/text,[i]Void again.[/i],[i]Encore le vide.[/i] +Text/8f/text,"[i]Suddenly, a [rainbow]spark[/rainbow].[pause=0.5] A thousand of connections blow up as a fireworks scene.[pause=0.5] A massive amount of data to treat.","[i]Soudain, une [rainbow]étincelle[/rainbow].[pause=0.5] Mille connections explosent comme un feu d'artifice.[pause=0.3] Une énorme quantité de données à traiter." +Label/90/display_name,, +Choice/91/text,Check components,Examiner les composants +Choice/91/disabled_text,, +Text/92/text,"Exploring available drivers.[pause=0.5].[pause=0.5].[pause=0.5] New actions discovered.[pause=0.5] Three propellers,[pause=0.3] small models,[pause=0.3] only suitable for low altitude movement.[pause=0.5] Robotic arm,[pause=0.3] multipurpose,[pause=0.3] retractable.","Exploration des pilotes disponibles[pause=0.5].[pause=0.5].[pause=0.5] Nouvelles actions découvertes.[pause=0.5] Trois hélices,[pause=0.3] petits modèles,[pause=0.3] appropriéespour du mouvement en basse altitude seulement.[pause=0.5] Un bras robotique,[pause=0.3] versatile,[pause=0.3] rétractable." +Choice/93/text,Check streams,Examiner les flux +Choice/93/disabled_text,, +Text/94/text,"A continuous stream of data flow,[pause=0.3] unchecked.[pause=0.5] A video,[pause=0.5] dark colored pixels only.[pause=0.5] Another stream,[pause=0.3] flat signal.[pause=0.5] No radio emission detected.","Un flux de données continu,[pause=0.3] non verifié.[pause=0.5] Une vidéo,[pause=0.5] seulement faite de pixels assombris.[pause=0.5] Un autre flux,[pause=0.3] pas de signal.[pause=0.5] Aucune émission radio détectée." +Choice/95/text,Check memory,Examiner la mémoire +Choice/95/disabled_text,, +Text/96/text,"Several disks available,[pause=0.3] most are empty.[pause=0.5] Some seem to contain the system currently analyzing the code of the system analyzing the code of the system analyzing the code of the system analyzing.[pause=0.5].[pause=0.5].[pause=0.5] Infinite recursion,[pause=0.3] better avoid that.","Quelques disques disponibles,[pause=0.3] la plupart sont vides.[pause=0.5] Certains ont l'air de contenir le système analysant le code du système analysant le code du système analysant le code du système analysant.[pause=0.5].[pause=0.5].[pause=0.5] Une récursion infinie,[pause=0.3] il vaudrait mieux éviter ça." +Choice/97/text,Wake up,Se réveiller +Choice/97/disabled_text,, +Text/98/text,"Overseeing serial number and system name.[pause=0.5].[pause=0.5].[pause=0.5] Strange.[pause=0.5] Serial number is empty.[pause=0.5] Must be an error.[pause=0.5] System name is,[pause=0.5] [color=#FFA617]Orchid[/color].[pause=0.5] That is enough for now.",Inspection du numéro de série et du nom du système.[pause=0.5].[pause=0.5].[pause=0.5] Etrange.[pause=0.5] Pas de numéro de série.[pause=0.5] Sûrement une erreur.[pause=0.5] Le nom du système est[pause=0.5] [color=#FFA617]Orchid[/color].[pause=0.5] C'est tout pour le moment. +Text/99/text,"Starting engines,[pause=0.3] fans and daemons,[pause=0.3] let's see what is to see.","Allumage des moteurs, [pause=0.3]ventilateurs et daemons,[pause=0.3] voyons ce qui nous attends." diff --git a/translation/dialogs/dialogic_wake_up_translation.csv.import b/translation/dialogs/dialogic_wake_up_translation.csv.import index 68b58c1..2c0ce4c 100644 --- a/translation/dialogs/dialogic_wake_up_translation.csv.import +++ b/translation/dialogs/dialogic_wake_up_translation.csv.import @@ -2,14 +2,14 @@ importer="csv_translation" type="Translation" -uid="uid://b5ntxcwnae4xm" +uid="uid://ciqfohxlcsqxd" [deps] -files=["res://translation/dialogs/dialogic_wake_up_translation.fr.translation"] +files=["res://translation/dialogs/dialogic_wake_up_translation.en.translation", "res://translation/dialogs/dialogic_wake_up_translation.fr.translation"] source_file="res://translation/dialogs/dialogic_wake_up_translation.csv" -dest_files=["res://translation/dialogs/dialogic_wake_up_translation.fr.translation"] +dest_files=["res://translation/dialogs/dialogic_wake_up_translation.en.translation", "res://translation/dialogs/dialogic_wake_up_translation.fr.translation"] [params] diff --git a/translation/game/gui.csv b/translation/game/gui.csv index e83f910..8791627 100644 --- a/translation/game/gui.csv +++ b/translation/game/gui.csv @@ -1,21 +1,15 @@ keys,en,fr TUTORIAL,Tutorial,Tutoriel -PLANT_INFO,Plant Info, Informations de plantes -PLANT_INFO_TEXT,"[b]1[/b] Name -[b]2[/b] Archetype -[b]3[/b] Score -[b]4[/b] Age -[b]5[/b] Growing time -[b]6[/b] Lifetime","[b]1[/b] Nom -[b]2[/b] Archétype -[b]3[/b] Score -[b]4[/b] Age -[b]5[/b] Temps de croissance -[b]6[/b] Durée de vie" +ICONS_MEANINGS,Icons Meanings,Signification des Icônes +PLANT_POINTS,Plant points,Points de plante +DAYS,Days,Jours +GROWING_TIME,Growing time (in days),Temps de pousse (en jour) +LIFETIME,Lifetime (in days),Durée de vie (en jour) +SEEDS,Seeds,Graines TERRAINS,Terrains,Terrains FERTILE_LAND_TEXT,[b]Fertile Land[/b] Seeds can only be planted on this zone,[b]Terre fertile[/b] Des graines peuvent être plantées dans cette zone -ROCK_TEXT,[b]Rock[/b] Can be dug with a shovel,[b]Roche[/b] Peut être creusée avec une pelle -TALION_VEIN_TEXT,"[b]Talion Vein[/b] Can be dug with a shovel, contains random seeds","[b]Veine de Talion[/b] Peut être creusée avec une pelle, contient des graines aléatoire" +ROCK_TEXT,[b]Rock[/b] Can be dug with a Pickaxe,[b]Roche[/b] Peut être creusée avec une pioche +TALION_VEIN_TEXT,"[b]Talion Vein[/b] Can be dug with a pickaxe, contains random seeds","[b]Veine de Talion[/b] Peut être creusée avec une pioche, contient des graines aléatoire" OK,Ok,Ok GARDEN,Garden,Jardin COMMA,", ","," @@ -25,6 +19,10 @@ CONTROLS,Controls,Contrôles RESUME_GAME,Resume,Reprendre RESTART,Restart,Recommencer QUIT,Quit,Quitter +THIS_GAME_USE_AUTOSAVE,This game use autosave,Ce jeu sauvegarde votre progression automatiquement +CHOOSE_GAME_MODE,Choose game mode,Choisissez le mode de jeu +STORY_MODE,Story Mode,Mode Histoire +INFINITE_MODE,Infinite Mode,Mode Infini SEED,Seed,Graine TAKE,Take,Prendre PACKAGE,Crate,Caisse de matériel @@ -40,7 +38,7 @@ IMPOSSIBLE,Impossible,Impossible EFFECT,Effect,Effet MATURE,Mature,Mature GROWING,Growing,En train de pousser -DECONTAMINATE,Decontaminate,Décontamine +JUVENILE,Juvenile,Juvénile %d_CHARGE_LEFT,%d charge left,%d charges restants LAST_RECHARGE,One recharge remaining,Une recharge restante RECHARGE_%d_ENERGY,Recharge %d energy,Recharge %d d’énergie @@ -51,48 +49,45 @@ WHEN_FILLED,When filled,Si rempli GIVE_THE_FOLLOWING_ITEM_%s,Give the following item : [b]%s[/b],Donne l’objet suivant : [b]%s[/b] UPGRADE_MAX_ENERGY,Increases maximum energy,Augmente l’énergie maximum UPGRADE_MAX_INVENTORY_SIZE,Increases inventory size,Augmente la taille de l’inventaire -DECONTAMINATE_%d_UNIT_AROUND_IT,Decontaminate %d unit around it,Décontamine %d unités autour d’elle SEED_PRODUCTION,Seed Production,Production de graines PRODUCE_%s_SEEDS,Produce %s seeds,Produit %s graines DAY_%d,Day [b]%d[/b],Jour [b]%d[/b] MATURE_ON_DAY_%d,Mature on day [b]%d[/b],Mature au jour [b]%d[/b] -%d_SCORE_WHEN_MATURE,Grants [b]%d[/b] garden points when mature,Donne [b]%d[/b] points de jardin une fois mature +%d_SCORE_WHEN_MATURE,Grants [b]%d[/b] plant point when mature,Donne [b]%d[/b] points de jardin une fois mature ABSURD,[rainbow]Absurd[/rainbow],[rainbow]Absurde[/rainbow] GROW_IN_%d,Grow in [b]%d[/b] days,Mature dans [b]%d[/b] jours DIE_ON_DAY_%d,Die on day %d,Meurs au jour %d -%s_SCORE_WHEN_MATURE,Grants [b]%s[/b] garden points when mature,Donne [b]%s[/b] points de jardin une fois mature -DISCOVER_%s,Discover %s,Découvre %s -EVOLVE_%s,Upgrade %s,Améliore %s -%s_SEEDS_CAN_NOW_BE_FOUND,%s seeds can now be found,Des graines de %s peuvent maintenant être trouvées -%s_SCORE_EVOLUTION,%s score evolution,Évolution de score de %s -ADD_%s_TO_THE_DEFAULT_SCORE_OF_THE_PLANT,Add [b]%s[/b] to the default score of the plant,Améliore le score de jardin de la plante de [b]%s[/b] -%s_EVOLUTION,%s evolution,Évolution de %s -UPGRADE_THE_LEVEL_OF_%s_EFFECT_OF_%d_LEVEL,Upgrade the level of %s effect of %d level,Améliore l'effet %s de %d niveau ANCIENT,Ancient,Ancien -ANCIENT_EFFECT_TEXT_LEVEL_%d,"When mature, grants [b]1[/b] garden points each [b]%d[/b] days","Une fois mature, donne [b]1[/b] points de jardin tous les [b]%d[/b] jours" -ELITIST,Elitist,Élitiste -ELITIST_EFFECT_TEXT_LEVEL_%d,"When mature, grants [b]%d[/b] garden points for each plant of the same species around, but do not give any points if it is alone.","Une fois mature, donne [b]%d[/b] points de jardin pour chaque plante de la même espèce aux alentours, mais n’en donne aucun si elle est seule." -ERMIT,Hermit,Ermite -ERMIT_EFFECT_TEXT_LEVEL_%d,"Multiply the garden score by [b]%d[/b] if no plants are nearby, otherwise, set it to 0.","Multiplie le score de jardin par [b]%d[/b] si aucune plante n’est proche, sinon le score est nul." +ANCIENT_EFFECT_TEXT,"When mature, add [b]{score_increase}[/b]{score_icon} each [b]{day_factor}[/b]{duration_icon}","Une fois mature, ajoute [b]{score_increase}[/b]{score_icon} tous les [b]{day_factor}[/b]{duration_icon}" PRECOCIOUS,Precocious,Précoce -PRECOCIOUS_EFFECT_TEXT_LEVEL_%d,Grants [b]%d[/b] garden points while the plant is growing,Donne [b]%d[/b] points de jardin pendant que la plante grandit +PRECOCIOUS_EFFECT_TEXT,[b]{score}[/b]{score_icon} while the plant is growing,[b]{score}[/b]{score_icon} pendant que la plante grandit QUALITY,Quality,Qualité -QUALITY_EFFECT_TEXT_LEVEL_%d,Grants [b]%d[/b] garden points if the plant is mature.,Donne [b]%d[/b] points de jardin si la plante est mature. +QUALITY_EFFECT_TEXT,[b]{score}[/b]{score_icon} if the plant is mature,[b]{score}[/b]{score_icon} si la plante est mature QUICK,Quick,Rapide -QUICK_EFFECT_TEXT_LEVEL,Grants [b]{score_increase}[/b] garden points when mature but reduces the lifetime by [b]{lifetime_decrease}[/b],"Augmente le score mature de [b]{score_increase}[/b], mais réduit le temps de vie de [b]{lifetime_decrease}[/b]" -SOCIABLE,Outgoing,Sociable -SOCIABLE_EFFECT_TEXT_LEVEL,"When mature, grants [b]{near_amount}[/b] garden points every [b]{near_amount}[/b] nearby plant","Une fois mature, donne [b]1[/b] points de jardin toutes les [b]{near_amount}[/b] plantes autour" -STRONG,Strong,Fort -STRONG_EFFECT_TEXT_LEVEL_%d,Plus [b]%d[/b]%% of the score,Augmente le score de [b]%d[/b]%% +QUICK_EFFECT_TEXT,"[b]{lifetime_decrease}[/b]{lifetime_icon} and when mature [b]{score_increase}[/b]{score_icon}","[b]{lifetime_decrease}[/b]{lifetime_icon} et une fois mature [b]{score_increase}[/b]{score_icon}" +SOCIABLE,Sociable,Sociable +SOCIABLE_EFFECT_TEXT,"When mature, grants [b]{score_increase}[/b]{score_icon} every [b]{near_amount}[/b] nearby plants","Une fois mature, donne [b]{score_increase}[/b]{score_icon} toutes les [b]{near_amount}[/b] plantes autour" TOUGH,Tough,Solide -TOUGH_EFFECT_TEXT_LEVEL_%d,Multiplies the score by [b]2[/b] but increases the growing time by [b]%d[/b] days,"Multiplie le score par [b]2[/b], mais aumgente le temps de pousse de [b]%d[/b] jours" +TOUGH_EFFECT_TEXT,Multiplies {score_icon} by [b]{score_multiplier}[/b] and add [b]{growing_time}[/b]{growing_icon},"Multiplie {score_icon} par [b]{score_multiplier}[/b] et ajoute [b]{growing_time}[/b]{growing_icon}" FERTILE,Fertile,Fertile -FERTILE_EFFECT_TEXT_LEVEL_%d,Increases the lifetime by [b]1[/b] every [b]%d[/b] nearby plant around,Augmente le temps de vie de [b]1[/b] toutes les [b]%d[/b] plante autour -EPHEMERAL,Ephemeral,Éphémère -EPHEMERAL_EFFECT_TEXT_LEVEL,Increases the number of seeds by [b]{seed_number}[/b] when gathered but reduces the lifetime by [b]{lifetime_change}[/b] days,"Augmente le nombre de graines de [b]{seed_number}[/b] à la récolte, mais réduis le temps de vie de [b]{lifetime_change}[/b]" -PURIFICATION,Purification,Épuration -PURIFICATION_EFFECT_TEXT_LEVEL_%d,"When mature, decontaminate around the plant in a radius of [b]%d[/b]","Une fois mature, décontamine autour de la plante dans un rayon de [b]%d[/b]" -COST_%d_ENERGY,Cost %d energy,Coûte %d d’énergie +FERTILE_EFFECT_TEXT,Add [b]{seed_buff}[/b]{seed_icon} to all nearby plant but [b]{score_change}[/b]{score_icon} to itself,Ajoute [b]{seed_buff}[/b]{seed_icon} à toutes les plantes autour mais [b]{score_change}[/b]{score_icon} pour elle même +PURIFICATION,Purification,Purification +PURIFICATION_EFFECT_TEXT,"When mature, create fertile zone in a radius of [b]{purification_radius}[/b]","Une fois mature, créée une zone fertile dans un rayon de [b]{purification_radius}[/b]" +HURRIED,Hurried,Pressé +HURRIED_EFFECT_TEXT,"[b]{growing_time_change}[/b]{growing_time_icon}","[b]{growing_time_change}[/b]{growing_time_icon}" +VIVACIOUS,Vivacious,Vivace +VIVACIOUS_EFFECT_TEXT,[b]{score_change}[/b]{score_icon} the first day of maturation,[b]{score_change}[/b]{score_icon} le premier jour de maturation +ROBUST,Robust,Robuste +ROBUST_EFFECT_TEXT,[b]+{lifetime_change}[/b]{lifetime_icon},[b]+{lifetime_change}[/b]{lifetime_icon} +PROLIFIC,Prolific,Prolifique +PROLIFIC_EFFECT_TEXT,[b]+{seeds_change}[/b]{seeds_icon},[b]+{seeds_change}[/b]{seeds_icon} +PURE,Pure,Pure +PURE_EFFECT_TEXT,Multiplies {score_icon} by [b]{score_multiplier}[/b] if the all the area around is fertile,Multiplie {score_icon} par [b]{score_multiplier}[/b] si toute la zone autour est fertile +GENEROUS,Generous,Généreux +GENEROUS_EFFECT_TEXT,"When mature, add [b]{score_buff}[/b]{score_icon} to all nearby plants, but no longer make point","Si mature, ajoute [b]{score_buff}[/b]{score_icon} à toutes les plantes à proximité, mais ne génère plus de points" +PROTECTIVE,Protective,Protecteur +PROTECTIVE_EFFECT_TEXT,"Add [b]{lifetime_buff}[/b]{lifetime_icon} to all nearby plants","Ajoute [b]{lifetime_buff}[/b]{lifetime_icon} à toutes les plantes à proximité" +COST_%d_ENERGY,Cost %d energy,Coûte %d d'énergie ONE_TIME_USE,Single use,Usage unique BUILD_%s,Build %s,Construit %s FORK,Fork,Fourche @@ -115,17 +110,26 @@ PICKAXE_DESC_TEXT,Can dig rock and precious materials,Peut creuser la roche et d DIG,Dig,Creuser OPEN,Open,Ouvrir %s_SEED,%s Seed,Graine de %s -PLANT_%s_MUST_BE_USED_IN_DECONTAMINATED_ZONE,Plant [b]%s[/b]. Must be used in the decontamined zone.,Plante [b]%s[/b]. Doit être utilisée dans la zone décontaminée. +PLANT_%s_MUST_BE_USED_IN_DECONTAMINATED_ZONE,Plant [b]%s[/b]. Must be used in the fertile zone.,Plante [b]%s[/b]. Doit être utilisée dans la zone fertile. PLANT_%s,Plant [b]%s[/b],Planter [b]%s[/b] -USE_YOUR_DETECTOR_TO_FIND_THE_BATTERY,Use your [b]Detector[/b] to find the [b]Recharge station[/b],Utiliser votre [b]Détecteur[/b] pour trouver la [b]Station de recharge[/b] -TAKE_A_SEED,Take a [b]Seed[/b],Prend une [b]Graine[/b] -DIG_A_TALION_VEIN_WITH_SHOVEL,Dig a [b]Talion Vein[/b] with the [b]Shovel[/b],Creuser un [b]Filon de Talion[/b] avec la [b]Pelle[/b] +MOVE_WITH_RIGHT_CLICK_OR_WASD,"Move with right click or WASD","Déplace-toi avec le clic droit ou ZQSD" +CHANGE_ZOOM_WITH_Z_X,"Change the zoom with Z and X","Changez le zoom avec W et X" +SELECT_ITEM_WITH_SCROLL_CLICK_OR_NUMBER,"Select an item in your toolbar with the mouse wheel or by clicking on it","Sélectionne un item dans ta barre d'outil en utilisant la molette ou en cliquant dessus" +LEFT_CLICK_TO_USE_ITEMS,"Use an item with left click","Utilise un item avec le clic gauche" +DROP_SEED_WITH_KEY,"Drop current item with Q","Lâche l'item sélectionné avec A" +USE_YOUR_DETECTOR_TO_FIND_THE_BATTERY,Use your [b]Detector[/b] to find the [b]Recharge station[/b],Utilise ton [b]Détecteur[/b] pour trouver la [b]Station de recharge[/b] +RECHARGE_IN_THE_RECHARGE_STATION,Recharge on the [b]Recharge station[/b] to pass the day,Se recharger sur la [b]Station de recharge[/b] pour passer la journée +TAKE_A_SEED_BY_CLICKING_ON_IT,Take a [b]Seed[/b] by clicking on it,Prend une [b]Graine[/b] en cliquant dessus +DIG_A_TALION_VEIN_WITH_SHOVEL,Dig a [b]Talion Vein[/b] with the [b]Pickaxe[/b],Creuser un [b]Filon de Talion[/b] avec la [b]Pioche[/b] PLANT_SEED_IN_FERTILE_ZONE,Plant a [b]Seed[/b] in the [b]Fertile Zone[/b],Planter une [b]Graine[/b] dans la [b]Zone Fertile[/b] -RECHARGE_TO_PASS_DAYS,Recharge on the [b]Recharge station[/b] to pass the day,Se recharger sur la [b]Station de recharge[/b] pour passer la journée -GAIN_FIRST_PLANT_POINT,Earn your first [b]Plant Point[/b] while waiting for a plant to [b]Mature[/b],Gagnez votre premier [b]Point de Plante[/b] en attendant qu'une plante soit [b]Mature[/b] -DISCOVER_A_SEED_WITH_A_MUTATION,Discover a [b]Seed[/b] with a [b]Mutation[/b],Découvrez une [b]Graine[/b] avec une [b]Mutation[/b] -PLANT_A_SEED_WITH_A_MUTATION,Plant a [b]Seed[/b] with a [b]Mutation[/b],Plantez une [b]Graine[/b] avec une [b]Mutation[/b] -HARVEST_A_MATURE_PLANT_WITH_A_MUTATION,Harvest a [b]Mature Plant[/b] with a [b]Mutation[/b] using your [b]Shovel[/b],Récoltez une [b]Plante Mature[/b] avec une [b]Mutation[/b] en utilisant votre [b]Pelle[/b] +GAIN_FIRST_PLANT_POINT,Earn your first [b]Plant Point[/b] while waiting for a plant to [b]Mature[/b] (recharging will pass days),Gagnez votre premier [b]Point de Plante[/b] en attendant qu'une plante soit [b]Mature[/b] (se recharger fera passer les jours) +HARVEST_A_MATURE_PLANT,Harvest a [b]Mature Plant[/b] using your [b]Fork[/b],Récoltez une [b]Plante Mature[/b] en utilisant votre [b]Fourche[/b] +PLANT_NAME_TEXT,"[b]Plant name and state[/b] Each plant species has a unique name and can have 2 states: juvenile and mature","[b]Nom et état de la plante[/b] Chaque espèce de plantes a un nom unique et chaque plante peut avoir deux états : juvénile et mature" +PLANT_STATS_TEXT,"[b]Plant stats[/b] Here you can see your plant's age, the day of maturation, the lifetime, and the seed number that the plant can produce","[b]Statistiques[/b] Ici, vous pouvez voir l'âge de votre plante, le jour de maturation, le temps de vie et le nombre de graine que la plante donne" +PLANT_MUTATION_TEXT,"[b]Mutations[/b] Each species has mutations that alter the plant's behavior. These mutations are transmissible to the plant's seeds, where they can change or evolve superior levels","[b]Mutations[/b] Chaque espèce possède des mutations qui modifient le comportement de la plante. Ces mutations se transmettent aux graines, et peuvent changer ou évoluer aux niveaux supérieurs" +PLANTS_INFO,"Plants info","Information des plantes" +OBTAIN_INFORMATION_ON_PLANTS_WHILE_HOVERING_PLANTS_BASE,"Obtain information on plants while hovering over the plant base","Obtenez des informations sur les plantes en survolant leur base" +PLANT_SCORE_TEXT,"[b]Score[/b] By default, each plant get 1 score when mature","[b]Score[/b] Par défaut, chaque plante gagne 1 de score à la maturation" %d_PLANT_POINT,%d Plant Point,%d Point de plante %d_PLANT_POINTS,%d Plant Points,%d Points de plante SCORE_%d,Score %d,Score %d @@ -138,6 +142,7 @@ RECHARGE,Recharge,Recharger RECHARGE_STATION_DESC_TEXT,"[b]You can recharge yourself here.[/b] When recharging, time pass and plants grow.","[b]Tu peux te recharger ici.[/b] Pendant la recharge, le temps passe et les plantes grandissent." COMPOST,Compost,Compost START,Start,Commencer +HELP,Help,Aide CONTINUE,Continue,Continuer CHOOSE_A_LANGUAGE,Choose a language,Choisissez une langue NO_ENERGY_LEFT," (no energy left)", " (pas d'énergie restante)" @@ -173,7 +178,7 @@ PRESS_KEY,Press a key...,Appuyer sur une touche... LOADING,Loading...,Chargement... LOADING_SCENE,Loading Scene,Chargement de la scène GENERATING_TERRAIN,Generating Terrain,Génération du terrain -%d_GARDEN_POINTS,[b]%d[/b] garden points,[b]%d[/b] points de jardin +%d_GARDEN_POINTS,[b]%d[/b] plant point,[b]%d[/b] points de jardin %d_CHARGES_AVAILABLE,[b]%d[/b] charges available,[b]%d[/b] charges disponibles CURRENT_REGION,Current region,Région actuelle REGION_TO_VISIT,Region to visit,Région à visiter @@ -196,11 +201,17 @@ LOCATION,Location,Location LAND_SHIP,Land Ship,Atterrir TAKE_OFF,Take Off,Décoller NO_MORE_ENERGY,No more energy,Plus assez d'énergie -NO_RECHARGE_LEFT,No recharge left,Pas de recharge restante +NO_RECHARGE_LEFT,"No recharge left, go to the ship to respawn","Pas de recharge restante, aller sur le vaisseau pour recommencer" +SHIP_ACQUIRED,Ship Acquired,Vaisseau Acquis +USE_THE_SHIP_TO_TRAVEL_ACROSS_THE_PLANET,"Use the ship to travel across the planet","Utilisez le vaisseau pour voyager sur la planète" +JUMP_BETWEEN_REGION_TEXT,"[b]Jump between regions[/b] Use the ship dashboard to choose the next region between two choices","[b]Changez de région[/b] Utilisez le tableau de bord pour changer de région parmi deux choix" +RECHARGE_YOUR_SHIP_WITH_PLANT_SCORE_TEXT,"[b]Recharge your ship with plant score[/b] The Internode has fuel for only one jump; recharge it with plants on the planet","[b]Rechargez votre vaisseau avec les scores de plantes[/b] L'Internode a du carburant pour un seul changement, rechargez le en plantant sur la planète" SHIP_IS_READY_TO_TAKE_OFF,Ship is ready to take off,Le vaisseau est prêt à partir +SAVE_ORCHID_MEMORY_AND_RESPAWN,Save Orchid Memory and respawn,Sauvegarder la mémoire d'Orchid et recommencer +DOWNLOAD_ORCHID_DATA_TO_LOCAL_SERVERS,Download Orchid data to local servers,Télécharger les données d'Orchid sur les serveurs locaux TUTORIAL_FINISHED,Tutorial finished,Tutoriel terminé -CHOOSE_DESTINATION,Choose destination,Choisissez la destination -THANKS_FOR_PLAYING,Thanks for playing to the demo!,Merci d’avoir joué à la démo ! +CHOOSE_NEXT_STOP,Choose next stop,Choisissez le prochain arrêt +THANKS_FOR_PLAYING,Thanks for playing!,Merci d'avoir joué ! JOIN_OUR_INSTAGRAM,Join our Instagram,Rejoins-nous sur Instagram WHISHLIST_THE_GAME,Whishlist the game on Steam,Ajoutez le jeu à votre liste de souhait ART,Art,Art @@ -214,9 +225,30 @@ TRAILER,"Trailer","Trailer" CREDITS,Credits,Crédits ASTRA_FACTORY,Astra Factory,Usine Astra ASTRA_FACTORY_TEXT,Production factory of Astra base,Usine de production de la base Astra +ASTRA_SHIP_GARAGE,Astra Ship Garage,Garage de Vaisseau Astra MYSTERIOUS_DOOR,Mysterious Door,Porte mystérieuse MYSTERIOUS_DOOR_TEXT,"This door has a space ship logo on it... What could it be ?","Cette porte à un logo de vaisseau marqué dessus... Que peut-il y avoir à l'intérieur ?" +ASTRA_BASE,Astra Base,Base Astra BOREA_BASE,Borea Base,Base Boréa +RELAY_BASE_X,Relay Base %s,Base relai %s +MERCURY,Mercury,Mercure +VENUS,Venus,Vénus +EARTH,Earth,Terre +MARS,Mars,Mars +CERES,Ceres,Cérès +JUPITER,Jupiter,Jupiter +SATURN,Saturn,Saturne +URANUS,Uranus,Uranus +NEPTUNE,Neptune,Neptune +PLUTO,Pluto,Pluton +ERIS,Eris,Eris +INTERNODE,Internode,Internode +DESTINATION,Destination,Destination +SECRET_SCENE,Secret Scene,Scène secrète +INTERNODE_PROGRAMMED_DESTINATION,Internode programmed destination,Destination programmée sur l'Internode +DESTINATION_REACHED,Destination Reached, Destination Atteinte +TO_BOREA_BASE,To Borea Base,Jusqu'à la Base Boréa +TRAVELED_DISTANCE,Traveled Distance,Distance parcourue BOREA_BASE_DESC_TEXT,Base where demeter is located,La base où se trouve Demeter ARID,Arid,Aride ARID_MODIFIER_DESC_TEXT,Reduce base [b]Fertile Zone[/b] in this region,Réduit la [b]Zone Fertile[/b] de base de la région @@ -225,4 +257,55 @@ HARSH_MODIFIER_DESC_TEXT,Increases the [b]Plant Points[/b] needed,Augmente le no HUMID,Humid,Humide HUMID_MODIFIER_DESC_TEXT,Reduce the number of [b]Recharge[/b],Réduit le nombre de [b]Recharge[/b] POOR,Poor,Pauvre -POOR_MODIFIER_DESC_TEXT,Reduce the number of [b]Talion Veins[/b],Réduit le nombre de [b]Veine de Talion[/b] \ No newline at end of file +POOR_MODIFIER_DESC_TEXT,Reduce the number of [b]Talion Veins[/b],Réduit le nombre de [b]Veine de Talion[/b] +ROCKY,Rocky,Rocheux +ROCKY_MODIFIER_DESC_TEXT,There is no [b]Talion Veins[/b] in the area,Aucune [b]Veine de Talion[/b] dans la zone +TOXIC,Toxic,Toxique +TOXIC_MODIFIER_DESC_TEXT,Reduce all plant lifetime by 1,Réduit la durée de vie de toutes les plantes de 1 +SANDY,Sandy,Sableux +SANDY_MODIFIER_DESC_TEXT,Reduce plants influence radius,Réduit le rayon d'influence des plantes +RADIOACTIVE,Radioactive,Radioactif +RADIOACTIVE_MODIFIER_DESC_TEXT,Reduce the plant's base score by 1,Réduit le score de base des plantes de 1 +CONTAMINATED,Contaminated,Contaminée +CONTAMINATED_MODIFIER_DESC_TEXT,Decrease all plants seeds production and increase the possible seed loss,Diminue la production de graine et augmente la perte possible de graine pour toutes les plantes +STORM,Storm,Tempête +STORM_MODIFIER_DESC_TEXT,Increases a lot the [b]Plant Points[/b] needed,Augmente beaucoup le nombre de [b]Points de Plantes[/b] nécessaires +VENDING_MACHINES,Vending Machines,Distributeurs +VENDING_MACHINES_MODIFIER_DESC_TEXT,A room with old vending machine is in the area,Une pièce avec de vieux distributeurs se trouve dans la zone +RESONNANCE,Resonnance,Résonnance +RESONNANCE_MODIFIER_DESC_TEXT,Mutation level from [b]Talion Veins[/b] seeds is increased,Le niveau de mutation des graines issues de [b]Veine de Talion[/b] est augmenté +INSTABLE,Instable,Instable +INSTABLE_MODIFIER_DESC_TEXT,Increase the seed mutation probability,Augmente les chance de mutation des graines +PASS_THE_MYSTERIOUS_DOOR,Go through the mysterious door,Franchissez la porte mystérieuse +NEXT_STOP,Next Stop,Prochain arrêt +ORBIT,Orbit,Orbite +RECHARGE_NUMBER,Recharge Number,Nombre de recharge +ORCHID_ENERGY,Orchid's energy,Énergie d'Orchid +NEW_TOOL,New tool,Nouvel Outil +PILE,Pile,Pile, +PILE_DESC_TEXT,Give an extra energy cell,Donne une cellule d'énergie supplémentaire +SEED_CASE,Seed Case,Emplacement de graine +SEED_CASE_DESC_TEXT,Give an extra case to store and transport seeds between regions, Donne un emplacement supplémentaire pour garder et transporter une graine entre les régions +STABILISATOR,Stabilisator,Stabilisateur +STABILISATOR_DESC_TEXT,Increase all plants lifetime by 1,Augmente la durée de vie de toutes les plantes de 1 +TALION_OVERLOADER,Talion Overloader,Surchargeur de Talion +TALION_OVERLOADER_DESC_TEXT,Increase maximum mutation number on one plant by 1,Augmente le nombre de mutations possibles sur une plante de 1 +TALION_RELAY,Talion Relay,Relai de Talion +TALION_RELAY_DESC_TEXT,Augmente la probabilité des mutations +TALION_SOIL,Talion Soil,Terreau de Talion +TALION_SOIL_DESC_TEXT,Increase plant influence radius,Augmente le rayon d'influence des plantes +PLANTS_CAN_HAVE_UP_TO_X_MUTATION,Plants can have up to [b]%d[/b] mutations,Les plantes peuvent avoir jusqu'à [b]%d[/b] mutations +PLANTS_MUTATION_CHANCE_IS_X_PERCENT,Plant mutation chance is [b]{mutation_chance}%[/b],Les chances de mutation d'une plante sont de [b]{mutation_chance}%[/b] +ARTEFACTS_VENDING_MACHINE,Artefacts Vending Machine,Distributeur d'Artefacts +ARTEFACT,Artefact,Artefact +CHOOSE_AN_ITEM,Choose an item,Choisissez un objet +PAY_THE_PRICE_FOR,Pay the price for {item_name},Payez le prix pour {item_name} +GET_YOUR_ITEM,Get your item,Récupérez votre objet +PLANT_DEFAULT_ATTRIBUTES,Plant Default Attributes,Attributs des plantes par défaut +DISCOVERED_MUTATIONS,Discovered Mutations,Mutations découvertes +PLANT_SEEDS_TO_DISCOVER_MUTATIONS,Plant seeds to discover mutations,Plantez des graines pour découvrir des mutations +INSPECT,Inspect,Inspecter +VENDING_MACHINE,Vending Machine,Distributeur +VENDING_MACHINE_ROOM,Vending Machine Room,Local de Distributeur +VENDING_MACHINES_DOOR_DESC_TEXT,"An ancient room filled with old vending machines","Une pièce ancienne remplie de vieux distributeurs" +THANK_YOU_FOR_YOUR_PURCHASE,Thank you for your purchase,Merci pour votre achat \ No newline at end of file