From 456759c6e4f89eee7b27e1bd1d43048c14f60802 Mon Sep 17 00:00:00 2001 From: Benjamin Kraft Date: Tue, 11 Apr 2023 12:49:25 +0200 Subject: [PATCH] player panels depend on dimensions class --- Assets/Scenes/Game.unity | 13 +++++++++++++ Assets/Scripts/GameUI.cs | 22 ++++++++++++++++++++++ Assets/Scripts/GameUI.cs.meta | 3 +++ Assets/UI Toolkit/game.uss | 1 - 4 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 Assets/Scripts/GameUI.cs create mode 100644 Assets/Scripts/GameUI.cs.meta diff --git a/Assets/Scenes/Game.unity b/Assets/Scenes/Game.unity index 0febd0c..15ca144 100644 --- a/Assets/Scenes/Game.unity +++ b/Assets/Scenes/Game.unity @@ -271,6 +271,7 @@ GameObject: m_Component: - component: {fileID: 656199026} - component: {fileID: 656199025} + - component: {fileID: 656199027} m_Layer: 5 m_Name: UI m_TagString: Untagged @@ -309,6 +310,18 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &656199027 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 656199024} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5dbef9373027473e89dc9baa2b24b443, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &948416250 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/GameUI.cs b/Assets/Scripts/GameUI.cs new file mode 100644 index 0000000..ffe78c7 --- /dev/null +++ b/Assets/Scripts/GameUI.cs @@ -0,0 +1,22 @@ +using System; +using System.Linq; +using UnityEngine; +using UnityEngine.UIElements; + +public class GameUI : MonoBehaviour { + + private UIDocument document; + private void OnEnable() { + document = GetComponent(); + PreparePlayerPanels(); + } + + void PreparePlayerPanels() { + var players = document.rootVisualElement.Children().Where(e => e.ClassListContains("player_panel")); + + float heightPercentage = Dimensions.Singleton.panelHeightPercentage; + + foreach (var playerPanel in players) + playerPanel.style.height = Length.Percent(heightPercentage); + } +} diff --git a/Assets/Scripts/GameUI.cs.meta b/Assets/Scripts/GameUI.cs.meta new file mode 100644 index 0000000..9e1cc92 --- /dev/null +++ b/Assets/Scripts/GameUI.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5dbef9373027473e89dc9baa2b24b443 +timeCreated: 1681209417 \ No newline at end of file diff --git a/Assets/UI Toolkit/game.uss b/Assets/UI Toolkit/game.uss index 114f3b3..6f46b65 100644 --- a/Assets/UI Toolkit/game.uss +++ b/Assets/UI Toolkit/game.uss @@ -1,5 +1,4 @@ .player_panel { width: 100%; - height: 15%; position: absolute; }