fn config() { let config = SceneConfig(); config.show_starfield(true); config.show_phys(true); return config } fn init(state) { let ring = SpriteBuilder( "ring", "ui::status", Rect( -5.0, -5.0, 100.0, 100.0, SpriteAnchor::NorthEast, SpriteAnchor::NorthEast ) ); let shield = RadialBuilder( "shield", 2.5, Color(0.3, 0.6, 0.8, 1.0), Rect( -9.5, -9.5, 91.0, 91.0, SpriteAnchor::NorthEast, SpriteAnchor::NorthEast ) ); shield.set_progress(0.2); let hull = RadialBuilder( "hull", 2.5, Color(0.8, 0.7, 0.5, 1.0), Rect( -13.5, -13.5, 83.0, 83.0, SpriteAnchor::NorthEast, SpriteAnchor::NorthEast ) ); hull.set_progress(0.4); return [ ring, shield, hull ]; } fn event(state, event) { if type_of(event) == "PlayerShipStateEvent" { if state.player_ship().is_landed() { return SceneAction::GoTo("landed"); } return; } }