class GateCompleted : Gate { override fun myTurn() { if (PlayDirector.instance.valuables == 0) { open() replaceAction( null ) } } override fun enter() { if (open) { val tester = PlayDirector.instance.tester if ( tester != null ) { tester.testsPending-- } else { val preferences = Game.instance.preferences.node( "completed" ) preferences.putBoolean( Game.instance.sceneName.replace( '/', '.' ), true ) super.enter() } } } }