Dialogue responses rework
This commit is contained in:
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
+4
-4
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://562ncd84ds07"
|
||||
path="res://.godot/imported/it_that_feels_neutral.png-564e0aec8cc37b80b5b34737ad8f4026.ctex"
|
||||
uid="uid://dl122bjrxwy1v"
|
||||
path="res://.godot/imported/it_that_feels_01_neutral.png-a3484b5e6b307d047d917f3599bfd467.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Art/Subjects/Entities/it_that_feels/it_that_feels_neutral.png"
|
||||
dest_files=["res://.godot/imported/it_that_feels_neutral.png-564e0aec8cc37b80b5b34737ad8f4026.ctex"]
|
||||
source_file="res://Art/Subjects/Entities/it_that_feels_01/it_that_feels_01_neutral.png"
|
||||
dest_files=["res://.godot/imported/it_that_feels_01_neutral.png-a3484b5e6b307d047d917f3599bfd467.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
~ start
|
||||
|
||||
do Patient.marker.fill(0)
|
||||
set Patient.dialog_tree = Patient.build_dialog_tree([31,32,33,34])
|
||||
|
||||
do Globals.release_display.emit("[color=orange_red]ERROR[/color]")
|
||||
do Globals.terminate_display.emit("[color=orange_red]ERROR[/color]")
|
||||
set Globals.buttons_activated = false
|
||||
|
||||
[#neutral] A tall being stands motionlessly before you, its head slightly inclined towards the glass. Two almond-shaped, void-black holes stand in place of its eyes.
|
||||
|
||||
~ part_1
|
||||
|
||||
- Where are your eyes ?
|
||||
=> part_2
|
||||
- What have you done to the controls ? Why can't I dispatch you ?
|
||||
=> part_2
|
||||
- Decline your identity.
|
||||
=> part_2
|
||||
- What do you want ?
|
||||
=> part_2
|
||||
|
||||
~ part_2
|
||||
The being remains absolutely still, its mouth as motionless as the rest of its physical enveloppe.
|
||||
Suddenly, you hear a crystal clear voice, neither feminine nor masculine, resonating directly within the confines of your own skull.
|
||||
?????: ... [color=dark_gray]Silence. There is no time. LISTEN.[/color]
|
||||
?????: ... [color=dark_gray]It is hunting you. It desires you. It wants you whole.[/color]
|
||||
?????: ... [color=dark_gray]Do not let it. Do not free it. Do not spare it.[/color]
|
||||
=> part_3
|
||||
|
||||
|
||||
~ part_3
|
||||
if Patient.marker[3] >= 4
|
||||
=> part_4
|
||||
|
||||
- Wait, how are you talking directly in my head ? [if Patient.dialog_tree[31] == "not_asked"]
|
||||
set Patient.dialog_tree[31] = "asked"
|
||||
do Patient.marker[3] += 1
|
||||
?????: ... [color=dark_gray]Irrelevant information. Next question.[/color]
|
||||
=> part_3
|
||||
|
||||
- Who the hell are you ? Why should I listen to you ? [if Patient.dialog_tree[32] == "not_asked"]
|
||||
set Patient.dialog_tree[32] = "asked"
|
||||
do Patient.marker[3] += 1
|
||||
?????: ... [color=dark_gray]Who I am matters not. To listen or not is your choice. There is no should. Only would.[/color]
|
||||
?????: ... [color=dark_gray]Exert your will upon reality.[/color]
|
||||
=> part_3
|
||||
|
||||
- Who's "it" ? Why is it hunting me ? [if Patient.dialog_tree[33] == "not_asked"]
|
||||
set Patient.dialog_tree[33] = "asked"
|
||||
do Patient.marker[3] += 1
|
||||
?????: ... [color=dark_gray]You talked to It. It was SMILING. Mouth like a dark-red abyss, eyes like glowing beads of coalesced blood.[/color]
|
||||
?????: ... [color=dark_gray]It tries to smile. It doesn't understand it. But It wants to. It wants YOU. It wants your smile.[/color]
|
||||
=> part_3
|
||||
|
||||
- Why are you warning me ? [if Patient.dialog_tree[34] == "not_asked"]
|
||||
set Patient.dialog_tree[34] = "asked"
|
||||
do Patient.marker[3] += 1
|
||||
?????: ... [color=dark_gray]I shall watch. I shall ascertain. I shall ponder. I shall FEEL.[/color]
|
||||
=> part_3
|
||||
|
||||
|
||||
~ part_4
|
||||
- What do you want from me ??
|
||||
?????: ... [color=dark_gray]It hides amongst humans. It disguises. It wears them.[/color]
|
||||
?????: ... [color=dark_gray]As soon as It SMILES...[/color] [color=red]TERMINATE[/color] [color=dark_gray]It.[/color]
|
||||
=> part_end
|
||||
|
||||
|
||||
~ part_end
|
||||
?????: ... [color=dark_gray]Remember. If you recognize It... TERMINATE IT. DO NOT FREE IT.[/color]
|
||||
do Globals.color_change.emit("green")
|
||||
do Globals.clear_patient.emit("release")
|
||||
=> END
|
||||
@@ -1,16 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="dialogue_manager"
|
||||
importer_version=15
|
||||
type="Resource"
|
||||
uid="uid://o2knx4xqurjv"
|
||||
path="res://.godot/imported/it_that_feels.dialogue-86e3caa72ee73d90f83a69c31fd7dc42.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Dialogues/Entities/it_that_feels.dialogue"
|
||||
dest_files=["res://.godot/imported/it_that_feels.dialogue-86e3caa72ee73d90f83a69c31fd7dc42.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
@@ -0,0 +1,91 @@
|
||||
~ start
|
||||
|
||||
do Patient.marker.fill(0)
|
||||
set Patient.dialog_tree = Patient.build_dialog_tree([31,32,33,34,41,42])
|
||||
|
||||
do Globals.character_label_color_change.emit(Color(0.5,0.5,0.5,1))
|
||||
|
||||
do Globals.release_display.emit("[color=orange_red]ERROR[/color]")
|
||||
do Globals.terminate_display.emit("[color=orange_red]ERROR[/color]")
|
||||
set Globals.buttons_activated = false
|
||||
|
||||
[#neutral] A tall being stands motionlessly before you, its head slightly inclined towards the glass. Two almond-shaped, void-black holes stand in place of its eyes.
|
||||
|
||||
~ part_1_1
|
||||
|
||||
- Where are your eyes ?
|
||||
=> part_1_2
|
||||
- What have you done to the controls ? Why can't I dispatch you ?
|
||||
=> part_1_2
|
||||
- Decline your identity.
|
||||
=> part_1_2
|
||||
- What do you want ?
|
||||
=> part_1_2
|
||||
|
||||
~ part_1_2
|
||||
The being remains absolutely still, its mouth as motionless as the rest of its physical enveloppe.
|
||||
Suddenly, you hear a crystal clear voice, neither feminine nor masculine, resonating directly within the confines of your own skull.
|
||||
?????: [color=dark_gray]... Silence. There is no time. LISTEN.[/color]
|
||||
?????: [color=dark_gray]... It is hunting you. It desires you. It wants you whole.[/color]
|
||||
?????: [color=dark_gray]... Do not let it. Spare It.[/color] [color=green]FREE[/color] [color=dark_gray]It.[/color]
|
||||
=> part_1_3
|
||||
|
||||
|
||||
~ part_1_3
|
||||
if Patient.marker[3] >= 4
|
||||
=> part_1_4
|
||||
|
||||
- Wait, how are you talking directly in my head ? [if Patient.dialog_tree[31] == "not_asked"]
|
||||
set Patient.dialog_tree[31] = "asked"
|
||||
do Patient.marker[3] += 1
|
||||
?????: [color=dark_gray]... Irrelevant information. Next question.[/color]
|
||||
=> part_1_3
|
||||
|
||||
- Who the hell are you ? Why should I listen to you ? [if Patient.dialog_tree[32] == "not_asked"]
|
||||
set Patient.dialog_tree[32] = "asked"
|
||||
do Patient.marker[3] += 1
|
||||
?????: [color=dark_gray]... Who I am matters not. To listen or not is your choice. There is no should. Only would.[/color]
|
||||
?????: [color=dark_gray]... Exert your will upon reality.[/color]
|
||||
=> part_1_3
|
||||
|
||||
- Who's "it" ? Why is it hunting me ? [if Patient.dialog_tree[33] == "not_asked"]
|
||||
set Patient.dialog_tree[33] = "asked"
|
||||
do Patient.marker[3] += 1
|
||||
?????: [color=dark_gray]... You talked to It. It was SMILING. Mouth a dark-red abyss, eyes glowing beads of coalesced blood.[/color]
|
||||
?????: [color=dark_gray]... It tries to smile. It doesn't understand it. But It wants to. It wants YOU. It wants your smile.[/color]
|
||||
=> part_1_3
|
||||
|
||||
- What exactly do you want from me ? [if Patient.dialog_tree[34] == "not_asked"]
|
||||
set Patient.dialog_tree[34] = "asked"
|
||||
do Patient.marker[3] += 1
|
||||
?????: [color=dark_gray]... It hides amongst humans. It disguises. It wears them.[/color]
|
||||
?????: [color=dark_gray]... As soon as It SMILES...[/color] [color=green]RELEASE[/color] [color=dark_gray]It.[/color]
|
||||
=> part_1_3
|
||||
|
||||
|
||||
~ part_1_4
|
||||
if Patient.marker[4] >= 2
|
||||
?????: [color=dark_gray]... Remember. If you recognize It... RELEASE IT. FREE IT.[/color]
|
||||
do Globals.decision_made.emit("release")
|
||||
=> END
|
||||
|
||||
- Why do you want me to release it ? [if Patient.dialog_tree[41] == "not_asked"]
|
||||
set Patient.dialog_tree[41] = "asked"
|
||||
do Patient.marker[4] += 1
|
||||
?????: [color=dark_gray]... I shall watch. I shall ascertain. I shall ponder. I shall FEEL.[/color]
|
||||
=> part_1_4
|
||||
|
||||
- I just got orders to terminate this entity. How convenient you appeared right after to tell me the opposite. [if Patient.dialog_tree[42] == "not_asked"]
|
||||
set Patient.dialog_tree[42] = "asked"
|
||||
do Patient.marker[4] += 1
|
||||
?????: [color=dark_gray]... Do not trust Loeveth. Do NOT.[/color]
|
||||
|
||||
- What do you mean ? How do you know her name ??
|
||||
?????: [color=dark_gray]... She matters not. Listen to ME.[/color]
|
||||
=> part_1_4
|
||||
|
||||
~ release
|
||||
do Globals.color_change.emit("green")
|
||||
The being shows no signs of movement as the release protocol activates itself.
|
||||
do Globals.clear_patient.emit("release")
|
||||
=> END
|
||||
@@ -0,0 +1,16 @@
|
||||
[remap]
|
||||
|
||||
importer="dialogue_manager"
|
||||
importer_version=15
|
||||
type="Resource"
|
||||
uid="uid://o2knx4xqurjv"
|
||||
path="res://.godot/imported/it_that_feels_01.dialogue-253ba7b9f4645124b87083158477f49b.tres"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Dialogues/Entities/it_that_feels_01.dialogue"
|
||||
dest_files=["res://.godot/imported/it_that_feels_01.dialogue-253ba7b9f4645124b87083158477f49b.tres"]
|
||||
|
||||
[params]
|
||||
|
||||
defaults=true
|
||||
@@ -91,6 +91,8 @@ do Globals.console_message.emit("[color=dark_orange]ALLOTED ASSESSMENT TIME ELAP
|
||||
~ terminate
|
||||
do Globals.color_change.emit("red")
|
||||
[#angry] Its gaze remains fixated on you as the doors close.
|
||||
set Globals.event_index = "supervisor"
|
||||
set Globals.supervisor_index = 1
|
||||
do Globals.clear_patient.emit("terminate")
|
||||
do UI.save_slot_pressed.emit(0)
|
||||
=> END
|
||||
@@ -99,6 +101,8 @@ do UI.save_slot_pressed.emit(0)
|
||||
~ release
|
||||
do Globals.color_change.emit("green")
|
||||
[#angry] Its gaze remains fixated on you as the doors close.
|
||||
set Globals.event_index = "supervisor"
|
||||
set Globals.supervisor_index = 1
|
||||
do Globals.clear_patient.emit("release")
|
||||
do UI.save_slot_pressed.emit(0)
|
||||
=> END
|
||||
@@ -8,14 +8,6 @@ do Globals.character_label_color_change.emit(Color(0,0.8,1,1))
|
||||
Prime Supervisor Loeveth: [#neutral] Greetings, employee. I am Prime Supervisor Loeveth. I shall be overseeing your labor in this facility.
|
||||
Prime Supervisor Loeveth: [#neutral] The importance of your work here cannot be overstated. Would you like one last reminder of your duties ?
|
||||
|
||||
- It's fine, I already know what to do.
|
||||
Prime Supervisor Loeveth: [#neutral] So be it. Do not disappoint me.
|
||||
Prime Supervisor Loeveth: [#neutral] The Republic withstands.
|
||||
- The Republic shelters.
|
||||
set Globals.event_index = 1
|
||||
do Globals.next_event.emit(1)
|
||||
=> END
|
||||
|
||||
- Yes, my memory could use some refreshing.
|
||||
Prime Supervisor Loeveth: [#neutral] As you may recall, a new blight is wreaking havoc upon our world. People from all over the globe are turning into [color=red]Abnormals[/color]. Alien creatures devoid of humanity.
|
||||
Prime Supervisor Loeveth: [#neutral] Individuals with psychological vulnerabilities seem to be the most likely to undergo abnormality conversion.
|
||||
@@ -53,14 +45,21 @@ Prime Supervisor Loeveth: [#neutral] The importance of your work here cannot be
|
||||
Prime Supervisor Loeveth: [#neutral] Which makes your work all the more vital. The more Abnormals you successfully identify, the more data we have to further research.
|
||||
=> part_0_1
|
||||
|
||||
- I am ready to start.
|
||||
- [color=gold]I am ready to start.[/color]
|
||||
Prime Supervisor Loeveth: [#neutral] So be it. Do not disappoint me.
|
||||
Prime Supervisor Loeveth: [#neutral] The Republic withstands.
|
||||
- The Republic shelters.
|
||||
set Globals.event_index = 1
|
||||
do Globals.next_event.emit(1)
|
||||
set Globals.event_index = "next_patient"
|
||||
do Globals.next_event.emit("next_patient")
|
||||
=> END
|
||||
|
||||
- [color=gold]It's fine, I already know what to do.[/color]
|
||||
Prime Supervisor Loeveth: [#neutral] So be it. Do not disappoint me.
|
||||
Prime Supervisor Loeveth: [#neutral] The Republic withstands.
|
||||
- The Republic shelters.
|
||||
set Globals.event_index = "next_patient"
|
||||
do Globals.next_event.emit()
|
||||
=> END
|
||||
|
||||
|
||||
~ interfloor_1
|
||||
@@ -77,16 +76,17 @@ Prime Supervisor Loeveth: Do not let yourself be fooled by their inhuman humanit
|
||||
Prime Supervisor Loeveth: Your [color=blue]MANUAL[/color] has been updated with new symptoms to identify. Make sure to read it before your next patient.
|
||||
Prime Supervisor Loeveth: Do your Duty. For the Republic.
|
||||
|
||||
set Globals.event_index = 1
|
||||
do Globals.next_event.emit(1)
|
||||
=> END
|
||||
- The Republic shelters.
|
||||
set Globals.event_index = "next_patient"
|
||||
do Globals.next_event.emit()
|
||||
=> END
|
||||
|
||||
|
||||
|
||||
~ interfloor_2
|
||||
|
||||
do Patient.marker.fill(0)
|
||||
set Patient.dialog_tree = Patient.build_dialog_tree([21])
|
||||
set Patient.dialog_tree = Patient.build_dialog_tree([11,12,13])
|
||||
|
||||
do Globals.character_label_color_change.emit(Color(0,0.8,1,1))
|
||||
|
||||
@@ -94,22 +94,36 @@ Prime Supervisor Loeveth: [#neutral] Your performance is impressive, employee. I
|
||||
Prime Supervisor Loeveth: There is something important you need to be aware of, however. Listen carefully.
|
||||
Prime Supervisor Loeveth: The... being you encountered at the start of the previous floor has been identified as a special entity, of inhuman nature.
|
||||
Prime Supervisor Loeveth: According to Monitoring, this entity seems to have... spread amongst the facility's subjects.
|
||||
Prime Supervisor Loeveth: Be on your guard. If you identify a subject as being infected by this entity, your orders are to [color=red]TERMINATE it immediately[/color].
|
||||
Prime Supervisor Loeveth: Be on your guard. If you identify a subject as being infected by this entity, your orders are to [color=red]TERMINATE It immediately[/color].
|
||||
Prime Supervisor Loeveth: Any questions, employee ?
|
||||
=> part_2_1
|
||||
|
||||
~ part_2_1
|
||||
- I have screened a lot of subjects. Who are you referring to, again ? [if Patient.marker[21]]
|
||||
set Patient.dialog_tree[21] = "asked"
|
||||
Prime Supervisor Loeveth: A tall being, mmuscular, pale skin. A wide grin, with a toothless, dark-red abyss of a mouth. Not very talkative. Likes to smile.
|
||||
Prime Supervisor Loeveth: It is not a who. It is an It. It is not human.
|
||||
- I have screened a lot of subjects. Who are you referring to, again ? [if Patient.dialog_tree[11] == "not_asked"]
|
||||
set Patient.dialog_tree[11] = "asked"
|
||||
Prime Supervisor Loeveth: A tall being, muscular, pale skin. A wide grin, with a toothless, dark-red mouth. Not very talkative. Likes to smile.
|
||||
Prime Supervisor Loeveth: It is not a "Who". It is an "It". It is not human.
|
||||
=> part_2_1
|
||||
|
||||
- Can you elaborate on how I am supposed to recognize this entity ? [if Patient.dialog_tree[12] == "not_asked"]
|
||||
set Patient.dialog_tree[12] = "asked"
|
||||
Prime Supervisor Loeveth: Early data reports seem to indicate that this entity can easily disguise itself as a standard human.
|
||||
Prime Supervisor Loeveth: However, there is one telltale sign that distinguishes It clearly from other beings: Its [color=red]smile[/color].
|
||||
Prime Supervisor Loeveth: An impossibly wide smile, revealing a toothless red void. If you ever see a subject with such a feature, [color=red]stop talking to It immediately, and terminate It on the spot[/color].
|
||||
=> part_2_1
|
||||
|
||||
set Globals.event_index = 1
|
||||
do Globals.next_event.emit(1)
|
||||
=> END
|
||||
- An inhuman being ? I thought we were trying to combat some kind of virus ? [if Patient.dialog_tree[13] == "not_asked"]
|
||||
set Patient.dialog_tree[13] = "asked"
|
||||
Prime Supervisor Loeveth: I am afraid your clearance doesn't allow for further information.
|
||||
Prime Supervisor Loeveth: Prove your worth, employee. Keep progressing to the lower floors, and I shall reward you with the gift of knowledge.
|
||||
=> part_2_1
|
||||
|
||||
- [color=gold]I have no more questions. Work awaits.[/color]
|
||||
Prime Supervisor Loeveth: Well said. The Republic withstands.
|
||||
- The Republic shelters.
|
||||
set Globals.event_index = "next_patient"
|
||||
do Globals.next_event.emit()
|
||||
=> END
|
||||
|
||||
|
||||
~ interfloor_3
|
||||
@@ -120,8 +134,8 @@ set Patient.dialog_tree = Patient.build_dialog_tree([21,22,23,24,61,62,63])
|
||||
do Globals.character_label_color_change.emit(Color(0,0.8,1,1))
|
||||
|
||||
WORK_IN_PROGRESS
|
||||
set Globals.event_index = 1
|
||||
do Globals.next_event.emit(1)
|
||||
set Globals.event_index = "next_patient"
|
||||
do Globals.next_event.emit()
|
||||
=> END
|
||||
|
||||
|
||||
@@ -134,6 +148,22 @@ set Patient.dialog_tree = Patient.build_dialog_tree([21,22,23,24,61,62,63])
|
||||
do Globals.character_label_color_change.emit(Color(0,0.8,1,1))
|
||||
|
||||
WORK_IN_PROGRESS
|
||||
set Globals.event_index = 1
|
||||
do Globals.next_event.emit(1)
|
||||
set Globals.event_index = "next_patient"
|
||||
do Globals.next_event.emit()
|
||||
=> END
|
||||
|
||||
|
||||
~ dialogue_1
|
||||
|
||||
do Patient.marker.fill(0)
|
||||
set Patient.dialog_tree = Patient.build_dialog_tree([21,22,23,24,61,62,63])
|
||||
|
||||
do Globals.character_label_color_change.emit(Color(0,0.8,1,1))
|
||||
|
||||
Prime Supervisor Loeveth: [#neutral] What
|
||||
|
||||
set Globals.event_index = "next_patient"
|
||||
do Globals.next_event.emit()
|
||||
|
||||
=> END
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ var dialogue_line: DialogueLine:
|
||||
dialogue_label.dialogue_line = dialogue_line
|
||||
|
||||
responses_menu.hide()
|
||||
dialogue_line.responses.reverse()
|
||||
#dialogue_line.responses.reverse()
|
||||
responses_menu.responses = dialogue_line.responses
|
||||
|
||||
# Show our balloon
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=11 format=3 uid="uid://7uw7j7ymucjx"]
|
||||
[gd_scene load_steps=13 format=3 uid="uid://7uw7j7ymucjx"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://bopx5vxrplpny" path="res://Dialogues/balloon.gd" id="1_qpb08"]
|
||||
[ext_resource type="FontFile" uid="uid://dv8ppra5tgn1t" path="res://Art/Fonts/PixelatedEleganceRegular-ovyAA.ttf" id="2_iaaie"]
|
||||
@@ -43,6 +43,17 @@ MarginContainer/constants/margin_right = 30
|
||||
MarginContainer/constants/margin_top = 15
|
||||
Panel/styles/panel = SubResource("StyleBoxEmpty_cypdp")
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_qpb08"]
|
||||
content_margin_left = 20.0
|
||||
content_margin_top = 20.0
|
||||
content_margin_right = 20.0
|
||||
content_margin_bottom = 20.0
|
||||
bg_color = Color(0.19607843, 0.19607843, 0.19607843, 1)
|
||||
|
||||
[sub_resource type="Theme" id="Theme_iaaie"]
|
||||
RichTextLabel/constants/line_separation = 5
|
||||
RichTextLabel/styles/normal = SubResource("StyleBoxFlat_qpb08")
|
||||
|
||||
[node name="ExampleBalloon" type="CanvasLayer"]
|
||||
layer = 99
|
||||
script = ExtResource("1_qpb08")
|
||||
@@ -142,15 +153,26 @@ unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 2
|
||||
script = ExtResource("4_n1yqk")
|
||||
response_template = NodePath("ResponseExample")
|
||||
response_template = NodePath("ResponseTemplate")
|
||||
|
||||
[node name="ResponseExample" type="Button" parent="Balloon/Responses/ResponsesMenu"]
|
||||
visible = false
|
||||
layout_mode = 2
|
||||
theme_override_fonts/font = ExtResource("2_iaaie")
|
||||
theme_override_font_sizes/font_size = 16
|
||||
text = "What brought you here ?"
|
||||
autowrap_mode = 2
|
||||
|
||||
[node name="ResponseTemplate" type="RichTextLabel" parent="Balloon/Responses/ResponsesMenu"]
|
||||
layout_mode = 2
|
||||
theme = SubResource("Theme_iaaie")
|
||||
theme_override_fonts/normal_font = ExtResource("2_iaaie")
|
||||
theme_override_font_sizes/normal_font_size = 16
|
||||
bbcode_enabled = true
|
||||
text = "This is a response template. This sentence is used here as an example."
|
||||
fit_content = true
|
||||
vertical_alignment = 1
|
||||
|
||||
[connection signal="gui_input" from="Balloon" to="." method="_on_balloon_gui_input"]
|
||||
[connection signal="gui_input" from="Balloon/Panel" to="." method="_on_balloon_gui_input"]
|
||||
[connection signal="response_selected" from="Balloon/Responses/ResponsesMenu" to="." method="_on_responses_menu_response_selected"]
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
extends Control
|
||||
|
||||
@onready var label = $Text
|
||||
@onready var button = $Button
|
||||
@onready var text = $Text.text
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
pass
|
||||
@@ -0,0 +1 @@
|
||||
uid://blskmem7cshrj
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"accurate_diagnoses":0,"daily_patient_limit":6,"day_count":1,"diagnoses_quota":2,"entities_list":[["entity_01"]],"entities_seen":[],"event_index":0,"floor_count":-2,"its_list":["its_01"],"its_seen":[],"patient_count":0,"patient_list":[{"patient_43":1},{"patient_42":2,"patient_43":1,"patient_44":2,"patient_48":2,"patient_50":2,"patient_51":2},{"patient_42":2,"patient_43":1,"patient_44":2,"patient_47":3,"patient_48":2,"patient_49":3,"patient_50":2,"patient_51":2},{"patient_42":2,"patient_43":1,"patient_44":2,"patient_45":4,"patient_47":3,"patient_48":2,"patient_49":3,"patient_50":2,"patient_51":2},{"patient_42":2,"patient_43":1,"patient_44":2,"patient_45":4,"patient_47":3,"patient_48":2,"patient_49":3,"patient_50":2,"patient_51":2}],"patients_seen":["patient_46"],"save_date":"03/12/2026, 10:36"}
|
||||
{"accurate_diagnoses":1,"daily_patient_limit":6,"day_count":1,"diagnoses_quota":4,"entities_current_floor":[],"entities_list":["entity_01"],"entities_seen":[],"event_index":"supervisor","floor_count":-2,"its_list":["its_01"],"its_seen":["its_00"],"patient_count":1,"patient_list":[{"patient_43":1,"patient_46":1},{"patient_42":2,"patient_43":1,"patient_44":2,"patient_46":1,"patient_48":2,"patient_50":2,"patient_51":2},{"patient_42":2,"patient_43":1,"patient_44":2,"patient_46":1,"patient_47":3,"patient_48":2,"patient_49":3,"patient_50":2,"patient_51":2},{"patient_42":2,"patient_43":1,"patient_44":2,"patient_45":4,"patient_46":1,"patient_47":3,"patient_48":2,"patient_49":3,"patient_50":2,"patient_51":2},{"patient_42":2,"patient_43":1,"patient_44":2,"patient_45":4,"patient_46":1,"patient_47":3,"patient_48":2,"patient_49":3,"patient_50":2,"patient_51":2}],"patients_seen":[],"save_date":"03/26/2026, 15:45","supervisor_index":1}
|
||||
@@ -9,7 +9,8 @@ var accurate_diagnoses : int = 0
|
||||
var diagnoses_quota : int = 1
|
||||
var daily_patient_limit : int = 3
|
||||
var patient_list = []
|
||||
var event_index = 0
|
||||
var event_index : String = ""
|
||||
var supervisor_index : int = 1
|
||||
|
||||
#Variables for UI
|
||||
var save_slot_count = 4 #How many save slots there are in the game, in addition to the autosave slot
|
||||
@@ -31,6 +32,7 @@ var buttons_activated: bool = true
|
||||
signal console_message
|
||||
signal response_chosen(DialogueResponse)
|
||||
signal clear_patient
|
||||
signal decision_made
|
||||
signal color_change
|
||||
signal character_label_color_change
|
||||
signal start_balloon
|
||||
|
||||
+6
-3
@@ -56,11 +56,12 @@ func _on_new_game_pressed():
|
||||
|
||||
#Setting/Resetting game parameters
|
||||
Globals.day_count = 1
|
||||
Globals.floor_count = -3
|
||||
Globals.floor_count = -2
|
||||
Globals.patient_count = 0
|
||||
Globals.accurate_diagnoses = 0
|
||||
Globals.diagnoses_quota = 4
|
||||
Globals.daily_patient_limit = 6
|
||||
Globals.event_index = "interfloor"
|
||||
for i in range(len(Patient.patient_list)):
|
||||
Patient.patient_list[i] = Patient.og_patient_list[i]
|
||||
Patient.its_list = Patient.og_its_list
|
||||
@@ -108,7 +109,7 @@ func start_day():
|
||||
UI.masks.transition(scenes_to_hide, scenes_to_show)
|
||||
await UI.masks.transition_finished
|
||||
|
||||
$ScreeningDesk.event_manager(Globals.event_index)
|
||||
$ScreeningDesk.event_manager()
|
||||
|
||||
|
||||
#Saves game state on the selected save slot
|
||||
@@ -119,6 +120,7 @@ func save_game(save_slot_number:int):
|
||||
"day_count": Globals.day_count,
|
||||
"floor_count": Globals.floor_count,
|
||||
"event_index": Globals.event_index,
|
||||
"supervisor_index": Globals.supervisor_index,
|
||||
"patient_count": Globals.patient_count,
|
||||
"accurate_diagnoses": Globals.accurate_diagnoses,
|
||||
"diagnoses_quota": Globals.diagnoses_quota,
|
||||
@@ -173,7 +175,8 @@ func load_game(load_slot_number:int):
|
||||
print("Loaded save: " + str(load_data))
|
||||
Globals.day_count = load_data["day_count"]
|
||||
Globals.floor_count = load_data["floor_count"]
|
||||
Globals.event_index = int(load_data["event_index"])
|
||||
Globals.event_index = load_data["event_index"]
|
||||
Globals.supervisor_index = load_data["supervisor_index"]
|
||||
Globals.patient_count = load_data["patient_count"]
|
||||
Globals.accurate_diagnoses = load_data["accurate_diagnoses"]
|
||||
Globals.diagnoses_quota = load_data["diagnoses_quota"]
|
||||
|
||||
@@ -238,7 +238,7 @@ func next_patient() -> Dictionary: #Decides next patient ID
|
||||
next_id = generate_next_id(next_type)
|
||||
-3:
|
||||
if Globals.patient_count == 0:
|
||||
next_id = "it_that_feels"
|
||||
next_id = "it_that_feels_01"
|
||||
next_type = "entity"
|
||||
else:
|
||||
next_type = next_patient_type()
|
||||
@@ -261,7 +261,8 @@ func next_patient_type():
|
||||
-2:
|
||||
return "patient"
|
||||
-3:
|
||||
type_list.append("its")
|
||||
if len(its_list) > 0:
|
||||
type_list.append("its")
|
||||
for i in range(Globals.diagnoses_quota - 1):
|
||||
type_list.append("patient")
|
||||
print("Type List generated: " + str(type_list))
|
||||
@@ -283,7 +284,7 @@ func next_patient_type():
|
||||
return next_type
|
||||
|
||||
|
||||
#Erases current patient ID from the corresponding patient list, so it can't be seen twice
|
||||
#Erases current subject ID from the corresponding subject list, so it can't be seen twice
|
||||
func update_list():
|
||||
print("Patient type: " + str(Patient.type))
|
||||
match type:
|
||||
|
||||
@@ -35,6 +35,7 @@ func _ready() -> void:
|
||||
green_button.decision_made.connect(self._on_decision_made)
|
||||
journal.pressed.connect(journal_layer._on_journal_pressed)
|
||||
Globals.clear_patient.connect(self._on_clear_patient)
|
||||
Globals.decision_made.connect(self._on_decision_made)
|
||||
Globals.color_change.connect(self._on_color_change)
|
||||
Globals.next_event.connect(self.event_manager)
|
||||
|
||||
@@ -45,15 +46,17 @@ func _ready() -> void:
|
||||
|
||||
|
||||
#Manages what event should happen next
|
||||
func event_manager(event_index):
|
||||
match event_index:
|
||||
0:
|
||||
func event_manager():
|
||||
match Globals.event_index:
|
||||
"interfloor":
|
||||
supervisor.dialogue("interfloor_" + str(-Globals.floor_count-1))
|
||||
1:
|
||||
"next_patient":
|
||||
console_screen.display(Globals.directives)
|
||||
computer.next_patient_button.show()
|
||||
2:
|
||||
"descend":
|
||||
descend_floor()
|
||||
"supervisor":
|
||||
supervisor.dialogue("dialogue_" + str(Globals.supervisor_index))
|
||||
|
||||
|
||||
func _on_call_next_patient_pressed(): #Brings in next patient and sets up the desk controls
|
||||
@@ -176,9 +179,9 @@ func _on_clear_patient(choice:String):
|
||||
|
||||
#Descending Floor if diagnoses_quota reached
|
||||
if Globals.accurate_diagnoses == Globals.diagnoses_quota:
|
||||
Globals.event_index = 2
|
||||
Globals.event_index = "descend"
|
||||
|
||||
event_manager(Globals.event_index)
|
||||
event_manager()
|
||||
|
||||
|
||||
func _on_color_change(color: String): #Modulating backroom and patient colors
|
||||
@@ -198,7 +201,7 @@ func _on_color_change(color: String): #Modulating backroom and patient colors
|
||||
func descend_floor(): #Descends to next floor
|
||||
|
||||
#Updating Global variables
|
||||
Globals.event_index = 0
|
||||
Globals.event_index = "interfloor"
|
||||
Globals.floor_count -= 1
|
||||
Globals.accurate_diagnoses = 0
|
||||
Globals.diagnoses_quota += 1
|
||||
@@ -227,7 +230,7 @@ func descend_floor(): #Descends to next floor
|
||||
main.save_game(0)
|
||||
|
||||
#Selecting next event
|
||||
event_manager(Globals.event_index)
|
||||
event_manager()
|
||||
|
||||
|
||||
#Resets to initial state
|
||||
|
||||
@@ -127,7 +127,8 @@ func _apply_responses() -> void:
|
||||
item.name = "Response%d" % get_child_count()
|
||||
if not response.is_allowed:
|
||||
item.name = item.name + &"Disallowed"
|
||||
item.disabled = true
|
||||
#item.disabled = true
|
||||
item.hide()
|
||||
|
||||
# If the item has a response property then use that
|
||||
if "response" in item:
|
||||
|
||||
+1
-1
@@ -54,4 +54,4 @@ ui_select={
|
||||
|
||||
[internationalization]
|
||||
|
||||
locale/translations_pot_files=PackedStringArray("res://Dialogues/Patients/patient_50.dialogue", "res://Dialogues/Patients/patient_49.dialogue", "res://Dialogues/Patients/patient_48.dialogue", "res://Dialogues/Patients/patient_47.dialogue", "res://Dialogues/Patients/patient_46.dialogue", "res://Dialogues/Patients/patient_45.dialogue", "res://Dialogues/Patients/patient_51.dialogue", "res://Dialogues/Patients/patient_44.dialogue", "res://Dialogues/Patients/patient_43.dialogue", "res://Dialogues/Patients/patient_42.dialogue", "res://Dialogues/OG Patients/patient_49.dialogue", "res://Dialogues/OG Patients/patient_50.dialogue", "res://Dialogues/ITS/its_00.dialogue", "res://Dialogues/ITS/its_01.dialogue", "res://Dialogues/Supervisors/supervisor_dredar.dialogue", "res://Dialogues/Supervisors/supervisor_loeveth.dialogue", "res://Dialogues/Entities/entity_01.dialogue", "res://Dialogues/Entities/it_that_feels.dialogue")
|
||||
locale/translations_pot_files=PackedStringArray("res://Dialogues/Patients/patient_50.dialogue", "res://Dialogues/Patients/patient_49.dialogue", "res://Dialogues/Patients/patient_48.dialogue", "res://Dialogues/Patients/patient_47.dialogue", "res://Dialogues/Patients/patient_46.dialogue", "res://Dialogues/Patients/patient_45.dialogue", "res://Dialogues/Patients/patient_51.dialogue", "res://Dialogues/Patients/patient_44.dialogue", "res://Dialogues/Patients/patient_43.dialogue", "res://Dialogues/Patients/patient_42.dialogue", "res://Dialogues/OG Patients/patient_49.dialogue", "res://Dialogues/OG Patients/patient_50.dialogue", "res://Dialogues/ITS/its_00.dialogue", "res://Dialogues/ITS/its_01.dialogue", "res://Dialogues/Supervisors/supervisor_dredar.dialogue", "res://Dialogues/Supervisors/supervisor_loeveth.dialogue", "res://Dialogues/Entities/entity_01.dialogue", "res://Dialogues/Entities/it_that_feels_01.dialogue")
|
||||
|
||||
Reference in New Issue
Block a user