ja
This commit is contained in:
@@ -18,6 +18,7 @@ size = Vector3(11, 5, 3)
|
||||
|
||||
[node name="AudioSubtitleSystem" type="AudioStreamPlayer3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 4.27434, 0)
|
||||
bus = &"Dialogue"
|
||||
script = ExtResource("1_5vtxu")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
@@ -30,16 +31,17 @@ anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -338.0
|
||||
offset_top = -121.0
|
||||
offset_right = 338.0
|
||||
offset_bottom = -7.0
|
||||
offset_left = -607.5
|
||||
offset_top = -226.0
|
||||
offset_right = 607.5
|
||||
offset_bottom = -21.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_eoq1n")
|
||||
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="CanvasLayer/PanelContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/normal_font_size = 32
|
||||
bbcode_enabled = true
|
||||
scroll_active = false
|
||||
scroll_following = true
|
||||
|
@@ -1,19 +1,73 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://dvb7rkyyyllkc"]
|
||||
[gd_scene load_steps=3 format=3 uid="uid://dvb7rkyyyllkc"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/close_game_confirmation.gd" id="1_qqjao"]
|
||||
|
||||
[node name="CloseGameConfirmation" type="ConfirmationDialog"]
|
||||
title = "Beenden"
|
||||
initial_position = 2
|
||||
size = Vector2i(267, 132)
|
||||
borderless = true
|
||||
ok_button_text = "Zum Hauptmenü"
|
||||
dialog_text = "Möchtest du das Spiel beenden
|
||||
und zurrück zum Hauptmenü
|
||||
oder zurrück zum Desktop?"
|
||||
dialog_close_on_escape = false
|
||||
cancel_button_text = "Zum Desktop"
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_2juxv"]
|
||||
bg_color = Color(0, 0, 0, 0.482353)
|
||||
corner_radius_top_left = 25
|
||||
corner_radius_top_right = 25
|
||||
corner_radius_bottom_right = 25
|
||||
corner_radius_bottom_left = 25
|
||||
|
||||
[node name="CloseGameConfirmation" type="CanvasLayer"]
|
||||
layer = 6
|
||||
visible = false
|
||||
script = ExtResource("1_qqjao")
|
||||
|
||||
[connection signal="canceled" from="." to="." method="_on_canceled"]
|
||||
[connection signal="confirmed" from="." to="." method="_on_confirmed"]
|
||||
[node name="Panel" type="Panel" parent="."]
|
||||
custom_minimum_size = Vector2(615, 360)
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -446.0
|
||||
offset_top = -278.0
|
||||
offset_right = 446.0
|
||||
offset_bottom = 278.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_styles/panel = SubResource("StyleBoxFlat_2juxv")
|
||||
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="Panel"]
|
||||
layout_mode = 2
|
||||
offset_top = 116.0
|
||||
offset_right = 892.0
|
||||
offset_bottom = 356.0
|
||||
size_flags_vertical = 4
|
||||
theme_override_font_sizes/normal_font_size = 48
|
||||
bbcode_enabled = true
|
||||
text = "[center]Möchtest du das
|
||||
Spiel beenden
|
||||
und zurrück zum Hauptmenü
|
||||
oder zurrück zum Desktop?"
|
||||
fit_content = true
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="Panel"]
|
||||
layout_mode = 2
|
||||
offset_left = 89.0
|
||||
offset_top = 454.0
|
||||
offset_right = 803.0
|
||||
offset_bottom = 522.0
|
||||
size_flags_horizontal = 4
|
||||
size_flags_vertical = 8
|
||||
theme_override_constants/separation = 170
|
||||
|
||||
[node name="MainMenu" type="Button" parent="Panel/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 0
|
||||
size_flags_vertical = 4
|
||||
focus_mode = 0
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Zum Hauptmenü"
|
||||
|
||||
[node name="Close" type="Button" parent="Panel/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 8
|
||||
focus_mode = 0
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Zum Desktop
|
||||
"
|
||||
|
||||
[connection signal="pressed" from="Panel/HBoxContainer/MainMenu" to="." method="_on_main_menu_pressed"]
|
||||
[connection signal="pressed" from="Panel/HBoxContainer/Close" to="." method="_on_close_pressed"]
|
||||
|
@@ -1,12 +1,18 @@
|
||||
[gd_scene load_steps=24 format=3 uid="uid://cl6gw3huejnrl"]
|
||||
[gd_scene load_steps=34 format=3 uid="uid://cl6gw3huejnrl"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/gravity_gun.gd" id="1_0upyy"]
|
||||
[ext_resource type="ArrayMesh" uid="uid://cxw30fmp15jsd" path="res://assets/models/gun.obj" id="1_803cf"]
|
||||
[ext_resource type="Environment" uid="uid://drn5fwa4uhv4m" path="res://resources/environment.tres" id="1_vtn44"]
|
||||
[ext_resource type="Material" uid="uid://b6r8e4302xg1d" path="res://assets/materials/dark_metal.material" id="2_qrl87"]
|
||||
[ext_resource type="Shader" path="res://shaders/pbr_glass.gdshader" id="3_aeppb"]
|
||||
[ext_resource type="Texture2D" uid="uid://bawjipies8h2d" path="res://assets/textures/material/scratcheslight/scratcheslight_overlay_var2.jpg" id="4_ouoar"]
|
||||
[ext_resource type="Texture2D" uid="uid://d3dolqycw3mpv" path="res://assets/textures/material/scratcheslight/scratcheslight_nrm.jpg" id="5_h51ti"]
|
||||
[ext_resource type="Texture2D" uid="uid://b4en3dw3q324p" path="res://assets/textures/circle.png" id="6_bmyqq"]
|
||||
[ext_resource type="Texture2D" uid="uid://bjx2i53wtjair" path="res://assets/textures/gui/crosshair.png" id="7_2qfex"]
|
||||
[ext_resource type="Script" path="res://scripts/sound_effect.gd" id="8_8bfw8"]
|
||||
[ext_resource type="AudioStream" uid="uid://clloa1lhfruf2" path="res://assets/audio/gun/gravity_gun.wav" id="9_mhjww"]
|
||||
[ext_resource type="Script" path="res://scripts/soundeffect_resource.gd" id="10_yctqg"]
|
||||
[ext_resource type="AudioStream" uid="uid://rm7sannav5x5" path="res://assets/audio/gun/gravity_gun_drop.wav" id="11_f34jp"]
|
||||
[ext_resource type="AudioStream" uid="uid://b2bvpfryjdlnt" path="res://assets/audio/gun/gravity_gun_freeze.wav" id="12_gps53"]
|
||||
|
||||
[sub_resource type="World3D" id="World3D_wp4pn"]
|
||||
environment = ExtResource("1_vtn44")
|
||||
@@ -18,6 +24,20 @@ func _ready() -> void:
|
||||
msaa_3d = ProjectSettings.get_setting(\"rendering/anti_aliasing/quality/msaa_3d\",0)
|
||||
"
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_t5ta3"]
|
||||
cull_mode = 2
|
||||
albedo_color = Color(0.137255, 0.160784, 0.0745098, 1)
|
||||
albedo_texture = ExtResource("4_ouoar")
|
||||
albedo_texture_msdf = true
|
||||
metallic = 0.7
|
||||
roughness = 0.7
|
||||
normal_enabled = true
|
||||
normal_scale = 3.0
|
||||
normal_texture = ExtResource("5_h51ti")
|
||||
clearcoat = 0.0
|
||||
clearcoat_roughness = 1.0
|
||||
uv1_scale = Vector3(3, 3, 3)
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_b1al8"]
|
||||
render_priority = 0
|
||||
shader = ExtResource("3_aeppb")
|
||||
@@ -114,6 +134,21 @@ void fragment() {
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_1bkc3"]
|
||||
shader = SubResource("Shader_3q2t2")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_h6pb1"]
|
||||
script = ExtResource("10_yctqg")
|
||||
key = "gravity"
|
||||
audio = ExtResource("9_mhjww")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_5l2w7"]
|
||||
script = ExtResource("10_yctqg")
|
||||
key = "drop"
|
||||
audio = ExtResource("11_f34jp")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_wyis3"]
|
||||
script = ExtResource("10_yctqg")
|
||||
key = "freeze"
|
||||
audio = ExtResource("12_gps53")
|
||||
|
||||
[node name="GravityGunLayer" type="CanvasLayer"]
|
||||
follow_viewport_enabled = true
|
||||
script = ExtResource("1_0upyy")
|
||||
@@ -153,7 +188,7 @@ sky_mode = 1
|
||||
transform = Transform3D(0.00445237, 0.182181, 0.983255, 0.0240231, 0.982961, -0.182236, -0.999701, 0.0244322, -4.29794e-08, 0.895815, -0.569743, -1.63173)
|
||||
mesh = ExtResource("1_803cf")
|
||||
skeleton = NodePath("../..")
|
||||
surface_material_override/0 = ExtResource("2_qrl87")
|
||||
surface_material_override/0 = SubResource("StandardMaterial3D_t5ta3")
|
||||
surface_material_override/1 = SubResource("ShaderMaterial_b1al8")
|
||||
surface_material_override/2 = SubResource("StandardMaterial3D_3g65u")
|
||||
surface_material_override/3 = SubResource("StandardMaterial3D_sgrb8")
|
||||
@@ -217,4 +252,38 @@ size_flags_horizontal = 4
|
||||
size_flags_vertical = 4
|
||||
texture = ExtResource("7_2qfex")
|
||||
|
||||
[node name="SoundEffect" type="AudioStreamPlayer" parent="."]
|
||||
bus = &"Sound Effects"
|
||||
script = ExtResource("8_8bfw8")
|
||||
audio_library = Array[ExtResource("10_yctqg")]([SubResource("Resource_h6pb1"), SubResource("Resource_5l2w7"), SubResource("Resource_wyis3")])
|
||||
|
||||
[node name="HUD" type="HBoxContainer" parent="."]
|
||||
custom_minimum_size = Vector2(584, 0)
|
||||
anchors_preset = 3
|
||||
anchor_left = 1.0
|
||||
anchor_top = 1.0
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -607.0
|
||||
offset_top = -73.0
|
||||
offset_right = -23.0
|
||||
offset_bottom = -13.0
|
||||
grow_horizontal = 0
|
||||
grow_vertical = 0
|
||||
size_flags_vertical = 8
|
||||
theme_override_constants/separation = 100
|
||||
|
||||
[node name="Freeze" type="Label" parent="HUD"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 8
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Freeze: Inaktiv"
|
||||
|
||||
[node name="Distance" type="Label" parent="HUD"]
|
||||
custom_minimum_size = Vector2(286, 0)
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 48
|
||||
text = "Distanz: "
|
||||
clip_text = true
|
||||
|
||||
[connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"]
|
||||
|
@@ -1,12 +1,24 @@
|
||||
[gd_scene load_steps=9 format=3 uid="uid://dji1rniuusnmy"]
|
||||
[gd_scene load_steps=14 format=3 uid="uid://dji1rniuusnmy"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/menus/main_menu.gd" id="1_1osxu"]
|
||||
[ext_resource type="PackedScene" uid="uid://ckad8stc13n83" path="res://scenes/levels/lvl_1.tscn" id="2_pnids"]
|
||||
[ext_resource type="Texture2D" uid="uid://drg0qhwicg2df" path="res://assets/textures/gui/logo.png" id="3_a5ih4"]
|
||||
[ext_resource type="FontFile" uid="uid://cr7a85ntk0t0k" path="res://assets/fonts/spacegrotesk_bold.ttf" id="4_26y7w"]
|
||||
[ext_resource type="Texture2D" uid="uid://dq2r0xndibo3w" path="res://assets/textures/gui/settings_icon.svg" id="5_5kyv0"]
|
||||
[ext_resource type="Script" path="res://scripts/menus/level_selection.gd" id="6_fj3e6"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_sr4tr"]
|
||||
content_margin_left = 60.0
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_8hsv5"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_vej04"]
|
||||
content_margin_left = 60.0
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_nitqm"]
|
||||
content_margin_left = 60.0
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_tjer7"]
|
||||
|
||||
[sub_resource type="InputEventAction" id="InputEventAction_bc05y"]
|
||||
action = &"ui_accept"
|
||||
@@ -69,7 +81,7 @@ offset_bottom = 175.0
|
||||
texture = ExtResource("3_a5ih4")
|
||||
expand_mode = 1
|
||||
|
||||
[node name="ButtonCOntainer" type="VBoxContainer" parent="."]
|
||||
[node name="ButtonContainer" type="VBoxContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 6
|
||||
anchor_left = 1.0
|
||||
@@ -83,31 +95,45 @@ offset_bottom = 190.0
|
||||
grow_horizontal = 0
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="StartGame" type="Button" parent="ButtonCOntainer"]
|
||||
[node name="StartGame" type="Button" parent="ButtonContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 8
|
||||
focus_mode = 0
|
||||
theme_override_fonts/font = ExtResource("4_26y7w")
|
||||
theme_override_font_sizes/font_size = 96
|
||||
theme_override_styles/normal = SubResource("StyleBoxEmpty_sr4tr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxEmpty_8hsv5")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxEmpty_vej04")
|
||||
theme_override_styles/disabled = SubResource("StyleBoxEmpty_nitqm")
|
||||
theme_override_styles/focus = SubResource("StyleBoxEmpty_tjer7")
|
||||
shortcut = SubResource("Shortcut_fasub")
|
||||
shortcut_in_tooltip = false
|
||||
text = "Spiel starten"
|
||||
|
||||
[node name="Levelselect" type="Button" parent="ButtonCOntainer"]
|
||||
[node name="Levelselect" type="Button" parent="ButtonContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 8
|
||||
tooltip_text = "Noch nicht verfügbar!"
|
||||
theme_override_fonts/font = ExtResource("4_26y7w")
|
||||
theme_override_font_sizes/font_size = 86
|
||||
theme_override_styles/normal = SubResource("StyleBoxEmpty_sr4tr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxEmpty_8hsv5")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxEmpty_sr4tr")
|
||||
theme_override_styles/disabled = SubResource("StyleBoxEmpty_nitqm")
|
||||
theme_override_styles/focus = SubResource("StyleBoxEmpty_tjer7")
|
||||
disabled = true
|
||||
text = "Levelauswahl"
|
||||
|
||||
[node name="QuitGame" type="Button" parent="ButtonCOntainer"]
|
||||
[node name="QuitGame" type="Button" parent="ButtonContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 8
|
||||
theme_override_fonts/font = ExtResource("4_26y7w")
|
||||
theme_override_font_sizes/font_size = 72
|
||||
theme_override_styles/normal = SubResource("StyleBoxEmpty_sr4tr")
|
||||
theme_override_styles/hover = SubResource("StyleBoxEmpty_8hsv5")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxEmpty_vej04")
|
||||
theme_override_styles/disabled = SubResource("StyleBoxEmpty_nitqm")
|
||||
theme_override_styles/focus = SubResource("StyleBoxEmpty_tjer7")
|
||||
text = "Spiel beenden"
|
||||
|
||||
[node name="TopInfo" type="HBoxContainer" parent="."]
|
||||
@@ -122,19 +148,47 @@ offset_bottom = 136.0
|
||||
grow_horizontal = 0
|
||||
theme_override_constants/separation = 16
|
||||
|
||||
[node name="ProgressBar" type="ProgressBar" parent="TopInfo"]
|
||||
[node name="LevelProgress" type="VBoxContainer" parent="TopInfo"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 8
|
||||
|
||||
[node name="Label" type="Label" parent="TopInfo/LevelProgress"]
|
||||
layout_mode = 2
|
||||
text = "Level 0/3"
|
||||
|
||||
[node name="ProgressBar" type="ProgressBar" parent="TopInfo/LevelProgress"]
|
||||
custom_minimum_size = Vector2(280, 16)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 0
|
||||
size_flags_vertical = 8
|
||||
max_value = 5.0
|
||||
value = 1.0
|
||||
|
||||
[node name="Settings" type="Button" parent="TopInfo"]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 0
|
||||
tooltip_text = "Noch nicht verfügbar!"
|
||||
disabled = true
|
||||
icon = ExtResource("5_5kyv0")
|
||||
|
||||
[connection signal="pressed" from="ButtonCOntainer/StartGame" to="." method="_on_start_game_pressed"]
|
||||
[node name="LevelSelection" type="PanelContainer" parent="."]
|
||||
visible = false
|
||||
custom_minimum_size = Vector2(1500, 700)
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -750.0
|
||||
offset_top = -292.0
|
||||
offset_right = 750.0
|
||||
offset_bottom = 497.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("6_fj3e6")
|
||||
|
||||
[connection signal="pressed" from="ButtonContainer/StartGame" to="." method="_on_start_game_pressed"]
|
||||
[connection signal="pressed" from="ButtonContainer/QuitGame" to="." method="_on_quit_game_pressed"]
|
||||
|
||||
[editable path="SubViewportContainer/SubViewport/LVL1"]
|
||||
[editable path="SubViewportContainer/SubViewport/LVL1/interior"]
|
||||
|
@@ -47,18 +47,21 @@ grow_vertical = 2
|
||||
[node name="Continue" type="Button" parent="VBoxContainer"]
|
||||
process_mode = 3
|
||||
layout_mode = 2
|
||||
focus_mode = 0
|
||||
theme_override_font_sizes/font_size = 46
|
||||
text = "Weiter spielen"
|
||||
|
||||
[node name="RestartLevel" type="Button" parent="VBoxContainer"]
|
||||
process_mode = 3
|
||||
layout_mode = 2
|
||||
focus_mode = 0
|
||||
theme_override_font_sizes/font_size = 46
|
||||
text = "Level neu starten"
|
||||
|
||||
[node name="CloseLevel" type="Button" parent="VBoxContainer"]
|
||||
process_mode = 3
|
||||
layout_mode = 2
|
||||
focus_mode = 0
|
||||
theme_override_font_sizes/font_size = 46
|
||||
text = "Beenden"
|
||||
|
||||
|
179
scenes/level_finish_area.tscn
Normal file
179
scenes/level_finish_area.tscn
Normal file
@@ -0,0 +1,179 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://d2rmg0r1hircj"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_urlb8"]
|
||||
|
||||
[sub_resource type="Shader" id="Shader_kkxwe"]
|
||||
code = "shader_type spatial;
|
||||
//Simple 3D shader to create a force-field effect inspired by Faultless Defense from Guilty Gear Xrd.
|
||||
//In summary, it takes logic used for simple rim lighting and uses it to create the alpha instead.
|
||||
|
||||
render_mode blend_mix,depth_draw_always,cull_back,diffuse_burley,specular_schlick_ggx;//depth_test_disable;
|
||||
uniform vec4 albedo : hint_color;
|
||||
uniform vec4 emission_color : hint_color;
|
||||
uniform sampler2D texture_albedo : hint_albedo;
|
||||
uniform float emission_amount: hint_range(0.0, 16.0) = 5.0f;
|
||||
uniform float rim_steepness : hint_range(0.0f, 16.0f) = 3.0f; //higher values mean a smaller rim.
|
||||
uniform vec3 uv_scale;
|
||||
uniform vec3 uv_offset;
|
||||
|
||||
|
||||
void vertex() {
|
||||
UV=UV*uv_scale.xy+uv_offset.xy;
|
||||
}
|
||||
|
||||
void fragment() {
|
||||
vec2 base_uv = UV;
|
||||
vec4 albedo_tex = texture(texture_albedo,base_uv);
|
||||
ALBEDO = albedo.rgb * albedo_tex.rgb;
|
||||
EMISSION = emission_color.rgb * emission_amount;
|
||||
float PI = 3.14159265359;
|
||||
float NdotV = dot(NORMAL, VIEW);
|
||||
float rim_light = pow(1.0 - NdotV, rim_steepness);
|
||||
ALPHA = rim_light * emission_color.a / PI;
|
||||
}"
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_xe3kp"]
|
||||
render_priority = 0
|
||||
shader = SubResource("Shader_kkxwe")
|
||||
|
||||
[sub_resource type="PlaneMesh" id="PlaneMesh_u64vp"]
|
||||
material = SubResource("ShaderMaterial_xe3kp")
|
||||
|
||||
[sub_resource type="Shader" id="Shader_6md8p"]
|
||||
code = "shader_type canvas_item;
|
||||
|
||||
const float REPEAT = 5.0;
|
||||
|
||||
mat2 rot(float a) {
|
||||
float c = cos(a), s = sin(a);
|
||||
return mat2(vec2(c,s),vec2(-s,c));
|
||||
}
|
||||
|
||||
float sdBox( vec3 p, vec3 b )
|
||||
{
|
||||
vec3 q = abs(p) - b;
|
||||
return length(max(q,0.0)) + min(max(q.x,max(q.y,q.z)),0.0);
|
||||
}
|
||||
|
||||
float box(vec3 pos, float scale) {
|
||||
pos *= scale;
|
||||
float base = sdBox(pos, vec3(.4,.4,.1)) /1.5;
|
||||
pos.xy *= 5.;
|
||||
pos.y -= 3.5;
|
||||
pos.xy *= rot(.75);
|
||||
float result = -base;
|
||||
return result;
|
||||
}
|
||||
|
||||
float box_set(vec3 pos, float iTime,float gTime) {
|
||||
vec3 pos_origin = pos;
|
||||
pos = pos_origin;
|
||||
pos .y += sin(gTime * 0.4) * 2.5;
|
||||
pos.xy *= rot(.8);
|
||||
float box1 = box(pos,2. - abs(sin(gTime * 0.4)) * 1.5);
|
||||
pos = pos_origin;
|
||||
pos .y -=sin(gTime * 0.4) * 2.5;
|
||||
pos.xy *= rot(.8);
|
||||
float box2 = box(pos,2. - abs(sin(gTime * 0.4)) * 1.5);
|
||||
pos = pos_origin;
|
||||
pos .x +=sin(gTime * 0.4) * 2.5;
|
||||
pos.xy *= rot(.8);
|
||||
float box3 = box(pos,2. - abs(sin(gTime * 0.4)) * 1.5);
|
||||
pos = pos_origin;
|
||||
pos .x -=sin(gTime * 0.4) * 2.5;
|
||||
pos.xy *= rot(.8);
|
||||
float box4 = box(pos,2. - abs(sin(gTime * 0.4)) * 1.5);
|
||||
pos = pos_origin;
|
||||
pos.xy *= rot(.8);
|
||||
float box5 = box(pos,.5) * 6.;
|
||||
pos = pos_origin;
|
||||
float box6 = box(pos,.5) * 6.;
|
||||
float result = max(max(max(max(max(box1,box2),box3),box4),box5),box6);
|
||||
return result;
|
||||
}
|
||||
|
||||
float map(vec3 pos, float iTime, float gTime) {
|
||||
vec3 pos_origin = pos;
|
||||
float box_set1 = box_set(pos, iTime, gTime);
|
||||
|
||||
return box_set1;
|
||||
}
|
||||
|
||||
void fragment() {
|
||||
vec2 iResolution = 1.0 / SCREEN_PIXEL_SIZE;
|
||||
float iTime = TIME;
|
||||
float gTime = 0.0;
|
||||
vec2 p = (FRAGCOORD.xy * 2. - iResolution.xy) / min(iResolution.x, iResolution.y);
|
||||
vec3 ro = vec3(0., -0.2 ,iTime * 4.);
|
||||
vec3 ray = normalize(vec3(p, 1.5));
|
||||
ray.xy = ray.xy * rot(sin(iTime * .03) * 5.);
|
||||
ray.yz = ray.yz * rot(sin(iTime * .05) * .2);
|
||||
float t = 0.1;
|
||||
vec3 col = vec3(0.);
|
||||
float ac = 0.0;
|
||||
|
||||
|
||||
for (int i = 0; i < 99; i++){
|
||||
vec3 pos = ro + ray * t;
|
||||
pos = mod(pos-2., 4.) -2.;
|
||||
gTime = iTime -float(i) * 0.01;
|
||||
|
||||
float d = map(pos, iTime, gTime);
|
||||
|
||||
d = max(abs(d), 0.01);
|
||||
ac += exp(-d*23.);
|
||||
|
||||
t += d* 0.55;
|
||||
}
|
||||
|
||||
col = vec3(ac * 0.02);
|
||||
|
||||
col +=vec3(0.,0.2 * abs(sin(iTime)),0.5 + sin(iTime) * 0.2);
|
||||
|
||||
|
||||
COLOR = vec4(col ,1.0 - t * (0.02 + 0.02 * sin (iTime)));
|
||||
}"
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_hw5y5"]
|
||||
shader = SubResource("Shader_6md8p")
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_p3ds8"]
|
||||
font_size = 48
|
||||
|
||||
[node name="Area3D" type="Area3D"]
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
shape = SubResource("BoxShape3D_urlb8")
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
|
||||
mesh = SubResource("PlaneMesh_u64vp")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="CanvasLayer"]
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(0, 0, 0, 1)
|
||||
|
||||
[node name="Shader" type="ColorRect" parent="CanvasLayer"]
|
||||
material = SubResource("ShaderMaterial_hw5y5")
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="Label" type="Label" parent="CanvasLayer"]
|
||||
anchors_preset = 2
|
||||
anchor_top = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = 19.0
|
||||
offset_top = -78.0
|
||||
offset_right = 789.0
|
||||
offset_bottom = -18.0
|
||||
grow_vertical = 0
|
||||
text = "Keine Panik! Die Simulation lädt..."
|
||||
label_settings = SubResource("LabelSettings_p3ds8")
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=21 format=3 uid="uid://ckad8stc13n83"]
|
||||
[gd_scene load_steps=25 format=3 uid="uid://ckad8stc13n83"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://ddwkhfly2xyyt" path="res://assets/models/interior.obj" id="1_xs30l"]
|
||||
[ext_resource type="Material" uid="uid://1w6e5sx6poff" path="res://assets/textures/material/tilesslatesquare/tilesslatesquare.material" id="2_evxh1"]
|
||||
@@ -8,11 +8,13 @@
|
||||
[ext_resource type="PackedScene" uid="uid://cy0x2nliyw8gw" path="res://scenes/objects/door.tscn" id="13_fhdru"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqy8bqf1chm8c" path="res://scenes/objects/interactables/button_stand.tscn" id="14_mpdbg"]
|
||||
[ext_resource type="PackedScene" uid="uid://ced2w03t8er5k" path="res://scenes/objects/cube.tscn" id="15_40os8"]
|
||||
[ext_resource type="AudioStream" uid="uid://cgvbxwsnkbs43" path="res://assets/audio/voicelines/anouncer_lvl1_01.ogg" id="15_b0jr0"]
|
||||
[ext_resource type="PackedScene" uid="uid://ce8nemacxi67m" path="res://scenes/audio_subtitle_system.tscn" id="16_2wrmg"]
|
||||
[ext_resource type="AudioStream" uid="uid://bflyad1e0la3d" path="res://assets/audio/voicelines/anouncer_lvl1_02.ogg" id="16_ova7a"]
|
||||
[ext_resource type="AudioStream" uid="uid://d3741vrmaeci5" path="res://assets/audio/voicelines/anouncer_intro_01.ogg" id="17_1a448"]
|
||||
[ext_resource type="Script" path="res://scripts/voiceline_resource.gd" id="18_jxpoe"]
|
||||
[ext_resource type="AudioStream" uid="uid://bi1rf1hi2fm2r" path="res://assets/audio/voicelines/anouncer_intro_02.ogg" id="19_2roq0"]
|
||||
[ext_resource type="AudioStream" uid="uid://bji3bx3umohnw" path="res://assets/audio/voicelines/anouncer_intro_03.ogg" id="20_dqpxk"]
|
||||
[ext_resource type="AudioStream" uid="uid://rg20ayxe5m75" path="res://assets/audio/voicelines/anouncer_intro_03.ogg" id="20_dqpxk"]
|
||||
[ext_resource type="AudioStream" uid="uid://ddpvabd43s3p4" path="res://assets/audio/voicelines/anouncer_intro_04.ogg" id="21_n11nj"]
|
||||
|
||||
[sub_resource type="BoxMesh" id="BoxMesh_wyr1d"]
|
||||
@@ -41,11 +43,21 @@ script = ExtResource("18_jxpoe")
|
||||
audio = ExtResource("21_n11nj")
|
||||
text = "Jetzt werden Sie einige Tests durchführen, um sicherzustellen, dass Sie [rainbow][wave]keinen Hirnschaden[/wave][/rainbow] haben oder ein [rainbow][wave]kompletter Idiot[/wave][/rainbow] sind, da es jetzt vollständig in unser digitales Simulationssystem integriert ist."
|
||||
|
||||
[sub_resource type="Resource" id="Resource_36k3m"]
|
||||
script = ExtResource("18_jxpoe")
|
||||
audio = ExtResource("15_b0jr0")
|
||||
text = "Jetzt müssen Sie mit unserer simulierten [color=blue]Gravity Gun™[/color] aus dem ersten Raum entkommen. "
|
||||
|
||||
[sub_resource type="Resource" id="Resource_r341a"]
|
||||
script = ExtResource("18_jxpoe")
|
||||
audio = ExtResource("16_ova7a")
|
||||
text = "Wir nehmen auch Investoren für die reale Version dieses Tools an."
|
||||
|
||||
[node name="LVL1" type="Node3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1)
|
||||
|
||||
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||
transform = Transform3D(0.707107, -0.707107, 0, 0.5, 0.5, 0.707107, -0.5, -0.5, 0.707107, 0, 0, 0)
|
||||
transform = Transform3D(0.707107, -0.707107, -4.21468e-08, -0.5, -0.5, 0.707107, -0.5, -0.5, -0.707107, 0, 0, 0)
|
||||
directional_shadow_blend_splits = true
|
||||
sky_mode = 1
|
||||
|
||||
@@ -62,17 +74,17 @@ surface_material_override/0 = ExtResource("7_nrt8m")
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 5.23956)
|
||||
|
||||
[node name="CompletionCounter" parent="." node_paths=PackedStringArray("nodes_needed") instance=ExtResource("12_vn8j0")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0617981, 3.05379, 6.24098)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0617981, 3.08507, 6.31598)
|
||||
nodes_needed = [NodePath("../ButtonStand2"), NodePath("../ButtonStand3")]
|
||||
|
||||
[node name="Door" parent="." instance=ExtResource("13_fhdru")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0536218, 1.58488, 6.64)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0536218, 1.48562, 6.64)
|
||||
|
||||
[node name="ButtonStand2" parent="." instance=ExtResource("14_mpdbg")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.03802, 0.7, 4)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.038, 0.65, 4)
|
||||
|
||||
[node name="ButtonStand3" parent="." instance=ExtResource("14_mpdbg")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 4.7, 0.0433838)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 4.65, 0.043)
|
||||
|
||||
[node name="Cube" parent="." instance=ExtResource("15_40os8")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.51, 0)
|
||||
@@ -83,20 +95,20 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.51, 0)
|
||||
[node name="Cube3" parent="." instance=ExtResource("15_40os8")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1968, 0.51, 0)
|
||||
|
||||
[node name="DebugPlane" type="StaticBody3D" parent="."]
|
||||
[node name="Plane" type="StaticBody3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 3.9, 0)
|
||||
collision_layer = 7
|
||||
collision_mask = 7
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="DebugPlane"]
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="Plane"]
|
||||
mesh = SubResource("BoxMesh_wyr1d")
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="DebugPlane"]
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Plane"]
|
||||
shape = SubResource("BoxShape3D_lygjd")
|
||||
|
||||
[node name="AudioSubtitleSystem" parent="." instance=ExtResource("16_2wrmg")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 4.27434, 3)
|
||||
voice_lines = Array[ExtResource("18_jxpoe")]([SubResource("Resource_u3j5u"), SubResource("Resource_3g4yn"), SubResource("Resource_6wqks"), SubResource("Resource_im7qv")])
|
||||
voice_lines = Array[ExtResource("18_jxpoe")]([SubResource("Resource_u3j5u"), SubResource("Resource_3g4yn"), SubResource("Resource_6wqks"), SubResource("Resource_im7qv"), SubResource("Resource_36k3m"), SubResource("Resource_r341a")])
|
||||
|
||||
[node name="Camera3D" type="Camera3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 0, 3, 6)
|
||||
|
31
scenes/levels/lvl_2.tscn
Normal file
31
scenes/levels/lvl_2.tscn
Normal file
@@ -0,0 +1,31 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://c17x7kmjmqdk3"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://ddwkhfly2xyyt" path="res://assets/models/interior.obj" id="1_yhnvx"]
|
||||
[ext_resource type="Material" uid="uid://bg5hb1744y4ik" path="res://assets/textures/material/planks/planks.material" id="2_58abf"]
|
||||
[ext_resource type="Material" uid="uid://du8w0x0kmgjui" path="res://assets/textures/material/bricks/bricks.tres" id="3_dimow"]
|
||||
[ext_resource type="PackedScene" uid="uid://gg5ph541e4p3" path="res://scenes/player.tscn" id="4_s0xrk"]
|
||||
|
||||
[node name="LVL1" type="Node3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1)
|
||||
|
||||
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||
transform = Transform3D(0.707107, -0.707107, -4.21468e-08, -0.5, -0.5, 0.707107, -0.5, -0.5, -0.707107, 0, 0, 0)
|
||||
directional_shadow_blend_splits = true
|
||||
sky_mode = 1
|
||||
|
||||
[node name="interior" parent="." instance=ExtResource("1_yhnvx")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0)
|
||||
|
||||
[node name="Hallway" parent="interior" index="0"]
|
||||
surface_material_override/0 = ExtResource("2_58abf")
|
||||
|
||||
[node name="Room" parent="interior" index="1"]
|
||||
surface_material_override/0 = ExtResource("3_dimow")
|
||||
|
||||
[node name="Player" parent="." instance=ExtResource("4_s0xrk")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 5.23956)
|
||||
|
||||
[node name="Camera3D" type="Camera3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 0, 3, 6)
|
||||
|
||||
[editable path="interior"]
|
@@ -16,6 +16,7 @@ buffer = PackedFloat32Array(1.001, 0, 0, -0.075992, 0, 0, -1.001, -0.0484443, 0,
|
||||
|
||||
[node name="CompletionCounter" type="MeshInstance3D"]
|
||||
editor_description = "The amount of signals it needs connected and fired to emit a signal"
|
||||
visible = false
|
||||
mesh = SubResource("BoxMesh_w280a")
|
||||
script = ExtResource("1_40xge")
|
||||
|
||||
|
@@ -1,19 +1,47 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://cy0x2nliyw8gw"]
|
||||
[gd_scene load_steps=9 format=3 uid="uid://cy0x2nliyw8gw"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/door.gd" id="1_qix0h"]
|
||||
|
||||
[sub_resource type="BoxMesh" id="BoxMesh_8iti4"]
|
||||
size = Vector3(1.5, 3, 0.2)
|
||||
[ext_resource type="ArrayMesh" uid="uid://dcoh3pfu6hb6q" path="res://assets/models/door.obj" id="2_vc20h"]
|
||||
[ext_resource type="Material" uid="uid://canvgrlphqagw" path="res://assets/materials/light_metal.material" id="3_ti6vs"]
|
||||
[ext_resource type="ArrayMesh" uid="uid://bpv5cwupbmdtk" path="res://assets/models/door_handle.obj" id="4_frcys"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_pejvk"]
|
||||
size = Vector3(1.5, 3, 0.2)
|
||||
|
||||
[sub_resource type="Animation" id="Animation_hlq2m"]
|
||||
[sub_resource type="Animation" id="Animation_1220n"]
|
||||
resource_name = "open"
|
||||
length = 0.5
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("MeshInstance3D2:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.5),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0, 0, 0), Vector3(1, 0, 0)]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("MeshInstance3D2/Handle:rotation")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0, 0.5),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0.349066, 1.5708, -1.5708), Vector3(5.93412, 1.5708, -1.5708)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_3fs6g"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:position")
|
||||
tracks/0/path = NodePath("MeshInstance3D2:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
@@ -22,44 +50,48 @@ tracks/0/keys = {
|
||||
"update": 0,
|
||||
"values": [Vector3(0, 0, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_53g2p"]
|
||||
resource_name = "open"
|
||||
length = 0.5
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath(".:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.5),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
tracks/1/type = "value"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("MeshInstance3D2/Handle:rotation")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0, 0, 0), Vector3(1.4, 0, 0)]
|
||||
"values": [Vector3(0.349066, 1.5708, -1.5708)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_r8evj"]
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_5xgbb"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_hlq2m"),
|
||||
"open": SubResource("Animation_53g2p")
|
||||
"RESET": SubResource("Animation_3fs6g"),
|
||||
"open": SubResource("Animation_1220n")
|
||||
}
|
||||
|
||||
[node name="Door" type="Node3D"]
|
||||
script = ExtResource("1_qix0h")
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
|
||||
mesh = SubResource("BoxMesh_8iti4")
|
||||
[node name="MeshInstance3D2" type="MeshInstance3D" parent="."]
|
||||
transform = Transform3D(0.75, 0, 0, 0, 0.75, 0, 0, 0, 0.5, 0, 0, 0)
|
||||
mesh = ExtResource("2_vc20h")
|
||||
surface_material_override/0 = ExtResource("3_ti6vs")
|
||||
|
||||
[node name="StaticBody3D" type="StaticBody3D" parent="MeshInstance3D"]
|
||||
[node name="StaticBody3D" type="StaticBody3D" parent="MeshInstance3D2"]
|
||||
transform = Transform3D(1.33333, 0, 0, 0, 1.33333, 0, 0, 0, 1.33333, 0, 0, 0)
|
||||
collision_layer = 3
|
||||
collision_mask = 3
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance3D/StaticBody3D"]
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance3D2/StaticBody3D"]
|
||||
shape = SubResource("BoxShape3D_pejvk")
|
||||
|
||||
[node name="Handle" type="MeshInstance3D" parent="MeshInstance3D2"]
|
||||
transform = Transform3D(-0.456027, -1.17323e-07, 1.25292, -1.25292, -8.21505e-08, -0.456027, 7.82154e-08, -2, -5.4767e-08, -0.757807, -0.445, -0.399)
|
||||
mesh = ExtResource("4_frcys")
|
||||
skeleton = NodePath("../..")
|
||||
surface_material_override/0 = ExtResource("3_ti6vs")
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
root_node = NodePath("../MeshInstance3D")
|
||||
libraries = {
|
||||
"": SubResource("AnimationLibrary_r8evj")
|
||||
"": SubResource("AnimationLibrary_5xgbb")
|
||||
}
|
||||
|
@@ -2,27 +2,18 @@
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://dm8l36ephydnl" path="res://scenes/objects/interaction_area.tscn" id="1_0okd0"]
|
||||
[ext_resource type="Script" path="res://scripts/interactables/completer/button_stand.gd" id="1_gkcm2"]
|
||||
[ext_resource type="ArrayMesh" uid="uid://bjiycdbug2bd3" path="res://assets/models/button_stand.obj" id="2_0tsnx"]
|
||||
[ext_resource type="Material" uid="uid://cxjgare3kcbtl" path="res://assets/materials/dark_metal2.material" id="3_u47pc"]
|
||||
[ext_resource type="Material" uid="uid://df88ryv5mvkg0" path="res://assets/textures/material/metal/metal_red.material" id="4_sck5v"]
|
||||
|
||||
[sub_resource type="CylinderShape3D" id="CylinderShape3D_jpuiw"]
|
||||
height = 1.4
|
||||
height = 1.45
|
||||
radius = 0.3
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_q60ht"]
|
||||
albedo_color = Color(0.54902, 0.54902, 0.54902, 1)
|
||||
|
||||
[sub_resource type="CylinderMesh" id="CylinderMesh_hgcvq"]
|
||||
material = SubResource("StandardMaterial3D_q60ht")
|
||||
top_radius = 0.3
|
||||
bottom_radius = 0.3
|
||||
height = 1.4
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_crdtx"]
|
||||
albedo_color = Color(0.686275, 0, 0.168627, 1)
|
||||
|
||||
[sub_resource type="CylinderMesh" id="CylinderMesh_g1gjr"]
|
||||
material = SubResource("StandardMaterial3D_crdtx")
|
||||
top_radius = 0.2
|
||||
bottom_radius = 0.2
|
||||
material = ExtResource("4_sck5v")
|
||||
top_radius = 0.12
|
||||
bottom_radius = 0.12
|
||||
height = 0.1
|
||||
|
||||
[sub_resource type="Animation" id="Animation_y5bt0"]
|
||||
@@ -37,12 +28,12 @@ tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0, 0.750413, 0)]
|
||||
"values": [Vector3(0, 0.72, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_stg1c"]
|
||||
resource_name = "press"
|
||||
length = 0.2
|
||||
length = 0.1
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
@@ -50,10 +41,10 @@ tracks/0/path = NodePath("Button:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0, 0.1, 0.2),
|
||||
"transitions": PackedFloat32Array(1, 1, 1),
|
||||
"times": PackedFloat32Array(0, 0.1),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0, 0.750413, 0), Vector3(0, 0.67, 0), Vector3(0, 0.75, 0)]
|
||||
"values": [Vector3(0, 0.72, 0), Vector3(0, 0.65, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_um1vs"]
|
||||
@@ -68,13 +59,21 @@ collision_mask = 7
|
||||
script = ExtResource("1_gkcm2")
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0349109, 0)
|
||||
shape = SubResource("CylinderShape3D_jpuiw")
|
||||
|
||||
[node name="Stand" type="MeshInstance3D" parent="."]
|
||||
mesh = SubResource("CylinderMesh_hgcvq")
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.63, 0)
|
||||
mesh = ExtResource("2_0tsnx")
|
||||
surface_material_override/0 = ExtResource("3_u47pc")
|
||||
|
||||
[node name="Stand2" type="MeshInstance3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.63, 0)
|
||||
mesh = ExtResource("2_0tsnx")
|
||||
surface_material_override/0 = ExtResource("3_u47pc")
|
||||
|
||||
[node name="Button" type="MeshInstance3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.750413, 0)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.72, 0)
|
||||
mesh = SubResource("CylinderMesh_g1gjr")
|
||||
|
||||
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
||||
|
@@ -1,9 +1,15 @@
|
||||
[gd_scene load_steps=9 format=3 uid="uid://gg5ph541e4p3"]
|
||||
[gd_scene load_steps=19 format=3 uid="uid://gg5ph541e4p3"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/player.gd" id="1_8d33x"]
|
||||
[ext_resource type="PackedScene" uid="uid://cl6gw3huejnrl" path="res://scenes/gravity_gun.tscn" id="2_ahuce"]
|
||||
[ext_resource type="Script" path="res://shaders/gdscript_assist/ddof.gd" id="2_jg7te"]
|
||||
[ext_resource type="Shader" path="res://shaders/ddof.gdshader" id="2_rpqdy"]
|
||||
[ext_resource type="Script" path="res://scripts/sound_effect.gd" id="5_t1bvf"]
|
||||
[ext_resource type="Script" path="res://scripts/soundeffect_resource.gd" id="6_4revs"]
|
||||
[ext_resource type="AudioStream" uid="uid://do3u2sqjla0as" path="res://assets/audio/footsteps/jump.wav" id="6_oau5k"]
|
||||
[ext_resource type="AudioStream" uid="uid://cugjcjiiq2xvo" path="res://assets/audio/footsteps/step1.wav" id="8_kxd2q"]
|
||||
[ext_resource type="AudioStream" uid="uid://d112eqcmac840" path="res://assets/audio/footsteps/step2.wav" id="9_4mctc"]
|
||||
[ext_resource type="AudioStream" uid="uid://cf87vn2hrh7u8" path="res://assets/audio/footsteps/land.wav" id="10_n3ln3"]
|
||||
|
||||
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_2qx4s"]
|
||||
radius = 0.4
|
||||
@@ -25,6 +31,26 @@ size = Vector2(2, 2)
|
||||
|
||||
[sub_resource type="SeparationRayShape3D" id="SeparationRayShape3D_fvhib"]
|
||||
|
||||
[sub_resource type="Resource" id="Resource_n8h0v"]
|
||||
script = ExtResource("6_4revs")
|
||||
key = "jump"
|
||||
audio = ExtResource("6_oau5k")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_a4b4g"]
|
||||
script = ExtResource("6_4revs")
|
||||
key = "step1"
|
||||
audio = ExtResource("8_kxd2q")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_yjl6f"]
|
||||
script = ExtResource("6_4revs")
|
||||
key = "step2"
|
||||
audio = ExtResource("9_4mctc")
|
||||
|
||||
[sub_resource type="Resource" id="Resource_qe4pm"]
|
||||
script = ExtResource("6_4revs")
|
||||
key = "land"
|
||||
audio = ExtResource("10_n3ln3")
|
||||
|
||||
[node name="Player" type="CharacterBody3D"]
|
||||
script = ExtResource("1_8d33x")
|
||||
|
||||
@@ -60,4 +86,13 @@ transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0,
|
||||
[node name="GravityGunLayer" parent="." node_paths=PackedStringArray("player") instance=ExtResource("2_ahuce")]
|
||||
player = NodePath("..")
|
||||
|
||||
[node name="FootStepTimer" type="Timer" parent="."]
|
||||
wait_time = 0.4
|
||||
|
||||
[node name="FootSteps" type="AudioStreamPlayer" parent="."]
|
||||
script = ExtResource("5_t1bvf")
|
||||
audio_library = Array[ExtResource("6_4revs")]([SubResource("Resource_n8h0v"), SubResource("Resource_a4b4g"), SubResource("Resource_yjl6f"), SubResource("Resource_qe4pm")])
|
||||
|
||||
[connection signal="timeout" from="FootStepTimer" to="." method="_on_foot_step_timer_timeout"]
|
||||
|
||||
[editable path="GravityGunLayer"]
|
||||
|
Reference in New Issue
Block a user