Oh, I just got it to work!
I changed it to:
if aimcast.get_collision_normal().dot(Vector3.UP) > 0.0000000000000000000001:
... Then the code you've said before.
But, now I have yet another problem... So sorry about how difficult this has become...
Whenever I shoot at a surface that isn't the floor while jumping, sometimes the bullet decal rotates incorrectly and is facing the same way it is in the bullet decal scene (Along -Z).
Here's the code:
if aimcast.is_colliding():
var target = aimcast.get_collider()
var b = b_decal.instance()
target.add_child(b)
if aimcast.get_collision_normal().dot(Vector3.UP) > 0.0000000000000000000001:
b.global_transform.origin = aimcast.get_collision_point()
var direction = aimcast.get_collision_point() + aimcast.get_collision_normal()
if b.global_transform.origin != direction:
b.look_at(direction, Vector3.UP)
Thanks for any help. Again... :)