Added light to wall impact and fixed error on shooting nothing.

remotes/1705377932733043820/tmp_refs/heads/unbroken
unfa 2021-08-24 20:56:29 +02:00
parent da1df95bfa
commit c5286fa173
2 changed files with 81 additions and 12 deletions

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=2]
[gd_scene load_steps=11 format=2]
[ext_resource path="res://Assets/Effects/Impact.gd" type="Script" id=1]
[ext_resource path="res://Assets/Effects/Flame.png" type="Texture2D" id=2]
@ -35,6 +35,62 @@ uv1_scale = Vector3(0.5, 0.5, 1)
material = SubResource( 5 )
size = Vector2(0.25, 0.25)
[sub_resource type="Animation" id=7]
length = 0.001
tracks/0/type = "value"
tracks/0/path = NodePath("OmniLight3D:light_color")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 0.929412, 0, 1)]
}
tracks/1/type = "value"
tracks/1/path = NodePath("OmniLight3D:light_energy")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [1.0]
}
[sub_resource type="Animation" id=8]
resource_name = "anim"
length = 0.2
step = 0.05
tracks/0/type = "value"
tracks/0/path = NodePath("OmniLight3D:light_color")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.1, 0.2),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Color(1, 0.905882, 0.34902, 1), Color(0.666667, 0.270588, 0, 1), Color(0, 0, 0, 1)]
}
tracks/1/type = "value"
tracks/1/path = NodePath("OmniLight3D:light_energy")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.2),
"transitions": PackedFloat32Array(0.15932, 1),
"update": 0,
"values": [1.0, 0.0]
}
[node name="Impact" type="Node3D"]
script = ExtResource( 1 )
@ -70,4 +126,17 @@ mesh = SubResource( 6 )
surface_material_override/0 = null
script = null
[node name="OmniLight3D" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.369677, 0)
light_color = Color(1, 0.929412, 0, 1)
omni_attenuation = 2.63902
script = null
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
autoplay = "anim"
anims/RESET = SubResource( 7 )
anims/anim = SubResource( 8 )
blend_times = []
script = null
[connection signal="timeout" from="Timer" to="." method="_on_Timer_timeout"]

View File

@ -27,17 +27,17 @@ var impact_player = preload("res://Assets/Effects/ImpactPlayer.tscn")
var impact_vfx
if ray['collider'].has_method(&'damage'):
if get_tree().network_peer.get_unique_id() == 1: # make sure this can only run on the server
ray['collider'].damage(10)
impact_vfx = impact_player.instantiate()
else:
impact_vfx = impact_wall.instantiate()
impact_vfx.global_transform = impact_vfx.global_transform.looking_at(ray['normal'])
impact_vfx.global_transform.origin = ray['position']
get_tree().root.add_child(impact_vfx)
if ray: # did we hit anything?
if ray['collider'].has_method(&'damage'):
if get_tree().network_peer.get_unique_id() == 1: # make sure this can only run on the server
ray['collider'].damage(10)
impact_vfx = impact_player.instantiate()
else:
impact_vfx = impact_wall.instantiate()
impact_vfx.global_transform = impact_vfx.global_transform.looking_at(ray['normal'])
impact_vfx.global_transform.origin = ray['position']
get_tree().root.add_child(impact_vfx)
print(ray)