class Bullet : AbstractRole { @CostumeAttribute var speed = 10.0 var velocity = Vector2() override fun tick() { val play = Play.instance actor.position += velocity velocity += play.shipGravity val deadly = play.overlappingSomethingDeadly( actor ) if (deadly != null) { val role = deadly.role if (role is DoorButton) { (role as DoorButton).hit() } actor.event( "ricochet" ) actor.die() } } }