Merge remote-tracking branch 'origin/main' into adi_dev
This commit is contained in:
commit
8be2560943
|
|
@ -26,7 +26,14 @@ func _on_mouse_entered():
|
||||||
has_mouse = true
|
has_mouse = true
|
||||||
|
|
||||||
func _on_mouse_exited():
|
func _on_mouse_exited():
|
||||||
assert(false)
|
print("mouse_exited")
|
||||||
|
input_ray_pickable = true
|
||||||
|
ui.collapsed = true
|
||||||
|
has_mouse = false
|
||||||
|
|
||||||
func reveal():
|
func reveal():
|
||||||
revealed = true
|
revealed = true
|
||||||
|
|
||||||
|
func collapse():
|
||||||
|
_on_mouse_exited()
|
||||||
|
revealed = false
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -625,7 +625,7 @@ tracks/41/keys = {
|
||||||
"times": PackedFloat32Array(0),
|
"times": PackedFloat32Array(0),
|
||||||
"transitions": PackedFloat32Array(1),
|
"transitions": PackedFloat32Array(1),
|
||||||
"update": 1,
|
"update": 1,
|
||||||
"values": [true]
|
"values": [false]
|
||||||
}
|
}
|
||||||
tracks/42/type = "value"
|
tracks/42/type = "value"
|
||||||
tracks/42/imported = false
|
tracks/42/imported = false
|
||||||
|
|
@ -1030,6 +1030,20 @@ tracks/18/keys = {
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
|
"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
|
||||||
}
|
}
|
||||||
|
tracks/19/type = "method"
|
||||||
|
tracks/19/imported = false
|
||||||
|
tracks/19/enabled = true
|
||||||
|
tracks/19/path = NodePath("ScenePlayer")
|
||||||
|
tracks/19/interp = 1
|
||||||
|
tracks/19/loop_wrap = true
|
||||||
|
tracks/19/keys = {
|
||||||
|
"times": PackedFloat32Array(138.4),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"values": [{
|
||||||
|
"args": [],
|
||||||
|
"method": &"on_draeven_done"
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_1pmhi"]
|
[sub_resource type="Animation" id="Animation_1pmhi"]
|
||||||
resource_name = "intro"
|
resource_name = "intro"
|
||||||
|
|
@ -1504,8 +1518,6 @@ script/source = "extends AnimationPlayer
|
||||||
|
|
||||||
var has_stage
|
var has_stage
|
||||||
|
|
||||||
signal draeven_beginning
|
|
||||||
|
|
||||||
func start_soundtrack():
|
func start_soundtrack():
|
||||||
$Moving.play(70)
|
$Moving.play(70)
|
||||||
$Childhood.play(70)
|
$Childhood.play(70)
|
||||||
|
|
@ -1536,9 +1548,6 @@ func on_jui_jutsu_done():
|
||||||
func on_draeven_done():
|
func on_draeven_done():
|
||||||
get_tree().call_group(\"animation_player\", \"scene_finished\", Scenes.id.YOUTH_DRAEVEN)
|
get_tree().call_group(\"animation_player\", \"scene_finished\", Scenes.id.YOUTH_DRAEVEN)
|
||||||
|
|
||||||
func on_draeven_beginning():
|
|
||||||
emit_signal(\"draeven_fade\")
|
|
||||||
|
|
||||||
func scene_finished(_id):
|
func scene_finished(_id):
|
||||||
play(\"RESET\")
|
play(\"RESET\")
|
||||||
"
|
"
|
||||||
|
|
@ -1942,10 +1951,9 @@ auto_exposure_enabled = true
|
||||||
auto_exposure_scale = 0.2
|
auto_exposure_scale = 0.2
|
||||||
dof_blur_far_distance = 0.4
|
dof_blur_far_distance = 0.4
|
||||||
dof_blur_far_transition = 0.2
|
dof_blur_far_transition = 0.2
|
||||||
dof_blur_near_enabled = true
|
|
||||||
dof_blur_near_distance = 6.0
|
dof_blur_near_distance = 6.0
|
||||||
dof_blur_near_transition = 2.0
|
dof_blur_near_transition = 2.0
|
||||||
dof_blur_amount = 0.4
|
dof_blur_amount = 0.0
|
||||||
auto_exposure_min_sensitivity = 100.0
|
auto_exposure_min_sensitivity = 100.0
|
||||||
|
|
||||||
[sub_resource type="GDScript" id="GDScript_wb8kg"]
|
[sub_resource type="GDScript" id="GDScript_wb8kg"]
|
||||||
|
|
@ -1957,8 +1965,11 @@ func _ready():
|
||||||
func focus_env():
|
func focus_env():
|
||||||
var dof_strength_tween: Tween = create_tween()
|
var dof_strength_tween: Tween = create_tween()
|
||||||
dof_strength_tween.tween_property(camera_attributes, \"dof_blur_amount\", 0, 1)
|
dof_strength_tween.tween_property(camera_attributes, \"dof_blur_amount\", 0, 1)
|
||||||
|
await(dof_strength_tween.finished)
|
||||||
|
camera_attributes.dof_blur_near_enabled = false
|
||||||
|
|
||||||
func focus_object():
|
func focus_object():
|
||||||
|
camera_attributes.dof_blur_near_enabled = true
|
||||||
var dof_strength_tween: Tween = create_tween()
|
var dof_strength_tween: Tween = create_tween()
|
||||||
dof_strength_tween.tween_property(camera_attributes, \"dof_blur_amount\", 0.4, 1)
|
dof_strength_tween.tween_property(camera_attributes, \"dof_blur_amount\", 0.4, 1)
|
||||||
|
|
||||||
|
|
@ -1966,7 +1977,7 @@ func play_scene(_id: int):
|
||||||
focus_object()
|
focus_object()
|
||||||
|
|
||||||
func scene_finished(_id: int):
|
func scene_finished(_id: int):
|
||||||
focus_env()
|
pass
|
||||||
"
|
"
|
||||||
|
|
||||||
[sub_resource type="QuadMesh" id="QuadMesh_n875y"]
|
[sub_resource type="QuadMesh" id="QuadMesh_n875y"]
|
||||||
|
|
@ -2070,10 +2081,6 @@ shape = SubResource("BoxShape3D_wdkxn")
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.02419, 1.06708, 2.75985)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.02419, 1.06708, 2.75985)
|
||||||
shape = SubResource("BoxShape3D_3lwkl")
|
shape = SubResource("BoxShape3D_3lwkl")
|
||||||
|
|
||||||
[node name="Wall2" type="CollisionShape3D" parent="logic/colission/Room_Colission"]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.64826, 1.06708, 2.75985)
|
|
||||||
shape = SubResource("BoxShape3D_3lwkl")
|
|
||||||
|
|
||||||
[node name="Wall3" type="CollisionShape3D" parent="logic/colission/Room_Colission"]
|
[node name="Wall3" type="CollisionShape3D" parent="logic/colission/Room_Colission"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.254488, 1.06708, 3.24245)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.254488, 1.06708, 3.24245)
|
||||||
shape = SubResource("BoxShape3D_3lwkl")
|
shape = SubResource("BoxShape3D_3lwkl")
|
||||||
|
|
@ -2183,7 +2190,7 @@ visible = false
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
|
|
||||||
[node name="ScenePlayer" type="AnimationPlayer" parent="logic" groups=["animation_player"]]
|
[node name="ScenePlayer" type="AnimationPlayer" parent="logic" groups=["animation_player"]]
|
||||||
autoplay = "draeven"
|
autoplay = "RESET"
|
||||||
libraries = {
|
libraries = {
|
||||||
"": SubResource("AnimationLibrary_ilekd")
|
"": SubResource("AnimationLibrary_ilekd")
|
||||||
}
|
}
|
||||||
|
|
@ -2471,7 +2478,6 @@ layout_mode = 2
|
||||||
size_flags_horizontal = 4
|
size_flags_horizontal = 4
|
||||||
size_flags_vertical = 4
|
size_flags_vertical = 4
|
||||||
mouse_filter = 2
|
mouse_filter = 2
|
||||||
scroll_vertical = 638
|
|
||||||
horizontal_scroll_mode = 0
|
horizontal_scroll_mode = 0
|
||||||
vertical_scroll_mode = 3
|
vertical_scroll_mode = 3
|
||||||
|
|
||||||
|
|
@ -2556,6 +2562,7 @@ scale = Vector2(0.4, 0.4)
|
||||||
texture = ExtResource("12_xnele")
|
texture = ExtResource("12_xnele")
|
||||||
|
|
||||||
[node name="draeven" type="CenterContainer" parent="logic/ScenePlayer"]
|
[node name="draeven" type="CenterContainer" parent="logic/ScenePlayer"]
|
||||||
|
visible = false
|
||||||
modulate = Color(1, 1, 1, 0)
|
modulate = Color(1, 1, 1, 0)
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
|
|
@ -2600,7 +2607,6 @@ layout_mode = 2
|
||||||
size_flags_horizontal = 4
|
size_flags_horizontal = 4
|
||||||
size_flags_vertical = 4
|
size_flags_vertical = 4
|
||||||
mouse_filter = 0
|
mouse_filter = 0
|
||||||
scroll_vertical = 150
|
|
||||||
horizontal_scroll_mode = 0
|
horizontal_scroll_mode = 0
|
||||||
vertical_scroll_mode = 3
|
vertical_scroll_mode = 3
|
||||||
|
|
||||||
|
|
@ -2670,7 +2676,7 @@ light_size = 1.0
|
||||||
light_cull_mask = 4294967293
|
light_cull_mask = 4294967293
|
||||||
|
|
||||||
[node name="Luna_frame-of-mind" parent="logic/ScenePlayer/draeven" instance=ExtResource("27_pb1jl")]
|
[node name="Luna_frame-of-mind" parent="logic/ScenePlayer/draeven" instance=ExtResource("27_pb1jl")]
|
||||||
transform = Transform3D(0.958899, 0, 0.283747, 0, 1, 0, -0.283747, 0, 0.958899, -10.1552, 14.9384, -16.2182)
|
transform = Transform3D(0.958898, 0, 0.283747, 0, 1, 0, -0.283747, 0, 0.958898, -10.1552, 14.9384, -16.2182)
|
||||||
visible = false
|
visible = false
|
||||||
|
|
||||||
[node name="OmniLight3D" type="OmniLight3D" parent="logic/ScenePlayer/draeven/Luna_frame-of-mind"]
|
[node name="OmniLight3D" type="OmniLight3D" parent="logic/ScenePlayer/draeven/Luna_frame-of-mind"]
|
||||||
|
|
@ -2833,10 +2839,7 @@ render_target_update_mode = 4
|
||||||
|
|
||||||
[node name="Collectable_ui" parent="logic/Draeven-interaction/UiWrapper/UiSprite/SubViewport" instance=ExtResource("11_jxai0")]
|
[node name="Collectable_ui" parent="logic/Draeven-interaction/UiWrapper/UiSprite/SubViewport" instance=ExtResource("11_jxai0")]
|
||||||
visible = false
|
visible = false
|
||||||
scene = 3
|
item_name = "Mind Board"
|
||||||
is_story = true
|
|
||||||
item_name = "Starlight"
|
|
||||||
content_notes = "Alienation"
|
|
||||||
|
|
||||||
[node name="HoverDetect" type="CollisionShape3D" parent="logic/Draeven-interaction"]
|
[node name="HoverDetect" type="CollisionShape3D" parent="logic/Draeven-interaction"]
|
||||||
transform = Transform3D(1, 0, 2.98023e-08, 0, 1, 0, -2.98023e-08, 0, 1, 0, -0.237872, 0)
|
transform = Transform3D(1, 0, 2.98023e-08, 0, 1, 0, -2.98023e-08, 0, 1, 0, -0.237872, 0)
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ text = "but at least I get good grades."
|
||||||
|
|
||||||
[node name="p_upset_peers" parent="childhood/c_homework" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_upset_peers" parent="childhood/c_homework" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "and my peers were upset about that."
|
text = "my peers were upset about that."
|
||||||
|
|
||||||
[node name="c_teachers" parent="childhood" instance=ExtResource("1_xrckx")]
|
[node name="c_teachers" parent="childhood" instance=ExtResource("1_xrckx")]
|
||||||
position = Vector2(0, 300)
|
position = Vector2(0, 300)
|
||||||
|
|
@ -45,11 +45,11 @@ text = "maybe I want to become a teacher."
|
||||||
position = Vector2(0, 600)
|
position = Vector2(0, 600)
|
||||||
text = "I can put ages into things I enjoy "
|
text = "I can put ages into things I enjoy "
|
||||||
|
|
||||||
[node name="p_worried_mother" parent="childhood/c_Joy" groups=["c_body", "c_boy_stuff", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_worried_mother" parent="childhood/c_Joy" groups=["c_Joy", "c_body", "c_boy_stuff", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "my mother would be worried about that"
|
text = "my mother would be worried about that"
|
||||||
|
|
||||||
[node name="p_thomas" parent="childhood/c_Joy" groups=["c_backlash", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_thomas" parent="childhood/c_Joy" groups=["c_Joy", "c_backlash", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "Mr Thomas thinks that makes me gifted."
|
text = "Mr Thomas thinks that makes me gifted."
|
||||||
|
|
||||||
|
|
@ -67,7 +67,7 @@ text = "Comic heroes are my role models "
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "when I put in the effort, I can make the world a better place"
|
text = "when I put in the effort, I can make the world a better place"
|
||||||
|
|
||||||
[node name="p_upset_peers" parent="voice_training/c_comic_heroes" groups=["c_Joy", "c_body", "c_boy_stuff", "c_hit"] instance=ExtResource("2_ucudl")]
|
[node name="p_agent_q" parent="voice_training/c_comic_heroes" groups=["c_Joy", "c_body", "c_boy_stuff", "c_hit"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "and I want to be like agent q!"
|
text = "and I want to be like agent q!"
|
||||||
|
|
||||||
|
|
@ -75,9 +75,9 @@ text = "and I want to be like agent q!"
|
||||||
position = Vector2(0, 300)
|
position = Vector2(0, 300)
|
||||||
text = "I like boy stuff "
|
text = "I like boy stuff "
|
||||||
|
|
||||||
[node name="p_slut" parent="voice_training/c_boy_stuff" groups=["c_Joy", "c_body", "c_hit", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_pretending" parent="voice_training/c_boy_stuff" groups=["c_Joy", "c_body", "c_hit", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "others think I only pretend to."
|
text = "yet they think I'm just pretending"
|
||||||
|
|
||||||
[node name="p_girls" parent="voice_training/c_boy_stuff" groups=["c_Joy", "c_body", "c_comic_heroes", "c_hit", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_girls" parent="voice_training/c_boy_stuff" groups=["c_Joy", "c_body", "c_comic_heroes", "c_hit", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
|
|
@ -85,11 +85,11 @@ text = "and girls don't get that."
|
||||||
|
|
||||||
[node name="c_backlash" parent="voice_training" instance=ExtResource("1_xrckx")]
|
[node name="c_backlash" parent="voice_training" instance=ExtResource("1_xrckx")]
|
||||||
position = Vector2(0, 600)
|
position = Vector2(0, 600)
|
||||||
text = "Despite the backlash, I protected Joyo in front of class "
|
text = "Despite the backlash, I protected my friend"
|
||||||
|
|
||||||
[node name="p_cross_friend" parent="voice_training/c_backlash" groups=["c_Joy", "c_boy_stuff", "c_comic_heroes", "c_hit"] instance=ExtResource("2_ucudl")]
|
[node name="p_cross_friend" parent="voice_training/c_backlash" groups=["c_Joy", "c_boy_stuff", "c_comic_heroes", "c_hit"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "I would never cross a friend, even if it was for my own good."
|
text = "I wouldn't never not do that, even if it was for my own good"
|
||||||
|
|
||||||
[node name="p_reward" parent="voice_training/c_backlash" groups=["c_Joy"] instance=ExtResource("2_ucudl")]
|
[node name="p_reward" parent="voice_training/c_backlash" groups=["c_Joy"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
|
|
@ -136,41 +136,83 @@ text = "… I was wet, so I must have been into it."
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "… I didn’t say stop."
|
text = "… I didn’t say stop."
|
||||||
|
|
||||||
[node name="test" type="Control" parent="."]
|
[node name="draeven" type="Control" parent="."]
|
||||||
anchors_preset = 0
|
anchors_preset = 0
|
||||||
offset_left = 1234.0
|
offset_left = 1234.0
|
||||||
offset_top = 141.0
|
offset_top = 141.0
|
||||||
offset_right = 1274.0
|
offset_right = 1274.0
|
||||||
offset_bottom = 181.0
|
offset_bottom = 181.0
|
||||||
|
|
||||||
[node name="c_random1" parent="test" instance=ExtResource("1_xrckx")]
|
[node name="c_out-of-world" parent="draeven" instance=ExtResource("1_xrckx")]
|
||||||
|
text = "I feel like I am not from of this world"
|
||||||
|
|
||||||
[node name="p_random11" parent="test/c_random1" groups=["c_boy_stuff"] instance=ExtResource("2_ucudl")]
|
[node name="p_random11" parent="draeven/c_out-of-world" groups=["c_boy_stuff"] instance=ExtResource("2_ucudl")]
|
||||||
|
position = Vector2(-32, 50)
|
||||||
|
text = "I like being unique like that"
|
||||||
|
|
||||||
|
[node name="p_random12" parent="draeven/c_out-of-world" instance=ExtResource("2_ucudl")]
|
||||||
|
position = Vector2(-32, 140)
|
||||||
|
text = "I am thankful for the few friends that get me"
|
||||||
|
|
||||||
|
[node name="c_rejection" parent="draeven" instance=ExtResource("1_xrckx")]
|
||||||
|
position = Vector2(0, 300)
|
||||||
|
text = "I fear being rejected"
|
||||||
|
|
||||||
|
[node name="p_friends" parent="draeven/c_rejection" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework"] instance=ExtResource("2_ucudl")]
|
||||||
|
position = Vector2(-32, 50)
|
||||||
|
text = "that makes it hard to find friends"
|
||||||
|
|
||||||
|
[node name="p_laughed" parent="draeven/c_rejection" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
|
position = Vector2(-32, 140)
|
||||||
|
text = "I'm afraid I will just get laughed at"
|
||||||
|
|
||||||
|
[node name="c_confusion" parent="draeven" instance=ExtResource("1_xrckx")]
|
||||||
|
position = Vector2(0, 600)
|
||||||
|
text = "I am just too many things at once"
|
||||||
|
|
||||||
|
[node name="p_random21" parent="draeven/c_confusion" groups=["c_void"] instance=ExtResource("2_ucudl")]
|
||||||
|
position = Vector2(-32, 50)
|
||||||
|
text = "it is just so overwhealming for me"
|
||||||
|
|
||||||
|
[node name="p_random22" parent="draeven/c_confusion" groups=["c_void"] instance=ExtResource("2_ucudl")]
|
||||||
|
position = Vector2(-32, 140)
|
||||||
|
text = "this is just too much for others"
|
||||||
|
|
||||||
|
[node name="test2" type="Control" parent="."]
|
||||||
|
anchors_preset = 0
|
||||||
|
offset_left = 1610.0
|
||||||
|
offset_top = 141.0
|
||||||
|
offset_right = 1650.0
|
||||||
|
offset_bottom = 181.0
|
||||||
|
|
||||||
|
[node name="c_random1" parent="test2" instance=ExtResource("1_xrckx")]
|
||||||
|
|
||||||
|
[node name="p_random11" parent="test2/c_random1" groups=["c_boy_stuff"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "random 1"
|
text = "random 1"
|
||||||
|
|
||||||
[node name="p_random12" parent="test/c_random1" instance=ExtResource("2_ucudl")]
|
[node name="p_random12" parent="test2/c_random1" instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "random 1"
|
text = "random 1"
|
||||||
|
|
||||||
[node name="c_pick" parent="test" instance=ExtResource("1_xrckx")]
|
[node name="c_pick" parent="test2" instance=ExtResource("1_xrckx")]
|
||||||
position = Vector2(0, 300)
|
position = Vector2(0, 300)
|
||||||
|
|
||||||
[node name="p_pick" parent="test/c_pick" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework"] instance=ExtResource("2_ucudl")]
|
[node name="p_pick" parent="test2/c_pick" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "pick me 2"
|
text = "pick me 2"
|
||||||
|
|
||||||
[node name="p_goof" parent="test/c_pick" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_goof" parent="test2/c_pick" groups=["c_Joy", "c_backlash", "c_boy_stuff", "c_comic_heroes", "c_homework", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "you done goofed"
|
text = "you done goofed"
|
||||||
|
|
||||||
[node name="c_random2" parent="test" instance=ExtResource("1_xrckx")]
|
[node name="c_random2" parent="test2" instance=ExtResource("1_xrckx")]
|
||||||
position = Vector2(0, 600)
|
position = Vector2(0, 600)
|
||||||
|
|
||||||
[node name="p_random21" parent="test/c_random2" groups=["c_void"] instance=ExtResource("2_ucudl")]
|
[node name="p_random21" parent="test2/c_random2" groups=["c_void"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "random 2"
|
text = "random 2"
|
||||||
|
|
||||||
[node name="p_random22" parent="test/c_random2" groups=["c_void"] instance=ExtResource("2_ucudl")]
|
[node name="p_random22" parent="test2/c_random2" groups=["c_void"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "random 2"
|
text = "random 2"
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,21 @@ var has_stage = false:
|
||||||
@onready var postit_container = $HBoxContainer/ScrollContainer/VBoxContainer
|
@onready var postit_container = $HBoxContainer/ScrollContainer/VBoxContainer
|
||||||
@onready var board_of_devs = $"board of devs"
|
@onready var board_of_devs = $"board of devs"
|
||||||
@onready var base_postit_panel = $HBoxContainer/ScrollContainer/VBoxContainer/Panel
|
@onready var base_postit_panel = $HBoxContainer/ScrollContainer/VBoxContainer/Panel
|
||||||
@onready var empty_text = $emptyText
|
|
||||||
@onready var active_context = ui_context.DROPZONE # 0 = dropzone, 1 = post it list
|
@onready var active_context = ui_context.DROPZONE # 0 = dropzone, 1 = post it list
|
||||||
|
@onready var instructions = $instructions_panel/HBoxContainer/cards_remaining
|
||||||
|
|
||||||
|
var mementos_collected: int = 0:
|
||||||
|
set(mementos):
|
||||||
|
mementos_collected = mementos
|
||||||
|
match mementos:
|
||||||
|
1:
|
||||||
|
instructions.text = "There are three Mementos left to find."
|
||||||
|
2:
|
||||||
|
instructions.text = "You have collected half of the mementos."
|
||||||
|
3:
|
||||||
|
instructions.text = "Find the last Memento to complete the Board."
|
||||||
|
4:
|
||||||
|
instructions.text = "Combine cards to order your thoughts."
|
||||||
|
|
||||||
var currently_selected_node: Area2D = null
|
var currently_selected_node: Area2D = null
|
||||||
var currently_selected_card_for_assigning: Area2D = null
|
var currently_selected_card_for_assigning: Area2D = null
|
||||||
|
|
@ -62,12 +75,13 @@ func _process(delta):
|
||||||
|
|
||||||
# we should maybe consider moving this to _input() for consistency
|
# we should maybe consider moving this to _input() for consistency
|
||||||
if Input.is_action_just_pressed("ui_cancel"):
|
if Input.is_action_just_pressed("ui_cancel"):
|
||||||
populate_board(["c_Joy","p_effort","c_backlash","c_body","c_hit","p_slut","p_worried_mother","p_cross_friend"])
|
populate_board(["c_Joy","p_effort","c_backlash","c_body","c_void","p_reward","p_worried_mother","p_cross_friend"])
|
||||||
|
|
||||||
|
|
||||||
# Will be used later to spawn Cards and Post-Its and remember them in the dictionary
|
# Will be used later to spawn Cards and Post-Its and remember them in the dictionary
|
||||||
func populate_board(card_names: Array):
|
func populate_board(card_names: Array):
|
||||||
empty_text.visible = false
|
|
||||||
|
mementos_collected += 1
|
||||||
|
|
||||||
var all_cards = Array()
|
var all_cards = Array()
|
||||||
var all_postits = Array()
|
var all_postits = Array()
|
||||||
|
|
@ -172,6 +186,7 @@ func handle_mouse_button(to_handle: Area2D, input: InputEvent):
|
||||||
"post-it": # 2 = PostIt
|
"post-it": # 2 = PostIt
|
||||||
if input.is_pressed():
|
if input.is_pressed():
|
||||||
to_handle.reparent(dropzone)
|
to_handle.reparent(dropzone)
|
||||||
|
to_handle.on_board = true
|
||||||
to_handle.set_owner(self) # needs to be here otherwise the owner disappears
|
to_handle.set_owner(self) # needs to be here otherwise the owner disappears
|
||||||
area_dict["post_its_in_list"].erase(to_handle)
|
area_dict["post_its_in_list"].erase(to_handle)
|
||||||
area_dict["dropzone_content"].push_back(to_handle)
|
area_dict["dropzone_content"].push_back(to_handle)
|
||||||
|
|
@ -195,22 +210,25 @@ func handle_mouse_button(to_handle: Area2D, input: InputEvent):
|
||||||
# Logic for attaching a postit to a card. Also reset postit positions if the card cannot be attached
|
# Logic for attaching a postit to a card. Also reset postit positions if the card cannot be attached
|
||||||
func attach_postit_to_card(postit: Area2D, card: Area2D, update_dict = false):
|
func attach_postit_to_card(postit: Area2D, card: Area2D, update_dict = false):
|
||||||
|
|
||||||
if card.has_postit_attached():
|
if postit.is_in_group(card.name):
|
||||||
if active_context == ui_context.ASSIGN_POST_IT:
|
|
||||||
_return_postit_to_panels(postit) # don't attach if card has already a post-it attached
|
|
||||||
return
|
|
||||||
|
|
||||||
postit.reparent(card)
|
if card.has_postit_attached():
|
||||||
postit.set_owner(self)
|
if active_context == ui_context.ASSIGN_POST_IT:
|
||||||
postit.position = card.get_child(3).position
|
_return_postit_to_panels(postit) # don't attach if card has already a post-it attached
|
||||||
|
return
|
||||||
|
|
||||||
if update_dict:
|
postit.reparent(card)
|
||||||
area_dict["post_its_in_list"].erase(postit)
|
postit.on_board = false
|
||||||
area_dict["dropzone_content"].push_back(postit)
|
postit.set_owner(self)
|
||||||
|
postit.position = card.get_child(3).position
|
||||||
|
|
||||||
reorder_areas("dropzone_content")
|
if update_dict:
|
||||||
reorder_areas("cards")
|
area_dict["post_its_in_list"].erase(postit)
|
||||||
reorder_areas("post_its_in_list")
|
area_dict["dropzone_content"].push_back(postit)
|
||||||
|
|
||||||
|
reorder_areas("dropzone_content")
|
||||||
|
reorder_areas("cards")
|
||||||
|
reorder_areas("post_its_in_list")
|
||||||
|
|
||||||
|
|
||||||
# Mark area that was hovered over as currently selected
|
# Mark area that was hovered over as currently selected
|
||||||
|
|
@ -361,6 +379,7 @@ func _return_postit_to_panels(post_it: Area2D):
|
||||||
for panel in area_dict["post_it_panels"]:
|
for panel in area_dict["post_it_panels"]:
|
||||||
if panel.get_child_count() == 1:
|
if panel.get_child_count() == 1:
|
||||||
area_dict["dropzone_content"].erase(post_it)
|
area_dict["dropzone_content"].erase(post_it)
|
||||||
|
post_it.on_board = false
|
||||||
area_dict["post_its_in_list"].push_back(post_it)
|
area_dict["post_its_in_list"].push_back(post_it)
|
||||||
post_it.tween_transform_to(panel.get_child(0).position)
|
post_it.tween_transform_to(panel.get_child(0).position)
|
||||||
post_it.rotation = post_it.base_rotation
|
post_it.rotation = post_it.base_rotation
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,7 @@ func _process(delta: float) -> void:
|
||||||
if area is Card or area is CardCollider:
|
if area is Card or area is CardCollider:
|
||||||
if area is CardCollider:
|
if area is CardCollider:
|
||||||
position += area.direction * delta
|
position += area.direction * delta
|
||||||
elif not area.highlighted:
|
elif not area.highlighted or self.highlighted:
|
||||||
var diff:Vector2 = position - area.position
|
var diff:Vector2 = position - area.position
|
||||||
position -= diff.normalized() * ((diff.length()-diameter)/diameter) * bounce_speed * (delta/(1.0/60))
|
position -= diff.normalized() * ((diff.length()-diameter)/diameter) * bounce_speed * (delta/(1.0/60))
|
||||||
|
|
||||||
|
|
@ -143,9 +143,10 @@ func _on_input_event(viewport, event, shape_idx):
|
||||||
|
|
||||||
if event is InputEventMouseButton:
|
if event is InputEventMouseButton:
|
||||||
if event.button_index == MOUSE_BUTTON_LEFT:
|
if event.button_index == MOUSE_BUTTON_LEFT:
|
||||||
if is_dragable and "handle_mouse_button" in owner:
|
if "handle_mouse_button" in owner:
|
||||||
mouse_offset = (get_viewport().get_mouse_position() - position)
|
mouse_offset = (get_viewport().get_mouse_position() - position)
|
||||||
if highlighted: owner.handle_mouse_button(self, event)
|
if highlighted:
|
||||||
|
owner.handle_mouse_button(self, event)
|
||||||
|
|
||||||
func _move_card():
|
func _move_card():
|
||||||
if is_dragged:
|
if is_dragged:
|
||||||
|
|
|
||||||
|
|
@ -70,7 +70,14 @@ var void_active:
|
||||||
void_active = become_void
|
void_active = become_void
|
||||||
|
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
|
|
||||||
|
if void_active != $GPUParticles2D.is_void:
|
||||||
|
$GPUParticles2D.is_void = void_active
|
||||||
|
$GPUParticles2D.emitting = void_active
|
||||||
|
$Sprite2D.is_void = void_active
|
||||||
|
|
||||||
if void_active and not State.reduce_motion:
|
if void_active and not State.reduce_motion:
|
||||||
|
|
||||||
noise_position += delta * 10
|
noise_position += delta * 10
|
||||||
|
|
||||||
var random_position = Vector2(noise.get_noise_1d(noise_position*2), noise.get_noise_1d(-noise_position))
|
var random_position = Vector2(noise.get_noise_1d(noise_position*2), noise.get_noise_1d(-noise_position))
|
||||||
|
|
|
||||||
|
|
@ -12,12 +12,12 @@ shader = ExtResource("1_ggnth")
|
||||||
shader_parameter/magic_scale_factor = 1500.0
|
shader_parameter/magic_scale_factor = 1500.0
|
||||||
shader_parameter/tex = ExtResource("1_8brxc")
|
shader_parameter/tex = ExtResource("1_8brxc")
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_ivo5o"]
|
|
||||||
size = Vector2(4249, 766.5)
|
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_5ri3m"]
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_5ri3m"]
|
||||||
size = Vector2(4262, 766.5)
|
size = Vector2(4262, 766.5)
|
||||||
|
|
||||||
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_ivo5o"]
|
||||||
|
size = Vector2(4249, 766.5)
|
||||||
|
|
||||||
[node name="board" type="PanelContainer"]
|
[node name="board" type="PanelContainer"]
|
||||||
material = SubResource("ShaderMaterial_ttqei")
|
material = SubResource("ShaderMaterial_ttqei")
|
||||||
clip_contents = true
|
clip_contents = true
|
||||||
|
|
@ -75,15 +75,6 @@ process_mode = 4
|
||||||
visible = false
|
visible = false
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
|
||||||
[node name="border_right" type="Area2D" parent="."]
|
|
||||||
position = Vector2(1872, 461)
|
|
||||||
script = ExtResource("6_wpxls")
|
|
||||||
direction = Vector2(-100, 0)
|
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="border_right"]
|
|
||||||
rotation = 1.5708
|
|
||||||
shape = SubResource("RectangleShape2D_ivo5o")
|
|
||||||
|
|
||||||
[node name="up" type="Control" parent="."]
|
[node name="up" type="Control" parent="."]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 4
|
size_flags_horizontal = 4
|
||||||
|
|
@ -94,7 +85,7 @@ script = ExtResource("6_wpxls")
|
||||||
direction = Vector2(0, 100)
|
direction = Vector2(0, 100)
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="up/border_up"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="up/border_up"]
|
||||||
position = Vector2(-58, -423)
|
position = Vector2(-58, -369)
|
||||||
shape = SubResource("RectangleShape2D_5ri3m")
|
shape = SubResource("RectangleShape2D_5ri3m")
|
||||||
|
|
||||||
[node name="left" type="Control" parent="."]
|
[node name="left" type="Control" parent="."]
|
||||||
|
|
@ -107,7 +98,7 @@ script = ExtResource("6_wpxls")
|
||||||
direction = Vector2(100, 0)
|
direction = Vector2(100, 0)
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="left/border_left"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="left/border_left"]
|
||||||
position = Vector2(-476, -22.5)
|
position = Vector2(-371, -21.5)
|
||||||
rotation = 1.5708
|
rotation = 1.5708
|
||||||
shape = SubResource("RectangleShape2D_ivo5o")
|
shape = SubResource("RectangleShape2D_ivo5o")
|
||||||
|
|
||||||
|
|
@ -121,7 +112,7 @@ script = ExtResource("6_wpxls")
|
||||||
direction = Vector2(0, -100)
|
direction = Vector2(0, -100)
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="down/border_down"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="down/border_down"]
|
||||||
position = Vector2(2, 416)
|
position = Vector2(2, 377)
|
||||||
shape = SubResource("RectangleShape2D_5ri3m")
|
shape = SubResource("RectangleShape2D_5ri3m")
|
||||||
|
|
||||||
[node name="right" type="Control" parent="."]
|
[node name="right" type="Control" parent="."]
|
||||||
|
|
@ -134,23 +125,29 @@ script = ExtResource("6_wpxls")
|
||||||
direction = Vector2(-100, 0)
|
direction = Vector2(-100, 0)
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="right/border_left"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="right/border_left"]
|
||||||
position = Vector2(12, 13)
|
position = Vector2(20, 13)
|
||||||
rotation = 1.5708
|
rotation = 1.5708
|
||||||
shape = SubResource("RectangleShape2D_ivo5o")
|
shape = SubResource("RectangleShape2D_ivo5o")
|
||||||
|
|
||||||
[node name="emptyText" type="Label" parent="."]
|
[node name="instructions_panel" type="PanelContainer" parent="."]
|
||||||
modulate = Color(0, 0, 0, 1)
|
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
theme_override_font_sizes/font_size = 50
|
size_flags_horizontal = 4
|
||||||
text = "Collect mementos to fill board with cards."
|
size_flags_vertical = 0
|
||||||
|
|
||||||
|
[node name="HBoxContainer" type="HBoxContainer" parent="instructions_panel"]
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="VSeparator2" type="VSeparator" parent="instructions_panel/HBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(15, 0)
|
||||||
|
layout_mode = 2
|
||||||
|
|
||||||
|
[node name="cards_remaining" type="Label" parent="instructions_panel/HBoxContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_vertical = 0
|
||||||
|
text = "Collect Mementos to fill the mind-board."
|
||||||
horizontal_alignment = 1
|
horizontal_alignment = 1
|
||||||
vertical_alignment = 1
|
vertical_alignment = 1
|
||||||
|
|
||||||
[node name="disclaimer" type="Label" parent="."]
|
[node name="VSeparator" type="VSeparator" parent="instructions_panel/HBoxContainer"]
|
||||||
modulate = Color(0, 0, 0, 1)
|
custom_minimum_size = Vector2(15, 0)
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 0
|
|
||||||
theme_override_font_sizes/font_size = 40
|
|
||||||
text = "alpha: Gamepad compatibility is limited. Using a mouse to move cards is advised."
|
|
||||||
horizontal_alignment = 1
|
|
||||||
vertical_alignment = 1
|
|
||||||
|
|
|
||||||
|
|
@ -51,6 +51,10 @@ var is_dragged: bool = false:
|
||||||
|
|
||||||
var mouse_offset: Vector2
|
var mouse_offset: Vector2
|
||||||
|
|
||||||
|
@onready var diameter = $CollisionShape2D.shape.height
|
||||||
|
@export_range(1.0, 10.0) var bounce_speed: float = 8
|
||||||
|
var on_board = false
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
|
|
||||||
self.set_meta("type", "post-it") # set type information to find out if this node is a post-it
|
self.set_meta("type", "post-it") # set type information to find out if this node is a post-it
|
||||||
|
|
@ -63,8 +67,22 @@ func replace_with(postit: PostIt):
|
||||||
self.text = postit.text
|
self.text = postit.text
|
||||||
self.voice_line = postit.voice_line
|
self.voice_line = postit.voice_line
|
||||||
self.sibling = postit.sibling
|
self.sibling = postit.sibling
|
||||||
|
self.name = postit.name
|
||||||
|
for group in self.get_groups():
|
||||||
|
self.remove_from_group(group)
|
||||||
|
for group in postit.get_groups():
|
||||||
|
self.add_to_group(group)
|
||||||
|
|
||||||
|
func _process(delta: float) -> void:
|
||||||
|
if get_overlapping_areas().size() > 0 and is_dragable and on_board:
|
||||||
|
for area in get_overlapping_areas():
|
||||||
|
if area is Card or area is CardCollider:
|
||||||
|
if area is CardCollider:
|
||||||
|
position += area.direction * delta
|
||||||
|
elif not area.highlighted or self.highlighted:
|
||||||
|
var diff:Vector2 = position - area.position
|
||||||
|
position -= diff.normalized() * ((diff.length()-diameter)/diameter) * bounce_speed * (delta/(1.0/60))
|
||||||
|
|
||||||
func _process(_delta: float) -> void:
|
|
||||||
_move_post_it()
|
_move_post_it()
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -91,7 +109,7 @@ func _on_input_event(viewport, event, shape_idx):
|
||||||
|
|
||||||
if event is InputEventMouseButton:
|
if event is InputEventMouseButton:
|
||||||
if event.button_index == MOUSE_BUTTON_LEFT:
|
if event.button_index == MOUSE_BUTTON_LEFT:
|
||||||
if is_dragable and "handle_mouse_button" in owner:
|
if "handle_mouse_button" in owner:
|
||||||
mouse_offset = (get_viewport().get_mouse_position() - global_position)
|
mouse_offset = (get_viewport().get_mouse_position() - global_position)
|
||||||
owner.handle_mouse_button(self, event)
|
owner.handle_mouse_button(self, event)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ extends CenterContainer
|
||||||
enum {
|
enum {
|
||||||
INI,
|
INI,
|
||||||
CARDS,
|
CARDS,
|
||||||
|
CARDS_SELECTED,
|
||||||
TRANSITION,
|
TRANSITION,
|
||||||
POSTS,
|
POSTS,
|
||||||
DONE
|
DONE
|
||||||
|
|
@ -24,9 +25,11 @@ var has_stage = false:
|
||||||
self.hide()
|
self.hide()
|
||||||
has_stage = focus
|
has_stage = focus
|
||||||
|
|
||||||
|
var _input_locked = true
|
||||||
var selection_state = INI
|
var selection_state = INI:
|
||||||
var input_locked = true
|
set(state):
|
||||||
|
selection_state = state
|
||||||
|
_input_locked = !(state == CARDS or state == POSTS)
|
||||||
|
|
||||||
var anim_players:Array
|
var anim_players:Array
|
||||||
var curr_selection_id: int = -1:
|
var curr_selection_id: int = -1:
|
||||||
|
|
@ -51,6 +54,8 @@ signal cards_picked(Array)
|
||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready():
|
func _ready():
|
||||||
|
if get_parent() == get_tree().root: selection_state = CARDS
|
||||||
|
|
||||||
var card_controls = $cards.get_children()
|
var card_controls = $cards.get_children()
|
||||||
for control in card_controls:
|
for control in card_controls:
|
||||||
options.append(control.get_child(1))
|
options.append(control.get_child(1))
|
||||||
|
|
@ -58,13 +63,12 @@ func _ready():
|
||||||
|
|
||||||
fill_card_slots(0)
|
fill_card_slots(0)
|
||||||
|
|
||||||
input_locked = false
|
|
||||||
|
|
||||||
func fill_card_slots(id: int):
|
func fill_card_slots(id: int):
|
||||||
for i in range($cards.get_child_count()):
|
for i in range($cards.get_child_count()):
|
||||||
var card:Card = $cards.get_child(i).get_child(1)
|
var card:Card = $cards.get_child(i).get_child(1)
|
||||||
card.replace_with(debug_board.get_child(id).get_child(i) as Card)
|
card.replace_with(debug_board.get_child(id).get_child(i) as Card)
|
||||||
card.connect("mouse_entered", Callable(self, "get_highlight"))
|
card.connect("mouse_entered", Callable(self, "get_highlight"))
|
||||||
|
card.owner = self
|
||||||
|
|
||||||
func fill_post_slots():
|
func fill_post_slots():
|
||||||
var post_its: Array[PostIt] = []
|
var post_its: Array[PostIt] = []
|
||||||
|
|
@ -74,9 +78,10 @@ func fill_post_slots():
|
||||||
|
|
||||||
for i in range(post_its.size()):
|
for i in range(post_its.size()):
|
||||||
options[i].replace_with(post_its[i])
|
options[i].replace_with(post_its[i])
|
||||||
|
options[i].owner = self
|
||||||
|
|
||||||
func _unhandled_input(event):
|
func _unhandled_input(event):
|
||||||
if has_stage and not input_locked:
|
if has_stage and not _input_locked:
|
||||||
if event.is_action_pressed("ui_up") or event.is_action_pressed("ui_left") or event.is_action_pressed("ui_focus_next"):
|
if event.is_action_pressed("ui_up") or event.is_action_pressed("ui_left") or event.is_action_pressed("ui_focus_next"):
|
||||||
curr_selection_id -= 1
|
curr_selection_id -= 1
|
||||||
elif event.is_action_pressed("ui_down") or event.is_action_pressed("ui_right") or event.is_action_pressed("ui_focus_prev"):
|
elif event.is_action_pressed("ui_down") or event.is_action_pressed("ui_right") or event.is_action_pressed("ui_focus_prev"):
|
||||||
|
|
@ -91,7 +96,10 @@ func pick(id: int):
|
||||||
curr_selection_id = 0
|
curr_selection_id = 0
|
||||||
return
|
return
|
||||||
|
|
||||||
input_locked = true
|
if selection_state == CARDS:
|
||||||
|
selection_state = CARDS_SELECTED
|
||||||
|
elif selection_state == POSTS:
|
||||||
|
selection_state = DONE
|
||||||
|
|
||||||
anim_players[id].play("pick")
|
anim_players[id].play("pick")
|
||||||
var yield_to = anim_players[id].animation_finished
|
var yield_to = anim_players[id].animation_finished
|
||||||
|
|
@ -123,7 +131,7 @@ func pick(id: int):
|
||||||
|
|
||||||
await yield_to
|
await yield_to
|
||||||
|
|
||||||
if selection_state == CARDS:
|
if selection_state == CARDS_SELECTED:
|
||||||
selection_state = TRANSITION
|
selection_state = TRANSITION
|
||||||
options = []
|
options = []
|
||||||
anim_players = []
|
anim_players = []
|
||||||
|
|
@ -137,8 +145,7 @@ func pick(id: int):
|
||||||
|
|
||||||
await anim_players[0].animation_finished
|
await anim_players[0].animation_finished
|
||||||
selection_state = POSTS
|
selection_state = POSTS
|
||||||
input_locked = false
|
elif selection_state == DONE:
|
||||||
else:
|
|
||||||
var out_str:Array[String] = []
|
var out_str:Array[String] = []
|
||||||
for card in output:
|
for card in output:
|
||||||
out_str.append(card.name)
|
out_str.append(card.name)
|
||||||
|
|
@ -146,15 +153,14 @@ func pick(id: int):
|
||||||
State.leave_stage(self)
|
State.leave_stage(self)
|
||||||
|
|
||||||
func handle_hover(new_highlight):
|
func handle_hover(new_highlight):
|
||||||
if not input_locked:
|
if not _input_locked:
|
||||||
curr_selection_id = options.find(new_highlight)
|
curr_selection_id = options.find(new_highlight)
|
||||||
|
|
||||||
func handle_mouse_button(new_selection: Node, button_event: InputEventMouseButton):
|
func handle_mouse_button(new_selection: Node, button_event: InputEventMouseButton):
|
||||||
if not input_locked:
|
if not _input_locked:
|
||||||
if button_event.button_index == MOUSE_BUTTON_LEFT and button_event.pressed:
|
if button_event.button_index == MOUSE_BUTTON_LEFT and button_event.pressed:
|
||||||
pick(options.find(new_selection))
|
pick(options.find(new_selection))
|
||||||
|
|
||||||
|
|
||||||
func scene_finished(id: int):
|
func scene_finished(id: int):
|
||||||
fill_card_slots(id)
|
fill_card_slots(id)
|
||||||
State.transition_stage_to(self)
|
State.transition_stage_to(self)
|
||||||
|
|
|
||||||
|
|
@ -1531,7 +1531,7 @@ offset_top = -150.0
|
||||||
offset_bottom = -150.0
|
offset_bottom = -150.0
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="postIts/postIt_1"]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="postIts/postIt_1"]
|
||||||
root_node = NodePath("../post-it")
|
root_node = NodePath(".")
|
||||||
autoplay = "ini"
|
autoplay = "ini"
|
||||||
libraries = {
|
libraries = {
|
||||||
"": SubResource("AnimationLibrary_ga4dm")
|
"": SubResource("AnimationLibrary_ga4dm")
|
||||||
|
|
@ -1547,7 +1547,7 @@ offset_top = -50.0
|
||||||
offset_bottom = -50.0
|
offset_bottom = -50.0
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="postIts/postIt_2"]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="postIts/postIt_2"]
|
||||||
root_node = NodePath("../post-it")
|
root_node = NodePath(".")
|
||||||
autoplay = "ini"
|
autoplay = "ini"
|
||||||
libraries = {
|
libraries = {
|
||||||
"": SubResource("AnimationLibrary_sxnmi")
|
"": SubResource("AnimationLibrary_sxnmi")
|
||||||
|
|
@ -1563,7 +1563,7 @@ offset_top = 50.0
|
||||||
offset_bottom = 50.0
|
offset_bottom = 50.0
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="postIts/postIt_3"]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="postIts/postIt_3"]
|
||||||
root_node = NodePath("../post-it")
|
root_node = NodePath(".")
|
||||||
autoplay = "ini"
|
autoplay = "ini"
|
||||||
libraries = {
|
libraries = {
|
||||||
"": SubResource("AnimationLibrary_xs06v")
|
"": SubResource("AnimationLibrary_xs06v")
|
||||||
|
|
@ -1579,7 +1579,7 @@ offset_top = 150.0
|
||||||
offset_bottom = 150.0
|
offset_bottom = 150.0
|
||||||
|
|
||||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="postIts/postIt_4"]
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="postIts/postIt_4"]
|
||||||
root_node = NodePath("../post-it")
|
root_node = NodePath(".")
|
||||||
autoplay = "ini"
|
autoplay = "ini"
|
||||||
libraries = {
|
libraries = {
|
||||||
"": SubResource("AnimationLibrary_tdl1s")
|
"": SubResource("AnimationLibrary_tdl1s")
|
||||||
|
|
@ -1589,5 +1589,6 @@ libraries = {
|
||||||
text = "Post 4"
|
text = "Post 4"
|
||||||
|
|
||||||
[node name="board of devs" parent="." instance=ExtResource("4_1kvte")]
|
[node name="board of devs" parent="." instance=ExtResource("4_1kvte")]
|
||||||
|
process_mode = 4
|
||||||
visible = false
|
visible = false
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
|
|
||||||
|
|
@ -162,6 +162,7 @@ func _input(event:InputEvent):
|
||||||
if event.button_index == MOUSE_BUTTON_RIGHT and event.pressed:
|
if event.button_index == MOUSE_BUTTON_RIGHT and event.pressed:
|
||||||
if !Input.is_mouse_button_pressed(MOUSE_BUTTON_LEFT):
|
if !Input.is_mouse_button_pressed(MOUSE_BUTTON_LEFT):
|
||||||
State.take_stage(self, true)
|
State.take_stage(self, true)
|
||||||
|
get_tree().call_group("interactables", "collapse")
|
||||||
|
|
||||||
func play_scene(id: int):
|
func play_scene(id: int):
|
||||||
if id == Scenes.id.YOUTH_DRAEVEN:
|
if id == Scenes.id.YOUTH_DRAEVEN:
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,6 @@ grow_vertical = 2
|
||||||
texture = ExtResource("1_0oiki")
|
texture = ExtResource("1_0oiki")
|
||||||
|
|
||||||
[node name="youth room" parent="." instance=ExtResource("2_23ia3")]
|
[node name="youth room" parent="." instance=ExtResource("2_23ia3")]
|
||||||
visible = false
|
|
||||||
|
|
||||||
[node name="Main Menu" type="Panel" parent="."]
|
[node name="Main Menu" type="Panel" parent="."]
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
|
|
@ -77,6 +76,7 @@ offset_bottom = 35.0
|
||||||
script = SubResource("GDScript_8sq0u")
|
script = SubResource("GDScript_8sq0u")
|
||||||
|
|
||||||
[node name="Startup Menu" parent="." instance=ExtResource("1_v5rpm")]
|
[node name="Startup Menu" parent="." instance=ExtResource("1_v5rpm")]
|
||||||
|
visible = false
|
||||||
|
|
||||||
[node name="Disclaimer" parent="." instance=ExtResource("7_t45fc")]
|
[node name="Disclaimer" parent="." instance=ExtResource("7_t45fc")]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,10 @@ func leave_stage(actor:Object, dropObject: bool = false) -> bool:
|
||||||
|
|
||||||
stage_list.erase(actor)
|
stage_list.erase(actor)
|
||||||
|
|
||||||
stage_list.front().has_stage = true
|
if stage_list != []:
|
||||||
|
stage_list.front().has_stage = true
|
||||||
|
else:
|
||||||
|
get_tree().quit()
|
||||||
|
|
||||||
return false
|
return false
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue