extends Node var bulletsFiredTotal = 0 var bulletsMadeTotal = 0 var bulletArray = [] var bullet = preload("res://scenes/bullet.tscn") # Bullet factor - makes bullets func bulletFactory(): var mybullet if bulletArray.size()<4: print("new bullet at factory") mybullet = bullet.instantiate() mybullet.connect("hit", bulletHit) else: mybullet = bulletArray.pop_back() print("recycled bullet") bulletArray.push_front(mybullet) return mybullet # Order desk for bullets func makeBullet(position,speed): print("make a bullet") var newBullet = bulletFactory() owner.add_child(newBullet) newBullet.setSpeed(speed) newBullet.transform = position func bulletHit(bullet, body): print("tell game controller we hit something")