add particle hit effect
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -7,3 +7,4 @@
|
||||
|
||||
*.tmp
|
||||
*.*~
|
||||
*-autosave.kra
|
||||
|
||||
BIN
assets/textures/effects/projectile_hit_effect.png
LFS
Normal file
BIN
assets/textures/effects/projectile_hit_effect.png
LFS
Normal file
Binary file not shown.
36
assets/textures/effects/projectile_hit_effect.png.import
Normal file
36
assets/textures/effects/projectile_hit_effect.png.import
Normal file
@@ -0,0 +1,36 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cmbyt03a78682"
|
||||
path.s3tc="res://.godot/imported/projectile_hit_effect.png-ab40411344c419a5e71caf94e2065868.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/projectile_hit_effect.png-ab40411344c419a5e71caf94e2065868.etc2.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/textures/effects/projectile_hit_effect.png"
|
||||
dest_files=["res://.godot/imported/projectile_hit_effect.png-ab40411344c419a5e71caf94e2065868.s3tc.ctex", "res://.godot/imported/projectile_hit_effect.png-ab40411344c419a5e71caf94e2065868.etc2.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
BIN
assets/textures/effects/projectile_hit_effect_sub.png
LFS
Normal file
BIN
assets/textures/effects/projectile_hit_effect_sub.png
LFS
Normal file
Binary file not shown.
36
assets/textures/effects/projectile_hit_effect_sub.png.import
Normal file
36
assets/textures/effects/projectile_hit_effect_sub.png.import
Normal file
@@ -0,0 +1,36 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dk3nilys1gide"
|
||||
path.s3tc="res://.godot/imported/projectile_hit_effect_sub.png-3ef10c46ab5c958857e5f8435d227c25.s3tc.ctex"
|
||||
path.etc2="res://.godot/imported/projectile_hit_effect_sub.png-3ef10c46ab5c958857e5f8435d227c25.etc2.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc", "etc2_astc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/textures/effects/projectile_hit_effect_sub.png"
|
||||
dest_files=["res://.godot/imported/projectile_hit_effect_sub.png-3ef10c46ab5c958857e5f8435d227c25.s3tc.ctex", "res://.godot/imported/projectile_hit_effect_sub.png-3ef10c46ab5c958857e5f8435d227c25.etc2.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=true
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=0
|
||||
@@ -0,0 +1,15 @@
|
||||
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://pjyvs328ew3u"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://cmbyt03a78682" path="res://assets/textures/effects/projectile_hit_effect.png" id="1_7rp2r"]
|
||||
|
||||
[resource]
|
||||
transparency = 1
|
||||
shading_mode = 0
|
||||
vertex_color_use_as_albedo = true
|
||||
vertex_color_is_srgb = true
|
||||
albedo_texture = ExtResource("1_7rp2r")
|
||||
billboard_mode = 3
|
||||
billboard_keep_scale = true
|
||||
particles_anim_h_frames = 2
|
||||
particles_anim_v_frames = 2
|
||||
particles_anim_loop = false
|
||||
@@ -0,0 +1,15 @@
|
||||
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://sn3w7fpf2k0b"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dk3nilys1gide" path="res://assets/textures/effects/projectile_hit_effect_sub.png" id="1_0npha"]
|
||||
|
||||
[resource]
|
||||
transparency = 1
|
||||
shading_mode = 0
|
||||
vertex_color_use_as_albedo = true
|
||||
vertex_color_is_srgb = true
|
||||
albedo_texture = ExtResource("1_0npha")
|
||||
billboard_mode = 3
|
||||
billboard_keep_scale = true
|
||||
particles_anim_h_frames = 1
|
||||
particles_anim_v_frames = 1
|
||||
particles_anim_loop = false
|
||||
@@ -4,7 +4,6 @@
|
||||
|
||||
[resource]
|
||||
transparency = 1
|
||||
blend_mode = 1
|
||||
shading_mode = 0
|
||||
albedo_color = Color(0.964706, 0.788235, 0.215686, 0.109804)
|
||||
vertex_color_use_as_albedo = true
|
||||
albedo_texture = ExtResource("1_2xhdi")
|
||||
|
||||
@@ -106,35 +106,35 @@ _collision_debug_material = ExtResource("2_0p422")
|
||||
[node name="Model" parent="." instance=ExtResource("3_f1ej7")]
|
||||
|
||||
[node name="Skeleton3D" parent="Model/Armature" index="0"]
|
||||
bones/0/position = Vector3(-0.537868, 1.0281, -0.10541)
|
||||
bones/0/rotation = Quaternion(0.729026, -0.0928637, -0.672933, -0.0840203)
|
||||
bones/0/position = Vector3(-0.543134, 1.08788, -0.0917138)
|
||||
bones/0/rotation = Quaternion(0.711732, -0.168641, -0.662063, -0.163313)
|
||||
bones/0/scale = Vector3(1, 1, 1)
|
||||
bones/1/position = Vector3(-9.75365e-05, 0.0319142, -0.124525)
|
||||
bones/1/rotation = Quaternion(-0.000141591, 0.789452, 0.613812, 0.000224233)
|
||||
bones/2/rotation = Quaternion(6.24507e-10, 4.41808e-08, -6.03351e-10, 1)
|
||||
bones/2/scale = Vector3(1, 1, 1)
|
||||
bones/3/rotation = Quaternion(1.74623e-10, -2.60798e-10, -1.30968e-10, 1)
|
||||
bones/4/position = Vector3(-0.0213358, 0.931413, -0.0438835)
|
||||
bones/4/rotation = Quaternion(0.257992, -0.279597, -0.042176, 0.923844)
|
||||
bones/4/position = Vector3(-0.0315981, 0.953029, -0.0546811)
|
||||
bones/4/rotation = Quaternion(0.295319, -0.327641, -0.107915, 0.89095)
|
||||
bones/5/position = Vector3(6.05363e-09, 0.111695, -8.19564e-08)
|
||||
bones/5/rotation = Quaternion(0.0662777, -0.131196, 0.198453, 0.969026)
|
||||
bones/6/rotation = Quaternion(-0.419054, -0.137958, 0.0262865, 0.897034)
|
||||
bones/7/rotation = Quaternion(0.329718, 0.258561, -0.27923, 0.863981)
|
||||
bones/8/rotation = Quaternion(-0.215187, 0.315493, 0.125256, 0.91568)
|
||||
bones/5/rotation = Quaternion(0.0696866, -0.110981, 0.261727, 0.956204)
|
||||
bones/6/rotation = Quaternion(-0.419676, -0.109495, 0.0130086, 0.900951)
|
||||
bones/7/rotation = Quaternion(0.3265, 0.284802, -0.251691, 0.865411)
|
||||
bones/8/rotation = Quaternion(-0.2495, 0.296628, 0.151267, 0.90933)
|
||||
bones/9/rotation = Quaternion(1.13474e-07, 0.707107, 0.707107, -5.23149e-08)
|
||||
bones/10/scale = Vector3(1, 1, 1)
|
||||
bones/11/position = Vector3(-0.00968189, -1.10066e-08, -0.00662707)
|
||||
bones/11/scale = Vector3(1.08891, 1, 1)
|
||||
bones/11/scale = Vector3(1.00139, 1, 1)
|
||||
bones/12/position = Vector3(-0.00823868, 6.83734e-08, -0.0102097)
|
||||
bones/13/position = Vector3(-0.0208772, 1.28692e-07, 0.00347639)
|
||||
bones/13/scale = Vector3(1.08891, 1, 0.85497)
|
||||
bones/14/position = Vector3(-0.0348034, 1.17923e-07, -0.00384641)
|
||||
bones/14/scale = Vector3(1.08891, 1, 0.85497)
|
||||
bones/13/position = Vector3(-0.0195226, 6.92139e-09, 0.00588929)
|
||||
bones/13/scale = Vector3(1.00139, 1, 0.997734)
|
||||
bones/14/position = Vector3(-0.0323295, 2.96327e-09, -0.00265635)
|
||||
bones/14/scale = Vector3(1.00139, 1, 0.997734)
|
||||
bones/15/position = Vector3(-0.0186913, 1.4579e-07, -0.0116523)
|
||||
bones/16/position = Vector3(0.0152802, -8.55124e-08, 0.0116922)
|
||||
bones/16/scale = Vector3(1.08891, 1, 0.85497)
|
||||
bones/17/position = Vector3(0.0299582, -6.64203e-08, 0.00463103)
|
||||
bones/17/scale = Vector3(1.08891, 1, 1)
|
||||
bones/16/position = Vector3(0.013901, 8.25914e-08, 0.0150569)
|
||||
bones/16/scale = Vector3(1.00139, 1, 0.997735)
|
||||
bones/17/position = Vector3(0.0275303, 9.00419e-08, 0.0069467)
|
||||
bones/17/scale = Vector3(1.00139, 1, 1)
|
||||
bones/18/position = Vector3(0.0138112, -1.99382e-07, -0.0106829)
|
||||
bones/19/position = Vector3(-0.029965, -6.74833e-08, -0.0114938)
|
||||
bones/20/position = Vector3(0.0319374, 2.70462e-10, -0.00811319)
|
||||
@@ -144,19 +144,19 @@ bones/22/position = Vector3(-0.00351833, -2.67936e-08, 0.0010112)
|
||||
bones/25/position = Vector3(-0.0442944, 0.0756561, 0.0940351)
|
||||
bones/25/rotation = Quaternion(-0.161417, 0.667625, 0.688436, 0.232975)
|
||||
bones/26/position = Vector3(0.00351835, 2.9417e-08, 0.00101115)
|
||||
bones/29/rotation = Quaternion(0.0348119, -0.609386, 0.790604, 0.0488095)
|
||||
bones/30/rotation = Quaternion(-0.0795463, -0.00713307, -0.072255, 0.994183)
|
||||
bones/29/rotation = Quaternion(0.0382404, -0.550798, 0.832483, 0.0461726)
|
||||
bones/30/rotation = Quaternion(-0.0957824, 0.000982907, 0.0254876, 0.995075)
|
||||
bones/31/rotation = Quaternion(0.00282337, 0.992799, -0.117349, -0.0238866)
|
||||
bones/32/rotation = Quaternion(0.51819, 2.60584e-08, -1.29504e-06, 0.855265)
|
||||
bones/32/rotation = Quaternion(0.618082, -1.36521e-07, -1.28249e-06, 0.786113)
|
||||
bones/33/rotation = Quaternion(-0.0342351, -3.5846e-07, 8.54711e-08, 0.999414)
|
||||
bones/35/rotation = Quaternion(0.249306, -0.106935, 0.274008, 0.922676)
|
||||
bones/36/rotation = Quaternion(-0.557204, 3.58411e-07, 4.60852e-07, 0.830376)
|
||||
bones/37/rotation = Quaternion(-0.124018, -0.101153, 0.10961, 0.981006)
|
||||
bones/38/rotation = Quaternion(-0.581882, 3.27627e-07, 9.75025e-07, 0.813273)
|
||||
bones/35/rotation = Quaternion(0.386226, -0.0288097, 0.216781, 0.896106)
|
||||
bones/36/rotation = Quaternion(-0.676116, 2.82218e-07, 5.06251e-07, 0.736795)
|
||||
bones/37/rotation = Quaternion(0.0468953, -0.0785536, 0.0557795, 0.994243)
|
||||
bones/38/rotation = Quaternion(-0.587791, 3.22231e-07, 9.83445e-07, 0.809013)
|
||||
bones/39/rotation = Quaternion(0.197471, 0.678974, 0.678974, -0.19747)
|
||||
bones/39/scale = Vector3(1.07535, 1, 0.915612)
|
||||
bones/41/position = Vector3(0.0139192, 0.000225329, -0.00384292)
|
||||
bones/41/rotation = Quaternion(2.32454e-08, -0.00598613, -1.36913e-07, 0.999982)
|
||||
bones/39/scale = Vector3(1.0011, 1, 0.998774)
|
||||
bones/41/position = Vector3(0.0128964, 0.000225329, -0.00384278)
|
||||
bones/41/rotation = Quaternion(-9.69781e-10, -0.00708393, -1.34122e-07, 0.999975)
|
||||
bones/41/scale = Vector3(0.999981, 1, 0.538573)
|
||||
bones/42/position = Vector3(0.0392888, -1.17533e-06, -0.00209796)
|
||||
bones/43/position = Vector3(-0.0495715, -2.58908e-06, 0.0301691)
|
||||
@@ -164,9 +164,9 @@ bones/44/position = Vector3(-0.00910762, -1.30386e-08, 0.00452032)
|
||||
bones/45/position = Vector3(-0.013421, 6.33299e-08, -0.0283991)
|
||||
bones/46/position = Vector3(-0.0513805, 8.90344e-07, -0.0104124)
|
||||
bones/47/position = Vector3(0.0446487, -1.27684e-06, -0.0177286)
|
||||
bones/48/scale = Vector3(1.07535, 1, 0.865321)
|
||||
bones/50/position = Vector3(-0.0170028, 0.000225411, -0.00485537)
|
||||
bones/50/rotation = Quaternion(1.248e-08, -0.00728642, 6.79947e-08, 0.999973)
|
||||
bones/48/scale = Vector3(1.0011, 1, 0.998043)
|
||||
bones/50/position = Vector3(-0.0180255, 0.000225338, -0.00485544)
|
||||
bones/50/rotation = Quaternion(-6.48622e-09, -0.00862222, 1.11814e-08, 0.999963)
|
||||
bones/50/scale = Vector3(0.999977, 1, 0.397035)
|
||||
bones/51/position = Vector3(-0.0392888, -1.22121e-06, -0.00333335)
|
||||
bones/52/position = Vector3(0.0495715, -2.68185e-06, 0.0147188)
|
||||
@@ -174,16 +174,16 @@ bones/53/position = Vector3(0.00910765, -7.47593e-08, 0.000409614)
|
||||
bones/54/position = Vector3(0.0134209, 4.70912e-08, -0.0184937)
|
||||
bones/55/position = Vector3(0.0513805, 9.29226e-07, -0.0104125)
|
||||
bones/56/position = Vector3(-0.0446488, -1.30966e-06, -0.0177287)
|
||||
bones/57/rotation = Quaternion(0.250692, -0.015874, -0.717888, 0.64926)
|
||||
bones/58/rotation = Quaternion(0.547427, 0.0727925, -0.343529, 0.759613)
|
||||
bones/57/rotation = Quaternion(0.233181, -0.0107908, -0.678944, 0.696093)
|
||||
bones/58/rotation = Quaternion(0.523886, 0.0664228, -0.405548, 0.746098)
|
||||
bones/58/scale = Vector3(1, 1, 1)
|
||||
bones/59/position = Vector3(-1.27016e-07, 0.288296, 1.25242e-08)
|
||||
bones/59/rotation = Quaternion(0.462535, -0.0306456, -0.0826658, 0.882207)
|
||||
bones/59/position = Vector3(-9.57874e-08, 0.28245, -2.04679e-08)
|
||||
bones/59/rotation = Quaternion(0.472279, -0.000988259, -0.0133858, 0.881347)
|
||||
bones/59/scale = Vector3(1, 1, 1)
|
||||
bones/60/rotation = Quaternion(0.00106262, -0.238284, 0.000260704, 0.971195)
|
||||
bones/60/rotation = Quaternion(0.00106223, -0.239893, 0.000262507, 0.970799)
|
||||
bones/60/scale = Vector3(1, 1, 1)
|
||||
bones/61/position = Vector3(-2.00553e-08, 0.0500378, -0.000109436)
|
||||
bones/61/rotation = Quaternion(-0.306126, -0.34578, 0.111249, 0.87997)
|
||||
bones/61/position = Vector3(-2.38435e-08, 0.0662428, -0.000144935)
|
||||
bones/61/rotation = Quaternion(-0.259913, -0.30647, 0.0898474, 0.91129)
|
||||
bones/61/scale = Vector3(1, 1, 1)
|
||||
bones/62/rotation = Quaternion(0.493569, 0.84346, 0.0982726, -0.187901)
|
||||
bones/63/rotation = Quaternion(0.52804, -0.147693, -0.0941254, 0.830964)
|
||||
@@ -228,28 +228,28 @@ bones/93/rotation = Quaternion(-0.494209, 0.0204614, -0.0359497, 0.868359)
|
||||
bones/93/scale = Vector3(1, 1.13164, 1)
|
||||
bones/94/rotation = Quaternion(-0.547852, 0.057849, -0.0581314, 0.832546)
|
||||
bones/94/scale = Vector3(1, 1.05697, 1)
|
||||
bones/95/position = Vector3(-2.927e-08, 0.0500378, -0.000109433)
|
||||
bones/95/rotation = Quaternion(-0.798584, -0.166404, -0.0860817, 0.571982)
|
||||
bones/95/position = Vector3(3.32503e-09, 0.0662427, -0.000145026)
|
||||
bones/95/rotation = Quaternion(-0.786701, -0.143093, -0.0788224, 0.595326)
|
||||
bones/95/scale = Vector3(1, 1, 1)
|
||||
bones/96/position = Vector3(-1.69053e-07, 0.288296, 2.26814e-08)
|
||||
bones/96/rotation = Quaternion(-0.516871, 0.0189744, -0.0412999, 0.854856)
|
||||
bones/96/scale = Vector3(1, 1.09431, 1)
|
||||
bones/96/position = Vector3(1.37622e-09, 0.28245, -1.58384e-08)
|
||||
bones/96/rotation = Quaternion(-0.513124, 0.00451907, -0.00526202, 0.858286)
|
||||
bones/96/scale = Vector3(1, 1.0999, 1)
|
||||
bones/97/position = Vector3(-0.00645471, 0.000163305, -0.00321278)
|
||||
bones/97/rotation = Quaternion(0.248427, 0.0258538, -0.267814, 0.930533)
|
||||
bones/97/scale = Vector3(1, 1, 1)
|
||||
bones/98/position = Vector3(-5.76256e-09, 0.0159596, 0.000181361)
|
||||
bones/98/rotation = Quaternion(-0.0586372, -0.00568235, -0.12181, 0.990804)
|
||||
bones/99/rotation = Quaternion(-0.457054, 0.129616, -0.0928363, 0.875033)
|
||||
bones/99/rotation = Quaternion(-0.463077, 0.151382, -0.119364, 0.865098)
|
||||
bones/99/scale = Vector3(1, 1, 1)
|
||||
bones/100/rotation = Quaternion(0.047975, -0.0290916, 0.496614, 0.866156)
|
||||
bones/101/rotation = Quaternion(0.0735213, 0.453738, 0.707398, 0.536939)
|
||||
bones/100/rotation = Quaternion(0.0487089, -0.0278453, 0.474124, 0.878669)
|
||||
bones/101/rotation = Quaternion(0.0674087, 0.449171, 0.744007, 0.490056)
|
||||
bones/102/position = Vector3(6.2732e-09, 0.281682, 9.00968e-08)
|
||||
bones/102/rotation = Quaternion(0.0299112, 4.92746e-05, 5.11185e-05, 0.999553)
|
||||
bones/102/rotation = Quaternion(0.0783999, 5.11893e-05, 4.85968e-05, 0.996922)
|
||||
bones/102/scale = Vector3(1, 1, 1)
|
||||
bones/103/rotation = Quaternion(0.00109412, 0.000158973, -1.86224e-07, 0.999999)
|
||||
bones/103/scale = Vector3(0.999997, 0.999997, 1)
|
||||
bones/104/position = Vector3(-1.97803e-07, 0.068466, -0.000150014)
|
||||
bones/104/rotation = Quaternion(-0.438056, 0.000260938, -0.000173902, 0.898948)
|
||||
bones/104/rotation = Quaternion(-0.390861, 0.000250205, -0.000179205, 0.92045)
|
||||
bones/104/scale = Vector3(1, 1, 1)
|
||||
bones/105/rotation = Quaternion(-0.272954, 0.938438, 0.146391, -0.152973)
|
||||
bones/106/rotation = Quaternion(0.58496, 0.153924, 0.0835466, 0.791928)
|
||||
@@ -295,96 +295,96 @@ bones/136/scale = Vector3(1, 1.25698, 1)
|
||||
bones/137/rotation = Quaternion(-0.479239, -0.0566498, 0.0570499, 0.873994)
|
||||
bones/137/scale = Vector3(1, 1.15486, 1)
|
||||
bones/138/position = Vector3(-1.96072e-07, 0.068466, -0.000149977)
|
||||
bones/138/rotation = Quaternion(-0.849258, 0.000157943, 3.23818e-05, 0.527979)
|
||||
bones/138/rotation = Quaternion(-0.835281, 0.000155048, 2.64581e-05, 0.549823)
|
||||
bones/138/scale = Vector3(1, 1, 1)
|
||||
bones/139/position = Vector3(3.48513e-09, 0.281682, 1.40144e-07)
|
||||
bones/139/rotation = Quaternion(-0.696011, 1.21396e-06, 6.09475e-05, 0.718031)
|
||||
bones/139/rotation = Quaternion(-0.678372, 2.72611e-06, 6.07555e-05, 0.734718)
|
||||
bones/139/scale = Vector3(1, 1, 1)
|
||||
bones/140/position = Vector3(-0.00091601, -0.00419344, -0.00166352)
|
||||
bones/140/rotation = Quaternion(0.180101, -0.00275761, 0.0409847, 0.98279)
|
||||
bones/140/scale = Vector3(1.12362, 1, 1)
|
||||
bones/141/position = Vector3(2.32831e-10, 0.0159594, 0.000181319)
|
||||
bones/141/rotation = Quaternion(-0.0876969, -0.00686066, -0.0793036, 0.992962)
|
||||
bones/142/rotation = Quaternion(-0.59306, -0.072254, 0.461617, 0.65572)
|
||||
bones/142/rotation = Quaternion(-0.586048, -0.0904486, 0.482526, 0.64462)
|
||||
bones/142/scale = Vector3(1, 1, 0.999999)
|
||||
bones/143/position = Vector3(-0.0139807, 0.110044, 0.0701197)
|
||||
bones/144/position = Vector3(-0.0111757, 0.0524648, 0.10961)
|
||||
bones/145/position = Vector3(-0.0132329, -0.018423, 0.126834)
|
||||
bones/146/position = Vector3(-0.00282269, 0.0438543, -0.144881)
|
||||
bones/147/position = Vector3(0.119573, 0.0291284, -0.0793672)
|
||||
bones/147/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/148/position = Vector3(0.108832, 0.0891115, -0.0550522)
|
||||
bones/148/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/149/position = Vector3(0.0832047, 0.066736, 0.0430919)
|
||||
bones/149/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/150/position = Vector3(0.10844, -0.00998876, 0.0247553)
|
||||
bones/150/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/151/position = Vector3(0.045835, 0.058439, 0.0867506)
|
||||
bones/152/position = Vector3(0.0509334, -0.0151493, 0.0894968)
|
||||
bones/153/position = Vector3(0.0363082, 0.109653, 0.0524593)
|
||||
bones/153/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/154/position = Vector3(0.0626361, 0.13099, 0.0390041)
|
||||
bones/154/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/155/position = Vector3(0.0770166, 0.154954, 0.00866816)
|
||||
bones/155/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/156/position = Vector3(0.0852847, 0.157581, -0.0178354)
|
||||
bones/156/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/157/position = Vector3(0.102407, 0.121445, -0.0463067)
|
||||
bones/157/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/158/position = Vector3(0.0609227, 0.12881, -0.067941)
|
||||
bones/158/rotation = Quaternion(0.133316, -0.19788, -0.0047292, 0.971107)
|
||||
bones/159/position = Vector3(-0.125687, 0.0555322, -0.0820334)
|
||||
bones/159/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/160/position = Vector3(-0.0944835, 0.113247, -0.0781763)
|
||||
bones/160/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/161/position = Vector3(-0.10545, 0.126761, 0.0306197)
|
||||
bones/161/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/162/position = Vector3(-0.134348, 0.0646965, 0.0125657)
|
||||
bones/162/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/163/position = Vector3(-0.0629909, 0.0764249, 0.0976013)
|
||||
bones/164/position = Vector3(-0.0844746, 0.0059698, 0.111779)
|
||||
bones/165/position = Vector3(-0.0530007, 0.145973, 0.0543718)
|
||||
bones/165/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/166/position = Vector3(-0.0644365, 0.182007, 0.0201099)
|
||||
bones/166/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/167/position = Vector3(-0.0573856, 0.196716, -0.0180385)
|
||||
bones/167/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/168/position = Vector3(-0.0587486, 0.193374, -0.0456911)
|
||||
bones/168/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/169/position = Vector3(-0.0900045, 0.163528, -0.0639474)
|
||||
bones/169/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/170/position = Vector3(-0.0565296, 0.14743, -0.0745644)
|
||||
bones/170/rotation = Quaternion(0.0316156, 0.0247255, -0.308898, 0.950248)
|
||||
bones/171/rotation = Quaternion(0.766041, 0.164396, -0.409579, 0.467333)
|
||||
bones/143/position = Vector3(-0.018919, 0.110134, 0.070157)
|
||||
bones/144/position = Vector3(-0.0337827, 0.0542148, 0.09068)
|
||||
bones/145/position = Vector3(-0.0510229, -0.00555351, 0.0822772)
|
||||
bones/146/position = Vector3(0.0286733, 0.0509892, -0.115724)
|
||||
bones/147/position = Vector3(0.108819, 0.0395299, -0.0447654)
|
||||
bones/147/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/148/position = Vector3(0.112299, 0.0939505, -0.0357108)
|
||||
bones/148/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/149/position = Vector3(0.0759571, 0.078725, 0.0577895)
|
||||
bones/149/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/150/position = Vector3(0.0778319, 0.000744706, 0.0574671)
|
||||
bones/150/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/151/position = Vector3(0.018874, 0.0587846, 0.0816846)
|
||||
bones/152/position = Vector3(0.0156536, -0.00930089, 0.0820753)
|
||||
bones/153/position = Vector3(0.033201, 0.11429, 0.0545836)
|
||||
bones/153/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/154/position = Vector3(0.0637267, 0.139331, 0.0384155)
|
||||
bones/154/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/155/position = Vector3(0.0747889, 0.163579, 0.00693478)
|
||||
bones/155/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/156/position = Vector3(0.0823833, 0.166088, -0.019781)
|
||||
bones/156/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/157/position = Vector3(0.106001, 0.131009, -0.0435183)
|
||||
bones/157/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/158/position = Vector3(0.0700479, 0.132857, -0.0632079)
|
||||
bones/158/rotation = Quaternion(0.125368, -0.182936, 0.0565113, 0.97346)
|
||||
bones/159/position = Vector3(-0.0889399, 0.0627121, -0.100726)
|
||||
bones/159/rotation = Quaternion(0.0314139, 0.0266726, -0.333223, 0.941947)
|
||||
bones/160/position = Vector3(-0.0729533, 0.106545, -0.0883844)
|
||||
bones/160/rotation = Quaternion(0.0314138, 0.0266726, -0.333223, 0.941947)
|
||||
bones/161/position = Vector3(-0.105049, 0.136257, 0.00595959)
|
||||
bones/161/rotation = Quaternion(0.0314138, 0.0266726, -0.333223, 0.941947)
|
||||
bones/162/position = Vector3(-0.123492, 0.0687571, -0.0301436)
|
||||
bones/162/rotation = Quaternion(0.0314138, 0.0266726, -0.333223, 0.941947)
|
||||
bones/163/position = Vector3(-0.0777084, 0.0784455, 0.0660743)
|
||||
bones/164/position = Vector3(-0.0991848, 0.0200588, 0.0579003)
|
||||
bones/165/position = Vector3(-0.0571452, 0.150272, 0.0521332)
|
||||
bones/165/rotation = Quaternion(0.0314138, 0.0266726, -0.333223, 0.941947)
|
||||
bones/166/position = Vector3(-0.062244, 0.184127, 0.0201765)
|
||||
bones/166/rotation = Quaternion(0.0314138, 0.0266726, -0.333223, 0.941947)
|
||||
bones/167/position = Vector3(-0.0545475, 0.198521, -0.0178273)
|
||||
bones/167/rotation = Quaternion(0.0314139, 0.0266726, -0.333223, 0.941947)
|
||||
bones/168/position = Vector3(-0.056203, 0.195251, -0.0454726)
|
||||
bones/168/rotation = Quaternion(0.0314138, 0.0266726, -0.333223, 0.941947)
|
||||
bones/169/position = Vector3(-0.0888787, 0.166864, -0.0635684)
|
||||
bones/169/rotation = Quaternion(0.0314138, 0.0266726, -0.333223, 0.941947)
|
||||
bones/170/position = Vector3(-0.0563384, 0.148642, -0.0744274)
|
||||
bones/170/rotation = Quaternion(0.0314138, 0.0266726, -0.333223, 0.941947)
|
||||
bones/171/rotation = Quaternion(0.721273, 0.227673, -0.441375, 0.482823)
|
||||
bones/171/scale = Vector3(0.999998, 0.999997, 1.00001)
|
||||
bones/172/position = Vector3(3.62338e-10, 0.531431, 3.56619e-08)
|
||||
bones/172/rotation = Quaternion(0.280398, -1.74173e-06, -3.57947e-07, 0.959884)
|
||||
bones/172/rotation = Quaternion(0.231705, -3.96115e-06, -6.79493e-07, 0.972786)
|
||||
bones/172/scale = Vector3(1, 0.999998, 1.00001)
|
||||
bones/173/position = Vector3(6.48577e-09, 0.418112, 8.79831e-08)
|
||||
bones/173/rotation = Quaternion(-0.381537, -0.0195898, 0.0489257, 0.92285)
|
||||
bones/173/rotation = Quaternion(-0.351933, -0.0233418, 0.0533289, 0.934213)
|
||||
bones/173/scale = Vector3(1, 0.999992, 0.999996)
|
||||
bones/174/rotation = Quaternion(-0.388439, -1.7287e-07, -1.04265e-07, 0.921475)
|
||||
bones/175/position = Vector3(1.16517e-08, 0.418112, 8.45817e-08)
|
||||
bones/175/rotation = Quaternion(-0.736764, -0.0129823, 0.0131286, 0.675898)
|
||||
bones/175/rotation = Quaternion(-0.729188, -0.014804, 0.0140502, 0.684009)
|
||||
bones/175/scale = Vector3(1, 1, 1)
|
||||
bones/176/position = Vector3(1.15382e-08, 0.531431, 3.0748e-08)
|
||||
bones/176/rotation = Quaternion(-0.637828, -5.03305e-07, -9.37431e-07, 0.770179)
|
||||
bones/176/scale = Vector3(1, 1.0141, 1)
|
||||
bones/177/rotation = Quaternion(0.941816, -0.00336278, -0.0741776, 0.327825)
|
||||
bones/176/rotation = Quaternion(-0.657024, -1.13106e-06, -1.88299e-06, 0.75387)
|
||||
bones/176/scale = Vector3(1, 1.00727, 1)
|
||||
bones/177/rotation = Quaternion(0.932579, 0.0765598, -0.123127, 0.330569)
|
||||
bones/177/scale = Vector3(1, 0.999998, 1.00001)
|
||||
bones/178/position = Vector3(2.73163e-08, 0.531431, 1.20327e-09)
|
||||
bones/178/rotation = Quaternion(0.319624, -2.78976e-06, -7.26061e-07, 0.947545)
|
||||
bones/178/rotation = Quaternion(0.236746, -6.00452e-07, -1.17628e-07, 0.971572)
|
||||
bones/178/scale = Vector3(1, 0.999999, 1.00001)
|
||||
bones/179/position = Vector3(8.4155e-09, 0.418112, 3.97981e-07)
|
||||
bones/179/rotation = Quaternion(-0.42193, 1.36197e-05, -0.103163, 0.90074)
|
||||
bones/179/rotation = Quaternion(-0.314248, 0.00136942, -0.0970126, 0.94437)
|
||||
bones/179/scale = Vector3(1, 0.99999, 0.999998)
|
||||
bones/180/rotation = Quaternion(-0.560426, 1.52972e-07, 1.60613e-07, 0.828205)
|
||||
bones/180/rotation = Quaternion(-0.606948, 1.50119e-07, 1.78005e-07, 0.794742)
|
||||
bones/181/position = Vector3(2.69973e-08, 0.418112, 4.26027e-07)
|
||||
bones/181/rotation = Quaternion(-0.747195, 0.0140527, -0.0333235, 0.66362)
|
||||
bones/181/rotation = Quaternion(-0.71957, 0.0136836, -0.0312211, 0.693583)
|
||||
bones/181/scale = Vector3(1, 1, 1)
|
||||
bones/182/position = Vector3(1.89344e-08, 0.531431, -1.32203e-08)
|
||||
bones/182/rotation = Quaternion(-0.621858, -6.37104e-07, -1.12013e-06, 0.78313)
|
||||
bones/182/scale = Vector3(1, 1.0221, 1)
|
||||
bones/182/rotation = Quaternion(-0.655067, -1.27296e-07, -5.17688e-08, 0.755571)
|
||||
bones/182/scale = Vector3(1, 1.00784, 1)
|
||||
|
||||
[node name="BoneFlipper" type="SkeletonModifier3D" parent="Model/Armature/Skeleton3D" index="0"]
|
||||
_import_path = NodePath("")
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
[gd_scene load_steps=14 format=3 uid="uid://cejn8wfgw14xs"]
|
||||
[gd_scene load_steps=15 format=3 uid="uid://cejn8wfgw14xs"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://bbd22tc1scoom" path="res://scripts/projectiles/projectile.gd" id="1_kv6x5"]
|
||||
[ext_resource type="Material" uid="uid://cux40v5s5sok3" path="res://resources/materials/debug/debug_projectile.tres" id="2_b024o"]
|
||||
[ext_resource type="PackedScene" uid="uid://c8gqrealje3o" path="res://scenes/effects/shadow_decal.tscn" id="3_2dqcj"]
|
||||
[ext_resource type="PackedScene" uid="uid://jmtp1qxxnyr2" path="res://scenes/projectiles/projectile_hit_particles.tscn" id="3_a8d2p"]
|
||||
[ext_resource type="PackedScene" uid="uid://bl3flu6un3op1" path="res://assets/models/projectiles/projectile.glb" id="3_oc4rm"]
|
||||
[ext_resource type="Material" uid="uid://dnyl326cg2rvh" path="res://resources/materials/projectiles/projectile_mat.tres" id="4_u2n0m"]
|
||||
[ext_resource type="Material" uid="uid://d3f5sarakjtlg" path="res://resources/materials/projectiles/projectile_glow_mat.tres" id="5_fdcqu"]
|
||||
@@ -24,6 +25,7 @@ curve = SubResource("Curve_j3t3l")
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_fdcqu"]
|
||||
gravity = Vector3(0, 0, 0)
|
||||
scale_curve = SubResource("CurveTexture_a8d2p")
|
||||
color = Color(0.964706, 0.788235, 0.215686, 0.109804)
|
||||
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_fdcqu"]
|
||||
material = ExtResource("7_j3t3l")
|
||||
@@ -35,6 +37,7 @@ collision_layer = 32
|
||||
collision_mask = 49
|
||||
script = ExtResource("1_kv6x5")
|
||||
_collision_debug_material = ExtResource("2_b024o")
|
||||
_hit_particles_scene = ExtResource("3_a8d2p")
|
||||
|
||||
[node name="Model" parent="." instance=ExtResource("3_oc4rm")]
|
||||
|
||||
@@ -57,6 +60,7 @@ debug_color = Color(0, 0.6, 0.7, 0.42)
|
||||
[node name="ShadowDecal" parent="." instance=ExtResource("3_2dqcj")]
|
||||
|
||||
[node name="TrailParticles" type="GPUParticles3D" parent="."]
|
||||
layers = 64
|
||||
extra_cull_margin = 100.0
|
||||
amount = 5
|
||||
lifetime = 0.4
|
||||
|
||||
143
scenes/projectiles/projectile_hit_particles.tscn
Normal file
143
scenes/projectiles/projectile_hit_particles.tscn
Normal file
@@ -0,0 +1,143 @@
|
||||
[gd_scene load_steps=25 format=3 uid="uid://jmtp1qxxnyr2"]
|
||||
|
||||
[ext_resource type="Material" uid="uid://pjyvs328ew3u" path="res://resources/materials/projectiles/projectile_hit_effect_mat.tres" id="1_yxwtk"]
|
||||
[ext_resource type="Material" uid="uid://sn3w7fpf2k0b" path="res://resources/materials/projectiles/projectile_hit_effect_sub_mat.tres" id="2_3ys0p"]
|
||||
[ext_resource type="Script" uid="uid://x3uft3uwakct" path="res://scripts/effects/particles_3d_self_destructing.gd" id="2_7o5ux"]
|
||||
[ext_resource type="Material" uid="uid://btoktsgqj62ei" path="res://resources/materials/projectiles/projectile_trail_mat.tres" id="4_7o5ux"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_3ys0p"]
|
||||
offsets = PackedFloat32Array(0, 0.684211)
|
||||
colors = PackedColorArray(1, 1, 1, 1, 0.964706, 0.788235, 0.215686, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_7o5ux"]
|
||||
gradient = SubResource("Gradient_3ys0p")
|
||||
|
||||
[sub_resource type="Curve" id="Curve_wq63x"]
|
||||
_data = [Vector2(0.00425532, 0.662921), 0.0, 1.13162, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="CurveTexture" id="CurveTexture_7kxpu"]
|
||||
curve = SubResource("Curve_wq63x")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_j3t3l"]
|
||||
angle_min = 1.07288e-05
|
||||
angle_max = 360.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
scale_curve = SubResource("CurveTexture_7kxpu")
|
||||
color_ramp = SubResource("GradientTexture1D_7o5ux")
|
||||
anim_speed_min = 1.0
|
||||
anim_speed_max = 1.0
|
||||
|
||||
[sub_resource type="PlaneMesh" id="PlaneMesh_a8d2p"]
|
||||
material = ExtResource("1_yxwtk")
|
||||
size = Vector2(1, 1)
|
||||
orientation = 2
|
||||
|
||||
[sub_resource type="Curve" id="Curve_mp3hp"]
|
||||
_data = [Vector2(0, 1), 0.0, -1.98034, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="CurveTexture" id="CurveTexture_eeh78"]
|
||||
curve = SubResource("Curve_mp3hp")
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_ab42x"]
|
||||
offsets = PackedFloat32Array(0, 0.578947)
|
||||
colors = PackedColorArray(1, 1, 1, 1, 0.964706, 0.788235, 0.215686, 1)
|
||||
|
||||
[sub_resource type="GradientTexture1D" id="GradientTexture1D_5y8lm"]
|
||||
gradient = SubResource("Gradient_ab42x")
|
||||
|
||||
[sub_resource type="Curve" id="Curve_7kxpu"]
|
||||
_limits = [0.0, 2.55, 0.0, 1.0]
|
||||
_data = [Vector2(0, 0.85955), 0.0, 0.177188, 0, 0, Vector2(1, 0.573034), 1.94907, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="Curve" id="Curve_vgwnf"]
|
||||
_limits = [0.0, 1.9, 0.0, 1.0]
|
||||
_data = [Vector2(0, 0), 0.0, 7.77612, 0, 0, Vector2(1, 1.70787), 0.0, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="Curve" id="Curve_kaa5c"]
|
||||
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(1, 1), 0.0, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="CurveXYZTexture" id="CurveXYZTexture_mp3hp"]
|
||||
curve_x = SubResource("Curve_7kxpu")
|
||||
curve_y = SubResource("Curve_vgwnf")
|
||||
curve_z = SubResource("Curve_kaa5c")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_a8d2p"]
|
||||
angle_min = 1.07288e-05
|
||||
angle_max = 360.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
scale_curve = SubResource("CurveXYZTexture_mp3hp")
|
||||
color_ramp = SubResource("GradientTexture1D_5y8lm")
|
||||
alpha_curve = SubResource("CurveTexture_eeh78")
|
||||
sub_emitter_mode = 4
|
||||
sub_emitter_amount_at_start = 1
|
||||
|
||||
[sub_resource type="PlaneMesh" id="PlaneMesh_wq63x"]
|
||||
material = ExtResource("2_3ys0p")
|
||||
size = Vector2(0.35, 2)
|
||||
orientation = 2
|
||||
|
||||
[sub_resource type="Curve" id="Curve_7o5ux"]
|
||||
_data = [Vector2(0, 1), 0.0, 0.0, 0, 0, Vector2(0.99999, 0), -3.0367, 0.0, 0, 0]
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="CurveTexture" id="CurveTexture_ab42x"]
|
||||
curve = SubResource("Curve_7o5ux")
|
||||
|
||||
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_3ys0p"]
|
||||
emission_shape = 1
|
||||
emission_sphere_radius = 0.5
|
||||
direction = Vector3(0, 0, -1)
|
||||
spread = 0.0
|
||||
initial_velocity_min = 10.0
|
||||
initial_velocity_max = 20.0
|
||||
gravity = Vector3(0, 0, 0)
|
||||
damping_min = 20.0
|
||||
damping_max = 40.0
|
||||
scale_curve = SubResource("CurveTexture_ab42x")
|
||||
color = Color(0.96, 0.78528, 0.2112, 1)
|
||||
|
||||
[sub_resource type="QuadMesh" id="QuadMesh_7o5ux"]
|
||||
material = ExtResource("4_7o5ux")
|
||||
size = Vector2(0.3, 0.3)
|
||||
orientation = 1
|
||||
|
||||
[node name="HitParticles" type="GPUParticles3D"]
|
||||
layers = 64
|
||||
emitting = false
|
||||
amount = 1
|
||||
lifetime = 0.5
|
||||
one_shot = true
|
||||
fixed_fps = 15
|
||||
interpolate = false
|
||||
process_material = SubResource("ParticleProcessMaterial_j3t3l")
|
||||
draw_pass_1 = SubResource("PlaneMesh_a8d2p")
|
||||
script = ExtResource("2_7o5ux")
|
||||
|
||||
[node name="HitParticlesSub" type="GPUParticles3D" parent="."]
|
||||
layers = 64
|
||||
emitting = false
|
||||
amount = 2
|
||||
lifetime = 0.4
|
||||
one_shot = true
|
||||
explosiveness = 1.0
|
||||
fixed_fps = 15
|
||||
interpolate = false
|
||||
process_material = SubResource("ParticleProcessMaterial_a8d2p")
|
||||
draw_pass_1 = SubResource("PlaneMesh_wq63x")
|
||||
|
||||
[node name="HitParticlesDir" type="GPUParticles3D" parent="."]
|
||||
layers = 64
|
||||
emitting = false
|
||||
amount = 4
|
||||
lifetime = 0.5
|
||||
one_shot = true
|
||||
explosiveness = 1.0
|
||||
fixed_fps = 15
|
||||
interpolate = false
|
||||
process_material = SubResource("ParticleProcessMaterial_3ys0p")
|
||||
draw_pass_1 = SubResource("QuadMesh_7o5ux")
|
||||
18
scripts/effects/particles_3d_self_destructing.gd
Normal file
18
scripts/effects/particles_3d_self_destructing.gd
Normal file
@@ -0,0 +1,18 @@
|
||||
class_name Particles3DSelfDestructing extends GPUParticles3D
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
emitting = true
|
||||
for node in get_children():
|
||||
if node is GPUParticles3D:
|
||||
(node as GPUParticles3D).emitting = true
|
||||
finished.connect(_on_finished)
|
||||
|
||||
|
||||
func init(start_position: Vector3, direction: Vector3 = Vector3.ZERO) -> void:
|
||||
global_position = start_position
|
||||
look_at(global_position + direction)
|
||||
|
||||
|
||||
func _on_finished() -> void:
|
||||
queue_free()
|
||||
1
scripts/effects/particles_3d_self_destructing.gd.uid
Normal file
1
scripts/effects/particles_3d_self_destructing.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://x3uft3uwakct
|
||||
@@ -134,7 +134,7 @@ func _hit_projectile(projectile: Projectile) -> void:
|
||||
projectile.global_position,
|
||||
projectile.global_position + new_direction
|
||||
)
|
||||
projectile.set_velocity(new_direction * _hit_projectile_speed)
|
||||
projectile.hit(new_direction * _hit_projectile_speed)
|
||||
break
|
||||
|
||||
prev_dir_angle = dir_angle
|
||||
|
||||
@@ -7,6 +7,7 @@ const MAX_STRETCH: float = 0.75
|
||||
@export var _speed_stretch_factor: float = 100
|
||||
|
||||
@export var _collision_debug_material: Material
|
||||
@export var _hit_particles_scene: PackedScene
|
||||
|
||||
var _start_position: Vector3
|
||||
var _velocity: Vector3
|
||||
@@ -52,6 +53,15 @@ func init(velocity: Vector3, start_position: Vector3, lifetime: float = 10) -> v
|
||||
_lifetime = lifetime
|
||||
|
||||
|
||||
func hit(velocity: Vector3) -> void:
|
||||
var hit_particles := (
|
||||
_hit_particles_scene.instantiate() as Particles3DSelfDestructing
|
||||
)
|
||||
get_tree().get_root().add_child(hit_particles)
|
||||
hit_particles.init(global_position, velocity)
|
||||
set_velocity(velocity)
|
||||
|
||||
|
||||
func set_velocity(velocity: Vector3) -> void:
|
||||
_velocity = velocity
|
||||
_life_timer = _lifetime
|
||||
|
||||
Reference in New Issue
Block a user