Add retry level
This commit is contained in:
parent
f6e08e3103
commit
360ea6b1ce
12 changed files with 299 additions and 78 deletions
|
@ -484,6 +484,12 @@ script = ExtResource("8_pqyhf")
|
|||
[node name="Victory" type="Node" parent="StateMachine/Root"]
|
||||
script = ExtResource("8_pqyhf")
|
||||
|
||||
[node name="ToThink" type="Node" parent="StateMachine/Root/Victory"]
|
||||
script = ExtResource("9_la16b")
|
||||
to = NodePath("../../Think")
|
||||
event = &"will_reset"
|
||||
delay_in_seconds = "0.0"
|
||||
|
||||
[connection signal="animation_finished" from="AnimationTree" to="." method="_on_animation_tree_animation_finished"]
|
||||
[connection signal="area_entered" from="Attackbox" to="." method="_on_attackbox_area_entered"]
|
||||
[connection signal="body_entered" from="Meleebox" to="." method="_on_meleebox_body_entered"]
|
||||
|
|
BIN
Hiro/hiro_game_over_screen_1.png
(Stored with Git LFS)
Normal file
BIN
Hiro/hiro_game_over_screen_1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
34
Hiro/hiro_game_over_screen_1.png.import
Normal file
34
Hiro/hiro_game_over_screen_1.png.import
Normal file
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b46ekrvgw3amj"
|
||||
path="res://.godot/imported/hiro_game_over_screen_1.png-a50954187c5b2e16875476dfc995782e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://Hiro/hiro_game_over_screen_1.png"
|
||||
dest_files=["res://.godot/imported/hiro_game_over_screen_1.png-a50954187c5b2e16875476dfc995782e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
BIN
Hiro/hiro_game_over_screen_nsfw.png
(Stored with Git LFS)
BIN
Hiro/hiro_game_over_screen_nsfw.png
(Stored with Git LFS)
Binary file not shown.
BIN
Hiro/hiro_game_over_screen_sfw.png
(Stored with Git LFS)
BIN
Hiro/hiro_game_over_screen_sfw.png
(Stored with Git LFS)
Binary file not shown.
|
@ -606,6 +606,12 @@ script = ExtResource("7_jc1pg")
|
|||
[node name="Victory" type="Node" parent="StateMachine/Root"]
|
||||
script = ExtResource("7_jc1pg")
|
||||
|
||||
[node name="ToThink" type="Node" parent="StateMachine/Root/Victory"]
|
||||
script = ExtResource("8_713tw")
|
||||
to = NodePath("../../Think")
|
||||
event = &"will_reset"
|
||||
delay_in_seconds = "0.0"
|
||||
|
||||
[node name="RangeSpawners" type="Node2D" parent="."]
|
||||
|
||||
[node name="East" type="Marker2D" parent="RangeSpawners"]
|
||||
|
|
|
@ -40,3 +40,6 @@ func _on_humanoid_character_attacked():
|
|||
|
||||
func _on_reed_ai_range_attack_initiated(by):
|
||||
play_sound("energy_blast")
|
||||
|
||||
func _on_game_requested_retry():
|
||||
play_sound("unpause")
|
||||
|
|
|
@ -8,14 +8,17 @@ extends Node2D
|
|||
@onready var reed_ai : AICharacter = $ReedAI
|
||||
@onready var nem_npc = $NemNPC
|
||||
@onready var cutscene_manager = $CutsceneManager
|
||||
@onready var bgm_manager = $MusicManager
|
||||
@onready var sound_manager = $SoundManager
|
||||
@onready var fader_animation = $Fades/Control/FaderRect/AnimationPlayer
|
||||
@onready var barrier = $BattleBarriers
|
||||
@onready var credits = $Fades/Control/Credits
|
||||
@onready var reward_nsfw = $Fades/Control/NSFWReward
|
||||
@onready var reward_sfw = $Fades/Control/SFWReward
|
||||
@onready var gameover_screen = $Fades/Control/GameOverScreen
|
||||
@onready var gameover_screen_player = $Fades/Control/GameOverScreen/AnimationPlayer
|
||||
@onready var gameover_image = $Fades/Control/GameOverScreen/GameOverImage
|
||||
@onready var gameover_button = $Fades/Control/GameOverScreen/Button
|
||||
|
||||
@export var stage = 1
|
||||
@export var losing_cutscenes: Array[StringName] = [
|
||||
|
@ -73,9 +76,14 @@ func _on_cutscene_finished(cutscene_name: String):
|
|||
if losing_cutscenes.find(cutscene_name) >= 0:
|
||||
if cutscene_name.begins_with("reed") and Globals.nsfw:
|
||||
gameover_image.texture = load("res://Hiro/hiro_game_over_screen_nsfw.png")
|
||||
gameover_screen.visible = true
|
||||
gameover_screen_player.play("fade_in")
|
||||
player.in_cutscene = true
|
||||
game_state.can_pause = false
|
||||
await get_tree().create_timer(1.0).timeout
|
||||
gameover_button.disabled = false
|
||||
gameover_button.grab_focus()
|
||||
gameover_button.grab_click_focus()
|
||||
elif cutscene_name == "talking_to_nem":
|
||||
nem_npc.interaction_cutscene = null
|
||||
hiro_ai.set_ai_enabled(true)
|
||||
|
@ -95,6 +103,78 @@ func _on_credits_requested_reward():
|
|||
reward_nsfw.visible = Globals.nsfw
|
||||
reward_sfw.visible = not Globals.nsfw
|
||||
fader_animation.play("fade_in_black")
|
||||
|
||||
func _on_retry():
|
||||
gameover_button.disabled = true
|
||||
print("Going to retry stage " + str(stage))
|
||||
fader_animation.play("fade_out_black")
|
||||
# TODO: Handle this when the animation ends instead.
|
||||
await get_tree().create_timer(2.0).timeout
|
||||
if stage == 1:
|
||||
# Set everything back to Hiro clone's fight.
|
||||
player.health = player.max_health
|
||||
hiro_ai.health = hiro_ai.max_health
|
||||
battle_ui.initialize(player, hiro_ai)
|
||||
battle_ui.set_enemy_health_visible(true)
|
||||
# Disable AI (will be reset later)
|
||||
hiro_ai.set_ai_enabled(false)
|
||||
# Teleport characters
|
||||
hiro_ai.global_position = $PositionMarkers/Marker3.global_position
|
||||
player.global_position = $PositionMarkers/Marker2.global_position
|
||||
# Reset animation state
|
||||
player.has_nsfw_animations = false
|
||||
player.set_animation_direction(Vector2.RIGHT)
|
||||
player.anim_playback.travel("idle")
|
||||
hiro_ai.set_animation_direction(Vector2.LEFT)
|
||||
hiro_ai.anim_playback.travel("idle")
|
||||
# Ensure collider is enabled
|
||||
hiro_ai.get_node("MovementCollider").disabled = false
|
||||
|
||||
# All set, fade back in!
|
||||
gameover_screen.modulate.a = 0.0
|
||||
fader_animation.play("fade_in_black")
|
||||
bgm_manager.play_music(load("res://Audio/BGM/olympus_combat.mp3"), false)
|
||||
await get_tree().create_timer(1.5).timeout
|
||||
gameover_screen.visible = false
|
||||
player.can_move = true
|
||||
player.in_cutscene = false
|
||||
hiro_ai.set_melee_box_enabled(true)
|
||||
hiro_ai.reset_state()
|
||||
barrier.process_mode = Node.PROCESS_MODE_INHERIT
|
||||
|
||||
return
|
||||
if stage == 2:
|
||||
# Reheal characters
|
||||
player.health = player.max_health
|
||||
reed_ai.health = reed_ai.max_health
|
||||
battle_ui.initialize(player, reed_ai)
|
||||
battle_ui.set_enemy_health_visible(true)
|
||||
# Disable AI (will be reset later)
|
||||
reed_ai.set_ai_enabled(false)
|
||||
# Teleport characters
|
||||
reed_ai.global_position = $PositionMarkers/Marker3.global_position
|
||||
player.global_position = $PositionMarkers/Marker2.global_position
|
||||
# Reset animation state
|
||||
player.has_nsfw_animations = Globals.nsfw
|
||||
player.set_animation_direction(Vector2.RIGHT)
|
||||
player.anim_playback.travel("idle")
|
||||
reed_ai.set_animation_direction(Vector2.LEFT)
|
||||
reed_ai.anim_playback.travel("idle")
|
||||
# Ensure collider is enabled
|
||||
reed_ai.get_node("MovementCollider").disabled = false
|
||||
|
||||
# All set, fade back in!
|
||||
gameover_screen.modulate.a = 0.0
|
||||
fader_animation.play("fade_in_black")
|
||||
|
||||
bgm_manager.play_music(load("res://Audio/BGM/flying_in_the_sky.mp3"), false)
|
||||
await get_tree().create_timer(1.5).timeout
|
||||
player.can_move = true
|
||||
player.in_cutscene = false
|
||||
reed_ai.set_melee_box_enabled(true)
|
||||
reed_ai.reset_state()
|
||||
barrier.process_mode = Node.PROCESS_MODE_INHERIT
|
||||
return
|
||||
|
||||
func _on_cutscene_manager_issued_command(command: CutsceneCommand, manager: CutsceneManager):
|
||||
if command is TurnCharacterCommand or command is LookAtTargetCommand:
|
||||
|
@ -152,6 +232,7 @@ func _on_cutscene_manager_issued_command(command: CutsceneCommand, manager: Cuts
|
|||
player.has_nsfw_animations = Globals.nsfw
|
||||
reed_ai.set_animation_direction(Vector2.LEFT)
|
||||
$NPCs.visible = true
|
||||
reed_ai.state_machine.send_event("will_reset")
|
||||
reed_ai.set_melee_box_enabled(true)
|
||||
reed_ai.get_node("MovementCollider").disabled = false
|
||||
manager.step()
|
||||
|
|
|
@ -116,6 +116,10 @@ func set_ai_process_mode(mode: ProcessMode):
|
|||
func set_ai_enabled(enabled: bool):
|
||||
set_ai_process_mode(Node.PROCESS_MODE_INHERIT if enabled else Node.PROCESS_MODE_DISABLED)
|
||||
|
||||
func reset_state():
|
||||
set_ai_enabled(true)
|
||||
state_machine.send_event("will_reset")
|
||||
|
||||
func set_melee_box_enabled(enabled: bool):
|
||||
melee_hitbox_collider.set_deferred("disabled", !enabled)
|
||||
|
||||
|
|
|
@ -52,6 +52,7 @@ anchor_right = 1.0
|
|||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
alignment = 1
|
||||
|
||||
[node name="Label" type="Label" parent="VBoxContainer"]
|
||||
|
@ -62,6 +63,7 @@ horizontal_alignment = 1
|
|||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_bottom = 16
|
||||
|
||||
[node name="Label" type="Label" parent="VBoxContainer/MarginContainer"]
|
||||
|
@ -72,21 +74,25 @@ horizontal_alignment = 1
|
|||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
alignment = 1
|
||||
|
||||
[node name="Raxki" type="VBoxContainer" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 6
|
||||
mouse_filter = 2
|
||||
alignment = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/HBoxContainer/Raxki"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_bottom = 8
|
||||
|
||||
[node name="Sprite" type="TextureRect" parent="VBoxContainer/HBoxContainer/Raxki/MarginContainer"]
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(0, 56)
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
texture = ExtResource("3_dpsa0")
|
||||
expand_mode = 1
|
||||
stretch_mode = 5
|
||||
|
@ -106,16 +112,19 @@ horizontal_alignment = 1
|
|||
[node name="Yonic" type="VBoxContainer" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 6
|
||||
mouse_filter = 2
|
||||
alignment = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/HBoxContainer/Yonic"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_bottom = 8
|
||||
|
||||
[node name="Sprite" type="TextureRect" parent="VBoxContainer/HBoxContainer/Yonic/MarginContainer"]
|
||||
texture_filter = 1
|
||||
custom_minimum_size = Vector2(0, 58)
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
texture = ExtResource("4_yqlxt")
|
||||
stretch_mode = 5
|
||||
|
||||
|
@ -134,9 +143,11 @@ horizontal_alignment = 1
|
|||
[node name="Credits3" type="VBoxContainer" parent="VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 6
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/HBoxContainer/Credits3"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_bottom = 16
|
||||
|
||||
[node name="Title" type="Label" parent="VBoxContainer/HBoxContainer/Credits3"]
|
||||
|
@ -158,14 +169,17 @@ horizontal_alignment = 1
|
|||
|
||||
[node name="HBoxContainer2" type="HBoxContainer" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
alignment = 1
|
||||
|
||||
[node name="Credits1" type="VBoxContainer" parent="VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 6
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/HBoxContainer2/Credits1"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_bottom = 16
|
||||
|
||||
[node name="Title" type="Label" parent="VBoxContainer/HBoxContainer2/Credits1"]
|
||||
|
@ -183,9 +197,11 @@ horizontal_alignment = 1
|
|||
[node name="Credits2" type="VBoxContainer" parent="VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 6
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/HBoxContainer2/Credits2"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_bottom = 16
|
||||
|
||||
[node name="Title" type="Label" parent="VBoxContainer/HBoxContainer2/Credits2"]
|
||||
|
@ -205,9 +221,11 @@ horizontal_alignment = 1
|
|||
[node name="Credits3" type="VBoxContainer" parent="VBoxContainer/HBoxContainer2"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 6
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/HBoxContainer2/Credits3"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_bottom = 16
|
||||
|
||||
[node name="Title" type="Label" parent="VBoxContainer/HBoxContainer2/Credits3"]
|
||||
|
@ -226,6 +244,7 @@ horizontal_alignment = 1
|
|||
|
||||
[node name="MarginContainer2" type="MarginContainer" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_top = 8
|
||||
theme_override_constants/margin_bottom = 8
|
||||
|
||||
|
@ -238,6 +257,7 @@ horizontal_alignment = 1
|
|||
|
||||
[node name="RewardHint" type="MarginContainer" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
mouse_filter = 2
|
||||
theme_override_constants/margin_left = 8
|
||||
theme_override_constants/margin_top = 8
|
||||
theme_override_constants/margin_right = 8
|
||||
|
|
|
@ -121,6 +121,7 @@ layout_mode = 3
|
|||
anchors_preset = 0
|
||||
offset_left = -720.0
|
||||
offset_bottom = 480.0
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="ChatboxContainer" type="Control" parent="LeftTextbox"]
|
||||
layout_mode = 1
|
||||
|
@ -205,6 +206,7 @@ offset_left = 720.0
|
|||
offset_right = 1440.0
|
||||
offset_bottom = 480.0
|
||||
grow_horizontal = 0
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="ChatboxContainer" type="Control" parent="RightTextbox"]
|
||||
layout_mode = 1
|
||||
|
|
210
world/world.tscn
210
world/world.tscn
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=83 format=3 uid="uid://bxuxjqxxqy7ce"]
|
||||
[gd_scene load_steps=86 format=3 uid="uid://bxuxjqxxqy7ce"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://di21xheryhp0k" path="res://Hiro/hiro_player.tscn" id="1_c1gpq"]
|
||||
[ext_resource type="PackedScene" uid="uid://b8sfype1vx5ad" path="res://Nem/nem_npc.tscn" id="1_sqt7d"]
|
||||
|
@ -66,6 +66,71 @@ shader_parameter/line_opacity = 0.1
|
|||
shader_parameter/spacing = 3
|
||||
shader_parameter/scale = 1.0
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_0bu2i"]
|
||||
bg_color = Color(1, 1, 1, 1)
|
||||
|
||||
[sub_resource type="Animation" id="Animation_i1rco"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:modulate")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_nt1vk"]
|
||||
resource_name = "fade_in"
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:modulate")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 1),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_xe0ly"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_i1rco"),
|
||||
"fade_in": SubResource("Animation_nt1vk")
|
||||
}
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_vk0sh"]
|
||||
bg_color = Color(0, 0, 0.133333, 0.662745)
|
||||
corner_radius_top_left = 999
|
||||
corner_radius_top_right = 999
|
||||
corner_radius_bottom_right = 999
|
||||
corner_radius_bottom_left = 999
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_dubbv"]
|
||||
bg_color = Color(0.129412, 0, 0, 0.662745)
|
||||
border_width_left = 2
|
||||
border_width_top = 2
|
||||
border_width_right = 2
|
||||
border_width_bottom = 2
|
||||
border_color = Color(0.8, 0, 0, 1)
|
||||
corner_radius_top_left = 999
|
||||
corner_radius_top_right = 999
|
||||
corner_radius_bottom_right = 999
|
||||
corner_radius_bottom_left = 999
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_m6ugn"]
|
||||
bg_color = Color(0, 0, 0, 0.478431)
|
||||
corner_radius_top_left = 999
|
||||
corner_radius_top_right = 999
|
||||
corner_radius_bottom_right = 999
|
||||
corner_radius_bottom_left = 999
|
||||
|
||||
[sub_resource type="Animation" id="Animation_lyxis"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
|
@ -135,45 +200,6 @@ _data = {
|
|||
"fade_out_black": SubResource("Animation_b6gpx")
|
||||
}
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_0bu2i"]
|
||||
bg_color = Color(1, 1, 1, 1)
|
||||
|
||||
[sub_resource type="Animation" id="Animation_i1rco"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:modulate")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_nt1vk"]
|
||||
resource_name = "fade_in"
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:modulate")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 1),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_xe0ly"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_i1rco"),
|
||||
"fade_in": SubResource("Animation_nt1vk")
|
||||
}
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_b1hkp"]
|
||||
shader = ExtResource("19_5m168")
|
||||
shader_parameter/darken_screen = 0.0
|
||||
|
@ -855,6 +881,7 @@ anchor_right = 1.0
|
|||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 1
|
||||
|
||||
[node name="Label" type="Label" parent="PauseMenu/Control"]
|
||||
layout_mode = 1
|
||||
|
@ -892,7 +919,6 @@ anchor_right = 1.0
|
|||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="ScanLines" type="ColorRect" parent="Fades/Control"]
|
||||
visible = false
|
||||
|
@ -904,6 +930,7 @@ anchor_right = 1.0
|
|||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
color = Color(0.247059, 0.247059, 0.247059, 1)
|
||||
|
||||
[node name="LCDDisplay" type="ColorRect" parent="Fades/Control"]
|
||||
|
@ -915,6 +942,7 @@ anchor_right = 1.0
|
|||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
color = Color(0.180392, 0.180392, 0.180392, 1)
|
||||
|
||||
[node name="NSFWReward" type="TextureRect" parent="Fades/Control"]
|
||||
|
@ -925,6 +953,7 @@ anchor_right = 1.0
|
|||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
texture = ExtResource("10_qggmb")
|
||||
expand_mode = 3
|
||||
|
||||
|
@ -936,9 +965,65 @@ anchor_right = 1.0
|
|||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
texture = ExtResource("11_ni26m")
|
||||
expand_mode = 3
|
||||
|
||||
[node name="GameOverScreen" type="Panel" parent="Fades/Control"]
|
||||
visible = false
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_0bu2i")
|
||||
|
||||
[node name="GameOverImage" type="TextureRect" parent="Fades/Control/GameOverScreen"]
|
||||
texture_filter = 2
|
||||
texture_repeat = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 150.0
|
||||
offset_top = 156.0
|
||||
offset_right = -165.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
texture = ExtResource("24_etubl")
|
||||
expand_mode = 1
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="Fades/Control/GameOverScreen"]
|
||||
libraries = {
|
||||
"": SubResource("AnimationLibrary_xe0ly")
|
||||
}
|
||||
|
||||
[node name="Button" type="Button" parent="Fades/Control/GameOverScreen"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 5
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
offset_left = -92.0
|
||||
offset_top = 115.0
|
||||
offset_right = 95.0
|
||||
offset_bottom = 146.0
|
||||
grow_horizontal = 2
|
||||
mouse_default_cursor_shape = 2
|
||||
theme_override_colors/font_color = Color(1, 1, 1, 1)
|
||||
theme_override_colors/font_disabled_color = Color(0.917647, 0.917647, 0.917647, 1)
|
||||
theme_override_fonts/font = ExtResource("2_64thh")
|
||||
theme_override_styles/normal = SubResource("StyleBoxFlat_vk0sh")
|
||||
theme_override_styles/hover = SubResource("StyleBoxFlat_dubbv")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxFlat_dubbv")
|
||||
theme_override_styles/disabled = SubResource("StyleBoxFlat_m6ugn")
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_vk0sh")
|
||||
disabled = true
|
||||
text = "Try again"
|
||||
|
||||
[node name="FaderRect" type="ColorRect" parent="Fades/Control"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
|
@ -955,50 +1040,24 @@ libraries = {
|
|||
}
|
||||
|
||||
[node name="Credits" parent="Fades/Control" instance=ExtResource("11_2tmmx")]
|
||||
visible = false
|
||||
layout_mode = 1
|
||||
|
||||
[node name="GameOverScreen" type="Panel" parent="Fades/Control"]
|
||||
modulate = Color(1, 1, 1, 0)
|
||||
top_level = true
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_0bu2i")
|
||||
|
||||
[node name="GameOverImage" type="TextureRect" parent="Fades/Control/GameOverScreen"]
|
||||
texture_filter = 2
|
||||
texture_repeat = 1
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
texture = ExtResource("24_etubl")
|
||||
expand_mode = 1
|
||||
stretch_mode = 5
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="Fades/Control/GameOverScreen"]
|
||||
libraries = {
|
||||
"": SubResource("AnimationLibrary_xe0ly")
|
||||
}
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
|
||||
[node name="BattleUI" parent="CanvasLayer" instance=ExtResource("10_hxn8m")]
|
||||
mouse_filter = 2
|
||||
metadata/_edit_lock_ = true
|
||||
|
||||
[node name="Debug" type="Control" parent="CanvasLayer"]
|
||||
visible = false
|
||||
layout_mode = 3
|
||||
anchor_left = 0.667
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 0
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="StateChartDebugger" parent="CanvasLayer/Debug" instance=ExtResource("2_o5str")]
|
||||
layout_mode = 1
|
||||
|
@ -1021,6 +1080,7 @@ anchor_right = 1.0
|
|||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
mouse_filter = 2
|
||||
|
||||
[node name="MapElements" type="Node2D" parent="."]
|
||||
y_sort_enabled = true
|
||||
|
@ -1268,13 +1328,15 @@ shape = SubResource("RectangleShape2D_hkvwf")
|
|||
[connection signal="dialogue_completed" from="TextboxUI" to="CutsceneManager" method="_on_ui_dialogue_completed"]
|
||||
[connection signal="dialogue_continued" from="TextboxUI" to="SoundManager" method="_on_ui_dialogue_continued"]
|
||||
[connection signal="dialogue_opened" from="TextboxUI" to="SoundManager" method="_on_ui_dialogue_opened"]
|
||||
[connection signal="pressed" from="Fades/Control/GameOverScreen/Button" to="." method="_on_retry"]
|
||||
[connection signal="pressed" from="Fades/Control/GameOverScreen/Button" to="SoundManager" method="_on_game_requested_retry"]
|
||||
[connection signal="given_way" from="Fades/Control/Credits" to="Fades/Control/Credits" method="_on_given_way" flags=6]
|
||||
[connection signal="given_way" from="Fades/Control/Credits" to="SoundManager" method="_on_game_pause_toggled" flags=6 binds= [false]]
|
||||
[connection signal="reward_requested" from="Fades/Control/Credits" to="." method="_on_credits_requested_reward" flags=6]
|
||||
[connection signal="attack_did_hit" from="HiroPlayer" to="ShadowClone" method="_on_enemy_attack_did_hit"]
|
||||
[connection signal="attack_did_hit" from="HiroPlayer" to="ReedAI" method="_on_enemy_attack_did_hit"]
|
||||
[connection signal="attacked" from="HiroPlayer" to="SoundManager" method="_on_humanoid_character_attacked"]
|
||||
[connection signal="defeated" from="HiroPlayer" to="." method="_on_player_defeated" flags=6]
|
||||
[connection signal="defeated" from="HiroPlayer" to="." method="_on_player_defeated"]
|
||||
[connection signal="defeated" from="HiroPlayer" to="ShadowClone" method="_on_player_been_defeated"]
|
||||
[connection signal="defeated" from="HiroPlayer" to="ReedAI" method="_on_player_been_defeated"]
|
||||
[connection signal="got_hurt" from="HiroPlayer" to="SoundManager" method="_on_character_got_hurt"]
|
||||
|
@ -1287,7 +1349,7 @@ shape = SubResource("RectangleShape2D_hkvwf")
|
|||
[connection signal="got_hurt" from="ShadowClone" to="CanvasLayer/BattleUI" method="_on_enemy_got_hurt"]
|
||||
[connection signal="attack_did_hit" from="ReedAI" to="HiroPlayer" method="_on_enemy_attack_did_hit"]
|
||||
[connection signal="attacked" from="ReedAI" to="SoundManager" method="_on_humanoid_character_attacked"]
|
||||
[connection signal="defeated" from="ReedAI" to="." method="_on_reed_ai_defeated" flags=7]
|
||||
[connection signal="defeated" from="ReedAI" to="." method="_on_reed_ai_defeated" flags=3]
|
||||
[connection signal="got_hurt" from="ReedAI" to="SoundManager" method="_on_character_got_hurt"]
|
||||
[connection signal="got_hurt" from="ReedAI" to="CanvasLayer/BattleUI" method="_on_enemy_got_hurt"]
|
||||
[connection signal="range_attack_initiated" from="ReedAI" to="SoundManager" method="_on_reed_ai_range_attack_initiated"]
|
||||
|
|
Loading…
Reference in a new issue