Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7e6163ed68 | |||
| 55d6222698 | |||
| d7ad2ba072 | |||
| 9c50a63dc3 | |||
| 746ac58329 | |||
| a9cb20c8bc | |||
| 32249fde86 | |||
| 27e137bc02 | |||
| 01daddee3b | |||
| ba512508f8 |
Binary file not shown.
|
After Width: | Height: | Size: 4.8 KiB |
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cvu5dybw31uxn"
|
||||
path="res://.godot/imported/Circle.png-1776eabbad99f201f3fa20f90655dedf.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/ui/UI/Circle.png"
|
||||
dest_files=["res://.godot/imported/Circle.png-1776eabbad99f201f3fa20f90655dedf.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 39 KiB |
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://70twb0i3e2wo"
|
||||
path="res://.godot/imported/journal_note.png-456d095624ebf40e3c23543b3d0f829a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/ui/UI/journal_note.png"
|
||||
dest_files=["res://.godot/imported/journal_note.png-456d095624ebf40e3c23543b3d0f829a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 395 KiB |
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://d0anh3hdk0clc"
|
||||
path="res://.godot/imported/journal_standard.png-09a8c39fc0e5420f9430aff7f945ae55.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/ui/UI/journal_standard.png"
|
||||
dest_files=["res://.godot/imported/journal_standard.png-09a8c39fc0e5420f9430aff7f945ae55.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 33 KiB |
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b2q3xgw8xj880"
|
||||
path="res://.godot/imported/quest_note.png-857ff56cb8cdd8e4401bb6320261518e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/ui/UI/quest_note.png"
|
||||
dest_files=["res://.godot/imported/quest_note.png-857ff56cb8cdd8e4401bb6320261518e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
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/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
|
||||
@@ -0,0 +1,20 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cqcs80xsgygeb"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://2q1n6g2kj5er" path="res://prefabs/UI/Quest/QuestLog.tscn" id="1_7u5et"]
|
||||
|
||||
[node name="Book" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="QuestLog" parent="." instance=ExtResource("1_7u5et")]
|
||||
layout_mode = 1
|
||||
offset_left = 247.0
|
||||
offset_top = 72.0
|
||||
offset_right = -205.0
|
||||
offset_bottom = -76.0
|
||||
grow_horizontal = 1
|
||||
grow_vertical = 1
|
||||
@@ -1,22 +1,20 @@
|
||||
[gd_scene load_steps=9 format=3 uid="uid://cgjc4wurbgimy"]
|
||||
[gd_scene load_steps=10 format=3 uid="uid://cgjc4wurbgimy"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://hg7jay2kt441" path="res://scripts/CSharp/Common/Inventory/InventoryUi.cs" id="1_6wusm"]
|
||||
[ext_resource type="Texture2D" uid="uid://3ln8aleyxgp1" path="res://art/ui/UI/UI_bag_export_01.png" id="3_vvo7l"]
|
||||
[ext_resource type="Texture2D" uid="uid://u0dku75l17re" path="res://art/ui/UI/UI_bag_export_highlight_01.png" id="5_df8i8"]
|
||||
[ext_resource type="PackedScene" uid="uid://c0kmdjeqkqrwv" path="res://prefabs/UI/Inventory/Slot.tscn" id="5_u7kje"]
|
||||
[ext_resource type="Script" uid="uid://cvkw4qd2hxksi" path="res://scripts/GdScript/dialogic_toggle.gd" id="6_n5apg"]
|
||||
[ext_resource type="Script" uid="uid://7wwid23tc8as" path="res://scripts/CSharp/Common/Quest/QuestMessagePopup.cs" id="6_n5apg"]
|
||||
[ext_resource type="Texture2D" uid="uid://bag1xalfh731d" path="res://art/ui/UI/UI_bag_export_highlight_02.png" id="6_u7kje"]
|
||||
[ext_resource type="Texture2D" uid="uid://cxptule8n38ph" path="res://art/ui/UI/UI_bag_export_highlight_03.png" id="7_l3npx"]
|
||||
[ext_resource type="PackedScene" uid="uid://2q1n6g2kj5er" path="res://prefabs/UI/Quest/QuestLog.tscn" id="7_vvo7l"]
|
||||
[ext_resource type="Texture2D" uid="uid://qwia360i1ir1" path="res://art/ui/UI/inventory_active.png" id="8_df8i8"]
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer"]
|
||||
layer = 90
|
||||
follow_viewport_enabled = true
|
||||
|
||||
[node name="DialogicToggle" type="Node2D" parent="." node_paths=PackedStringArray("itemToToggle")]
|
||||
[node name="DialogicToggle" type="Node2D" parent="."]
|
||||
scale = Vector2(0.7, 0.7)
|
||||
script = ExtResource("6_n5apg")
|
||||
itemToToggle = NodePath("../Inventory")
|
||||
|
||||
[node name="Inventory" type="Control" parent="." node_paths=PackedStringArray("_slotsParent", "_slotsMover", "_headerSlots", "_slotSelect")]
|
||||
layout_mode = 3
|
||||
@@ -27,16 +25,14 @@ anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
scale = Vector2(0.7, 0.7)
|
||||
size_flags_vertical = 8
|
||||
script = ExtResource("1_6wusm")
|
||||
_slotsParent = NodePath("SlotsContainer/SlotsMover/Slots")
|
||||
_slotsMover = NodePath("SlotsContainer/SlotsMover")
|
||||
_headerSlots = [NodePath("SlotsContainer/SlotsMover/Slots/Slot"), NodePath("SlotsContainer/SlotsMover/Slots/Slot2"), NodePath("SlotsContainer/SlotsMover/Slots/Slot3"), NodePath("SlotsContainer/SlotsMover/Slots/Slot4"), NodePath("SlotsContainer/SlotsMover/Slots/Slot5"), NodePath("SlotsContainer/SlotsMover/Slots/Slot6"), NodePath("SlotsContainer/SlotsMover/Slots/Slot7"), NodePath("SlotsContainer/SlotsMover/Slots/Slot8"), NodePath("SlotsContainer/SlotsMover/Slots/Slot9")]
|
||||
_headerSlots = [NodePath("SlotsContainer/SlotsMover/Slots/Slot"), NodePath("SlotsContainer/SlotsMover/Slots/Slot2"), NodePath("SlotsContainer/SlotsMover/Slots/Slot3"), NodePath("SlotsContainer/SlotsMover/Slots/Slot4"), NodePath("SlotsContainer/SlotsMover/Slots/Slot5"), NodePath("SlotsContainer/SlotsMover/Slots/Slot6"), NodePath("SlotsContainer/SlotsMover/Slots/Slot7"), NodePath("SlotsContainer/SlotsMover/Slots/Slot8")]
|
||||
_slotSelect = NodePath("SlotsContainer/SlotsMover/SlotSelectContainer/Selector")
|
||||
|
||||
[node name="SlotsContainer" type="Control" parent="Inventory"]
|
||||
custom_minimum_size = Vector2(500, 0)
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
@@ -46,7 +42,8 @@ anchor_bottom = 0.5
|
||||
offset_left = -250.0
|
||||
offset_right = 250.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
grow_vertical = 0
|
||||
scale = Vector2(0.7, 0.7)
|
||||
|
||||
[node name="SlotsMover" type="Control" parent="Inventory/SlotsContainer"]
|
||||
custom_minimum_size = Vector2(900, 610)
|
||||
@@ -450,3 +447,40 @@ offset_right = 100.0
|
||||
offset_bottom = 100.0
|
||||
texture = ExtResource("8_df8i8")
|
||||
expand_mode = 1
|
||||
|
||||
[node name="QuestLogRoot" parent="." instance=ExtResource("7_vvo7l")]
|
||||
|
||||
[node name="Control" type="Control" parent="."]
|
||||
layout_mode = 3
|
||||
anchors_preset = 2
|
||||
anchor_top = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="Control"]
|
||||
custom_minimum_size = Vector2(200, 200)
|
||||
layout_mode = 0
|
||||
offset_left = 150.0
|
||||
offset_top = -250.0
|
||||
offset_right = 350.0
|
||||
offset_bottom = -50.0
|
||||
color = Color(1, 1, 0.584314, 1)
|
||||
script = ExtResource("6_n5apg")
|
||||
_showPosition = Vector2(150, -250)
|
||||
_hidePosition = Vector2(150, 50)
|
||||
|
||||
[node name="Text" type="Label" parent="Control/ColorRect"]
|
||||
layout_mode = 1
|
||||
anchors_preset = -1
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 20.0
|
||||
offset_top = 20.0
|
||||
offset_right = -20.0
|
||||
offset_bottom = -20.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
text = "Switch to Unity"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://1iqqwh7d6xoh"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dwhee40ksubke" path="res://scripts/CSharp/Common/Quest/QuestListItemUi.cs" id="1_svwef"]
|
||||
[ext_resource type="Texture2D" uid="uid://cvu5dybw31uxn" path="res://art/ui/UI/Circle.png" id="2_qlq3v"]
|
||||
|
||||
[node name="QuestListItem" type="Control"]
|
||||
custom_minimum_size = Vector2(0, 40)
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_right = 300.0
|
||||
offset_bottom = 30.0
|
||||
script = ExtResource("1_svwef")
|
||||
|
||||
[node name="TitleButton" type="Button" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
flat = true
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="TitleButton"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="TitleButton/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/margin_left = 30
|
||||
theme_override_constants/margin_top = 0
|
||||
theme_override_constants/margin_right = 30
|
||||
theme_override_constants/margin_bottom = 0
|
||||
|
||||
[node name="DotText" type="Label" parent="TitleButton/HBoxContainer/MarginContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 1
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 17
|
||||
text = "•"
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="TitleText" type="Label" parent="TitleButton/HBoxContainer"]
|
||||
custom_minimum_size = Vector2(200, 0)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 1
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 17
|
||||
text = "Switch to Unity"
|
||||
vertical_alignment = 1
|
||||
autowrap_mode = 2
|
||||
|
||||
[node name="Circled" type="TextureRect" parent="TitleButton"]
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
texture = ExtResource("2_qlq3v")
|
||||
|
||||
[connection signal="pressed" from="TitleButton" to="." method="ClickedTitleButton"]
|
||||
@@ -0,0 +1,162 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://2q1n6g2kj5er"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c7ilqe2fmjyvx" path="res://scripts/CSharp/Common/Quest/QuestListUi.cs" id="1_17sli"]
|
||||
[ext_resource type="Script" uid="uid://o1qpo0wdqlw3" path="res://scripts/CSharp/Common/Quest/QuestLog.cs" id="1_vc33n"]
|
||||
[ext_resource type="PackedScene" uid="uid://1iqqwh7d6xoh" path="res://prefabs/UI/Quest/QuestListItem.tscn" id="2_fswdj"]
|
||||
[ext_resource type="Texture2D" uid="uid://d0anh3hdk0clc" path="res://art/ui/UI/journal_standard.png" id="2_wdbu4"]
|
||||
[ext_resource type="Script" uid="uid://b8mywolvj2yq7" path="res://scripts/CSharp/Common/Quest/QuestDescriptionUi.cs" id="4_1vy15"]
|
||||
|
||||
[node name="QuestLogRoot" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
|
||||
[node name="MovingLog" type="Control" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 460.0
|
||||
offset_top = -615.0
|
||||
offset_right = 1460.0
|
||||
offset_bottom = -54.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
size_flags_horizontal = 4
|
||||
size_flags_vertical = 4
|
||||
mouse_filter = 2
|
||||
script = ExtResource("1_vc33n")
|
||||
_closedPos = Vector2(460, -615)
|
||||
_openedPos = Vector2(460, 240)
|
||||
|
||||
[node name="Background" type="Control" parent="MovingLog"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="MovingLog/Background"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
texture = ExtResource("2_wdbu4")
|
||||
expand_mode = 2
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="MovingLog"]
|
||||
layout_mode = 2
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_constants/margin_left = 160
|
||||
theme_override_constants/margin_top = 60
|
||||
theme_override_constants/margin_right = 160
|
||||
theme_override_constants/margin_bottom = 60
|
||||
|
||||
[node name="ReferenceRect" type="ReferenceRect" parent="MovingLog/MarginContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="QuestLog" type="HBoxContainer" parent="MovingLog/MarginContainer/ReferenceRect"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="LeftPage" type="Control" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/LeftPage"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_constants/margin_left = 20
|
||||
theme_override_constants/margin_top = 15
|
||||
theme_override_constants/margin_right = 20
|
||||
theme_override_constants/margin_bottom = 15
|
||||
|
||||
[node name="ReferenceRect" type="ReferenceRect" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/LeftPage/MarginContainer"]
|
||||
layout_mode = 2
|
||||
border_color = Color(1.49205e-06, 0.62774, 0.489941, 1)
|
||||
|
||||
[node name="VBoxContainer2" type="VBoxContainer" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/LeftPage/MarginContainer/ReferenceRect"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="Label" type="Label" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/LeftPage/MarginContainer/ReferenceRect/VBoxContainer2"]
|
||||
custom_minimum_size = Vector2(0, 60.975)
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 31
|
||||
text = "Quests"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/LeftPage/MarginContainer/ReferenceRect/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
script = ExtResource("1_17sli")
|
||||
_questListItemPrefab = ExtResource("2_fswdj")
|
||||
|
||||
[node name="RightPage" type="Control" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/RightPage"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_constants/margin_left = 20
|
||||
theme_override_constants/margin_top = 15
|
||||
theme_override_constants/margin_right = 20
|
||||
theme_override_constants/margin_bottom = 15
|
||||
|
||||
[node name="ReferenceRect" type="ReferenceRect" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/RightPage/MarginContainer"]
|
||||
layout_mode = 2
|
||||
border_color = Color(1.49205e-06, 0.62774, 0.489941, 1)
|
||||
|
||||
[node name="VBoxContainer2" type="VBoxContainer" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/RightPage/MarginContainer/ReferenceRect"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="Label" type="Label" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/RightPage/MarginContainer/ReferenceRect/VBoxContainer2"]
|
||||
custom_minimum_size = Vector2(0, 60.975)
|
||||
layout_mode = 2
|
||||
theme_override_colors/font_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/font_size = 31
|
||||
text = "Details"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Description" type="RichTextLabel" parent="MovingLog/MarginContainer/ReferenceRect/QuestLog/RightPage/MarginContainer/ReferenceRect/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
bbcode_enabled = true
|
||||
text = "[center][font_size=24]Find 10 Mushroms[/font_size][/center]
|
||||
|
||||
Collect 10 mushroms in the forrest by the bushes down the road with the singn that says \"to the mushroms\" and has a small mushrom logo on it. Its realy hard to miss."
|
||||
script = ExtResource("4_1vy15")
|
||||
|
||||
[connection signal="DetailQuestChanged" from="MovingLog" to="MovingLog/MarginContainer/ReferenceRect/QuestLog/RightPage/MarginContainer/ReferenceRect/VBoxContainer2/Description" method="UpdateText"]
|
||||
+172
-75
@@ -4,119 +4,216 @@
|
||||
|
||||
[node name="Duck" type="Node2D"]
|
||||
|
||||
[node name="body" type="Sprite2D" parent="."]
|
||||
position = Vector2(14, 222)
|
||||
[node name="body" type="Node2D" parent="."]
|
||||
|
||||
[node name="torso" type="Sprite2D" parent="body"]
|
||||
position = Vector2(11, 308)
|
||||
scale = Vector2(1.07526, 1.01724)
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(0, -100)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(30, 168, 125, 326)
|
||||
|
||||
[node name="head" type="Sprite2D" parent="body"]
|
||||
position = Vector2(58, -166)
|
||||
position = Vector2(39, 56)
|
||||
rotation = 0.0272577
|
||||
scale = Vector2(1.07521, 1.01729)
|
||||
skew = 0.00319612
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(40, -10)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(45, 24, 87, 82)
|
||||
|
||||
[node name="beak upper" type="Sprite2D" parent="body/head"]
|
||||
z_index = 1
|
||||
y_sort_enabled = true
|
||||
position = Vector2(28, 16)
|
||||
scale = Vector2(0.585, 0.5)
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(50, 0)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(292, 37, 152, 98)
|
||||
|
||||
[node name="beak lower" type="Sprite2D" parent="body/head"]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(24, 34)
|
||||
rotation = 0.0428005
|
||||
scale = Vector2(0.585, 0.5)
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(50, 0)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(295, 170, 145, 39)
|
||||
|
||||
[node name="wing" type="Sprite2D" parent="body"]
|
||||
position = Vector2(-62, 103)
|
||||
rotation = -0.41677
|
||||
scale = Vector2(0.889059, 0.988488)
|
||||
position = Vector2(-34, 263)
|
||||
rotation = -0.384652
|
||||
scale = Vector2(0.94817, 1.01462)
|
||||
skew = -0.0401236
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(-50, 50)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(196, 231, 180, 164)
|
||||
|
||||
[node name="underbelly" type="Sprite2D" parent="body"]
|
||||
position = Vector2(-14.8802, 125.831)
|
||||
rotation = -2.93148
|
||||
scale = Vector2(0.710887, 1.04894)
|
||||
position = Vector2(-11, 340)
|
||||
rotation = -2.94251
|
||||
scale = Vector2(0.762641, 1.06974)
|
||||
skew = 0.0226374
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(196, 231, 180, 164)
|
||||
|
||||
[node name="leg left" type="Sprite2D" parent="body"]
|
||||
position = Vector2(30, 95)
|
||||
rotation = 2.58706
|
||||
scale = Vector2(0.679, 0.679)
|
||||
position = Vector2(45, 323)
|
||||
rotation = 2.61158
|
||||
scale = Vector2(0.719395, 0.70185)
|
||||
skew = -0.0496454
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(196, 231, 177, 161)
|
||||
|
||||
[node name="left thigh" type="Sprite2D" parent="body/leg left"]
|
||||
position = Vector2(83.7622, -71.8698)
|
||||
rotation = 0.610927
|
||||
scale = Vector2(0.886555, 0.832726)
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(368, 263, 81, 89)
|
||||
|
||||
[node name="left shin" type="Sprite2D" parent="body/leg left/left thigh"]
|
||||
position = Vector2(1.60523, -73.2123)
|
||||
rotation = -0.515749
|
||||
scale = Vector2(1.1036, 0.96548)
|
||||
skew = 0.0519596
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(360, 361, 68, 126)
|
||||
|
||||
[node name="left foot" type="Sprite2D" parent="body/leg left/left thigh/left shin"]
|
||||
position = Vector2(-9.87654, -96.2852)
|
||||
rotation = -2.49519
|
||||
scale = Vector2(1.05636, 0.957748)
|
||||
skew = -0.152411
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(246, 393, 111, 111)
|
||||
|
||||
[node name="leg right" type="Sprite2D" parent="body"]
|
||||
position = Vector2(-33, 108)
|
||||
rotation = 2.58706
|
||||
scale = Vector2(0.67, 0.62)
|
||||
position = Vector2(-24, 364)
|
||||
scale = Vector2(1.07526, 1.01724)
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(196, 231, 177, 161)
|
||||
|
||||
[node name="right thigh" type="Sprite2D" parent="body/leg right"]
|
||||
position = Vector2(79.9638, -66.0038)
|
||||
rotation = 1.02507
|
||||
scale = Vector2(0.886555, 0.832726)
|
||||
[node name="left thigh" type="Sprite2D" parent="body"]
|
||||
position = Vector2(20.6384, 395.665)
|
||||
rotation = -3.13988
|
||||
scale = Vector2(0.647275, 0.575169)
|
||||
skew = 0.000200629
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(368, 263, 81, 89)
|
||||
|
||||
[node name="right shin" type="Sprite2D" parent="body/leg right/right thigh"]
|
||||
position = Vector2(-30.7045, -51.617)
|
||||
rotation = -1.27892
|
||||
scale = Vector2(1.1036, 0.96548)
|
||||
skew = 0.0519596
|
||||
[node name="beak upper" type="Sprite2D" parent="body"]
|
||||
z_index = 1
|
||||
y_sort_enabled = true
|
||||
position = Vector2(112.206, 69.1074)
|
||||
rotation = 0.0776945
|
||||
scale = Vector2(0.628805, 0.508821)
|
||||
skew = 0.0090723
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(50, 0)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(292, 37, 152, 98)
|
||||
|
||||
[node name="beak lower" type="Sprite2D" parent="body"]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(108, 84)
|
||||
rotation = 0.118232
|
||||
scale = Vector2(0.628514, 0.509083)
|
||||
skew = 0.0137196
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(50, 0)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(295, 170, 145, 39)
|
||||
|
||||
[node name="right thigh" type="Sprite2D" parent="body"]
|
||||
position = Vector2(61.9819, 296.858)
|
||||
rotation = 1.00015
|
||||
scale = Vector2(0.915981, 0.882641)
|
||||
skew = 0.0492033
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(368, 263, 81, 89)
|
||||
|
||||
[node name="left shin" type="Sprite2D" parent="body"]
|
||||
position = Vector2(12, 417)
|
||||
rotation = 2.67668
|
||||
scale = Vector2(0.695871, 0.569878)
|
||||
skew = -0.045905
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(10, -50)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(360, 361, 68, 126)
|
||||
|
||||
[node name="right foot" type="Sprite2D" parent="body"]
|
||||
position = Vector2(-54, 466)
|
||||
rotation = 0.872523
|
||||
scale = Vector2(1.04006, 1.0532)
|
||||
skew = 0.0540016
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(40, 40)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(246, 393, 111, 111)
|
||||
|
||||
[node name="right shin" type="Sprite2D" parent="body"]
|
||||
position = Vector2(-24, 364)
|
||||
scale = Vector2(1.07526, 1.01724)
|
||||
texture = ExtResource("1_cgxhx")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(360, 361, 68, 126)
|
||||
|
||||
[node name="right foot" type="Sprite2D" parent="body/leg right/right thigh/right shin"]
|
||||
position = Vector2(52.0876, -74.1994)
|
||||
rotation = 0.121931
|
||||
scale = Vector2(1.05636, -0.891307)
|
||||
skew = -0.152411
|
||||
[node name="left foot" type="Sprite2D" parent="body"]
|
||||
position = Vector2(32, 466)
|
||||
rotation = 0.0756956
|
||||
scale = Vector2(0.703793, 0.562891)
|
||||
skew = 0.00884056
|
||||
texture = ExtResource("1_cgxhx")
|
||||
offset = Vector2(40, 40)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(246, 393, 111, 111)
|
||||
|
||||
[node name="bones" type="Node2D" parent="."]
|
||||
position = Vector2(76.3651, 53.1382)
|
||||
scale = Vector2(1.07526, 1.01724)
|
||||
|
||||
[node name="Skeleton2D" type="Skeleton2D" parent="bones"]
|
||||
|
||||
[node name="hip" type="Bone2D" parent="bones/Skeleton2D"]
|
||||
position = Vector2(-71.9501, 273.153)
|
||||
rest = Transform2D(1, 0, 0, 1, -71.9501, 273.153)
|
||||
|
||||
[node name="LegR" type="Bone2D" parent="bones/Skeleton2D/hip"]
|
||||
position = Vector2(-21.3902, 32.4407)
|
||||
rest = Transform2D(1, 0, 0, 1, -21.3902, 32.4407)
|
||||
|
||||
[node name="ShinR" type="Bone2D" parent="bones/Skeleton2D/hip/LegR"]
|
||||
position = Vector2(-33.4803, 51.1187)
|
||||
rest = Transform2D(1, 0, 0, 1, -33.4803, 51.1187)
|
||||
|
||||
[node name="FootR" type="Bone2D" parent="bones/Skeleton2D/hip/LegR/ShinR"]
|
||||
position = Vector2(5.58005, 49.1526)
|
||||
rotation = 0.899694
|
||||
rest = Transform2D(1.96831, 2.30362, -2.30362, 1.96831, 5.58005, 49.1526)
|
||||
|
||||
[node name="RemoteTransform2D" type="RemoteTransform2D" parent="bones/Skeleton2D/hip/LegR/ShinR/FootR"]
|
||||
remote_path = NodePath("../../../../../../../body/right foot")
|
||||
|
||||
[node name="RemoteTransform2D" type="RemoteTransform2D" parent="bones/Skeleton2D/hip/LegR/ShinR"]
|
||||
position = Vector2(33.4803, -51.1187)
|
||||
remote_path = NodePath("../../../../../../body/right shin")
|
||||
|
||||
[node name="RemoteTransform2D" type="RemoteTransform2D" parent="bones/Skeleton2D/hip/LegR"]
|
||||
remote_path = NodePath("../../../../../body/leg right")
|
||||
|
||||
[node name="LegL" type="Bone2D" parent="bones/Skeleton2D/hip"]
|
||||
position = Vector2(34.4103, 14.7458)
|
||||
rotation = -1.17489
|
||||
scale = Vector2(1, 1)
|
||||
rest = Transform2D(0.385641, -0.922649, 0.922649, 0.385641, 34.4103, 14.7458)
|
||||
|
||||
[node name="ShinR" type="Bone2D" parent="bones/Skeleton2D/hip/LegL"]
|
||||
position = Vector2(-71.1914, 5.56455)
|
||||
rest = Transform2D(1, 0, 0, 1, -71.1914, 5.56455)
|
||||
|
||||
[node name="FootR" type="Bone2D" parent="bones/Skeleton2D/hip/LegL/ShinR"]
|
||||
position = Vector2(-36.1531, 28.2146)
|
||||
rotation = 0.126687
|
||||
scale = Vector2(3.03, 3.03)
|
||||
rest = Transform2D(3.00572, 0.382835, -0.382835, 3.00572, -36.1531, 28.2146)
|
||||
|
||||
[node name="WingR" type="Bone2D" parent="bones/Skeleton2D/hip"]
|
||||
position = Vector2(-25.1102, -67.8306)
|
||||
rotation = 1.93641
|
||||
scale = Vector2(8.485, 8.485)
|
||||
rest = Transform2D(-3.03359, 7.92417, -7.92417, -3.03359, -25.1102, -67.8306)
|
||||
|
||||
[node name="WingL" type="Bone2D" parent="bones/Skeleton2D/hip"]
|
||||
position = Vector2(51.1504, -71.7628)
|
||||
rotation = 0.172541
|
||||
scale = Vector2(8.485, 8.485)
|
||||
rest = Transform2D(8.35901, 1.45676, -1.45676, 8.35901, 51.1504, -71.7628)
|
||||
|
||||
[node name="Neck" type="Bone2D" parent="bones/Skeleton2D/hip"]
|
||||
position = Vector2(29.7603, -88.4747)
|
||||
rest = Transform2D(1, 0, 0, 1, 29.7603, -88.4747)
|
||||
|
||||
[node name="Head" type="Bone2D" parent="bones/Skeleton2D/hip/Neck"]
|
||||
position = Vector2(18.6001, -166.136)
|
||||
rest = Transform2D(1, 0, 0, 1, 18.6001, -166.136)
|
||||
|
||||
[node name="BeakUpper" type="Bone2D" parent="bones/Skeleton2D/hip/Neck/Head"]
|
||||
position = Vector2(49.2904, -6.88138)
|
||||
rotation = 0.445425
|
||||
scale = Vector2(3.39, 3.39)
|
||||
rest = Transform2D(3.05923, 1.46055, -1.46055, 3.05923, 49.2904, -6.88138)
|
||||
|
||||
[node name="BeakLower" type="Bone2D" parent="bones/Skeleton2D/hip/Neck/Head"]
|
||||
position = Vector2(45.5704, 16.7119)
|
||||
rotation = 0.170714
|
||||
scale = Vector2(3.085, 3.085)
|
||||
rest = Transform2D(3.04016, 0.5241, -0.5241, 3.04016, 45.5704, 16.7119)
|
||||
|
||||
@@ -27,6 +27,7 @@ buses/default_bus_layout="uid://b6dwkmkyb0axk"
|
||||
Dialogic="*res://addons/dialogic/Core/DialogicGameHandler.gd"
|
||||
InventoryManager="*res://scripts/CSharp/Common/Inventory/InventoryManager.cs"
|
||||
Signal_Debugger="*res://addons/SignalVisualizer/Debugger/SignalDebugger.gd"
|
||||
QuestManager="*res://scripts/CSharp/Common/Quest/QuestManager.cs"
|
||||
|
||||
[dialogic]
|
||||
|
||||
@@ -86,7 +87,10 @@ glossary/glossary_files=["res://dialog/farming_equipment_glossary.tres"]
|
||||
|
||||
[display]
|
||||
|
||||
window/size/viewport_width=2000
|
||||
window/size/viewport_height=1000
|
||||
window/size/always_on_top=true
|
||||
window/stretch/mode="viewport"
|
||||
window/stretch/aspect="keep_height"
|
||||
|
||||
[dotnet]
|
||||
@@ -193,6 +197,11 @@ ui_inventory_close={
|
||||
"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":4194305,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||
]
|
||||
}
|
||||
ui_inventory_journal_open_close={
|
||||
"deadzone": 0.5,
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":74,"key_label":0,"unicode":106,"location":0,"echo":false,"script":null)
|
||||
]
|
||||
}
|
||||
|
||||
[internationalization]
|
||||
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
[gd_resource type="Resource" script_class="QuestResource" load_steps=2 format=3 uid="uid://0aruj4lm74n6"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://vji5lp4qc8pp" path="res://scripts/CSharp/Common/Quest/QuestResource.cs" id="1_kisdg"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_kisdg")
|
||||
id = "test_01"
|
||||
title = "First Testing Quest"
|
||||
description = "Do the first thing you do to complete this quest"
|
||||
metadata/_custom_type_script = "uid://vji5lp4qc8pp"
|
||||
@@ -0,0 +1,10 @@
|
||||
[gd_resource type="Resource" script_class="QuestResource" load_steps=2 format=3 uid="uid://be1dmc6d2mxl5"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://vji5lp4qc8pp" path="res://scripts/CSharp/Common/Quest/QuestResource.cs" id="1_t87fj"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_t87fj")
|
||||
id = "test_02"
|
||||
title = "Second Testing Quest"
|
||||
description = "Second my ass. Do what ever. I don't care"
|
||||
metadata/_custom_type_script = "uid://vji5lp4qc8pp"
|
||||
@@ -0,0 +1,10 @@
|
||||
[gd_resource type="Resource" script_class="QuestResource" load_steps=2 format=3 uid="uid://tmmnsg1bge2"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://vji5lp4qc8pp" path="res://scripts/CSharp/Common/Quest/QuestResource.cs" id="1_y0umc"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("1_y0umc")
|
||||
id = "test_03"
|
||||
title = "Third Testing Quest"
|
||||
description = "I'd like to apologize for the second quest, he has some bad manners"
|
||||
metadata/_custom_type_script = "uid://vji5lp4qc8pp"
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://c25udixd5m6l0" path="res://prefabs/characters/Player2D.tscn" id="1_7wfwe"]
|
||||
[ext_resource type="Texture2D" uid="uid://8sr11ex30n0m" path="res://art/mockups/Kenney_Backgrounds/Samples/uncolored_hills.png" id="2_7b2ri"]
|
||||
[ext_resource type="PackedScene" uid="uid://bm21nqepnwaik" path="res://scenes/IndoorTest2.tscn" id="2_taxvr"]
|
||||
[ext_resource type="PackedScene" uid="uid://bm21nqepnwaik" path="res://scenes/Babushka_scene_indoor_common_room.tscn" id="2_taxvr"]
|
||||
[ext_resource type="Script" uid="uid://bqomwxclsbhd3" path="res://scripts/CSharp/Common/Camera/CameraController.cs" id="3_p4qqi"]
|
||||
[ext_resource type="Texture2D" uid="uid://be1nofeo7an0" path="res://art/mockups/Kenney_Backgrounds/PNG/cloud2.png" id="3_r34wi"]
|
||||
[ext_resource type="Texture2D" uid="uid://o6vnf7n7qp8o" path="res://art/mockups/Kenney_Backgrounds/PNG/cloud6.png" id="4_xh22q"]
|
||||
@@ -2094,7 +2094,6 @@ position = Vector2(1.75458, 76)
|
||||
shape = SubResource("RectangleShape2D_2vojv")
|
||||
|
||||
[node name="CanvasLayer" parent="." instance=ExtResource("32_2nee2")]
|
||||
follow_viewport_enabled = false
|
||||
|
||||
[node name="Inventory" parent="CanvasLayer" index="1"]
|
||||
anchors_preset = 7
|
||||
|
||||
@@ -1,22 +1,23 @@
|
||||
[gd_scene load_steps=23 format=3 uid="uid://bm21nqepnwaik"]
|
||||
[gd_scene load_steps=24 format=3 uid="uid://bm21nqepnwaik"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cssdu8viimwm6" path="res://scripts/CSharp/Common/SceneTransition.cs" id="1_aivb2"]
|
||||
[ext_resource type="PackedScene" uid="uid://c25udixd5m6l0" path="res://prefabs/characters/Player2D.tscn" id="2_a2ood"]
|
||||
[ext_resource type="Texture2D" uid="uid://waqmjrxduxfq" path="res://art/indoor/room export/Room_01_walls.png" id="3_a2ood"]
|
||||
[ext_resource type="Texture2D" uid="uid://cnhsxxps2cw5" path="res://art/indoor/room export/Room_01_table.png" id="3_je1cl"]
|
||||
[ext_resource type="Texture2D" uid="uid://blg50is4kuh2f" path="res://art/indoor/room export/Room_01_chair.png" id="4_hjjhl"]
|
||||
[ext_resource type="Texture2D" uid="uid://bqwhptcgg5ons" path="res://art/indoor/room export/Room_01_dorr_R.png" id="5_8o6or"]
|
||||
[ext_resource type="Texture2D" uid="uid://dhvi5404cqioa" path="res://art/indoor/room export/Room_01_window.png" id="6_j5d18"]
|
||||
[ext_resource type="Texture2D" uid="uid://404glx32r1w8" path="res://art/indoor/room export/Room_01_bench.png" id="7_ciwvv"]
|
||||
[ext_resource type="Texture2D" uid="uid://cop1vjvhwlsec" path="res://art/indoor/room export/Room_01_shelf.png" id="8_8o6or"]
|
||||
[ext_resource type="Texture2D" uid="uid://vyk63d0pgqm5" path="res://art/indoor/room export/Room_01_dioor L.png" id="8_wuntg"]
|
||||
[ext_resource type="Texture2D" uid="uid://b2rj7wkyu6ehy" path="res://art/indoor/room export/Room_01_pechka.png" id="9_aivb2"]
|
||||
[ext_resource type="Texture2D" uid="uid://bpi35nxbhput8" path="res://art/indoor/room export/Room_01_pechkaDoor.png" id="10_835kg"]
|
||||
[ext_resource type="Texture2D" uid="uid://tyypifpte0pb" path="res://art/indoor/room export/Room_01_chugun.png" id="11_atjbs"]
|
||||
[ext_resource type="Texture2D" uid="uid://x7trh4dgsvoe" path="res://art/indoor/room export/Room_01_assets.png" id="13_j5d18"]
|
||||
[ext_resource type="Texture2D" uid="uid://ckvytnpi8gcxq" path="res://art/eyes_atlas.png" id="14_j5d18"]
|
||||
[ext_resource type="PackedScene" uid="uid://dfvgp1my5rydh" path="res://prefabs/characters/Yeli.tscn" id="15_ciwvv"]
|
||||
[ext_resource type="Script" uid="uid://cvkw4qd2hxksi" path="res://scripts/GdScript/dialogic_toggle.gd" id="17_835kg"]
|
||||
[ext_resource type="Script" uid="uid://cssdu8viimwm6" path="res://scripts/CSharp/Common/SceneTransition.cs" id="1_3vr4f"]
|
||||
[ext_resource type="Texture2D" uid="uid://cnhsxxps2cw5" path="res://art/indoor/room export/Room_01_table.png" id="2_ubg3a"]
|
||||
[ext_resource type="Texture2D" uid="uid://blg50is4kuh2f" path="res://art/indoor/room export/Room_01_chair.png" id="3_gpagp"]
|
||||
[ext_resource type="Texture2D" uid="uid://x7trh4dgsvoe" path="res://art/indoor/room export/Room_01_assets.png" id="4_27bwy"]
|
||||
[ext_resource type="Texture2D" uid="uid://waqmjrxduxfq" path="res://art/indoor/room export/Room_01_walls.png" id="5_sndxu"]
|
||||
[ext_resource type="Texture2D" uid="uid://bqwhptcgg5ons" path="res://art/indoor/room export/Room_01_dorr_R.png" id="6_blyw3"]
|
||||
[ext_resource type="Texture2D" uid="uid://vyk63d0pgqm5" path="res://art/indoor/room export/Room_01_dioor L.png" id="7_yd2gv"]
|
||||
[ext_resource type="Texture2D" uid="uid://b2rj7wkyu6ehy" path="res://art/indoor/room export/Room_01_pechka.png" id="8_ofqcg"]
|
||||
[ext_resource type="Texture2D" uid="uid://dhvi5404cqioa" path="res://art/indoor/room export/Room_01_window.png" id="9_aoesu"]
|
||||
[ext_resource type="Texture2D" uid="uid://bpi35nxbhput8" path="res://art/indoor/room export/Room_01_pechkaDoor.png" id="10_xcryd"]
|
||||
[ext_resource type="Texture2D" uid="uid://tyypifpte0pb" path="res://art/indoor/room export/Room_01_chugun.png" id="11_as3nm"]
|
||||
[ext_resource type="Texture2D" uid="uid://cop1vjvhwlsec" path="res://art/indoor/room export/Room_01_shelf.png" id="12_bu2a1"]
|
||||
[ext_resource type="Texture2D" uid="uid://404glx32r1w8" path="res://art/indoor/room export/Room_01_bench.png" id="13_rongr"]
|
||||
[ext_resource type="Texture2D" uid="uid://ckvytnpi8gcxq" path="res://art/eyes_atlas.png" id="14_d7yky"]
|
||||
[ext_resource type="PackedScene" uid="uid://c25udixd5m6l0" path="res://prefabs/characters/Player2D.tscn" id="15_7a68a"]
|
||||
[ext_resource type="PackedScene" uid="uid://dfvgp1my5rydh" path="res://prefabs/characters/Yeli.tscn" id="16_dhsxs"]
|
||||
[ext_resource type="Script" uid="uid://cvkw4qd2hxksi" path="res://scripts/GdScript/dialogic_toggle.gd" id="17_k0k8c"]
|
||||
[ext_resource type="Script" uid="uid://bqomwxclsbhd3" path="res://scripts/CSharp/Common/Camera/CameraController.cs" id="18_dw4nn"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_a2ood"]
|
||||
resource_local_to_scene = true
|
||||
@@ -113,14 +114,14 @@ radius = 300.0
|
||||
|
||||
[node name="IndoorTest" type="Node2D"]
|
||||
y_sort_enabled = true
|
||||
script = ExtResource("1_aivb2")
|
||||
script = ExtResource("1_3vr4f")
|
||||
|
||||
[node name="Foreground" type="Node" parent="."]
|
||||
|
||||
[node name="Table" type="Sprite2D" parent="Foreground"]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-1888, 1112)
|
||||
texture = ExtResource("3_je1cl")
|
||||
texture = ExtResource("2_ubg3a")
|
||||
offset = Vector2(0, -200)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1012, 1743, 1470, 417)
|
||||
@@ -128,7 +129,7 @@ region_rect = Rect2(1012, 1743, 1470, 417)
|
||||
[node name="Chair" type="Sprite2D" parent="Foreground"]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-3032, 2096)
|
||||
texture = ExtResource("4_hjjhl")
|
||||
texture = ExtResource("3_gpagp")
|
||||
offset = Vector2(216, -1064)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1534, 1976, 379, 184)
|
||||
@@ -136,7 +137,7 @@ region_rect = Rect2(1534, 1976, 379, 184)
|
||||
[node name="Chair2" type="Sprite2D" parent="Foreground"]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-1064, 2064)
|
||||
texture = ExtResource("4_hjjhl")
|
||||
texture = ExtResource("3_gpagp")
|
||||
offset = Vector2(184, -1056)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1534, 1976, 379, 184)
|
||||
@@ -145,7 +146,7 @@ region_rect = Rect2(1534, 1976, 379, 184)
|
||||
z_index = 1
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-1904, 1192)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -800)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2093, 49, 421, 630)
|
||||
@@ -180,14 +181,14 @@ shape = SubResource("RectangleShape2D_a2ood")
|
||||
z_index = -100
|
||||
position = Vector2(4992, -487)
|
||||
scale = Vector2(2, 2)
|
||||
texture = ExtResource("3_a2ood")
|
||||
texture = ExtResource("5_sndxu")
|
||||
offset = Vector2(-2768, 264)
|
||||
|
||||
[node name="wall 1" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -100
|
||||
position = Vector2(-4368, 40)
|
||||
scale = Vector2(2, 2)
|
||||
texture = ExtResource("3_a2ood")
|
||||
texture = ExtResource("5_sndxu")
|
||||
flip_h = true
|
||||
region_rect = Rect2(111, 292, 3323, 2160)
|
||||
|
||||
@@ -200,56 +201,56 @@ shape = SubResource("RectangleShape2D_a2ood")
|
||||
[node name="Room01DorrR" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -50
|
||||
position = Vector2(936, -216)
|
||||
texture = ExtResource("5_8o6or")
|
||||
texture = ExtResource("6_blyw3")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(3161, 313, 679, 1050)
|
||||
|
||||
[node name="Room01DioorL" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -50
|
||||
position = Vector2(-3296, 48)
|
||||
texture = ExtResource("8_wuntg")
|
||||
texture = ExtResource("7_yd2gv")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(0, 0, 3840, 2160)
|
||||
|
||||
[node name="Room01Pechka" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -80
|
||||
position = Vector2(-224, -392)
|
||||
texture = ExtResource("9_aivb2")
|
||||
texture = ExtResource("8_ofqcg")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2236, 0, 724, 1392)
|
||||
|
||||
[node name="Room01Window2" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -50
|
||||
position = Vector2(-3192, -344)
|
||||
texture = ExtResource("6_j5d18")
|
||||
texture = ExtResource("9_aoesu")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1020, 338, 607, 757)
|
||||
|
||||
[node name="Room01Window3" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -50
|
||||
position = Vector2(-1792, -336)
|
||||
texture = ExtResource("6_j5d18")
|
||||
texture = ExtResource("9_aoesu")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1020, 338, 607, 757)
|
||||
|
||||
[node name="Room01PechkaDoor" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -50
|
||||
position = Vector2(-248, -96)
|
||||
texture = ExtResource("10_835kg")
|
||||
texture = ExtResource("10_xcryd")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2360, 864, 356, 251)
|
||||
|
||||
[node name="Room01Chugun" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -40
|
||||
position = Vector2(16, -560)
|
||||
texture = ExtResource("11_atjbs")
|
||||
texture = ExtResource("11_as3nm")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2469, 459, 247, 131)
|
||||
|
||||
[node name="Room01Shelf" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -50
|
||||
position = Vector2(-880, -416)
|
||||
texture = ExtResource("8_8o6or")
|
||||
texture = ExtResource("12_bu2a1")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1846, 471, 348, 490)
|
||||
|
||||
@@ -257,7 +258,7 @@ region_rect = Rect2(1846, 471, 348, 490)
|
||||
z_index = -10
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-3240, 224)
|
||||
texture = ExtResource("7_ciwvv")
|
||||
texture = ExtResource("13_rongr")
|
||||
flip_h = true
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1156, 1185, 940, 189)
|
||||
@@ -265,7 +266,7 @@ region_rect = Rect2(1156, 1185, 940, 189)
|
||||
[node name="Bench2" type="Sprite2D" parent="BackWall"]
|
||||
z_index = -10
|
||||
position = Vector2(-1824, 224)
|
||||
texture = ExtResource("7_ciwvv")
|
||||
texture = ExtResource("13_rongr")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(1156, 1185, 940, 189)
|
||||
|
||||
@@ -275,7 +276,7 @@ region_rect = Rect2(1156, 1185, 940, 189)
|
||||
z_index = -10
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-177, 554.5)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -296)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2244, 763, 274, 91)
|
||||
@@ -284,7 +285,7 @@ region_rect = Rect2(2244, 763, 274, 91)
|
||||
z_index = -10
|
||||
y_sort_enabled = true
|
||||
position = Vector2(335, 474.5)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -296)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(3157, 688, 118.519, 221)
|
||||
@@ -293,7 +294,7 @@ region_rect = Rect2(3157, 688, 118.519, 221)
|
||||
z_index = -10
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-857, -37.5)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -296)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2748, 432, 174, 191)
|
||||
@@ -303,7 +304,7 @@ z_index = -10
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-425, -77.5)
|
||||
rotation = -0.0663225
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -296)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2624, 435, 49, 76)
|
||||
@@ -314,7 +315,7 @@ y_sort_enabled = true
|
||||
position = Vector2(47.5969, 6.18)
|
||||
rotation = -0.0663225
|
||||
scale = Vector2(1e-05, 1e-05)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(43.3898, 128.128)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(3362, 139, 101, 269)
|
||||
@@ -331,7 +332,7 @@ playback_auto_capture = false
|
||||
z_index = -10
|
||||
y_sort_enabled = true
|
||||
position = Vector2(287, -157.5)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -296)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2964, 137, 321, 213)
|
||||
@@ -339,7 +340,7 @@ region_rect = Rect2(2964, 137, 321, 213)
|
||||
[node name="herb 1" type="Sprite2D" parent="BackWall/Room assets/herbsline"]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(-72, 136)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -296)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2600, 165, 127, 199)
|
||||
@@ -347,7 +348,7 @@ region_rect = Rect2(2600, 165, 127, 199)
|
||||
[node name="herb 2" type="Sprite2D" parent="BackWall/Room assets/herbsline"]
|
||||
y_sort_enabled = true
|
||||
position = Vector2(64, 80)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -296)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2761, 161, 135, 199)
|
||||
@@ -357,37 +358,38 @@ visible = false
|
||||
z_index = -10
|
||||
position = Vector2(32, -72)
|
||||
scale = Vector2(0.4, 0.4)
|
||||
texture = ExtResource("14_j5d18")
|
||||
texture = ExtResource("14_d7yky")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2647, 15, 286, 183)
|
||||
|
||||
[node name="offerings" type="Node2D" parent="BackWall/Room assets"]
|
||||
|
||||
[node name="apple" type="Sprite2D" parent="BackWall/Room assets/offerings"]
|
||||
z_index = -1
|
||||
position = Vector2(229.5, 331.5)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2822, 764, 93, 87)
|
||||
|
||||
[node name="bread" type="Sprite2D" parent="BackWall/Room assets/offerings"]
|
||||
z_index = -1
|
||||
z_index = -2
|
||||
position = Vector2(157.5, 339.5)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2951, 783, 155, 78)
|
||||
|
||||
[node name="plate" type="Sprite2D" parent="BackWall/Room assets/offerings"]
|
||||
z_index = -20
|
||||
position = Vector2(189.5, 659.5)
|
||||
texture = ExtResource("13_j5d18")
|
||||
texture = ExtResource("4_27bwy")
|
||||
offset = Vector2(0, -296)
|
||||
region_enabled = true
|
||||
region_rect = Rect2(2576, 802, 219, 64)
|
||||
|
||||
[node name="Vesna" parent="." instance=ExtResource("2_a2ood")]
|
||||
[node name="Vesna" parent="." instance=ExtResource("15_7a68a")]
|
||||
position = Vector2(-1464, 136)
|
||||
|
||||
[node name="Yeli" parent="." instance=ExtResource("15_ciwvv")]
|
||||
[node name="Yeli" parent="." instance=ExtResource("16_dhsxs")]
|
||||
position = Vector2(-2912, 432)
|
||||
|
||||
[node name="CollisionShape3D" parent="Yeli/InteractionArea/Area2D" index="0"]
|
||||
@@ -401,9 +403,21 @@ _timelinesToPlay = PackedStringArray("yeli_intro_05")
|
||||
position = Vector2(-576, 368)
|
||||
|
||||
[node name="dialogic_toggle" type="Node2D" parent="Yeli"]
|
||||
script = ExtResource("17_835kg")
|
||||
script = ExtResource("17_k0k8c")
|
||||
metadata/_custom_type_script = "uid://cvkw4qd2hxksi"
|
||||
|
||||
[node name="Camera2D" type="Camera2D" parent="." node_paths=PackedStringArray("_followNode")]
|
||||
position = Vector2(-1534, -26)
|
||||
offset = Vector2(0, -200)
|
||||
zoom = Vector2(0.5, 0.5)
|
||||
limit_left = -6300
|
||||
limit_top = -1050
|
||||
limit_right = 1400
|
||||
limit_bottom = 1150
|
||||
editor_draw_limits = true
|
||||
script = ExtResource("18_dw4nn")
|
||||
_followNode = NodePath("../Vesna/CharacterBody2D")
|
||||
|
||||
[connection signal="timelineEnded" from="Yeli/dialogic_toggle" to="." method="Quit"]
|
||||
|
||||
[editable path="Vesna"]
|
||||
@@ -0,0 +1,15 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://dbpsqfedlku4f"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cqcs80xsgygeb" path="res://prefabs/UI/Book/Book.tscn" id="1_bd7dq"]
|
||||
[ext_resource type="Script" uid="uid://cg0oqug38c81n" path="res://scripts/CSharp/Common/Quest/QuestTestingScript.cs" id="2_sv6jn"]
|
||||
[ext_resource type="Resource" uid="uid://0aruj4lm74n6" path="res://resources/quests/test_01.tres" id="3_nhtae"]
|
||||
[ext_resource type="Resource" uid="uid://be1dmc6d2mxl5" path="res://resources/quests/test_02.tres" id="4_kr4yw"]
|
||||
[ext_resource type="Resource" uid="uid://tmmnsg1bge2" path="res://resources/quests/test_03.tres" id="5_4cktu"]
|
||||
|
||||
[node name="BabushkaTestsBook" type="Node"]
|
||||
|
||||
[node name="Book" parent="." instance=ExtResource("1_bd7dq")]
|
||||
|
||||
[node name="QuestTesting" type="Node" parent="."]
|
||||
script = ExtResource("2_sv6jn")
|
||||
_questsToActivate = Array[Object]([ExtResource("3_nhtae"), ExtResource("4_kr4yw"), ExtResource("5_4cktu")])
|
||||
@@ -0,0 +1,193 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://c4ns2ixo8k2ih"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cgjc4wurbgimy" path="res://prefabs/UI/Inventory/Inventory.tscn" id="1_opxcj"]
|
||||
[ext_resource type="Script" uid="uid://cldtt4atgymm5" path="res://scripts/CSharp/Common/Quest/QuestTrigger.cs" id="3_sx4ix"]
|
||||
[ext_resource type="Resource" uid="uid://0aruj4lm74n6" path="res://resources/quests/test_01.tres" id="4_qyyck"]
|
||||
[ext_resource type="Resource" uid="uid://be1dmc6d2mxl5" path="res://resources/quests/test_02.tres" id="5_sokiv"]
|
||||
[ext_resource type="Resource" uid="uid://tmmnsg1bge2" path="res://resources/quests/test_03.tres" id="6_ajsa7"]
|
||||
|
||||
[node name="BabushkaTestsQuests" type="Node2D"]
|
||||
|
||||
[node name="CanvasLayer" parent="." instance=ExtResource("1_opxcj")]
|
||||
|
||||
[node name="CanvasLayer2" type="CanvasLayer" parent="."]
|
||||
layer = 128
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="CanvasLayer2"]
|
||||
offset_left = 71.0
|
||||
offset_top = 53.0
|
||||
offset_right = 571.0
|
||||
offset_bottom = 353.0
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="CanvasLayer2/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
alignment = 1
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer2/VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 1
|
||||
text = "Quest 1"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Active" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Active"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer/Active"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("4_qyyck")
|
||||
toStatus = 1
|
||||
makeCurrent = true
|
||||
|
||||
[node name="Done" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Done"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer/Done"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("4_qyyck")
|
||||
toStatus = 2
|
||||
|
||||
[node name="Cancle" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Cancle"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer/Cancle"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("4_qyyck")
|
||||
toStatus = 3
|
||||
|
||||
[node name="Hide" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Hide
|
||||
"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer/Hide"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("4_qyyck")
|
||||
|
||||
[node name="HBoxContainer2" type="HBoxContainer" parent="CanvasLayer2/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
alignment = 1
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer2/VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 1
|
||||
text = "Quest 2"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Active" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Active"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer2/Active"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("5_sokiv")
|
||||
toStatus = 1
|
||||
|
||||
[node name="Done" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Done"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer2/Done"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("5_sokiv")
|
||||
toStatus = 2
|
||||
|
||||
[node name="Cancle" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Cancle"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer2/Cancle"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("5_sokiv")
|
||||
toStatus = 3
|
||||
|
||||
[node name="Hide" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Hide
|
||||
"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer2/Hide"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("5_sokiv")
|
||||
|
||||
[node name="HBoxContainer3" type="HBoxContainer" parent="CanvasLayer2/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
alignment = 1
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer2/VBoxContainer/HBoxContainer3"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 1
|
||||
text = "Quest 3"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Active" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer3"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Active"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer3/Active"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("6_ajsa7")
|
||||
toStatus = 1
|
||||
|
||||
[node name="Done" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer3"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Done"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer3/Done"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("6_ajsa7")
|
||||
toStatus = 2
|
||||
|
||||
[node name="Cancle" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer3"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Cancle"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer3/Cancle"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("6_ajsa7")
|
||||
toStatus = 3
|
||||
|
||||
[node name="Hide" type="Button" parent="CanvasLayer2/VBoxContainer/HBoxContainer3"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
text = "Hide
|
||||
"
|
||||
|
||||
[node name="QuestSetter" type="Node" parent="CanvasLayer2/VBoxContainer/HBoxContainer3/Hide"]
|
||||
script = ExtResource("3_sx4ix")
|
||||
questResource = ExtResource("6_ajsa7")
|
||||
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer/Active" to="CanvasLayer2/VBoxContainer/HBoxContainer/Active/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer/Done" to="CanvasLayer2/VBoxContainer/HBoxContainer/Done/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer/Cancle" to="CanvasLayer2/VBoxContainer/HBoxContainer/Cancle/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer/Hide" to="CanvasLayer2/VBoxContainer/HBoxContainer/Hide/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer2/Active" to="CanvasLayer2/VBoxContainer/HBoxContainer2/Active/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer2/Done" to="CanvasLayer2/VBoxContainer/HBoxContainer2/Done/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer2/Cancle" to="CanvasLayer2/VBoxContainer/HBoxContainer2/Cancle/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer2/Hide" to="CanvasLayer2/VBoxContainer/HBoxContainer2/Hide/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer3/Active" to="CanvasLayer2/VBoxContainer/HBoxContainer3/Active/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer3/Done" to="CanvasLayer2/VBoxContainer/HBoxContainer3/Done/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer3/Cancle" to="CanvasLayer2/VBoxContainer/HBoxContainer3/Cancle/QuestSetter" method="Trigger"]
|
||||
[connection signal="pressed" from="CanvasLayer2/VBoxContainer/HBoxContainer3/Hide" to="CanvasLayer2/VBoxContainer/HBoxContainer3/Hide/QuestSetter" method="Trigger"]
|
||||
@@ -0,0 +1,22 @@
|
||||
using Godot;
|
||||
using System;
|
||||
using Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
public partial class PopUpPostIt : Control
|
||||
{
|
||||
private Label Text => GetNode<Label>("Text");
|
||||
|
||||
private AnimationPlayer Animation => GetNode<AnimationPlayer>("AnimationPlayer");
|
||||
|
||||
QuestManager QM => QuestManager.Instance!;
|
||||
public override void _EnterTree()
|
||||
{
|
||||
QM.QuestBecomesActive += NewQuestPostIt;
|
||||
}
|
||||
|
||||
private void NewQuestPostIt(QuestResource questResource)
|
||||
{
|
||||
Text.Text = questResource.title;
|
||||
Animation.Play("NewPostit");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://byar6yqrlph6k
|
||||
@@ -0,0 +1,11 @@
|
||||
using Godot;
|
||||
using System;
|
||||
using Babushka.scripts.CSharp.Common.Util;
|
||||
|
||||
public partial class QuestDescriptionUi : RichTextLabel
|
||||
{
|
||||
public void UpdateText(QuestLog questLog)
|
||||
{
|
||||
Text = questLog.currentDetailQuest?.description ?? "";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://b8mywolvj2yq7
|
||||
@@ -0,0 +1,51 @@
|
||||
#nullable enable
|
||||
using System;
|
||||
using Babushka.scripts.CSharp.Common.Util;
|
||||
using Godot;
|
||||
namespace Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
public partial class QuestListItemUi : Control
|
||||
{
|
||||
private Button TitleButton => GetNode<Button>("TitleButton");
|
||||
private Label TitleLabel => GetNode<Label>("TitleButton/HBoxContainer/TitleText");
|
||||
private TextureRect CircleTexture => GetNode<TextureRect>("TitleButton/Circled");
|
||||
private QuestResource? _questResource;
|
||||
|
||||
public void UpdateButton(QuestResource questResource)
|
||||
{
|
||||
_questResource = questResource;
|
||||
var questStatus = QuestManager.Instance!.GetQuestStatus(_questResource);
|
||||
var name = questResource.title;
|
||||
|
||||
name += questStatus.status switch
|
||||
{
|
||||
QuestStatus.Status.Done => " \u2713", // Check
|
||||
QuestStatus.Status.Canceled => " \u2715", // X
|
||||
_ => ""
|
||||
};
|
||||
|
||||
UpdateCircled(questResource == QuestManager.Instance.GetFollowQuest());
|
||||
ShowName(name);
|
||||
TitleButton.Pressed += ClickedTitleButton;
|
||||
|
||||
}
|
||||
private void UpdateCircled(bool value)
|
||||
{
|
||||
CircleTexture.Visible = value;
|
||||
}
|
||||
|
||||
private void ShowName(string questResourceTitle)
|
||||
{
|
||||
TitleLabel.Text = questResourceTitle;
|
||||
}
|
||||
|
||||
public void ClickedTitleButton()
|
||||
{
|
||||
var questLog = this.FindParentByType<QuestLog>();
|
||||
if (_questResource == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(_questResource), "QuestResource is null");
|
||||
}
|
||||
questLog.currentDetailQuest = _questResource;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://dwhee40ksubke
|
||||
@@ -0,0 +1,48 @@
|
||||
using Godot;
|
||||
using System;
|
||||
using Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
public partial class QuestListUi : VBoxContainer
|
||||
{
|
||||
[Export]
|
||||
private PackedScene _questListItemPrefab;
|
||||
|
||||
public override void _EnterTree()
|
||||
{
|
||||
UpdateList();
|
||||
QuestManager.Instance!.QuestsChanged += UpdateList;
|
||||
}
|
||||
|
||||
public override void _ExitTree()
|
||||
{
|
||||
QuestManager.Instance!.QuestsChanged -= UpdateList;
|
||||
}
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
UpdateList();
|
||||
}
|
||||
|
||||
public void UpdateList()
|
||||
{
|
||||
// delete children
|
||||
foreach (Node child in GetChildren())
|
||||
{
|
||||
RemoveChild(child);
|
||||
child.QueueFree();
|
||||
}
|
||||
|
||||
// recreate children
|
||||
var activeQuests = QuestManager.Instance.GetVisibleQuests();
|
||||
|
||||
foreach (var questPair in activeQuests)
|
||||
{
|
||||
var questResource = questPair.Key;
|
||||
var questStatus = questPair.Value;
|
||||
|
||||
var questListItem = _questListItemPrefab.Instantiate<QuestListItemUi>();
|
||||
questListItem.UpdateButton(questResource);
|
||||
AddChild(questListItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://c7ilqe2fmjyvx
|
||||
@@ -0,0 +1,53 @@
|
||||
#nullable enable
|
||||
using Godot;
|
||||
using System;
|
||||
using Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
public partial class QuestLog : Control
|
||||
{
|
||||
[Signal]
|
||||
public delegate void DetailQuestChangedEventHandler(QuestLog questLog);
|
||||
|
||||
[Export]
|
||||
private Vector2 _closedPos;
|
||||
|
||||
[Export]
|
||||
private Vector2 _openedPos;
|
||||
|
||||
private bool _isClosed = true;
|
||||
private Tween? _closeOpenTween;
|
||||
|
||||
public QuestResource? currentDetailQuest
|
||||
{
|
||||
get => QuestManager.Instance!.GetFollowQuest();
|
||||
set
|
||||
{
|
||||
QuestManager.Instance!.SetFollowQuest(value); // TODO: fix setup
|
||||
EmitSignalDetailQuestChanged(this);
|
||||
}
|
||||
}
|
||||
|
||||
public override void _EnterTree()
|
||||
{
|
||||
QuestManager.Instance!.QuestsChanged += () => EmitSignalDetailQuestChanged(this);
|
||||
}
|
||||
|
||||
public override void _Input(InputEvent inputEvent)
|
||||
{
|
||||
if (inputEvent.IsActionPressed("ui_inventory_journal_open_close"))
|
||||
{
|
||||
if(_closeOpenTween != null)
|
||||
_closeOpenTween.Kill();
|
||||
|
||||
_isClosed = !_isClosed;
|
||||
|
||||
_closeOpenTween = GetTree().CreateTween();
|
||||
_closeOpenTween
|
||||
.TweenProperty(this, "position", _isClosed ? _closedPos : _openedPos, 0.5)
|
||||
.SetEase(Tween.EaseType.Out)
|
||||
.SetTrans(Tween.TransitionType.Cubic);
|
||||
}
|
||||
}
|
||||
|
||||
//private QuestResource? _currentDetailQuestBacking;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://o1qpo0wdqlw3
|
||||
@@ -0,0 +1,76 @@
|
||||
using Godot;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
using QuestPair = KeyValuePair<QuestResource, QuestStatus>;
|
||||
public partial class QuestManager : Node
|
||||
{
|
||||
public static QuestManager? Instance { get; private set; }
|
||||
|
||||
[Signal]
|
||||
public delegate void QuestBecomesActiveEventHandler(QuestResource questResource);
|
||||
|
||||
[Signal]
|
||||
public delegate void QuestsChangedEventHandler();
|
||||
|
||||
public override void _EnterTree()
|
||||
{
|
||||
Instance = this;
|
||||
}
|
||||
|
||||
private Godot.Collections.Dictionary<QuestResource, QuestStatus> _questStatus = new();
|
||||
|
||||
private QuestResource? _followQuest;
|
||||
|
||||
|
||||
public void ChangeQuestStatus(QuestResource questResource, QuestStatus.Status newStatus)
|
||||
{
|
||||
if (!_questStatus.TryGetValue(questResource, out var value))
|
||||
{
|
||||
value = new QuestStatus();
|
||||
_questStatus.Add(questResource, value);
|
||||
}
|
||||
|
||||
value.status = newStatus;
|
||||
|
||||
EmitSignalQuestsChanged();
|
||||
|
||||
if (newStatus == QuestStatus.Status.Active)
|
||||
{
|
||||
EmitSignalQuestBecomesActive(questResource);
|
||||
}
|
||||
}
|
||||
|
||||
public IEnumerable<QuestPair> GetVisibleQuests()
|
||||
{
|
||||
return _questStatus.Where(qs => qs.Value.status != QuestStatus.Status.Hidden);
|
||||
}
|
||||
|
||||
public IEnumerable<QuestPair> GetActiveQuests()
|
||||
{
|
||||
return _questStatus.Where(qs => qs.Value.status == QuestStatus.Status.Active);
|
||||
}
|
||||
public QuestStatus GetQuestStatus(QuestResource questResource)
|
||||
{
|
||||
if (_questStatus.TryGetValue(questResource, out var status))
|
||||
return status;
|
||||
|
||||
status = new QuestStatus();
|
||||
_questStatus.Add(questResource, status);
|
||||
return status;
|
||||
}
|
||||
|
||||
public QuestResource? GetFollowQuest()
|
||||
{
|
||||
return _followQuest;
|
||||
}
|
||||
|
||||
public void SetFollowQuest(QuestResource? questResource)
|
||||
{
|
||||
_followQuest = questResource;
|
||||
EmitSignalQuestsChanged();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://dl2uhq12p3qks
|
||||
@@ -0,0 +1,86 @@
|
||||
using Godot;
|
||||
using System;
|
||||
using System.Net.Mime;
|
||||
using Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
public partial class QuestMessagePopup : Control
|
||||
{
|
||||
|
||||
private Label Text => GetNode<Label>("Text");
|
||||
|
||||
private QuestResource? _currentlyShown;
|
||||
|
||||
private Tween? _activeTween = null;
|
||||
|
||||
[Export]
|
||||
private Vector2 _showPosition;
|
||||
|
||||
[Export]
|
||||
private Vector2 _hidePosition;
|
||||
|
||||
public override void _EnterTree()
|
||||
{
|
||||
QuestManager.Instance!.QuestsChanged += NewActiveQuest;
|
||||
}
|
||||
|
||||
public override void _ExitTree()
|
||||
{
|
||||
QuestManager.Instance!.QuestsChanged -= NewActiveQuest;
|
||||
}
|
||||
|
||||
private void NewActiveQuest()
|
||||
{
|
||||
var shownQuest = QuestManager.Instance!.GetFollowQuest();
|
||||
if (_currentlyShown == shownQuest)
|
||||
return;
|
||||
|
||||
if (_activeTween != null)
|
||||
{
|
||||
_activeTween.Kill();
|
||||
}
|
||||
|
||||
if (shownQuest == null)
|
||||
{
|
||||
HideAnimate();
|
||||
_currentlyShown = null;
|
||||
return;
|
||||
}
|
||||
|
||||
if (_currentlyShown == null)
|
||||
{
|
||||
Text.Text = shownQuest.title;
|
||||
ShowAnimate();
|
||||
_currentlyShown = shownQuest;
|
||||
return;
|
||||
}
|
||||
|
||||
// else (_currentlyShown != null)
|
||||
|
||||
_currentlyShown = shownQuest;
|
||||
HideAnimate(() =>
|
||||
{
|
||||
Text.Text = shownQuest.title;
|
||||
ShowAnimate();
|
||||
});
|
||||
}
|
||||
|
||||
private void HideAnimate(Action? then = null)
|
||||
{
|
||||
_activeTween = GetTree().CreateTween();
|
||||
_activeTween.TweenProperty(this, "position", _hidePosition, 0.4)
|
||||
.SetTrans(Tween.TransitionType.Cubic)
|
||||
.SetEase(Tween.EaseType.Out);
|
||||
if (then != null)
|
||||
_activeTween.Finished += then;
|
||||
}
|
||||
|
||||
private void ShowAnimate(Action? then = null)
|
||||
{
|
||||
_activeTween = GetTree().CreateTween();
|
||||
_activeTween.TweenProperty(this, "position", _showPosition, 0.4)
|
||||
.SetTrans(Tween.TransitionType.Cubic)
|
||||
.SetEase(Tween.EaseType.Out);
|
||||
if (then != null)
|
||||
_activeTween.Finished += then;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://7wwid23tc8as
|
||||
@@ -0,0 +1,13 @@
|
||||
using Godot;
|
||||
namespace Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class QuestResource : Resource
|
||||
{
|
||||
[Export]
|
||||
public string id = "";
|
||||
[Export]
|
||||
public string title = "";
|
||||
[Export(PropertyHint.MultilineText)]
|
||||
public string description = "";
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://vji5lp4qc8pp
|
||||
@@ -0,0 +1,16 @@
|
||||
using Godot;
|
||||
|
||||
namespace Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
public partial class QuestStatus : GodotObject
|
||||
{
|
||||
public enum Status
|
||||
{
|
||||
Hidden,
|
||||
Active,
|
||||
Done,
|
||||
Canceled,
|
||||
}
|
||||
|
||||
public Status status = Status.Hidden;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://bpqgcchuubfiy
|
||||
@@ -0,0 +1,20 @@
|
||||
using Godot;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Babushka.scripts.CSharp.Common.Quest;
|
||||
using Godot.Collections;
|
||||
|
||||
public partial class QuestTestingScript : Node
|
||||
{
|
||||
[Export(PropertyHint.ArrayType)]
|
||||
private Array<QuestResource> _questsToActivate;
|
||||
|
||||
public override void _EnterTree()
|
||||
{
|
||||
foreach (var questResource in _questsToActivate)
|
||||
{
|
||||
QuestManager.Instance.ChangeQuestStatus(questResource, QuestStatus.Status.Active);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://cg0oqug38c81n
|
||||
@@ -0,0 +1,33 @@
|
||||
using Godot;
|
||||
using System;
|
||||
using Babushka.scripts.CSharp.Common.Quest;
|
||||
|
||||
public partial class QuestTrigger : Node
|
||||
{
|
||||
[Export]
|
||||
public QuestResource? questResource;
|
||||
|
||||
[Export]
|
||||
public QuestStatus.Status toStatus;
|
||||
|
||||
[Export]
|
||||
private bool makeCurrent = false;
|
||||
|
||||
public void Trigger()
|
||||
{
|
||||
GD.Print("trigger");
|
||||
|
||||
if(questResource== null)
|
||||
throw new Exception("QuestResource is not set on QuestTrigger node.");
|
||||
|
||||
if(QuestManager.Instance == null)
|
||||
throw new Exception("QuestManager instance is not available. Make sure it is initialized before calling Trigger.");
|
||||
|
||||
QuestManager.Instance.ChangeQuestStatus(questResource, toStatus);
|
||||
|
||||
if (makeCurrent)
|
||||
{
|
||||
QuestManager.Instance.SetFollowQuest(questResource);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://cldtt4atgymm5
|
||||
@@ -0,0 +1,26 @@
|
||||
using System;
|
||||
using Godot;
|
||||
namespace Babushka.scripts.CSharp.Common.Util;
|
||||
|
||||
public static class NodeExtension
|
||||
{
|
||||
/// <summary>
|
||||
/// Searches for a parent node of the specified type.
|
||||
/// </summary>
|
||||
/// <typeparam name="T">The type of the parent node to search for. The search is successful, when <code>searchedNode is T</code></typeparam>
|
||||
/// <param name="self">The node from which to start the search.</param>
|
||||
/// <returns>The parent node of type T if found, otherwise throws an exception.</returns>
|
||||
public static T FindParentByType<T>(this Node self)
|
||||
{
|
||||
var parent = self.GetParent();
|
||||
while (parent != null)
|
||||
{
|
||||
if (parent is T tParent)
|
||||
{
|
||||
return tParent;
|
||||
}
|
||||
parent = parent.GetParent();
|
||||
}
|
||||
throw new Exception($"Parent of type {typeof(T)} not found for node {self.Name}");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://bwisbh2f2ci6l
|
||||
Reference in New Issue
Block a user