class Info : Collectable { @Attribute( rows=5 ) var text = "" @Attribute var visible = true override fun begin() { super.begin() if ( ! visible ) { actor.hide() } } override fun rounded( direction : int ) = true override fun squashable( direction : int ) = !visible override fun isEmpty() = !visible override fun collected( movement : Movement ) { movement.item.speak( text, 4 ) } }