From b936750afa0027df8ade1111451614bf6d32c89a Mon Sep 17 00:00:00 2001 From: unfa Date: Sun, 26 Sep 2021 01:12:12 +0200 Subject: [PATCH] Fixed bullet tracers not obeying spread and having wrong collision. Disabeld shadows for tracers. --- Game/Assets/Characters/Player.gd | 6 +++--- Game/Assets/Effects/BulletTracer.gd | 8 ++++---- Game/Assets/Effects/BulletTracer.tscn | 6 +++--- Game/Assets/Weapons/Weapon.gd | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Game/Assets/Characters/Player.gd b/Game/Assets/Characters/Player.gd index e07dd9f..7f92cf6 100644 --- a/Game/Assets/Characters/Player.gd +++ b/Game/Assets/Characters/Player.gd @@ -235,15 +235,15 @@ func _process(delta): $FocusBanner.mesh.surface_get_material(0).set("albedo_color", Color(1,1,1, focus_banner_alpha)) - print("PLayer: ", name, "; Focus banner alpha: ", focus_banner_alpha, "; Focus banner show: ", focus_banner_show) + #print("PLayer: ", name, "; Focus banner alpha: ", focus_banner_alpha, "; Focus banner show: ", focus_banner_show) if not input_active: return # demand seeing other player's banner: - print("Last viewed banner is ", last_viewed_banner) + #print("Last viewed banner is ", last_viewed_banner) if $"Head/Camera/RayCast3D".is_colliding(): - print("Probe got ", $"Head/Camera/RayCast3D".get_collider().name) + #print("Probe got ", $"Head/Camera/RayCast3D".get_collider().name) if $"Head/Camera/RayCast3D".get_collider().has_method(&"view_banner"): $"Head/Camera/RayCast3D".get_collider().view_banner(true) last_viewed_banner = $"Head/Camera/RayCast3D".get_collider() diff --git a/Game/Assets/Effects/BulletTracer.gd b/Game/Assets/Effects/BulletTracer.gd index e80209a..1f87f60 100644 --- a/Game/Assets/Effects/BulletTracer.gd +++ b/Game/Assets/Effects/BulletTracer.gd @@ -1,6 +1,6 @@ extends Node3D -const SPEED = 200 +const SPEED = 250 # Declare member variables here. Examples: # var a = 2 @@ -9,11 +9,11 @@ const SPEED = 200 # Called when the node enters the scene tree for the first time. func _ready(): - translate_object_local(Vector3.UP * SPEED / 60 * randf_range(0, 1)) # randomize starting point - $RayCast3D.target_position = Vector3.UP * SPEED / 60 + #translate_object_local(Vector3.FORWARD * SPEED / 60 * randf_range(0, 1)) # randomize starting point + $RayCast3D.target_position = - Vector3.FORWARD * SPEED / 30 func _process(delta): if $RayCast3D.is_colliding(): queue_free() else: - translate_object_local(Vector3.UP * SPEED * delta) + translate_object_local(Vector3.FORWARD * SPEED * delta) diff --git a/Game/Assets/Effects/BulletTracer.tscn b/Game/Assets/Effects/BulletTracer.tscn index adc4b1e..f85a6a0 100644 --- a/Game/Assets/Effects/BulletTracer.tscn +++ b/Game/Assets/Effects/BulletTracer.tscn @@ -48,15 +48,15 @@ shadow_mesh = SubResource( "ArrayMesh_ee1b4" ) script = ExtResource( "1_prhxw" ) [node name="RayCast3D" type="RayCast3D" parent="."] -transform = Transform3D(-5.73206e-15, 1, 4.37114e-08, -1.31134e-07, -4.37114e-08, 1, 1, 0, 1.31134e-07, 0, 0, 0) +transform = Transform3D(-5.73206e-15, 1, 4.37114e-08, 1, 1.91069e-15, 8.74226e-08, 8.74226e-08, 4.37114e-08, -1, 0, 0, -3.99155) target_position = Vector3(0, 0, 5) collision_mask = 3 script = null [node name="Tracer" type="MeshInstance3D" parent="."] -transform = Transform3D(7.54979e-09, 0.1, 2.18557e-08, 0, -4.37114e-09, 0.5, 0.1, -7.54979e-09, -1.65006e-15, 0, 6.25509, 0) +transform = Transform3D(7.54979e-09, 0.1, 2.18557e-08, 0.1, -7.54979e-09, -2.18557e-08, -4.37114e-09, 4.37114e-09, -0.5, 0, 0, -3.88725) layers = 4 -gi_mode = 1 +cast_shadow = 0 mesh = SubResource( "ArrayMesh_lv12o" ) skeleton = NodePath("") surface_material_override/0 = null diff --git a/Game/Assets/Weapons/Weapon.gd b/Game/Assets/Weapons/Weapon.gd index 1f50c53..6fdc211 100644 --- a/Game/Assets/Weapons/Weapon.gd +++ b/Game/Assets/Weapons/Weapon.gd @@ -59,7 +59,7 @@ var spread = spread_min get_parent().add_child(flash_effect) get_tree().root.add_child(tracer_effect) flash_effect.global_transform = muzzle.global_transform - tracer_effect.global_transform = muzzle.global_transform + tracer_effect.global_transform = muzzle.global_transform.looking_at(to) var casing_instance = casing.instantiate() get_tree().root.add_child(casing_instance)