extends Node var bulletsFiredTotal := 0 var bulletsMadeTotal := 0 var bulletArray:Array = [] var bullet = preload("res://scenes/bullet.tscn") func bulletFactory(): print("Make a bullet at the factory") var mybullet # How many bullet have been made if bulletArray.size() < 4: # make a new bullet mybullet = bullet.instantiate() mybullet.connect("hit", onBulletHit) owner.add_child(mybullet) else: mybullet = bulletArray.pop_back() bulletArray.push_front(mybullet) bulletsMadeTotal += 1 return mybullet func onBulletHit(bullet, body): print("Scene Manager knows a bullet hit something") bullet.setSpeed(0) if body.is_in_group("shootable"): print("explode this thing") body.queue_free()