did a lot of stuff holy shit
This commit is contained in:
142
scenes/autoloads/level_manager.tscn
Normal file
142
scenes/autoloads/level_manager.tscn
Normal file
@@ -0,0 +1,142 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://d0c5hrutllyqx"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/autoloads/level_manager.gd" id="1_r0vey"]
|
||||
[ext_resource type="PackedScene" uid="uid://ckad8stc13n83" path="res://scenes/levels/lvl_1.tscn" id="2_tl22s"]
|
||||
[ext_resource type="PackedScene" uid="uid://c17x7kmjmqdk3" path="res://scenes/levels/lvl_2.tscn" id="3_i56tx"]
|
||||
|
||||
[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_xt4fu"]
|
||||
shader = SubResource("Shader_6md8p")
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_v50fi"]
|
||||
font_size = 48
|
||||
|
||||
[node name="LevelManager" type="Node"]
|
||||
script = ExtResource("1_r0vey")
|
||||
levels = Array[PackedScene]([ExtResource("2_tl22s"), ExtResource("3_i56tx")])
|
||||
|
||||
[node name="Transition" type="CanvasLayer" parent="."]
|
||||
layer = 2
|
||||
visible = false
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="Transition"]
|
||||
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="Transition"]
|
||||
material = SubResource("ShaderMaterial_xt4fu")
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="Label" type="Label" parent="Transition"]
|
||||
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_v50fi")
|
@@ -57,11 +57,11 @@ clearcoat_enabled = true
|
||||
ao_light_affect = 0.22
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6ml44"]
|
||||
albedo_color = Color(1, 0, 0, 1)
|
||||
albedo_color = Color(0.207843, 0.639216, 0, 1)
|
||||
metallic_specular = 0.0
|
||||
emission_enabled = true
|
||||
emission = Color(1, 0.156863, 0, 1)
|
||||
emission_energy_multiplier = 16.0
|
||||
emission = Color(0, 0.662745, 0, 1)
|
||||
emission_energy_multiplier = 0.0
|
||||
backlight_enabled = true
|
||||
backlight = Color(1, 0.215686, 0, 1)
|
||||
disable_receive_shadows = true
|
||||
|
@@ -1,6 +1,6 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://dvb7rkyyyllkc"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/close_game_confirmation.gd" id="1_qqjao"]
|
||||
[ext_resource type="Script" path="res://scripts/close_game_confirmation.gd" id="1_7dm65"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_2juxv"]
|
||||
bg_color = Color(0, 0, 0, 0.482353)
|
||||
@@ -12,7 +12,7 @@ corner_radius_bottom_left = 25
|
||||
[node name="CloseGameConfirmation" type="CanvasLayer"]
|
||||
layer = 6
|
||||
visible = false
|
||||
script = ExtResource("1_qqjao")
|
||||
script = ExtResource("1_7dm65")
|
||||
|
||||
[node name="Panel" type="Panel" parent="."]
|
||||
custom_minimum_size = Vector2(615, 360)
|
78
scenes/gui/menus/game_finished.tscn
Normal file
78
scenes/gui/menus/game_finished.tscn
Normal file
@@ -0,0 +1,78 @@
|
||||
[gd_scene load_steps=9 format=3 uid="uid://cik0cjt5vdkxf"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/menus/game_finished.gd" id="1_boc3n"]
|
||||
[ext_resource type="FontFile" uid="uid://cr7a85ntk0t0k" path="res://assets/fonts/spacegrotesk_bold.ttf" id="2_6jsm4"]
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_0vtd5"]
|
||||
font = ExtResource("2_6jsm4")
|
||||
font_size = 90
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_wsdrp"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_pcy04"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_u03up"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_jpy2c"]
|
||||
|
||||
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_n6en7"]
|
||||
|
||||
[node name="GameFinished" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_boc3n")
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="."]
|
||||
layout_mode = 1
|
||||
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="Label" type="Label" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -702.0
|
||||
offset_top = -117.5
|
||||
offset_right = 702.0
|
||||
offset_bottom = 117.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Wow!
|
||||
Du hast das Spiel durchgespielt!"
|
||||
label_settings = SubResource("LabelSettings_0vtd5")
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="Button" type="Button" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -63.0
|
||||
offset_top = -50.0
|
||||
offset_right = 63.0
|
||||
offset_bottom = -9.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
focus_mode = 0
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/normal = SubResource("StyleBoxEmpty_wsdrp")
|
||||
theme_override_styles/hover = SubResource("StyleBoxEmpty_pcy04")
|
||||
theme_override_styles/pressed = SubResource("StyleBoxEmpty_u03up")
|
||||
theme_override_styles/disabled = SubResource("StyleBoxEmpty_jpy2c")
|
||||
theme_override_styles/focus = SubResource("StyleBoxEmpty_n6en7")
|
||||
text = "Hauptmenü"
|
||||
|
||||
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
|
83
scenes/gui/menus/game_over.tscn
Normal file
83
scenes/gui/menus/game_over.tscn
Normal file
@@ -0,0 +1,83 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://ceq785h1fcvq"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/game_over.gd" id="1_oydw2"]
|
||||
[ext_resource type="FontFile" uid="uid://cr7a85ntk0t0k" path="res://assets/fonts/spacegrotesk_bold.ttf" id="2_1rhse"]
|
||||
|
||||
[sub_resource type="Shader" id="Shader_1tfvw"]
|
||||
code = "shader_type canvas_item;
|
||||
|
||||
uniform float blur_amount : hint_range(0, 5);
|
||||
uniform sampler2D SCREEN_TEXTURE : hint_screen_texture, filter_linear_mipmap;
|
||||
|
||||
void fragment() {
|
||||
COLOR = textureLod(SCREEN_TEXTURE, SCREEN_UV, blur_amount);
|
||||
}"
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_08jax"]
|
||||
shader = SubResource("Shader_1tfvw")
|
||||
shader_parameter/blur_amount = 2.0
|
||||
|
||||
[sub_resource type="LabelSettings" id="LabelSettings_y2u7n"]
|
||||
font = ExtResource("2_1rhse")
|
||||
font_size = 72
|
||||
|
||||
[node name="GameOver" type="CanvasLayer"]
|
||||
process_mode = 3
|
||||
script = ExtResource("1_oydw2")
|
||||
|
||||
[node name="Blur" type="ColorRect" parent="."]
|
||||
process_mode = 3
|
||||
material = SubResource("ShaderMaterial_08jax")
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
metadata/_edit_use_anchors_ = true
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="."]
|
||||
process_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(1, 0, 0, 0.305882)
|
||||
metadata/_edit_use_anchors_ = true
|
||||
|
||||
[node name="Label" type="Label" parent="."]
|
||||
process_mode = 3
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -195.0
|
||||
offset_top = -46.5
|
||||
offset_right = 195.0
|
||||
offset_bottom = 46.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
text = "Game Over!"
|
||||
label_settings = SubResource("LabelSettings_y2u7n")
|
||||
metadata/_edit_use_anchors_ = true
|
||||
|
||||
[node name="Button" type="Button" parent="."]
|
||||
process_mode = 3
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -138.5
|
||||
offset_top = -155.0
|
||||
offset_right = 138.5
|
||||
offset_bottom = -82.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
focus_mode = 0
|
||||
theme_override_font_sizes/font_size = 32
|
||||
text = "Level neustarten"
|
||||
metadata/_edit_use_anchors_ = true
|
||||
|
||||
[connection signal="pressed" from="Button" to="." method="_on_button_pressed"]
|
@@ -53,10 +53,7 @@ render_target_update_mode = 4
|
||||
|
||||
[node name="LVL1" parent="SubViewportContainer/SubViewport" instance=ExtResource("2_pnids")]
|
||||
|
||||
[node name="Camera3D" parent="SubViewportContainer/SubViewport/LVL1/Player" index="1"]
|
||||
current = false
|
||||
|
||||
[node name="SpringArm3D" parent="SubViewportContainer/SubViewport/LVL1/Player/Camera3D" index="1"]
|
||||
[node name="Player" parent="SubViewportContainer/SubViewport/LVL1" index="2"]
|
||||
visible = false
|
||||
|
||||
[node name="AudioListener3D" parent="SubViewportContainer/SubViewport/LVL1/Player/Camera3D" index="3"]
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/menus/pause_menu.gd" id="1_e70hy"]
|
||||
|
||||
[sub_resource type="Shader" id="Shader_1tfvw"]
|
||||
[sub_resource type="Shader" id="Shader_y0jqs"]
|
||||
code = "shader_type canvas_item;
|
||||
|
||||
uniform float blur_amount : hint_range(0, 5);
|
||||
@@ -13,7 +13,7 @@ void fragment() {
|
||||
}"
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_bxx1r"]
|
||||
shader = SubResource("Shader_1tfvw")
|
||||
shader = SubResource("Shader_y0jqs")
|
||||
shader_parameter/blur_amount = 2.0
|
||||
|
||||
[node name="PauseMenu" type="CanvasLayer"]
|
||||
|
@@ -1,179 +1,35 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://d2rmg0r1hircj"]
|
||||
[gd_scene load_steps=5 format=3 uid="uid://d2rmg0r1hircj"]
|
||||
|
||||
[ext_resource type="Script" path="res://scripts/level_finish_area.gd" id="1_cfjpp"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_urlb8"]
|
||||
size = Vector3(11, 7, 1)
|
||||
|
||||
[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.
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_hjut0"]
|
||||
flip_faces = true
|
||||
size = Vector2(4, 4)
|
||||
|
||||
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
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_iaevn"]
|
||||
albedo_color = Color(0, 1, 0.266667, 1)
|
||||
emission_enabled = true
|
||||
emission = Color(0, 1, 0, 1)
|
||||
emission_energy_multiplier = 3.0
|
||||
|
||||
[node name="Area3D" type="Area3D"]
|
||||
script = ExtResource("1_cfjpp")
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.153507)
|
||||
shape = SubResource("BoxShape3D_urlb8")
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
|
||||
mesh = SubResource("PlaneMesh_u64vp")
|
||||
mesh = SubResource("QuadMesh_hjut0")
|
||||
surface_material_override/0 = SubResource("StandardMaterial3D_iaevn")
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
[node name="Label3D" type="Label3D" parent="."]
|
||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 0, -0.524372)
|
||||
billboard = 2
|
||||
text = "Nächstes Level"
|
||||
font_size = 48
|
||||
|
||||
[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")
|
||||
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
|
||||
|
@@ -1,8 +1,11 @@
|
||||
[gd_scene load_steps=25 format=3 uid="uid://ckad8stc13n83"]
|
||||
[gd_scene load_steps=30 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"]
|
||||
[ext_resource type="Material" uid="uid://du8w0x0kmgjui" path="res://assets/textures/material/bricks/bricks.tres" id="3_b6ww3"]
|
||||
[ext_resource type="Material" uid="uid://bg5hb1744y4ik" path="res://assets/textures/material/planks/planks.material" id="4_lyce0"]
|
||||
[ext_resource type="Material" uid="uid://c6rvbga7g5f4l" path="res://assets/textures/material/tiles_white/tiles_white.material" id="7_nrt8m"]
|
||||
[ext_resource type="Material" uid="uid://bpaoho76mro65" path="res://assets/textures/material/crate/crate2.material" id="9_icmwj"]
|
||||
[ext_resource type="PackedScene" uid="uid://gg5ph541e4p3" path="res://scenes/player.tscn" id="11_lls6p"]
|
||||
[ext_resource type="PackedScene" uid="uid://22blfybi6n4q" path="res://scenes/objects/completion_counter.tscn" id="12_vn8j0"]
|
||||
[ext_resource type="PackedScene" uid="uid://cy0x2nliyw8gw" path="res://scenes/objects/door.tscn" id="13_fhdru"]
|
||||
@@ -15,9 +18,13 @@
|
||||
[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://rg20ayxe5m75" path="res://assets/audio/voicelines/anouncer_intro_03.ogg" id="20_dqpxk"]
|
||||
[ext_resource type="PackedScene" uid="uid://d2rmg0r1hircj" path="res://scenes/level_finish_area.tscn" id="20_tt84f"]
|
||||
[ext_resource type="AudioStream" uid="uid://ddpvabd43s3p4" path="res://assets/audio/voicelines/anouncer_intro_04.ogg" id="21_n11nj"]
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_thqbu"]
|
||||
|
||||
[sub_resource type="BoxMesh" id="BoxMesh_wyr1d"]
|
||||
material = ExtResource("9_icmwj")
|
||||
size = Vector3(4, 0.2, 5)
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_lygjd"]
|
||||
@@ -64,14 +71,27 @@ sky_mode = 1
|
||||
[node name="interior" parent="." instance=ExtResource("1_xs30l")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0)
|
||||
|
||||
[node name="Hallway" parent="interior" index="0"]
|
||||
[node name="Ground1" parent="interior" index="0"]
|
||||
surface_material_override/0 = ExtResource("2_evxh1")
|
||||
|
||||
[node name="Room" parent="interior" index="1"]
|
||||
[node name="Walls2" parent="interior" index="1"]
|
||||
surface_material_override/0 = ExtResource("3_b6ww3")
|
||||
|
||||
[node name="Ground2" parent="interior" index="2"]
|
||||
surface_material_override/0 = ExtResource("4_lyce0")
|
||||
|
||||
[node name="Walls1" parent="interior" index="3"]
|
||||
surface_material_override/0 = ExtResource("7_nrt8m")
|
||||
|
||||
[node name="Ceiling" parent="interior" index="4"]
|
||||
surface_material_override/0 = SubResource("StandardMaterial3D_thqbu")
|
||||
|
||||
[node name="StaticBody3D" parent="interior/Ceiling" index="0"]
|
||||
collision_layer = 7
|
||||
collision_mask = 7
|
||||
|
||||
[node name="Player" parent="." instance=ExtResource("11_lls6p")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 5.23956)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 5.7209)
|
||||
|
||||
[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.08507, 6.31598)
|
||||
@@ -84,7 +104,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0536218, 1.48562, 6.64)
|
||||
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.65, 0.043)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 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)
|
||||
@@ -96,7 +116,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0.51, 0)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.1968, 0.51, 0)
|
||||
|
||||
[node name="Plane" type="StaticBody3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4, 3.9, 0)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.5, 4, 0)
|
||||
collision_layer = 7
|
||||
collision_mask = 7
|
||||
|
||||
@@ -113,6 +133,9 @@ voice_lines = Array[ExtResource("18_jxpoe")]([SubResource("Resource_u3j5u"), Sub
|
||||
[node name="Camera3D" type="Camera3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 0, 3, 6)
|
||||
|
||||
[node name="Area3D" parent="." instance=ExtResource("20_tt84f")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.318473, 2, 10.63)
|
||||
|
||||
[connection signal="lock" from="CompletionCounter" to="Door" method="close"]
|
||||
[connection signal="unlock" from="CompletionCounter" to="Door" method="open"]
|
||||
|
||||
|
@@ -1,12 +1,29 @@
|
||||
[gd_scene load_steps=8 format=3 uid="uid://c17x7kmjmqdk3"]
|
||||
[gd_scene load_steps=16 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://cbb37i3xvtp50" path="res://assets/models/interior2.obj" id="3_wurqx"]
|
||||
[ext_resource type="Texture2D" uid="uid://dsn5u1ymp1eki" path="res://assets/textures/material/concrete/concrete_color.png" id="4_1qe3t"]
|
||||
[ext_resource type="PackedScene" uid="uid://gg5ph541e4p3" path="res://scenes/player.tscn" id="4_s0xrk"]
|
||||
[ext_resource type="Material" uid="uid://dc07mg6jyhsq6" path="res://assets/textures/material/gray_bricks/gray_bricks.material" id="4_wsys7"]
|
||||
[ext_resource type="Texture2D" uid="uid://dgp24icxy8biu" path="res://assets/textures/material/concrete/concrete_ambientocclusion.png" id="5_2hu3x"]
|
||||
[ext_resource type="Material" uid="uid://c3qgfnlx7ik2n" path="res://assets/textures/material/paintedplaster/paintedplaster.material" id="5_dye2r"]
|
||||
[ext_resource type="PackedScene" uid="uid://bk4h14lkwp04a" path="res://scenes/objects/furniture/desk.tscn" id="5_u4bki"]
|
||||
[ext_resource type="Texture2D" uid="uid://dh5k61ko53gn6" path="res://assets/textures/material/concrete/concrete_normalgl.png" id="6_h1os3"]
|
||||
[ext_resource type="PackedScene" uid="uid://ced2w03t8er5k" path="res://scenes/objects/physics_objects/cube.tscn" id="6_ndtyp"]
|
||||
[ext_resource type="PackedScene" uid="uid://y7mgnooudpqv" path="res://scenes/objects/physics_objects/vent.tscn" id="7_r3yjb"]
|
||||
[ext_resource type="Texture2D" uid="uid://b230m11b62rk4" path="res://assets/textures/material/concrete/concrete_roughness.png" id="7_pqq8x"]
|
||||
[ext_resource type="PackedScene" uid="uid://jtb3abokylwq" path="res://scenes/objects/physics_objects/keyboard_mouse.tscn" id="11_58enu"]
|
||||
[ext_resource type="PackedScene" uid="uid://ryumwinqbqgr" path="res://scenes/objects/physics_objects/computer_screen.tscn" id="12_djkgb"]
|
||||
[ext_resource type="PackedScene" uid="uid://idxtvhvxccgl" path="res://scenes/objects/physics_objects/bottle.tscn" id="14_8trno"]
|
||||
[ext_resource type="PackedScene" uid="uid://d2rmg0r1hircj" path="res://scenes/level_finish_area.tscn" id="15_0vmxp"]
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6f4qa"]
|
||||
albedo_texture = ExtResource("4_1qe3t")
|
||||
roughness_texture = ExtResource("7_pqq8x")
|
||||
normal_enabled = true
|
||||
normal_scale = 3.0
|
||||
normal_texture = ExtResource("6_h1os3")
|
||||
ao_enabled = true
|
||||
ao_texture = ExtResource("5_2hu3x")
|
||||
uv1_scale = Vector3(8.5, 8.5, 8.5)
|
||||
|
||||
[node name="LVL1" type="Node3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1)
|
||||
@@ -16,28 +33,71 @@ transform = Transform3D(0.707107, -0.707107, -4.21468e-08, -0.5, -0.5, 0.707107,
|
||||
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)
|
||||
|
||||
[node name="Desk" parent="." instance=ExtResource("5_u4bki")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.64074, 1, 0)
|
||||
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 0, 1, -21.1122)
|
||||
|
||||
[node name="Cube" parent="." instance=ExtResource("6_ndtyp")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.920002, 0.15612, 1.95953)
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 9.37859, 0.15612, 2.35514)
|
||||
freeze = true
|
||||
|
||||
[node name="Vent" parent="." instance=ExtResource("7_r3yjb")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.54621, 2.315, -3.06745)
|
||||
[node name="interior2" parent="." instance=ExtResource("3_wurqx")]
|
||||
|
||||
[editable path="interior"]
|
||||
[node name="Walls1" parent="interior2" index="0"]
|
||||
surface_material_override/0 = ExtResource("4_wsys7")
|
||||
|
||||
[node name="Walls2" parent="interior2" index="1"]
|
||||
surface_material_override/0 = ExtResource("5_dye2r")
|
||||
|
||||
[node name="Ground" parent="interior2" index="2"]
|
||||
surface_material_override/0 = SubResource("StandardMaterial3D_6f4qa")
|
||||
|
||||
[node name="Desk" parent="." instance=ExtResource("5_u4bki")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.497, 1.25, -20.898)
|
||||
|
||||
[node name="Cube2" parent="." instance=ExtResource("11_58enu")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.0851, 1.33987, -21.5152)
|
||||
|
||||
[node name="ComputerScreen" parent="." instance=ExtResource("12_djkgb")]
|
||||
transform = Transform3D(-0.176775, -0.0764619, 0.981277, -0.0818855, 0.994664, 0.0627536, -0.980839, -0.0692591, -0.182093, 16.7956, 1.99061, -21.4736)
|
||||
|
||||
[node name="Desk2" parent="." instance=ExtResource("5_u4bki")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.497, 1.25, -16.1503)
|
||||
|
||||
[node name="Cube3" parent="." instance=ExtResource("11_58enu")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.0851, 1.33987, -16.7675)
|
||||
|
||||
[node name="ComputerScreen2" parent="." instance=ExtResource("12_djkgb")]
|
||||
transform = Transform3D(-0.305014, 0, 0.952348, 0, 1, 0, -0.952348, 0, -0.305014, 16.7956, 1.99061, -16.7259)
|
||||
|
||||
[node name="Desk3" parent="." instance=ExtResource("5_u4bki")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.2247, 1.25, -7.9819)
|
||||
|
||||
[node name="Cube4" parent="." instance=ExtResource("11_58enu")]
|
||||
transform = Transform3D(0.98423, 0, 0.176896, 0, 1, 0, -0.176896, 0, 0.98423, 15.8128, 1.33987, -8.59911)
|
||||
|
||||
[node name="ComputerScreen3" parent="." instance=ExtResource("12_djkgb")]
|
||||
transform = Transform3D(0.104667, 0, 0.994507, 0, 1, 0, -0.994507, 0, 0.104667, 16.5233, 1.99061, -8.55754)
|
||||
|
||||
[node name="Desk4" parent="." instance=ExtResource("5_u4bki")]
|
||||
transform = Transform3D(0.963821, 0, -0.266549, 0, 1, 0, 0.266549, 0, 0.963821, 16.286, 1.25, -11.7658)
|
||||
|
||||
[node name="Cube5" parent="." instance=ExtResource("11_58enu")]
|
||||
transform = Transform3D(0.963821, 0, -0.266549, 0, 1, 0, 0.266549, 0, 0.963821, 16.0536, 1.33987, -12.4705)
|
||||
|
||||
[node name="ComputerScreen4" parent="." instance=ExtResource("12_djkgb")]
|
||||
transform = Transform3D(0.119617, 0, 0.99282, 0, 1, 0, -0.99282, 0, 0.119617, 16.7273, 1.99061, -12.241)
|
||||
|
||||
[node name="Cube6" parent="." instance=ExtResource("14_8trno")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 16.6955, 1.42305, -15.217)
|
||||
|
||||
[node name="Area3D" parent="." instance=ExtResource("15_0vmxp")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.431601, 1.81218, 19.1515)
|
||||
|
||||
[node name="CollisionShape3D" parent="Area3D" index="0"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.5, 1.5, 0.0964928)
|
||||
|
||||
[node name="MeshInstance3D" parent="Area3D" index="1"]
|
||||
transform = Transform3D(3, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0.951174)
|
||||
|
||||
[editable path="interior2"]
|
||||
[editable path="Area3D"]
|
||||
|
@@ -8,6 +8,33 @@
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_pejvk"]
|
||||
size = Vector3(1.5, 3, 0.2)
|
||||
|
||||
[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("MeshInstance3D2:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0, 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),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0.349066, 1.5708, -1.5708)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_1220n"]
|
||||
resource_name = "open"
|
||||
length = 0.5
|
||||
@@ -36,33 +63,6 @@ tracks/1/keys = {
|
||||
"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("MeshInstance3D2:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0, 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),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0.349066, 1.5708, -1.5708)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_5xgbb"]
|
||||
_data = {
|
||||
"RESET": SubResource("Animation_3fs6g"),
|
||||
@@ -86,7 +86,7 @@ collision_mask = 3
|
||||
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)
|
||||
transform = Transform3D(-0.456026, -9.7162e-06, 1.25292, -1.25292, -6.80336e-06, -0.456026, 6.47745e-06, -2, -4.53556e-06, -0.757807, -0.445, -0.399)
|
||||
mesh = ExtResource("4_frcys")
|
||||
skeleton = NodePath("../..")
|
||||
surface_material_override/0 = ExtResource("3_ti6vs")
|
||||
|
35
scenes/objects/physics_objects/bottle.tscn
Normal file
35
scenes/objects/physics_objects/bottle.tscn
Normal file
@@ -0,0 +1,35 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://idxtvhvxccgl"]
|
||||
|
||||
[ext_resource type="ArrayMesh" uid="uid://c7i8bpqtest8q" path="res://assets/models/bottle.obj" id="1_pj6wy"]
|
||||
[ext_resource type="Shader" path="res://shaders/pbr_glass.gdshader" id="2_nc55p"]
|
||||
|
||||
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_rff84"]
|
||||
rough = true
|
||||
bounce = 0.1
|
||||
absorbent = true
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_dus7y"]
|
||||
render_priority = 0
|
||||
shader = ExtResource("2_nc55p")
|
||||
shader_parameter/albedo = Color(0.2, 0.0470588, 0, 0.631373)
|
||||
shader_parameter/roughness = 0.15
|
||||
shader_parameter/normal_strength = 1.0
|
||||
shader_parameter/edge_color = Color(0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_bsmvc"]
|
||||
size = Vector3(0.15, 0.5, 0.15)
|
||||
|
||||
[node name="Cube" type="RigidBody3D" groups=["pushables"]]
|
||||
collision_priority = 2.0
|
||||
mass = 1.5
|
||||
physics_material_override = SubResource("PhysicsMaterial_rff84")
|
||||
continuous_cd = true
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
|
||||
transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0, 0, 0)
|
||||
mesh = ExtResource("1_pj6wy")
|
||||
surface_material_override/0 = SubResource("ShaderMaterial_dus7y")
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.168721, 0)
|
||||
shape = SubResource("BoxShape3D_bsmvc")
|
@@ -11,7 +11,7 @@ absorbent = true
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_bsmvc"]
|
||||
size = Vector3(0.276, 0.04, 0.7)
|
||||
|
||||
[node name="Cube" type="RigidBody3D" groups=["pushables"]]
|
||||
[node name="KeyboardMouse" type="RigidBody3D" groups=["pushables"]]
|
||||
collision_priority = 2.0
|
||||
mass = 1.5
|
||||
physics_material_override = SubResource("PhysicsMaterial_rff84")
|
||||
|
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=19 format=3 uid="uid://gg5ph541e4p3"]
|
||||
[gd_scene load_steps=20 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"]
|
||||
@@ -10,6 +10,7 @@
|
||||
[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"]
|
||||
[ext_resource type="PackedScene" uid="uid://ceq785h1fcvq" path="res://scenes/gui/menus/game_over.tscn" id="11_0dlqh"]
|
||||
|
||||
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_2qx4s"]
|
||||
radius = 0.4
|
||||
@@ -93,6 +94,9 @@ wait_time = 0.4
|
||||
script = ExtResource("5_t1bvf")
|
||||
audio_library = Array[ExtResource("6_4revs")]([SubResource("Resource_n8h0v"), SubResource("Resource_a4b4g"), SubResource("Resource_yjl6f"), SubResource("Resource_qe4pm")])
|
||||
|
||||
[node name="GameOver" parent="." instance=ExtResource("11_0dlqh")]
|
||||
visible = false
|
||||
|
||||
[connection signal="timeout" from="FootStepTimer" to="." method="_on_foot_step_timer_timeout"]
|
||||
|
||||
[editable path="GravityGunLayer"]
|
||||
|
Reference in New Issue
Block a user