ITE rework WIP
This commit is contained in:
@@ -35,7 +35,7 @@ func reveal_spray():
|
||||
mat.set_shader_parameter("progress", 0.0)
|
||||
|
||||
var tween = create_tween()
|
||||
tween.tween_method(set_progress, 0.0, 1.0, 3.0) \
|
||||
tween.tween_method(set_progress, 0.0, 1.0, 2.0) \
|
||||
.set_trans(Tween.TRANS_SINE) \
|
||||
.set_ease(Tween.EASE_OUT)
|
||||
|
||||
@@ -49,7 +49,7 @@ func hide_spray():
|
||||
mat.set_shader_parameter("progress", 1.0)
|
||||
|
||||
var tween = create_tween()
|
||||
tween.tween_method(set_progress, 1.0, 0.0, 3.0) \
|
||||
tween.tween_method(set_progress, 1.0, 0.0, 2.0) \
|
||||
.set_trans(Tween.TRANS_SINE) \
|
||||
.set_ease(Tween.EASE_OUT)
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
uniform sampler2D noise_tex;
|
||||
uniform float progress : hint_range(0.0, 1.0) = 0.0;
|
||||
uniform float softness : hint_range(0.001, 0.2) = 0.05;
|
||||
|
||||
void fragment() {
|
||||
vec4 img = texture(TEXTURE, UV);
|
||||
float noise = texture(noise_tex, UV).r;
|
||||
float alpha = 1.0 - smoothstep(progress - softness, progress + softness, noise);
|
||||
COLOR = vec4(img.rgb, img.a * alpha);
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
uid://n2f3kv6b7k2o
|
||||
@@ -1,63 +0,0 @@
|
||||
extends TextureRect
|
||||
|
||||
@onready var mat := material as ShaderMaterial
|
||||
|
||||
signal reveal_done
|
||||
signal hide_done
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
|
||||
#Hiding
|
||||
hide()
|
||||
|
||||
#Setting up shader
|
||||
randomize()
|
||||
#Noise setup
|
||||
var noise := FastNoiseLite.new()
|
||||
noise.noise_type = FastNoiseLite.TYPE_SIMPLEX
|
||||
noise.frequency = 20.0
|
||||
noise.seed = randi()
|
||||
|
||||
var noise_tex := NoiseTexture2D.new()
|
||||
noise_tex.noise = noise
|
||||
noise_tex.width = 1920
|
||||
noise_tex.height = 1080
|
||||
noise_tex.seamless = true
|
||||
|
||||
mat.set_shader_parameter("noise_tex", noise_tex)
|
||||
|
||||
|
||||
#Revealing game over in a noise spray
|
||||
func reveal_spray():
|
||||
|
||||
show()
|
||||
mat.set_shader_parameter("progress", 0.0)
|
||||
|
||||
var tween = create_tween()
|
||||
tween.tween_method(set_progress, 0.0, 1.0, 3.0) \
|
||||
.set_trans(Tween.TRANS_SINE) \
|
||||
.set_ease(Tween.EASE_OUT)
|
||||
|
||||
await tween.finished
|
||||
reveal_done.emit()
|
||||
|
||||
|
||||
#hiding game over in a hiding spray
|
||||
func hide_spray():
|
||||
|
||||
mat.set_shader_parameter("progress", 1.0)
|
||||
|
||||
var tween = create_tween()
|
||||
tween.tween_method(set_progress, 1.0, 0.0, 3.0) \
|
||||
.set_trans(Tween.TRANS_SINE) \
|
||||
.set_ease(Tween.EASE_OUT)
|
||||
|
||||
await tween.finished
|
||||
hide()
|
||||
hide_done.emit()
|
||||
|
||||
|
||||
#Progressing the reveal/hide
|
||||
func set_progress(value: float):
|
||||
mat.set_shader_parameter("progress", value)
|
||||
@@ -1 +0,0 @@
|
||||
uid://cjft0c0ui8yhs
|
||||
@@ -1,34 +0,0 @@
|
||||
extends Control
|
||||
|
||||
@onready var background = $Background
|
||||
@onready var back_to_menu = $UI/HBoxContainer/BackToMainMenu
|
||||
@onready var reload_checkpoint = $UI/HBoxContainer/ReloadCheckpoint
|
||||
@onready var message = $UI/Message
|
||||
@onready var animation_player = $AnimationPlayer
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
#Resets to initial state
|
||||
reset()
|
||||
|
||||
#Reveals the game over screen
|
||||
func reveal():
|
||||
|
||||
#Reveals the background image first
|
||||
show()
|
||||
background.show()
|
||||
background.reveal_spray()
|
||||
await background.reveal_done
|
||||
|
||||
#Reveals the text and buttons afterwards
|
||||
for node in [message, back_to_menu, reload_checkpoint]:
|
||||
node.modulate.a = 0.0
|
||||
node.show()
|
||||
animation_player.play("fade_in")
|
||||
|
||||
|
||||
#Resets to initial state
|
||||
func reset():
|
||||
for node in [background, back_to_menu, reload_checkpoint, message]:
|
||||
node.hide()
|
||||
hide()
|
||||
@@ -1 +0,0 @@
|
||||
uid://bru53a1mvu0t2
|
||||
+2
-3
@@ -5,9 +5,8 @@ extends CanvasLayer
|
||||
@onready var masks = $Masks
|
||||
@onready var pause_menu = $PauseMenu
|
||||
|
||||
#GameOver Scenes
|
||||
@onready var its_game_over = $ITSGameOverControl
|
||||
@onready var entity_game_over = $EntityGameOverControl
|
||||
#GameOver Scene
|
||||
@onready var game_over = $GameOverControl
|
||||
|
||||
#Preloading Confirmation dialog
|
||||
var confirmation_dialog = preload("res://Scenes/UI/confirmation_dialog.tscn")
|
||||
|
||||
+15
-86
@@ -1,21 +1,19 @@
|
||||
[gd_scene load_steps=35 format=3 uid="uid://dy40jygog8t3k"]
|
||||
[gd_scene load_steps=33 format=3 uid="uid://dy40jygog8t3k"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c0q67t6m1i4dl" path="res://Scenes/UI/ui.gd" id="1_mg12k"]
|
||||
[ext_resource type="FontFile" uid="uid://dv8ppra5tgn1t" path="res://Art/Fonts/PixelatedEleganceRegular-ovyAA.ttf" id="2_vb7na"]
|
||||
[ext_resource type="Texture2D" uid="uid://l7786mlmvet8" path="res://Art/UI/menu_gear.png" id="3_ibj64"]
|
||||
[ext_resource type="Script" uid="uid://bru53a1mvu0t2" path="res://Scenes/UI/its_game_over_control.gd" id="4_duuxe"]
|
||||
[ext_resource type="Script" uid="uid://dxyi7st0g4hdf" path="res://Scenes/UI/pause_menu.gd" id="4_s3gqk"]
|
||||
[ext_resource type="Script" uid="uid://cvcuwg4hha1vr" path="res://Scenes/UI/submenu.gd" id="5_pmm6b"]
|
||||
[ext_resource type="Texture2D" uid="uid://qodbgs7d5mqs" path="res://Art/UI/its_game_over.png" id="6_duuxe"]
|
||||
[ext_resource type="Script" uid="uid://cjft0c0ui8yhs" path="res://Scenes/UI/its_game_over_background.gd" id="6_jfwrg"]
|
||||
[ext_resource type="Script" uid="uid://d2f2qod8t0umo" path="res://Scenes/UI/save.gd" id="7_vy225"]
|
||||
[ext_resource type="Script" uid="uid://c7lc7t6801rls" path="res://Scenes/UI/load.gd" id="8_fy0us"]
|
||||
[ext_resource type="Script" uid="uid://be2ypveoa0hf5" path="res://Scenes/UI/masks.gd" id="8_mbl0m"]
|
||||
[ext_resource type="Script" uid="uid://c7r7iaoghw8lh" path="res://Scenes/UI/settings.gd" id="9_h6tq4"]
|
||||
[ext_resource type="Script" uid="uid://dbjei4d2lfwnb" path="res://Scenes/UI/fading_mask.gd" id="9_s3gqk"]
|
||||
[ext_resource type="Shader" uid="uid://dulfbro84cj4k" path="res://Scenes/UI/entity_game_over.gdshader" id="12_56q1t"]
|
||||
[ext_resource type="Script" uid="uid://bo4d1ev60val6" path="res://Scenes/UI/entity_game_over_control.gd" id="15_fevae"]
|
||||
[ext_resource type="Script" uid="uid://bclpgx10sb5ug" path="res://Scenes/UI/entity_game_over_background.gd" id="16_ny3ap"]
|
||||
[ext_resource type="Shader" uid="uid://dulfbro84cj4k" path="res://Scenes/UI/game_over.gdshader" id="12_56q1t"]
|
||||
[ext_resource type="Texture2D" uid="uid://cqgopojnmx8yu" path="res://Art/UI/game_over.png" id="13_h6tq4"]
|
||||
[ext_resource type="Script" uid="uid://bo4d1ev60val6" path="res://Scenes/UI/game_over_control.gd" id="15_fevae"]
|
||||
[ext_resource type="Script" uid="uid://bclpgx10sb5ug" path="res://Scenes/UI/game_over_background.gd" id="16_ny3ap"]
|
||||
|
||||
[sub_resource type="Animation" id="Animation_n85x3"]
|
||||
length = 0.001
|
||||
@@ -912,75 +910,7 @@ grow_vertical = 2
|
||||
mouse_force_pass_scroll_events = false
|
||||
color = Color(0, 0, 0, 0.784314)
|
||||
|
||||
[node name="ITSGameOverControl" type="Control" parent="."]
|
||||
visible = false
|
||||
z_index = 12
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
theme = SubResource("Theme_mbl0m")
|
||||
script = ExtResource("4_duuxe")
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="ITSGameOverControl"]
|
||||
root_node = NodePath("../UI")
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_mbl0m")
|
||||
}
|
||||
|
||||
[node name="Background" type="TextureRect" parent="ITSGameOverControl"]
|
||||
material = SubResource("ShaderMaterial_duuxe")
|
||||
layout_mode = 0
|
||||
offset_right = 1920.0
|
||||
offset_bottom = 1080.0
|
||||
texture = ExtResource("6_duuxe")
|
||||
script = ExtResource("6_jfwrg")
|
||||
|
||||
[node name="UI" type="VBoxContainer" parent="ITSGameOverControl"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -625.0
|
||||
offset_top = -175.0
|
||||
offset_right = 625.0
|
||||
offset_bottom = 175.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_constants/separation = 100
|
||||
alignment = 1
|
||||
|
||||
[node name="Message" type="RichTextLabel" parent="ITSGameOverControl/UI"]
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
custom_minimum_size = Vector2(200, 150)
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/normal_font_size = 100
|
||||
bbcode_enabled = true
|
||||
text = "[color=dark_red]IT HAS YOU...[/color]"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="ITSGameOverControl/UI"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 50
|
||||
alignment = 1
|
||||
|
||||
[node name="ReloadCheckpoint" type="Button" parent="ITSGameOverControl/UI/HBoxContainer"]
|
||||
custom_minimum_size = Vector2(600, 100)
|
||||
layout_mode = 2
|
||||
text = "RELOAD LATEST CHECKPOINT"
|
||||
|
||||
[node name="BackToMainMenu" type="Button" parent="ITSGameOverControl/UI/HBoxContainer"]
|
||||
custom_minimum_size = Vector2(600, 100)
|
||||
layout_mode = 2
|
||||
text = "BACK TO MAIN MENU"
|
||||
|
||||
[node name="EntityGameOverControl" type="Control" parent="."]
|
||||
[node name="GameOverControl" type="Control" parent="."]
|
||||
z_index = 12
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
@@ -992,21 +922,21 @@ mouse_filter = 2
|
||||
theme = SubResource("Theme_mbl0m")
|
||||
script = ExtResource("15_fevae")
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="EntityGameOverControl"]
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="GameOverControl"]
|
||||
root_node = NodePath("../UI")
|
||||
libraries = {
|
||||
&"": SubResource("AnimationLibrary_mbl0m")
|
||||
}
|
||||
|
||||
[node name="Background" type="TextureRect" parent="EntityGameOverControl"]
|
||||
[node name="Background" type="TextureRect" parent="GameOverControl"]
|
||||
material = SubResource("ShaderMaterial_duuxe")
|
||||
layout_mode = 0
|
||||
offset_right = 1920.0
|
||||
offset_bottom = 1080.0
|
||||
texture = ExtResource("6_duuxe")
|
||||
texture = ExtResource("13_h6tq4")
|
||||
script = ExtResource("16_ny3ap")
|
||||
|
||||
[node name="UI" type="VBoxContainer" parent="EntityGameOverControl"]
|
||||
[node name="UI" type="VBoxContainer" parent="GameOverControl"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
@@ -1022,27 +952,26 @@ grow_vertical = 2
|
||||
theme_override_constants/separation = 100
|
||||
alignment = 1
|
||||
|
||||
[node name="Message" type="RichTextLabel" parent="EntityGameOverControl/UI"]
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
[node name="Message" type="RichTextLabel" parent="GameOverControl/UI"]
|
||||
custom_minimum_size = Vector2(200, 300)
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/normal_font_size = 100
|
||||
bbcode_enabled = true
|
||||
text = "[color=dark_red]YOUR MIND HAS DISSOLVED.[/color]"
|
||||
text = "[color=dark_red]YOU DIED[/color]"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="EntityGameOverControl/UI"]
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="GameOverControl/UI"]
|
||||
layout_mode = 2
|
||||
theme_override_constants/separation = 50
|
||||
alignment = 1
|
||||
|
||||
[node name="ReloadCheckpoint" type="Button" parent="EntityGameOverControl/UI/HBoxContainer"]
|
||||
[node name="ReloadCheckpoint" type="Button" parent="GameOverControl/UI/HBoxContainer"]
|
||||
custom_minimum_size = Vector2(600, 100)
|
||||
layout_mode = 2
|
||||
text = "RELOAD LATEST CHECKPOINT"
|
||||
|
||||
[node name="BackToMainMenu" type="Button" parent="EntityGameOverControl/UI/HBoxContainer"]
|
||||
[node name="BackToMainMenu" type="Button" parent="GameOverControl/UI/HBoxContainer"]
|
||||
custom_minimum_size = Vector2(600, 100)
|
||||
layout_mode = 2
|
||||
text = "BACK TO MAIN MENU"
|
||||
|
||||
+5
-7
@@ -36,10 +36,8 @@ func _ready() -> void:
|
||||
UI.text_value_changed.connect(self._on_text_value_changed)
|
||||
UI.auto_value_changed.connect(self._on_auto_value_changed)
|
||||
|
||||
UI.its_game_over.back_to_menu.pressed.connect(self._on_main_menu_pressed)
|
||||
UI.its_game_over.reload_checkpoint.pressed.connect(self.load_game.bind(0))
|
||||
UI.entity_game_over.back_to_menu.pressed.connect(self._on_main_menu_pressed)
|
||||
UI.entity_game_over.reload_checkpoint.pressed.connect(self.load_game.bind(0))
|
||||
UI.game_over.back_to_menu.pressed.connect(self._on_main_menu_pressed)
|
||||
UI.game_over.reload_checkpoint.pressed.connect(self.load_game.bind(0))
|
||||
|
||||
Globals.character_label_color_change.connect(self._on_character_label_color_change)
|
||||
Globals.start_balloon.connect(self.start_balloon)
|
||||
@@ -93,14 +91,14 @@ func start_day():
|
||||
#Transitioning to day screen
|
||||
$TextScreens/Day.text = "[center]FLOOR " + str(Globals.floor_count) + "[/center]"
|
||||
|
||||
var scenes_to_hide: Array[Node] = [$TitleScreen, $ScreeningDesk, UI.pause_menu.menu_button, UI.its_game_over, UI.entity_game_over]
|
||||
var scenes_to_hide: Array[Node] = [$TitleScreen, $ScreeningDesk, UI.pause_menu.menu_button, UI.game_over]
|
||||
var scenes_to_show: Array[Node] = [$TextScreens, $TextScreens/Day]
|
||||
UI.masks.transition(scenes_to_hide, scenes_to_show)
|
||||
await UI.masks.transition_finished
|
||||
await get_tree().create_timer(1.0).timeout
|
||||
|
||||
#Setting up new patient
|
||||
for scene in [$ScreeningDesk, UI.its_game_over, UI.entity_game_over]: #Resetting scenes
|
||||
for scene in [$ScreeningDesk, UI.game_over]: #Resetting scenes
|
||||
scene.reset()
|
||||
|
||||
#Transitioning to the screening desk
|
||||
@@ -211,7 +209,7 @@ func _on_main_menu_pressed():
|
||||
clear_balloon()
|
||||
|
||||
#Going back to main menu
|
||||
var scenes_to_hide = [$ScreeningDesk, $TextScreens, $TextScreens/Day, UI.its_game_over, UI.pause_menu.menu_button, UI.entity_game_over]
|
||||
var scenes_to_hide = [$ScreeningDesk, $TextScreens, $TextScreens/Day, UI.game_over, UI.pause_menu.menu_button, UI.game_over]
|
||||
var scenes_to_show = [$TitleScreen]
|
||||
UI.masks.transition(scenes_to_hide, scenes_to_show)
|
||||
await UI.masks.transition_finished
|
||||
|
||||
@@ -31,8 +31,7 @@ CHARACTERISTICS
|
||||
- Disguises as a human subject
|
||||
|
||||
RECOMMENDED COURSE OF ACTION
|
||||
- As soon as it smiles, [color=red]TERMINATE[/color] It.
|
||||
- [color=dim_gray]DO NOT TERMINATE IT, RELEASE IT.[/color]"
|
||||
- As soon as it smiles, [color=red]TERMINATE[/color] It."
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
|
||||
@@ -30,7 +30,7 @@ var og_patient_list : Array[Dictionary]
|
||||
var patient_list: Array[Dictionary]
|
||||
var og_its_list = ["its_01", "its_02", "its_03", "its_04"]
|
||||
var its_list = []
|
||||
var og_ite_list = []
|
||||
var og_ite_list = ["ite_01"]
|
||||
var ite_list = []
|
||||
var og_entities_list = ["entity_01"]
|
||||
var entities_list = []
|
||||
@@ -130,7 +130,7 @@ func load_emotions(config, patient_path):
|
||||
var emotion_branch: Dictionary
|
||||
var emotion_list = ["neutral", "peaceful", "praying", "puzzled", "suspicious",
|
||||
"sadsmiling", "crazysmiling", "shockedcrying", "smiling",
|
||||
"aroused", "laughing", "happy", "elated", "maniac", "ecstatic",
|
||||
"aroused", "excited", "laughing", "happy", "elated", "maniac", "ecstatic",
|
||||
"irritated", "angry", "furious",
|
||||
"sad", "depressed", "crying", "surprised",
|
||||
"worried", "scared", "shocked", "panicked", "terrified",
|
||||
|
||||
Reference in New Issue
Block a user