Remove UI multi cam setup
CI / build-and-test (pull_request) Failing after 56s
CI / production-build (pull_request) Failing after 1m34s

This commit is contained in:
2026-09-20 18:17:37 +02:00
parent 85236c4e0f
commit d342c9282c
4 changed files with 25 additions and 20 deletions
+1 -1
View File
@@ -241,7 +241,7 @@ pub fn copy_cursor_transform_to_token(
character_boxes: Query<(&CharacterBox, &ComputedNode, &UiGlobalTransform)>, character_boxes: Query<(&CharacterBox, &ComputedNode, &UiGlobalTransform)>,
match_config: Res<MenuMatchConfig>, match_config: Res<MenuMatchConfig>,
cursors: Query<&UiGlobalTransform, With<FGMenuCursor>>, cursors: Query<&UiGlobalTransform, With<FGMenuCursor>>,
cam: Single<&Camera, With<IsDefaultUiCamera>>, cam: Single<&Camera>,
ui_scale: Res<UiScale>, ui_scale: Res<UiScale>,
) -> Result { ) -> Result {
let camera = cam.into_inner(); let camera = cam.into_inner();
+1 -1
View File
@@ -181,7 +181,7 @@ pub fn cursor_input(
} }
pub fn update_cursor_transform( pub fn update_cursor_transform(
camera: Single<&Camera, With<IsDefaultUiCamera>>, camera: Single<&Camera>,
query: Query<(&mut Node, &PointerLocation), With<FGMenuCursor>>, query: Query<(&mut Node, &PointerLocation), With<FGMenuCursor>>,
ui_scale: Res<UiScale>, ui_scale: Res<UiScale>,
) { ) {
+13 -12
View File
@@ -25,6 +25,8 @@ pub mod style;
#[derive(Component, Clone, Default)] #[derive(Component, Clone, Default)]
pub struct MenuMarker {} pub struct MenuMarker {}
#[derive(Component, Clone, Default)]
pub struct MenuCameraMarker {}
pub struct MenuPlugin; pub struct MenuPlugin;
@@ -38,6 +40,7 @@ pub fn wrap_menu(menu: impl Scene) -> impl Scene {
bsn! { bsn! {
#MenuRoot #MenuRoot
MenuMarker MenuMarker
Transform
Node { Node {
width: percent(100), width: percent(100),
height: percent(100), height: percent(100),
@@ -46,6 +49,11 @@ pub fn wrap_menu(menu: impl Scene) -> impl Scene {
flex_direction: FlexDirection::Column, flex_direction: FlexDirection::Column,
} }
Children [ Children [
(
#MenuCamera
Camera
Camera2d
),
( (
#MenuContainer #MenuContainer
Node { Node {
@@ -65,15 +73,18 @@ pub fn wrap_menu(menu: impl Scene) -> impl Scene {
pub fn despawn_menu( pub fn despawn_menu(
existing_menu: Option<Single<Entity, With<MenuMarker>>>, existing_menu: Option<Single<Entity, With<MenuMarker>>>,
existing_menu_camera: Option<Single<Entity, With<MenuCameraMarker>>>,
mut commands: Commands, mut commands: Commands,
) { ) {
if let Some(entity) = existing_menu { if let Some(entity) = existing_menu {
commands commands
.entity(entity.into_inner()) .entity(entity.into_inner())
.remove::<Camera2d>()
.remove::<Camera>()
.despawn(); .despawn();
} }
if let Some(menu_cam) = existing_menu_camera {
commands.entity(*menu_cam).despawn();
}
} }
pub fn spawn_menu( pub fn spawn_menu(
@@ -84,8 +95,6 @@ pub fn spawn_menu(
if let Some(entity) = existing_menu { if let Some(entity) = existing_menu {
commands commands
.entity(entity.into_inner()) .entity(entity.into_inner())
.remove::<Camera2d>()
.remove::<Camera>()
.despawn(); .despawn();
} }
commands.queue_spawn_scene(wrap_menu(menu)); commands.queue_spawn_scene(wrap_menu(menu));
@@ -114,14 +123,6 @@ impl Plugin for MenuPlugin {
app.add_systems( app.add_systems(
OnEnter(AppState::MainMenu), OnEnter(AppState::MainMenu),
(build_menu::<MainMenu>, |mut commands: Commands| { (build_menu::<MainMenu>, |mut commands: Commands| {
commands.spawn((Camera2d, IsDefaultUiCamera));
commands.spawn((
Camera2d,
Camera {
order: 1,
..default()
},
));
}), }),
) )
.add_message::<character_select::PlayerSlotAssigned>() .add_message::<character_select::PlayerSlotAssigned>()
+10 -6
View File
@@ -7,14 +7,10 @@ use strum::IntoEnumIterator;
use strum_macros::EnumIter; use strum_macros::EnumIter;
use crate::{ use crate::{
AppState, AppState, game_settings::GameSettings, math::{int::FGi32, vec::FGVec2}, stage::{
game_settings::GameSettings,
math::vec::FGVec2,
stage::{
StagePoly, StagePoly,
line::{StageCollision, StagePolyLineSegmentType, StagePolyType}, line::{StageCollision, StagePolyLineSegmentType, StagePolyType},
}, }, texture_reference::TextureReference,
texture_reference::TextureReference,
}; };
use bevy::prelude::*; use bevy::prelude::*;
@@ -87,6 +83,14 @@ pub struct StageManifest {
pub icon: TextureReference, pub icon: TextureReference,
pub camera: StageCameraProfile, pub camera: StageCameraProfile,
pub polygons: Vec<StagePolyDefinition>, pub polygons: Vec<StagePolyDefinition>,
#[reflect(ignore)]
pub blast_zone_left: FGi32,
#[reflect(ignore)]
pub blast_zone_right: FGi32,
#[reflect(ignore)]
pub blast_zone_top: FGi32,
#[reflect(ignore)]
pub blast_zone_bottom: FGi32,
} }
#[derive(Resource)] #[derive(Resource)]