Custom Balloon resizing
This commit is contained in:
+7
-11
@@ -77,21 +77,18 @@ anchor_right = 1.0
|
|||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
size_flags_horizontal = 0
|
||||||
|
size_flags_vertical = 0
|
||||||
|
mouse_filter = 2
|
||||||
theme = SubResource("Theme_qq3yp")
|
theme = SubResource("Theme_qq3yp")
|
||||||
|
|
||||||
[node name="Panel" type="Panel" parent="Balloon"]
|
[node name="Panel" type="Panel" parent="Balloon"]
|
||||||
clip_children = 2
|
clip_children = 2
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 12
|
offset_left = 10.0
|
||||||
anchor_top = 1.0
|
offset_top = 820.0
|
||||||
anchor_right = 1.0
|
offset_right = 1910.0
|
||||||
anchor_bottom = 1.0
|
offset_bottom = 1070.0
|
||||||
offset_left = 21.0
|
|
||||||
offset_top = -285.0
|
|
||||||
offset_right = -26.0
|
|
||||||
offset_bottom = -19.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 0
|
|
||||||
mouse_filter = 1
|
mouse_filter = 1
|
||||||
|
|
||||||
[node name="Dialogue" type="MarginContainer" parent="Balloon/Panel"]
|
[node name="Dialogue" type="MarginContainer" parent="Balloon/Panel"]
|
||||||
@@ -99,7 +96,6 @@ layout_mode = 1
|
|||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
offset_right = -2.0
|
|
||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,240 @@
|
|||||||
|
~ mr_orleg_day_1_dialogue_start
|
||||||
|
|
||||||
|
do CurrentPatient.marker.fill(0)
|
||||||
|
set CurrentPatient.dialog_tree = CurrentPatient.build_dialog_tree([1100,1200,1210,1220, 1300, 1400, 1500, 1610, 1620])
|
||||||
|
|
||||||
|
: The patient remains still, watching you expectantly.
|
||||||
|
|
||||||
|
Psychiatrist: Greetings Mr Orleg. You shall be my in care for the duration of your stay in this facility.
|
||||||
|
|
||||||
|
Mr Orleg: Greetings Doctor. I need your help, i don't know why i'm here, there must have been a mistake !
|
||||||
|
|
||||||
|
~ day_1_choice_1
|
||||||
|
|
||||||
|
- Tell me why you were brought here. [if CurrentPatient.dialog_tree[1100] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1100] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("neutral")
|
||||||
|
do CurrentPatient.dialog_flags["insight"].append("Anosognosia")
|
||||||
|
|
||||||
|
Mr Orleg: Sure. I was at the usual grocery store next door, and there was that cashier who was threatening me. I was busy explaining her nobody can talk to Mr Orleg this way, when these damned cops came out of nowhere and brutally restrained me ! Can you imagine ?!
|
||||||
|
|
||||||
|
=> day_1_choice_1
|
||||||
|
|
||||||
|
- Do you feel safe in this room ? [if CurrentPatient.dialog_tree[1200] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1200] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("scared")
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Persecutory delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Honestly ? I don't. Some of your colleagues have been giving me the heeby jeebies. Gotta stay sharp, i'm pretty sure he's here.
|
||||||
|
|
||||||
|
~ day_1_choice_1_2
|
||||||
|
|
||||||
|
- Who's "he" ? [if CurrentPatient.dialog_tree[1210] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1210] = "asked"
|
||||||
|
do CurrentPatient.marker[1] += 1
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Mystical delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Shhh... you musntn't speak his name aloud. "He" is the Harbinger. The Prophet and the Reaper. The Messiah and the Deceiver.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[1] == 2
|
||||||
|
set CurrentPatient.marker[1] = 0
|
||||||
|
=> day_1_choice_1
|
||||||
|
else
|
||||||
|
=> day_1_choice_1_2
|
||||||
|
|
||||||
|
- Which of my colleagues are you talking about ? [if CurrentPatient.dialog_tree[1220] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1220] = "asked"
|
||||||
|
do CurrentPatient.marker[1] += 1
|
||||||
|
do CurrentPatient.dialog_flags["perceptions"].append("Mystical delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Every single one of them... He's been using their shapes to contact me. I need to remain strong, Doctor.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[1] == 2
|
||||||
|
set CurrentPatient.marker[1] = 0
|
||||||
|
=> day_1_choice_1
|
||||||
|
else
|
||||||
|
=> day_1_choice_1_2
|
||||||
|
|
||||||
|
- How has your sleep been recently ? [if CurrentPatient.dialog_tree[1300] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1300] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("neutral")
|
||||||
|
do CurrentPatient.dialog_flags["sleep"].append("Insomnia")
|
||||||
|
|
||||||
|
Mr Orleg: Hard to keep my eyes shut lately, i'll admit. I definitely could use some rest.
|
||||||
|
|
||||||
|
=> day_1_choice_1
|
||||||
|
|
||||||
|
- How are you feeling lately ? [if CurrentPatient.dialog_tree[1400] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1400] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("neutral")
|
||||||
|
do CurrentPatient.dialog_flags["mood"].append("Euthymia")
|
||||||
|
|
||||||
|
Mr Orleg: I'm feeling rather fine, actually. My life's quite enjoyable, except for the whole "i'm locked in here cause people think i'm crazy" situation. You've got to help me Doctor.
|
||||||
|
|
||||||
|
- Have you had any thoughts about wanting to end your life ?
|
||||||
|
|
||||||
|
do CurrentPatient.dialog_flags["suicidal_ideation"].append("None")
|
||||||
|
|
||||||
|
Mr Orleg: I would never dare end the life God has given me.
|
||||||
|
|
||||||
|
=> day_1_choice_1
|
||||||
|
|
||||||
|
- Examine [if CurrentPatient.dialog_tree[1500] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1500] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.dialog_flags["appearance"].append("Fixed gaze")
|
||||||
|
|
||||||
|
: The patient appears to be calm and collected. His garment is clean, if a bit crumpled. His gaze switches back and forth between a wide-eyed focus on your face, and vacantly staring at the wall.
|
||||||
|
|
||||||
|
=> day_1_choice_1
|
||||||
|
|
||||||
|
- Don't you feel anxious about this otherwordly being targeting you ? [if CurrentPatient.marker[0] == 5]
|
||||||
|
|
||||||
|
set CurrentPatient.marker[0] = 0
|
||||||
|
do CurrentPatient.change_emotion("happy")
|
||||||
|
do CurrentPatient.dialog_flags["thought_process"].append("Ideo-affective dissociation")
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Megalomaniac delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Not really. I'm protected by God. No one can hurt me.
|
||||||
|
|
||||||
|
~ day_1_choice_1_6
|
||||||
|
|
||||||
|
- How do you know God protects you ? [if CurrentPatient.dialog_tree[1610] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1610] = "asked"
|
||||||
|
set CurrentPatient.marker[2] += 1
|
||||||
|
do CurrentPatient.dialog_flags["perceptions"].append("Intra-psychic auditory hallucinations")
|
||||||
|
|
||||||
|
Mr Orleg: He shares his Will with me directly inside my head. We have a special connection.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[2] == 2
|
||||||
|
set CurrentPatient.marker[2] = 0
|
||||||
|
=> day_1_choice_2
|
||||||
|
else
|
||||||
|
=> day_1_choice_1_6
|
||||||
|
|
||||||
|
- Have you ever seen God or this evil being with your own eyes ? [if CurrentPatient.dialog_tree[1620] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1620] = "asked"
|
||||||
|
set CurrentPatient.marker[2] += 1
|
||||||
|
|
||||||
|
Mr Orleg: Never. I don't need to see them to know they're here.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[2] == 2
|
||||||
|
set CurrentPatient.marker[2] = 0
|
||||||
|
=> day_1_choice_2
|
||||||
|
else
|
||||||
|
=> day_1_choice_1_6
|
||||||
|
|
||||||
|
~ day_1_choice_2
|
||||||
|
|
||||||
|
- Send to Reset
|
||||||
|
|
||||||
|
Psychiatrist: You are in need of psychiatric care, Mr Orleg. My colleagues here will take you to the resetting room for adequate treatment.
|
||||||
|
|
||||||
|
do CurrentPatient.change_emotion("scared")
|
||||||
|
|
||||||
|
Mr Orleg: You can't do that Doctor ! This is a mistake !
|
||||||
|
|
||||||
|
Mr Orleg: I swear i'm not crazy !
|
||||||
|
|
||||||
|
do CurrentPatient.send_to_reset()
|
||||||
|
|
||||||
|
=> END
|
||||||
|
|
||||||
|
- Send to Isolation
|
||||||
|
|
||||||
|
Psychiatrist: I have assessed that you are currently unstable, Mr Orleg. You may be dangerous to other people, and even to yourself. We are going to Isolate you to ensure your safety.
|
||||||
|
|
||||||
|
do CurrentPatient.change_emotion("scared")
|
||||||
|
|
||||||
|
Mr Orleg: What ?? Th- This can't be...
|
||||||
|
|
||||||
|
Mr Orleg: Please, have mercy...
|
||||||
|
|
||||||
|
do CurrentPatient.send_to_isolation
|
||||||
|
|
||||||
|
=> END
|
||||||
|
|
||||||
|
- End the evaluation
|
||||||
|
|
||||||
|
Psychiatrist: Thank you for answering my questions, Mr Orleg. You are to remain here for further observation.
|
||||||
|
|
||||||
|
do CurrentPatient.change_emotion("angry")
|
||||||
|
|
||||||
|
Mr Orleg: I knew it. You are just like the others, faking compassion for profit. You disgust me.
|
||||||
|
|
||||||
|
Psychiatrist: I am here to help you, I just need more time to make the right decision. Please be patient, sir.
|
||||||
|
|
||||||
|
Mr Orleg: This whole thing's a joke...
|
||||||
|
|
||||||
|
=> END
|
||||||
|
|
||||||
|
=> END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
~ mr_orleg_day_2_dialogue_start
|
||||||
|
|
||||||
|
do CurrentPatient.marker.fill(0)
|
||||||
|
set CurrentPatient.dialog_tree = CurrentPatient.build_dialog_tree([1100,1200,1210,1220, 1300, 1400, 1500, 1610, 1620])
|
||||||
|
|
||||||
|
: The patient is hurriedly mumbling something to himself in hushed tones. He abruptly stops as you step in, fixing you with an unnerving stare.
|
||||||
|
|
||||||
|
Mr Orleg: Back for round 2, I presume ? Ask away, Doc.
|
||||||
|
|
||||||
|
~ day_2_choice_1
|
||||||
|
|
||||||
|
- How was your first night here ? [if CurrentPatient.dialog_tree[1100] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1100] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("scared")
|
||||||
|
do CurrentPatient.dialog_flags["insight"].append("Insomnia")
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Persecutory delusions")
|
||||||
|
|
||||||
|
Mr Orleg: I couldn't get my eyes shut. The Deceiver never rests. I could feel him breathing on my skin in the dark. It felt cold, so cold...
|
||||||
|
|
||||||
|
~ day_2_choice_1_1
|
||||||
|
|
||||||
|
- You told me you felt safe under God's protection. Is it still the case ? [if CurrentPatient.dialog_tree[1110] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1110] = "asked"
|
||||||
|
do CurrentPatient.marker[1] += 1
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Mystical delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Yes, I still feel his Holy Presence within me, but it's getting fainter and fainter... This place is cursed. I need to get out of here fast.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[1] == 2
|
||||||
|
set CurrentPatient.marker[1] = 0
|
||||||
|
=> day_2_choice_1
|
||||||
|
else
|
||||||
|
=> day_2_choice_1_1
|
||||||
|
|
||||||
|
- Were you able to see the Deceiver ? How did you know it was Him in your room last night ? [if CurrentPatient.dialog_tree[1120] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1120] = "asked"
|
||||||
|
do CurrentPatient.marker[1] += 1
|
||||||
|
do CurrentPatient.dialog_flags["perceptions"].append("Mystical delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Because I KNOW it ! It starts with yellow water dripping from the ceilings, flowing more and more... the smell ! Gods, the smell...
|
||||||
|
|
||||||
|
if CurrentPatient.marker[1] == 2
|
||||||
|
set CurrentPatient.marker[1] = 0
|
||||||
|
=> day_2_choice_1
|
||||||
|
else
|
||||||
|
=> day_2_choice_1_1
|
||||||
|
|
||||||
|
=> day_2_choice_1
|
||||||
|
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="dialogue_manager_compiler_13"
|
||||||
|
type="Resource"
|
||||||
|
uid="uid://b8235p2e4e2yq"
|
||||||
|
path="res://.godot/imported/mr_orleg.dialogue-555b24f3e197f19afed17ef5e5c6a5e2.tres"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Dialogues/mr_orleg.dialogue"
|
||||||
|
dest_files=["res://.godot/imported/mr_orleg.dialogue-555b24f3e197f19afed17ef5e5c6a5e2.tres"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
defaults=true
|
||||||
@@ -0,0 +1,240 @@
|
|||||||
|
~ start
|
||||||
|
|
||||||
|
do CurrentPatient.marker.fill(0)
|
||||||
|
set CurrentPatient.dialog_tree = CurrentPatient.build_dialog_tree([1100,1200,1210,1220, 1300, 1400, 1500, 1610, 1620])
|
||||||
|
|
||||||
|
: The patient remains still, watching you expectantly.
|
||||||
|
|
||||||
|
Psychiatrist: Greetings Mr Orleg. You shall be my in care for the duration of your stay in this facility.
|
||||||
|
|
||||||
|
Mr Orleg: Greetings Doctor. I need your help, i don't know why i'm here, there must have been a mistake !
|
||||||
|
|
||||||
|
~ day_1_choice_1
|
||||||
|
|
||||||
|
- Tell me why you were brought here. [if CurrentPatient.dialog_tree[1100] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1100] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("neutral")
|
||||||
|
do CurrentPatient.dialog_flags["insight"].append("Anosognosia")
|
||||||
|
|
||||||
|
Mr Orleg: Sure. I was at the usual grocery store next door, and there was that cashier who was threatening me. I was busy explaining her nobody can talk to Mr Orleg this way, when these damned cops came out of nowhere and brutally restrained me ! Can you imagine ?!
|
||||||
|
|
||||||
|
=> day_1_choice_1
|
||||||
|
|
||||||
|
- Do you feel safe in this room ? [if CurrentPatient.dialog_tree[1200] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1200] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("scared")
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Persecutory delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Honestly ? I don't. Some of your colleagues have been giving me the heeby jeebies. Gotta stay sharp, i'm pretty sure he's here.
|
||||||
|
|
||||||
|
~ day_1_choice_1_2
|
||||||
|
|
||||||
|
- Who's "he" ? [if CurrentPatient.dialog_tree[1210] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1210] = "asked"
|
||||||
|
do CurrentPatient.marker[1] += 1
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Mystical delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Shhh... you musntn't speak his name aloud. "He" is the Harbinger. The Prophet and the Reaper. The Messiah and the Deceiver.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[1] == 2
|
||||||
|
set CurrentPatient.marker[1] = 0
|
||||||
|
=> day_1_choice_1
|
||||||
|
else
|
||||||
|
=> day_1_choice_1_2
|
||||||
|
|
||||||
|
- Which of my colleagues are you talking about ? [if CurrentPatient.dialog_tree[1220] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1220] = "asked"
|
||||||
|
do CurrentPatient.marker[1] += 1
|
||||||
|
do CurrentPatient.dialog_flags["perceptions"].append("Mystical delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Every single one of them... He's been using their shapes to contact me. I need to remain strong, Doctor.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[1] == 2
|
||||||
|
set CurrentPatient.marker[1] = 0
|
||||||
|
=> day_1_choice_1
|
||||||
|
else
|
||||||
|
=> day_1_choice_1_2
|
||||||
|
|
||||||
|
- How has your sleep been recently ? [if CurrentPatient.dialog_tree[1300] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1300] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("neutral")
|
||||||
|
do CurrentPatient.dialog_flags["sleep"].append("Insomnia")
|
||||||
|
|
||||||
|
Mr Orleg: Hard to keep my eyes shut lately, i'll admit. I definitely could use some rest.
|
||||||
|
|
||||||
|
=> day_1_choice_1
|
||||||
|
|
||||||
|
- How are you feeling lately ? [if CurrentPatient.dialog_tree[1400] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1400] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("neutral")
|
||||||
|
do CurrentPatient.dialog_flags["mood"].append("Euthymia")
|
||||||
|
|
||||||
|
Mr Orleg: I'm feeling rather fine, actually. My life's quite enjoyable, except for the whole "i'm locked in here cause people think i'm crazy" situation. You've got to help me Doctor.
|
||||||
|
|
||||||
|
- Have you had any thoughts about wanting to end your life ?
|
||||||
|
|
||||||
|
do CurrentPatient.dialog_flags["suicidal_ideation"].append("None")
|
||||||
|
|
||||||
|
Mr Orleg: I would never dare end the life God has given me.
|
||||||
|
|
||||||
|
=> day_1_choice_1
|
||||||
|
|
||||||
|
- Examine [if CurrentPatient.dialog_tree[1500] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1500] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.dialog_flags["appearance"].append("Fixed gaze")
|
||||||
|
|
||||||
|
: The patient appears to be calm and collected. His garment is clean, if a bit crumpled. His gaze switches back and forth between a wide-eyed focus on your face, and vacantly staring at the wall.
|
||||||
|
|
||||||
|
=> day_1_choice_1
|
||||||
|
|
||||||
|
- Don't you feel anxious about this otherwordly being targeting you ? [if CurrentPatient.marker[0] == 5]
|
||||||
|
|
||||||
|
set CurrentPatient.marker[0] = 0
|
||||||
|
do CurrentPatient.change_emotion("happy")
|
||||||
|
do CurrentPatient.dialog_flags["thought_process"].append("Ideo-affective dissociation")
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Megalomaniac delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Not really. I'm protected by God. No one can hurt me.
|
||||||
|
|
||||||
|
~ day_1_choice_1_6
|
||||||
|
|
||||||
|
- How do you know God protects you ? [if CurrentPatient.dialog_tree[1610] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1610] = "asked"
|
||||||
|
set CurrentPatient.marker[2] += 1
|
||||||
|
do CurrentPatient.dialog_flags["perceptions"].append("Intra-psychic auditory hallucinations")
|
||||||
|
|
||||||
|
Mr Orleg: He shares his Will with me directly inside my head. We have a special connection.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[2] == 2
|
||||||
|
set CurrentPatient.marker[2] = 0
|
||||||
|
=> day_1_choice_2
|
||||||
|
else
|
||||||
|
=> day_1_choice_1_6
|
||||||
|
|
||||||
|
- Have you ever seen God or this evil being with your own eyes ? [if CurrentPatient.dialog_tree[1620] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1620] = "asked"
|
||||||
|
set CurrentPatient.marker[2] += 1
|
||||||
|
|
||||||
|
Mr Orleg: Never. I don't need to see them to know they're here.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[2] == 2
|
||||||
|
set CurrentPatient.marker[2] = 0
|
||||||
|
=> day_1_choice_2
|
||||||
|
else
|
||||||
|
=> day_1_choice_1_6
|
||||||
|
|
||||||
|
~ day_1_choice_2
|
||||||
|
|
||||||
|
- Send to Reset
|
||||||
|
|
||||||
|
Psychiatrist: You are in need of psychiatric care, Mr Orleg. My colleagues here will take you to the resetting room for adequate treatment.
|
||||||
|
|
||||||
|
do CurrentPatient.change_emotion("scared")
|
||||||
|
|
||||||
|
Mr Orleg: You can't do that Doctor ! This is a mistake !
|
||||||
|
|
||||||
|
Mr Orleg: I swear i'm not crazy !
|
||||||
|
|
||||||
|
do CurrentPatient.send_to_reset()
|
||||||
|
|
||||||
|
=> END
|
||||||
|
|
||||||
|
- Send to Isolation
|
||||||
|
|
||||||
|
Psychiatrist: I have assessed that you are currently unstable, Mr Orleg. You may be dangerous to other people, and even to yourself. We are going to Isolate you to ensure your safety.
|
||||||
|
|
||||||
|
do CurrentPatient.change_emotion("scared")
|
||||||
|
|
||||||
|
Mr Orleg: What ?? Th- This can't be...
|
||||||
|
|
||||||
|
Mr Orleg: Please, have mercy...
|
||||||
|
|
||||||
|
do CurrentPatient.send_to_isolation
|
||||||
|
|
||||||
|
=> END
|
||||||
|
|
||||||
|
- End the evaluation
|
||||||
|
|
||||||
|
Psychiatrist: Thank you for answering my questions, Mr Orleg. You are to remain here for further observation.
|
||||||
|
|
||||||
|
do CurrentPatient.change_emotion("angry")
|
||||||
|
|
||||||
|
Mr Orleg: I knew it. You are just like the others, faking compassion for profit. You disgust me.
|
||||||
|
|
||||||
|
Psychiatrist: I am here to help you, I just need more time to make the right decision. Please be patient, sir.
|
||||||
|
|
||||||
|
Mr Orleg: This whole thing's a joke...
|
||||||
|
|
||||||
|
=> END
|
||||||
|
|
||||||
|
=> END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
~ mr_orleg_day_2_dialogue_start
|
||||||
|
|
||||||
|
do CurrentPatient.marker.fill(0)
|
||||||
|
set CurrentPatient.dialog_tree = CurrentPatient.build_dialog_tree([1100,1200,1210,1220, 1300, 1400, 1500, 1610, 1620])
|
||||||
|
|
||||||
|
: The patient is hurriedly mumbling something to himself in hushed tones. He abruptly stops as you step in, fixing you with an unnerving stare.
|
||||||
|
|
||||||
|
Mr Orleg: Back for round 2, I presume ? Ask away, Doc.
|
||||||
|
|
||||||
|
~ day_2_choice_1
|
||||||
|
|
||||||
|
- How was your first night here ? [if CurrentPatient.dialog_tree[1100] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1100] = "asked"
|
||||||
|
do CurrentPatient.marker[0] += 1
|
||||||
|
do CurrentPatient.change_emotion("scared")
|
||||||
|
do CurrentPatient.dialog_flags["insight"].append("Insomnia")
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Persecutory delusions")
|
||||||
|
|
||||||
|
Mr Orleg: I couldn't get my eyes shut. The Deceiver never rests. I could feel him breathing on my skin in the dark. It felt cold, so cold...
|
||||||
|
|
||||||
|
~ day_2_choice_1_1
|
||||||
|
|
||||||
|
- You told me you felt safe under God's protection. Is it still the case ? [if CurrentPatient.dialog_tree[1110] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1110] = "asked"
|
||||||
|
do CurrentPatient.marker[1] += 1
|
||||||
|
do CurrentPatient.dialog_flags["thought_content"].append("Mystical delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Yes, I still feel his Holy Presence within me, but it's getting fainter and fainter... This place is cursed. I need to get out of here fast.
|
||||||
|
|
||||||
|
if CurrentPatient.marker[1] == 2
|
||||||
|
set CurrentPatient.marker[1] = 0
|
||||||
|
=> day_2_choice_1
|
||||||
|
else
|
||||||
|
=> day_2_choice_1_1
|
||||||
|
|
||||||
|
- Were you able to see the Deceiver ? How did you know it was Him in your room last night ? [if CurrentPatient.dialog_tree[1120] == "not_asked"]
|
||||||
|
|
||||||
|
set CurrentPatient.dialog_tree[1120] = "asked"
|
||||||
|
do CurrentPatient.marker[1] += 1
|
||||||
|
do CurrentPatient.dialog_flags["perceptions"].append("Mystical delusions")
|
||||||
|
|
||||||
|
Mr Orleg: Because I KNOW it ! It starts with yellow water dripping from the ceilings, flowing more and more... the smell ! Gods, the smell...
|
||||||
|
|
||||||
|
if CurrentPatient.marker[1] == 2
|
||||||
|
set CurrentPatient.marker[1] = 0
|
||||||
|
=> day_2_choice_1
|
||||||
|
else
|
||||||
|
=> day_2_choice_1_1
|
||||||
|
|
||||||
|
=> day_2_choice_1
|
||||||
|
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="dialogue_manager_compiler_13"
|
||||||
|
type="Resource"
|
||||||
|
uid="uid://dh8ce25f0hs24"
|
||||||
|
path="res://.godot/imported/patient_1.dialogue-c504d8f23d2b90e6ee45f5c71c616a35.tres"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Dialogues/patient_1.dialogue"
|
||||||
|
dest_files=["res://.godot/imported/patient_1.dialogue-c504d8f23d2b90e6ee45f5c71c616a35.tres"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
defaults=true
|
||||||
+1
-1
@@ -3,7 +3,7 @@
|
|||||||
[ext_resource type="Script" path="res://main_hub.gd" id="1_rvfpd"]
|
[ext_resource type="Script" path="res://main_hub.gd" id="1_rvfpd"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cahspuhi43bx7" path="res://title_screen.tscn" id="2_3wmv1"]
|
[ext_resource type="PackedScene" uid="uid://cahspuhi43bx7" path="res://title_screen.tscn" id="2_3wmv1"]
|
||||||
[ext_resource type="PackedScene" uid="uid://chytk2cctjk3x" path="res://screening_desk.tscn" id="3_whctb"]
|
[ext_resource type="PackedScene" uid="uid://chytk2cctjk3x" path="res://screening_desk.tscn" id="3_whctb"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dcjhx2g4d056v" path="res://bedroom.tscn" id="4_4fm57"]
|
[ext_resource type="PackedScene" uid="uid://dcjhx2g4d056v" path="res://Bedroom.tscn" id="4_4fm57"]
|
||||||
[ext_resource type="PackedScene" uid="uid://igkl2384rxt1" path="res://text_screens.tscn" id="5_85o5j"]
|
[ext_resource type="PackedScene" uid="uid://igkl2384rxt1" path="res://text_screens.tscn" id="5_85o5j"]
|
||||||
[ext_resource type="PackedScene" uid="uid://dixsxwodxuf0b" path="res://dialogue_screens.tscn" id="6_60wm2"]
|
[ext_resource type="PackedScene" uid="uid://dixsxwodxuf0b" path="res://dialogue_screens.tscn" id="6_60wm2"]
|
||||||
|
|
||||||
|
|||||||
@@ -79,17 +79,11 @@ theme = SubResource("Theme_qq3yp")
|
|||||||
|
|
||||||
[node name="Panel" type="Panel" parent="Balloon"]
|
[node name="Panel" type="Panel" parent="Balloon"]
|
||||||
clip_children = 2
|
clip_children = 2
|
||||||
layout_mode = 1
|
layout_mode = 0
|
||||||
anchors_preset = 12
|
offset_left = 10.0
|
||||||
anchor_top = 1.0
|
offset_top = 820.0
|
||||||
anchor_right = 1.0
|
offset_right = 1260.0
|
||||||
anchor_bottom = 1.0
|
offset_bottom = 1070.0
|
||||||
offset_left = 21.0
|
|
||||||
offset_top = -183.0
|
|
||||||
offset_right = -19.0
|
|
||||||
offset_bottom = -19.0
|
|
||||||
grow_horizontal = 2
|
|
||||||
grow_vertical = 0
|
|
||||||
mouse_filter = 1
|
mouse_filter = 1
|
||||||
|
|
||||||
[node name="Dialogue" type="MarginContainer" parent="Balloon/Panel"]
|
[node name="Dialogue" type="MarginContainer" parent="Balloon/Panel"]
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
[gd_scene load_steps=2 format=3]
|
[gd_scene load_steps=2 format=3 uid="uid://cp33m8d3ha6s"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://addons/dialogue_manager/test_scene.gd" id="1_yupoh"]
|
[ext_resource type="Script" path="res://addons/dialogue_manager/test_scene.gd" id="1_yupoh"]
|
||||||
|
|
||||||
|
|
||||||
[node name="TestScene" type="Node2D"]
|
[node name="TestScene" type="Node2D"]
|
||||||
script = ExtResource("1_yupoh")
|
script = ExtResource("1_yupoh")
|
||||||
|
|||||||
@@ -0,0 +1,68 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
var emotion: String
|
||||||
|
var dialog_flags : Dictionary = {
|
||||||
|
"history_of_present_illness": [],
|
||||||
|
"appearance": [],
|
||||||
|
"behaviour": [],
|
||||||
|
"speech": [],
|
||||||
|
"thought_process": [],
|
||||||
|
"thought_content": [],
|
||||||
|
"perceptions": [],
|
||||||
|
"insight": [],
|
||||||
|
"sleep": [],
|
||||||
|
"mood": [],
|
||||||
|
"suicidal_ideation": [],
|
||||||
|
}
|
||||||
|
var dialog_tree: Dictionary
|
||||||
|
var marker: Array[int]
|
||||||
|
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
|
func _ready() -> void:
|
||||||
|
|
||||||
|
DialogueManager.got_dialogue.connect(_change_emotion)
|
||||||
|
|
||||||
|
marker.resize(10)
|
||||||
|
marker.fill(0)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
func new_patient(dialogue_resource):
|
||||||
|
|
||||||
|
var Balloon: Resource = preload("res://Dialogues/balloon.tscn")
|
||||||
|
var balloon: Node = Balloon.instantiate()
|
||||||
|
var panel = balloon.get_node("Balloon/Panel")
|
||||||
|
|
||||||
|
get_tree().current_scene.add_child(balloon)
|
||||||
|
balloon.start(dialogue_resource,"start")
|
||||||
|
|
||||||
|
panel.size = Vector2(1250, 250)
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
func build_dialog_tree(tree_model: Array[int]) -> Dictionary:
|
||||||
|
|
||||||
|
var branch : Dictionary
|
||||||
|
var tree : Dictionary
|
||||||
|
|
||||||
|
for branch_id in tree_model:
|
||||||
|
branch = {branch_id: "not_asked"}
|
||||||
|
tree.merge(branch)
|
||||||
|
|
||||||
|
return tree
|
||||||
|
|
||||||
|
|
||||||
|
func _change_emotion(dialogue_line) -> void:
|
||||||
|
|
||||||
|
var new_emotion = dialogue_line.tags
|
||||||
|
if new_emotion != null:
|
||||||
|
print("Emotion changed to", new_emotion)
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
func _process(delta: float) -> void:
|
||||||
|
pass
|
||||||
+1
-2
@@ -5,8 +5,7 @@ extends Control
|
|||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
self.hide()
|
self.hide()
|
||||||
|
|
||||||
func dialogue(dialogue_resource, dialogue_start):
|
|
||||||
DialogueManager.show_dialogue_balloon(dialogue_resource, dialogue_start)
|
|
||||||
|
|
||||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
func _process(delta: float) -> void:
|
func _process(delta: float) -> void:
|
||||||
|
|||||||
+15
-3
@@ -73,6 +73,8 @@ func skip_intro():
|
|||||||
transition("big", [$TitleScreen], [$ScreeningDesk, UI, UI.get_node("UI/UpperContainer")])
|
transition("big", [$TitleScreen], [$ScreeningDesk, UI, UI.get_node("UI/UpperContainer")])
|
||||||
await TransitionScreen.transition_finished
|
await TransitionScreen.transition_finished
|
||||||
|
|
||||||
|
gameplay_loop(load("res://Dialogues/patient_1.dialogue"))
|
||||||
|
|
||||||
|
|
||||||
#Plays the entire introduction
|
#Plays the entire introduction
|
||||||
func play_intro():
|
func play_intro():
|
||||||
@@ -91,12 +93,22 @@ func play_intro():
|
|||||||
transition("big", [$TextScreens, text_container.get_child(4), UI, UI.get_node("UI/SkipContainer")], [$DialogueScreens])
|
transition("big", [$TextScreens, text_container.get_child(4), UI, UI.get_node("UI/SkipContainer")], [$DialogueScreens])
|
||||||
await TransitionScreen.transition_finished
|
await TransitionScreen.transition_finished
|
||||||
|
|
||||||
$DialogueScreens.dialogue(dialogue_intro, "start")
|
DialogueManager.show_dialogue_balloon(dialogue_intro, "start")
|
||||||
await DialogueManager.dialogue_ended
|
await DialogueManager.dialogue_ended
|
||||||
|
|
||||||
#Transition to the Screening Desk
|
#Transition to the Screening Desk
|
||||||
transition("big", [$DialogueScreens], [$ScreeningDesk])
|
transition("big", [$DialogueScreens], [$ScreeningDesk, UI, UI.get_node("UI/UpperContainer")])
|
||||||
await UI.next_slide
|
await TransitionScreen.transition_finished
|
||||||
|
|
||||||
|
gameplay_loop(load("res://Dialogues/patient_1.dialogue"))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
func gameplay_loop(dialogue_resource):
|
||||||
|
|
||||||
|
CurrentPatient.new_patient(dialogue_resource)
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+3
-2
@@ -17,9 +17,10 @@ config/features=PackedStringArray("4.3", "Forward Plus")
|
|||||||
[autoload]
|
[autoload]
|
||||||
|
|
||||||
TransitionScreen="*res://transition_screen.tscn"
|
TransitionScreen="*res://transition_screen.tscn"
|
||||||
Globals="*res://globals.gd"
|
|
||||||
DialogueManager="*res://addons/dialogue_manager/dialogue_manager.gd"
|
DialogueManager="*res://addons/dialogue_manager/dialogue_manager.gd"
|
||||||
|
Globals="*res://globals.gd"
|
||||||
UI="*res://ui.tscn"
|
UI="*res://ui.tscn"
|
||||||
|
CurrentPatient="*res://current_patient.gd"
|
||||||
|
|
||||||
[dialogue_manager]
|
[dialogue_manager]
|
||||||
|
|
||||||
@@ -54,4 +55,4 @@ ui_select={
|
|||||||
|
|
||||||
[internationalization]
|
[internationalization]
|
||||||
|
|
||||||
locale/translations_pot_files=PackedStringArray("res://Dialogues/intro.dialogue")
|
locale/translations_pot_files=PackedStringArray("res://Dialogues/intro.dialogue", "res://Dialogues/mr_orleg.dialogue", "res://Dialogues/patient_1.dialogue")
|
||||||
|
|||||||
+26
-19
@@ -40,7 +40,7 @@ theme_override_constants/separation = 0
|
|||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
size_flags_stretch_ratio = 1.5
|
size_flags_stretch_ratio = 2.0
|
||||||
texture = ExtResource("3_vcj7d")
|
texture = ExtResource("3_vcj7d")
|
||||||
expand_mode = 1
|
expand_mode = 1
|
||||||
|
|
||||||
@@ -53,32 +53,32 @@ theme_override_constants/separation = 0
|
|||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
size_flags_stretch_ratio = 0.8
|
size_flags_stretch_ratio = 2.0
|
||||||
texture = ExtResource("4_ronmq")
|
texture = ExtResource("4_ronmq")
|
||||||
expand_mode = 1
|
expand_mode = 1
|
||||||
|
|
||||||
[node name="ColorRect" type="ColorRect" parent="Background/HBoxContainer/VBoxContainer"]
|
[node name="MarginContainer" type="MarginContainer" parent="Background/HBoxContainer/VBoxContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
size_flags_stretch_ratio = 0.2
|
|
||||||
|
[node name="ColorRect" type="ColorRect" parent="Background/HBoxContainer/VBoxContainer/MarginContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
size_flags_vertical = 3
|
||||||
color = Color(0, 0, 0, 1)
|
color = Color(0, 0, 0, 1)
|
||||||
|
|
||||||
[node name="LowerBorder" type="TextureRect" parent="Background"]
|
[node name="MarginContainer" type="MarginContainer" parent="Background/HBoxContainer/VBoxContainer/MarginContainer"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
theme_override_constants/margin_left = 10
|
||||||
size_flags_stretch_ratio = 0.1
|
theme_override_constants/margin_top = 10
|
||||||
texture = ExtResource("1_r2ji1")
|
theme_override_constants/margin_right = 15
|
||||||
expand_mode = 1
|
theme_override_constants/margin_bottom = 10
|
||||||
|
|
||||||
[node name="Choices" type="GridContainer" parent="."]
|
[node name="Choices" type="GridContainer" parent="Background/HBoxContainer/VBoxContainer/MarginContainer/MarginContainer"]
|
||||||
layout_mode = 0
|
layout_mode = 2
|
||||||
offset_left = 1171.0
|
|
||||||
offset_top = 836.0
|
|
||||||
offset_right = 1900.0
|
|
||||||
offset_bottom = 1012.0
|
|
||||||
columns = 2
|
columns = 2
|
||||||
|
|
||||||
[node name="PatientProfile" type="Button" parent="Choices"]
|
[node name="PatientProfile" type="Button" parent="Background/HBoxContainer/VBoxContainer/MarginContainer/MarginContainer/Choices"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
@@ -86,23 +86,30 @@ theme_override_font_sizes/font_size = 25
|
|||||||
text = "Check Patient's Profile
|
text = "Check Patient's Profile
|
||||||
"
|
"
|
||||||
|
|
||||||
[node name="Examine" type="Button" parent="Choices"]
|
[node name="Examine" type="Button" parent="Background/HBoxContainer/VBoxContainer/MarginContainer/MarginContainer/Choices"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
theme_override_font_sizes/font_size = 25
|
theme_override_font_sizes/font_size = 25
|
||||||
text = "Examine"
|
text = "Examine"
|
||||||
|
|
||||||
[node name="Containment" type="Button" parent="Choices"]
|
[node name="Containment" type="Button" parent="Background/HBoxContainer/VBoxContainer/MarginContainer/MarginContainer/Choices"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
theme_override_font_sizes/font_size = 25
|
theme_override_font_sizes/font_size = 25
|
||||||
text = "Send to Containment"
|
text = "Send to Containment"
|
||||||
|
|
||||||
[node name="PsychWard" type="Button" parent="Choices"]
|
[node name="PsychWard" type="Button" parent="Background/HBoxContainer/VBoxContainer/MarginContainer/MarginContainer/Choices"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_horizontal = 3
|
size_flags_horizontal = 3
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
theme_override_font_sizes/font_size = 25
|
theme_override_font_sizes/font_size = 25
|
||||||
text = "Send to Psych Ward"
|
text = "Send to Psych Ward"
|
||||||
|
|
||||||
|
[node name="LowerBorder" type="TextureRect" parent="Background"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_vertical = 3
|
||||||
|
size_flags_stretch_ratio = 0.1
|
||||||
|
texture = ExtResource("1_r2ji1")
|
||||||
|
expand_mode = 1
|
||||||
|
|||||||
Reference in New Issue
Block a user