void CheckFiring() { if (!IsFiring || IsReloading || CurAmmo <= 0 || NextThink > 0.0) { return; } Vector3 from = CameraNode.GlobalTransform.origin; Vector3 to = from + ((-CameraNode.GlobalTransform.basis[2]).normalized() * 100.0f); ViewModel.SetWpnAnimation("shoot", true); CurAmmo = Mathf.min(Mathf.max(CurAmmo - 1, 0), MaxAmmo); NextThink = 1.0f / 10.0f; if (FiringRaycast.IsColliding()) { Godot.Object collider = FiringRaycast.GetCollider(); GD.print("Collider: ", collider.GetClass()); } }