diff --git a/resources/Schema/Entities/NewMapWSpectatorCam.xml b/resources/Schema/Entities/NewMapWSpectatorCam.xml index 2305c008..fc4dd9a1 100644 --- a/resources/Schema/Entities/NewMapWSpectatorCam.xml +++ b/resources/Schema/Entities/NewMapWSpectatorCam.xml @@ -23,6 +23,18 @@ + + + + + Models/Props/Highground1.mesh + + + + + + + @@ -75,18 +87,6 @@ - - - - - Models/Props/Highground1.mesh - - - - - - - @@ -2843,6 +2843,178 @@ + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + @@ -3229,6 +3401,125 @@ + + + + + Models/Props/Walls/MediumWall1.mesh + + + + + + + + + + + + Models/Props/Walls/MediumWall1.mesh + + + + + + + + + + + + Models/Props/Walls/MediumWall1.mesh + + + + + + + + + + + + + + Models/Props/Pillars/SciFiBridgePillar1.mesh + + + + + + + + + + + + Models/Core/UnitCube.mesh + + + + + + + + + + + + + + Models/Core/UnitPlane.mesh + + true + + + + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + + + + Models/Props/Pillars/SciFiBridgePillar1.mesh + + + + + + + + + @@ -3283,96 +3574,6 @@ - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - - - - Models/Props/Pillars/SciFiBridgePillar1.mesh - - - - - - - - - - - - Models/Core/UnitCube.mesh - - - - - - - - - - - - - - - Models/Props/Walls/MediumWall1.mesh - - - - - - - - - - - - Models/Props/Walls/MediumWall1.mesh - - - - - - - - - - - - Models/Props/Walls/MediumWall1.mesh - - - - - - - - - @@ -3441,21 +3642,6 @@ - - - - Models/Core/UnitPlane.mesh - - true - - - - - - - - - @@ -3499,20 +3685,6 @@ - - - - - Models/Props/Pillars/SciFiBridgePillar1.mesh - - - - - - - - - @@ -3520,6 +3692,35 @@ + + + + + Models/Props/Flora/AliveBush.mesh + true + + + + + + + + + + + + + Models/Props/Flora/AliveBush.mesh + true + + + + + + + + + @@ -3533,119 +3734,6 @@ - - - - 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/TreeLog.mesh - - - - - - - - - - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - - - @@ -3664,7 +3752,7 @@ true - + @@ -3676,7 +3764,7 @@ true - + @@ -3695,57 +3783,6 @@ - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - - - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - @@ -3757,18 +3794,6 @@ - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - @@ -3788,7 +3813,7 @@ true - + @@ -3800,7 +3825,19 @@ true - + + + + + + + + + Models/Props/Flora/AliveBush.mesh + true + + + @@ -3826,7 +3863,7 @@ true - + @@ -3837,11 +3874,37 @@ true - + + + + + Models/Props/Flora/AliveBush.mesh + true + + + + + + + + + + + + + + Models/Props/Flora/AliveBush.mesh + true + + + + + + @@ -3854,6 +3917,18 @@ + + + + Models/Props/Flora/AliveBush.mesh + true + + + + + + + @@ -3868,6 +3943,20 @@ + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + @@ -3889,9 +3978,37 @@ true - - - + + + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + + + Models/Props/Flora/AliveBush.mesh + true + + + + + @@ -3931,9 +4048,135 @@ 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/TreeLog.mesh + + + + + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + + Models/Props/Flora/AliveBush.mesh + true + + + + + @@ -3952,20 +4195,6 @@ - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - @@ -3980,20 +4209,6 @@ - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - - - @@ -4007,20 +4222,6 @@ - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - - - @@ -4036,21 +4237,6 @@ - - - - - Models/Props/Flora/AliveBush.mesh - true - - - - - - - - - @@ -4066,20 +4252,6 @@ - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - @@ -4107,36 +4279,8 @@ Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - + + @@ -4173,8 +4317,50 @@ Models/Props/PickUps/PickUpHolder.mesh - - + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + @@ -4194,20 +4380,6 @@ - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - @@ -4224,183 +4396,24 @@ - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - + + + + + Models/Props/SciFiHolder1.mesh + + + + + + + + @@ -4479,19 +4492,6 @@ - - - - - Models/Props/SciFiHolder1.mesh - - - - - - - - @@ -4519,13 +4519,53 @@ Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - + + + + + + + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + @@ -4547,8 +4587,8 @@ Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - + + @@ -4561,75 +4601,8 @@ 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 - - - - + + @@ -4656,8 +4629,8 @@ Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - + + @@ -4670,8 +4643,63 @@ Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - + + + + + + + + + + + + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + @@ -4691,20 +4719,6 @@ - - - - - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - @@ -4718,20 +4732,6 @@ - - - - - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - @@ -4750,6 +4750,159 @@ + + + + + + + + + + Schema/Entities/PlayerRed.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 + + + + + + + + + + + + + + + + + + 10 + + + + + + + + + + + 1 + + + + + + + + + 1 + + + + + + + + + + + 10 + + + + + + + + + + 10 + + + + + + + + + + + + + 10 + + + + + + + + + + + 10 + + + + + + + + + @@ -4757,18 +4910,37 @@ - + 0.10000000149011612 - Models/Props/PickUps/AmmoPickUp.mesh + Models/Props/PickUps/HealthPickUp.mesh - - + + + + + + + + + + + + + 0.10000000149011612 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + @@ -4805,8 +4977,8 @@ Models/Props/PickUps/AmmoPickUp.mesh - - + + @@ -4814,18 +4986,37 @@ - + 0.10000000149011612 - Models/Props/PickUps/HealthPickUp.mesh + Models/Props/PickUps/AmmoPickUp.mesh - - + + + + + + + + + + + + + 0.10000000149011612 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + @@ -4850,25 +5041,6 @@ - - - - - - 0.10000000149011612 - - - - Models/Props/PickUps/AmmoPickUp.mesh - - - - - - - - - @@ -4888,25 +5060,6 @@ - - - - - - 0.10000000149011612 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - - - - - @@ -4946,7 +5099,7 @@ false - + @@ -4959,7 +5112,7 @@ false - + @@ -4979,89 +5132,6 @@ - - - - - - - - - 10 - - - - - - - - - - 10 - - - - - - - - - - - - - 1 - - - - - - - - - 10 - - - - - - - - - - - 10 - - - - - - - - - - - 10 - - - - - - - - - - - 1 - - - - - - - - - @@ -5071,28 +5141,35 @@ - Models/Props/CapturePoint/CapturePointNeutral.mesh + Models/Props/CapturePoint/CapturePointBlue.mesh - + - 2 + + + + 4 - + + + + + Models/Core/UnitCylinder.mesh - + true - - + + @@ -5137,6 +5214,39 @@ + + + + + Models/Props/CapturePoint/CapturePointNeutral.mesh + + + + + + + + + + 1.5498908015879351 + 1 + + + + + Models/Core/UnitCylinder.mesh + + true + + + + + + + + + + @@ -5176,15 +5286,14 @@ Models/Props/CapturePoint/CapturePointNeutral.mesh - + - 1.5498908015879351 - 1 + 2 @@ -5194,123 +5303,14 @@ true - - + + - - - - - Models/Props/CapturePoint/CapturePointBlue.mesh - - - - - - - - - - - - - 4 - - - - - - - - - Models/Core/UnitCylinder.mesh - - true - - - - - - - - - - - - - - - - - - - - - - Schema/Entities/PlayerRed.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 - - - - - - - @@ -5332,6 +5332,136 @@ + + + + + + + + + + + + + + + + + + Textures/Core/UnitHexagon.png + + + + + PickTeam + 1 + + + + + + + + + + + Spectator + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Textures/Core/UnitHexagon.png + + + + + PickTeam + 2 + + + + + + + + + + + Red + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Textures/Core/UnitHexagon.png + + + + + PickTeam + 3 + + + + + + + + + + + Blue + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + Pick Team + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + @@ -5358,10 +5488,10 @@ Textures/Core/UnitHexagon.png - + - + @@ -5371,7 +5501,7 @@ - 2 + 4 Textures/Core/UnitHexagon_Rotated.png @@ -5426,10 +5556,10 @@ Textures/Core/UnitHexagon.png - + - + @@ -5439,7 +5569,7 @@ - 4 + 2 Textures/Core/UnitHexagon_Rotated.png @@ -5455,6 +5585,38 @@ + + + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + @@ -5490,38 +5652,6 @@ - - - - Textures/Core/UnitHexagon.png - - - - - - - - - - - - - - - - Textures/Core/UnitHexagon_Rotated.png - - - - - - - - - - - - @@ -5551,28 +5681,10 @@ - + - - - - - Textures/Core/UnitHexagon.png - - - - PickClass - 2 - - - - - - - - @@ -5585,11 +5697,59 @@ 1 - + - + + + + + Assault + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + Textures/Core/UnitHexagon.png + + + + PickClass + 2 + + + + + + + + + + + Defender + Fonts/DroidSans.ttf,64 + + + + + + + + + + @@ -5603,81 +5763,37 @@ 3 - + - + + + + + Sniper + Fonts/DroidSans.ttf,64 + + + + + + + + + + - - - - - - - - - - - - - - - - - - + - - - Textures/Core/UnitHexagon.png - - - - - PickTeam - 2 - + + Pick Class + Fonts/DroidSans.ttf,64 + + - - - - - - - - - - - Textures/Core/UnitHexagon.png - - - - - PickTeam - 3 - - - - - - - - - - - - - Textures/Core/UnitHexagon.png - - - - PickTeam - 1 - - - - + + diff --git a/resources/Schema/Entities/OverwatchCamera.xml b/resources/Schema/Entities/OverwatchCamera.xml index a6ef1f74..ee3c1cb1 100644 --- a/resources/Schema/Entities/OverwatchCamera.xml +++ b/resources/Schema/Entities/OverwatchCamera.xml @@ -20,6 +20,136 @@ + + + + + + + + + + + + + + + + + + Textures/Core/UnitHexagon.png + + + + + PickTeam + 1 + + + + + + + + + + + Spectator + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Textures/Core/UnitHexagon.png + + + + + PickTeam + 2 + + + + + + + + + + + Red + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Textures/Core/UnitHexagon.png + + + + + PickTeam + 3 + + + + + + + + + + + Blue + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + Pick Team + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + @@ -46,10 +176,10 @@ Textures/Core/UnitHexagon.png - + - + @@ -59,7 +189,7 @@ - 2 + 4 Textures/Core/UnitHexagon_Rotated.png @@ -114,10 +244,10 @@ Textures/Core/UnitHexagon.png - + - + @@ -127,7 +257,7 @@ - 4 + 2 Textures/Core/UnitHexagon_Rotated.png @@ -143,6 +273,38 @@ + + + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + @@ -178,38 +340,6 @@ - - - - Textures/Core/UnitHexagon.png - - - - - - - - - - - - - - - - Textures/Core/UnitHexagon_Rotated.png - - - - - - - - - - - - @@ -239,28 +369,10 @@ - + - - - - - Textures/Core/UnitHexagon.png - - - - PickClass - 2 - - - - - - - - @@ -273,11 +385,59 @@ 1 - + - + + + + + Assault + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + Textures/Core/UnitHexagon.png + + + + PickClass + 2 + + + + + + + + + + + Defender + Fonts/DroidSans.ttf,64 + + + + + + + + + + @@ -291,81 +451,37 @@ 3 - + - + + + + + Sniper + Fonts/DroidSans.ttf,64 + + + + + + + + + + - - - - - - - - - - - - - - - - - - + - - - Textures/Core/UnitHexagon.png - - - - - PickTeam - 2 - + + Pick Class + Fonts/DroidSans.ttf,64 + + - - - - - - - - - - - Textures/Core/UnitHexagon.png - - - - - PickTeam - 3 - - - - - - - - - - - - - Textures/Core/UnitHexagon.png - - - - PickTeam - 1 - - - - + + diff --git a/src/Game/Systems/PlayerSpawnSystem.cpp b/src/Game/Systems/PlayerSpawnSystem.cpp index 56ace14c..10632c0a 100644 --- a/src/Game/Systems/PlayerSpawnSystem.cpp +++ b/src/Game/Systems/PlayerSpawnSystem.cpp @@ -60,6 +60,13 @@ void PlayerSpawnSystem::Update(double dt) int numSpawnedPlayers = 0; for (auto it = m_SpawnRequests.begin(); it != m_SpawnRequests.end(); ++it) { + // TODO: -1 Signifies no class picked, enum here later? + // Increase num spawned players if they didn't pick class yet since it is valid + // but don't spawn anything, goto next spawnrequest. + if (it->Class == -1) { + ++numSpawnedPlayers; + break; + } for (auto& cPlayerSpawn : *playerSpawns) { EntityWrapper spawner(m_World, cPlayerSpawn.EntityID); if (!spawner.HasComponent("Spawner")) { @@ -70,11 +77,9 @@ void PlayerSpawnSystem::Update(double dt) if (spawner.HasComponent("Team")) { auto cSpawnerTeam = spawner["Team"]; if ((int)cSpawnerTeam["Team"] != it->Team) { - // Increase num spawned players if someone picks spectator or didn't - // pick a class yet, since it is valid + // Increase num spawned players if someone picks spectator since it is valid // but don't spawn anything, goto next spawnrequest. - // TODO: -1 Signifies no class picked, enum here later? - if (it->Class == -1 || it->Team == (int)cSpawnerTeam["Team"].Enum("Spectator")) { + if (it->Team == (int)cSpawnerTeam["Team"].Enum("Spectator")) { ++numSpawnedPlayers; break; } @@ -149,8 +154,10 @@ bool PlayerSpawnSystem::OnInputCommand(Events::InputCommand& e) // If player is in queue to spawn, then change their team affiliation or class in the request. if (e.Command == "PickTeam") { iter->Team = (ComponentInfo::EnumType)e.Value; + LOG_INFO("old request swap Team"); } else { iter->Class = (ComponentInfo::EnumType)e.Value; + LOG_INFO("old request swap Class"); } } else if (m_PlayerEntities.count(e.PlayerID) == 0 || !m_PlayerEntities[e.PlayerID].Valid()) { // If player is not in queue to spawn, then create a spawn request, @@ -160,9 +167,11 @@ bool PlayerSpawnSystem::OnInputCommand(Events::InputCommand& e) if (e.Command == "PickTeam") { req.Team = (ComponentInfo::EnumType)e.Value; req.Class = -1; // TODO: -1 Signifies no class picked, enum here later? + LOG_INFO("new request set Team"); } else { req.Team = 1; // TODO: 1 Signifies spectator, should probably have real enum here later. req.Class = (ComponentInfo::EnumType)e.Value; + LOG_INFO("new request set Class"); } m_SpawnRequests.push_back(req); } else {