GODOT — Shoot Bullet

Sait Maraşlıoğlu
1 min readMay 2, 2020

# Example 1:

var Bullet = preload("res://Bullet.tscn")func _unhandled_input(event: InputEvent) -> void:
if event.is_action_pressed(“shoot”):
var b = Bullet.instance()
b.start($Position3D.global_transform)
get_parent().add_child(b)

Bullet Script

extends Areavar speed = 15
var velocity = Vector3()
func start(xform):
transform = xform
velocity = -transform.basis.z * speed

func _process(delta: float) -> void:
transform.origin += velocity * delta
func _on_Timer_timeout() -> void:
queue_free()
func _on_Bullet_body_entered(body: Node) -> void:
if body is StaticBody:
queue_free()

--

--