Re-enable collisions

This commit is contained in:
Steven Long
2023-09-07 23:28:00 -07:00
parent 8e363587b9
commit 5362240120
9 changed files with 36 additions and 78 deletions

View File

@@ -7,4 +7,21 @@ public partial class EnemyBullet : Projectile
{ {
TranslateObjectLocal(new Vector3(0, 0, -Speed * (float)delta)); TranslateObjectLocal(new Vector3(0, 0, -Speed * (float)delta));
} }
public new void OnProjectileHit(Node node)
{
SetPhysicsProcess(false);
_hitBox.QueueFree();
if (node is Character character && character.HasMethod(Character.MethodName.OnHit))
{
GD.Print("Player hit: " + character.Name);
character.Call(Character.MethodName.OnHit, node);
}
var sfxPlayer = GetTree().Root.GetNode<AudioStreamPlayer>("Main/SFXPlayer");
if (!sfxPlayer.Playing)
sfxPlayer.Play();
}
} }

View File

@@ -18,7 +18,7 @@ _hitBox = NodePath("RigidBody3D")
[node name="RigidBody3D" type="RigidBody3D" parent="."] [node name="RigidBody3D" type="RigidBody3D" parent="."]
collision_layer = 0 collision_layer = 0
collision_mask = 0 collision_mask = 2
gravity_scale = 0.0 gravity_scale = 0.0
custom_integrator = true custom_integrator = true
continuous_cd = true continuous_cd = true

View File

@@ -1,5 +1,5 @@
using Godot;
using System.Linq; using System.Linq;
using Godot;
public partial class FireAtPlayer : Timer public partial class FireAtPlayer : Timer
{ {
@@ -21,9 +21,4 @@ public partial class FireAtPlayer : Timer
GetParent().AddChild(projectile); GetParent().AddChild(projectile);
} }
} }
private void OnDied()
{
Stop();
}
} }

View File

@@ -41,13 +41,14 @@ public partial class Projectile : Node3D
SetProcess(false); SetProcess(false);
if (node.GetParent() is BasicEnemy basicEnemy && basicEnemy.HasMethod(BasicEnemy.MethodName.OnEnemyHit)) if (node.GetParent() is BasicEnemy basicEnemy && basicEnemy.HasMethod(BasicEnemy.MethodName.OnEnemyHit))
basicEnemy.Call(BasicEnemy.MethodName.OnEnemyHit, node); basicEnemy.Call(BasicEnemy.MethodName.OnEnemyHit, node);
else else
GD.Print("Hit something other than enemy: " + node.GetParent().Name); GD.Print("Hit something other than enemy: " + node.Name);
_hitBox.QueueFree(); _hitBox.QueueFree();
var sfxPlayer = GetTree().Root.GetNode<AudioStreamPlayer>("Main/SFXPlayer"); var sfxPlayer = GetTree().Root.GetNode<AudioStreamPlayer>("Main/SFXPlayer");
if (!sfxPlayer.Playing) if (!sfxPlayer.Playing)
sfxPlayer.Play(); sfxPlayer.Play();
} }
public float Speed { get; private set; } public float Speed { get; private set; }

View File

@@ -216,7 +216,7 @@ size = Vector3(0.856928, 1.65704, 0.82877)
[node name="Capricorn" type="CharacterBody3D" groups=["Player"]] [node name="Capricorn" type="CharacterBody3D" groups=["Player"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.408962, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.408962, 0)
collision_layer = 0 collision_layer = 2
motion_mode = 1 motion_mode = 1
script = ExtResource("1_aqn5t") script = ExtResource("1_aqn5t")
_fireProjectile = ExtResource("3_wbhxk") _fireProjectile = ExtResource("3_wbhxk")
@@ -234,15 +234,3 @@ animation = &"WalkSide"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."] [node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.41651, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.41651, 0)
shape = SubResource("BoxShape3D_r4spg") shape = SubResource("BoxShape3D_r4spg")
[node name="Area3D" type="Area3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.75657e-15, 1.43031, 0)
disable_mode = 2
collision_layer = 0
collision_mask = 0
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"]
transform = Transform3D(0.999665, -0.0258978, -7.10543e-15, 0.0258978, 0.999665, 0, 0, 0, 1, 0, 0, 0)
shape = SubResource("BoxShape3D_r4spg")
[connection signal="body_entered" from="Area3D" to="." method="OnHit" flags=18]

View File

@@ -1,20 +1,16 @@
[gd_scene load_steps=7 format=3 uid="uid://b38hcomu4tpm5"] [gd_scene load_steps=6 format=3 uid="uid://b38hcomu4tpm5"]
[ext_resource type="Script" path="res://Player/Base/Character.cs" id="1_gp8nm"] [ext_resource type="Script" path="res://Player/Base/Character.cs" id="1_gp8nm"]
[ext_resource type="PackedScene" uid="uid://cyn2wn6ffsnu7" path="res://Player/Pisces/Attacks/Single.tscn" id="2_rsvhh"] [ext_resource type="PackedScene" uid="uid://cyn2wn6ffsnu7" path="res://Player/Pisces/Attacks/Single.tscn" id="2_rsvhh"]
[ext_resource type="PackedScene" uid="uid://bq40xbqibrk1y" path="res://Player/Pisces/Attacks/ShotgunBullet.tscn" id="3_5m8tq"] [ext_resource type="PackedScene" uid="uid://bq40xbqibrk1y" path="res://Player/Pisces/Attacks/ShotgunBullet.tscn" id="3_5m8tq"]
[ext_resource type="PackedScene" uid="uid://yosw0j58nvrf" path="res://Player/Pisces/Models/fwitch.gltf" id="4_d60j6"] [ext_resource type="PackedScene" uid="uid://yosw0j58nvrf" path="res://Player/Pisces/Models/fwitch.gltf" id="4_d60j6"]
[sub_resource type="BoxShape3D" id="BoxShape3D_xynge"] [sub_resource type="BoxShape3D" id="BoxShape3D_sf0h3"]
size = Vector3(3.04879, 3.92906, 2.56521) size = Vector3(1.52195, 15.0934, 1)
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_fqik1"]
radius = 0.704872
height = 1.67894
[node name="Pisces" type="CharacterBody3D" groups=["Player"]] [node name="Pisces" type="CharacterBody3D" groups=["Player"]]
transform = Transform3D(0.33, 0, 0, 0, 0.33, 0, 0, 0, 0.33, 0, 0.332056, 0) transform = Transform3D(0.33, 0, 0, 0, 0.33, 0, 0, 0, 0.33, 0, 0.332056, 0)
collision_layer = 0 collision_layer = 2
motion_mode = 1 motion_mode = 1
script = ExtResource("1_gp8nm") script = ExtResource("1_gp8nm")
_fireProjectile = ExtResource("2_rsvhh") _fireProjectile = ExtResource("2_rsvhh")
@@ -24,17 +20,6 @@ _altFireProjectile = ExtResource("3_5m8tq")
[node name="fwitch" parent="Pivot" instance=ExtResource("4_d60j6")] [node name="fwitch" parent="Pivot" instance=ExtResource("4_d60j6")]
[node name="Area3D" type="Area3D" parent="Pivot"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.75657e-15, 0, 0)
collision_layer = 0
collision_mask = 0
[node name="CollisionShape3D" type="CollisionShape3D" parent="Pivot/Area3D"]
transform = Transform3D(0.999665, -0.0258978, -7.10543e-15, 0.0258978, 0.999665, 0, 0, 0, 1, 0.0162379, 2.20309, -0.302385)
shape = SubResource("BoxShape3D_xynge")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."] [node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.06805, -0.211049) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.06805, -0.211049)
shape = SubResource("CapsuleShape3D_fqik1") shape = SubResource("BoxShape3D_sf0h3")
[connection signal="body_entered" from="Pivot/Area3D" to="." method="OnHit"]

View File

@@ -1,12 +1,8 @@
[gd_scene load_steps=28 format=3 uid="uid://bgkqfamdiwrrw"] [gd_scene load_steps=27 format=3 uid="uid://bgkqfamdiwrrw"]
[ext_resource type="Script" path="res://Player/Base/Character.cs" id="1_s1hsr"] [ext_resource type="Script" path="res://Player/Base/Character.cs" id="1_s1hsr"]
[ext_resource type="PackedScene" uid="uid://criqb4bokctlr" path="res://Player/Sagittarius/Attacks/MegamiBeam.tscn" id="2_c3ma7"] [ext_resource type="PackedScene" uid="uid://criqb4bokctlr" path="res://Player/Sagittarius/Attacks/MegamiBeam.tscn" id="2_c3ma7"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_b4i03"]
radius = 0.507139
height = 4.172
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ru85r"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ru85r"]
resource_name = "Material.006" resource_name = "Material.006"
cull_mode = 2 cull_mode = 2
@@ -607,8 +603,7 @@ radius = 0.25
[node name="Sagittarius" type="CharacterBody3D" groups=["Player"]] [node name="Sagittarius" type="CharacterBody3D" groups=["Player"]]
transform = Transform3D(0.9, 0, 0, 0, 0.9, 0, 0, 0, 0.9, 0, 0.559088, 0) transform = Transform3D(0.9, 0, 0, 0, 0.9, 0, 0, 0, 0.9, 0, 0.559088, 0)
collision_layer = 0 collision_layer = 2
collision_mask = 0
motion_mode = 1 motion_mode = 1
wall_min_slide_angle = 3.14159 wall_min_slide_angle = 3.14159
script = ExtResource("1_s1hsr") script = ExtResource("1_s1hsr")
@@ -617,15 +612,6 @@ _altFireProjectile = ExtResource("2_c3ma7")
[node name="Pivot" type="Node3D" parent="."] [node name="Pivot" type="Node3D" parent="."]
[node name="Area3D" type="Area3D" parent="Pivot"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.75657e-15, 0, 0)
collision_layer = 0
collision_mask = 0
[node name="CollisionShape3D" type="CollisionShape3D" parent="Pivot/Area3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.125003, 0.637504, 0.112771)
shape = SubResource("CapsuleShape3D_b4i03")
[node name="Plane" type="MeshInstance3D" parent="Pivot"] [node name="Plane" type="MeshInstance3D" parent="Pivot"]
transform = Transform3D(0.00858108, 0.00109693, 0.00129912, 0, 0.00668392, -0.00564368, -0.00170029, 0.00553605, 0.00655646, -0.0019175, 1.25172, -0.0537346) transform = Transform3D(0.00858108, 0.00109693, 0.00129912, 0, 0.00668392, -0.00564368, -0.00170029, 0.00553605, 0.00655646, -0.0019175, 1.25172, -0.0537346)
mesh = SubResource("ArrayMesh_28v15") mesh = SubResource("ArrayMesh_28v15")
@@ -634,5 +620,3 @@ skeleton = NodePath("")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."] [node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.125003, 0.637504, 0.112771) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.125003, 0.637504, 0.112771)
shape = SubResource("CylinderShape3D_wx62l") shape = SubResource("CylinderShape3D_wx62l")
[connection signal="body_entered" from="Pivot/Area3D" to="." method="OnHit"]

View File

@@ -1,20 +1,16 @@
[gd_scene load_steps=7 format=3 uid="uid://iempdafdn6ct"] [gd_scene load_steps=6 format=3 uid="uid://iempdafdn6ct"]
[ext_resource type="Script" path="res://Player/Base/Character.cs" id="1_gw30u"] [ext_resource type="Script" path="res://Player/Base/Character.cs" id="1_gw30u"]
[ext_resource type="PackedScene" uid="uid://dyhimd6qec8fu" path="res://Player/Scorpio/Models/ScorpioAnimated.tscn" id="2_pahgr"] [ext_resource type="PackedScene" uid="uid://dyhimd6qec8fu" path="res://Player/Scorpio/Models/ScorpioAnimated.tscn" id="2_pahgr"]
[ext_resource type="PackedScene" uid="uid://cxnek5wgpxbft" path="res://Player/Scorpio/Attacks/CutterShot.tscn" id="2_uayjr"] [ext_resource type="PackedScene" uid="uid://cxnek5wgpxbft" path="res://Player/Scorpio/Attacks/CutterShot.tscn" id="2_uayjr"]
[ext_resource type="PackedScene" uid="uid://cwt4rum7tvyvb" path="res://Player/Scorpio/Attacks/CutterShotAltFire.tscn" id="3_tw078"] [ext_resource type="PackedScene" uid="uid://cwt4rum7tvyvb" path="res://Player/Scorpio/Attacks/CutterShotAltFire.tscn" id="3_tw078"]
[sub_resource type="BoxShape3D" id="BoxShape3D_wqp0e"]
size = Vector3(0.822782, 0.881451, 0.80108)
[sub_resource type="BoxShape3D" id="BoxShape3D_f8aaj"] [sub_resource type="BoxShape3D" id="BoxShape3D_f8aaj"]
size = Vector3(0.822782, 0.853857, 0.80108) size = Vector3(0.8, 3, 0.8)
[node name="Scorpio" type="CharacterBody3D" groups=["Player"]] [node name="Scorpio" type="CharacterBody3D" groups=["Player"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.55696, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.55696, 0)
collision_layer = 0 collision_layer = 2
collision_mask = 0
motion_mode = 1 motion_mode = 1
slide_on_ceiling = false slide_on_ceiling = false
script = ExtResource("1_gw30u") script = ExtResource("1_gw30u")
@@ -24,17 +20,8 @@ _altFireProjectile = ExtResource("3_tw078")
[node name="Pivot" type="Node3D" parent="."] [node name="Pivot" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.496155, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.496155, 0)
[node name="Area3D" type="Area3D" parent="Pivot"]
collision_layer = 0
collision_mask = 0
[node name="CollisionShape3D" type="CollisionShape3D" parent="Pivot/Area3D"]
shape = SubResource("BoxShape3D_wqp0e")
[node name="scoprion" parent="Pivot" instance=ExtResource("2_pahgr")] [node name="scoprion" parent="Pivot" instance=ExtResource("2_pahgr")]
[node name="CollisionShape3D" type="CollisionShape3D" parent="."] [node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.506071, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.506071, 0)
shape = SubResource("BoxShape3D_f8aaj") shape = SubResource("BoxShape3D_f8aaj")
[connection signal="body_entered" from="Pivot/Area3D" to="." method="OnHit"]

View File

@@ -123,6 +123,7 @@ p2_altfire={
[layer_names] [layer_names]
3d_physics/layer_1="LevelGeometry" 3d_physics/layer_1="LevelGeometry"
3d_physics/layer_2="EnemyProjectile"
[physics] [physics]