generated from krampus/template-godot4
Taste the GOD PARTICLE you FILTHY RAT
All checks were successful
linting & formatting / build (push) Successful in 37s
All checks were successful
linting & formatting / build (push) Successful in 37s
This commit is contained in:
parent
77c5d46dd5
commit
7d32411612
BIN
assets/materials/grunk_bubble.material
Normal file
BIN
assets/materials/grunk_bubble.material
Normal file
Binary file not shown.
81
assets/materials/taste_the_god_particle_you_filthy_rat.tres
Normal file
81
assets/materials/taste_the_god_particle_you_filthy_rat.tres
Normal file
@ -0,0 +1,81 @@
|
||||
[gd_resource type="ShaderMaterial" load_steps=14 format=3 uid="uid://pr3m1n71vtof"]
|
||||
|
||||
[ext_resource type="Shader" uid="uid://dawp27i0m5arl" path="res://src/shaders/glowing_rift.gdshader" id="1_cg36x"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_c7m4v"]
|
||||
offsets = PackedFloat32Array(0, 0.166161, 0.240685, 0.514515, 0.734619, 0.816075, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 1, 0.0627591, 0.0627591, 0.0627591, 1, 0.34, 0.34, 0.34, 1, 0.103744, 0.103744, 0.103744, 1, 0.328559, 0.328559, 0.328559, 1, 0.0643529, 0.0643529, 0.0643529, 1, 0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_vru5p"]
|
||||
gradient = SubResource("Gradient_c7m4v")
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_cp8sw"]
|
||||
offsets = PackedFloat32Array(0, 0.140165, 0.29961, 0.426127, 0.597704, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 1, 0.0685576, 0.0685576, 0.0685576, 1, 0.295867, 0.295867, 0.295866, 1, 0.336608, 0.336608, 0.336608, 1, 0.0889882, 0.0889882, 0.0889882, 1, 0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_c7m4v"]
|
||||
gradient = SubResource("Gradient_cp8sw")
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_6bdpa"]
|
||||
seed = 1
|
||||
frequency = 0.0052
|
||||
fractal_type = 0
|
||||
|
||||
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_cp8sw"]
|
||||
seamless = true
|
||||
seamless_blend_skirt = 0.252
|
||||
noise = SubResource("FastNoiseLite_6bdpa")
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_10hsf"]
|
||||
noise_type = 4
|
||||
frequency = 0.0105
|
||||
fractal_octaves = 2
|
||||
fractal_gain = 2.0
|
||||
fractal_weighted_strength = 0.61
|
||||
fractal_ping_pong_strength = 2.29
|
||||
domain_warp_enabled = true
|
||||
domain_warp_frequency = 0.03
|
||||
domain_warp_fractal_octaves = 1
|
||||
|
||||
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_0bwtl"]
|
||||
seamless = true
|
||||
seamless_blend_skirt = 0.4
|
||||
noise = SubResource("FastNoiseLite_10hsf")
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_6bdpa"]
|
||||
offsets = PackedFloat32Array(0, 0.095104, 0.490251, 0.940858, 1)
|
||||
colors = PackedColorArray(0, 0, 0, 1, 0.08, 0.08, 0.08, 1, 0.687215, 0.687215, 0.687215, 1, 0.0715679, 0.0715679, 0.0715679, 1, 0, 0, 0, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_cp8sw"]
|
||||
gradient = SubResource("Gradient_6bdpa")
|
||||
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_c7m4v"]
|
||||
noise_type = 2
|
||||
frequency = 0.0381
|
||||
fractal_octaves = 3
|
||||
cellular_distance_function = 2
|
||||
|
||||
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_vru5p"]
|
||||
seamless = true
|
||||
seamless_blend_skirt = 0.4
|
||||
noise = SubResource("FastNoiseLite_c7m4v")
|
||||
|
||||
[resource]
|
||||
render_priority = 0
|
||||
shader = ExtResource("1_cg36x")
|
||||
shader_parameter/rift_shape = SubResource("NoiseTexture2D_vru5p")
|
||||
shader_parameter/rift_scale = SubResource("GradientTexture1D_cp8sw")
|
||||
shader_parameter/rift_bias = SubResource("GradientTexture1D_c7m4v")
|
||||
shader_parameter/shape_scale = 0.4
|
||||
shader_parameter/rift_speed = 0.2
|
||||
shader_parameter/progress = 0.0
|
||||
shader_parameter/smoothing = 0.02
|
||||
shader_parameter/rift_offset = SubResource("NoiseTexture2D_0bwtl")
|
||||
shader_parameter/offset_scale = SubResource("GradientTexture1D_vru5p")
|
||||
shader_parameter/color = Color(0, 0.101961, 0.301961, 1)
|
||||
shader_parameter/emission = Color(0.51, 0.918333, 1, 1)
|
||||
shader_parameter/emission_strength = 1.0
|
||||
shader_parameter/rift_noise = SubResource("NoiseTexture2D_cp8sw")
|
||||
shader_parameter/rift_noise_scale = 10.0
|
||||
shader_parameter/rift_noise_bias = 0.4
|
||||
shader_parameter/rift_noise_speed = 0.3
|
@ -403,7 +403,7 @@ tracks/55/keys = {
|
||||
tracks/56/type = "value"
|
||||
tracks/56/imported = false
|
||||
tracks/56/enabled = true
|
||||
tracks/56/path = NodePath("SpawnDebris:emitting")
|
||||
tracks/56/path = NodePath("SpawnEffects/MajorSpawnDebris:emitting")
|
||||
tracks/56/interp = 1
|
||||
tracks/56/loop_wrap = true
|
||||
tracks/56/keys = {
|
||||
@ -415,7 +415,7 @@ tracks/56/keys = {
|
||||
tracks/57/type = "value"
|
||||
tracks/57/imported = false
|
||||
tracks/57/enabled = true
|
||||
tracks/57/path = NodePath("SpawnDebris:amount_ratio")
|
||||
tracks/57/path = NodePath("SpawnEffects/MajorSpawnDebris:amount_ratio")
|
||||
tracks/57/interp = 1
|
||||
tracks/57/loop_wrap = true
|
||||
tracks/57/keys = {
|
||||
@ -436,3 +436,134 @@ tracks/58/keys = {
|
||||
"update": 0,
|
||||
"values": [1.0]
|
||||
}
|
||||
tracks/59/type = "value"
|
||||
tracks/59/imported = false
|
||||
tracks/59/enabled = true
|
||||
tracks/59/path = NodePath("SpawnEffects/MinorSpawnDebris:emitting")
|
||||
tracks/59/interp = 1
|
||||
tracks/59/loop_wrap = true
|
||||
tracks/59/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
tracks/60/type = "value"
|
||||
tracks/60/imported = false
|
||||
tracks/60/enabled = true
|
||||
tracks/60/path = NodePath("SpawnEffects/MinorSpawnDebris:amount_ratio")
|
||||
tracks/60/interp = 1
|
||||
tracks/60/loop_wrap = true
|
||||
tracks/60/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/61/type = "value"
|
||||
tracks/61/imported = false
|
||||
tracks/61/enabled = true
|
||||
tracks/61/path = NodePath("SpawnEffects/GurgleEffect:emitting")
|
||||
tracks/61/interp = 1
|
||||
tracks/61/loop_wrap = true
|
||||
tracks/61/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
tracks/62/type = "value"
|
||||
tracks/62/imported = false
|
||||
tracks/62/enabled = true
|
||||
tracks/62/path = NodePath("SpawnEffects/GurgleEffect:amount_ratio")
|
||||
tracks/62/interp = 1
|
||||
tracks/62/loop_wrap = true
|
||||
tracks/62/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/63/type = "value"
|
||||
tracks/63/imported = false
|
||||
tracks/63/enabled = true
|
||||
tracks/63/path = NodePath("SpawnEffects/SpawnRift:visible")
|
||||
tracks/63/interp = 1
|
||||
tracks/63/loop_wrap = true
|
||||
tracks/63/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
tracks/64/type = "value"
|
||||
tracks/64/imported = false
|
||||
tracks/64/enabled = true
|
||||
tracks/64/path = NodePath("SpawnEffects/SpawnRift:mesh:material:shader_parameter/emission_strength")
|
||||
tracks/64/interp = 1
|
||||
tracks/64/loop_wrap = true
|
||||
tracks/64/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [1.0]
|
||||
}
|
||||
tracks/65/type = "bezier"
|
||||
tracks/65/imported = false
|
||||
tracks/65/enabled = true
|
||||
tracks/65/path = NodePath("SpawnEffects/SpawnRift:mesh:material:shader_parameter/progress")
|
||||
tracks/65/interp = 1
|
||||
tracks/65/loop_wrap = true
|
||||
tracks/65/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
tracks/66/type = "value"
|
||||
tracks/66/imported = false
|
||||
tracks/66/enabled = true
|
||||
tracks/66/path = NodePath("SpawnEffects/GodParticlesFast:emitting")
|
||||
tracks/66/interp = 1
|
||||
tracks/66/loop_wrap = true
|
||||
tracks/66/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
tracks/67/type = "value"
|
||||
tracks/67/imported = false
|
||||
tracks/67/enabled = true
|
||||
tracks/67/path = NodePath("SpawnEffects/GodParticlesFaster:emitting")
|
||||
tracks/67/interp = 1
|
||||
tracks/67/loop_wrap = true
|
||||
tracks/67/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
tracks/68/type = "value"
|
||||
tracks/68/imported = false
|
||||
tracks/68/enabled = true
|
||||
tracks/68/path = NodePath("SpawnEffects/GodParticlesFast:amount_ratio")
|
||||
tracks/68/interp = 1
|
||||
tracks/68/loop_wrap = true
|
||||
tracks/68/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/69/type = "value"
|
||||
tracks/69/imported = false
|
||||
tracks/69/enabled = true
|
||||
tracks/69/path = NodePath("SpawnEffects/GodParticlesFaster:amount_ratio")
|
||||
tracks/69/interp = 1
|
||||
tracks/69/loop_wrap = true
|
||||
tracks/69/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [0.0]
|
||||
}
|
||||
|
@ -426,7 +426,7 @@ tracks/56/keys = {
|
||||
tracks/57/type = "value"
|
||||
tracks/57/imported = false
|
||||
tracks/57/enabled = true
|
||||
tracks/57/path = NodePath("SpawnDebris:emitting")
|
||||
tracks/57/path = NodePath("SpawnEffects/MajorSpawnDebris:emitting")
|
||||
tracks/57/interp = 1
|
||||
tracks/57/loop_wrap = true
|
||||
tracks/57/keys = {
|
||||
@ -438,7 +438,7 @@ tracks/57/keys = {
|
||||
tracks/58/type = "value"
|
||||
tracks/58/imported = false
|
||||
tracks/58/enabled = true
|
||||
tracks/58/path = NodePath("SpawnDebris:amount_ratio")
|
||||
tracks/58/path = NodePath("SpawnEffects/MajorSpawnDebris:amount_ratio")
|
||||
tracks/58/interp = 1
|
||||
tracks/58/loop_wrap = true
|
||||
tracks/58/keys = {
|
||||
@ -459,14 +459,3 @@ tracks/59/keys = {
|
||||
"update": 0,
|
||||
"values": [0.0, 1.0]
|
||||
}
|
||||
tracks/60/type = "method"
|
||||
tracks/60/imported = false
|
||||
tracks/60/enabled = true
|
||||
tracks/60/path = NodePath("SpawnDebris")
|
||||
tracks/60/interp = 1
|
||||
tracks/60/loop_wrap = true
|
||||
tracks/60/keys = {
|
||||
"times": PackedFloat32Array(),
|
||||
"transitions": PackedFloat32Array(),
|
||||
"values": []
|
||||
}
|
||||
|
BIN
assets/npc/shambler/animations/library.res
(Stored with Git LFS)
Normal file
BIN
assets/npc/shambler/animations/library.res
(Stored with Git LFS)
Normal file
Binary file not shown.
51
src/shaders/glowing_rift.gdshader
Normal file
51
src/shaders/glowing_rift.gdshader
Normal file
@ -0,0 +1,51 @@
|
||||
// -*- mode: glsl -*-
|
||||
// The RIFT is OPENING...
|
||||
shader_type spatial;
|
||||
render_mode depth_prepass_alpha;
|
||||
|
||||
group_uniforms rift_shape;
|
||||
uniform sampler2D rift_shape;
|
||||
uniform sampler2D rift_scale;
|
||||
uniform sampler2D rift_bias;
|
||||
uniform float shape_scale = 1.0;
|
||||
uniform float rift_speed = 1.0;
|
||||
uniform float progress: hint_range(0.0, 1.0) = 1.0;
|
||||
uniform float smoothing = 0.02;
|
||||
|
||||
group_uniforms rift_offset;
|
||||
uniform sampler2D rift_offset;
|
||||
uniform sampler2D offset_scale;
|
||||
|
||||
group_uniforms rift_color;
|
||||
uniform vec3 color: source_color = vec3(1.0);
|
||||
uniform vec3 emission: source_color = vec3(1.0);
|
||||
uniform float emission_strength = 1.0;
|
||||
|
||||
group_uniforms rift_noise;
|
||||
uniform sampler2D rift_noise;
|
||||
uniform float rift_noise_scale = 1.0;
|
||||
uniform float rift_noise_bias = 0.0;
|
||||
uniform float rift_noise_speed = 0.1;
|
||||
|
||||
|
||||
void fragment() {
|
||||
// Rift shape
|
||||
float i_time = TIME * rift_speed;
|
||||
vec2 uva = vec2(UV.x * 0.5, i_time);
|
||||
vec2 uvb = vec2(UV.x * 0.5 + 0.5, i_time);
|
||||
|
||||
float scale = texture(rift_scale, UV).r * shape_scale * progress;
|
||||
float bias = texture(rift_bias, UV).r * progress;
|
||||
float limit_a = 0.0 - texture(rift_shape, uva).r * scale - bias;
|
||||
float limit_b = 0.0 + texture(rift_shape, uvb).r * scale + bias;
|
||||
|
||||
float offset = texture(offset_scale, UV).r * (texture(rift_offset, vec2(UV.x, i_time)).r - 0.5);
|
||||
float p = UV.y - 0.5 + offset;
|
||||
ALPHA = smoothstep(limit_a, limit_a + smoothing, p) * (1.0 - smoothstep(limit_b - smoothing, limit_b, p));
|
||||
|
||||
// Rift emissive noise
|
||||
float noise = texture(rift_noise, vec2(UV.x, TIME * rift_noise_speed)).r;
|
||||
noise = noise * noise * noise * rift_noise_scale + rift_noise_bias;
|
||||
EMISSION = emission * noise * emission_strength;
|
||||
ALBEDO = color;
|
||||
}
|
1
src/shaders/glowing_rift.gdshader.uid
Normal file
1
src/shaders/glowing_rift.gdshader.uid
Normal file
@ -0,0 +1 @@
|
||||
uid://dawp27i0m5arl
|
@ -1,8 +1,8 @@
|
||||
class_name SceneTools extends Object
|
||||
## Tools for specialized operations in a scene
|
||||
|
||||
# const RAY_MASK := 0b00100101
|
||||
const RAY_MASK := 1
|
||||
const RAY_MASK := 0b00100101
|
||||
# const RAY_MASK := 1
|
||||
|
||||
|
||||
## Get the Node3D in the given group which is spatially closest to the target node.
|
||||
|
@ -31,7 +31,8 @@ collision_mask = 128
|
||||
shape = SubResource("CylinderShape3D_42oks")
|
||||
debug_color = Color(0.980392, 0.854902, 0, 1)
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="Area3D"]
|
||||
[node name="DEBUGMesh" type="MeshInstance3D" parent="Area3D"]
|
||||
visible = false
|
||||
mesh = SubResource("CylinderMesh_e5rh0")
|
||||
|
||||
[node name="SpawnExclusionArea" type="Area3D" parent="."]
|
||||
|
@ -384,7 +384,7 @@ metadata/_custom_type_script = "uid://cg016dbe7gs1x"
|
||||
script = ExtResource("11_mbqcc")
|
||||
mean_time = 4.0
|
||||
st_dev_time = 0.6
|
||||
wait_time = 4.58991
|
||||
wait_time = 3.52478
|
||||
metadata/_custom_type_script = "uid://beyk2xtbjrsg4"
|
||||
|
||||
[node name="PickRandomInvestigationTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/TrackingMode/ActionSelector/InvestigateAction/AlwaysSucceedDecorator/InvestigateSequence/RandomDelay"]
|
||||
@ -478,7 +478,7 @@ metadata/_custom_type_script = "uid://bogt3htgqe12s"
|
||||
script = ExtResource("11_mbqcc")
|
||||
mean_time = 9.0
|
||||
st_dev_time = 1.0
|
||||
wait_time = 10.1664
|
||||
wait_time = 9.52982
|
||||
metadata/_custom_type_script = "uid://beyk2xtbjrsg4"
|
||||
|
||||
[node name="PickRandomLurkTarget" type="Node" parent="GrunkBeastBehavior/StateSelector/LurkingMode/RandomDelay"]
|
||||
|
@ -36,7 +36,7 @@ func _ready() -> void:
|
||||
func _start_player_rumble() -> void:
|
||||
# TODO this is awful. Integrate PhantomCamera or similar
|
||||
if Player.instance:
|
||||
create_tween().tween_property(Player.instance, "camera_rumble", SPAWN_RUMBLE, 0.1)
|
||||
create_tween().tween_property(Player.instance, "camera_rumble", SPAWN_RUMBLE, 1.2)
|
||||
|
||||
|
||||
func _end_player_rumble() -> void:
|
||||
|
@ -1,10 +1,13 @@
|
||||
[gd_scene load_steps=26 format=3 uid="uid://brrd33217oplv"]
|
||||
[gd_scene load_steps=49 format=3 uid="uid://brrd33217oplv"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cyqr1ojnddyk0" path="res://assets/npc/shambler/shambler.gltf" id="1_uiw1a"]
|
||||
[ext_resource type="Material" uid="uid://7xrgrvf3lymv" path="res://assets/npc/shambler/shambler.material" id="2_nayyt"]
|
||||
[ext_resource type="Script" uid="uid://bueq1q2qva7gs" path="res://src/world/grunk_beast/shambler/shambler.gd" id="2_s7rwx"]
|
||||
[ext_resource type="Script" uid="uid://cuqr167olan8n" path="res://src/effects/particle_spawner.gd" id="4_elp7k"]
|
||||
[ext_resource type="PackedScene" uid="uid://cf1o33mq2hxjx" path="res://src/effects/grunk_debris.tscn" id="5_lqi3b"]
|
||||
[ext_resource type="AnimationLibrary" uid="uid://vvljqrvmuim4" path="res://assets/npc/shambler/animations/library.res" id="6_lqi3b"]
|
||||
[ext_resource type="Material" uid="uid://dcj6vk6q845b4" path="res://assets/materials/grunk_bubble.material" id="7_xyfav"]
|
||||
[ext_resource type="Material" uid="uid://pr3m1n71vtof" path="res://assets/materials/taste_the_god_particle_you_filthy_rat.tres" id="8_6bdpa"]
|
||||
|
||||
[sub_resource type="Curve" id="Curve_s7rwx"]
|
||||
_limits = [0.0, 1.0, 0.0, 10.0]
|
||||
@ -34,7 +37,7 @@ point_count = 3
|
||||
[sub_resource type="AnimationNodeTimeScale" id="AnimationNodeTimeScale_s7rwx"]
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_vmxrd"]
|
||||
animation = &"emerge_floor"
|
||||
animation = &"extended_spawn"
|
||||
|
||||
[sub_resource type="AnimationNodeOneShot" id="AnimationNodeOneShot_elp7k"]
|
||||
|
||||
@ -100,6 +103,154 @@ collision_mode = 1
|
||||
collision_friction = 1.0
|
||||
collision_bounce = 0.0
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_lqi3b"]
|
||||
lifetime_randomness = 0.71
|
||||
emission_shape = 6
|
||||
emission_ring_axis = Vector3(0, 1, 0)
|
||||
emission_ring_height = 0.0
|
||||
emission_ring_radius = 1.0
|
||||
emission_ring_inner_radius = 0.0
|
||||
emission_ring_cone_angle = 90.0
|
||||
direction = Vector3(0, 1, 0)
|
||||
spread = 20.0
|
||||
initial_velocity_min = 1.0
|
||||
initial_velocity_max = 2.0
|
||||
attractor_interaction_enabled = false
|
||||
scale_curve = SubResource("CurveTexture_fabmb")
|
||||
collision_mode = 1
|
||||
collision_friction = 1.0
|
||||
collision_bounce = 0.0
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_s7rwx"]
|
||||
vertex_color_use_as_albedo = true
|
||||
albedo_color = Color(0, 0.101961, 0.301961, 1)
|
||||
emission_enabled = true
|
||||
emission = Color(0, 0.101961, 0.301961, 1)
|
||||
emission_energy_multiplier = 0.6
|
||||
texture_filter = 0
|
||||
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_xlxrx"]
|
||||
material = SubResource("StandardMaterial3D_s7rwx")
|
||||
size = Vector2(0.05, 0.05)
|
||||
|
||||
[sub_resource type="Curve" id="Curve_o6myl"]
|
||||
_data = [Vector2(0, 0), 0.0, 2.58321, 0, 0, Vector2(1, 1), -0.403345, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="Curve" id="Curve_xlxrx"]
|
||||
_data = [Vector2(0, 0), 0.0, 1.63477, 0, 0, Vector2(0.837947, 1), -1.37504, -1.37504, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
|
||||
point_count = 3
|
||||
|
||||
[sub_resource type="Curve" id="Curve_6bdpa"]
|
||||
_data = [Vector2(0, 0), 0.0, 3.72349, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="CurveXYZTexture" id="CurveXYZTexture_cp8sw"]
|
||||
curve_x = SubResource("Curve_o6myl")
|
||||
curve_y = SubResource("Curve_xlxrx")
|
||||
curve_z = SubResource("Curve_6bdpa")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_xyfav"]
|
||||
lifetime_randomness = 0.2
|
||||
emission_shape = 6
|
||||
emission_ring_axis = Vector3(0, 1, 0)
|
||||
emission_ring_height = 0.01
|
||||
emission_ring_radius = 1.2
|
||||
emission_ring_inner_radius = 1.0
|
||||
emission_ring_cone_angle = 90.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
attractor_interaction_enabled = false
|
||||
scale_min = 0.2
|
||||
scale_curve = SubResource("CurveXYZTexture_cp8sw")
|
||||
sub_emitter_mode = 2
|
||||
sub_emitter_amount_at_end = 2
|
||||
|
||||
[sub_resource type="SphereMesh" id="SphereMesh_o6myl"]
|
||||
material = ExtResource("7_xyfav")
|
||||
radius = 0.4
|
||||
height = 0.8
|
||||
radial_segments = 32
|
||||
rings = 8
|
||||
|
||||
[sub_resource type="Curve" id="Curve_cp8sw"]
|
||||
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(0.250213, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -2.47309, 0.0, 0, 0]
|
||||
point_count = 3
|
||||
|
||||
[sub_resource type="CurveTexture" id="CurveTexture_c7m4v"]
|
||||
curve = SubResource("Curve_cp8sw")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_vru5p"]
|
||||
lifetime_randomness = 0.4
|
||||
emission_shape_offset = Vector3(0, 1, 0)
|
||||
direction = Vector3(0, 1, 0)
|
||||
spread = 60.0
|
||||
initial_velocity_min = 1.0
|
||||
initial_velocity_max = 2.0
|
||||
gravity = Vector3(0, -1, 0)
|
||||
damping_min = 8.0
|
||||
damping_max = 8.0
|
||||
attractor_interaction_enabled = false
|
||||
scale_curve = SubResource("CurveTexture_c7m4v")
|
||||
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_10hsf"]
|
||||
material = SubResource("StandardMaterial3D_s7rwx")
|
||||
size = Vector2(0.05, 0.05)
|
||||
|
||||
[sub_resource type="PlaneMesh" id="PlaneMesh_xlxrx"]
|
||||
material = ExtResource("8_6bdpa")
|
||||
|
||||
[sub_resource type="Curve" id="Curve_c7m4v"]
|
||||
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="CurveTexture" id="CurveTexture_vru5p"]
|
||||
curve = SubResource("Curve_c7m4v")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_10hsf"]
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(0.01, 0.01, 0.6)
|
||||
direction = Vector3(0, 1, 0)
|
||||
spread = 5.0
|
||||
initial_velocity_min = 10.0
|
||||
initial_velocity_max = 10.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
attractor_interaction_enabled = false
|
||||
alpha_curve = SubResource("CurveTexture_vru5p")
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_6bdpa"]
|
||||
transparency = 3
|
||||
alpha_hash_scale = 1.0
|
||||
alpha_antialiasing_mode = 0
|
||||
vertex_color_use_as_albedo = true
|
||||
emission_enabled = true
|
||||
emission = Color(0.25098, 0.878431, 1, 1)
|
||||
emission_energy_multiplier = 16.0
|
||||
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_6bdpa"]
|
||||
material = SubResource("StandardMaterial3D_6bdpa")
|
||||
size = Vector2(0.02, 0.02)
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_0bwtl"]
|
||||
emission_shape = 3
|
||||
emission_box_extents = Vector3(0.01, 0.01, 0.6)
|
||||
direction = Vector3(0, 1, 0)
|
||||
spread = 5.0
|
||||
initial_velocity_min = 30.0
|
||||
initial_velocity_max = 30.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
attractor_interaction_enabled = false
|
||||
alpha_curve = SubResource("CurveTexture_vru5p")
|
||||
|
||||
[node name="Shambler" instance=ExtResource("1_uiw1a")]
|
||||
script = ExtResource("2_s7rwx")
|
||||
idle_blend_curve = SubResource("Curve_s7rwx")
|
||||
@ -203,10 +354,14 @@ metadata/_custom_type_script = "uid://cuqr167olan8n"
|
||||
|
||||
[node name="AnimationPlayer" parent="." index="1"]
|
||||
unique_name_in_owner = true
|
||||
libraries = {
|
||||
&"": ExtResource("6_lqi3b")
|
||||
}
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="." index="2"]
|
||||
unique_name_in_owner = true
|
||||
root_node = NodePath("%AnimationTree/..")
|
||||
callback_mode_discrete = 0
|
||||
tree_root = SubResource("AnimationNodeBlendTree_nayyt")
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
parameters/anim_scale/scale = 1.0
|
||||
@ -216,7 +371,7 @@ parameters/emerge_floor_trigger/request = 0
|
||||
parameters/front_scale/scale = 1.0
|
||||
parameters/idle_blend/blend_amount = 0.0
|
||||
parameters/rear_add/add_amount = 0.0
|
||||
parameters/rear_scale/scale = 1.0
|
||||
parameters/rear_scale/scale = 2.0
|
||||
|
||||
[node name="DefaultLookTargetPivot" type="Node3D" parent="." index="3"]
|
||||
unique_name_in_owner = true
|
||||
@ -236,12 +391,69 @@ mesh = SubResource("SphereMesh_s7rwx")
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)
|
||||
size = Vector3(6, 0.5, 6)
|
||||
|
||||
[node name="SpawnDebris" parent="." index="5" instance=ExtResource("5_lqi3b")]
|
||||
[node name="SpawnEffects" type="Node3D" parent="." index="5"]
|
||||
process_mode = 3
|
||||
|
||||
[node name="MajorSpawnDebris" parent="SpawnEffects" index="0" instance=ExtResource("5_lqi3b")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0)
|
||||
amount = 64
|
||||
amount_ratio = 0.0
|
||||
one_shot = false
|
||||
preprocess = 0.0
|
||||
explosiveness = 0.1
|
||||
explosiveness = 0.0
|
||||
randomness = 0.43
|
||||
process_material = SubResource("ParticleProcessMaterial_elp7k")
|
||||
|
||||
[node name="MinorSpawnDebris" parent="SpawnEffects" index="1" instance=ExtResource("5_lqi3b")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.1, 0)
|
||||
amount = 64
|
||||
amount_ratio = 0.0
|
||||
one_shot = false
|
||||
preprocess = 0.0
|
||||
explosiveness = 0.0
|
||||
randomness = 0.43
|
||||
process_material = SubResource("ParticleProcessMaterial_lqi3b")
|
||||
draw_pass_1 = SubResource("QuadMesh_xlxrx")
|
||||
|
||||
[node name="GurgleEffect" type="GPUParticles3D" parent="SpawnEffects" index="2"]
|
||||
emitting = false
|
||||
amount = 12
|
||||
amount_ratio = 0.0
|
||||
sub_emitter = NodePath("GurglePop")
|
||||
lifetime = 0.4
|
||||
process_material = SubResource("ParticleProcessMaterial_xyfav")
|
||||
draw_pass_1 = SubResource("SphereMesh_o6myl")
|
||||
|
||||
[node name="GurglePop" type="GPUParticles3D" parent="SpawnEffects/GurgleEffect" index="0"]
|
||||
amount = 64
|
||||
lifetime = 0.2
|
||||
preprocess = 1.13
|
||||
explosiveness = 1.0
|
||||
process_material = SubResource("ParticleProcessMaterial_vru5p")
|
||||
draw_pass_1 = SubResource("QuadMesh_10hsf")
|
||||
|
||||
[node name="SpawnRift" type="MeshInstance3D" parent="SpawnEffects" index="3"]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0, 0.01, 0)
|
||||
visible = false
|
||||
mesh = SubResource("PlaneMesh_xlxrx")
|
||||
skeleton = NodePath("../..")
|
||||
|
||||
[node name="GodParticlesFast" type="GPUParticles3D" parent="SpawnEffects" index="4"]
|
||||
emitting = false
|
||||
amount = 64
|
||||
amount_ratio = 0.0
|
||||
lifetime = 0.4
|
||||
fixed_fps = 60
|
||||
interpolate = false
|
||||
process_material = SubResource("ParticleProcessMaterial_10hsf")
|
||||
draw_pass_1 = SubResource("QuadMesh_6bdpa")
|
||||
|
||||
[node name="GodParticlesFaster" type="GPUParticles3D" parent="SpawnEffects" index="5"]
|
||||
emitting = false
|
||||
amount = 32
|
||||
amount_ratio = 0.0
|
||||
lifetime = 0.2
|
||||
fixed_fps = 60
|
||||
interpolate = false
|
||||
process_material = SubResource("ParticleProcessMaterial_0bwtl")
|
||||
draw_pass_1 = SubResource("QuadMesh_6bdpa")
|
||||
|
Loading…
x
Reference in New Issue
Block a user