Compare commits
No commits in common. "899760f97b4b5cd4c2ef5fd52d76440979ea970c" and "99c4302a52d43728f7524060012a7c762a2c2056" have entirely different histories.
899760f97b
...
99c4302a52
|
|
@ -11,7 +11,7 @@ enum id {
|
||||||
}
|
}
|
||||||
|
|
||||||
@export var station_name: StringName = ""
|
@export var station_name: StringName = ""
|
||||||
@export var memory: Scenes.id = Scenes.id.YOUTH_DRAVEN
|
@export var memory: Scenes.id = Scenes.id.YOUTH_DRAEVEN
|
||||||
@export_file("*.tscn") var station_path: String = ""
|
@export_file("*.tscn") var station_path: String = ""
|
||||||
@export var arriving_lines: Dictionary[TrainLine.id, float]
|
@export var arriving_lines: Dictionary[TrainLine.id, float]
|
||||||
@export var departing_lines: Dictionary[TrainLine.id, float]
|
@export var departing_lines: Dictionary[TrainLine.id, float]
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="oggvorbisstr"
|
||||||
|
type="AudioStreamOggVorbis"
|
||||||
|
uid="uid://d1r1tvb1paup4"
|
||||||
|
path="res://.godot/imported/draeven.ogg-f2cd990bd1c11bdd8b59fe3f4d2ec30b.oggvorbisstr"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://base-environments/youth_room/audio/draeven.ogg"
|
||||||
|
dest_files=["res://.godot/imported/draeven.ogg-f2cd990bd1c11bdd8b59fe3f4d2ec30b.oggvorbisstr"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
loop=false
|
||||||
|
loop_offset=0
|
||||||
|
bpm=0
|
||||||
|
beat_count=0
|
||||||
|
bar_beats=4
|
||||||
|
|
@ -1,19 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="oggvorbisstr"
|
|
||||||
type="AudioStreamOggVorbis"
|
|
||||||
uid="uid://d1r1tvb1paup4"
|
|
||||||
path="res://.godot/imported/draven.ogg-0b0fce547c634a7f56f440b73b703e77.oggvorbisstr"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://base-environments/youth_room/audio/draven.ogg"
|
|
||||||
dest_files=["res://.godot/imported/draven.ogg-0b0fce547c634a7f56f440b73b703e77.oggvorbisstr"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
loop=false
|
|
||||||
loop_offset=0
|
|
||||||
bpm=0
|
|
||||||
beat_count=0
|
|
||||||
bar_beats=4
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
[ext_resource type="PackedScene" uid="uid://dvwuhobhka78d" path="res://ui/skip_control/skip_control.tscn" id="5_ddnfo"]
|
[ext_resource type="PackedScene" uid="uid://dvwuhobhka78d" path="res://ui/skip_control/skip_control.tscn" id="5_ddnfo"]
|
||||||
[ext_resource type="AudioStream" uid="uid://cvlqvlrc6lqru" path="res://base-environments/youth_room/audio/draven-de.wav" id="5_f6vs7"]
|
[ext_resource type="AudioStream" uid="uid://cvlqvlrc6lqru" path="res://base-environments/youth_room/audio/draven-de.wav" id="5_f6vs7"]
|
||||||
[ext_resource type="AudioStream" uid="uid://c4clagpd3ril0" path="res://base-environments/youth_room/audio/Ambient 5.ogg" id="6_7f2et"]
|
[ext_resource type="AudioStream" uid="uid://c4clagpd3ril0" path="res://base-environments/youth_room/audio/Ambient 5.ogg" id="6_7f2et"]
|
||||||
[ext_resource type="AudioStream" uid="uid://d1r1tvb1paup4" path="res://base-environments/youth_room/audio/draven.ogg" id="7_nbb1o"]
|
[ext_resource type="AudioStream" uid="uid://d1r1tvb1paup4" path="res://base-environments/youth_room/audio/draeven.ogg" id="7_nbb1o"]
|
||||||
[ext_resource type="Script" uid="uid://c1oub0cs7cph6" path="res://dev-util/stereo-switch.gd" id="8_hxlqo"]
|
[ext_resource type="Script" uid="uid://c1oub0cs7cph6" path="res://dev-util/stereo-switch.gd" id="8_hxlqo"]
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_ytihj"]
|
[sub_resource type="Animation" id="Animation_ytihj"]
|
||||||
|
|
@ -86,7 +86,7 @@ tracks/5/keys = {
|
||||||
tracks/6/type = "value"
|
tracks/6/type = "value"
|
||||||
tracks/6/imported = false
|
tracks/6/imported = false
|
||||||
tracks/6/enabled = true
|
tracks/6/enabled = true
|
||||||
tracks/6/path = NodePath("../../../AnimationPlayer/Music:stream")
|
tracks/6/path = NodePath("%AnimationPlayer/Music:stream")
|
||||||
tracks/6/interp = 1
|
tracks/6/interp = 1
|
||||||
tracks/6/loop_wrap = true
|
tracks/6/loop_wrap = true
|
||||||
tracks/6/keys = {
|
tracks/6/keys = {
|
||||||
|
|
@ -98,7 +98,7 @@ tracks/6/keys = {
|
||||||
tracks/7/type = "value"
|
tracks/7/type = "value"
|
||||||
tracks/7/imported = false
|
tracks/7/imported = false
|
||||||
tracks/7/enabled = true
|
tracks/7/enabled = true
|
||||||
tracks/7/path = NodePath("../../../AnimationPlayer/Music:playing")
|
tracks/7/path = NodePath("%AnimationPlayer/Music:playing")
|
||||||
tracks/7/interp = 1
|
tracks/7/interp = 1
|
||||||
tracks/7/loop_wrap = true
|
tracks/7/loop_wrap = true
|
||||||
tracks/7/keys = {
|
tracks/7/keys = {
|
||||||
|
|
@ -114,7 +114,7 @@ length = 151.0
|
||||||
tracks/0/type = "audio"
|
tracks/0/type = "audio"
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
tracks/0/enabled = true
|
tracks/0/enabled = true
|
||||||
tracks/0/path = NodePath("../../../AnimationPlayer/Text")
|
tracks/0/path = NodePath("%AnimationPlayer/Text")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
|
|
@ -230,7 +230,7 @@ tracks/6/keys = {
|
||||||
tracks/7/type = "value"
|
tracks/7/type = "value"
|
||||||
tracks/7/imported = false
|
tracks/7/imported = false
|
||||||
tracks/7/enabled = true
|
tracks/7/enabled = true
|
||||||
tracks/7/path = NodePath("../../../AnimationPlayer/Music:stream")
|
tracks/7/path = NodePath("%AnimationPlayer/Music:stream")
|
||||||
tracks/7/interp = 1
|
tracks/7/interp = 1
|
||||||
tracks/7/loop_wrap = true
|
tracks/7/loop_wrap = true
|
||||||
tracks/7/keys = {
|
tracks/7/keys = {
|
||||||
|
|
@ -260,7 +260,7 @@ tracks/0/keys = {
|
||||||
tracks/1/type = "value"
|
tracks/1/type = "value"
|
||||||
tracks/1/imported = false
|
tracks/1/imported = false
|
||||||
tracks/1/enabled = true
|
tracks/1/enabled = true
|
||||||
tracks/1/path = NodePath("../../../AnimationPlayer/Music:playing")
|
tracks/1/path = NodePath("%AnimationPlayer/Music:playing")
|
||||||
tracks/1/interp = 1
|
tracks/1/interp = 1
|
||||||
tracks/1/loop_wrap = true
|
tracks/1/loop_wrap = true
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
|
|
@ -276,7 +276,7 @@ length = 150.0
|
||||||
tracks/0/type = "audio"
|
tracks/0/type = "audio"
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
tracks/0/enabled = true
|
tracks/0/enabled = true
|
||||||
tracks/0/path = NodePath("../../../AnimationPlayer/Text")
|
tracks/0/path = NodePath("%AnimationPlayer/Text")
|
||||||
tracks/0/interp = 1
|
tracks/0/interp = 1
|
||||||
tracks/0/loop_wrap = true
|
tracks/0/loop_wrap = true
|
||||||
tracks/0/keys = {
|
tracks/0/keys = {
|
||||||
|
|
@ -380,7 +380,7 @@ tracks/6/keys = {
|
||||||
tracks/7/type = "value"
|
tracks/7/type = "value"
|
||||||
tracks/7/imported = false
|
tracks/7/imported = false
|
||||||
tracks/7/enabled = true
|
tracks/7/enabled = true
|
||||||
tracks/7/path = NodePath("../../../AnimationPlayer/Music:stream")
|
tracks/7/path = NodePath("%AnimationPlayer/Music:stream")
|
||||||
tracks/7/interp = 1
|
tracks/7/interp = 1
|
||||||
tracks/7/loop_wrap = true
|
tracks/7/loop_wrap = true
|
||||||
tracks/7/keys = {
|
tracks/7/keys = {
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ func start_room():
|
||||||
%UI.show()
|
%UI.show()
|
||||||
$logic/PlayerController.process_mode = Node.PROCESS_MODE_INHERIT
|
$logic/PlayerController.process_mode = Node.PROCESS_MODE_INHERIT
|
||||||
|
|
||||||
if not Scenes.is_sequence_repeating(Scenes.id.YOUTH_DRAVEN):
|
if not Scenes.is_sequence_repeating(Scenes.id.YOUTH_DRAEVEN):
|
||||||
# Play intro scene directly (not triggered by CollectableUi)
|
# Play intro scene directly (not triggered by CollectableUi)
|
||||||
await _play_intro_scene()
|
await _play_intro_scene()
|
||||||
else:
|
else:
|
||||||
|
|
@ -37,7 +37,7 @@ func _play_intro_scene() -> void:
|
||||||
# Play the story (StoryPlayable handles its own visibility via animations)
|
# Play the story (StoryPlayable handles its own visibility via animations)
|
||||||
await intro.play_story()
|
await intro.play_story()
|
||||||
|
|
||||||
Scenes.end_sequence(Scenes.id.YOUTH_DRAVEN)
|
Scenes.end_sequence(Scenes.id.YOUTH_DRAEVEN)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -426,7 +426,7 @@ tracks/1/keys = {
|
||||||
}
|
}
|
||||||
|
|
||||||
[sub_resource type="Animation" id="Animation_1kp3w"]
|
[sub_resource type="Animation" id="Animation_1kp3w"]
|
||||||
resource_name = "draven"
|
resource_name = "draeven"
|
||||||
length = 160.0
|
length = 160.0
|
||||||
tracks/0/type = "value"
|
tracks/0/type = "value"
|
||||||
tracks/0/imported = false
|
tracks/0/imported = false
|
||||||
|
|
@ -826,7 +826,7 @@ tracks/1/keys = {
|
||||||
_data = {
|
_data = {
|
||||||
&"RESET": SubResource("Animation_nwry8"),
|
&"RESET": SubResource("Animation_nwry8"),
|
||||||
&"childhood_music": SubResource("Animation_ea6x8"),
|
&"childhood_music": SubResource("Animation_ea6x8"),
|
||||||
&"draven": SubResource("Animation_1kp3w"),
|
&"draeven": SubResource("Animation_1kp3w"),
|
||||||
&"intro": SubResource("Animation_1pmhi"),
|
&"intro": SubResource("Animation_1pmhi"),
|
||||||
&"jui_jutsu": SubResource("Animation_dot4p"),
|
&"jui_jutsu": SubResource("Animation_dot4p"),
|
||||||
&"jui_jutsu_music": SubResource("Animation_corra"),
|
&"jui_jutsu_music": SubResource("Animation_corra"),
|
||||||
|
|
|
||||||
|
|
@ -24,8 +24,8 @@ func _on_scene_starting(scene_id: Scenes.id, _repeat: bool) -> void:
|
||||||
_play_chest_animation()
|
_play_chest_animation()
|
||||||
Scenes.id.YOUTH_JUI_JUTSU:
|
Scenes.id.YOUTH_JUI_JUTSU:
|
||||||
play("jui_jutsu_music")
|
play("jui_jutsu_music")
|
||||||
Scenes.id.YOUTH_DRAVEN:
|
Scenes.id.YOUTH_DRAEVEN:
|
||||||
play("draven")
|
play("draeven")
|
||||||
|
|
||||||
func _on_scene_finished(scene_id: Scenes.id, _repeat: bool) -> void:
|
func _on_scene_finished(scene_id: Scenes.id, _repeat: bool) -> void:
|
||||||
print_debug("YouthRoomScenePlayer._on_scene_finished(%s)" % Scenes.id.keys()[scene_id])
|
print_debug("YouthRoomScenePlayer._on_scene_finished(%s)" % Scenes.id.keys()[scene_id])
|
||||||
|
|
|
||||||
|
|
@ -13,46 +13,46 @@ grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
script = ExtResource("1_ols6o")
|
script = ExtResource("1_ols6o")
|
||||||
|
|
||||||
[node name="draven" type="Control" parent="."]
|
[node name="draeven" type="Control" parent="."]
|
||||||
anchors_preset = 0
|
anchors_preset = 0
|
||||||
offset_left = 190.0
|
offset_left = 190.0
|
||||||
offset_top = 141.0
|
offset_top = 141.0
|
||||||
offset_right = 230.0
|
offset_right = 230.0
|
||||||
offset_bottom = 181.0
|
offset_bottom = 181.0
|
||||||
|
|
||||||
[node name="c_out-of-world" parent="draven" instance=ExtResource("1_xrckx")]
|
[node name="c_out-of-world" parent="draeven" instance=ExtResource("1_xrckx")]
|
||||||
position = Vector2(2, -6)
|
position = Vector2(2, -6)
|
||||||
text = "I feel like I am not from of this world"
|
text = "I feel like I am not from of this world"
|
||||||
|
|
||||||
[node name="p_unique" parent="draven/c_out-of-world" groups=["c_comic_heroes", "c_confusion", "c_hit", "c_homework", "c_joy", "c_out-of-world", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_unique" parent="draeven/c_out-of-world" groups=["c_comic_heroes", "c_confusion", "c_hit", "c_homework", "c_joy", "c_out-of-world", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "I like being unique like that"
|
text = "I like being unique like that"
|
||||||
|
|
||||||
[node name="p_few_friends" parent="draven/c_out-of-world" groups=["c_comic_heroes", "c_fighting", "c_joy", "c_out-of-world", "c_rejection", "c_teachers", "c_teasing"] instance=ExtResource("2_ucudl")]
|
[node name="p_few_friends" parent="draeven/c_out-of-world" groups=["c_comic_heroes", "c_fighting", "c_joy", "c_out-of-world", "c_rejection", "c_teachers", "c_teasing"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "I am thankful for the few friends that get me"
|
text = "I am thankful for the few friends that get me"
|
||||||
|
|
||||||
[node name="c_rejection" parent="draven" instance=ExtResource("1_xrckx")]
|
[node name="c_rejection" parent="draeven" instance=ExtResource("1_xrckx")]
|
||||||
position = Vector2(9, 294)
|
position = Vector2(9, 294)
|
||||||
text = "I fear being rejected"
|
text = "I fear being rejected"
|
||||||
|
|
||||||
[node name="p_friends" parent="draven/c_rejection" groups=["c_boy_stuff", "c_comic_heroes", "c_fighting", "c_homework", "c_joy", "c_out-of-world", "c_rejection", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_friends" parent="draeven/c_rejection" groups=["c_boy_stuff", "c_comic_heroes", "c_fighting", "c_homework", "c_joy", "c_out-of-world", "c_rejection", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "that makes it hard to find friends"
|
text = "that makes it hard to find friends"
|
||||||
|
|
||||||
[node name="p_laughed" parent="draven/c_rejection" groups=["c_boy_stuff", "c_comic_heroes", "c_confusion", "c_homework", "c_joy", "c_rejection", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_laughed" parent="draeven/c_rejection" groups=["c_boy_stuff", "c_comic_heroes", "c_confusion", "c_homework", "c_joy", "c_rejection", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "I'm afraid I will just get laughed at"
|
text = "I'm afraid I will just get laughed at"
|
||||||
|
|
||||||
[node name="c_confusion" parent="draven" instance=ExtResource("1_xrckx")]
|
[node name="c_confusion" parent="draeven" instance=ExtResource("1_xrckx")]
|
||||||
position = Vector2(11, 593)
|
position = Vector2(11, 593)
|
||||||
text = "I am just too many things at once"
|
text = "I am just too many things at once"
|
||||||
|
|
||||||
[node name="p_inner_conflict" parent="draven/c_confusion" groups=["c_boy_stuff", "c_confusion", "c_fighting", "c_homework", "c_rejection", "c_teasing"] instance=ExtResource("2_ucudl")]
|
[node name="p_inner_conflict" parent="draeven/c_confusion" groups=["c_boy_stuff", "c_confusion", "c_fighting", "c_homework", "c_rejection", "c_teasing"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 50)
|
position = Vector2(-32, 50)
|
||||||
text = "it is just so overwhelming for me"
|
text = "it is just so overwhelming for me"
|
||||||
|
|
||||||
[node name="p_outer_conflict" parent="draven/c_confusion" groups=["c_boy_stuff", "c_confusion", "c_fighting", "c_hit", "c_homework", "c_joy", "c_out-of-world", "c_rejection", "c_teachers"] instance=ExtResource("2_ucudl")]
|
[node name="p_outer_conflict" parent="draeven/c_confusion" groups=["c_boy_stuff", "c_confusion", "c_fighting", "c_hit", "c_homework", "c_joy", "c_out-of-world", "c_rejection", "c_teachers"] instance=ExtResource("2_ucudl")]
|
||||||
position = Vector2(-32, 140)
|
position = Vector2(-32, 140)
|
||||||
text = "this is just too much for others"
|
text = "this is just too much for others"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,6 @@
|
||||||
class_name HardcodedCards extends Control
|
class_name HardCards extends Control
|
||||||
|
|
||||||
@onready var card_prefab : PackedScene = preload("res://logic-scenes/board/card.tscn")
|
static var source_dicts: Array[Dictionary] = [
|
||||||
@onready var note_prefab : PackedScene = preload("res://logic-scenes/board/sticky-note.tscn")
|
|
||||||
|
|
||||||
var source_dicts: Array[Dictionary] = [
|
|
||||||
{
|
{
|
||||||
"c_out_of_world": ["p_unique", "p_few_friends", []],
|
"c_out_of_world": ["p_unique", "p_few_friends", []],
|
||||||
"c_rejection": ["p_finding_friends", "p_laughed_at", []],
|
"c_rejection": ["p_finding_friends", "p_laughed_at", []],
|
||||||
|
|
@ -66,13 +63,13 @@ var source_dicts: Array[Dictionary] = [
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
var id_reference: Dictionary[StringName, StringName] = generate_id_reference(true, true)
|
static var id_reference: Dictionary[StringName, StringName] = generate_id_reference(true, true)
|
||||||
|
|
||||||
var card_id_reference: Dictionary[StringName, StringName] = generate_id_reference(true, false)
|
static var card_id_reference: Dictionary[StringName, StringName] = generate_id_reference(true, false)
|
||||||
var sticky_id_reference: Dictionary[StringName, StringName] = generate_id_reference(false, true)
|
static var sticky_id_reference: Dictionary[StringName, StringName] = generate_id_reference(false, true)
|
||||||
var obscure_reference: Dictionary[StringName, StringName] = generate_obscure_reference()
|
static var obscure_reference: Dictionary[StringName, StringName] = generate_obscure_reference()
|
||||||
|
|
||||||
func generate_id_reference(include_cards: bool, include_sticky: bool) -> Dictionary[StringName, StringName]:
|
static func generate_id_reference(include_cards: bool, include_sticky: bool) -> Dictionary[StringName, StringName]:
|
||||||
var out:Dictionary[StringName, StringName] = {}
|
var out:Dictionary[StringName, StringName] = {}
|
||||||
|
|
||||||
for id in range(source_dicts.size()):
|
for id in range(source_dicts.size()):
|
||||||
|
|
@ -86,7 +83,7 @@ func generate_id_reference(include_cards: bool, include_sticky: bool) -> Diction
|
||||||
|
|
||||||
return out
|
return out
|
||||||
|
|
||||||
func generate_obscure_reference():
|
static func generate_obscure_reference():
|
||||||
var out:Dictionary[StringName, StringName] = {}
|
var out:Dictionary[StringName, StringName] = {}
|
||||||
|
|
||||||
randomize()
|
randomize()
|
||||||
|
|
@ -103,7 +100,7 @@ func generate_obscure_reference():
|
||||||
return out
|
return out
|
||||||
|
|
||||||
|
|
||||||
func get_child_names_of(parent_id: StringName) -> Array[StringName]:
|
static func get_child_names_of(parent_id: StringName) -> Array[StringName]:
|
||||||
var out: Array[StringName]
|
var out: Array[StringName]
|
||||||
for child_name: StringName in id_reference.keys():
|
for child_name: StringName in id_reference.keys():
|
||||||
if id_reference[child_name].contains(parent_id):
|
if id_reference[child_name].contains(parent_id):
|
||||||
|
|
@ -112,10 +109,10 @@ func get_child_names_of(parent_id: StringName) -> Array[StringName]:
|
||||||
return out
|
return out
|
||||||
|
|
||||||
#FIXME: enhance typing!
|
#FIXME: enhance typing!
|
||||||
func get_children_of(parent_id: StringName) -> Array:
|
static func get_children_of(parent_id: StringName) -> Array:
|
||||||
return get_cards_by_name_array(get_child_names_of(parent_id))["sticky_notes"]
|
return get_cards_by_name_array(get_child_names_of(parent_id))["sticky_notes"]
|
||||||
|
|
||||||
func get_obscure_name(card_name: StringName):
|
static func get_obscure_name(card_name: StringName):
|
||||||
if State.obscure_logs and not OS.is_debug_build():
|
if State.obscure_logs and not OS.is_debug_build():
|
||||||
return obscure_reference[card_name]
|
return obscure_reference[card_name]
|
||||||
else:
|
else:
|
||||||
|
|
@ -181,18 +178,16 @@ func is_out_of_bounds(card: Card, rect: Rect2):
|
||||||
return true
|
return true
|
||||||
return false
|
return false
|
||||||
|
|
||||||
func get_cards_by_scene_id(id: int) -> Array:
|
static func get_cards_by_scene_id(id: int) -> Array:
|
||||||
var output:Array
|
var output:Array
|
||||||
|
|
||||||
for card_name in source_dicts[id].keys():
|
for card_name in source_dicts[id].keys():
|
||||||
var card := card_prefab.instantiate() as Card
|
output.append(Card.new(card_name, id_reference[card_name]))
|
||||||
card.init(card_name, id_reference[card_name]);
|
|
||||||
output.append(card)
|
|
||||||
|
|
||||||
return output
|
return output
|
||||||
|
|
||||||
# used to put cards on the dev board
|
# used to put cards on the dev board
|
||||||
func get_cards_by_name_array(names: Array[StringName]) -> Dictionary:
|
static func get_cards_by_name_array(names: Array[StringName]) -> Dictionary:
|
||||||
var output:Dictionary = {
|
var output:Dictionary = {
|
||||||
"cards": [],
|
"cards": [],
|
||||||
"sticky_notes": []
|
"sticky_notes": []
|
||||||
|
|
@ -206,21 +201,21 @@ func get_cards_by_name_array(names: Array[StringName]) -> Dictionary:
|
||||||
|
|
||||||
return output
|
return output
|
||||||
|
|
||||||
func create_from_id(id:StringName) -> Area2D:
|
static func create_from_id(id:StringName) -> Area2D:
|
||||||
var parsed: PackedStringArray = id.rsplit(".")
|
var parsed: PackedStringArray = id.rsplit(".")
|
||||||
|
|
||||||
|
#var helper := card_id_reference
|
||||||
|
#var keys := card_id_reference.keys()
|
||||||
|
|
||||||
if card_id_reference.values().has(id):
|
if card_id_reference.values().has(id):
|
||||||
var card := card_prefab.instantiate() as Card
|
return Card.new(parsed[1], id)
|
||||||
card.init(parsed[1], id);
|
|
||||||
return card
|
|
||||||
elif sticky_id_reference.values().has(id):
|
elif sticky_id_reference.values().has(id):
|
||||||
var note := note_prefab.instantiate() as StickyNote
|
return StickyNote.new(parsed[2], id)
|
||||||
note.init(parsed[2], id)
|
|
||||||
return note
|
|
||||||
else:
|
else:
|
||||||
push_error("Attempted to create Card or Sticky from non-existent ID!")
|
push_error("Attempted to create Card or Sticky from non-existent ID!")
|
||||||
return null
|
return null
|
||||||
|
|
||||||
func create_dev_board(parent: Control, _rect: Rect2) -> void:
|
static func create_dev_board(parent: Control, _rect: Rect2) -> void:
|
||||||
var scroll_container := ScrollContainer.new()
|
var scroll_container := ScrollContainer.new()
|
||||||
var panel := Panel.new()
|
var panel := Panel.new()
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,9 @@
|
||||||
[ext_resource type="Script" uid="uid://dysgoaaesqjbg" path="res://dev-util/hardcoded_cards.gd" id="1_5kg6w"]
|
[ext_resource type="Script" uid="uid://dysgoaaesqjbg" path="res://dev-util/hardcoded_cards.gd" id="1_5kg6w"]
|
||||||
|
|
||||||
[node name="Node2D" type="PanelContainer"]
|
[node name="Node2D" type="PanelContainer"]
|
||||||
process_mode = 4
|
|
||||||
visible = false
|
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
focus_behavior_recursive = 1
|
|
||||||
script = ExtResource("1_5kg6w")
|
script = ExtResource("1_5kg6w")
|
||||||
|
|
|
||||||
|
|
@ -564,8 +564,8 @@ To see its beauty. It helped a lot.,To see its beauty. It helped a lot.,Weil es
|
||||||
More Options,More Options,Mehr Optionen,,,
|
More Options,More Options,Mehr Optionen,,,
|
||||||
MementoLabel_collect,collect,einsammeln,,,
|
MementoLabel_collect,collect,einsammeln,,,
|
||||||
MementoLabel_CN,CN,CN,,,
|
MementoLabel_CN,CN,CN,,,
|
||||||
MementoLabel_Draven,,,,,
|
MementoLabel_Draeven,,,,,
|
||||||
MementoLabel_DravenCN,Alienation,Einsamkeit,,,
|
MementoLabel_DraevenCN,Alienation,Einsamkeit,,,
|
||||||
MementoLabel_Childhood,,,,,
|
MementoLabel_Childhood,,,,,
|
||||||
MementoLabel_ChildhoodCN,"Eating Issues, Alienation, Swearing","Probleme mit Essen, soziale Isolation, Fluchen",,,
|
MementoLabel_ChildhoodCN,"Eating Issues, Alienation, Swearing","Probleme mit Essen, soziale Isolation, Fluchen",,,
|
||||||
MementoLabel_Voice,,,,,
|
MementoLabel_Voice,,,,,
|
||||||
|
|
|
||||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -45,11 +45,10 @@ var has_stage := false:
|
||||||
sticky.is_dragged = false
|
sticky.is_dragged = false
|
||||||
visible = has_stage
|
visible = has_stage
|
||||||
|
|
||||||
|
@onready var dropzone = $HBoxContainer/dropzone
|
||||||
@onready var dropzone := $HBoxContainer/dropzone
|
|
||||||
var dropzone_size: Vector2
|
var dropzone_size: Vector2
|
||||||
@export var dropzone_padding:int = 100
|
@export var dropzone_padding:int = 100
|
||||||
@onready var sticky_note_container := $HBoxContainer/ScrollContainer/VBoxContainer
|
@onready var sticky_note_container = $HBoxContainer/ScrollContainer/VBoxContainer
|
||||||
@onready var current_context:int = NAVIGATE:
|
@onready var current_context:int = NAVIGATE:
|
||||||
set(context):
|
set(context):
|
||||||
#if current_context == ASSIGN and !context == ASSIGN:
|
#if current_context == ASSIGN and !context == ASSIGN:
|
||||||
|
|
@ -62,8 +61,8 @@ var dropzone_size: Vector2
|
||||||
# ASSIGN:
|
# ASSIGN:
|
||||||
# pass
|
# pass
|
||||||
current_context = context
|
current_context = context
|
||||||
@onready var instructions := $instructions_panel/HBoxContainer/cards_remaining
|
@onready var instructions = $instructions_panel/HBoxContainer/cards_remaining
|
||||||
@onready var timer := $Timer
|
@onready var timer: Timer = $Timer
|
||||||
|
|
||||||
var mementos_collected: int = 0:
|
var mementos_collected: int = 0:
|
||||||
set(mementos):
|
set(mementos):
|
||||||
|
|
@ -97,7 +96,7 @@ var mementos_collected: int = 0:
|
||||||
if current_context == ASSIGN and not focus_stickies:
|
if current_context == ASSIGN and not focus_stickies:
|
||||||
while not dropzone.get_child(current_dropzone_id) is Card:
|
while not dropzone.get_child(current_dropzone_id) is Card:
|
||||||
current_dropzone_id = (current_dropzone_id + (1 if not new_id == -1 else -1)) % dropzone.get_child_count()
|
current_dropzone_id = (current_dropzone_id + (1 if not new_id == -1 else -1)) % dropzone.get_child_count()
|
||||||
(dropzone.get_child(current_dropzone_id) as Card).preview_sticky_note(currently_active_node)
|
dropzone.get_child(current_dropzone_id).preview_sticky_note(currently_active_node)
|
||||||
|
|
||||||
elif not focus_stickies:
|
elif not focus_stickies:
|
||||||
currently_active_node = dropzone.get_child(current_dropzone_id)
|
currently_active_node = dropzone.get_child(current_dropzone_id)
|
||||||
|
|
@ -134,7 +133,7 @@ signal board_completed
|
||||||
|
|
||||||
# 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():
|
||||||
var size_reference := StickyNotePanel.new()
|
var size_reference = StickyNotePanel.new()
|
||||||
|
|
||||||
dropzone_size = get_viewport_rect().size - Vector2(dropzone_padding + size_reference.minimum_size.x, dropzone_padding)
|
dropzone_size = get_viewport_rect().size - Vector2(dropzone_padding + size_reference.minimum_size.x, dropzone_padding)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,8 +18,8 @@ var current_sticky_note: StickyNote = null
|
||||||
var wiggle_pos: float = 0
|
var wiggle_pos: float = 0
|
||||||
var wiggle_intensity: float = 0
|
var wiggle_intensity: float = 0
|
||||||
var noise: Noise = FastNoiseLite.new()
|
var noise: Noise = FastNoiseLite.new()
|
||||||
var wiggle_tween : Tween
|
var wiggle_tween
|
||||||
var scale_tween : Tween
|
var scale_tween
|
||||||
|
|
||||||
var transfor_arr: Array[Transform2D] = [
|
var transfor_arr: Array[Transform2D] = [
|
||||||
Transform2D(0.9, Vector2(-125, -83)),
|
Transform2D(0.9, Vector2(-125, -83)),
|
||||||
|
|
@ -37,6 +37,8 @@ var transfor_arr: Array[Transform2D] = [
|
||||||
@onready var label: Label = $Label
|
@onready var label: Label = $Label
|
||||||
@onready var background_sprite: AnimatedSprite2D = $AnimatedSprite2D
|
@onready var background_sprite: AnimatedSprite2D = $AnimatedSprite2D
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@export var picked_random: bool = false
|
@export var picked_random: bool = false
|
||||||
|
|
||||||
@export var wiggle_strength: float = 0.2
|
@export var wiggle_strength: float = 0.2
|
||||||
|
|
@ -46,7 +48,6 @@ var transfor_arr: Array[Transform2D] = [
|
||||||
@export var highlighted: bool = false:
|
@export var highlighted: bool = false:
|
||||||
set(highlight):
|
set(highlight):
|
||||||
if highlight != highlighted:
|
if highlight != highlighted:
|
||||||
printt(self, highlight)
|
|
||||||
highlighted = highlight
|
highlighted = highlight
|
||||||
|
|
||||||
if is_inside_tree() and is_node_ready():
|
if is_inside_tree() and is_node_ready():
|
||||||
|
|
@ -131,7 +132,7 @@ var sticky_note_position: Vector2 = Vector2(-66, 83)
|
||||||
var is_mouse_entered: bool = false
|
var is_mouse_entered: bool = false
|
||||||
var mouse_offset: Vector2
|
var mouse_offset: Vector2
|
||||||
|
|
||||||
func init(card_name: String = "card", own_id:StringName = "-1") -> void:
|
func _init(card_name: String = "card", own_id:StringName = "-1") -> void:
|
||||||
if card_name != "c_void":
|
if card_name != "c_void":
|
||||||
text = card_name
|
text = card_name
|
||||||
card_id = own_id
|
card_id = own_id
|
||||||
|
|
@ -140,6 +141,8 @@ func init(card_name: String = "card", own_id:StringName = "-1") -> void:
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
input_event.connect(_on_input_event)
|
input_event.connect(_on_input_event)
|
||||||
|
mouse_entered.connect(_on_mouse_entered)
|
||||||
|
mouse_exited.connect(_on_mouse_exited)
|
||||||
|
|
||||||
_handle_wiggle(0)
|
_handle_wiggle(0)
|
||||||
_on_text_updated.call_deferred()
|
_on_text_updated.call_deferred()
|
||||||
|
|
@ -148,6 +151,7 @@ func _on_text_updated():
|
||||||
if is_node_ready():
|
if is_node_ready():
|
||||||
var curr_frame := text.hash() % background_sprite.sprite_frames.get_frame_count(background_sprite.animation)
|
var curr_frame := text.hash() % background_sprite.sprite_frames.get_frame_count(background_sprite.animation)
|
||||||
background_sprite.frame = curr_frame
|
background_sprite.frame = curr_frame
|
||||||
|
background_sprite.scale = Vector2(0.6, 0.6)
|
||||||
|
|
||||||
if text == "":
|
if text == "":
|
||||||
if background_sprite.get_child_count() == 0:
|
if background_sprite.get_child_count() == 0:
|
||||||
|
|
@ -161,7 +165,7 @@ func _on_text_updated():
|
||||||
wiggle_pos = float(text.hash() % 100)
|
wiggle_pos = float(text.hash() % 100)
|
||||||
|
|
||||||
label.rotation = deg_to_rad(transfor_arr[curr_frame].get_rotation())
|
label.rotation = deg_to_rad(transfor_arr[curr_frame].get_rotation())
|
||||||
#label.position = transfor_arr[curr_frame].origin
|
label.position = transfor_arr[curr_frame].origin
|
||||||
|
|
||||||
burn_progress = burn_progress
|
burn_progress = burn_progress
|
||||||
|
|
||||||
|
|
@ -188,18 +192,25 @@ func _handle_wiggle(delta):
|
||||||
|
|
||||||
rotation = noise.get_noise_1d(wiggle_pos)*wiggle_strength
|
rotation = noise.get_noise_1d(wiggle_pos)*wiggle_strength
|
||||||
|
|
||||||
|
## Deprecated
|
||||||
|
func replace_with(card: Card):
|
||||||
|
self.text = card.text
|
||||||
|
self.compatible_sticky_notes = card.compatible_sticky_notes
|
||||||
|
self.own_sticky_notes = card.own_sticky_notes
|
||||||
|
self.voice_line = card.voice_line
|
||||||
|
self.name = card.name
|
||||||
|
|
||||||
func _input(event: InputEvent) -> void:
|
func _input(event: InputEvent) -> void:
|
||||||
if event is InputEventMouseButton:
|
if event is InputEventMouseButton:
|
||||||
if event.button_index == MOUSE_BUTTON_LEFT and not event.pressed:
|
if event.button_index == MOUSE_BUTTON_LEFT and not event.pressed:
|
||||||
is_dragged = false
|
is_dragged = false
|
||||||
|
|
||||||
func _on_mouse_entered() -> void:
|
func _on_mouse_entered():
|
||||||
is_mouse_entered = true
|
is_mouse_entered = true
|
||||||
if not Input.is_action_pressed("mouse_left"):
|
if not Input.is_action_pressed("mouse_left"):
|
||||||
# Do nothing if mouse hovers over sticky_note
|
# Do nothing if mouse hovers over sticky_note
|
||||||
if has_sticky_note_attached():
|
if has_sticky_note_attached():
|
||||||
if current_sticky_note and current_sticky_note.highlighted:
|
if current_sticky_note.highlighted:
|
||||||
return
|
return
|
||||||
highlighted = true
|
highlighted = true
|
||||||
if "handle_hover" in owner:
|
if "handle_hover" in owner:
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
[ext_resource type="Theme" uid="uid://d1jvpqykmpfyg" path="res://logic-scenes/themes/serif.theme" id="3_mdi7r"]
|
[ext_resource type="Theme" uid="uid://d1jvpqykmpfyg" path="res://logic-scenes/themes/serif.theme" id="3_mdi7r"]
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_mai6h"]
|
[sub_resource type="RectangleShape2D" id="RectangleShape2D_mai6h"]
|
||||||
size = Vector2(277, 231)
|
size = Vector2(511, 410)
|
||||||
|
|
||||||
[node name="Card" type="Area2D"]
|
[node name="Card" type="Area2D"]
|
||||||
script = ExtResource("1_emip0")
|
script = ExtResource("1_emip0")
|
||||||
|
|
@ -14,29 +14,25 @@ metadata/_custom_type_script = "uid://ddy8kb2hjvgss"
|
||||||
metadata/type = "card"
|
metadata/type = "card"
|
||||||
|
|
||||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||||
scale = Vector2(0.6, 0.6)
|
|
||||||
sprite_frames = ExtResource("2_mai6h")
|
sprite_frames = ExtResource("2_mai6h")
|
||||||
|
|
||||||
[node name="Label" type="Label" parent="."]
|
[node name="Label" type="Label" parent="."]
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
offset_left = -126.0
|
offset_left = -203.0
|
||||||
offset_top = -88.0
|
offset_top = -166.29167
|
||||||
offset_right = 136.0
|
offset_right = 224.0
|
||||||
offset_bottom = 89.95834
|
offset_bottom = 173.12498
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
theme = ExtResource("3_mdi7r")
|
theme = ExtResource("3_mdi7r")
|
||||||
theme_type_variation = &"card_text"
|
theme_type_variation = &"card_text"
|
||||||
text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. "
|
text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. "
|
||||||
horizontal_alignment = 1
|
horizontal_alignment = 1
|
||||||
vertical_alignment = 1
|
vertical_alignment = 1
|
||||||
autowrap_mode = 3
|
autowrap_mode = 3
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
position = Vector2(5.5, 0)
|
position = Vector2(11, -2)
|
||||||
shape = SubResource("RectangleShape2D_mai6h")
|
shape = SubResource("RectangleShape2D_mai6h")
|
||||||
|
|
||||||
[connection signal="mouse_entered" from="." to="." method="_on_mouse_entered"]
|
|
||||||
[connection signal="mouse_exited" from="." to="." method="_on_mouse_exited"]
|
|
||||||
|
|
|
||||||
|
|
@ -20,8 +20,6 @@ var position_locked: bool = false
|
||||||
|
|
||||||
signal transform_tween_finished
|
signal transform_tween_finished
|
||||||
|
|
||||||
@onready var background_sprite: AnimatedSprite2D = %BackgroundSprite
|
|
||||||
|
|
||||||
@export var text: String = "" :
|
@export var text: String = "" :
|
||||||
set (value):
|
set (value):
|
||||||
if is_node_ready():
|
if is_node_ready():
|
||||||
|
|
@ -29,6 +27,7 @@ signal transform_tween_finished
|
||||||
text = value
|
text = value
|
||||||
var content: Node2D
|
var content: Node2D
|
||||||
var label: Label
|
var label: Label
|
||||||
|
var background_sprite: AnimatedSprite2D
|
||||||
|
|
||||||
@export var picked_random: bool = false
|
@export var picked_random: bool = false
|
||||||
|
|
||||||
|
|
@ -60,8 +59,8 @@ var label: Label
|
||||||
|
|
||||||
@export var voice_line: AudioStream = null
|
@export var voice_line: AudioStream = null
|
||||||
@export var is_dragable: bool = false
|
@export var is_dragable: bool = false
|
||||||
@onready var base_rotation := rotation
|
@onready var base_rotation = rotation
|
||||||
@onready var base_scale := scale
|
@onready var base_scale = scale
|
||||||
var is_dragged: bool = false:
|
var is_dragged: bool = false:
|
||||||
set(dragged):
|
set(dragged):
|
||||||
is_dragged = dragged
|
is_dragged = dragged
|
||||||
|
|
@ -71,21 +70,48 @@ var is_dragged: bool = false:
|
||||||
var initial_drag_position: Vector2
|
var initial_drag_position: Vector2
|
||||||
var mouse_diff: Vector2
|
var mouse_diff: Vector2
|
||||||
|
|
||||||
@onready var diameter := 312.0
|
@onready var diameter = 312.0
|
||||||
@export_range(1.0, 10.0) var bounce_speed: float = 8
|
@export_range(1.0, 10.0) var bounce_speed: float = 8
|
||||||
var on_board: bool = false
|
var on_board: bool = false
|
||||||
|
|
||||||
func init(sticky_name: String = "sticky_note", card_id: StringName = "-1") -> void:
|
func _init(sticky_name: String = "sticky_note", card_id: StringName = "-1") -> void:
|
||||||
name = sticky_name
|
name = sticky_name
|
||||||
text = sticky_name
|
text = sticky_name
|
||||||
parent_id = StringName(card_id.rsplit(".", false, 1)[0])
|
parent_id = StringName(card_id.rsplit(".", false, 1)[0])
|
||||||
sticky_id = card_id
|
sticky_id = card_id
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
label = $Content/Label
|
if get_child_count() == 0:
|
||||||
background_sprite = $Content/BackgroundSprite
|
content = Node2D.new()
|
||||||
content = $Content
|
add_child(content, false, Node.INTERNAL_MODE_BACK)
|
||||||
|
label = Label.new()
|
||||||
|
label.autowrap_mode = TextServer.AUTOWRAP_WORD
|
||||||
|
label.size = Vector2( 295.0, 97.0 )
|
||||||
|
label.position = Vector2( -52.0, -50.0 )
|
||||||
|
label.vertical_alignment = VERTICAL_ALIGNMENT_CENTER
|
||||||
|
#FIXME eventually replace with better theme handling
|
||||||
|
label.theme = State.current_main_theme
|
||||||
|
State.theme_changed.connect(func change_theme(new_theme): label.theme = new_theme)
|
||||||
|
content.add_child(label, false, Node.INTERNAL_MODE_BACK)
|
||||||
|
background_sprite = AnimatedSprite2D.new()
|
||||||
|
background_sprite.sprite_frames = preload("res://logic-scenes/board/card-textures/sticky-note_sprites.tres")
|
||||||
|
background_sprite.scale = Vector2(0.65, 0.65)
|
||||||
|
background_sprite.position = Vector2(99.5, 0)
|
||||||
|
content.add_child(background_sprite, false, Node.INTERNAL_MODE_FRONT)
|
||||||
|
var collision_shape := CollisionShape2D.new()
|
||||||
|
var capsule := CapsuleShape2D.new()
|
||||||
|
capsule.radius = 48.0
|
||||||
|
capsule.height = diameter
|
||||||
|
collision_shape.shape = capsule
|
||||||
|
add_child(collision_shape, false, Node.INTERNAL_MODE_FRONT)
|
||||||
|
collision_shape.position.x = 99.5
|
||||||
|
collision_shape.rotation = PI/2
|
||||||
|
|
||||||
|
label.theme_type_variation = "card_text"
|
||||||
|
else:
|
||||||
|
label = $Content/Label
|
||||||
|
background_sprite = $Content/BackgroundSprite
|
||||||
|
content = $Content
|
||||||
_on_text_updated.call_deferred()
|
_on_text_updated.call_deferred()
|
||||||
|
|
||||||
input_event.connect(_on_input_event)
|
input_event.connect(_on_input_event)
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,6 @@ shape = SubResource("CapsuleShape2D_ml4q7")
|
||||||
[node name="Content" type="Node2D" parent="."]
|
[node name="Content" type="Node2D" parent="."]
|
||||||
|
|
||||||
[node name="BackgroundSprite" type="AnimatedSprite2D" parent="Content"]
|
[node name="BackgroundSprite" type="AnimatedSprite2D" parent="Content"]
|
||||||
unique_name_in_owner = true
|
|
||||||
position = Vector2(99.5, 0)
|
position = Vector2(99.5, 0)
|
||||||
scale = Vector2(0.65, 0.65)
|
scale = Vector2(0.65, 0.65)
|
||||||
sprite_frames = ExtResource("2_260t4")
|
sprite_frames = ExtResource("2_260t4")
|
||||||
|
|
@ -42,6 +41,6 @@ grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
theme = ExtResource("3_qmm0h")
|
theme = ExtResource("3_qmm0h")
|
||||||
theme_type_variation = &"card_text"
|
theme_type_variation = &"card_text"
|
||||||
text = "sticksum ipsum dolor sit amet met post-it sulcum dulce est 3M, et tesa est."
|
text = "card"
|
||||||
vertical_alignment = 1
|
vertical_alignment = 1
|
||||||
autowrap_mode = 3
|
autowrap_mode = 3
|
||||||
|
|
|
||||||
|
|
@ -200,53 +200,9 @@ libraries = {
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Card1" parent="." instance=ExtResource("5_ckmi5")]
|
[node name="Card1" parent="." instance=ExtResource("5_ckmi5")]
|
||||||
picked_random = null
|
|
||||||
wiggle_strength = null
|
|
||||||
wiggle_speed = null
|
|
||||||
scale_bump = null
|
|
||||||
bounce_speed = null
|
|
||||||
highlighted = null
|
|
||||||
is_dragable = null
|
|
||||||
diameter = null
|
|
||||||
burn_progress = null
|
|
||||||
burn_state = null
|
|
||||||
direction = null
|
|
||||||
|
|
||||||
[node name="Card2" parent="." instance=ExtResource("5_ckmi5")]
|
[node name="Card2" parent="." instance=ExtResource("5_ckmi5")]
|
||||||
picked_random = null
|
|
||||||
wiggle_strength = null
|
|
||||||
wiggle_speed = null
|
|
||||||
scale_bump = null
|
|
||||||
bounce_speed = null
|
|
||||||
highlighted = null
|
|
||||||
is_dragable = null
|
|
||||||
diameter = null
|
|
||||||
burn_progress = null
|
|
||||||
burn_state = null
|
|
||||||
direction = null
|
|
||||||
|
|
||||||
[node name="Card3" parent="." instance=ExtResource("5_ckmi5")]
|
[node name="Card3" parent="." instance=ExtResource("5_ckmi5")]
|
||||||
picked_random = null
|
|
||||||
wiggle_strength = null
|
|
||||||
wiggle_speed = null
|
|
||||||
scale_bump = null
|
|
||||||
bounce_speed = null
|
|
||||||
highlighted = null
|
|
||||||
is_dragable = null
|
|
||||||
diameter = null
|
|
||||||
burn_progress = null
|
|
||||||
burn_state = null
|
|
||||||
direction = null
|
|
||||||
|
|
||||||
[node name="Card4" parent="." instance=ExtResource("5_ckmi5")]
|
[node name="Card4" parent="." instance=ExtResource("5_ckmi5")]
|
||||||
picked_random = null
|
|
||||||
wiggle_strength = null
|
|
||||||
wiggle_speed = null
|
|
||||||
scale_bump = null
|
|
||||||
bounce_speed = null
|
|
||||||
highlighted = null
|
|
||||||
is_dragable = null
|
|
||||||
diameter = null
|
|
||||||
burn_progress = null
|
|
||||||
burn_state = null
|
|
||||||
direction = null
|
|
||||||
|
|
|
||||||
|
|
@ -240,6 +240,6 @@ func pick_cards(id: int, repeat: bool):
|
||||||
reset()
|
reset()
|
||||||
show()
|
show()
|
||||||
selection_state = CARDS
|
selection_state = CARDS
|
||||||
if id == Scenes.id.YOUTH_DRAVEN and not repeat:
|
if id == Scenes.id.YOUTH_DRAEVEN and not repeat:
|
||||||
$Meaning.play()
|
$Meaning.play()
|
||||||
await cards_picked
|
await cards_picked
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://bdb6n10apk1en" path="res://logic-scenes/card_picker/card_picker.gd" id="1_pjntm"]
|
[ext_resource type="Script" uid="uid://bdb6n10apk1en" path="res://logic-scenes/card_picker/card_picker.gd" id="1_pjntm"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dy5rd437h5hsw" path="res://logic-scenes/board/card.tscn" id="2_t7byf"]
|
[ext_resource type="PackedScene" uid="uid://dy5rd437h5hsw" path="res://logic-scenes/board/card.tscn" id="2_t7byf"]
|
||||||
[ext_resource type="PackedScene" uid="uid://vkcdj8c3ytbq" path="res://logic-scenes/board/sticky-note.tscn" id="3_et74x"]
|
[ext_resource type="Script" uid="uid://r12efqgk6t4n" path="res://logic-scenes/board/sticky-note.gd" id="3_f4sp4"]
|
||||||
[ext_resource type="AudioStream" uid="uid://bakwypwhs7a5n" path="res://base-environments/youth_room/audio/why-does-it-mean.wav" id="4_ujc5a"]
|
[ext_resource type="AudioStream" uid="uid://bakwypwhs7a5n" path="res://base-environments/youth_room/audio/why-does-it-mean.wav" id="4_ujc5a"]
|
||||||
[ext_resource type="Script" uid="uid://c1oub0cs7cph6" path="res://dev-util/stereo-switch.gd" id="5_et74x"]
|
[ext_resource type="Script" uid="uid://c1oub0cs7cph6" path="res://dev-util/stereo-switch.gd" id="5_et74x"]
|
||||||
[ext_resource type="AudioStream" uid="uid://tbx31bdlhbtr" path="res://base-environments/youth_room/audio/why-does-it-mean_de.wav" id="6_et74x"]
|
[ext_resource type="AudioStream" uid="uid://tbx31bdlhbtr" path="res://base-environments/youth_room/audio/why-does-it-mean_de.wav" id="6_et74x"]
|
||||||
|
|
@ -1774,17 +1774,6 @@ libraries = {
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Card" parent="cards/card_1" instance=ExtResource("2_t7byf")]
|
[node name="Card" parent="cards/card_1" instance=ExtResource("2_t7byf")]
|
||||||
picked_random = null
|
|
||||||
wiggle_strength = null
|
|
||||||
wiggle_speed = null
|
|
||||||
scale_bump = null
|
|
||||||
bounce_speed = null
|
|
||||||
highlighted = null
|
|
||||||
is_dragable = null
|
|
||||||
diameter = null
|
|
||||||
burn_progress = null
|
|
||||||
burn_state = null
|
|
||||||
direction = null
|
|
||||||
|
|
||||||
[node name="card_2" type="Control" parent="cards"]
|
[node name="card_2" type="Control" parent="cards"]
|
||||||
anchors_preset = 0
|
anchors_preset = 0
|
||||||
|
|
@ -1795,17 +1784,6 @@ libraries = {
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Card" parent="cards/card_2" instance=ExtResource("2_t7byf")]
|
[node name="Card" parent="cards/card_2" instance=ExtResource("2_t7byf")]
|
||||||
picked_random = null
|
|
||||||
wiggle_strength = null
|
|
||||||
wiggle_speed = null
|
|
||||||
scale_bump = null
|
|
||||||
bounce_speed = null
|
|
||||||
highlighted = null
|
|
||||||
is_dragable = null
|
|
||||||
diameter = null
|
|
||||||
burn_progress = null
|
|
||||||
burn_state = null
|
|
||||||
direction = null
|
|
||||||
|
|
||||||
[node name="card_3" type="Control" parent="cards"]
|
[node name="card_3" type="Control" parent="cards"]
|
||||||
anchors_preset = 0
|
anchors_preset = 0
|
||||||
|
|
@ -1821,17 +1799,6 @@ libraries = {
|
||||||
}
|
}
|
||||||
|
|
||||||
[node name="Card" parent="cards/card_3" instance=ExtResource("2_t7byf")]
|
[node name="Card" parent="cards/card_3" instance=ExtResource("2_t7byf")]
|
||||||
picked_random = null
|
|
||||||
wiggle_strength = null
|
|
||||||
wiggle_speed = null
|
|
||||||
scale_bump = null
|
|
||||||
bounce_speed = null
|
|
||||||
highlighted = null
|
|
||||||
is_dragable = null
|
|
||||||
diameter = null
|
|
||||||
burn_progress = null
|
|
||||||
burn_state = null
|
|
||||||
direction = null
|
|
||||||
|
|
||||||
[node name="sticky_notes" type="Panel" parent="."]
|
[node name="sticky_notes" type="Panel" parent="."]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
|
@ -1848,7 +1815,10 @@ libraries = {
|
||||||
}
|
}
|
||||||
autoplay = "ini"
|
autoplay = "ini"
|
||||||
|
|
||||||
[node name="sticky-note" parent="sticky_notes/sticky_note_1" instance=ExtResource("3_et74x")]
|
[node name="StickyNote" type="Area2D" parent="sticky_notes/sticky_note_1"]
|
||||||
|
script = ExtResource("3_f4sp4")
|
||||||
|
text = "Slot 1"
|
||||||
|
metadata/_custom_type_script = "uid://r12efqgk6t4n"
|
||||||
|
|
||||||
[node name="sticky_note_2" type="Control" parent="sticky_notes"]
|
[node name="sticky_note_2" type="Control" parent="sticky_notes"]
|
||||||
anchors_preset = 0
|
anchors_preset = 0
|
||||||
|
|
@ -1862,7 +1832,10 @@ libraries = {
|
||||||
}
|
}
|
||||||
autoplay = "ini"
|
autoplay = "ini"
|
||||||
|
|
||||||
[node name="sticky-note" parent="sticky_notes/sticky_note_2" instance=ExtResource("3_et74x")]
|
[node name="StickyNote" type="Area2D" parent="sticky_notes/sticky_note_2"]
|
||||||
|
script = ExtResource("3_f4sp4")
|
||||||
|
text = "Slot 2"
|
||||||
|
metadata/_custom_type_script = "uid://r12efqgk6t4n"
|
||||||
|
|
||||||
[node name="sticky_note_3" type="Control" parent="sticky_notes"]
|
[node name="sticky_note_3" type="Control" parent="sticky_notes"]
|
||||||
anchors_preset = 0
|
anchors_preset = 0
|
||||||
|
|
@ -1876,7 +1849,10 @@ libraries = {
|
||||||
}
|
}
|
||||||
autoplay = "ini"
|
autoplay = "ini"
|
||||||
|
|
||||||
[node name="sticky-note" parent="sticky_notes/sticky_note_3" instance=ExtResource("3_et74x")]
|
[node name="StickyNote" type="Area2D" parent="sticky_notes/sticky_note_3"]
|
||||||
|
script = ExtResource("3_f4sp4")
|
||||||
|
text = "Slot 3"
|
||||||
|
metadata/_custom_type_script = "uid://r12efqgk6t4n"
|
||||||
|
|
||||||
[node name="sticky_note_4" type="Control" parent="sticky_notes"]
|
[node name="sticky_note_4" type="Control" parent="sticky_notes"]
|
||||||
anchors_preset = 0
|
anchors_preset = 0
|
||||||
|
|
@ -1890,7 +1866,10 @@ libraries = {
|
||||||
}
|
}
|
||||||
autoplay = "ini"
|
autoplay = "ini"
|
||||||
|
|
||||||
[node name="sticky-note" parent="sticky_notes/sticky_note_4" instance=ExtResource("3_et74x")]
|
[node name="StickyNote" type="Area2D" parent="sticky_notes/sticky_note_4"]
|
||||||
|
script = ExtResource("3_f4sp4")
|
||||||
|
text = "Slot 4"
|
||||||
|
metadata/_custom_type_script = "uid://r12efqgk6t4n"
|
||||||
|
|
||||||
[node name="thought_prompt" type="Control" parent="."]
|
[node name="thought_prompt" type="Control" parent="."]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
|
|
|
||||||
|
|
@ -19,15 +19,15 @@ var story_playable: StoryPlayable
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@export var scene: Scenes.id = Scenes.id.YOUTH_DRAVEN:
|
@export var scene: Scenes.id = Scenes.id.YOUTH_DRAEVEN:
|
||||||
set(id):
|
set(id):
|
||||||
scene = id
|
scene = id
|
||||||
if is_inside_tree() and not is_board:
|
if is_inside_tree() and not is_board:
|
||||||
match id:
|
match id:
|
||||||
Scenes.id.YOUTH_DRAVEN:
|
Scenes.id.YOUTH_DRAEVEN:
|
||||||
# FIXME: this explicit translation should not be nessecary
|
# FIXME: this explicit translation should not be nessecary
|
||||||
if title_override == "": title_label.text = TranslationServer.translate("Starlight")
|
if title_override == "": title_label.text = TranslationServer.translate("Starlight")
|
||||||
if subtitle_override == "": cn_label.text = "[b]%s[/b]: %s" % [TranslationServer.translate("MementoLabel_CN"), TranslationServer.translate("MementoLabel_DravenCN")]
|
if subtitle_override == "": cn_label.text = "[b]%s[/b]: %s" % [TranslationServer.translate("MementoLabel_CN"), TranslationServer.translate("MementoLabel_DraevenCN")]
|
||||||
Scenes.id.YOUTH_CHILDHOOD:
|
Scenes.id.YOUTH_CHILDHOOD:
|
||||||
if title_override == "": title_label.text = TranslationServer.translate("crafted Mask")
|
if title_override == "": title_label.text = TranslationServer.translate("crafted Mask")
|
||||||
if subtitle_override == "": cn_label.text = "[b]%s[/b]: %s" % [TranslationServer.translate("MementoLabel_CN"), TranslationServer.translate("MementoLabel_ChildhoodCN")]
|
if subtitle_override == "": cn_label.text = "[b]%s[/b]: %s" % [TranslationServer.translate("MementoLabel_CN"), TranslationServer.translate("MementoLabel_ChildhoodCN")]
|
||||||
|
|
|
||||||
|
|
@ -273,7 +273,7 @@ func _input(event:InputEvent) -> void:
|
||||||
|
|
||||||
func play_scene(_id: int, _repeat: bool):
|
func play_scene(_id: int, _repeat: bool):
|
||||||
pass
|
pass
|
||||||
#if id == Scenes.id.YOUTH_DRAVEN:
|
#if id == Scenes.id.YOUTH_DRAEVEN:
|
||||||
# var rotation_tween := create_tween()
|
# var rotation_tween := create_tween()
|
||||||
|
|
||||||
func scene_finished(_id, repeat: bool):
|
func scene_finished(_id, repeat: bool):
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,6 @@ Steamworks="*res://dev-util/steamworks.gd"
|
||||||
PromptManager="*res://addons/input_prompts/input_prompt_manager.gd"
|
PromptManager="*res://addons/input_prompts/input_prompt_manager.gd"
|
||||||
Steam="*res://dev-util/steam.gd"
|
Steam="*res://dev-util/steam.gd"
|
||||||
Main="*res://singletons/main/main.tscn"
|
Main="*res://singletons/main/main.tscn"
|
||||||
HardCards="*res://dev-util/hardcoded_cards.tscn"
|
|
||||||
|
|
||||||
[debug]
|
[debug]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -299,7 +299,7 @@ enum rooms {
|
||||||
}
|
}
|
||||||
|
|
||||||
enum sequences {
|
enum sequences {
|
||||||
DRAVEN,
|
DRAEVEN,
|
||||||
CHILDHOOD,
|
CHILDHOOD,
|
||||||
VOICE,
|
VOICE,
|
||||||
JUI_JUTSU,
|
JUI_JUTSU,
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ var normal_boot : bool = false
|
||||||
@onready var pause_menu: PauseManu = %PauseMenu
|
@onready var pause_menu: PauseManu = %PauseMenu
|
||||||
|
|
||||||
@onready var room_paths := {
|
@onready var room_paths := {
|
||||||
State.rooms.NULL: youth_room_path, # Maybe Draven story?
|
State.rooms.NULL: youth_room_path, # Maybe Draeven story?
|
||||||
State.rooms.YOUTH: youth_room_path,
|
State.rooms.YOUTH: youth_room_path,
|
||||||
State.rooms.TRANSITION: transition_room_path,
|
State.rooms.TRANSITION: transition_room_path,
|
||||||
State.rooms.ADULTHOOD: adulthood_room_path,
|
State.rooms.ADULTHOOD: adulthood_room_path,
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,6 @@ anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
mouse_filter = 2
|
|
||||||
script = ExtResource("1_rqkns")
|
script = ExtResource("1_rqkns")
|
||||||
youth_room_path = "uid://b3b0gyvklqn50"
|
youth_room_path = "uid://b3b0gyvklqn50"
|
||||||
transition_room_path = "uid://fgp3s28h7msy"
|
transition_room_path = "uid://fgp3s28h7msy"
|
||||||
|
|
@ -108,7 +107,6 @@ offset_bottom = 0.0
|
||||||
|
|
||||||
[node name="MainMenu" parent="." instance=ExtResource("3_ik73t")]
|
[node name="MainMenu" parent="." instance=ExtResource("3_ik73t")]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
visible = false
|
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
|
|
||||||
[node name="FPSLabel" type="Label" parent="."]
|
[node name="FPSLabel" type="Label" parent="."]
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ var is_playing: bool:
|
||||||
get: return current_sequence != -1
|
get: return current_sequence != -1
|
||||||
|
|
||||||
enum id {
|
enum id {
|
||||||
YOUTH_DRAVEN,
|
YOUTH_DRAEVEN,
|
||||||
YOUTH_CHILDHOOD,
|
YOUTH_CHILDHOOD,
|
||||||
YOUTH_VOICE_TRAINING,
|
YOUTH_VOICE_TRAINING,
|
||||||
YOUTH_JUI_JUTSU,
|
YOUTH_JUI_JUTSU,
|
||||||
|
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
[gd_scene load_steps=2 format=3 uid="uid://j1g0cakfiusk"]
|
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://dy5rd437h5hsw" path="res://logic-scenes/board/card.tscn" id="1_qc7lg"]
|
|
||||||
|
|
||||||
[node name="CardTests" type="Node2D"]
|
|
||||||
|
|
||||||
[node name="Card" parent="." instance=ExtResource("1_qc7lg")]
|
|
||||||
position = Vector2(1416, 350)
|
|
||||||
|
|
||||||
[node name="Card2" parent="." instance=ExtResource("1_qc7lg")]
|
|
||||||
position = Vector2(418, 255)
|
|
||||||
|
|
||||||
[node name="Card3" parent="." instance=ExtResource("1_qc7lg")]
|
|
||||||
position = Vector2(415, 552)
|
|
||||||
|
|
||||||
[node name="Card4" parent="." instance=ExtResource("1_qc7lg")]
|
|
||||||
position = Vector2(877, 360)
|
|
||||||
Loading…
Reference in New Issue