generated from krampus/template-godot4
325 lines
11 KiB
Plaintext
325 lines
11 KiB
Plaintext
[gd_scene load_steps=22 format=3 uid="uid://d2hnxr5l6w2x4"]
|
|
|
|
[ext_resource type="Script" uid="uid://dv40fyim2g2fa" path="res://src/equipment/wide_spray/wide_spray.gd" id="1_ggkto"]
|
|
[ext_resource type="Material" uid="uid://c00gndxoepuqh" path="res://assets/materials/laser_spray.tres" id="2_26efp"]
|
|
[ext_resource type="Texture2D" uid="uid://cx28sj02y31kj" path="res://assets/ui/hud/reticle_crosshair.png" id="3_78jy6"]
|
|
[ext_resource type="PackedScene" uid="uid://btq11kil0jcql" path="res://src/equipment/beam_sfx/spray_sfx.tscn" id="3_v0jnx"]
|
|
[ext_resource type="PackedScene" uid="uid://b8vradbaw61ga" path="res://src/equipment/laser_cast/laser_cast.tscn" id="3_xahet"]
|
|
[ext_resource type="Texture2D" uid="uid://carrggw6kp14w" path="res://assets/ui/hud/reticle_left.png" id="4_rotxf"]
|
|
[ext_resource type="Texture2D" uid="uid://wp03nuwt8hp5" path="res://assets/ui/hud/reticle_right.png" id="5_xo3vu"]
|
|
[ext_resource type="PackedScene" uid="uid://5y7gcq6igjpf" path="res://src/equipment/beam_sfx/beam_sfx.tscn" id="7_hv82w"]
|
|
[ext_resource type="Script" uid="uid://b274q7uvn0cvp" path="res://src/ui/rumbler_3d.gd" id="7_ku0nd"]
|
|
[ext_resource type="Script" uid="uid://dj2x7x5qkbym1" path="res://src/ui/canvas_projector.gd" id="8_j7ker"]
|
|
[ext_resource type="Texture2D" uid="uid://dxjwpai3or1hw" path="res://assets/ui/hud/tools/wide_sprayer.png" id="9_8vo2h"]
|
|
[ext_resource type="Texture2D" uid="uid://dmwey2qj77tm0" path="res://assets/ui/hud/tools/tall_sprayer.png" id="10_hv82w"]
|
|
|
|
[sub_resource type="CylinderMesh" id="CylinderMesh_48buk"]
|
|
material = ExtResource("2_26efp")
|
|
top_radius = 0.0
|
|
bottom_radius = 0.7
|
|
radial_segments = 6
|
|
|
|
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_pr4yq"]
|
|
direction = Vector3(0, 0, -1)
|
|
spread = 15.0
|
|
flatness = 0.82
|
|
initial_velocity_min = 3.5
|
|
initial_velocity_max = 3.5
|
|
gravity = Vector3(0, 0, 0)
|
|
|
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6k0bn"]
|
|
vertex_color_use_as_albedo = true
|
|
albedo_color = Color(0, 1, 0.301961, 0.392157)
|
|
emission_enabled = true
|
|
emission = Color(0, 1, 0.301961, 1)
|
|
emission_energy_multiplier = 10.0
|
|
texture_filter = 2
|
|
billboard_mode = 3
|
|
billboard_keep_scale = true
|
|
particles_anim_h_frames = 1
|
|
particles_anim_v_frames = 1
|
|
particles_anim_loop = false
|
|
|
|
[sub_resource type="QuadMesh" id="QuadMesh_trcry"]
|
|
material = SubResource("StandardMaterial3D_6k0bn")
|
|
size = Vector2(0.005, 0.005)
|
|
|
|
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_lyk2j"]
|
|
direction = Vector3(0, 0, -1)
|
|
spread = 15.0
|
|
flatness = 0.82
|
|
initial_velocity_min = 8.0
|
|
initial_velocity_max = 8.0
|
|
gravity = Vector3(0, 0, 0)
|
|
|
|
[sub_resource type="BoxMesh" id="BoxMesh_fmqw2"]
|
|
size = Vector3(0.05, 0.05, 0.3)
|
|
|
|
[sub_resource type="Animation" id="Animation_ku0nd"]
|
|
length = 0.001
|
|
tracks/0/type = "value"
|
|
tracks/0/imported = false
|
|
tracks/0/enabled = true
|
|
tracks/0/path = NodePath("Muzzle/Pivot:rotation")
|
|
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("HUDTool: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)]
|
|
}
|
|
tracks/2/type = "value"
|
|
tracks/2/imported = false
|
|
tracks/2/enabled = true
|
|
tracks/2/path = NodePath("HUDTool/Rumbler/NozzleMarker/HUDElement/WideNozzle:visible")
|
|
tracks/2/interp = 1
|
|
tracks/2/loop_wrap = true
|
|
tracks/2/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 1,
|
|
"values": [true]
|
|
}
|
|
tracks/3/type = "value"
|
|
tracks/3/imported = false
|
|
tracks/3/enabled = true
|
|
tracks/3/path = NodePath("HUDTool/Rumbler/NozzleMarker/HUDElement/TallNozzle:visible")
|
|
tracks/3/interp = 1
|
|
tracks/3/loop_wrap = true
|
|
tracks/3/keys = {
|
|
"times": PackedFloat32Array(0),
|
|
"transitions": PackedFloat32Array(1),
|
|
"update": 1,
|
|
"values": [false]
|
|
}
|
|
|
|
[sub_resource type="Animation" id="Animation_ay2b7"]
|
|
resource_name = "rotate"
|
|
length = 0.1
|
|
step = 0.01
|
|
tracks/0/type = "value"
|
|
tracks/0/imported = false
|
|
tracks/0/enabled = true
|
|
tracks/0/path = NodePath("Muzzle/Pivot:rotation")
|
|
tracks/0/interp = 2
|
|
tracks/0/loop_wrap = true
|
|
tracks/0/keys = {
|
|
"times": PackedFloat32Array(0, 0.1),
|
|
"transitions": PackedFloat32Array(1.618, 1),
|
|
"update": 0,
|
|
"values": [Vector3(0, 0, 0), Vector3(0, 0, 1.5708)]
|
|
}
|
|
tracks/1/type = "value"
|
|
tracks/1/imported = false
|
|
tracks/1/enabled = true
|
|
tracks/1/path = NodePath("HUDTool:rotation")
|
|
tracks/1/interp = 2
|
|
tracks/1/loop_wrap = true
|
|
tracks/1/keys = {
|
|
"times": PackedFloat32Array(0, 0.05, 0.1),
|
|
"transitions": PackedFloat32Array(1, 1, 1),
|
|
"update": 0,
|
|
"values": [Vector3(0, 0, 0), Vector3(-1.5708, 0, 0), Vector3(0, 0, 0)]
|
|
}
|
|
tracks/2/type = "value"
|
|
tracks/2/imported = false
|
|
tracks/2/enabled = true
|
|
tracks/2/path = NodePath("HUDTool/Rumbler/NozzleMarker/HUDElement/WideNozzle:visible")
|
|
tracks/2/interp = 1
|
|
tracks/2/loop_wrap = true
|
|
tracks/2/keys = {
|
|
"times": PackedFloat32Array(0, 0.04, 0.05, 0.1),
|
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
"update": 1,
|
|
"values": [true, true, false, false]
|
|
}
|
|
tracks/3/type = "value"
|
|
tracks/3/imported = false
|
|
tracks/3/enabled = true
|
|
tracks/3/path = NodePath("HUDTool/Rumbler/NozzleMarker/HUDElement/TallNozzle:visible")
|
|
tracks/3/interp = 1
|
|
tracks/3/loop_wrap = true
|
|
tracks/3/keys = {
|
|
"times": PackedFloat32Array(0, 0.04, 0.05, 0.1),
|
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
|
"update": 1,
|
|
"values": [false, false, true, true]
|
|
}
|
|
|
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_fmqw2"]
|
|
_data = {
|
|
&"RESET": SubResource("Animation_ku0nd"),
|
|
&"rotate": SubResource("Animation_ay2b7")
|
|
}
|
|
|
|
[node name="WideSpray" type="Node3D"]
|
|
script = ExtResource("1_ggkto")
|
|
|
|
[node name="Muzzle" type="Marker3D" parent="."]
|
|
transform = Transform3D(1, 0, 0, 0, 0.997564, -0.0697565, 0, 0.0697565, 0.997564, 0, 0, -0.15)
|
|
|
|
[node name="Pivot" type="Node3D" parent="Muzzle"]
|
|
|
|
[node name="SprayCasts" type="Node3D" parent="Muzzle/Pivot"]
|
|
unique_name_in_owner = true
|
|
|
|
[node name="LaserCast" parent="Muzzle/Pivot/SprayCasts" node_paths=PackedStringArray("parent_tool") instance=ExtResource("3_xahet")]
|
|
target_position = Vector3(-0.5, 0, -2)
|
|
parent_tool = NodePath("../../../..")
|
|
|
|
[node name="LaserCast2" parent="Muzzle/Pivot/SprayCasts" node_paths=PackedStringArray("parent_tool") instance=ExtResource("3_xahet")]
|
|
target_position = Vector3(-0.333, 0, -2)
|
|
parent_tool = NodePath("../../../..")
|
|
|
|
[node name="LaserCast3" parent="Muzzle/Pivot/SprayCasts" node_paths=PackedStringArray("parent_tool") instance=ExtResource("3_xahet")]
|
|
target_position = Vector3(-0.167, 0, -2)
|
|
parent_tool = NodePath("../../../..")
|
|
|
|
[node name="LaserCast4" parent="Muzzle/Pivot/SprayCasts" node_paths=PackedStringArray("parent_tool") instance=ExtResource("3_xahet")]
|
|
parent_tool = NodePath("../../../..")
|
|
|
|
[node name="SpraySFX" parent="Muzzle/Pivot/SprayCasts/LaserCast4" instance=ExtResource("3_v0jnx")]
|
|
unique_name_in_owner = true
|
|
attenuation_model = 0
|
|
|
|
[node name="LaserCast5" parent="Muzzle/Pivot/SprayCasts" node_paths=PackedStringArray("parent_tool") instance=ExtResource("3_xahet")]
|
|
target_position = Vector3(0.167, 0, -2)
|
|
parent_tool = NodePath("../../../..")
|
|
|
|
[node name="LaserCast6" parent="Muzzle/Pivot/SprayCasts" node_paths=PackedStringArray("parent_tool") instance=ExtResource("3_xahet")]
|
|
target_position = Vector3(0.333, 0, -2)
|
|
parent_tool = NodePath("../../../..")
|
|
|
|
[node name="LaserCast7" parent="Muzzle/Pivot/SprayCasts" node_paths=PackedStringArray("parent_tool") instance=ExtResource("3_xahet")]
|
|
target_position = Vector3(0.5, 0, -2)
|
|
parent_tool = NodePath("../../../..")
|
|
|
|
[node name="SprayEffect" type="MeshInstance3D" parent="Muzzle/Pivot"]
|
|
unique_name_in_owner = true
|
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -0.15, 0, 1, -6.55671e-09, 0, 0, -1)
|
|
layers = 2
|
|
sorting_offset = 3.0
|
|
mesh = SubResource("CylinderMesh_48buk")
|
|
skeleton = NodePath("../../..")
|
|
|
|
[node name="ReticleDecals" type="Node3D" parent="Muzzle/Pivot"]
|
|
|
|
[node name="CrosshairDecal" type="Decal" parent="Muzzle/Pivot/ReticleDecals"]
|
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, -1)
|
|
size = Vector3(0.2, 2, 0.2)
|
|
texture_albedo = ExtResource("3_78jy6")
|
|
texture_emission = ExtResource("3_78jy6")
|
|
cull_mask = 1048573
|
|
|
|
[node name="LeftPivot" type="Node3D" parent="Muzzle/Pivot/ReticleDecals"]
|
|
transform = Transform3D(0.970296, 0, 0.241922, 0, 1, 0, -0.241922, 0, 0.970296, 0, 0, 0)
|
|
|
|
[node name="LeftDecal" type="Decal" parent="Muzzle/Pivot/ReticleDecals/LeftPivot"]
|
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, -1)
|
|
size = Vector3(0.2, 2, 0.2)
|
|
texture_albedo = ExtResource("4_rotxf")
|
|
texture_emission = ExtResource("4_rotxf")
|
|
cull_mask = 1048573
|
|
|
|
[node name="RightPivot" type="Node3D" parent="Muzzle/Pivot/ReticleDecals"]
|
|
transform = Transform3D(0.970296, 0, -0.241922, 0, 1, 0, 0.241922, 0, 0.970296, 0, 0, 0)
|
|
|
|
[node name="RightDecal" type="Decal" parent="Muzzle/Pivot/ReticleDecals/RightPivot"]
|
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, -1)
|
|
size = Vector3(0.2, 2, 0.2)
|
|
texture_albedo = ExtResource("5_xo3vu")
|
|
texture_emission = ExtResource("5_xo3vu")
|
|
cull_mask = 1048573
|
|
|
|
[node name="BeamParticles1" type="GPUParticles3D" parent="Muzzle/Pivot"]
|
|
unique_name_in_owner = true
|
|
layers = 2
|
|
cast_shadow = 0
|
|
amount = 16
|
|
lifetime = 0.5
|
|
local_coords = true
|
|
process_material = SubResource("ParticleProcessMaterial_pr4yq")
|
|
draw_pass_1 = SubResource("QuadMesh_trcry")
|
|
|
|
[node name="BeamParticles2" type="GPUParticles3D" parent="Muzzle/Pivot"]
|
|
unique_name_in_owner = true
|
|
layers = 2
|
|
cast_shadow = 0
|
|
lifetime = 0.2
|
|
local_coords = true
|
|
process_material = SubResource("ParticleProcessMaterial_lyk2j")
|
|
draw_pass_1 = SubResource("QuadMesh_trcry")
|
|
|
|
[node name="BeamSFX" parent="Muzzle" instance=ExtResource("7_hv82w")]
|
|
unique_name_in_owner = true
|
|
|
|
[node name="HUDTool" type="Node3D" parent="."]
|
|
unique_name_in_owner = true
|
|
top_level = true
|
|
|
|
[node name="Rumbler" type="Node3D" parent="HUDTool"]
|
|
unique_name_in_owner = true
|
|
script = ExtResource("7_ku0nd")
|
|
|
|
[node name="SprayNozzle" type="MeshInstance3D" parent="HUDTool/Rumbler"]
|
|
visible = false
|
|
layers = 2
|
|
mesh = SubResource("BoxMesh_fmqw2")
|
|
skeleton = NodePath("../../../..")
|
|
|
|
[node name="NozzleMarker" type="Marker3D" parent="HUDTool/Rumbler"]
|
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.15)
|
|
script = ExtResource("8_j7ker")
|
|
|
|
[node name="HUDElement" type="Control" parent="HUDTool/Rumbler/NozzleMarker"]
|
|
layout_mode = 3
|
|
anchors_preset = 8
|
|
anchor_left = 0.5
|
|
anchor_top = 0.5
|
|
anchor_right = 0.5
|
|
anchor_bottom = 0.5
|
|
grow_horizontal = 2
|
|
grow_vertical = 2
|
|
|
|
[node name="WideNozzle" type="TextureRect" parent="HUDTool/Rumbler/NozzleMarker/HUDElement"]
|
|
texture_filter = 3
|
|
layout_mode = 0
|
|
offset_left = -256.0
|
|
offset_top = -186.0
|
|
offset_right = -192.0
|
|
offset_bottom = -122.0
|
|
scale = Vector2(10, 10)
|
|
texture = ExtResource("9_8vo2h")
|
|
|
|
[node name="TallNozzle" type="TextureRect" parent="HUDTool/Rumbler/NozzleMarker/HUDElement"]
|
|
visible = false
|
|
texture_filter = 3
|
|
layout_mode = 0
|
|
offset_left = -256.0
|
|
offset_top = -186.0
|
|
offset_right = -192.0
|
|
offset_bottom = -122.0
|
|
scale = Vector2(10, 10)
|
|
texture = ExtResource("10_hv82w")
|
|
|
|
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
|
|
unique_name_in_owner = true
|
|
libraries = {
|
|
&"": SubResource("AnimationLibrary_fmqw2")
|
|
}
|
|
|
|
[connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_animation_finished"]
|