diff --git a/resources/Schema/Entities/NewMapWSpectatorCam.xml b/resources/Schema/Entities/NewMapWSpectatorCam.xml
index 456bee0e..a655bef3 100644
--- a/resources/Schema/Entities/NewMapWSpectatorCam.xml
+++ b/resources/Schema/Entities/NewMapWSpectatorCam.xml
@@ -23,6 +23,16 @@
+
+
+
+
+ Models/Props/Highground1.mesh
+
+
+
+
+
@@ -77,16 +87,6 @@
-
-
-
-
- Models/Props/Highground1.mesh
-
-
-
-
-
@@ -1843,6 +1843,954 @@
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridge1Blue.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/WoodenBridge.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/WoodenBridge.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/WoodenBridge.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridge1Blue.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridge1Blue.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Pillars/SciFiBridgePillar1.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridge1Red.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/WoodenBridge.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridge1Red.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridgeDefense.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Pillars/SciFiBridgePillar1.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Bridges/SciFiBridge1Red.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/SpecialRoot.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/SpecialRoot.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/TreeLog.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/SpecialRoot.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Flora/AliveBush.mesh
+ true
+
+
+
+
+
+
+
+
+
+
+
@@ -3281,34 +4229,6 @@
-
-
-
-
- Models/Props/Stones/AssaultHolder.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/AssaultHolder.mesh
-
-
-
-
-
-
-
-
-
@@ -3391,6 +4311,34 @@
+
+
+
+
+ Models/Props/Stones/AssaultHolder.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/AssaultHolder.mesh
+
+
+
+
+
+
+
+
+
@@ -3425,8 +4373,8 @@
Models/Props/Stones/AssaultHolder.mesh
-
-
+
+
@@ -3448,959 +4396,24 @@
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/SpecialRoot.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/TreeLog.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/SpecialRoot.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/SpecialRoot.mesh
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Flora/AliveBush.mesh
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Pillars/SciFiBridgePillar1.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridge1Blue.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridge1Red.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/WoodenBridge.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/WoodenBridge.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/WoodenBridge.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridge1Red.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridge1Blue.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridgeDefense.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Pillars/SciFiBridgePillar1.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridge1Blue.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/SciFiBridge1Red.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Bridges/WoodenBridge.mesh
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+ Models/Props/SciFiHolder1.mesh
+
+
+
+
+
+
+
+
@@ -4479,19 +4492,6 @@
-
-
-
-
- Models/Props/SciFiHolder1.mesh
-
-
-
-
-
-
-
-
@@ -4512,74 +4512,6 @@
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalBlue.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalRed.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalBlue.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalBlue.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalRed.mesh
-
-
-
-
-
-
-
-
@@ -4594,19 +4526,6 @@
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalRed.mesh
-
-
-
-
-
-
-
-
@@ -4614,78 +4533,8 @@
Models/Props/Stones/ShinyStoneCrystalBlue.mesh
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalBlue.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalRed.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalRed.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalRed.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
- Models/Props/Stones/ShinyStoneCrystalBlue.mesh
-
-
-
-
+
+
@@ -4711,8 +4560,35 @@
Models/Props/Stones/ShinyStoneCrystalBlue.mesh
-
-
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalRed.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalRed.mesh
+
+
+
+
@@ -4732,6 +4608,130 @@
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalRed.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalBlue.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalBlue.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalRed.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalRed.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalBlue.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalRed.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalBlue.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Models/Props/Stones/ShinyStoneCrystalBlue.mesh
+
+
+
+
+
+
+
+
+
@@ -4750,6 +4750,76 @@
+
+
+
+
+
+
+
+
+
+ Schema/Entities/Player.xml
+
+
+
+
+
+
+
+
+
+
+ Models/Characters/Assault/AssaultTPose.mesh
+ false
+
+
+
+
+
+
+
+
+
+
+
+ Models/Characters/Assault/AssaultTPose.mesh
+ false
+
+
+
+
+
+
+
+
+
+
+
+ Models/Characters/Assault/AssaultTPose.mesh
+ false
+
+
+
+
+
+
+
+
+
+
+
+ Models/Characters/Assault/AssaultTPose.mesh
+ false
+
+
+
+
+
+
+
+
+
@@ -4947,6 +5017,19 @@
+
+
+
+
+ Models/Characters/Assault/AssaultTPose.mesh
+ false
+
+
+
+
+
+
+
@@ -4973,19 +5056,6 @@
-
-
-
-
- Models/Characters/Assault/AssaultTPose.mesh
- false
-
-
-
-
-
-
-
@@ -5006,28 +5076,6 @@
-
-
-
- 1
-
-
-
-
-
-
-
-
-
-
- 10
-
-
-
-
-
-
-
@@ -5041,10 +5089,23 @@
-
- 1
-
-
+
+ 10
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
+
+
@@ -5077,11 +5138,20 @@
10
-
+
+
+
+
+ 1
+
+
+
+
+
@@ -5101,8 +5171,8 @@
Models/Props/PickUps/AmmoPickUp.mesh
-
-
+
+
@@ -5120,46 +5190,8 @@
Models/Props/PickUps/AmmoPickUp.mesh
-
-
-
-
-
-
-
-
-
-
-
-
- 0.10000000149011612
-
-
-
- Models/Props/PickUps/HealthPickUp.mesh
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 0.10000000149011612
-
-
-
- Models/Props/PickUps/HealthPickUp.mesh
-
-
-
-
+
+
@@ -5178,7 +5210,64 @@
-
+
+
+
+
+
+
+
+
+
+
+
+ 0.10000000149011612
+
+
+
+ Models/Props/PickUps/HealthPickUp.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0.10000000149011612
+
+
+
+ Models/Props/PickUps/AmmoPickUp.mesh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0.10000000149011612
+
+
+
+ Models/Props/PickUps/HealthPickUp.mesh
+
+
+
+
@@ -5197,26 +5286,7 @@
-
-
-
-
-
-
-
-
-
-
-
- 0.10000000149011612
-
-
-
- Models/Props/PickUps/AmmoPickUp.mesh
-
-
-
-
+
@@ -5235,7 +5305,7 @@
-
+
@@ -5243,76 +5313,6 @@
-
-
-
-
-
-
-
-
-
- Schema/Entities/Player.xml
-
-
-
-
-
-
-
-
-
-
- Models/Characters/Assault/AssaultTPose.mesh
- false
-
-
-
-
-
-
-
-
-
-
-
- Models/Characters/Assault/AssaultTPose.mesh
- false
-
-
-
-
-
-
-
-
-
-
-
- Models/Characters/Assault/AssaultTPose.mesh
- false
-
-
-
-
-
-
-
-
-
-
-
- Models/Characters/Assault/AssaultTPose.mesh
- false
-
-
-
-
-
-
-
-
-
@@ -5321,6 +5321,7 @@
+
@@ -5345,41 +5346,27 @@
-
-
-
- Pick Class
- Fonts/DroidSans.ttf,64
-
-
-
-
-
-
-
-
-
-
+
- Textures/Icons/Classes/Assault-01.png
+ Textures/Icons/Classes/Defender-01.png
PickClass
- 1
+ 2
-
+
-
+
- Assault
+ Defender
Fonts/DroidSans.ttf,64
@@ -5425,27 +5412,27 @@
-
+
- Textures/Icons/Classes/Defender-01.png
+ Textures/Icons/Classes/Assault-01.png
PickClass
- 2
+ 1
-
+
-
+
- Defender
+ Assault
Fonts/DroidSans.ttf,64
@@ -5458,6 +5445,66 @@
+
+
+
+ Pick Class
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Textures/Core/UnitHexagon.png
+
+
+
+
+ SwapToTeamPick
+ 1
+
+
+
+
+
+
+
+
+
+
+ Change
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+ Team
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
@@ -5475,6 +5522,20 @@
+
+
+
+ Pick Team
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
@@ -5526,7 +5587,7 @@
-
+
Red
@@ -5574,19 +5635,54 @@
-
+
-
- Pick Team
- Fonts/DroidSans.ttf,64
-
-
+
+
+ Textures/Core/UnitHexagon.png
+
+
+ false
+
+
+ SwapToClassPick
+ 1
+
-
-
+
+
-
+
+
+
+
+ Change
+ Fonts/DroidSans.ttf,64
+ false
+
+
+
+
+
+
+
+
+
+
+
+ Class
+ Fonts/DroidSans.ttf,64
+ false
+
+
+
+
+
+
+
+
+
@@ -5605,6 +5701,20 @@
+
+
+
+ 1
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
@@ -5618,10 +5728,10 @@
Textures/Core/UnitHexagon.png
-
+
-
+
@@ -5631,7 +5741,7 @@
- 4
+ 3
Textures/Core/UnitHexagon_Rotated.png
@@ -5652,10 +5762,10 @@
Textures/Core/UnitHexagon.png
-
+
-
+
@@ -5665,7 +5775,7 @@
- 3
+ 4
Textures/Core/UnitHexagon_Rotated.png
@@ -5715,38 +5825,6 @@
-
-
-
- Textures/Core/UnitHexagon.png
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Textures/Core/UnitHexagon_Rotated.png
-
-
-
-
-
-
-
-
-
-
-
-
@@ -5782,21 +5860,131 @@
+
+
+
+ Textures/Core/UnitHexagon.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Textures/Core/UnitHexagon_Rotated.png
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
- 16
- Fonts/DroidSans.ttf,64
-
-
+
+
+ Textures/Core/UnitHexagon.png
+
+
+
+
+ SwapToTeamPick
+ 1
+
-
-
+
+
-
+
+
+
+
+ Change
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+ Team
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Textures/Core/UnitHexagon.png
+
+
+
+
+ SwapToClassPick
+ 1
+
+
+
+
+
+
+
+
+
+
+ Change
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+ Class
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
diff --git a/resources/Schema/Entities/OverwatchCamera.xml b/resources/Schema/Entities/OverwatchCamera.xml
index 55e9099c..075e57e2 100644
--- a/resources/Schema/Entities/OverwatchCamera.xml
+++ b/resources/Schema/Entities/OverwatchCamera.xml
@@ -8,6 +8,7 @@
+
@@ -33,19 +34,38 @@
-
+
-
- Pick Class
- Fonts/DroidSans.ttf,64
-
-
+
+
+ Textures/Icons/Classes/Sniper-01.png
+
+
+
+ PickClass
+ 3
+
-
-
+
+
-
+
+
+
+
+ Sniper
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
@@ -80,39 +100,6 @@
-
-
-
-
- Textures/Icons/Classes/Sniper-01.png
-
-
-
- PickClass
- 3
-
-
-
-
-
-
-
-
-
-
- Sniper
- Fonts/DroidSans.ttf,64
-
-
-
-
-
-
-
-
-
-
-
@@ -146,6 +133,66 @@
+
+
+
+ Pick Class
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Textures/Core/UnitHexagon.png
+
+
+
+
+ SwapToTeamPick
+ 1
+
+
+
+
+
+
+
+
+
+
+ Change
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+ Team
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
@@ -163,6 +210,20 @@
+
+
+
+ Pick Team
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
@@ -214,7 +275,7 @@
-
+
Red
@@ -262,19 +323,54 @@
-
+
-
- Pick Team
- Fonts/DroidSans.ttf,64
-
-
+
+
+ Textures/Core/UnitHexagon.png
+
+
+ false
+
+
+ SwapToClassPick
+ 1
+
-
-
+
+
-
+
+
+
+
+ Change
+ Fonts/DroidSans.ttf,64
+ false
+
+
+
+
+
+
+
+
+
+
+
+ Class
+ Fonts/DroidSans.ttf,64
+ false
+
+
+
+
+
+
+
+
+
@@ -293,6 +389,20 @@
+
+
+
+ 15
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
@@ -306,10 +416,10 @@
Textures/Core/UnitHexagon.png
-
+
-
+
@@ -319,7 +429,7 @@
- 4
+ 3
Textures/Core/UnitHexagon_Rotated.png
@@ -340,10 +450,10 @@
Textures/Core/UnitHexagon.png
-
+
-
+
@@ -353,7 +463,7 @@
- 3
+ 4
Textures/Core/UnitHexagon_Rotated.png
@@ -403,38 +513,6 @@
-
-
-
- Textures/Core/UnitHexagon.png
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Textures/Core/UnitHexagon_Rotated.png
-
-
-
-
-
-
-
-
-
-
-
-
@@ -470,21 +548,131 @@
+
+
+
+ Textures/Core/UnitHexagon.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Textures/Core/UnitHexagon_Rotated.png
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
- 16
- Fonts/DroidSans.ttf,64
-
-
+
+
+ Textures/Core/UnitHexagon.png
+
+
+
+
+ SwapToTeamPick
+ 1
+
-
-
+
+
-
+
+
+
+
+ Change
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+ Team
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Textures/Core/UnitHexagon.png
+
+
+
+
+ SwapToClassPick
+ 1
+
+
+
+
+
+
+
+
+
+
+ Change
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
+
+
+ Class
+ Fonts/DroidSans.ttf,64
+
+
+
+
+
+
+
+
+
diff --git a/src/Game/Systems/SpectatorCameraSystem.cpp b/src/Game/Systems/SpectatorCameraSystem.cpp
index 58f25155..60b82b0d 100644
--- a/src/Game/Systems/SpectatorCameraSystem.cpp
+++ b/src/Game/Systems/SpectatorCameraSystem.cpp
@@ -60,6 +60,25 @@ bool SpectatorCameraSystem::OnInputCommand(const Events::InputCommand& e)
EntityWrapper spectatorCam = m_World->GetFirstEntityByName(camName);
// Set the camera as active, if it exists.
if (spectatorCam.Valid() && spectatorCam.HasComponent("Camera")) {
+ // Set the class pick button visible if a blue or red team is picked, else invisible.
+ EntityWrapper HUD;
+ if (camName == "SpectatorCamera") {
+ HUD = spectatorCam.FirstChildByName("SpectatorHUD");
+ } else if (camName == "PickTeamCamera") {
+ HUD = spectatorCam.FirstChildByName("PickTeamHUD");
+ }
+ // If we are at the class pick already, or if HUD is invalid for any other reason, do nothing.
+ if (HUD.Valid()) {
+ EntityWrapper toClassButton = spectatorCam.FirstChildByName("ToClassPick");
+ if (toClassButton.Valid()) {
+ // Set ClassButton as invisible if spectator, else visible.
+ bool visible = m_PickedTeam != 1; // TODO: 1 Signifies spectator.
+ toClassButton["Sprite"]["Visible"] = visible;
+ for (auto& child : toClassButton.ChildrenWithComponent("Text")) {
+ child["Text"]["Visible"] = visible;
+ }
+ }
+ }
Events::SetCamera eSetCamera;
eSetCamera.CameraEntity = spectatorCam;
m_EventBroker->Publish(eSetCamera);