private void X_ModeChange(GameManager.MenuMode newMode) { if (newMode != GameManager.MenuMode.Spawn) { GetComponent <MeshRenderer>().material = _shadowMaterial; } }
private void X_MenuChanged(GameManager.MenuMode newMode) { // Root cachen var root = _UIRenderer.visualTree; // Je nach Modus Menues aktivieren switch (newMode) { case GameManager.MenuMode.Spawn: { // Hier nichts tun da noch nicht initialisiert! break; } case GameManager.MenuMode.Placement: { // Von Info zu Placement Panel wechseln root.Q("placement-mode-select").style.display = DisplayStyle.None; root.Q("placement-free-info").style.display = DisplayStyle.None; root.Q("placement-qr-info").style.display = DisplayStyle.None; root.Q("placement-panel").style.display = DisplayStyle.Flex; #if UNITY_IOS if (_session.subsystem is ARKitSessionSubsystem sessionSubsystem) { sessionSubsystem.SetCoachingActive(false, ARCoachingOverlayTransition.Instant); } #else root.Q("animation-area").style.display = DisplayStyle.None; #endif root.Q("desc-area").style.display = DisplayStyle.None; root.Q("hideSections-area").style.display = DisplayStyle.None; // Bewegung erlauben _canMove = true; break; } case GameManager.MenuMode.Interaction: { // Von Placement zu Interaction Panel wechseln root.Q("placement-panel").style.display = DisplayStyle.None; root.Q("options-panel").style.display = DisplayStyle.None; root.Q("interaction-panel").style.display = DisplayStyle.Flex; // Callbacks entfernen root.Q("move-up").UnregisterCallback(_moveStart); root.Q("move-up").UnregisterCallback(_moveStop); root.Q("move-down").UnregisterCallback(_moveStart); root.Q("move-down").UnregisterCallback(_moveStop); root.Q("move-right").UnregisterCallback(_moveStart); root.Q("move-right").UnregisterCallback(_moveStop); root.Q("move-left").UnregisterCallback(_moveStart); root.Q("move-left").UnregisterCallback(_moveStop); root.Q("scale-edit-slider").UnregisterCallback(_floatChange); root.Q("rotate-edit-slider").UnregisterCallback(_floatChange); // Bewegung stoppen _canMove = false; break; } } }