diff --git a/include/Engine/Collision/Collision.h b/include/Engine/Collision/Collision.h index 5431df4d..1fd24cc6 100644 --- a/include/Engine/Collision/Collision.h +++ b/include/Engine/Collision/Collision.h @@ -48,13 +48,13 @@ bool RayVsTriangle(const Ray& ray, bool trueOnNegativeDistance = false); //Return true if the ray hits any of the triangles in the model. Stops checking when a hit is detected. bool RayVsModel(const Ray& ray, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix); //Return true if the ray hits any of the triangles in the model. //Also returns the position of the intersection point. Will loop through all the whole model indices. bool RayVsModel(const Ray& ray, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix, glm::vec3& outHitPosition); @@ -62,7 +62,7 @@ bool RayVsModel(const Ray& ray, //Also returns the distance from the ray origin to the closest //intersection point, and the barycentric u,v-coordinates. Will loop through all the whole model indices. bool RayVsModel(const Ray& ray, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix, float& outDistance, @@ -70,7 +70,7 @@ bool RayVsModel(const Ray& ray, float& outVCoord); bool AABBvsTriangles(const AABB& box, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix, glm::vec3& boxVelocity, @@ -80,7 +80,7 @@ bool AABBvsTriangles(const AABB& box, //Detects collision, but does not resolve. bool AABBvsTriangles(const AABB& box, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix); @@ -92,7 +92,7 @@ enum Output }; //Detects intersection and containment. Output AABBvsTrianglesWContainment(const AABB& box, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix); diff --git a/include/Engine/Input/FirstPersonInputController.h b/include/Engine/Input/FirstPersonInputController.h index 67e7270e..777c0331 100644 --- a/include/Engine/Input/FirstPersonInputController.h +++ b/include/Engine/Input/FirstPersonInputController.h @@ -213,7 +213,6 @@ bool FirstPersonInputController::OnCommand(const Events::InputComm } } - EntityWrapper firstPersonModel = m_PlayerEntity.FirstChildByName("Hands"); if (firstPersonModel.Valid()) { if (val > 0) { // Walk/Run diff --git a/include/Engine/Network/Client.h b/include/Engine/Network/Client.h index f79feb8d..a4c2e229 100644 --- a/include/Engine/Network/Client.h +++ b/include/Engine/Network/Client.h @@ -36,6 +36,7 @@ #include "Network/ESearchForServers.h" #include "Network/EInterpolate.h" #include "Network/SnapshotFilter.h" +#include "Core/EWin.h" class Client : public Network { @@ -107,6 +108,7 @@ private: void parseAmmoPickup(Packet& packet); void parseRemoveWorld(Packet& packet); void parseKDEvent(Packet& packet); + void parseWin(Packet& packet); void InterpolateFields(Packet& packet, const ComponentInfo & componentInfo, const EntityID & entityID, const std::string & componentType); void parseSnapshot(Packet& packet); void identifyPacketLoss(); diff --git a/include/Engine/Network/MessageType.h b/include/Engine/Network/MessageType.h index 53821084..d69b468b 100644 --- a/include/Engine/Network/MessageType.h +++ b/include/Engine/Network/MessageType.h @@ -25,6 +25,7 @@ enum class MessageType AmmoPickup, RemoveWorld, KD, + Win, Invalid }; diff --git a/include/Engine/Rendering/Model.h b/include/Engine/Rendering/Model.h index 4c63b922..acdf64db 100644 --- a/include/Engine/Rendering/Model.h +++ b/include/Engine/Rendering/Model.h @@ -16,15 +16,18 @@ private: public: ~Model(); - const std::vector& MaterialGroups() const { return m_RawModel->m_Materials; } - const glm::mat4& Matrix() const { return m_RawModel->m_Matrix; } - const RawModel::Vertex* Vertices() const { return m_RawModel->Vertices(); } - unsigned int NumberOfVertices() const { return m_RawModel->NumVertices(); } + const std::vector& MaterialGroups() const { return m_Materials; } + unsigned int NumberOfVertices() const { return m_Vertices.size(); } + const AABB& Box() const { return m_Box; } - bool IsSkinned() const { return m_RawModel->IsSkinned(); } + bool IsSkinned() const { return m_IsSkinned; } GLuint VAO; GLuint ElementBuffer; - RawModel* m_RawModel; + //RawModel* m_RawModel; + + Skeleton* m_Skeleton = nullptr; + std::vector m_Vertices; + std::vector m_Indices; private: AABB m_Box; @@ -34,6 +37,9 @@ private: GLuint TangentNormalsBuffer; GLuint BiTangentNormalsBuffer; GLuint TextureCoordBuffer; + + std::vector m_Materials; + bool m_IsSkinned; }; #endif diff --git a/include/Engine/Rendering/ModelJob.h b/include/Engine/Rendering/ModelJob.h index 4821a222..86b89ad6 100644 --- a/include/Engine/Rendering/ModelJob.h +++ b/include/Engine/Rendering/ModelJob.h @@ -110,7 +110,7 @@ struct ModelJob : RenderJob } if (model->IsSkinned()) { - Skeleton = Model->m_RawModel->m_Skeleton; + Skeleton = Model->m_Skeleton; if (Skeleton != nullptr) { EntityWrapper entityWrapper = EntityWrapper(world, modelComponent.EntityID); diff --git a/include/Engine/Rendering/RawModelCustom.h b/include/Engine/Rendering/RawModelCustom.h index f9fd18ef..12e54d3f 100644 --- a/include/Engine/Rendering/RawModelCustom.h +++ b/include/Engine/Rendering/RawModelCustom.h @@ -13,6 +13,7 @@ #include +#include #include "../Common.h" #include "../GLM.h" #include "../Core/ResourceManager.h" @@ -20,22 +21,17 @@ #include "Skeleton.h" #include "ShaderProgram.h" -#include "boost\endian\buffers.hpp" - - - class RawModelCustom : public Resource { friend class ResourceManager; - + friend class Model; protected: RawModelCustom(std::string fileName); public: ~RawModelCustom(); - - struct Vertex - { + + struct RenderVertex { glm::vec3 Position; glm::vec3 Normal; glm::vec3 Tangent; @@ -43,7 +39,7 @@ public: glm::vec2 TextureCoords; }; - struct SkinedVertex : public Vertex { + struct SkinedVertex : public RenderVertex { glm::vec4 BoneIndices; glm::vec4 BoneWeights; }; @@ -91,7 +87,7 @@ public: unsigned int ShaderID = 0; }; - const Vertex* Vertices() const { + const RenderVertex* Vertices() const { if (hasSkin) { return m_SkinedVertices.data(); } else { @@ -99,16 +95,16 @@ public: } }; - unsigned int VertexSize() const { + unsigned int VertexSize() const { if (hasSkin) { return sizeof(SkinedVertex); } else { - return sizeof(Vertex); + return sizeof(RenderVertex); } }; - unsigned int NumVertices() const { + size_t NumVertices() const { if (hasSkin) { return m_SkinedVertices.size(); } else { @@ -116,17 +112,39 @@ public: } }; + const std::vector& Indices() const { + return m_Indices; + } + bool IsSkinned() const { return hasSkin; }; + const std::vector& CollisionVertices(); + + size_t NumCollisionVertices() const { + return m_CollisionVertices.size(); + }; + + const std::vector& CollisionIndices() const { + if (hasCollisionMesh) { + return m_CollisionIndices; + } else { + return m_Indices; + } + }; + std::vector m_Materials; - std::vector m_Indices; + Skeleton* m_Skeleton = nullptr; glm::mat4 m_Matrix; private: bool hasSkin; - std::vector m_Vertices; + bool hasCollisionMesh = false; + std::vector m_Indices; + std::vector m_CollisionIndices; + std::vector m_CollisionVertices; + std::vector m_Vertices; std::vector m_SkinedVertices; void ReadMeshFile(std::string filePath); @@ -149,7 +167,12 @@ private: void ReadAnimationClips(std::size_t& offset, char* fileData, const unsigned int& fileByteSize, unsigned int numberOfClips); void ReadAnimationClipSingle(std::size_t& offset, char* fileData, const unsigned int& fileByteSize, unsigned int clipIndex); void ReadAnimationKeyFrame(std::size_t& offset, char* fileData, const unsigned int& fileByteSize, std::vector& animation); - + + + void ReadCollisionFile(std::string filePath); + void ReadCollisionFileData(std::size_t& offset, char* fileData, const unsigned int& fileByteSize); + + const std::vector& ConstructCollisionList(); //void CreateSkeleton(std::vector> &boneInfo, std::map &boneNameMapping, aiNode* node, int parentID); }; diff --git a/include/Engine/Sound/SoundManager.h b/include/Engine/Sound/SoundManager.h index 894ed5bf..30e51e1b 100644 --- a/include/Engine/Sound/SoundManager.h +++ b/include/Engine/Sound/SoundManager.h @@ -81,6 +81,7 @@ private: void setSoundProperties(Source* source, ComponentWrapper* soundComponent); float getDurationSeconds(Source* source); float getTimeOffsetSeconds(Source* source); + void setTimeOffsetSeconds(Source* source, float timeOffset); // Specific logic void playSound(Source* source); diff --git a/include/Game/Systems/MainMenuSystem.h b/include/Game/Systems/MainMenuSystem.h index 2e85df97..96b6ee28 100644 --- a/include/Game/Systems/MainMenuSystem.h +++ b/include/Game/Systems/MainMenuSystem.h @@ -13,6 +13,7 @@ #include "Input/EInputCommand.h" #include "Network/ESearchForServers.h" #include "Network/EConnectRequest.h" +#include class MainMenuSystem : public ImpureSystem diff --git a/include/Game/Systems/SpawnerSystem.h b/include/Game/Systems/SpawnerSystem.h index 71ae2772..96b33cb6 100644 --- a/include/Game/Systems/SpawnerSystem.h +++ b/include/Game/Systems/SpawnerSystem.h @@ -8,6 +8,7 @@ #include "Events/ESpawnerSpawn.h" #include "Core/TransformSystem.h" #include "Core/EntityFile.h" +#include "Rendering/Model.h" class SpawnerSystem : public System { diff --git a/resources/DefaultInput.ini b/resources/DefaultInput.ini index 840e5cd0..18fb943f 100644 --- a/resources/DefaultInput.ini +++ b/resources/DefaultInput.ini @@ -29,6 +29,4 @@ K=TakeDamage,1500 F2=PerformanceTimingResetAllTimers F3=PerformanceTimingCreateExcelData Comma=SwapToClassPick -Period=SwapToTeamPick -Enter=PickClass,1 -F5=DisconnectFromServer \ No newline at end of file +Period=SwapToTeamPick \ No newline at end of file diff --git a/resources/Schema/Entities/CP_Rocky2.xml b/resources/Schema/Entities/CP_Rocky2.xml index cd56e869..b8ba85ec 100644 --- a/resources/Schema/Entities/CP_Rocky2.xml +++ b/resources/Schema/Entities/CP_Rocky2.xml @@ -3,7 +3,7 @@ - 7.7050251588169658 + 6.1665781578731185 @@ -28,6 +28,7 @@ Models/Props/Walls/SciFiWallTop.mesh + false @@ -37,45 +38,9 @@ - 2 - Models/Props/Walls/SciFiWallSmall2.mesh - - - - - - - - - - 2 - Models/Props/Walls/SciFiWallBig.mesh - false - - - - - - - - - - - - 2 - Models/Props/Walls/SciFiWallBig.mesh - false - - - - - - - - - - 2 + 2.4600000381469727 Models/Props/Walls/SciFiWallMedium.mesh + false @@ -86,8 +51,9 @@ - 2.2999999523162842 + 2.4600000381469727 Models/Props/Walls/SciFiWallSmall1.mesh + @@ -97,8 +63,21 @@ - 2 - Models/Props/Walls/SciFiWallMedium.mesh + 2.4600000381469727 + Models/Props/Walls/SciFiWallSmall2.mesh + + + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallBig.mesh + false @@ -111,8 +90,9 @@ - 2 - Models/Props/Walls/SciFiWallSmall3.mesh + 2.4600000381469727 + Models/Props/Walls/SciFiWallBig.mesh + false @@ -123,8 +103,37 @@ - 2.3599998950958252 + 2.4500000476837158 + Models/Props/Walls/SciFiWallMedium.mesh + + false + + + + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallSmall3.mesh + + false + + + + + + + + + + 2.4600000381469727 Models/Props/Walls/SciFiWallSmall4.mesh + @@ -689,6 +698,31 @@ + + + + + Models/Highgrounds/Hg7.mesh + + + + + + + + + + + + Models/Highgrounds/Hg17.mesh + + + + + + + + @@ -777,31 +811,6 @@ - - - - - Models/Highgrounds/Hg7.mesh - - - - - - - - - - - - Models/Highgrounds/Hg17.mesh - - - - - - - - @@ -872,6 +881,7 @@ + 1.5 Models/Props/Pillars/SciFiPillar2Red.mesh @@ -1071,6 +1081,7 @@ + 1.5 Models/Props/Pillars/SciFiPillar2Red.mesh @@ -1177,7 +1188,7 @@ - 2 + 1.5 Models/Props/Pillars/SciFiPillar2Blue.mesh @@ -1463,10 +1474,11 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh - + @@ -1475,6 +1487,7 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh @@ -1486,6 +1499,7 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh @@ -1497,6 +1511,7 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh @@ -1515,6 +1530,7 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh @@ -1527,6 +1543,7 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh @@ -1538,6 +1555,7 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh @@ -1549,6 +1567,7 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh @@ -1573,7 +1592,7 @@ Models/Props/Bridges/Bridge1_SciFi_Blue.mesh - + @@ -1620,11 +1639,11 @@ 12 - + - + @@ -1651,7 +1670,7 @@ - 1.5 + 1.1499999761581421 Models/Props/Bridges/SciFi_Bridge_Support_Top_Blue.mesh @@ -1676,11 +1695,11 @@ 12 - + - + @@ -1722,7 +1741,7 @@ - 1.5 + 1.1499999761581421 Models/Props/Bridges/SciFi_Bridge_Support_Top_Blue.mesh @@ -1748,11 +1767,11 @@ 12 - + - + @@ -1969,7 +1988,7 @@ - 2.5 + 1.5 Models/Props/Pillars/SciFiPillar2Blue.mesh @@ -1984,11 +2003,11 @@ - 2.5 + 1.5 Models/Props/Pillars/SciFiPillar2Blue.mesh - + @@ -2038,7 +2057,7 @@ - 2.5 + 1.7999999523162842 Models/Props/Pillars/SciFiPillar1Blue.mesh @@ -2093,7 +2112,7 @@ Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh - + @@ -2103,11 +2122,11 @@ - 2 + 1.7999999523162842 Models/Props/Walls/Small_Wall_SciFi_Blue.mesh - + @@ -2191,7 +2210,7 @@ - 2 + 1.5 Models/Props/Walls/BigWallBlue.mesh @@ -2234,7 +2253,7 @@ - 2 + 1.5 Models/Props/Walls/BigWallBlue.mesh @@ -2262,7 +2281,7 @@ - 2 + 1.5 Models/Props/Walls/BigWallBlue.mesh @@ -2322,7 +2341,7 @@ Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh - + @@ -2347,7 +2366,7 @@ - 2 + 1.6000000238418579 Models/Props/Walls/Small_Wall_SciFi_Blue.mesh @@ -2403,7 +2422,7 @@ - 2 + 1.5 Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh @@ -2421,7 +2440,7 @@ Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh - + @@ -2431,7 +2450,7 @@ - 2 + 1.5 Models/Props/Walls/BigWallBlue.mesh @@ -2500,7 +2519,7 @@ Models/Props/Bridge_Holder_Blue.mesh - + @@ -2556,7 +2575,7 @@ - 4 + 2.5 Models/Props/Stones/ShinyStoneCrystalBlue.mesh @@ -2571,7 +2590,7 @@ - 3 + 2 Models/Props/Stones/ShinyStoneCrystalBlue.mesh @@ -2586,7 +2605,7 @@ - 3 + 1.7999999523162842 Models/Props/Stones/ShinyStoneCrystalBlue.mesh @@ -2639,7 +2658,7 @@ - 3 + 2.2999999523162842 Models/Props/Stones/ShinyStoneCrystalBlue.mesh @@ -2654,7 +2673,7 @@ - 3 + 2 Models/Props/Stones/ShinyStoneCrystalBlue.mesh @@ -2699,7 +2718,7 @@ - 3 + 2 Models/Props/Stones/ShinyStoneCrystalBlue.mesh @@ -2727,7 +2746,7 @@ - 3 + 2 Models/Props/Stones/ShinyStoneCrystalBlue.mesh @@ -2742,7 +2761,7 @@ - 3 + 2.2000000476837158 Models/Props/Stones/ShinyStoneCrystalBlue.mesh @@ -2757,12 +2776,12 @@ - 3 + 2.2999999523162842 Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - + + @@ -2825,6 +2844,329 @@ + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + @@ -2851,6 +3193,20 @@ + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + @@ -3014,6 +3370,19 @@ + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + @@ -3175,19 +3544,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - @@ -3201,20 +3557,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -3229,20 +3571,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -3256,20 +3584,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -3284,20 +3598,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -3311,20 +3611,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - @@ -3339,33 +3625,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - @@ -3380,46 +3639,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - @@ -3433,45 +3652,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - @@ -3485,46 +3665,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -3538,47 +3678,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -3592,45 +3691,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - @@ -3645,47 +3705,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - @@ -3693,19 +3712,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - @@ -3732,6 +3738,19 @@ + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + @@ -3761,167 +3780,7 @@ - Models/Props/PickUps/PickUpHolder.mesh - false - - - - - - - - - - - - 2 - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - 1.5 - 3 - - - - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - 2 - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - 1.5 - 3 - - - - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - false - - - - - - - - - - - - 2 - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/AmmoPickUp.mesh - - - - - 1.5 - 3 - - - - - - - - - - - - - - - - - + 0.44999998807907104 Models/Props/PickUps/PickUpHolder.mesh false @@ -3936,11 +3795,11 @@ 2 - + - + @@ -3956,13 +3815,13 @@ - + 1.5 - 3 + 1 - + @@ -3976,7 +3835,64 @@ + 0.34999999403953552 Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false @@ -3989,11 +3905,11 @@ 2 - + - + @@ -4009,13 +3925,13 @@ - + 1.5 - 3 + 1 - + @@ -4029,12 +3945,13 @@ + 0.30000001192092896 Models/Props/PickUps/PickUpHolder.mesh false - - + + @@ -4043,11 +3960,11 @@ 2 - + - + @@ -4065,11 +3982,121 @@ 1.5 - 3 + 1 - + + + + + + + + + + + + + + + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.40000000596046448 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + + 1.5 + 1 + + + + @@ -4096,37 +4123,7 @@ - 2 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - - 2 - Models/Props/Pillars/SciFiPillar1Red.mesh - - - - - - - - - - - - - - 2 + 1.5 Models/Props/Pillars/SciFiPillar3Red.mesh @@ -4137,106 +4134,6 @@ - - - - - 2 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - 2 - Models/Props/Pillars/SciFiPillar1Red.mesh - - - - - - - - - - - - - 2 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - 2 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - - 2 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - - 2 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - @@ -4256,6 +4153,20 @@ 2 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + 1.5 Models/Props/Pillars/SciFiPillar3Red.mesh @@ -4266,6 +4177,122 @@ + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 1.2999999523162842 + Models/Props/Pillars/SciFiPillar1Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar1Red.mesh + + + + + + + + + + + + + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + @@ -4292,12 +4319,13 @@ - Models/Props/Stones/AssaultHolder.mesh + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - + + + @@ -4306,6 +4334,7 @@ + 1.5 Models/Props/Pillars/SciFiPillar1Blue.mesh @@ -4320,40 +4349,11 @@ - 3 - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - - - - - + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh - + @@ -4363,24 +4363,11 @@ - 9 - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - - - - + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh - + @@ -4390,11 +4377,26 @@ + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh - - + + @@ -4404,6 +4406,20 @@ + + + + Models/Props/Flora/HangingBush2.mesh + true + + + + + + + + + @@ -4426,8 +4442,8 @@ true - - + + @@ -4439,22 +4455,8 @@ true - - - - - - - - - - Models/Props/Flora/HangingBush2.mesh - true - - - - - + + @@ -4468,93 +4470,8 @@ Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - + + @@ -4577,11 +4494,13 @@ - Models/Props/Stones/AssaultHolder.mesh + 2 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - + + + @@ -4590,10 +4509,124 @@ + 3 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh - + + + + + + + + + + + 2.2999999523162842 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 3 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + @@ -4616,10 +4649,11 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh - + @@ -4632,7 +4666,7 @@ - + @@ -4641,161 +4675,11 @@ - 2 - Models/Props/Stones/ShinyStoneCrystalRed.mesh + Models/Props/Walls/SpecialWall1.mesh - - - - - - - - - - - - 2 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 2 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 2 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 2 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 2 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 3 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - + + @@ -4805,13 +4689,12 @@ - 2 - Models/Props/Stones/ShinyStoneCrystalRed.mesh + Models/Props/Walls/SpecialWall1.mesh - - - + + + @@ -4820,12 +4703,12 @@ - 2 - Models/Props/Stones/ShinyStoneCrystalRed.mesh + Models/Props/Walls/SpecialWall1.mesh - - + + + @@ -4834,102 +4717,12 @@ - 3 - Models/Props/Stones/ShinyStoneCrystalRed.mesh + Models/Props/Walls/SpecialWall1.mesh - - - - - - - - - - - - - - - - - - - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - - Models/Props/Pillars/StonePillar.mesh - - - - - - - - - - - - - - 2 - Models/Props/Pillars/SciFiPillar1Red.mesh - - - - - - - - - - - - - - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - Models/Props/Pillars/StonePillar.mesh - - - - - - - - - - - - - - Models/Props/Pillars/StonePillar.mesh - - - + + + @@ -4941,6 +4734,133 @@ + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Red.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + + + @@ -4958,6 +4878,35 @@ + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh @@ -4971,11 +4920,12 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - + + @@ -4984,11 +4934,12 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - + + @@ -5018,27 +4969,15 @@ - - - - - Models/Props/Bridges/SciFi_Bridge_Support_Bot_Red.mesh - - - - - - - 12 - + - + @@ -5057,6 +4996,18 @@ + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Bot_Red.mesh + + + + + + + @@ -5065,24 +5016,12 @@ + 1.5 Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - + + @@ -5115,11 +5054,11 @@ 12 - + - + @@ -5140,19 +5079,6 @@ - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - @@ -5168,15 +5094,27 @@ + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Bot_Red.mesh + + + + + + + 12 - + - + @@ -5194,18 +5132,6 @@ - - - - - Models/Props/Bridges/SciFi_Bridge_Support_Bot_Red.mesh - - - - - - - @@ -5223,142 +5149,23 @@ + + + + + + + 1.5 - Models/Props/Bridges/Bridge1_SciFi_Red.mesh + Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh - - - - - - - - - - - - - - - - - - - - - - - - - - - Models/Props/Walls/SpecialWall1.mesh - - - - - + + @@ -5367,51 +5174,17 @@ - Models/Props/Walls/SpecialWall1.mesh + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh - - - + + + - - - - - Models/Props/Walls/SpecialWall1.mesh - - - - - - - - - - - - - - Models/Props/Walls/SpecialWall1.mesh - - - - - - - - - - - - - - - - @@ -5419,7 +5192,50 @@ Models/Props/Pillars/StonePillar.mesh - + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar1Red.mesh + + + + + @@ -5431,19 +5247,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - @@ -5457,6 +5260,19 @@ + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + @@ -5472,6 +5288,25 @@ + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + @@ -5487,7 +5322,7 @@ - + @@ -5496,15 +5331,217 @@ - Models/Props/Bridge_Holder_Red.mesh + 2.2000000476837158 + Models/Props/Stones/ShinyStoneCrystalRed.mesh - - + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2.5 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + 3 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2.2000000476837158 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2.2000000476837158 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + + + @@ -5531,6 +5568,19 @@ + + + + + Models/Props/Bridge_Holder_Red.mesh + + + + + + + + @@ -5564,238 +5614,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/mediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/mediumStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -5809,289 +5627,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/mediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - @@ -6099,151 +5634,8 @@ Models/Props/Stones/BigStone.mesh - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - + + @@ -6276,59 +5668,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - @@ -6343,6 +5682,33 @@ + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + @@ -6350,8 +5716,8 @@ Models/Props/Stones/SmallStone1.mesh - - + + @@ -6361,12 +5727,79 @@ - Models/Props/Stones/BigStone.mesh + Models/Props/Stones/SmallStone2.mesh - - - + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + @@ -6384,19 +5817,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - @@ -6404,8 +5824,8 @@ Models/Props/Stones/SmallStone1.mesh - - + + @@ -6418,8 +5838,8 @@ Models/Props/Stones/BigStone.mesh - - + + @@ -6431,8 +5851,182 @@ Models/Props/Stones/SmallStone2.mesh - - + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + @@ -6455,12 +6049,11 @@ - Models/Props/Stones/mediumStone2.mesh + Models/Props/Stones/SmallStone1.mesh - - - + + @@ -6469,30 +6062,16 @@ - Models/Props/Stones/mediumStone2.mesh + Models/Props/Stones/SmallStone1.mesh - - + + - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -6510,26 +6089,11 @@ - Models/Props/Stones/SmallStone1.mesh + Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - + + @@ -6555,8 +6119,226 @@ Models/Props/Stones/SmallStone1.mesh - - + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + @@ -6575,6 +6357,274 @@ + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + @@ -6585,11 +6635,12 @@ + 0.30000001192092896 Models/Props/PickUps/PickUpHolder.mesh false - + @@ -6599,11 +6650,11 @@ 2 - + - + @@ -6619,175 +6670,13 @@ - + 1.5 - 3 + 1 - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - false - - - - - - - - - - - - 2 - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - 1.5 - 3 - - - - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - false - - - - - - - - - - - - 2 - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - 1.5 - 3 - - - - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - false - - - - - - - - - - - - 2 - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - 1.5 - 3 - - - - + @@ -6801,6 +6690,7 @@ + 0.40000000596046448 Models/Props/PickUps/PickUpHolder.mesh false @@ -6815,11 +6705,11 @@ 2 - + - + @@ -6837,11 +6727,11 @@ 1.5 - 3 + 1 - + @@ -6855,6 +6745,62 @@ + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.30000001192092896 Models/Props/PickUps/PickUpHolder.mesh false @@ -6869,11 +6815,11 @@ 2 - + - + @@ -6889,13 +6835,13 @@ - + 1.5 - 3 + 1 - + @@ -6909,6 +6855,62 @@ + 0.40000000596046448 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.37999999523162842 Models/Props/PickUps/PickUpHolder.mesh false @@ -6923,11 +6925,11 @@ 2 - + - + @@ -6943,13 +6945,13 @@ - + 1.5 - 3 + 1 - + @@ -6963,6 +6965,62 @@ + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.40000000596046448 Models/Props/PickUps/PickUpHolder.mesh false @@ -6977,11 +7035,11 @@ 2 - + - + @@ -6999,11 +7057,11 @@ 1.5 - 3 + 1 - + @@ -7028,8 +7086,9 @@ Models/Props/Stones/AssaultHolder.mesh - - + + + @@ -7061,6 +7120,32 @@ + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + @@ -7075,33 +7160,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - @@ -7130,9 +7188,9 @@ Models/Props/Walls/Small_Wall_SciFi_Red.mesh - - - + + + @@ -7145,9 +7203,8 @@ Models/Props/Walls/BigWallRed.mesh - - - + + @@ -7157,23 +7214,10 @@ 2 - Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh - - - - - - - - - - - Models/Props/Walls/Small_Wall_SciFi_Red.mesh - - - + @@ -7187,8 +7231,23 @@ Models/Props/Walls/Medium_Wall_SciFi_Red.mesh - - + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + @@ -7215,8 +7274,8 @@ Models/Props/Walls/Medium_Wall_SciFi_Red.mesh - - + + @@ -7249,6 +7308,63 @@ + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + @@ -7263,6 +7379,76 @@ + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + @@ -7282,7 +7468,7 @@ - 2 + 1.5 Models/Props/Walls/BigWallBlue.mesh @@ -7292,34 +7478,6 @@ - - - - - 2 - Models/Props/Walls/Small_Wall_SciFi_Blue.mesh - - - - - - - - - - - - - 2 - Models/Props/Walls/Medium_Wall_SciFi_Red.mesh - - - - - - - - @@ -7364,35 +7522,6 @@ - - - - - 2 - Models/Props/Walls/Medium_Wall_SciFi_Red.mesh - - - - - - - - - - - - - 2 - Models/Props/Walls/Small_Wall_SciFi_Red.mesh - - - - - - - - - @@ -7427,21 +7556,7 @@ - 2 - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - - - 2 + 1.5 Models/Props/Walls/Small_Wall_SciFi_Red.mesh @@ -7451,20 +7566,6 @@ - - - - - 2 - Models/Props/Walls/Medium_Wall_SciFi_Red.mesh - - - - - - - - @@ -7484,21 +7585,7 @@ - Models/Props/Walls/Small_Wall_SciFi_Red.mesh - - - - - - - - - - - - - - 2 + 1.5 Models/Props/Walls/Small_Wall_SciFi_Red.mesh @@ -7528,36 +7615,7 @@ - 2 - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - - - 2 - Models/Props/Walls/Small_Wall_SciFi_Red.mesh - - - - - - - - - - - - - - 2 + 1.5 Models/Props/Walls/Small_Wall_SciFi_Red.mesh @@ -7698,6 +7756,589 @@ + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush1.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush1.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + @@ -7712,11 +8353,11 @@ - Models/Props/Stones/SmallStone2.mesh + Models/Props/Stones/SmallStone1.mesh - - + + @@ -7725,11 +8366,11 @@ - Models/Props/Stones/MediumStone2.mesh + Models/Props/Pillars/StonePillar.mesh - - + + @@ -7752,16 +8393,55 @@ - Models/Props/Stones/SmallStone2.mesh + Models/Props/Stones/SmallStone1.mesh - - + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + @@ -7776,60 +8456,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/mediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - @@ -7843,154 +8469,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - Models/Props/Pillars/StonePillar.mesh - - - - - - - - - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - @@ -8004,6 +8482,19 @@ + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + @@ -8049,11 +8540,26 @@ - Models/Props/Stones/SmallStone1.mesh + Models/Props/Stones/SmallStone2.mesh - - + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + @@ -8065,8 +8571,143 @@ Models/Props/Stones/MediumStone2.mesh - - + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + @@ -8083,6 +8724,21 @@ 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 1.5 Models/Props/Walls/BigWallRed.mesh @@ -8092,6 +8748,49 @@ + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + @@ -8121,49 +8820,6 @@ - - - - - 2 - Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh - - - - - - - - - - - - - 2 - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - - - 2 - Models/Props/Walls/Small_Wall_SciFi_Red.mesh - - - - - - - - - @@ -8179,6 +8835,20 @@ + + + + + 1.5 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + @@ -8209,35 +8879,6 @@ - - - - - 2 - Models/Props/Walls/Small_Wall_SciFi_Blue.mesh - - - - - - - - - - - - - - 2 - Models/Props/Walls/BigWallBlue.mesh - - - - - - - - @@ -8252,8 +8893,8 @@ Models/Props/Stones/AssaultHolder.mesh - - + + @@ -8265,13 +8906,40 @@ Models/Props/Stones/AssaultHolder.mesh - - + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + @@ -8292,8 +8960,49 @@ Models/Props/Stones/AssaultHolder.mesh - - + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + @@ -8324,19 +9033,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - @@ -8351,20 +9047,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - @@ -8378,19 +9060,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - @@ -8417,34 +9086,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - - @@ -8482,6 +9123,7 @@ + 0.44999998807907104 Models/Props/PickUps/PickUpHolder.mesh false @@ -8496,11 +9138,11 @@ 2 - + - + @@ -8516,13 +9158,13 @@ - + 1.5 - 3 + 1 - + @@ -8536,6 +9178,7 @@ + 0.60000002384185791 Models/Props/PickUps/PickUpHolder.mesh false @@ -8550,11 +9193,11 @@ 2 - + - + @@ -8576,7 +9219,7 @@ - + @@ -8598,7 +9241,7 @@ - 3 + 2.4000000953674316 Models/Props/Stones/ShinyStoneCrystalRed.mesh @@ -8722,11 +9365,27 @@ 1.5 - Models/Props/Pillars/SciFiPillar2Blue.mesh + Models/Props/Pillars/SciFiPillar3Blue.mesh - - + + + + + + + + + + + + 1.7000000476837158 + Models/Props/Pillars/SciFiPillar3Blue.mesh + + + + + @@ -8736,12 +9395,40 @@ 1.5 - Models/Props/Pillars/SciFiPillar3Blue.mesh + Models/Props/Pillars/SciFiPillar2Blue.mesh - - - + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar1Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + @@ -8765,26 +9452,11 @@ - 2.5 + 1.5 Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - 2.5 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - + @@ -8811,35 +9483,6 @@ 1.5 - Models/Props/Pillars/SciFiPillar3Blue.mesh - - - - - - - - - - - - - - 2 - Models/Props/Pillars/SciFiPillar1Blue.mesh - - - - - - - - - - - - - 2.5 Models/Props/Pillars/SciFiPillar2Blue.mesh @@ -8853,7 +9496,7 @@ - 2.5 + 1.5 Models/Props/Pillars/SciFiPillar2Blue.mesh @@ -8880,6 +9523,514 @@ + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush1.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush1.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + @@ -8898,19 +10049,6 @@ - - - - - Models/Characters/Assault/AssaultTPose.mesh - false - - - - - - - @@ -8950,6 +10088,19 @@ + + + + + Models/Characters/Assault/AssaultTPose.mesh + false + + + + + + + @@ -8957,10 +10108,10 @@ - + - 2 + 1 @@ -8971,22 +10122,21 @@ - + - + - Models/Props/CapturePoint/CapturePointRed.mesh - false + Models/Props/CapturePoint/CapturePointNeutral.mesh - + @@ -8997,12 +10147,12 @@ 6 - + 0.10000000149011612 - + @@ -9010,8 +10160,7 @@ Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false + true @@ -9027,12 +10176,12 @@ 6 - + 0.10000000149011612 - + @@ -9040,8 +10189,7 @@ Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false + true @@ -9057,12 +10205,12 @@ 6 - + 0.10000000149011612 - + @@ -9070,8 +10218,7 @@ Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false + true @@ -9087,12 +10234,12 @@ 6 - + 0.10000000149011612 - + @@ -9100,8 +10247,7 @@ Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false + true @@ -9130,13 +10276,317 @@ 20 - + 3 - - + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + false + true + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointRed.mesh + false + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + @@ -9162,13 +10612,13 @@ 10 - + 0.5 - - + + @@ -9193,38 +10643,10 @@ - + - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - @@ -9253,6 +10675,34 @@ + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + @@ -9265,13 +10715,13 @@ 30 - + 3.5 - - + + @@ -9303,135 +10753,6 @@ - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - @@ -9439,6 +10760,38 @@ + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + @@ -9447,13 +10800,13 @@ 20 - + 3 - - + + @@ -9479,28 +10832,16 @@ 10 - + 0.5 - - + + - - - - Models/Props/CapturePoint/CenterCrystal.mesh - - false - false - - - - - @@ -9508,7 +10849,7 @@ - + @@ -9570,8 +10911,320 @@ + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + + 2 + + + + Models/Props/CapturePoint/CapturePointCylinder.mesh + + false + true + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointBlue.mesh + false + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + @@ -9580,13 +11233,13 @@ 30 - + 3.5 - - + + @@ -9604,6 +11257,139 @@ + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + @@ -9624,36 +11410,6 @@ - - - - 0.5 - - - - 20 - - - 3 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer2.mesh - false - - - - - - - @@ -9662,13 +11418,13 @@ 10 - + 0.5 - - + + @@ -9679,22 +11435,10 @@ - + - - - - 4.5 - 0.5 - - - - - - - @@ -9714,7 +11458,7 @@ 0.5 - + @@ -9726,7 +11470,19 @@ 0.5 - + + + + + + + + + 4.5 + 0.5 + + + @@ -9747,6 +11503,36 @@ + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + false + + + + + + + @@ -9755,13 +11541,13 @@ 30 - + 3.5 - - + + @@ -9786,45 +11572,16 @@ - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - 6 - + 0.10000000149011612 - + @@ -9844,16 +11601,74 @@ - + 6 - + 0.10000000149011612 - + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + @@ -9873,16 +11688,213 @@ - + + + + + + + + + Models/Props/CapturePoint/CapturePointRed.mesh + false + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + + + + + + + 6 - + 0.10000000149011612 - + @@ -9890,7 +11902,38 @@ Models/Props/CapturePoint/DoubleSidedCylinder.mesh - + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false true @@ -9902,6 +11945,66 @@ + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + @@ -9959,16 +12062,28 @@ 10 - + 0.5 - - + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + @@ -9976,10 +12091,24 @@ - + + + + + + 4.5 + 0.5 + false + + + + + + + @@ -10008,20 +12137,6 @@ - - - - - 4.5 - 0.5 - false - - - - - - - @@ -10038,18 +12153,6 @@ - - - - Models/Props/CapturePoint/CenterCrystal.mesh - - false - false - - - - - @@ -10060,13 +12163,13 @@ 30 - + 3.5 - - + + @@ -10092,13 +12195,13 @@ 20 - + 3 - - + + @@ -10126,76 +12229,16 @@ - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - 6 - + 0.10000000149011612 - + @@ -10220,12 +12263,12 @@ 6 - + 0.10000000149011612 - + @@ -10246,6 +12289,66 @@ + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + @@ -10259,6 +12362,131 @@ + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + @@ -10274,13 +12502,13 @@ 20 - + 3 - - + + @@ -10305,13 +12533,13 @@ 10 - + 0.5 - - + + @@ -10335,7 +12563,7 @@ - + @@ -10347,7 +12575,7 @@ 0.5 - + @@ -10360,7 +12588,7 @@ 0.5 - + @@ -10403,13 +12631,13 @@ 30 - + 3.5 - - + + @@ -10428,131 +12656,6 @@ - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - @@ -10580,13 +12683,13 @@ 20 - + 3 - - + + @@ -10603,37 +12706,6 @@ - - - - 0.30000001192092896 - - - - 30 - - - 3.5 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer1.mesh - false - false - - - - - - - @@ -10642,13 +12714,13 @@ 10 - + 0.5 - - + + @@ -10672,7 +12744,7 @@ - + @@ -10689,19 +12761,6 @@ - - - - 4.5 - 0.5 - false - - - - - - - @@ -10715,6 +12774,19 @@ + + + + 4.5 + 0.5 + false + + + + + + + @@ -10732,6 +12804,37 @@ + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + false + + + + + + + @@ -10745,12 +12848,12 @@ 6 - + 0.10000000149011612 - + @@ -10771,46 +12874,16 @@ - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - 6 - + 0.10000000149011612 - + @@ -10831,145 +12904,16 @@ - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - - - - - - - 1 - - - - Models/Props/CapturePoint/CapturePointCylinder.mesh - - false - true - - - - - - - - - - - - - Models/Props/CapturePoint/CapturePointNeutral.mesh - - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - 6 - + 0.10000000149011612 - + @@ -10978,338 +12922,6 @@ Models/Props/CapturePoint/DoubleSidedCylinder.mesh - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - - - - - - - - - - - - 0.30000001192092896 - - - - 30 - - - 3.5 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer1.mesh - false - - - - - - - - - - - 0.10000000149011612 - - - - 10 - - - 0.5 - - - - - - - - - - - 1 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - - - Models/Props/CapturePoint/CenterCrystal.mesh - false - true - - - - - - - - - - - - - 0.5 - - - - 20 - - - 3 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer2.mesh - false - - - - - - - - - - - - - - - - Models/Props/CapturePoint/CapturePointBlue.mesh - false - - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - false true @@ -11322,477 +12934,16 @@ - - - - - - - - - - - - - 0.10000000149011612 - - - - 10 - - - 0.5 - - - - - - - - - - - 1 - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - - Models/Props/CapturePoint/CenterCrystal.mesh - - false - false - - - - - - - - - - - 0.30000001192092896 - - - - 30 - - - 3.5 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer1.mesh - - false - false - - - - - - - - - - - 0.5 - - - - 20 - - - 3 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer2.mesh - - false - false - - - - - - - - - - - - - - - - Models/Props/CapturePoint/CapturePointRed.mesh - false - - - - - - - - - - - - - - - 0.10000000149011612 - - - - 10 - - - 0.5 - - - - - - - - - - - 1 - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - - Models/Props/CapturePoint/CenterCrystal.mesh - - false - false - - - - - - - - - - - - - 0.30000001192092896 - - - - 30 - - - 3.5 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer1.mesh - - false - false - - - - - - - - - - - 0.5 - - - - 20 - - - 3 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer2.mesh - - false - false - - - - - - - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - 6 - + 0.10000000149011612 - + @@ -11800,7 +12951,7 @@ Models/Props/CapturePoint/DoubleSidedCylinder.mesh - + false true @@ -11838,6 +12989,304 @@ + + + + + Models/Props/CapturePoint/CapturePointNeutral.mesh + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + false + + + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + @@ -11859,12 +13308,12 @@ 6 - + 0.10000000149011612 - + @@ -11889,12 +13338,12 @@ 6 - + 0.10000000149011612 - + @@ -11919,12 +13368,12 @@ 6 - + 0.10000000149011612 - + @@ -11949,12 +13398,12 @@ 6 - + 0.10000000149011612 - + @@ -11992,13 +13441,13 @@ 30 - + 3.5 - - + + @@ -12024,13 +13473,13 @@ 20 - + 3 - - + + @@ -12056,13 +13505,13 @@ 10 - + 0.5 - - + + @@ -12073,10 +13522,24 @@ - + + + + + + 4.5 + 0.5 + false + + + + + + + @@ -12119,20 +13582,6 @@ - - - - - 4.5 - 0.5 - false - - - - - - - @@ -12165,6 +13614,180 @@ + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + @@ -12172,46 +13795,16 @@ - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - 6 - + 0.10000000149011612 - + @@ -12232,16 +13825,46 @@ - + 6 - + 0.10000000149011612 - + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + @@ -12266,12 +13889,12 @@ 6 - + 0.10000000149011612 - + @@ -12294,478 +13917,6 @@ - - - - - - - - - - - 0.10000000149011612 - - - - 10 - - - 0.5 - - - - - - - - - - - Models/Props/CapturePoint/CenterCrystal.mesh - - false - false - - - - - - - - - 1 - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - 4.5 - 0.5 - false - - - - - - - - - - - - - - - 0.5 - - - - 20 - - - 3 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer2.mesh - - false - false - - - - - - - - - - - 0.30000001192092896 - - - - 30 - - - 3.5 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer1.mesh - - false - false - - - - - - - - - - - - - - - - Models/Props/CapturePoint/CapturePointNeutral.mesh - - - - - - - - - - - - - - - 0.30000001192092896 - - - - 30 - - - 3.5 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer1.mesh - false - - - - - - - - - - - 0.5 - - - - 20 - - - 3 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer2.mesh - false - - - - - - - - - - - 0.10000000149011612 - - - - 10 - - - 0.5 - - - - - - - - - - - 1 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - - - Models/Props/CapturePoint/CenterCrystal.mesh - false - - - - - - - - - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - - - @@ -12814,76 +13965,16 @@ - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - 6 - + 0.10000000149011612 - + @@ -12908,12 +13999,12 @@ 6 - + 0.10000000149011612 - + @@ -12934,6 +14025,66 @@ + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + @@ -12943,28 +14094,28 @@ - + - 0.30000001192092896 + 0.5 - 30 - + 20 + - 3.5 + 3 - - + + - Models/Props/CapturePoint/CrystalsLayer1.mesh + Models/Props/CapturePoint/CrystalsLayer2.mesh false false @@ -12983,13 +14134,13 @@ 10 - + 0.5 - - + + @@ -13014,7 +14165,7 @@ - + @@ -13026,7 +14177,7 @@ 0.5 - + @@ -13052,7 +14203,7 @@ 0.5 - + @@ -13074,6 +14225,153 @@ + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointNeutral.mesh + false + + + + + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + false + false + + + + + + + + + + + 1 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + @@ -13082,13 +14380,13 @@ 20 - + 3 - - + + @@ -13096,7 +14394,6 @@ Models/Props/CapturePoint/CrystalsLayer2.mesh - false false @@ -13106,6 +14403,166 @@ + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + false + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + @@ -13134,13 +14591,13 @@ 20 - + 3 - - + + @@ -13157,37 +14614,6 @@ - - - - 0.30000001192092896 - - - - 30 - - - 3.5 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer1.mesh - - false - - - - - - - @@ -13196,13 +14622,13 @@ 10 - + 0.5 - - + + @@ -13224,7 +14650,7 @@ - + @@ -13241,19 +14667,6 @@ - - - - - 4.5 - 0.5 - - - - - - - @@ -13267,6 +14680,19 @@ + + + + + 4.5 + 0.5 + + + + + + + @@ -13284,6 +14710,37 @@ + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + + + + + + + @@ -13297,12 +14754,12 @@ 6 - + 0.10000000149011612 - + @@ -13322,45 +14779,16 @@ - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - true - - - - - - - - - - 6 - + 0.10000000149011612 - + @@ -13380,16 +14808,45 @@ - + 6 - + 0.10000000149011612 - + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + @@ -13413,312 +14870,6 @@ - - - - - Models/Props/CapturePoint/CapturePointNeutral.mesh - false - - - - - - - - - - - - - - - 0.5 - - - - 20 - - - 3 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer2.mesh - false - false - - - - - - - - - - - 0.10000000149011612 - - - - 10 - - - 0.5 - - - - - - - - - - - Models/Props/CapturePoint/CenterCrystal.mesh - false - false - - - - - - - - - - - 1 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - 4.5 - 0.5 - - - - - - - - - - - - - - - 0.30000001192092896 - - - - 30 - - - 3.5 - - - - - - - - - - - Models/Props/CapturePoint/CrystalsLayer1.mesh - false - false - - - - - - - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - 6 - - - 0.10000000149011612 - - - - - - - - - - Models/Props/CapturePoint/DoubleSidedCylinder.mesh - - false - true - - - - - - - - - - - - - - @@ -13760,7 +14911,7 @@ false - + @@ -13773,7 +14924,7 @@ false - + @@ -13795,19 +14946,30 @@ - - - + + + + + + + + + + + + + + @@ -13828,7 +14990,7 @@ Models/Core/UnitCube.mesh - false + false @@ -13852,22 +15014,6 @@ - - - - ID - Fonts/DroidSans.ttf,64 - - - - - - - - - - - @@ -13884,6 +15030,22 @@ + + + + Kills + Fonts/DroidSans.ttf,64 + + + + + + + + + + + @@ -13900,17 +15062,17 @@ - + - Kills + ID Fonts/DroidSans.ttf,64 - + @@ -13941,12 +15103,11 @@ - 0.80000019073486328 - Models/Props/ScoreBoard/Scoreboard.mesh + Models/Core/UnitCube.mesh false - + @@ -13954,13 +15115,12 @@ - 0.70000028610229492 - Models/Props/ScoreBoard/Spectatorboard.mesh + Models/Core/UnitCube.mesh false - + @@ -13980,20 +15140,6 @@ - - - - Models/Core/UnitCube.mesh - - false - - - - - - - - @@ -14009,38 +15155,6 @@ - - - - ID - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - Name - Fonts/DroidSans.ttf,64 - - - - - - - - - - - @@ -14089,112 +15203,54 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + Name + Fonts/DroidSans.ttf,64 + + + + - + + - - - - - Models/Core/UnitQuad.mesh - - Textures/Core/White.png - true - - false - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/Core/White.png - true - - - - - - - - - - - - Blue team win! - Fonts/DroidSans.ttf,64 - false - - - - - - - - - - - - Red team win! - Fonts/DroidSans.ttf,64 - - - - - - - - - + + + + + + ID + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + Models/Core/UnitCube.mesh + + false + + + + + + + + @@ -14211,7 +15267,7 @@ - + @@ -14223,6 +15279,383 @@ + + + + 0.20000000298023224 + 300 + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + PickTeam + 1 + + + + + + + + + + + Spectator + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + PickTeam + 3 + + + + + + + + + + + Blue + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + false + + + SwapToClassPick + 1 + + + + + + + + + + + Class + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + + + Change + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + + + + + Pick Team + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + PickTeam + 2 + + + + + + + + + + + Red + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + + + 0.20000000298023224 + 300 + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Classes/Defender-01.png + + + PickClass + 2 + + + + + + + + + + + Defender + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Classes/Assault-01.png + + + PickClass + 1 + + + + + + + + + + + Assault + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Pick Class + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + SwapToTeamPick + 1 + + + + + + + + + + + Team + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + Change + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Classes/Sniper-01.png + + + PickClass + 3 + + + + + + + + + + + Sniper + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + @@ -14292,21 +15725,20 @@ Models/Core/UnitQuad.mesh Textures/Core/UnitHexagon.png - + - + - 1 - 4 + 2 false @@ -14331,20 +15763,21 @@ Models/Core/UnitQuad.mesh Textures/Core/UnitHexagon.png - + - + + 1 - 2 + 4 false @@ -14439,10 +15872,61 @@ + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + false + + + SwapToClassPick + 1 + + + + + + + + + + + Change + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + + + Class + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + - 1 + 2 Fonts/DroidSans.ttf,64 @@ -14501,431 +15985,6 @@ - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Core/UnitHexagon.png - - - - SwapToClassPick - 1 - - - - - - - - - - - Change - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - Class - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - - - - 0.20000000298023224 - 300 - - - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Icons/Classes/Sniper-01.png - - - PickClass - 3 - - - - - - - - - - - Sniper - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Core/UnitHexagon.png - - - - SwapToTeamPick - 1 - - - - - - - - - - - Team - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - Change - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - Pick Class - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Icons/Classes/Defender-01.png - - - PickClass - 2 - - - - - - - - - - - Defender - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Icons/Classes/Assault-01.png - - - PickClass - 1 - - - - - - - - - - - Assault - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - - - - - 0.20000000298023224 - 300 - - - - - - - - - - - - - - - Pick Team - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Core/UnitHexagon.png - - false - - - SwapToClassPick - 1 - - - - - - - - - - - Class - Fonts/DroidSans.ttf,64 - false - - - - - - - - - - - - Change - Fonts/DroidSans.ttf,64 - false - - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Core/UnitHexagon.png - - - - PickTeam - 3 - - - - - - - - - - - Blue - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Core/UnitHexagon.png - - - - PickTeam - 1 - - - - - - - - - - - Spectator - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Core/UnitHexagon.png - - - - PickTeam - 2 - - - - - - - - - - - Red - Fonts/DroidSans.ttf,64 - - - - - - - - - - @@ -14939,6 +15998,225 @@ + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + 2 + + + + + + + + + + + 2 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + 1.3999999761581421 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + 2.5 + + + + + + + + + + + 2 + + + + + + + + + + + + 3 + 0.40000000596046448 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.30000001192092896 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 3 + 0.5 + + + + + + + + + + + + 4 + 0.34999999403953552 + + + + + + + + + @@ -14962,236 +16240,6 @@ - - - - 10 - - - - - - - - - - - - - - - - 4 - - - - - - - - - - - 4 - 1 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - 2 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - 5 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - 4 - - - - - - - - - - - - - - 1 - 1.2000000476837158 - - - - - - - - 3 - - - - - - - - - - - - - 10 - - - - - - - @@ -15204,56 +16252,74 @@ + + + + + 0.72000002861022949 + + + + + + + - + - + + + 6 + 0.69999998807907104 + + + + - - - - - - 10 - 1 - - - - - - - - - - - - 10 - 1 - - - - - - - - - - - - 10 - 1 - - - - - - - - + + + + + + + 3 + 0.60000002384185791 + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + 5 + 1 + + + + + + @@ -15272,20 +16338,6 @@ - - - - - 6 - 1 - 0.5 - - - - - - - @@ -15300,6 +16352,20 @@ + + + + + 6 + 1 + 0.5 + + + + + + + @@ -15309,20 +16375,6 @@ - - - - - 6 - 1 - 0.5 - - - - - - - @@ -15337,6 +16389,20 @@ + + + + + 6 + 1 + 0.5 + + + + + + + @@ -15392,7 +16458,21 @@ 0.5 - + + + + + + + + + + 5 + 1 + 0.5 + + + @@ -15411,6 +16491,20 @@ + + + + + 5 + 1 + 0.5 + + + + + + + @@ -15434,7 +16528,7 @@ 0.5 - + @@ -15448,7 +16542,7 @@ 0.5 - + @@ -15476,21 +16570,7 @@ 0.5 - - - - - - - - - - 5 - 1 - 0.5 - - - + @@ -15509,20 +16589,6 @@ - - - - - 5 - 1 - 0.5 - - - - - - - @@ -15530,12 +16596,12 @@ - - 15 - 1 + + 3 + 0.5 - + @@ -15545,6 +16611,43 @@ + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + @@ -15582,117 +16685,6 @@ - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 1 - 0.5 - - - - - - - - - - - - 5 - 1 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 1 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - @@ -15746,11 +16738,145 @@ 0.5 - + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 3 + 1 + 0.5 + + + + + + + + + + + + 2 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + @@ -15765,6 +16891,94 @@ + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + @@ -15989,165 +17203,149 @@ - + + + + + + + 6 + 0.5 + + + + + + + + + + + + 15 + 1 + + + + + + + + + + + + + + + + 10 + 1 + - + - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - + - + + + + 10 + 1 + - + - - - - - - 3 - 1 - 0.5 - - - - - - - - - - - - 2 - 1 - 0.5 - - - - - - - - + - + + + + 10 + 1 + - + - - - - - - 5 - 1 - 0.5 - - - - - - - - - - - - 5 - 1 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 1 - 0.5 - - - - - - - - + + + + + + 5 + 1 + + + + + + + + + + + + 4 + 1 + + + + + + + - + - - 0.40000000596046448 - + + 10 + - + + + + + + + + + + 1.1000000238418579 + 1.2999999523162842 + + + + + + + + 3 + + + + + + + + + + + + + 10 + + + @@ -16157,203 +17355,424 @@ - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 1 - 0.5 - - - - - - - - - - - - 5 - 1 - 0.5 - - - - - - - - - - - - - - - - - - - - - 6 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 6 - 2 - 0.5 - - - - - - - - - - - + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + @@ -16392,20 +17811,6 @@ - - - - - 5 - 2 - 0.5 - - - - - - - @@ -16420,6 +17825,20 @@ + + + + + 5 + 2 + 0.5 + + + + + + + @@ -16429,20 +17848,6 @@ - - - - - 5 - 2 - 0.5 - - - - - - - @@ -16457,39 +17862,16 @@ - - - - - - - - - - + 5 2 0.5 - - - - - - - - - - 5 - 2 - 0.5 - - - + @@ -16570,197 +17952,12 @@ - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - @@ -16792,117 +17989,6 @@ - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - @@ -16910,20 +17996,6 @@ - - - - - 5 - 2 - 0.5 - - - - - - - @@ -16938,15 +18010,6 @@ - - - - - - - - - @@ -16956,58 +18019,7 @@ 0.5 - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - - - - - - - - - - 5 - 2 - 0.5 - - - - - - - - - - - - 5 - 2 - 0.5 - - - + @@ -17019,7 +18031,7 @@ - + 15 1 @@ -17029,11 +18041,223 @@ + + + + + 5 + 1 + + + + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 6 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 6 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + 10 + 1 + + + + + + + @@ -17060,15 +18284,108 @@ - + + + + + + + 5 + 0.69999998807907104 + + + + + + + + + + + + 5 + 0.69999998807907104 + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + + + + - - 10 - 1 + + 0.55000001192092896 + 1.6000000238418579 + false - + + + + + + + + + + + 0.55000001192092896 + 1.6000000238418579 + false + + + + + + + + + + + + + 0.55000001192092896 + 1.6000000238418579 + false + + + + diff --git a/resources/Schema/Entities/CP_Valhalla.xml b/resources/Schema/Entities/CP_Valhalla.xml new file mode 100755 index 00000000..25967eba --- /dev/null +++ b/resources/Schema/Entities/CP_Valhalla.xml @@ -0,0 +1,20946 @@ + + + + + + 0.39988726972296718 + 0.5 + + + + + + + + + + + + + + + 2 + Models/Props/GroundTest.mesh + + + + + + + + Models/Props/Walls/SciFiWallTop.mesh + + false + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallSmall1.mesh + + false + + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallSmall2.mesh + + false + + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallBig.mesh + + false + + + + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallBig.mesh + + false + + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallMedium.mesh + + false + + + + + + + + + + 2.4500000476837158 + Models/Props/Walls/SciFiWallMedium.mesh + + false + + + + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallSmall3.mesh + + false + + + + + + + + + + 2.4600000381469727 + Models/Props/Walls/SciFiWallSmall4.mesh + + false + + + + + + + + + + + + Models/Highgrounds/Highground1.mesh + + + + + + + + + + Models/Highgrounds/Highground2.mesh + + + + + + + + + + Models/Highgrounds/Highground3.mesh + + + + + + + + + + Models/Highgrounds/Highground24.mesh + + + + + + + + + + + Models/Highgrounds/Hg13.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg25.mesh + + + + + + + + + + + + Models/Highgrounds/Hg26.mesh + + + + + + + + + + + + Models/Highgrounds/Hg9.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg4.mesh + + + + + + + + + + + + + + Models/Highgrounds/Hg10.mesh + + + + + + + + + + + + + + Models/Highgrounds/Hg19.mesh + + + + + + + + + + + + + + Models/Highgrounds/Hg19.mesh + + + + + + + + + + + + + + + Models/Highgrounds/Highground12.mesh + + + + + + + + + + + + Models/Highgrounds/Hg16.mesh + + + + + + + + + + + + Models/Highgrounds/Hg15.mesh + + + + + + + + + + + + Models/Highgrounds/Hg14.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg13.mesh + + + + + + + + + + + + Models/Highgrounds/Hg11.mesh + + + + + + + + + + + + Models/Highgrounds/Hg20.mesh + + + + + + + + + + + + Models/Highgrounds/Hg18.mesh + + + + + + + + + + + + Models/Highgrounds/Hg19.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg17.mesh + + + + + + + + + + + + + + + Models/Highgrounds/Hg8.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg7.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg3.mesh + + + + + + + + + + + + + + + Models/Highgrounds/Highground3.mesh + + + + + + + + + + + + Models/Highgrounds/Highground1.mesh + + + + + + + + + + + Models/Highgrounds/Highground2.mesh + + + + + + + + + + + + + + Models/Highgrounds/Hg1.mesh + + + + + + + + + + + Models/Highgrounds/Hg2.mesh + + + + + + + + + + + + + + Models/Highgrounds/Highground5.mesh + + + + + + + + + + + + Models/Highgrounds/Hg6.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg8.mesh + + + + + + + + + + + + Models/Highgrounds/Hg10.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg4.mesh + + + + + + + + + + + + Models/Highgrounds/Hg7.mesh + + + + + + + + + + + + Models/Highgrounds/Hg17.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg19.mesh + + + + + + + + + + + + Models/Highgrounds/Hg18.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg20.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg16.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg9.mesh + + + + + + + + + + + + Models/Highgrounds/Hg3.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg19.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + Models/Highgrounds/Hg10.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + + + + Models/Highgrounds/Highground22.mesh + + + + + + + + + + + + Models/Highgrounds/Hg8.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg19.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg21.mesh + + + + + + + + + + + + Models/Highgrounds/Hg11.mesh + + + + + + + + + + + + Models/Highgrounds/Hg3.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg17.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg8.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.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 + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + + + Models/Highgrounds/Hg28.mesh + + + + + + + + + + + Models/Highgrounds/Hg10.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg27.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg15.mesh + + + + + + + + + + + + + + Models/Highgrounds/Hg13.mesh + + + + + + + + + + + + + + + Models/Highgrounds/Hg27.mesh + + + + + + + + + + + + Models/Highgrounds/Hg23.mesh + + + + + + + + + + + + + + + Models/Highgrounds/Hg27.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg23.mesh + + + + + + + + + + + + + + + Models/Highgrounds/Hg28.mesh + + + + + + + + + + + + Models/Highgrounds/Hg10.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg27.mesh + + + + + + + + + + + + + Models/Highgrounds/Hg15.mesh + + + + + + + + + + + + + + Models/Highgrounds/Hg13.mesh + + + + + + + + + + + + + + + Models/Highgrounds/Hg1.mesh + + + + + + + + + + + + Models/Highgrounds/Hg2.mesh + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Blue.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Blue.mesh + + + + + + + + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Blue.mesh + + + + + + + + + + + + 1.5 + Models/Props/Bridges/SciFi_Bridge_Support_Top_Blue.mesh + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Bot_Blue.mesh + + + + + + + + + + + 12 + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/SciFi_Bridge_Support_Middle_Blue.mesh + + + + + + + + + + + + + + + + + + 1.1499999761581421 + Models/Props/Bridges/SciFi_Bridge_Support_Top_Blue.mesh + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Bot_Blue.mesh + + + + + + + + + + + 12 + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/SciFi_Bridge_Support_Middle_Blue.mesh + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Blue.mesh + + + + + + + + + + + + + + 1.1499999761581421 + Models/Props/Bridges/SciFi_Bridge_Support_Top_Blue.mesh + + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Bot_Blue.mesh + + + + + + + + + + + 12 + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/SciFi_Bridge_Support_Middle_Blue.mesh + + + + + + + + + + + + + + + + + + + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + + + + + + + + + + + + + Models/Props/Flora/Root.mesh + + + + + + + + + + + + + + Models/Props/Flora/Root.mesh + + + + + + + + + + + + + Models/Props/Flora/Root.mesh + + + + + + + + + + + + + + Models/Props/Flora/Root.mesh + + + + + + + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Pillars/SciFiPillar1Blue.mesh + + + + + + + + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + 2 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + + + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 1.6000000238418579 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + + Models/Core/UnitPlane.mesh + + false + true + + + + + + + + + + + + + + + + + + + Models/Props/Bridge_Holder_Blue.mesh + + + + + + + + + + + + + Models/Props/SciFiHolder1.mesh + + + + + + + + + + + + + Models/Props/Bridge_Holder_Blue.mesh + + + + + + + + + + + + + Models/Props/Bridge_Holder_Blue.mesh + + + + + + + + + + + + + + + + + + + + 2.5 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + 2 + + + + + + + + + + + + 2 + 1 + + + + + + + + + + + + 3 + + + + + + + + + + + + + + 2.2999999523162842 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 3 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 15 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + 2 + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 2.2000000476837158 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 2.2999999523162842 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 3 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + + + + + + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.30000001192092896 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.34999999403953552 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.40000000596046448 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar3Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar1Red.mesh + + + + + + + + + + + + + 1.2999999523162842 + Models/Props/Pillars/SciFiPillar1Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar3Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar1Blue.mesh + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 2.2999999523162842 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 3 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + + 3 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + true + false + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + true + + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + 3 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + + Models/Props/Bridge_Holder_Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Blue.mesh + + + + + + + + + + + + + + + + + + + + + + + + + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2.2000000476837158 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2.2000000476837158 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 3 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2.2000000476837158 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 1.7999999523162842 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2.5 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + + Models/Core/UnitPlane.mesh + + false + false + true + + + + + + + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Red.mesh + + + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Top_Red.mesh + + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Bot_Red.mesh + + + + + + + + + + + 12 + + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Middle_Red.mesh + + + + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Red.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Top_Red.mesh + + + + + + + + + + + 12 + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/SciFi_Bridge_Support_Middle_Red.mesh + + + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Bot_Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Red.mesh + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Top_Red.mesh + + + + + + + + + + + + Models/Props/Bridges/SciFi_Bridge_Support_Bot_Red.mesh + + + + + + + + + + + 12 + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/SciFi_Bridge_Support_Middle_Red.mesh + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + + + 1.5 + Models/Props/Bridges/Bridge1_SciFi_Red.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + 1.5 + Models/Props/Pillars/Bridge_Pillar1_SciFi_Red.mesh + + + + + + + + + + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar1Red.mesh + + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + + + + + + + + + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + + + + + + + + + + + + + Models/Props/Bridge_Holder_Red.mesh + + + + + + + + + + + + + Models/Props/Bridge_Holder_Red.mesh + + + + + + + + + + + + + Models/Props/Bridge_Holder_Red.mesh + + + + + + + + + + + + + Models/Props/Bridge_Holder_Red.mesh + + + + + + + + + + + + + Models/Props/Bridge_Holder_Red.mesh + + + + + + + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + + + + + + + 0.30000001192092896 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.40000000596046448 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.40000000596046448 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.30000001192092896 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.37999999523162842 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.40000000596046448 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + + + + + + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Red.mesh + + + + + + + + + + + + + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + + + + + + + Models/Props/Flora/Root.mesh + + + + + + + + + + + + + + Models/Props/Flora/Root.mesh + + + + + + + + + + + + + + Models/Props/Flora/Root.mesh + + + + + + + + + + + + + + Models/Props/Flora/Root.mesh + + + + + + + + + + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + true + false + + + + + + + + + + + + + + + + + + + + + + Models/Props/Flora/HangingBush1.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush1.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 2.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar3Blue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + 2.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 1.7000000476837158 + Models/Props/Pillars/SciFiPillar3Blue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar1Blue.mesh + + + + + + + + + + + + + 1.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + 2.5 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + + + + + + + + + + + + + 2.4000000953674316 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + Models/Props/Stones/ShinyStoneCrystalRed.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/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/Flora/HangingBush2.mesh + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + true + + + + + + + + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Medium_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 1.5 + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Blue.mesh + + + + + + + + + + + + + + 2 + Models/Props/Walls/Small_Wall_SciFi_Red.mesh + + + + + + + + + + + + + + + + + + + + 0.44999998807907104 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + 1.5 + 1 + + + + + + + + + + + + + + + + + + 0.60000002384185791 + Models/Props/PickUps/PickUpHolder.mesh + false + + + + + + + + + + + + 2 + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + + 1.5 + 3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush1.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush1.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + false + true + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush2.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush3.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + Models/Props/Flora/HangingBush4.mesh + + false + true + + + + + + + + + + + + + + + + + + + + + + Schema/Entities/PlayerAssaultBlue.xml + Schema/Entities/PlayerDefenderBlue.xml + + + + Schema/Entities/PlayerAssaultBlue.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 + + + + + + + + + + + + + + + + + + 1 + + + + Models/Props/CapturePoint/CapturePointCylinder.mesh + + false + true + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointNeutral.mesh + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + false + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + false + true + + + + + + + + + + + 1 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointRed.mesh + false + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointBlue.mesh + false + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + + 15 + + + + + + + + + + + Models/Props/CapturePoint/CapturePointCylinder.mesh + + false + true + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointNeutral.mesh + false + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + false + false + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + false + false + + + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointRed.mesh + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointBlue.mesh + false + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + true + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + + + + + + + + + 2 + + + + Models/Props/CapturePoint/CapturePointCylinder.mesh + + false + true + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointRed.mesh + false + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointBlue.mesh + false + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointNeutral.mesh + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + false + + + + + + + + + + + 1 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + + + + + + + -15 + + + + 4 + + + + + + + + Models/Props/CapturePoint/CapturePointCylinder.mesh + + false + true + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointNeutral.mesh + false + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + false + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + false + false + + + + + + + + + + + 1 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointRed.mesh + false + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointBlue.mesh + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + + + + + + + + + + + + + + + + + 3 + + + + Models/Props/CapturePoint/CapturePointCylinder.mesh + + false + true + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointRed.mesh + false + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointBlue.mesh + false + + + + + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + + false + false + + + + + + + + + 1 + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + 4.5 + 0.5 + false + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + + false + false + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + + false + false + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + false + true + + + + + + + + + + + + + + + + + + + Models/Props/CapturePoint/CapturePointNeutral.mesh + + + + + + + + + + + + + + + 0.30000001192092896 + + + + 30 + + + 3.5 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer1.mesh + false + + + + + + + + + + + 0.10000000149011612 + + + + 10 + + + 0.5 + + + + + + + + + + + Models/Props/CapturePoint/CenterCrystal.mesh + false + + + + + + + + + + + 1 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + 4.5 + 0.5 + + + + + + + + + + + + + + + 0.5 + + + + 20 + + + 3 + + + + + + + + + + + Models/Props/CapturePoint/CrystalsLayer2.mesh + false + + + + + + + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + 6 + + + 0.10000000149011612 + + + + + + + + + + Models/Props/CapturePoint/DoubleSidedCylinder.mesh + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + Schema/Entities/PlayerAssaultRed.xml + Schema/Entities/PlayerDefenderRed.xml + + + + 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 + + + + + + + + + + + + + Schema/Entities/ScoreBoard_Main.xml + + + + + + + + + + + + + + + + + + + Schema/Entities/ScoreBoard_Blue.xml + + + + + + + + + + + + + + + Models/Core/UnitCube.mesh + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + Name + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Deaths + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Kills + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + ID + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + KD + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + + + + + + 0.80000019073486328 + Models/Props/ScoreBoard/Scoreboard.mesh + false + + + + + + + + + + + Schema/Entities/ScoreBoard_Red.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KD + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Name + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + ID + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Deaths + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + Kills + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + + Models/Core/UnitCube.mesh + + false + + + + + + + + + + + + + + + + 0.70000028610229492 + Models/Props/ScoreBoard/Spectatorboard.mesh + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + false + + + + + + + + + + + Blue team win! + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + + + + + + + + + Red team win! + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 10 + + + + + + + + + + + + 10 + + + + + + + + + + + + + + + + 2 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + 1.3999999761581421 + + + + + + + + + + + 2 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + 2 + 0.5 + + + + + + + + + + + + 3 + 0.40000000596046448 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 4 + 0.5 + + + + + + + + + + + + 3 + 0.5 + + + + + + + + + + + 2.5 + + + + + + + + + + + + 4 + 0.30000001192092896 + + + + + + + + + + + + 4 + 0.34999999403953552 + + + + + + + + + + + + + 10 + + + + + + + + + + + 10 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 2 + 1 + 0.5 + + + + + + + + + + + + 3 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 3 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 10 + 1 + + + + + + + + + + + + 10 + 1 + + + + + + + + + + + + 10 + 1 + + + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + 6 + 0.69999998807907104 + + + + + + + + + + + + 15 + 1 + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + 3 + 0.60000002384185791 + + + + + + + + + + + + 6 + 0.5 + + + + + + + + + + + + 3 + 0.5 + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + 4 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 6 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + 6 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 6 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + + + + + + + + + + + + 5 + 0.69999998807907104 + + + + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + 15 + 1 + + + + + + + + + + + + + + + + + 10 + 1 + + + + + + + + + + + + 10 + 1 + + + + + + + + + + + + 10 + 1 + + + + + + + + + + + + + + + + + + + + + 0.55000001192092896 + 1.6000000238418579 + false + + + + + + + + + + + + + 0.55000001192092896 + 1.6000000238418579 + false + + + + + + + + + + + + + 0.55000001192092896 + 1.6000000238418579 + false + + + + + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 1 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 6 + 2 + 0.5 + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + + + + + + + + + + 5 + 2 + 0.5 + + + + + + + + + + + + 6 + 2 + 0.5 + + + + + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + 5 + 0.69999998807907104 + + + + + + + + + + + + 5 + 1 + + + + + + + + + + + + + 8 + + + + + + + + + + + + 0.66000008583068848 + + + + + + + + + + + + 1.2299997806549072 + 1.5699996948242188 + + + + + + + + 3 + + + + + + + + + + + + + + + 0.014999999664723873 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PickTeam + 1 + + + + + + + + + + + + + + + + + \1 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + Assault + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + 100 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + Blend + + + + + 1.6000000238418579 + Models/Characters/Assault/AssaultBluePose.mesh + false + + + + + + + + + + + + Models/Core/UnitSphere.mesh + false + + + 0.30000001192092896 + + + + + + + + + + + + AssaultPoseF + + true + + + + + + + + + R_Arm_Weapon_Joint + + + Models/Weapons/Blue/AssaultWeaponBlue.mesh + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + + + + PickClass + 1 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \1 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + Team Speed Boost + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + \7 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \4 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + x2 Jump + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Icons/Shoe-01.png + + + + + + + + + + + + + + + + + + + + + Dash + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Icons/Abilities/Square/Superman-01.png + + + + + + + + + + + + + + + + + + + + + PickTeam + 1 + + + + + + + + + + + + + + + Defender + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + 150 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \2 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + + + + PickClass + 2 + + + + + + + + + + + Blend + + + + + 1.6000000238418579 + Models/Characters/Defender/DefenderBluePose.mesh + false + + + + + + + + + + + + R_Arm_Weapon_Joint + + + Models/Weapons/Blue/DefenderWeaponBlue.mesh + + + + + + + + + + + + DefenderPoseF + + true + + + + + + + + + Models/Core/UnitSphere.mesh + false + + + 0.30000001192092896 + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Personal Shield + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Icons/Abilities/Square/SheildDots-01.png + + + + + + + + + + + + + + + + + + + + + + + + \2 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + Team Shield Boost + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + \7 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \5 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + PickTeam + 1 + + + + + + + + + + Blend + + + + + 1.6000000238418579 + Models/Characters/Sniper/SniperBluePose.mesh + false + + + + + + + + + + + + SniperPoseF + + true + + + + + + + + + R_Arm_Weapon_Joint + + + Models/Weapons/Blue/SecondaryWeaponBlue.mesh + + + + + + + + + + + + Models/Core/UnitSphere.mesh + false + + + 0.30000001192092896 + + + + + + + + + + + + + + + + + + + + + 100 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \3 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + Sniper + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sprint + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Icons/Abilities/Square/Dash-01.png + + + + + + + + + + + + + + + + + + + + + + + + Team Accuracy Boost + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \3 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + \6 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \7 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + + + + PickClass + 3 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + PickTeam + 3 + + + + + + + + + + + Blue + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/BlueTeam.png + true + + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + PickTeam_ + 1 + + + + + + + + + + + Spectator + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + PickTeam + 2 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + + + Blue + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/RedTeam.png + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 2 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 3 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 1 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + 1 + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + 1 + + + + 4 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + + Change Class + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + SwapToClassPick + 1 + + + + + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + + Change Team + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + SwapToTeamPick + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PickTeam + 1 + + + + + + + + + + + + + + + + + \1 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + Assault + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + 100 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + Blend + + + + + 1.6000000238418579 + Models/Characters/Assault/AssaultRedPose.mesh + false + + + + + + + + + + + + AssaultPoseF + + true + + + + + + + + + Models/Core/UnitSphere.mesh + false + + + 0.30000001192092896 + + + + + + + + + + + + R_Arm_Weapon_Joint + + + Models/Weapons/Red/AssaultWeaponRed.mesh + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + + + + PickClass + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + Team Speed Boost + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \1 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + \4 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \7 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Dash + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Icons/Abilities/Square/Superman-01.png + + + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Icons/Shoe-01.png + + + + + + + + + + + + x2 Jump + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + PickTeam + 1 + + + + + + + + Blend + + + + + 1.6000000238418579 + Models/Characters/Defender/DefenderRedPose.mesh + false + + + + + + + + + + + + R_Arm_Weapon_Joint + + + Models/Weapons/Red/DefenderWeaponRed.mesh + + + + + + + + + + + + Models/Core/UnitSphere.mesh + false + + + 0.30000001192092896 + + + + + + + + + + + + DefenderPoseF + + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + + + + PickClass + 2 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + + + + + + + + 150 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \2 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + Defender + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Personal Shield + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Icons/Abilities/Square/SheildDots-01.png + + + + + + + + + + + + + + + + + + + + + + + + \7 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \5 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + Team Shield Boost + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \2 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + PickTeam + 1 + + + + + + + + + + Blend + + + + + 1.6000000238418579 + Models/Characters/Sniper/SniperRedPose.mesh + false + + + + + + + + + + + + R_Arm_Weapon_Joint + + + Models/Weapons/Red/SecondaryWeaponRed.mesh + + + + + + + + + + + + SniperPoseF + + true + + + + + + + + + Models/Core/UnitSphere.mesh + false + + + 0.30000001192092896 + + + + + + + + + + + + + + + + + + + + + Sniper + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + 100 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \3 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + + + + PickClass + 3 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Team Accuracy Boost + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \3 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + \6 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + \7 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sprint + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Icons/Abilities/Square/Dash-01.png + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/FriendlyBoostRedHUD.xml b/resources/Schema/Entities/FriendlyBoostRedHUD.xml new file mode 100644 index 00000000..bdf08281 --- /dev/null +++ b/resources/Schema/Entities/FriendlyBoostRedHUD.xml @@ -0,0 +1,151 @@ + + + + + + 0.5 + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + + + + + + + + + + + + + + + \1 + Fonts/Hind-Edited.otf,64 + + false + + + + + + + + + + + \1 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + \2 + Fonts/Hind-Edited.otf,64 + + false + + + + + + + + + + + \2 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + \3 + Fonts/Hind-Edited.otf,64 + + false + + + + + + + + + + + \3 + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/MovementTest.xml b/resources/Schema/Entities/MovementTest.xml index c6e45bb6..df9d7b06 100644 --- a/resources/Schema/Entities/MovementTest.xml +++ b/resources/Schema/Entities/MovementTest.xml @@ -3,7 +3,7 @@ - 0.35657206405745967 + 0.10012471663946698 0.5 @@ -19,7 +19,11 @@ - + + Schema/Entities/PlayerAssaultRed.xml + Schema/Entities/PlayerDefenderRed.xml + + Schema/Entities/PlayerDefenderBlue.xml @@ -90,7 +94,11 @@ - + + Schema/Entities/PlayerAssaultBlue.xml + Schema/Entities/PlayerDefenderBlue.xml + + Schema/Entities/PlayerAssaultBlue.xml @@ -269,7 +277,7 @@ - + @@ -417,7 +425,7 @@ AssaultPoseF - + true @@ -433,7 +441,7 @@ Models/Weapons/Blue/AssaultWeaponBlue.mesh - + @@ -816,7 +824,7 @@ DefenderPoseF - + true @@ -832,8 +840,8 @@ Models/Weapons/Blue/DefenderWeaponBlue.mesh - - + + @@ -1089,22 +1097,6 @@ - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - @@ -1136,6 +1128,22 @@ + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + @@ -1177,7 +1185,7 @@ SniperPoseF - + true @@ -1193,8 +1201,8 @@ Models/Weapons/Blue/SecondaryWeaponBlue.mesh - - + + @@ -1428,14 +1436,14 @@ - + - + @@ -1447,14 +1455,14 @@ Textures/Core/White.png true - + PickTeam 3 - + @@ -1471,9 +1479,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1487,9 +1496,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1502,9 +1512,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1518,9 +1529,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1534,6 +1546,7 @@ Blue Fonts/DroidSans.ttf,64 + false @@ -1545,127 +1558,27 @@ - - - - - - - - - - + - Models/Core/UnitQuad.mesh - Textures/Core/White.png - true - + Textures/HUD/BlueTeam.png + true - - PickTeam - 2 - - + + - - - - Red - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - + @@ -1680,11 +1593,11 @@ - PickTeam + PickTeam_ 1 - + @@ -1693,7 +1606,7 @@ Spectator - Fonts/DroidSans.ttf,64 + Fonts/Hind-Edited.otf,64 @@ -1714,9 +1627,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1730,9 +1644,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1745,9 +1660,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1761,9 +1677,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1774,6 +1691,141 @@ + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + PickTeam + 2 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + + + Blue + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/RedTeam.png + true + + + + + + + + + + @@ -2182,6 +2234,60 @@ + + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + @@ -2322,7 +2428,7 @@ AssaultPoseF - + true @@ -2338,7 +2444,7 @@ Models/Weapons/Red/AssaultWeaponRed.mesh - + @@ -2721,7 +2827,7 @@ DefenderPoseF - + true @@ -2737,8 +2843,8 @@ Models/Weapons/Red/DefenderWeaponRed.mesh - - + + @@ -3082,7 +3188,7 @@ SniperPoseF - + true @@ -3098,8 +3204,8 @@ Models/Weapons/Red/SecondaryWeaponRed.mesh - - + + diff --git a/resources/Schema/Entities/MuzzleFlashRed.xml b/resources/Schema/Entities/MuzzleFlashRed.xml index 50b22d6c..97fe29c8 100644 --- a/resources/Schema/Entities/MuzzleFlashRed.xml +++ b/resources/Schema/Entities/MuzzleFlashRed.xml @@ -130,6 +130,66 @@ + + + + + + + + + Models/Core/UnitSphere.mesh + false + false + + + + + + + + + + + + + + + Models/Core/UnitSphere.mesh + + false + false + + + + 0.40000000596046448 + + + + + + + + + + + + Models/Core/UnitSphere.mesh + false + false + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/MuzzleFlashSideArmRed.xml b/resources/Schema/Entities/MuzzleFlashSideArmRed.xml new file mode 100644 index 00000000..1f8220c4 --- /dev/null +++ b/resources/Schema/Entities/MuzzleFlashSideArmRed.xml @@ -0,0 +1,219 @@ + + + + + + 0.080000000000000002 + + + + + + + + + + + + + + 0.080000000000000002 + + + 2 + Models/Effects/MuzzleFlash/Red/Cone1Outside.mesh + false + true + + + + + + + + + 0.080000000000000002 + + + 2 + Models/Effects/MuzzleFlash/Red/Cone1Inside.mesh + false + true + + + + + + + + + + + + + + + + + + 0.080000000000000002 + + + 2 + Models/Effects/MuzzleFlash/Red/Cone2Inside.mesh + false + true + + + + + + + + + 0.080000000000000002 + + + 2 + Models/Effects/MuzzleFlash/Red/Cone2Outside.mesh + false + true + + + + + + + + + + + + + + + + + + 0.080000000000000002 + + + 2 + Models/Effects/MuzzleFlash/Red/PlaneLeft.mesh + false + true + + + + + + + + + 0.080000000000000002 + + + 2 + Models/Effects/MuzzleFlash/Red/PlaneRight.mesh + false + true + + + + + + + + + 0.080000000000000002 + + + 2 + Models/Effects/MuzzleFlash/Red/PlaneUp.mesh + false + true + + + + + + + + + 0.080000000000000002 + + + 2 + Models/Effects/MuzzleFlash/Red/PlaneDown.mesh + false + true + + + + + + + + + + + + + + + + Models/Core/UnitSphere.mesh + false + false + + + + + + + + + + + + + + + Models/Core/UnitSphere.mesh + + false + false + + + + 0.40000000596046448 + + + + + + + + + + + + Models/Core/UnitSphere.mesh + false + false + + + + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/OverwatchCamera.xml b/resources/Schema/Entities/OverwatchCamera.xml index dc8d2cfe..dd60816a 100644 --- a/resources/Schema/Entities/OverwatchCamera.xml +++ b/resources/Schema/Entities/OverwatchCamera.xml @@ -8,7 +8,7 @@ - + @@ -69,6 +69,21 @@ + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + @@ -85,21 +100,6 @@ - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - @@ -157,7 +157,7 @@ AssaultPoseF - + true @@ -173,7 +173,7 @@ Models/Weapons/Blue/AssaultWeaponBlue.mesh - + @@ -556,7 +556,7 @@ DefenderPoseF - + true @@ -572,8 +572,8 @@ Models/Weapons/Blue/DefenderWeaponBlue.mesh - - + + @@ -829,6 +829,22 @@ + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + @@ -860,22 +876,6 @@ - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - @@ -917,7 +917,7 @@ SniperPoseF - + true @@ -933,8 +933,8 @@ Models/Weapons/Blue/SecondaryWeaponBlue.mesh - - + + @@ -1168,14 +1168,14 @@ - + - + @@ -1187,14 +1187,14 @@ Textures/Core/White.png true - + PickTeam 3 - + @@ -1211,9 +1211,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1227,9 +1228,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1242,9 +1244,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1258,9 +1261,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1274,6 +1278,7 @@ Blue Fonts/DroidSans.ttf,64 + false @@ -1285,127 +1290,27 @@ - - - - - - - - - - + - Models/Core/UnitQuad.mesh - Textures/Core/White.png - true - + Textures/HUD/BlueTeam.png + true - - PickTeam - 2 - - + + - - - - Red - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - + @@ -1420,11 +1325,11 @@ - PickTeam + PickTeam_ 1 - + @@ -1433,7 +1338,7 @@ Spectator - Fonts/DroidSans.ttf,64 + Fonts/Hind-Edited.otf,64 @@ -1454,9 +1359,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1470,9 +1376,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1485,9 +1392,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1501,9 +1409,10 @@ Textures/HUD/ButtonCorner_16.png false + true - + @@ -1514,6 +1423,141 @@ + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + PickTeam + 2 + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + true + + + + + + + + + + + + + + + Blue + Fonts/DroidSans.ttf,64 + false + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/RedTeam.png + true + + + + + + + + + + @@ -1534,7 +1578,7 @@ - 2 + 1 Fonts/DroidSans.ttf,64 @@ -2116,7 +2160,7 @@ AssaultPoseF - + true @@ -2132,7 +2176,7 @@ Models/Weapons/Red/AssaultWeaponRed.mesh - + @@ -2515,7 +2559,7 @@ DefenderPoseF - + true @@ -2531,8 +2575,8 @@ Models/Weapons/Red/DefenderWeaponRed.mesh - - + + @@ -2876,7 +2920,7 @@ SniperPoseF - + true @@ -2892,8 +2936,8 @@ Models/Weapons/Red/SecondaryWeaponRed.mesh - - + + diff --git a/resources/Schema/Entities/PlayerAssaultRed.xml b/resources/Schema/Entities/PlayerAssaultRed.xml new file mode 100644 index 00000000..6c25ce85 --- /dev/null +++ b/resources/Schema/Entities/PlayerAssaultRed.xml @@ -0,0 +1,1417 @@ + + + + + + + + + + + + + + + + + + + 10 + + + + + + + + 5 + + + + + + + + + + + + 0.10000000149011612 + 300 + + + + + + + + + + Models/Widgets/Camera.mesh + false + + + + + + + + + + + + Schema/Entities/PlayerHUD.xml + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Weapons/Crosshair/SmallThickHoleDot.png + + + + + + + + + + + + Schema/Entities/HitMarker.xml + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 2 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 3 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + 1 + + + + 4 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 1 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + 1 + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + Models/Widgets/Arrows/ArrowBlue.mesh + false + + + + + + + + + + + + + + + + + + + + + 1 + + + + + 100/100 + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + 1 + + + + + Models/Core/UnitQuad.mesh + + Textures/HealthHUD3.png + + + + + + + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Boosts/Assault-01.png + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Boosts/Defender-01.png + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Boosts/Sniper-01.png + + + + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Abilities/Long/Superman-01.png + + + + + + + + + + + + + + + + + + + + + + + + + Schema/Entities/WeaponAssaultRedView.xml + + + + AssaultWeapon + + + + + + + + Schema/Entities/WeaponSidearmAssaultRedView.xml + + + + SidearmWeapon + + + + + + + + + + + + 0.10000000149011612 + 300 + + + Models/Widgets/Camera.mesh + false + + + + + + + + + + + + BlendTreeUpper + BlendTreeLower + + + + + 2.2000000476837158 + Models/Characters/Assault/AssaultRed.mesh + + + + + + + + R_Arm_Weapon_Joint + + + Schema/Entities/WeaponAssaultRedWorld.xml + + + + + + + AssaultWeapon + + + + + + + + + + + R_Arm_Weapon_Joint + + + Schema/Entities/SidearmWeaponRedWorld.xml + + + + + + + SidearmWeapon + + + + + + + + + + + MovementBlend + JumpDashBlend + 2.5146881298480398e-63 + true + + + + + + + + StandMovement + CrouchMovement + 0 + true + + + + + + + + DirectionBlend + Idle + 1 + + + + + + + + Walk + StrafeLRBlend + 0 + + + + + + + + Left + Right + 0.033793529385008014 + + + + + + + + CrouchStrafeLeftF + + true + + + + + + + + + CrouchStrafeRightF + + true + + + + + + + + + + + CrouchWalkF + + true + + + + + + + + + + + CrouchF + + true + + + + + + + + + + + DirectionBlend + Idle + 1 + + + + + + + + RunWalkBlend + StrafeLRBlend + 2.4565650245976452e-16 + + + + + + + + Walk + Run + 1.2938206818383024e-24 + + + + + + + + WalkF + + true + + + + + + + + + RunF + + 2 + true + + + + + + + + + + + Left + Right + 0.033793529385008014 + + + + + + + + StrafeLeftF + + 2 + true + + + + + + + + + StrafeRightF + + 2 + true + + + + + + + + + + + + + IdleF + + true + + + + + + + + + + + + + Jump + DashBlend + 1 + true + + + + + + + + JumpF + + false + + + + + + + + + DashFBBlend + DashLRBlend + 0.014621149736541383 + + + + + + + + DashForward + DashBackward + 0.014363533804961248 + + + + + + + + DashForwardF + + 1.7999999523162842 + false + + + + + + + + + DashBackwardF + + 1.7999999523162842 + false + + + + + + + + + + + DashLeft + DashRight + 4.3244885367500671e-16 + + + + + + + + DashLeftF + + 1.7999999523162842 + false + + + + + + + + + DashRightF + + 1.7999999523162842 + false + + + + + + + + + + + + + + + + + AssaultWeapon + SidearmWeapon + 0 + true + + + + + + + + Aim + WeaponBlend + + + + + + + + IdleAssault + ActionBlend + + + + + + + + Fire + Reload + 1 + + + + + + + + ReloadSwitchU + 0.5 + false + + + + + + + + + ShootFastRifleU + false + + + + + + + + + + + IdleAssaultRifleU + + true + true + + + + + + + + + + + AimRifleA + + 0.10000000149011612 + false + true + + + + + + + + + + + Aim + WeaponBlend + + + + + + + + IdleSidearm + ActionBlend + + + + + + + + Reload + Fire + 1 + + + + + + + + ReloadSwitchU + false + + + + + + + + + ShootSecWepU + false + + + + + + + + + + + IdleSecWepU + true + + + + + + + + + + + AimSecWepA + + false + true + + + + + + + + + + + + + + + + + + L_Elbow + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + + R_Elbow + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + + Head + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + + L_Leg_Top + + + + + 0.10000000149011612 + + + + + + + + + + + + R_Leg_Top + + + + + 0.10000000149011612 + + + + + + + + + + + + L_Leg_Bottomdw + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + + R_Leg_Bottom + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + + + + + + Models/Core/UnitCube.mesh + + false + + + + + + + + + + + + Models/Core/UnitCube.mesh + + false + + + + + + + + + + + + Fonts/DroidSans.ttf,100 + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Arrow.png + + + + + 50 + true + + + + + + + + + + + + Schema/Entities/DefenderShield.xml + + + + + + + + + + diff --git a/resources/Schema/Entities/PlayerDefenderRed.xml b/resources/Schema/Entities/PlayerDefenderRed.xml new file mode 100644 index 00000000..3dbb9289 --- /dev/null +++ b/resources/Schema/Entities/PlayerDefenderRed.xml @@ -0,0 +1,1426 @@ + + + + + + + + + + + + + + + + 120 + 8 + 5 + + + 10 + + + 150 + 150 + + + + + + + + 5 + + + + + + + + + + + + 0.10000000149011612 + 300 + + + + + + + + + + Models/Widgets/Camera.mesh + false + + + + + + + + + + + + + + + + + Schema/Entities/WeaponDefenderRedView.xml + + + + DefenderWeapon + + + + + + + + Schema/Entities/WeaponSidearmDefenderRedView.xml + + + + SidearmWeapon + + + + + + + + + + Schema/Entities/PlayerHUD.xml + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Weapons/Crosshair/SmallThickHoleDot.png + + + + + + + + + + + + Schema/Entities/HitMarker.xml + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 2 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 3 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + 1 + + + + 4 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + 1 + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + 1 + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon_Rotated.png + + + + + + + + + + + + + + + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + Fonts/Hind-Edited.otf,64 + + + + + + + + + + + + + + + + + + + + + + Models/Widgets/Arrows/ArrowBlue.mesh + false + + + + + + + + + + + + + + + + + + + + + 1 + + + + + 150/150 + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + 1 + + + + + Models/Core/UnitQuad.mesh + + Textures/HealthHUD3.png + + + + + + + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Boosts/Assault-01.png + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Boosts/Defender-01.png + + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Boosts/Sniper-01.png + + + + + + + + + + + + + + + + + 1 + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Abilities/Long/SheildDots-01.png + + + + + + + + + + + + + + + + + + + + + + 0.10000000149011612 + 300 + + + Models/Widgets/Camera.mesh + false + + + + + + + + + + + + BlendTreeUpper + BlendTreeLower + + + + + 2.2000000476837158 + Models/Characters/Defender/DefenderRed.mesh + + + + + + + + R_Arm_Weapon_Joint + + + Schema/Entities/WeaponDefenderRedWorld.xml + + + + + + + DefenderWeapon + + + + + + + + + + + R_Arm_Weapon_Joint + + + Schema/Entities/SidearmWeaponRedWorld.xml + + + + + + + SidearmWeapon + + + + + + + + + + + MovementBlend + Jump + 0 + true + + + + + + + + StandMovement + CrouchMovement + 0 + true + + + + + + + + DirectionBlend + Idle + 1 + + + + + + + + Walk + StrafeLRBlend + 0 + + + + + + + + Left + Right + 0.033793529385008014 + + + + + + + + CrouchStrafeLeftF + + true + + + + + + + + + CrouchStrafeRightF + + true + + + + + + + + + + + CrouchWalkF + + true + + + + + + + + + + + CrouchF + + true + + + + + + + + + + + DirectionBlend + Idle + 1 + + + + + + + + RunWalkBlend + StrafeLRBlend + 2.4565650245976452e-16 + + + + + + + + Walk + Run + 1.2938206818383024e-24 + + + + + + + + WalkF + + true + + + + + + + + + RunF + + 2 + true + + + + + + + + + + + Left + Right + 0.033793529385008014 + + + + + + + + StrafeLeftF + + 2 + true + + + + + + + + + StrafeRightF + + 2 + true + + + + + + + + + + + + + IdleF + + true + + + + + + + + + + + + + JumpF + + false + + + + + + + + + + + DefenderWeapon + SidearmWeapon + 1 + true + + + + + + + + Aim + WeaponBlend + + + + + + + + IdleDefender + FinalBlend + + + + + + + + ShieldBlend + ActionBlend + 1 + + + + + + + + ActivateShield + SheildFront + 1 + + + + + + + + ActivateShieldU + + 2 + false + + + + + + + + + ShieldFrontU + + true + + + + + + + + + + + Fire + Reload + 0 + + + + + + + + ShootgunReloadU + + 0.5 + + + + + + + + + ShootRifleU + + false + + + + + + + + + + + + + IdleAssaultRifleU + + true + true + + + + + + + + + + + AimRifleA + + true + + + + + + + + + + + Aim + WeaponBlend + + + + + + + + IdleSidearm + ActionBlend + + + + + + + + Reload + Fire + + + + + + + + ReloadSwitchU + false + + + + + + + + + ShootSecWepU + false + + + + + + + + + + + IdleSecWepU + true + + + + + + + + + + + AimSecWepA + + 0.10000000149011612 + false + true + + + + + + + + + + + + + + + + + + Head + + + + + + + + + + + + 0.5 + 0.20000000298023224 + + + + + + + + + + + + 0.5 + 0.20000000298023224 + + + + + + + + + + + + 0.20000000298023224 + + + + + + + + + + + + + L_Shoulder_Armor_Joint + + + + + + + + + + + + 0.20000000298023224 + + + + + + + + + + + + + R_Shoulder_Armor_Joint + + + + + + + + + + + + 0.20000000298023224 + + + + + + + + + + + + + L_Elbow + + + + + + + + + + + + 0.20000000298023224 + + + + + + + + + + + + 0.20000000298023224 + + + + + + + + + + + + + R_Elbow + + + + + + + + + + + + 0.20000000298023224 + + + + + + + + + + + + 0.20000000298023224 + + + + + + + + + + + + + Spine_3 + + + + + + + + + + + + 0.20000000298023224 + + + + + + + + + + + + + L_Leg_Bottom + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + + R_Leg_Bottom + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + 0.10000000149011612 + + + + + + + + + + + + + + + + + Models/Core/UnitCube.mesh + + false + + + + + + + + + + + + Models/Core/UnitCube.mesh + + false + + + + + + + + + + + + Fonts/DroidSans.ttf,100 + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Icons/Arrow.png + + + + + 50 + true + + + + + + + + + + + + Schema/Entities/DefenderShield.xml + + + + + + + + diff --git a/resources/Schema/Entities/RayAssaultBlue.xml b/resources/Schema/Entities/RayAssaultBlue.xml index c358a4d5..b474ff2c 100644 --- a/resources/Schema/Entities/RayAssaultBlue.xml +++ b/resources/Schema/Entities/RayAssaultBlue.xml @@ -5,6 +5,7 @@ 0.079999998211860657 + @@ -17,10 +18,8 @@ Textures/Effects/NewRay5.png true - true - @@ -35,10 +34,8 @@ Textures/Effects/NewRay5.png true - true - diff --git a/resources/Schema/Entities/RayAssaultRed.xml b/resources/Schema/Entities/RayAssaultRed.xml new file mode 100644 index 00000000..e215f9ef --- /dev/null +++ b/resources/Schema/Entities/RayAssaultRed.xml @@ -0,0 +1,47 @@ + + + + + + 0.079999998211860657 + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Effects/NewRay5.png + + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Effects/NewRay5.png + + true + + + + + + + + + + + diff --git a/resources/Schema/Entities/RayDefenderBlue.xml b/resources/Schema/Entities/RayDefenderBlue.xml index 066f2fb1..56a416ce 100644 --- a/resources/Schema/Entities/RayDefenderBlue.xml +++ b/resources/Schema/Entities/RayDefenderBlue.xml @@ -5,6 +5,7 @@ 0.079999998211860657 + @@ -17,12 +18,10 @@ Textures/Effects/NewRay7.png true - true - - + @@ -35,12 +34,10 @@ Textures/Effects/NewRay7.png true - true - - + diff --git a/resources/Schema/Entities/RayDefenderRed.xml b/resources/Schema/Entities/RayDefenderRed.xml new file mode 100644 index 00000000..5ab225e2 --- /dev/null +++ b/resources/Schema/Entities/RayDefenderRed.xml @@ -0,0 +1,47 @@ + + + + + + 0.079999998211860657 + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Effects/NewRay7.png + + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Effects/NewRay7.png + + true + + + + + + + + + + + diff --git a/resources/Schema/Entities/RaySideArmBlue.xml b/resources/Schema/Entities/RaySideArmBlue.xml index 072f8e95..f48a8fc3 100644 --- a/resources/Schema/Entities/RaySideArmBlue.xml +++ b/resources/Schema/Entities/RaySideArmBlue.xml @@ -3,11 +3,12 @@ - 0.08 + 0.080000000000000002 - 0.08 + 0.080000000000000002 + @@ -20,10 +21,8 @@ Textures/Effects/NewRay5.png true - true - @@ -38,10 +37,8 @@ Textures/Effects/NewRay5.png true - true - diff --git a/resources/Schema/Entities/RaySideArmRed.xml b/resources/Schema/Entities/RaySideArmRed.xml new file mode 100644 index 00000000..197d56ba --- /dev/null +++ b/resources/Schema/Entities/RaySideArmRed.xml @@ -0,0 +1,50 @@ + + + + + + 0.080000000000000002 + + + 0.080000000000000002 + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Effects/NewRay5.png + + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Effects/NewRay5.png + + true + + + + + + + + + + + diff --git a/resources/Schema/Entities/ReloadEffectViewRed.xml b/resources/Schema/Entities/ReloadEffectViewRed.xml index 56b9d140..731dff09 100644 --- a/resources/Schema/Entities/ReloadEffectViewRed.xml +++ b/resources/Schema/Entities/ReloadEffectViewRed.xml @@ -1,20 +1,20 @@ - + - 2 + 1 - true - - - true - + + + 1 + true Models/Weapons/Red/AssaultWeaponRed.mesh + true diff --git a/resources/Schema/Entities/ReloadEffectWorld.xml b/resources/Schema/Entities/ReloadEffectWorld.xml index ae6d3a3e..a5ffb087 100644 --- a/resources/Schema/Entities/ReloadEffectWorld.xml +++ b/resources/Schema/Entities/ReloadEffectWorld.xml @@ -6,12 +6,14 @@ 2 - true - - - true - + + + + 1.3399996757507324 true + true + true + 5.0899982452392578 Models/Weapons/Blue/AssaultWeaponBlue.mesh diff --git a/resources/Schema/Entities/ReloadEffectWorldRed.xml b/resources/Schema/Entities/ReloadEffectWorldRed.xml index 55c37389..94739beb 100644 --- a/resources/Schema/Entities/ReloadEffectWorldRed.xml +++ b/resources/Schema/Entities/ReloadEffectWorldRed.xml @@ -6,12 +6,14 @@ 2 - true - - - true - + + + + 1.3399996757507324 true + true + true + 5.0899982452392578 Models/Weapons/Red/AssaultWeaponRed.mesh diff --git a/resources/Schema/Entities/SidearmWeaponBlueWorld.xml b/resources/Schema/Entities/SidearmWeaponBlueWorld.xml index d497e955..d32c0dee 100644 --- a/resources/Schema/Entities/SidearmWeaponBlueWorld.xml +++ b/resources/Schema/Entities/SidearmWeaponBlueWorld.xml @@ -2,6 +2,7 @@ + Models/Weapons/Blue/SecondaryWeaponBlue.mesh @@ -9,16 +10,37 @@ - + - - Schema/Entities/RayBlue.xml - - + - + + + + + Schema/Entities/RaySideArmBlue.xml + + + + + + + + + + + Schema/Entities/MuzzleFlashSideArmBlue.xml + + + + + + + + + diff --git a/resources/Schema/Entities/SidearmWeaponRedWorld.xml b/resources/Schema/Entities/SidearmWeaponRedWorld.xml new file mode 100644 index 00000000..0dc94319 --- /dev/null +++ b/resources/Schema/Entities/SidearmWeaponRedWorld.xml @@ -0,0 +1,47 @@ + + + + + + + Models/Weapons/Red/SecondaryWeaponRed.mesh + + + + + + + + + + + + + + + + Schema/Entities/RaySideArmRed.xml + + + + + + + + + + + Schema/Entities/MuzzleFlashSideArmRed.xml + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/SidearmWeaponView.xml b/resources/Schema/Entities/SidearmWeaponView.xml index d3dcda66..11e049d4 100644 --- a/resources/Schema/Entities/SidearmWeaponView.xml +++ b/resources/Schema/Entities/SidearmWeaponView.xml @@ -11,17 +11,6 @@ - - - - Schema/Entities/Ray2Red.xml - - - - - - - @@ -38,8 +27,9 @@ - Textures/Core/UnitHexagon.png + Models/Core/UnitQuad.mesh + Textures/Core/UnitHexagon.png @@ -56,16 +46,16 @@ - - Player - SidearmWeapon - MagazineAmmo - 16 Fonts/DroidSans.ttf,64 + + Player + SidearmWeapon + MagazineAmmo + @@ -92,6 +82,37 @@ + + + + + + + + + + + Schema/Entities/RaySideArmBlue.xml + + + + + + + + + + + Schema/Entities/MuzzleFlashSideArmBlue.xml + + + + + + + + + diff --git a/resources/Schema/Entities/StartMenu.xml b/resources/Schema/Entities/StartMenu.xml index 2bcd7118..28164744 100644 --- a/resources/Schema/Entities/StartMenu.xml +++ b/resources/Schema/Entities/StartMenu.xml @@ -22,7 +22,7 @@ - 5.9332086658013736 + 3.7499942402064335 @@ -54,8 +54,7 @@ - Models/Props/Walls/SciFiWallBig.mesh - true + Models/Props/Walls/SciFiWallMedium.mesh @@ -65,7 +64,8 @@ - Models/Props/Walls/SciFiWallMedium.mesh + Models/Props/Walls/SciFiWallBig.mesh + true @@ -697,6 +697,18 @@ + + + + + Models/Highgrounds/Hg4.mesh + + + + + + + @@ -758,18 +770,6 @@ - - - - - Models/Highgrounds/Hg4.mesh - - - - - - - @@ -2183,6 +2183,68 @@ + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + @@ -2523,6 +2585,47 @@ + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + @@ -3288,19 +3391,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - @@ -3341,20 +3431,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -3369,20 +3445,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -3396,8 +3458,8 @@ Models/Props/PickUps/PickUpHolder.mesh - - + + @@ -3405,49 +3467,7 @@ - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - + @@ -3462,8 +3482,8 @@ Models/Props/PickUps/AmmoPickUp.mesh - - + + @@ -3505,7 +3525,133 @@ - + + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + @@ -3547,49 +3693,7 @@ - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/AmmoPickUp.mesh - - - - + @@ -3631,49 +3735,7 @@ - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - + @@ -3691,6 +3753,31 @@ + + + + + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + @@ -3720,18 +3807,6 @@ - - - - - Models/Props/Pillars/StonePillar.mesh - - - - - - - @@ -3746,19 +3821,6 @@ - - - - - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - @@ -3775,73 +3837,24 @@ - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - - - + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + @@ -3868,19 +3881,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - @@ -3912,6 +3912,108 @@ + + + + + 4 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 4 + Models/Props/Pillars/SciFiPillar3Red.mesh + + + + + + + + + + + + + + 4 + Models/Props/Pillars/SciFiPillar1Red.mesh + + + + + + + + + + + + + + 4 + Models/Props/Pillars/SciFiPillar3Red.mesh + + + + + + + + + + + + + + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 6 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + @@ -3941,20 +4043,6 @@ - - - - - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - @@ -3969,21 +4057,6 @@ - - - - - 4 - Models/Props/Pillars/SciFiPillar3Red.mesh - - - - - - - - - @@ -3999,20 +4072,6 @@ - - - - - 6 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - @@ -4027,21 +4086,6 @@ - - - - - 4 - Models/Props/Pillars/SciFiPillar1Red.mesh - - - - - - - - - @@ -4056,21 +4100,6 @@ - - - - - 4 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - @@ -4086,20 +4115,6 @@ - - - - - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - @@ -4115,21 +4130,6 @@ - - - - - 4 - Models/Props/Pillars/SciFiPillar3Red.mesh - - - - - - - - - @@ -4137,53 +4137,813 @@ - + + - Models/Props/PickUps/PickUpHolder.mesh + Models/Props/Flora/SpecialRoot.mesh - - - + + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + + + + Models/Props/Flora/SpecialRoot.mesh + + + + + + + + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/BigWallRed.mesh + + + + + + Models/Props/Walls/BigWallRed.mesh + - + + - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - - - - - - - + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/MediumWall3.mesh + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/SmallWall3.mesh + + + + + + + + + + + + + + + + + + + + + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + 2 + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 4 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 2 + 1 + + + + + + + + + + + + 3 + + + + + + + + + + + + 2 + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 4 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + + + + + + + + + + + 2 + + + + + + + + + + + + + + + + + + + + + + + + + 5 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalRed.mesh + + + + + + + + + + + + + + + @@ -4215,49 +4975,7 @@ - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - + @@ -4299,133 +5017,7 @@ - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/AmmoPickUp.mesh - - - - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - - - - - - - - - - - - - - - Models/Props/PickUps/PickUpHolder.mesh - - - - - - - - - - - - - - - - - - - - 8 - - - - Models/Props/PickUps/HealthPickUp.mesh - - - - + @@ -4467,7 +5059,217 @@ - + + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/AmmoPickUp.mesh + + + + + + + + + + + + + + + + + + Models/Props/PickUps/PickUpHolder.mesh + + + + + + + + + + + + + + + + + + + + 8 + + + + Models/Props/PickUps/HealthPickUp.mesh + + + + @@ -4509,7 +5311,7 @@ - + @@ -4527,6 +5329,19 @@ + + + + + Models/Props/Stones/AssaultHolder.mesh + + + + + + + + @@ -4567,19 +5382,6 @@ - - - - - Models/Props/Stones/AssaultHolder.mesh - - - - - - - - @@ -4596,30 +5398,51 @@ - - - - - - - - - - Models/Props/Pillars/StonePillar.mesh - - - - - - - - - + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + @@ -4627,13 +5450,269 @@ Models/Props/Stones/SmallStone1.mesh - - + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/mediumStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + @@ -4652,12 +5731,39 @@ - Models/Props/Stones/SmallStone1.mesh + Models/Props/Stones/SmallStone2.mesh - - - + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + @@ -4679,12 +5785,12 @@ - Models/Props/Stones/SmallStone1.mesh + Models/Props/Stones/MediumStone2.mesh - - - + + + @@ -4696,8 +5802,75 @@ Models/Props/Stones/SmallStone2.mesh - - + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + @@ -4716,19 +5889,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - @@ -4743,20 +5903,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -4770,18 +5916,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - @@ -4796,20 +5930,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - - @@ -4823,20 +5943,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - - @@ -4850,19 +5956,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - @@ -4876,20 +5969,6 @@ - - - - - Models/Props/Stones/mediumStone2.mesh - - - - - - - - - @@ -4903,20 +5982,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -4930,19 +5995,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - @@ -4955,19 +6007,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - @@ -5022,20 +6061,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -5076,19 +6101,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - @@ -5103,20 +6115,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -5131,20 +6129,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -5159,20 +6143,6 @@ - - - - - Models/Props/Stones/mediumStone2.mesh - - - - - - - - - @@ -5187,19 +6157,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - @@ -5213,19 +6170,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - @@ -5239,20 +6183,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -5267,19 +6197,6 @@ - - - - - Models/Props/Stones/mediumStone2.mesh - - - - - - - - @@ -5293,19 +6210,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - @@ -5319,20 +6223,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -5347,19 +6237,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - @@ -5373,19 +6250,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - @@ -5400,20 +6264,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -5456,19 +6306,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - @@ -5536,20 +6373,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -5564,19 +6387,6 @@ - - - - - Models/Props/Stones/mediumStone2.mesh - - - - - - - - @@ -5590,20 +6400,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - @@ -5618,15 +6414,21 @@ + + + + + + + - Models/Props/Stones/SmallStone1.mesh + Models/Props/Pillars/StonePillar.mesh - - + @@ -5658,8 +6460,8 @@ Models/Props/Stones/AssaultHolder.mesh - - + + @@ -5671,8 +6473,8 @@ Models/Props/Stones/AssaultHolder.mesh - - + + @@ -5684,6 +6486,18 @@ + + + + + Models/Props/Pillars/StonePillar.mesh + + + + + + + @@ -5697,6 +6511,21 @@ + + + + + 6 + Models/Props/Pillars/SciFiPillar1Red.mesh + + + + + + + + + @@ -5711,18 +6540,6 @@ - - - - - Models/Props/Pillars/StonePillar.mesh - - - - - - - @@ -5737,21 +6554,6 @@ - - - - - 6 - Models/Props/Pillars/SciFiPillar1Red.mesh - - - - - - - - - @@ -5768,73 +6570,25 @@ - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - - - - - - Models/Props/Flora/SpecialRoot.mesh - - - - - - - - - - + + + + + Models/Props/Walls/SpecialWall1.mesh + + + + + + + + + @@ -5863,20 +6617,6 @@ - - - - - Models/Props/Walls/SpecialWall1.mesh - - - - - - - - - @@ -5893,328 +6633,25 @@ - - - - - - - - - - 4 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 3 - - - - - - - - - - - - 2 - - - - - - - - - - - - 2 - 1 - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 4 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2 - - - - - - - - - - - - - - 5 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - 2 - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalRed.mesh - - - - - - - - - - - + + + + + Models/Props/Pillars/SciFiBridgePillar1.mesh + + + + + + + + + @@ -6227,45 +6664,6 @@ - - - - - Models/Props/Bridges/SciFiBridgeDefense.mesh - - - - - - - - - - - - - Models/Props/Pillars/SciFiBridgePillar1.mesh - - - - - - - - - - - - - Models/Props/Bridges/SciFiBridgeDefense.mesh - - - - - - - - @@ -6293,6 +6691,32 @@ + + + + + Models/Props/Bridges/SciFiBridgeDefense.mesh + + + + + + + + + + + + + Models/Props/Pillars/SciFiBridgePillar1.mesh + + + + + + + + @@ -6306,6 +6730,32 @@ + + + + + Models/Props/Bridges/SciFiBridgeDefense.mesh + + + + + + + + + + + + + Models/Props/Bridges/SciFiBridgeDefense.mesh + + + + + + + + @@ -6319,19 +6769,6 @@ - - - - - Models/Props/Bridges/SciFiBridgeDefense.mesh - - - - - - - - @@ -6351,12 +6788,12 @@ - Models/Props/Pillars/SciFiBridgePillar1.mesh + Models/Props/Bridges/SciFiBridge1Red.mesh - - - + + + @@ -6479,20 +6916,6 @@ - - - - - Models/Props/Bridges/SciFiBridge1Red.mesh - - - - - - - - - @@ -6510,429 +6933,6 @@ - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/BigWallBlue.mesh - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - - - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/BigWallRed.mesh - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/MediumWall3.mesh - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - - - - Models/Props/Walls/SmallWall3.mesh - - - - - - - - - - - @@ -6945,8 +6945,8 @@ Models/Props/SciFiHolder1.mesh - - + + @@ -6958,8 +6958,8 @@ Models/Props/SciFiHolder1.mesh - - + + @@ -7012,6 +7012,75 @@ + + + + + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + 6 + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + Models/Props/Stones/ShinyStoneCrystalBlue.mesh + + + + + + + + + + + + + + Models/Props/SciFiHolder1.mesh + + + + + + + + + + + + + Models/Props/Bridges/SciFiBridgeDefense.mesh + + + + + + + + @@ -7054,19 +7123,6 @@ - - - - - Models/Props/Bridges/SciFiBridgeDefense.mesh - - - - - - - - @@ -7107,20 +7163,6 @@ - - - - - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - @@ -7160,20 +7202,6 @@ - - - - - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - @@ -7214,19 +7242,6 @@ - - - - - Models/Props/SciFiHolder1.mesh - - - - - - - - @@ -7266,236 +7281,6 @@ - - - - - 6 - Models/Props/Stones/ShinyStoneCrystalBlue.mesh - - - - - - - - - - - - - - - - - - - - - - - - - - 6 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - - 6 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - 6 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - 6 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - 6 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - - 4 - Models/Props/Pillars/SciFiPillar2Red.mesh - - - - - - - - - - - - - - 6 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - 4 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - - 4 - Models/Props/Pillars/SciFiPillar3Blue.mesh - - - - - - - - - - - - - - 6 - Models/Props/Pillars/SciFiPillar1Blue.mesh - - - - - - - - - - - - - 6 - Models/Props/Pillars/SciFiPillar2Blue.mesh - - - - - - - - - - - - - - 4 - Models/Props/Pillars/SciFiPillar3Blue.mesh - - - - - - - - - @@ -7503,11 +7288,365 @@ + + + + + + + + + + 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/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/SmallStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/SmallStone2.mesh + + + + + + + + + + + + + + Models/Props/Stones/SmallStone1.mesh + + + + + + + + + + + + + Models/Props/Stones/BigStone.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + + + + + + Models/Props/Stones/MediumStone2.mesh + + + + + + + + @@ -7535,19 +7674,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - @@ -7588,19 +7714,6 @@ - - - - - Models/Props/Stones/BigStone.mesh - - - - - - - - @@ -7642,19 +7755,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - @@ -7695,19 +7795,6 @@ - - - - - Models/Props/Stones/MediumStone2.mesh - - - - - - - - @@ -7734,32 +7821,6 @@ - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - @@ -7788,34 +7849,6 @@ - - - - - Models/Props/Stones/SmallStone1.mesh - - - - - - - - - - - - - - Models/Props/Stones/SmallStone2.mesh - - - - - - - - - @@ -7868,7 +7901,7 @@ - + @@ -7910,7 +7943,7 @@ - + @@ -7928,6 +7961,46 @@ + + + + + Models/Props/Walls/BigWallRed.mesh + + + + + + + + + + + + + Models/Props/Walls/smallWall3.mesh + + + + + + + + + + + + + + Models/Props/Walls/BigWallBlue.mesh + + + + + + + + @@ -7956,19 +8029,6 @@ - - - - - Models/Props/Walls/BigWallRed.mesh - - - - - - - - @@ -8010,20 +8070,6 @@ - - - - - Models/Props/Walls/smallWall3.mesh - - - - - - - - - @@ -8064,19 +8110,6 @@ - - - - - Models/Props/Walls/BigWallBlue.mesh - - - - - - - - @@ -8116,253 +8149,220 @@ - + + + + + + + + + + + + + - + + + 6 + Models/Props/Pillars/SciFiPillar2Blue.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/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/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 4 + Models/Props/Pillars/SciFiPillar3Blue.mesh + + + + + + + + + + + + + + 6 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 6 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + 6 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + 6 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 4 + Models/Props/Pillars/SciFiPillar2Red.mesh + + + + + + + + + + + + + + 6 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + 4 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 6 + Models/Props/Pillars/SciFiPillar1Blue.mesh + + + + + + + + + + + + + 6 + Models/Props/Pillars/SciFiPillar2Blue.mesh + + + + + + + + + + + + + + 4 + Models/Props/Pillars/SciFiPillar3Blue.mesh + + + + + + + + @@ -8373,6 +8373,17 @@ + + + + 10 + + + + + + + @@ -8407,17 +8418,6 @@ - - - - 10 - - - - - - - @@ -8472,6 +8472,19 @@ + + + + + Models/Characters/Assault/AssaultTPose.mesh + false + + + + + + + @@ -8511,19 +8524,6 @@ - - - - - Models/Characters/Assault/AssaultTPose.mesh - false - - - - - - - @@ -8546,6 +8546,18 @@ + + + + + Models/Core/UnitCube.mesh + + + + + + + @@ -8568,18 +8580,6 @@ - - - - - Models/Core/UnitCube.mesh - - - - - - - @@ -8804,7 +8804,7 @@ - + @@ -8816,7 +8816,7 @@ - + @@ -8872,14 +8872,14 @@ - + - + - + @@ -8890,48 +8890,21 @@ true + + Options + 1 + - - - - Quit - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - @@ -8948,8 +8921,39 @@ + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + Options + Fonts/DroidSans.ttf,64 + + + + + + + + + + + @@ -9032,6 +9036,90 @@ + + + + + + + + + + + Quit + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/HUD/ButtonCorner_16.png + false + + + + + + + + + + + + + + + + false + Models/Core/UnitQuad.mesh + + Textures/Core/White.png + true + + + + Quit + 1 + + + + + + + + + @@ -9114,90 +9202,6 @@ - - - - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - - Models/Core/UnitQuad.mesh - - Textures/HUD/ButtonCorner_16.png - false - - - - - - - - - - - - - - - false - Models/Core/UnitQuad.mesh - - Textures/Core/White.png - true - - - - Options - 1 - - - - - - - - - - - Options - Fonts/DroidSans.ttf,64 - - - - - - - - - - - - - @@ -9207,19 +9211,19 @@ - + - Schema/Entities/OptionMenu.xml + Schema/Entities/ServerList.xml - + - Schema/Entities/ServerList.xml + Schema/Entities/OptionMenu.xml diff --git a/resources/Schema/Entities/WeaponAssaultBlueView.xml b/resources/Schema/Entities/WeaponAssaultBlueView.xml index e1d6b852..1c1e9cf7 100644 --- a/resources/Schema/Entities/WeaponAssaultBlueView.xml +++ b/resources/Schema/Entities/WeaponAssaultBlueView.xml @@ -8,6 +8,7 @@ Models/Characters/Assault/FirstPersonAssaultBlue.mesh + false @@ -90,9 +91,10 @@ 1.5 Models/Weapons/Blue/AssaultWeaponBlue.mesh + false - + @@ -131,7 +133,7 @@ Schema/Entities/RayAssaultBlue.xml - + diff --git a/resources/Schema/Entities/WeaponAssaultBlueWorld.xml b/resources/Schema/Entities/WeaponAssaultBlueWorld.xml index cb1acae6..aa844329 100644 --- a/resources/Schema/Entities/WeaponAssaultBlueWorld.xml +++ b/resources/Schema/Entities/WeaponAssaultBlueWorld.xml @@ -2,6 +2,7 @@ + Models/Weapons/Blue/AssaultWeaponBlue.mesh @@ -9,17 +10,6 @@ - - - - Schema/Entities/RayBlue.xml - - - - - - - @@ -29,6 +19,38 @@ + + + + + + + + + + + + Schema/Entities/MuzzleFlashBlue.xml + + + + + + + + + + + Schema/Entities/RayAssaultBlue.xml + + + + + + + + + diff --git a/resources/Schema/Entities/WeaponAssaultRedView.xml b/resources/Schema/Entities/WeaponAssaultRedView.xml new file mode 100644 index 00000000..f3dcac06 --- /dev/null +++ b/resources/Schema/Entities/WeaponAssaultRedView.xml @@ -0,0 +1,233 @@ + + + + + + MovementBlend + ActionBlend + + + Models/Characters/Assault/FirstPersonAssaultRed.mesh + false + + + + + + + + + Fire + Reload + 0 + true + + + + + + + + ReloadSwitchF + 0.5 + false + + + + + + + + + ShootRifleF + false + + + + + + + + + + + Idle + Run + 0 + true + + + + + + + + RunF + true + true + + + + + + + + + IdleF + true + true + + + + + + + + + + + R_Arm_Weapon_Joint + + + 1.5 + Models/Weapons/Red/AssaultWeaponRed.mesh + false + + + + + + + + + + + Schema/Entities/WeaponAssaultReloadEffectViewRed.xml + + + + + + + + + + + + + + + + + Schema/Entities/MuzzleFlashRed.xml + + + + + + + + + + + Schema/Entities/RayAssaultRed.xml + + + + + + + + + + + + + + + R_Ammo_Joint + + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + + + + + 32 + Fonts/DroidSans.ttf,64 + + + + + AssaultWeapon + MagazineAmmo + + + + + + + + + + + 320 + Fonts/DroidSans.ttf,64 + + + + + AssaultWeapon + Ammo + + + + + + + + + + + + + + Schema/Entities/FriendlyBoostRedHUD.xml + + + + + + + + + + + + diff --git a/resources/Schema/Entities/WeaponAssaultRedWorld.xml b/resources/Schema/Entities/WeaponAssaultRedWorld.xml new file mode 100644 index 00000000..18d4096c --- /dev/null +++ b/resources/Schema/Entities/WeaponAssaultRedWorld.xml @@ -0,0 +1,56 @@ + + + + + + + Models/Weapons/Red/AssaultWeaponRed.mesh + + + + + + + + + Schema/Entities/ReloadEffectWorldRed.xml + + + + + + + + + + + + + + + + + Schema/Entities/MuzzleFlashRed.xml + + + + + + + + + + + Schema/Entities/RayAssaultRed.xml + + + + + + + + + + + + diff --git a/resources/Schema/Entities/WeaponAssaultReloadEffectViewRed.xml b/resources/Schema/Entities/WeaponAssaultReloadEffectViewRed.xml new file mode 100644 index 00000000..3cbb0fdc --- /dev/null +++ b/resources/Schema/Entities/WeaponAssaultReloadEffectViewRed.xml @@ -0,0 +1,54 @@ + + + + + + 2 + + + + + + + + + + + 1 + 1 + -1 + 1 + + true + + + Models/Weapons/Red/AssaultWeaponRed.mesh + true + + + + + + + + + 1 + + + + + 1 + + true + + + Models/Weapons/Red/AssaultWeaponRed.mesh + true + + + + + + + + diff --git a/resources/Schema/Entities/WeaponDefenderBlueView.xml b/resources/Schema/Entities/WeaponDefenderBlueView.xml index 9e3d6a51..65475dc2 100644 --- a/resources/Schema/Entities/WeaponDefenderBlueView.xml +++ b/resources/Schema/Entities/WeaponDefenderBlueView.xml @@ -8,6 +8,7 @@ Models/Characters/Defender/FirstPersonDefenderBlue.mesh + false @@ -154,7 +155,7 @@ true - + @@ -244,9 +245,10 @@ Models/Weapons/Blue/DefenderWeaponBlue.mesh + false - + @@ -265,7 +267,7 @@ - + @@ -275,7 +277,7 @@ Schema/Entities/RayDefenderBlue.xml - + @@ -286,7 +288,7 @@ Schema/Entities/MuzzleFlashBlue.xml - + diff --git a/resources/Schema/Entities/WeaponDefenderBlueWorld.xml b/resources/Schema/Entities/WeaponDefenderBlueWorld.xml index bf87a789..18cf28da 100644 --- a/resources/Schema/Entities/WeaponDefenderBlueWorld.xml +++ b/resources/Schema/Entities/WeaponDefenderBlueWorld.xml @@ -2,6 +2,7 @@ + Models/Weapons/Blue/DefenderWeaponBlue.mesh @@ -9,17 +10,6 @@ - - - - Schema/Entities/DefenderRayBlue.xml - - - - - - - @@ -29,6 +19,38 @@ + + + + + + + + + + + Schema/Entities/RayDefenderBlue.xml + + + + + + + + + + + Schema/Entities/MuzzleFlashBlue.xml + + + + + + + + + + diff --git a/resources/Schema/Entities/WeaponDefenderRedView.xml b/resources/Schema/Entities/WeaponDefenderRedView.xml new file mode 100644 index 00000000..b13d11d1 --- /dev/null +++ b/resources/Schema/Entities/WeaponDefenderRedView.xml @@ -0,0 +1,303 @@ + + + + + + MovementBlend + FinalBlend + + + Models/Characters/Defender/FirstPersonDefenderRed.mesh + false + + + + + + + + + ActionBlend + Shield + 0 + true + + + + + + + + ActivateShieldF + false + + + + + + + + + Fire + ReloadBlend + 0 + + + + + + + + ShootShotgunF + false + + + + + + + + + ReloadLoop + ReloadTransitionBlend + 1 + + + + + + + + ShotgunReloadTwoF + + + + + + + + + ReloadStart + ReloadEnd + 0 + + + + + + + + ShotgunReloadOneF + false + + + + + + + + + ShotgunReloadThreeF + false + + + + + + + + + + + + + + + + + Idle + Run + 0 + true + + + + + + + + IdleF + true + true + + + + + + + + + RunF + true + true + + + + + + + + + + + R_Ammo_Joint + + true + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + + + + + 38 + Fonts/DroidSans.ttf,64 + + + + + DefenderWeapon + Ammo + + + + + + + + + + + + 5 + Fonts/DroidSans.ttf,64 + + + + + DefenderWeapon + MagazineAmmo + + + + + + + + + + + + + Schema/Entities/FriendlyBoostRedHUD.xml + + + + + + + + + + + + + + + + + + R_Arm_Weapon_Joint + + + Models/Weapons/Red/DefenderWeaponRed.mesh + false + + + + + + + + + + + Schema/Entities/ReloadEffectView.xml + + + + + + + + + + + + + + + + + + Schema/Entities/RayDefenderRed.xml + + + + + + + + + + + Schema/Entities/MuzzleFlashRed.xml + + + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/WeaponDefenderRedWorld.xml b/resources/Schema/Entities/WeaponDefenderRedWorld.xml new file mode 100644 index 00000000..19e5d332 --- /dev/null +++ b/resources/Schema/Entities/WeaponDefenderRedWorld.xml @@ -0,0 +1,56 @@ + + + + + + + Models/Weapons/Red/DefenderWeaponRed.mesh + + + + + + + + + Schema/Entities/ReloadEffectWorld.xml + + + + + + + + + + + + + + + + Schema/Entities/RayDefenderRed.xml + + + + + + + + + + + Schema/Entities/MuzzleFlashRed.xml + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/WeaponSidearmAssaultBlueView.xml b/resources/Schema/Entities/WeaponSidearmAssaultBlueView.xml index e48cffba..d0a98be5 100644 --- a/resources/Schema/Entities/WeaponSidearmAssaultBlueView.xml +++ b/resources/Schema/Entities/WeaponSidearmAssaultBlueView.xml @@ -8,6 +8,7 @@ Models/Characters/Assault/FirstPersonAssaultBlue.mesh + false @@ -183,6 +184,7 @@ 1.2999999523162842 Models/Weapons/Blue/SecondaryWeaponBlue.mesh + false @@ -204,7 +206,7 @@ - + @@ -213,9 +215,7 @@ Schema/Entities/RaySideArmBlue.xml - - - + diff --git a/resources/Schema/Entities/WeaponSidearmAssaultRedView.xml b/resources/Schema/Entities/WeaponSidearmAssaultRedView.xml new file mode 100644 index 00000000..b869d7ae --- /dev/null +++ b/resources/Schema/Entities/WeaponSidearmAssaultRedView.xml @@ -0,0 +1,239 @@ + + + + + + MovementBlend + ActionBlend + + + Models/Characters/Assault/FirstPersonAssaultRed.mesh + false + + + + + + + + + Idle + Run + 1 + true + + + + + + + + IdleSecF + true + true + + + + + + + + + RunSecF + true + true + + + + + + + + + + + Fire + Reload + 0 + + + + + + + + ShootSecF + false + + + + + + + + + ReloadSwitchSecF + false + + + + + + + + + + + R_Ammo_Joint + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + + + + + 16 + Fonts/DroidSans.ttf,64 + + + + + SidearmWeapon + MagazineAmmo + + + + + + + + + + + + 8 + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + Schema/Entities/FriendlyAmmoHUD.xml + + + + + + + + + + + Schema/Entities/AmmoShareEffectView.xml + + + + + + + + + + + + + + + + R_Arm_Weapon_Joint + + + 1.2999999523162842 + Models/Weapons/Red/SecondaryWeaponRed.mesh + false + + + + + + + + + + + Schema/Entities/WeaponSidearmReloadEffectViewRed.xml + + + + + + + + + + + + + + + + + + Schema/Entities/RaySideArmRed.xml + + + + + + + + + Schema/Entities/MuzzleFlashSideArmRed.xml + + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/WeaponSidearmDefenderBlueView.xml b/resources/Schema/Entities/WeaponSidearmDefenderBlueView.xml index 129082ed..0d647ba7 100644 --- a/resources/Schema/Entities/WeaponSidearmDefenderBlueView.xml +++ b/resources/Schema/Entities/WeaponSidearmDefenderBlueView.xml @@ -8,6 +8,7 @@ Models/Characters/Defender/FirstPersonDefenderBlue.mesh + false @@ -86,7 +87,7 @@ R_Ammo_Joint - + @@ -183,9 +184,10 @@ 1.5 Models/Weapons/Blue/SecondaryWeaponBlue.mesh + false - + @@ -204,10 +206,19 @@ - + + + + + Schema/Entities/RaySideArmBlue.xml + + + + + @@ -219,17 +230,6 @@ - - - - Schema/Entities/RaySideArmBlue.xml - - - - - - - diff --git a/resources/Schema/Entities/WeaponSidearmDefenderRedView.xml b/resources/Schema/Entities/WeaponSidearmDefenderRedView.xml new file mode 100644 index 00000000..2f1a9b0d --- /dev/null +++ b/resources/Schema/Entities/WeaponSidearmDefenderRedView.xml @@ -0,0 +1,239 @@ + + + + + + MovementBlend + ActionBlend + + + Models/Characters/Defender/FirstPersonDefenderRed.mesh + false + + + + + + + + + Idle + Run + 1 + true + + + + + + + + IdleSecF + true + true + + + + + + + + + RunSecF + true + true + + + + + + + + + + + Fire + Reload + 0 + + + + + + + + ShootSecF + false + + + + + + + + + ReloadSwitchSecF + false + + + + + + + + + + + R_Ammo_Joint + + + + + + + + + + + + Models/Core/UnitQuad.mesh + + Textures/Core/UnitHexagon.png + + + + + + + + + + + + + + + + + + 16 + Fonts/DroidSans.ttf,64 + + + + + SidearmWeapon + MagazineAmmo + + + + + + + + + + + + 8 + Fonts/DroidSans.ttf,64 + + + + + + + + + + + + + + + + Schema/Entities/FriendlyAmmoHUD.xml + + + + + + + + + + + Schema/Entities/AmmoShareEffectView.xml + + + + + + + + + + + + + + + + R_Arm_Weapon_Joint + + + 1.5 + Models/Weapons/Red/SecondaryWeaponRed.mesh + false + + + + + + + + + + + Schema/Entities/WeaponSidearmReloadEffectViewRed.xml + + + + + + + + + + + + + + + + + + Schema/Entities/RaySideArmRed.xml + + + + + + + + + Schema/Entities/MuzzleFlashSideArmRed.xml + + + + + + + + + + + + + + diff --git a/resources/Schema/Entities/WeaponSidearmReloadEffectViewRed.xml b/resources/Schema/Entities/WeaponSidearmReloadEffectViewRed.xml new file mode 100644 index 00000000..e20080b6 --- /dev/null +++ b/resources/Schema/Entities/WeaponSidearmReloadEffectViewRed.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + 0.5 + 0.5 + -1 + 0.5 + + true + + + 1.5 + Models/Weapons/Red/SecondaryWeaponRed.mesh + false + true + + + + + + + + + 0.5 + + + + 0.5 + + true + + + 1.5 + Models/Weapons/Red/SecondaryWeaponRed.mesh + false + true + + + + + + + + diff --git a/src/Engine/Collision/Collision.cpp b/src/Engine/Collision/Collision.cpp index dc04e8cf..ae09aeaf 100644 --- a/src/Engine/Collision/Collision.cpp +++ b/src/Engine/Collision/Collision.cpp @@ -146,14 +146,14 @@ bool RayVsTriangle(const Ray& ray, } bool RayVsModel(const Ray& ray, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix) { for (int i = 0; i < modelIndices.size();) { - glm::vec3 v0 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix); - glm::vec3 v1 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix); - glm::vec3 v2 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix); + glm::vec3 v0 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix); + glm::vec3 v1 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix); + glm::vec3 v2 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix); if (RayVsTriangle(ray, v0, v1, v2)) { return true; } @@ -194,7 +194,7 @@ bool RayVsTriangle(const Ray& ray, } bool RayVsModel(const Ray& ray, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix, float& outDistance, @@ -204,9 +204,9 @@ bool RayVsModel(const Ray& ray, outDistance = INFINITY; bool hit = false; for (int i = 0; i < modelIndices.size();) { - glm::vec3 v0 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix); - glm::vec3 v1 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix); - glm::vec3 v2 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix); + glm::vec3 v0 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix); + glm::vec3 v1 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix); + glm::vec3 v2 = TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix); float dist = outDistance; float u; float v; @@ -221,7 +221,7 @@ bool RayVsModel(const Ray& ray, } bool RayVsModel(const Ray& ray, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix, glm::vec3& outHitPosition) @@ -548,7 +548,7 @@ BoxTriRes AABBvsTriangle(const AABB& box, } Output AABBvsTriangles(const AABB& box, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix, glm::vec3& boxVelocity, @@ -565,9 +565,9 @@ Output AABBvsTriangles(const AABB& box, glm::vec3 originalBoxVelocity(boxVelocity); for (int i = 0; i < modelIndices.size(); ) { std::array triVertices = { - TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix), - TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix), - TransformSystem::TransformPoint(modelVertices[modelIndices[i++]].Position, modelMatrix) + TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix), + TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix), + TransformSystem::TransformPoint(modelVertices[modelIndices[i++]], modelMatrix) }; glm::vec3 outVec; bool collideWithGround = isOnGround; @@ -595,7 +595,7 @@ Output AABBvsTriangles(const AABB& box, } bool AABBvsTriangles(const AABB& box, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix, glm::vec3& boxVelocity, @@ -615,7 +615,7 @@ bool AABBvsTriangles(const AABB& box, } bool AABBvsTriangles(const AABB& box, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix) { @@ -633,7 +633,7 @@ bool AABBvsTriangles(const AABB& box, } Output AABBvsTrianglesWContainment(const AABB& box, - const RawModel::Vertex* modelVertices, + const std::vector& modelVertices, const std::vector& modelIndices, const glm::mat4& modelMatrix) { @@ -741,7 +741,7 @@ boost::optional EntityFirstHitByRay(const Ray& ray, std::vectorVertices(), model->m_RawModel->m_Indices, TransformSystem::ModelMatrix(entityBox.Entity), outDistance, u, v)) { + if (RayVsModel(ray, model->m_Vertices, model->m_Indices, TransformSystem::ModelMatrix(entityBox.Entity), outDistance, u, v)) { outIntersectPos = ray.Origin() + outDistance * ray.Direction(); return entityBox; } diff --git a/src/Engine/Collision/CollisionSystem.cpp b/src/Engine/Collision/CollisionSystem.cpp index 433af482..e53143ac 100644 --- a/src/Engine/Collision/CollisionSystem.cpp +++ b/src/Engine/Collision/CollisionSystem.cpp @@ -41,15 +41,15 @@ void CollisionSystem::UpdateComponent(EntityWrapper& entity, ComponentWrapper& c // Don't collide against invisible models. continue; } - RawModel* model; + Model* model; std::string res = (std::string)boxB.Entity["Model"]["Resource"]; try { - model = ResourceManager::Load(res); + model = ResourceManager::Load(res); } catch (const std::exception&) { continue; } float u, v; - hit = Collision::RayVsModel(ray, model->Vertices(), model->m_Indices, TransformSystem::ModelMatrix(boxB.Entity), dist, u, v); + hit = Collision::RayVsModel(ray, model->m_Vertices, model->m_Indices, TransformSystem::ModelMatrix(boxB.Entity), dist, u, v); } else { hit = Collision::RayVsAABB(ray, boxB, dist); } @@ -86,9 +86,9 @@ void CollisionSystem::UpdateComponent(EntityWrapper& entity, ComponentWrapper& c // Don't collide against invisible models. continue; } - RawModel* model; + Model* model; try { - model = ResourceManager::Load(boxB.Entity["Model"]["Resource"]); + model = ResourceManager::Load(boxB.Entity["Model"]["Resource"]); } catch (const std::exception&) { continue; } @@ -98,7 +98,7 @@ void CollisionSystem::UpdateComponent(EntityWrapper& entity, ComponentWrapper& c glm::vec3 inOutVelocity = (glm::vec3)cPhysics["Velocity"]; bool isOnGround = (bool)cPhysics["IsOnGround"]; float verticalStepHeight = (float)(double)cPhysics["VerticalStepHeight"]; - if (Collision::AABBvsTriangles(boxA, model->Vertices(), model->m_Indices, modelMatrix, inOutVelocity, verticalStepHeight, isOnGround, resolutionVector)) { + if (Collision::AABBvsTriangles(boxA, model->m_Vertices, model->m_Indices, modelMatrix, inOutVelocity, verticalStepHeight, isOnGround, resolutionVector)) { //Move the position to previous position if it is not moving in the xz-plane, else resolve with the resolution vector. (Field)cTransform["Position"] += resolutionVector; boxA = *Collision::EntityAbsoluteAABB(entity); diff --git a/src/Engine/Collision/TriggerSystem.cpp b/src/Engine/Collision/TriggerSystem.cpp index c9bc18dc..ef790bc9 100644 --- a/src/Engine/Collision/TriggerSystem.cpp +++ b/src/Engine/Collision/TriggerSystem.cpp @@ -10,11 +10,11 @@ void TriggerSystem::UpdateComponent(EntityWrapper& triggerEntity, ComponentWrapp return; } - RawModel* triggerModel = nullptr; + Model* triggerModel = nullptr; glm::mat4 triggerModelMat; if (triggerEntity.HasComponent("Model")) { try { - triggerModel = ResourceManager::Load(triggerEntity["Model"]["Resource"]); + triggerModel = ResourceManager::Load(triggerEntity["Model"]["Resource"]); triggerModelMat = TransformSystem::ModelMatrix(triggerEntity); } catch (const std::exception&) { } @@ -38,7 +38,7 @@ void TriggerSystem::UpdateComponent(EntityWrapper& triggerEntity, ComponentWrapp ? Collision::Output::OutContained : Collision::AABBvsTrianglesWContainment( colliderBox, - triggerModel->Vertices(), + triggerModel->m_Vertices, triggerModel->m_Indices, triggerModelMat); diff --git a/src/Engine/Network/Client.cpp b/src/Engine/Network/Client.cpp index 381c606d..637ffe8b 100644 --- a/src/Engine/Network/Client.cpp +++ b/src/Engine/Network/Client.cpp @@ -176,6 +176,9 @@ void Client::parseMessageType(Packet& packet) case MessageType::KD: parseKDEvent(packet); break; + case MessageType::Win: + parseWin(packet); + break; default: break; } @@ -376,6 +379,13 @@ void Client::parseKDEvent(Packet & packet) m_EventBroker->Publish(e); } +void Client::parseWin(Packet& packet) +{ + Events::Win e; + e.TeamThatWon = packet.ReadPrimitive(); + m_EventBroker->Publish(e); +} + void Client::updateFields(Packet& packet, const ComponentInfo& componentInfo, const EntityID& entityID) { for (auto field : componentInfo.FieldsInOrder) { diff --git a/src/Engine/Network/Server.cpp b/src/Engine/Network/Server.cpp index dbaf4752..3ec73969 100644 --- a/src/Engine/Network/Server.cpp +++ b/src/Engine/Network/Server.cpp @@ -609,6 +609,9 @@ bool Server::OnWin(const Events::Win & e) { // Postpone the gameover reset m_GameIsOver = true; + Packet winPacket = Packet(MessageType::Win); + winPacket.WritePrimitive(e.TeamThatWon); + reliableBroadcast(winPacket); return true; } diff --git a/src/Engine/Rendering/AnimationSystem.cpp b/src/Engine/Rendering/AnimationSystem.cpp index 895cbc28..3e53612b 100644 --- a/src/Engine/Rendering/AnimationSystem.cpp +++ b/src/Engine/Rendering/AnimationSystem.cpp @@ -37,7 +37,7 @@ void AnimationSystem::CreateBlendTrees() continue;; } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if (skeleton == nullptr) { continue; } @@ -79,7 +79,7 @@ void AnimationSystem::UpdateAnimations(double dt) continue; } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if (skeleton == nullptr) { continue; } @@ -177,7 +177,7 @@ bool AnimationSystem::OnAutoAnimationBlend(Events::AutoAnimationBlend& e) return false; } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if (skeleton == nullptr) { LOG_ERROR("%s, RootNode skeleton invalid %s", e.NodeName, e.RootNode.Name().c_str()); return false; @@ -300,7 +300,7 @@ bool AnimationSystem::OnEntityDeleted(Events::EntityDeleted& e) return false; } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if (skeleton == nullptr) { return false; } @@ -331,7 +331,7 @@ bool AnimationSystem::OnSetBlendWeight(Events::SetBlendWeight& e) return false; } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if (skeleton == nullptr) { return false; } diff --git a/src/Engine/Rendering/AutoBlendQueue.cpp b/src/Engine/Rendering/AutoBlendQueue.cpp index f4a854ec..016ae420 100644 --- a/src/Engine/Rendering/AutoBlendQueue.cpp +++ b/src/Engine/Rendering/AutoBlendQueue.cpp @@ -22,7 +22,7 @@ void AutoBlendQueue::Insert(AutoBlendJob autoBlendJob) return; } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if (skeleton == nullptr) { return; } @@ -130,7 +130,7 @@ bool AutoBlendQueue::HasActiveBlendJob() return HasActiveBlendJob(); } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if (skeleton == nullptr) { m_BlendQueue.pop_front(); return HasActiveBlendJob(); @@ -173,7 +173,7 @@ std::shared_ptr AutoBlendQueue::GetBlendTree() return nullptr; } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if (skeleton == nullptr) { return nullptr; } diff --git a/src/Engine/Rendering/BoneAttachmentSystem.cpp b/src/Engine/Rendering/BoneAttachmentSystem.cpp index 440bb65c..82fd9507 100644 --- a/src/Engine/Rendering/BoneAttachmentSystem.cpp +++ b/src/Engine/Rendering/BoneAttachmentSystem.cpp @@ -26,7 +26,7 @@ void BoneAttachmentSystem::UpdateComponent(EntityWrapper& entity, ComponentWrapp return; } - Skeleton* skeleton = model->m_RawModel->m_Skeleton; + Skeleton* skeleton = model->m_Skeleton; if(skeleton == nullptr) { return; diff --git a/src/Engine/Rendering/DrawFinalPass.cpp b/src/Engine/Rendering/DrawFinalPass.cpp index 9a771b42..be5bf1ea 100644 --- a/src/Engine/Rendering/DrawFinalPass.cpp +++ b/src/Engine/Rendering/DrawFinalPass.cpp @@ -332,14 +332,6 @@ void DrawFinalPass::Draw(RenderScene& scene, BlurHUD* blurHUDPass) glClearStencil(0x00); glClear(GL_STENCIL_BUFFER_BIT); - //Fill depth buffer - state->Enable(GL_STENCIL_TEST); - state->StencilOp(GL_KEEP, GL_KEEP, GL_REPLACE); - state->StencilFunc(GL_ALWAYS, 1, 0xFF); - state->StencilMask(0xFF); - state->DepthMask(GL_FALSE); - //DrawToDepthStencilBuffer(scene.Jobs.ShieldObjects, scene); - state->DepthMask(GL_TRUE); //Draw Opaque shielded objects state->Disable(GL_STENCIL_TEST); @@ -354,10 +346,10 @@ void DrawFinalPass::Draw(RenderScene& scene, BlurHUD* blurHUDPass) GLERROR("OpaqueObjects"); //state->Disable(GL_STENCIL_TEST); - //Draw Transparen Shielded objects + //Draw Transparen objects state->BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); DrawModelRenderQueuesWithShieldCheck(scene.Jobs.TransparentObjects, scene); //might need changing - GLERROR("Shielded Transparent objects"); + GLERROR("Transparent objects"); //Generate blur texture. delete state; @@ -379,12 +371,6 @@ void DrawFinalPass::Draw(RenderScene& scene, BlurHUD* blurHUDPass) } else { stateSprite = new DrawFinalPassState(m_FinalPassFrameBuffer->GetHandle()); } - //Draw Transparen objects - //state->BlendFunc(GL_ONE, GL_ONE); - //state->StencilFunc(GL_EQUAL, 1, 0xFF); - //DrawModelRenderQueues(scene.Jobs.TransparentObjects, scene); - GLERROR("TransparentObjects"); - //state->BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); stateSprite->Enable(GL_DEPTH_TEST); //stateSprite->AlphaFunc(GL_GEQUAL, 0.05f); //stateSprite->Enable(GL_ALPHA_TEST); @@ -638,7 +624,7 @@ void DrawFinalPass::DrawModelRenderQueues(std::list>& std::vector frameBones; if (modelJob->BlendTree != nullptr) { frameBones = modelJob->BlendTree->GetFinalPose(); - } else { + } else if (modelJob->Skeleton != nullptr) { frameBones = modelJob->Skeleton->GetTPose(); } glUniformMatrix4fv(glGetUniformLocation(forwardSkinnedHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); diff --git a/src/Engine/Rendering/Model.cpp b/src/Engine/Rendering/Model.cpp index d34ce809..596e254b 100644 --- a/src/Engine/Rendering/Model.cpp +++ b/src/Engine/Rendering/Model.cpp @@ -3,9 +3,9 @@ Model::Model(std::string fileName) { //Try loading the model asyncronously, if it throws any exceptions then let it propagate back to caller. - m_RawModel = ResourceManager::Load(fileName); + auto rawModel = ResourceManager::Load(fileName); - for (auto& materialProperty : m_RawModel->m_Materials) { + for (auto& materialProperty : rawModel->m_Materials) { switch (materialProperty.type) { case RawModel::MaterialType::SingleTextures: { @@ -46,11 +46,11 @@ Model::Model(std::string fileName) glGenBuffers(1, &buffer); glBindBuffer(GL_ARRAY_BUFFER, buffer); - glBufferData(GL_ARRAY_BUFFER, m_RawModel->NumVertices() * m_RawModel->VertexSize(), m_RawModel->Vertices(), GL_STATIC_DRAW); + glBufferData(GL_ARRAY_BUFFER, rawModel->NumVertices() * rawModel->VertexSize(), rawModel->Vertices(), GL_STATIC_DRAW); glGenBuffers(1, &ElementBuffer); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, ElementBuffer); - glBufferData(GL_ELEMENT_ARRAY_BUFFER, m_RawModel->m_Indices.size() * sizeof(unsigned int), &m_RawModel->m_Indices[0], GL_STATIC_DRAW); + glBufferData(GL_ELEMENT_ARRAY_BUFFER, rawModel->Indices().size() * sizeof(unsigned int), rawModel->Indices().data(), GL_STATIC_DRAW); glGenVertexArrays(1, &VAO); glBindVertexArray(VAO); @@ -58,7 +58,7 @@ Model::Model(std::string fileName) glBindBuffer(GL_ARRAY_BUFFER, buffer); std::vector structSizes; - if (m_RawModel->IsSkinned()) { + if (rawModel->IsSkinned()) { structSizes = { 3, 3, 3, 3, 2, 4, 4 }; } else { structSizes = { 3, 3, 3, 3, 2 }; @@ -77,7 +77,7 @@ Model::Model(std::string fileName) glVertexAttribPointer(element, structSizes[element], GL_FLOAT, GL_FALSE, stride, (GLvoid*)(sizeof(GLfloat) * (offset += structSizes[element - 1]))); element++; glVertexAttribPointer(element, structSizes[element], GL_FLOAT, GL_FALSE, stride, (GLvoid*)(sizeof(GLfloat) * (offset += structSizes[element - 1]))); element++; glVertexAttribPointer(element, structSizes[element], GL_FLOAT, GL_FALSE, stride, (GLvoid*)(sizeof(GLfloat) * (offset += structSizes[element - 1]))); element++; - if (m_RawModel->IsSkinned()) { + if (rawModel->IsSkinned()) { glVertexAttribPointer(element, structSizes[element], GL_FLOAT, GL_FALSE, stride, (GLvoid*)(sizeof(GLfloat) * (offset += structSizes[element - 1]))); element++; glVertexAttribPointer(element, structSizes[element], GL_FLOAT, GL_FALSE, stride, (GLvoid*)(sizeof(GLfloat) * (offset += structSizes[element - 1]))); element++; } @@ -89,7 +89,7 @@ Model::Model(std::string fileName) glEnableVertexAttribArray(2); glEnableVertexAttribArray(3); glEnableVertexAttribArray(4); - if (m_RawModel->IsSkinned()) { + if (rawModel->IsSkinned()) { glEnableVertexAttribArray(5); glEnableVertexAttribArray(6); } @@ -99,17 +99,29 @@ Model::Model(std::string fileName) glm::vec3 mini(INFINITY); glm::vec3 maxi(-INFINITY); - - for (unsigned int i = 0; i < m_RawModel->NumVertices(); i++) { - const auto& v = m_RawModel->Vertices()[i]; + for (unsigned int i = 0; i < rawModel->NumVertices(); i++) { + const auto& v = rawModel->Vertices()[i]; mini = glm::min(mini, v.Position); maxi = glm::max(maxi, v.Position); } - m_Box = AABB(mini, maxi); + + m_Skeleton = rawModel->m_Skeleton; + m_Materials = rawModel->m_Materials; + m_Indices = rawModel->CollisionIndices(); + m_IsSkinned = rawModel->IsSkinned(); + // Copy vertex positions for collisions later + m_Vertices = rawModel->CollisionVertices(); + + ResourceManager::Release("RawModel", fileName); } Model::~Model() { - + if (m_Skeleton != nullptr) { + delete m_Skeleton; + } + for (auto material : m_Materials) { + delete material.material; + } } diff --git a/src/Engine/Rendering/PickingPass.cpp b/src/Engine/Rendering/PickingPass.cpp index f6343101..f75372d7 100644 --- a/src/Engine/Rendering/PickingPass.cpp +++ b/src/Engine/Rendering/PickingPass.cpp @@ -115,7 +115,7 @@ void PickingPass::Draw(RenderScene& scene) std::vector frameBones; if (modelJob->BlendTree != nullptr) { frameBones = modelJob->BlendTree->GetFinalPose(); - } else { + } else if (modelJob->Skeleton != nullptr) { frameBones = modelJob->Skeleton->GetTPose(); } glUniformMatrix4fv(glGetUniformLocation(shaderSkinnedHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); diff --git a/src/Engine/Rendering/RawModelCustom.cpp b/src/Engine/Rendering/RawModelCustom.cpp index 1e2b5f17..a5cb9d43 100644 --- a/src/Engine/Rendering/RawModelCustom.cpp +++ b/src/Engine/Rendering/RawModelCustom.cpp @@ -11,6 +11,7 @@ RawModelCustom::RawModelCustom(std::string fileName) ReadMeshFile(fileName); ReadMaterialFile(fileName); ReadAnimationFile(fileName); + ReadCollisionFile(fileName); } void RawModelCustom::ReadMeshFile(std::string filePath) @@ -71,11 +72,11 @@ void RawModelCustom::ReadVertices(std::size_t& offset, char* fileData, const uns memcpy(&m_SkinedVertices[0], fileData + offset, m_SkinedVertices.size() * sizeof(SkinedVertex)); offset += m_SkinedVertices.size() * sizeof(SkinedVertex); } else { - if (offset + m_Vertices.size() * sizeof(Vertex) > fileByteSize) { + if (offset + m_Vertices.size() * sizeof(RenderVertex) > fileByteSize) { throw Resource::FailedLoadingException("Reading vertices failed"); } - memcpy(&m_Vertices[0], fileData + offset, m_Vertices.size() * sizeof(Vertex)); - offset += m_Vertices.size() * sizeof(Vertex); + memcpy(&m_Vertices[0], fileData + offset, m_Vertices.size() * sizeof(RenderVertex)); + offset += m_Vertices.size() * sizeof(RenderVertex); } #else #endif @@ -491,14 +492,90 @@ void RawModelCustom::ReadAnimationKeyFrame(std::size_t& offset, char* fileData, } +void RawModelCustom::ReadCollisionFile(std::string filePath) { + char* fileData; + filePath += ".colli"; + std::ifstream in(filePath.c_str(), std::ios_base::binary | std::ios_base::ate); + + if (!in.is_open()) { + return; + } + unsigned int fileByteSize = static_cast(in.tellg()); + in.seekg(0, std::ios_base::beg); + + fileData = new char[fileByteSize]; + in.read(fileData, fileByteSize); + in.close(); + + std::size_t offset = 0; + if (fileByteSize > 0) { + ReadCollisionFileData(offset, fileData, fileByteSize); + } + hasCollisionMesh = true; + delete[] fileData; +} + +const std::vector& RawModelCustom::CollisionVertices() { + if (hasCollisionMesh) { + return m_CollisionVertices; + } + else if (hasSkin) { + // We don't do collisions against skinned meshes now. + m_CollisionVertices = std::vector(); + return m_CollisionVertices; + } + else { + return ConstructCollisionList(); + } +}; + +void RawModelCustom::ReadCollisionFileData(std::size_t& offset, char* fileData, const unsigned int& fileByteSize){ + m_CollisionVertices.resize(static_cast(*(unsigned int*)(fileData + offset))); + offset += sizeof(unsigned int); + m_CollisionIndices.resize(static_cast(*(unsigned int*)(fileData + offset))); + offset += sizeof(unsigned int); + + if (offset + m_CollisionVertices.size() * sizeof(glm::vec3) > fileByteSize) { + throw Resource::FailedLoadingException("Reading collision vertices failed"); + } + memcpy(&m_CollisionVertices[0], fileData + offset, m_CollisionVertices.size() * sizeof(glm::vec3)); + offset += m_CollisionVertices.size() * sizeof(glm::vec3); + + if (offset + m_CollisionIndices.size() * sizeof(unsigned int) > fileByteSize) { + throw Resource::FailedLoadingException("Reading collision indices failed"); + } + memcpy(&m_CollisionIndices[0], fileData + offset, m_CollisionIndices.size() * sizeof(unsigned int)); + offset += m_CollisionIndices.size() * sizeof(unsigned int); +} + +const std::vector& RawModelCustom::ConstructCollisionList() +{ + if (!hasCollisionMesh && m_CollisionVertices.size() == 0) { + if (hasSkin) { + m_CollisionVertices.reserve(m_SkinedVertices.size()); + for (const auto& vertex : m_SkinedVertices) { + m_CollisionVertices.push_back(vertex.Position); + } + } else { + m_CollisionVertices.reserve(m_Vertices.size()); + for (const auto& vertex : m_Vertices) { + m_CollisionVertices.push_back(vertex.Position); + } + } + } + + return m_CollisionVertices; +} + RawModelCustom::~RawModelCustom() { - if (m_Skeleton != nullptr) { - delete m_Skeleton; - } - for (auto material : m_Materials) { - delete material.material; - } + // Ownership of skeleton and materials get transferred to Model + // if (m_Skeleton != nullptr) { + // delete m_Skeleton; + // } + //for (auto material : m_Materials) { + // delete material.material; + //} } #endif \ No newline at end of file diff --git a/src/Engine/Rendering/Renderer.cpp b/src/Engine/Rendering/Renderer.cpp index edc96cb7..8db7e7d3 100644 --- a/src/Engine/Rendering/Renderer.cpp +++ b/src/Engine/Rendering/Renderer.cpp @@ -75,7 +75,7 @@ void Renderer::InitializeWindow() //glfwWindowHint(GLFW_BLUE_BITS, mode->blueBits); //glfwWindowHint(GLFW_REFRESH_RATE, mode->refreshRate); glfwWindowHint(GLFW_DECORATED, false); - glfwWindowHint(GLFW_AUTO_ICONIFY, false); + //glfwWindowHint(GLFW_AUTO_ICONIFY, false); } //glfwWindowHint(GLFW_SAMPLES, 8); @@ -167,17 +167,21 @@ void Renderer::Draw(RenderFrame& frame) { GLERROR("PRE"); glBindFramebuffer(GL_FRAMEBUFFER, 0); +#ifdef DEBUG ImGui::Combo("Draw textures", &m_DebugTextureToDraw, "Final\0Scene\0Bloom\0Gaussian\0Picking\0Ambient Occlusion\0Combined Scene Texture\0Full Blurred Texture"); ImGui::Combo("CubeMap", &m_CubeMapTexture, "Nevada(512)\0Sky(1024)"); +#endif if(m_CubeMapTexture == 0) { m_CubeMapPass->LoadTextures("Nevada"); } else if (m_CubeMapTexture == 1) { m_CubeMapPass->LoadTextures("Sky"); } +#ifdef DEBUG ImGui::SliderInt("SSAO Quality", &m_SSAO_Quality, 0, 3); ImGui::SliderInt("Glow Quality", &m_GLOW_Quality, 0, 3); ImGui::SliderInt("MSAA Level", (int*)&m_MSAA_Level, 0, 16); +#endif m_SSAOPass->ChangeQuality(m_SSAO_Quality); m_DrawBloomPass->ChangeQuality(m_GLOW_Quality); m_DrawFinalPass->setMSAA(m_MSAA_Level); diff --git a/src/Engine/Rendering/ShadowPass.cpp b/src/Engine/Rendering/ShadowPass.cpp index bfd2a863..05430708 100644 --- a/src/Engine/Rendering/ShadowPass.cpp +++ b/src/Engine/Rendering/ShadowPass.cpp @@ -25,11 +25,13 @@ ShadowPass::~ShadowPass() void ShadowPass::DebugGUI() { +#ifdef DEBUG ImGui::Checkbox("EnableShadows", &m_EnableShadows); ImGui::DragFloat2("ShadowMapNearFar", m_NearFarPlane, 1.f, -1000.f, 1000.f); ImGui::DragFloat("ShadowClippingWeight", &m_SplitWeight, 0.001f, 0.f, 1.f); ImGui::Checkbox("ShadowTransparentObjects", &m_TransparentObjects); ImGui::Checkbox("ShadowOnTextureAlphas", &m_TexturedShadows); +#endif } void ShadowPass::InitializeCameras(RenderScene & scene) @@ -259,7 +261,7 @@ void ShadowPass::Draw(RenderScene & scene) std::vector frameBones; if (modelJob->BlendTree != nullptr) { frameBones = modelJob->BlendTree->GetFinalPose(); - } else { + } else if (modelJob->Skeleton != nullptr) { frameBones = modelJob->Skeleton->GetTPose(); } glUniformMatrix4fv(glGetUniformLocation(shaderHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); diff --git a/src/Engine/Sound/SoundManager.cpp b/src/Engine/Sound/SoundManager.cpp index 803aadf2..a8161f5d 100644 --- a/src/Engine/Sound/SoundManager.cpp +++ b/src/Engine/Sound/SoundManager.cpp @@ -417,6 +417,14 @@ bool SoundManager::OnSetCamera(const Events::SetCamera& e) alSourcei(m_CurrentBGMCombo->ALsource, AL_LOOPING, 1); setGain(m_CurrentBGMCombo, 0); playSound(m_CurrentBGMCombo); + } else if (m_World->HasComponent(e.CameraEntity.ID, "EndScreen")) { + float timeOffset = getTimeOffsetSeconds(m_CurrentBGM); + stopSound(m_CurrentBGM); + m_CurrentBGM = createSource("Audio/BGM/Layer3.wav"); + m_CurrentBGM->Type = SoundType::BGM; + alSourcei(m_CurrentBGM->ALsource, AL_LOOPING, 1); + playSound(m_CurrentBGM); + setTimeOffsetSeconds(m_CurrentBGM, timeOffset); } } @@ -477,6 +485,11 @@ float SoundManager::getTimeOffsetSeconds(Source* source) return time; } +void SoundManager::setTimeOffsetSeconds(Source * source, float timeOffset) +{ + alSourcef(source->ALsource, AL_SEC_OFFSET, timeOffset); +} + void SoundManager::initOpenAL() { // Initialize OpenAL diff --git a/src/Game/Systems/HealthSystem.cpp b/src/Game/Systems/HealthSystem.cpp index 4343eeeb..a6ff96a0 100644 --- a/src/Game/Systems/HealthSystem.cpp +++ b/src/Game/Systems/HealthSystem.cpp @@ -25,9 +25,9 @@ bool HealthSystem::OnPlayerDamaged(Events::PlayerDamage& e) //if player has the boost from a defender, subtract the damage taken by StrengthOfEffect amount auto playerBoostDefenderEntity = e.Victim.FirstChildByName("BoostDefender"); if (playerBoostDefenderEntity.Valid()) { - e.Damage -= (double)playerBoostDefenderEntity["BoostDefender"]["StrengthOfEffect"]; + e.Damage -= (const double&)playerBoostDefenderEntity["BoostDefender"]["StrengthOfEffect"]; } - if (health > 0) { + if (health > 0 && e.Damage > 0) { health -= e.Damage; if (health <= 0.0) { Events::PlayerDeath ePlayerDeath; diff --git a/src/Game/Systems/MainMenuSystem.cpp b/src/Game/Systems/MainMenuSystem.cpp index fa7c0479..1be751f0 100644 --- a/src/Game/Systems/MainMenuSystem.cpp +++ b/src/Game/Systems/MainMenuSystem.cpp @@ -135,6 +135,8 @@ bool MainMenuSystem::OnInputCommand(const Events::InputCommand& e) OpenSubMenu(e); } else if (e.Command == "Resolution" && e.Value == 1) { OpenDropDown(e); + } else if (e.Command == "Quit" && e.Value == 1) { + exit(EXIT_FAILURE); } return true; } \ No newline at end of file diff --git a/src/Game/Systems/PlayerDeathSystem.cpp b/src/Game/Systems/PlayerDeathSystem.cpp index 61abde31..7b618644 100644 --- a/src/Game/Systems/PlayerDeathSystem.cpp +++ b/src/Game/Systems/PlayerDeathSystem.cpp @@ -10,8 +10,7 @@ PlayerDeathSystem::PlayerDeathSystem(SystemParams params) } void PlayerDeathSystem::Update(double dt) -{ -} +{ } bool PlayerDeathSystem::OnPlayerDeath(Events::PlayerDeath& e) { @@ -33,31 +32,35 @@ void PlayerDeathSystem::createDeathEffect(EntityWrapper player) auto entityFile = ResourceManager::Load("Schema/Entities/PlayerDeathExplosionWithCamera.xml"); EntityWrapper deathEffectEW = entityFile->MergeInto(m_World); - //components that we need from player auto playerModel = player.FirstChildByName("PlayerModel"); - if (!playerModel.HasComponent("Model") || !playerModel.HasComponent("Animation")) { + if (!playerModel.Valid()) { if (player == LocalPlayer) { setSpectatorCamera(); } return; } - auto playerEntityModel = playerModel["Model"]; - auto playerEntityAnimation = playerModel["Animation"]; - - //copy the data from player to explosioneffectmodel - playerEntityModel.Copy(deathEffectEW["Model"]); - playerEntityAnimation.Copy(deathEffectEW["Animation"]); - - //copy the models position,orientation - deathEffectEW["Transform"]["Position"] = (glm::vec3)player["Transform"]["Position"]; - deathEffectEW["Transform"]["Orientation"] = (glm::vec3)player["Transform"]["Orientation"]; - //effect,camera is relative to playersPosition - //deathEffectEW["ExplosionEffect"]["ExplosionOrigin"] = glm::vec3(0, 0, 0); - + if (!playerModel.HasComponent("Model")) { + return; + } + EntityWrapper deathEffect = playerModel.Clone(); + for (auto& cAnim : deathEffect.ChildrenWithComponent("Animation")) { + cAnim["Animation"]["Play"] = false; + } + deathEffect.AttachComponent("ExplosionEffect"); + deathEffectEW["ExplosionEffect"].Copy(deathEffect["ExplosionEffect"]); + deathEffect.AttachComponent("Lifetime"); + deathEffectEW["Lifetime"].Copy(deathEffect["Lifetime"]); + deathEffect["Transform"]["Position"] = (glm::vec3)player["Transform"]["Position"]; + deathEffect["Transform"]["Orientation"] = (glm::vec3)player["Transform"]["Orientation"]; + for (auto& cModel : deathEffect.ChildrenWithComponent("Model")) { + EntityWrapper e(m_World, cModel.ID); + e.AttachComponent("ExplosionEffect"); + deathEffectEW["ExplosionEffect"].Copy(e["ExplosionEffect"]); + } + EntityWrapper cam = deathEffectEW.FirstChildByName("Camera").Clone(deathEffect); //camera (with lifetime) behind the player if (player == LocalPlayer) { - m_LocalPlayerDeathEffect = deathEffectEW; - auto cam = deathEffectEW.FirstChildByName("Camera"); + m_LocalPlayerDeathEffect = deathEffect; Events::SetCamera eSetCamera; eSetCamera.CameraEntity = cam; m_EventBroker->Publish(eSetCamera); diff --git a/src/Game/Systems/PlayerMovementSystem.cpp b/src/Game/Systems/PlayerMovementSystem.cpp index d2a8594a..1f5050e2 100644 --- a/src/Game/Systems/PlayerMovementSystem.cpp +++ b/src/Game/Systems/PlayerMovementSystem.cpp @@ -202,12 +202,18 @@ void PlayerMovementSystem::updateMovementControllers(double dt) if (addSpeed > 0) { static float accel = 15.f; +#ifdef DEBUG ImGui::InputFloat("accel", &accel); +#endif static float airAccel = 0.5f; +#ifdef DEBUG ImGui::InputFloat("airAccel", &airAccel); +#endif float actualAccel = isOnGround ? accel : airAccel; static float surfaceFriction = 5.f; +#ifdef DEBUG ImGui::InputFloat("surfaceFriction", &surfaceFriction); +#endif float accelerationSpeed = actualAccel * (float)dt * wishSpeed * surfaceFriction; //if doubleTapped do Assault Dash - but only boost maximum 50.0f float doubleTapDashBoost = controller->AssaultDashDoubleTapped() ? 40.0f : 1.0f; @@ -220,7 +226,9 @@ void PlayerMovementSystem::updateMovementControllers(double dt) accelerationSpeed *= (double)player["SprintAbility"]["StrengthOfEffect"]; } velocity += accelerationSpeed * (glm::vec3)wishDirection; +#ifdef DEBUG ImGui::Text("velocity: (%f, %f, %f) |%f|", velocity.x(), velocity.y(), velocity.z(), glm::length((glm::vec3)velocity)); +#endif } if (isOnGround) { @@ -336,10 +344,14 @@ void PlayerMovementSystem::updateVelocity(EntityWrapper player, double dt) // Ground friction float speed = glm::length((glm::vec3)velocity); static float groundFriction = 7.f; +#ifdef DEBUG ImGui::InputFloat("groundFriction", &groundFriction); +#endif static float airFriction = 2.f; +#ifdef DEBUG ImGui::InputFloat("airFriction", &airFriction); +#endif float friction = isOnGround ? groundFriction : airFriction; if (speed > 0) { float drop = speed * friction * (float)dt; diff --git a/src/Game/Systems/SoundSystem.cpp b/src/Game/Systems/SoundSystem.cpp index 999e1fc9..6db01305 100644 --- a/src/Game/Systems/SoundSystem.cpp +++ b/src/Game/Systems/SoundSystem.cpp @@ -87,6 +87,9 @@ bool SoundSystem::OnPlayerDamage(const Events::PlayerDamage & e) if (!e.Victim.Valid() || !e.Inflictor.Valid()) { return false; } + if (e.Victim.ID != LocalPlayer.ID) { + return false; + } auto victimTeam = m_World->GetComponent(e.Victim.ID, "Team"); auto inflictorTeam = m_World->GetComponent(e.Inflictor.ID, "Team"); if ((int)victimTeam["Team"] == (int)inflictorTeam["Team"]) { diff --git a/src/Game/Systems/SpawnerSystem.cpp b/src/Game/Systems/SpawnerSystem.cpp index fb770bb5..f444827b 100644 --- a/src/Game/Systems/SpawnerSystem.cpp +++ b/src/Game/Systems/SpawnerSystem.cpp @@ -112,15 +112,15 @@ bool SpawnerSystem::spawnedEntityIsColliding(EntityWrapper spawnedEntity, Entity if (!spawnedBox.Entity.HasComponent("Model")) { return true; } - RawModel* model = nullptr; + Model* model = nullptr; try { - model = ResourceManager::Load(otherEntity["Model"]["Resource"]); + model = ResourceManager::Load(otherEntity["Model"]["Resource"]); } catch (const std::exception&) { } if (model != nullptr && Collision::AABBvsTriangles( spawnedBox, - model->Vertices(), + model->m_Vertices, model->m_Indices, TransformSystem::ModelMatrix(otherEntity))) { return true; diff --git a/src/Game/Systems/Weapon/AssaultWeaponBehaviour.cpp b/src/Game/Systems/Weapon/AssaultWeaponBehaviour.cpp index b58cf158..5a334369 100644 --- a/src/Game/Systems/Weapon/AssaultWeaponBehaviour.cpp +++ b/src/Game/Systems/Weapon/AssaultWeaponBehaviour.cpp @@ -14,7 +14,19 @@ void AssaultWeaponBehaviour::UpdateWeapon(ComponentWrapper cWeapon, WeaponInfo& // Start reloading automatically if at 0 mag ammo Field magAmmo = cWeapon["MagazineAmmo"]; if (m_ConfigAutoReload && magAmmo <= 0) { - OnReload(cWeapon, wi); + //OnReload(cWeapon, wi); + // Send an input command instead of reloading immediately so the server + // has a chance to catch up. + if (IsClient) { + Events::InputCommand e; + e.Player = wi.Player; + e.PlayerID = -1; + e.Command = "Reload"; + e.Value = 1; + m_EventBroker->Publish(e); + e.Value = 0; + m_EventBroker->Publish(e); + } } // Only start reloading once we're done firing @@ -235,7 +247,8 @@ void AssaultWeaponBehaviour::fireBullet(ComponentWrapper cWeapon, WeaponInfo& wi float distance = traceRayDistance(origin, direction); EntityWrapper ray = SpawnerSystem::Spawn(tracerSpawner, tracerSpawner); if (ray.Valid()) { - ((Field)ray["Transform"]["Scale"]).z(distance); + ((Field)ray["Transform"]["Scale"]).x(distance); + ((Field)ray["Transform"]["Position"]).z(-distance/2.f); } } //MuzzleFlash diff --git a/src/Game/Systems/Weapon/DefenderWeaponBehaviour.cpp b/src/Game/Systems/Weapon/DefenderWeaponBehaviour.cpp index 945c6071..b700583b 100644 --- a/src/Game/Systems/Weapon/DefenderWeaponBehaviour.cpp +++ b/src/Game/Systems/Weapon/DefenderWeaponBehaviour.cpp @@ -395,9 +395,12 @@ void DefenderWeaponBehaviour::spawnTracers(ComponentWrapper cWeapon, WeaponInfo& glm::vec3 muzzlePosition = TransformSystem::AbsolutePosition(muzzle); glm::quat muzzleOrientation = TransformSystem::AbsoluteOrientation(muzzle); - rayOrigin = muzzlePosition; glm::vec3 muzzleToHit = hitPosition - muzzlePosition; + + rayOrigin = muzzlePosition + (muzzleToHit/2.f); + + glm::vec3 lookVector = glm::normalize(-muzzleToHit); float pitch = std::asin(-lookVector.y); float yaw = std::atan2(lookVector.x, lookVector.z); @@ -459,8 +462,8 @@ void DefenderWeaponBehaviour::dealDamage(ComponentWrapper cWeapon, WeaponInfo& w } // Temp hit decal - EntityWrapper hit = ResourceManager::Load("Schema/Entities/HitTest.xml")->MergeInto(m_World); - (Field)hit["Transform"]["Position"] = pick.Position; +// EntityWrapper hit = ResourceManager::Load("Schema/Entities/HitTest.xml")->MergeInto(m_World); +// (Field)hit["Transform"]["Position"] = pick.Position; // Don't let us shoot ourselves in the foot somehow if (victim == LocalPlayer) { @@ -477,12 +480,17 @@ void DefenderWeaponBehaviour::dealDamage(ComponentWrapper cWeapon, WeaponInfo& w // Check for friendly fire if ((ComponentInfo::EnumType)victim["Team"]["Team"] == (ComponentInfo::EnumType)wi.Player["Team"]["Team"]) { - // TODO: Ammo sharing + // Give boost + Events::PlayerDamage ePlayerDamage; + ePlayerDamage.Inflictor = wi.Player; + ePlayerDamage.Victim = victim; + ePlayerDamage.Damage = 0; + m_EventBroker->Publish(ePlayerDamage); continue; } damageSum[victim] += pelletDamage; - ((Field)hit["Model"]["Color"]).z(1.f); + // ((Field)hit["Model"]["Color"]).z(1.f); } // Deal damage! @@ -493,7 +501,6 @@ void DefenderWeaponBehaviour::dealDamage(ComponentWrapper cWeapon, WeaponInfo& w ePlayerDamage.Victim = kv.first; ePlayerDamage.Damage = kv.second; m_EventBroker->Publish(ePlayerDamage); - LOG_DEBUG("Dealt %f damage to #%i", kv.second, kv.first.ID); } } diff --git a/src/Game/Systems/Weapon/SidearmWeaponBehaviour.cpp b/src/Game/Systems/Weapon/SidearmWeaponBehaviour.cpp index 57534786..8ce9d444 100644 --- a/src/Game/Systems/Weapon/SidearmWeaponBehaviour.cpp +++ b/src/Game/Systems/Weapon/SidearmWeaponBehaviour.cpp @@ -223,15 +223,16 @@ void SidearmWeaponBehaviour::fireBullet(ComponentWrapper cWeapon, WeaponInfo& wi return; } - //Tracer + // Tracer EntityWrapper tracerSpawner = weaponModelEntity.FirstChildByName("WeaponMuzzleRay"); if (tracerSpawner.Valid()) { glm::vec3 origin = TransformSystem::AbsolutePosition(tracerSpawner); - glm::vec3 direction = TransformSystem::AbsoluteOrientation(tracerSpawner) * glm::vec3(0, 0, -1); + glm::vec3 direction = glm::quat(TransformSystem::AbsoluteOrientationEuler(tracerSpawner)) * glm::vec3(0, 0, -1); float distance = traceRayDistance(origin, direction); EntityWrapper ray = SpawnerSystem::Spawn(tracerSpawner, tracerSpawner); if (ray.Valid()) { - ((Field)ray["Transform"]["Scale"]).z(distance); + ((Field)ray["Transform"]["Scale"]).x(distance); + ((Field)ray["Transform"]["Position"]).z(-distance/2.f); } } diff --git a/tools/MayaExporter/MayaExporter/Export.cpp b/tools/MayaExporter/MayaExporter/Export.cpp index 3497fd04..28112cd6 100644 --- a/tools/MayaExporter/MayaExporter/Export.cpp +++ b/tools/MayaExporter/MayaExporter/Export.cpp @@ -5,7 +5,7 @@ Export::Export() } -bool Export::Meshes(std::string pathName, bool selectedOnly) +bool Export::Meshes(std::string pathName, bool selectedOnly, bool isCollision) { MStatus status; if (pathName.empty()) { @@ -92,8 +92,14 @@ bool Export::Meshes(std::string pathName, bool selectedOnly) Objects.append(node); } } - GetMeshData(Objects); - WriteMeshData(pathName); + GetMeshData(Objects, isCollision); + + if (!isCollision) { + WriteMeshData(pathName); + } else { + WriteCollisionData(pathName); + } + MGlobal::displayInfo(MString() + "Enabling IKSolvers"); status = MGlobal::executeCommand("doEnableNodeItems true all;"); if (status != MS::kSuccess) { @@ -144,9 +150,9 @@ bool Export::Animations(std::string pathName, std::vector animInf return true; } -bool Export::GetMeshData(MObjectArray object) +bool Export::GetMeshData(MObjectArray object, bool collision) { - meshes = m_MeshHandler.GetMeshData(object); + meshes = m_MeshHandler.GetMeshData(object, collision); return true; } @@ -185,6 +191,17 @@ void Export::WriteMeshData(std::string pathName) m_MeshFile.CloseFiles(); } +void Export::WriteCollisionData(std::string pathName) { + m_ColliFile.ASCIIFilePath(pathName + "_colli.txt"); + m_ColliFile.binaryFilePath(pathName + ".colli"); + + m_ColliFile.OpenFiles(); + + m_ColliFile.writeToFiles((OutputData*)&meshes); + + m_ColliFile.CloseFiles(); +} + void Export::WriteAnimData(std::string pathName) { if (allBindPoses.size() > 0) { diff --git a/tools/MayaExporter/MayaExporter/Export.h b/tools/MayaExporter/MayaExporter/Export.h index 42b40445..c22cd26e 100644 --- a/tools/MayaExporter/MayaExporter/Export.h +++ b/tools/MayaExporter/MayaExporter/Export.h @@ -22,18 +22,19 @@ public: int End; }; - bool Meshes(std::string pathName, bool selectedOnly = false); + bool Meshes(std::string pathName, bool selectedOnly = false, bool isCollision = false); bool Materials(std::string pathName); bool Animations(std::string pathName, std::vector animInfo); private: - bool GetMeshData(MObjectArray object); + bool GetMeshData(MObjectArray object, bool collision); bool GetMaterialData(); bool GetAnimationData(AnimationInfo info); void WriteMeshData(std::string pathName); void WriteAnimData(std::string pathName); void WriteMaterialData(std::string pathName); + void WriteCollisionData(std::string pathName); Material m_MaterialHandler; Skeleton m_SkeletonHandler; @@ -44,6 +45,7 @@ private: WriteToFile m_MeshFile; WriteToFile m_AnimFile; WriteToFile m_MtrlFile; + WriteToFile m_ColliFile; //Mesh Data Mesh meshes; diff --git a/tools/MayaExporter/MayaExporter/Menu.cpp b/tools/MayaExporter/MayaExporter/Menu.cpp index 02810018..ed3761df 100644 --- a/tools/MayaExporter/MayaExporter/Menu.cpp +++ b/tools/MayaExporter/MayaExporter/Menu.cpp @@ -25,6 +25,7 @@ Menu::Menu(QDialog* dialog) m_ExportSelectedButton = new QCheckBox(tr("&Export Selected")); m_ExportAnimationsButton = new QCheckBox(tr("&Export Animations")); m_ExportMaterialButton = new QCheckBox(tr("&Export Material"));; + m_IsCollision = new QCheckBox(tr("&Export as collision mesh")); m_ExportAnimationsButton->setChecked(true); m_ExportMaterialButton->setChecked(true); @@ -32,6 +33,7 @@ Menu::Menu(QDialog* dialog) vbox->addWidget(m_ExportSelectedButton); vbox->addWidget(m_ExportAnimationsButton); vbox->addWidget(m_ExportMaterialButton); + vbox->addWidget(m_IsCollision); vbox->addStretch(1); optionsBox->setLayout(vbox); @@ -46,6 +48,7 @@ Menu::Menu(QDialog* dialog) connect(m_ExportSelectedButton, SIGNAL(clicked(bool)), this, SLOT(NULL)); connect(m_ExportAnimationsButton, SIGNAL(clicked(bool)), this, SLOT(NULL)); connect(m_ExportMaterialButton, SIGNAL(clicked(bool)), this, SLOT(NULL)); + connect(m_IsCollision, SIGNAL(clicked(bool)), this, SLOT(NULL)); // Creating several layouts, adding widgets & adding them to one layout in the end QHBoxLayout* topLayout = new QHBoxLayout; @@ -163,40 +166,42 @@ void Menu::RemoveClipClicked(bool) void Menu::ExportAll(bool) { - if (m_ExportPath->text().isEmpty()) { - MGlobal::displayError(MString() + "Please select a folder."); - return; - } + if (m_ExportPath->text().isEmpty()) { + MGlobal::displayError(MString() + "Please select a folder."); + return; + } - //Export meshes - if (!m_Export.Meshes(m_ExportPath->text().toLocal8Bit().constData(), m_ExportSelectedButton->isChecked())) { - MGlobal::displayError(MString() + "Could not export mesh"); - return; - } + //Export meshes + if (!m_Export.Meshes(m_ExportPath->text().toLocal8Bit().constData(), m_ExportSelectedButton->isChecked(), m_IsCollision->isChecked())) { + MGlobal::displayError(MString() + "Could not export mesh"); + return; + } - if (m_ExportMaterialButton->isChecked()) { - if (!m_Export.Materials(m_ExportPath->text().toLocal8Bit().constData())) { - MGlobal::displayError(MString() + "Could not export materials"); - return; - } - } + if (!m_IsCollision->isChecked()){ + if (m_ExportMaterialButton->isChecked()) { + if (!m_Export.Materials(m_ExportPath->text().toLocal8Bit().constData())) { + MGlobal::displayError(MString() + "Could not export materials"); + return; + } + } - std::vector animations; - for (unsigned int i = 0; i < m_AnimationClipName.size(); i++) { - Export::AnimationInfo thisClip; - thisClip.Name = std::string(m_AnimationClipName[i]->text().toLocal8Bit().constData()); - thisClip.Start = m_StartFrameLines[i]->text().toInt(); - thisClip.End = m_EndFrameLines[i]->text().toInt(); + std::vector animations; + for (unsigned int i = 0; i < m_AnimationClipName.size(); i++) { + Export::AnimationInfo thisClip; + thisClip.Name = std::string(m_AnimationClipName[i]->text().toLocal8Bit().constData()); + thisClip.Start = m_StartFrameLines[i]->text().toInt(); + thisClip.End = m_EndFrameLines[i]->text().toInt(); - animations.push_back(thisClip); - } - if (m_ExportAnimationsButton->isChecked()) { - //Export Animations - if (!m_Export.Animations(m_ExportPath->text().toLocal8Bit().constData(), animations)) { - MGlobal::displayError(MString() + "Could not export animations"); - return; - } - } + animations.push_back(thisClip); + } + if (m_ExportAnimationsButton->isChecked()) { + //Export Animations + if (!m_Export.Animations(m_ExportPath->text().toLocal8Bit().constData(), animations)) { + MGlobal::displayError(MString() + "Could not export animations"); + return; + } + } + } } void Menu::CancelClicked(bool) diff --git a/tools/MayaExporter/MayaExporter/Menu.h b/tools/MayaExporter/MayaExporter/Menu.h index fb95a953..89211a12 100644 --- a/tools/MayaExporter/MayaExporter/Menu.h +++ b/tools/MayaExporter/MayaExporter/Menu.h @@ -66,6 +66,7 @@ private: QCheckBox* m_ExportSelectedButton = nullptr; QCheckBox* m_ExportAnimationsButton = nullptr; QCheckBox* m_ExportMaterialButton = nullptr; + QCheckBox* m_IsCollision = nullptr; QLineEdit* m_ExportPath = nullptr; QFileDialog* m_FileDialog = nullptr; diff --git a/tools/MayaExporter/MayaExporter/Mesh.cpp b/tools/MayaExporter/MayaExporter/Mesh.cpp index ee5a6022..6868e792 100644 --- a/tools/MayaExporter/MayaExporter/Mesh.cpp +++ b/tools/MayaExporter/MayaExporter/Mesh.cpp @@ -94,33 +94,37 @@ MeshClass::MeshClass() // return weightMap; //} -Mesh MeshClass::GetMeshData(MObjectArray object) +Mesh MeshClass::GetMeshData(MObjectArray object, bool collision) { MS status; Mesh newMesh; + newMesh.isCollison = collision; vector& vertexList = newMesh.Vertices; map>& indexLists = newMesh.Indices; for (int ObjectID = 0; ObjectID < object.length(); ObjectID++) { if (!object[ObjectID].hasFn(MFn::kMesh)) continue; + MObject node = object[ObjectID]; MFnDependencyNode thisNode(node); MPlugArray connections; thisNode.findPlug("inMesh").connectedTo(connections, true, true); MPlug weightList, weights; MObject weightListObject; - for (unsigned int i = 0; i < connections.length(); i++) { - if (connections[i].node().apiType() == MFn::kSkinClusterFilter) { - MFnSkinCluster skinCluster(connections[i].node()); - weightList = skinCluster.findPlug("weightList", &status); - weightListObject = weightList.attribute(); - weights = skinCluster.findPlug("weights"); - newMesh.hasSkin = true; - break; - } - } + if (!collision) { + for (unsigned int i = 0; i < connections.length(); i++) { + if (connections[i].node().apiType() == MFn::kSkinClusterFilter) { + MFnSkinCluster skinCluster(connections[i].node()); + weightList = skinCluster.findPlug("weightList", &status); + weightListObject = weightList.attribute(); + weights = skinCluster.findPlug("weights"); + newMesh.hasSkin = true; + break; + } + } + } // In here, we retrieve triangulated polygons from the mesh MFnMesh mesh(object[ObjectID]); @@ -257,62 +261,62 @@ Mesh MeshClass::GetMeshData(MObjectArray object) thisVertex.Pos[0] = pos.x; thisVertex.Pos[1] = pos.y; thisVertex.Pos[2] = pos.z; + thisVertex.isCollision = collision; - status = faceVert.getNormal(normal, MSpace::kObject); - if (status != MS::kSuccess) { - MGlobal::displayError(MString() + "faceVert.getNormal() ERROR: " + status.errorString() + "for local vertex " + i + " in " + faceID + " in mesh " + thisMeshPath.fullPathName()); - break; - } + if (!collision) { + status = faceVert.getNormal(normal, MSpace::kObject); + if (status != MS::kSuccess) { + MGlobal::displayError(MString() + "faceVert.getNormal() ERROR: " + status.errorString() + "for local vertex " + i + " in " + faceID + " in mesh " + thisMeshPath.fullPathName()); + break; + } - thisVertex.Normal[0] = normal[0]; - thisVertex.Normal[1] = normal[1]; - thisVertex.Normal[2] = normal[2]; + thisVertex.Normal[0] = normal[0]; + thisVertex.Normal[1] = normal[1]; + thisVertex.Normal[2] = normal[2]; - MFloatVector Tangent = Tangents[faceVert.tangentId()]; - //MVector tmp = faceVert.getTangent(MSpace::kObject, NULL); - //tmp.get(biTangent); - thisVertex.Tangent[0] = Tangent[0]; - thisVertex.Tangent[1] = Tangent[1]; - thisVertex.Tangent[2] = Tangent[2]; + MFloatVector Tangent = Tangents[faceVert.tangentId()]; + //MVector tmp = faceVert.getTangent(MSpace::kObject, NULL); + //tmp.get(biTangent); + thisVertex.Tangent[0] = Tangent[0]; + thisVertex.Tangent[1] = Tangent[1]; + thisVertex.Tangent[2] = Tangent[2]; - MFloatVector biNormal = biNormals[faceVert.tangentId()]; - //faceVert.getBinormal().get(biNormal); - thisVertex.BiNormal[0] = biNormal[0]; - thisVertex.BiNormal[1] = biNormal[1]; - thisVertex.BiNormal[2] = biNormal[2]; + MFloatVector biNormal = biNormals[faceVert.tangentId()]; + //faceVert.getBinormal().get(biNormal); + thisVertex.BiNormal[0] = biNormal[0]; + thisVertex.BiNormal[1] = biNormal[1]; + thisVertex.BiNormal[2] = biNormal[2]; - status = faceVert.getUV(UV); - if (status != MS::kSuccess) { - MGlobal::displayError(MString() + " faceVert.getUV() ERROR: " + status.errorString() + "for local vertex " + i + " in " + faceID + " in mesh " + thisMeshPath.fullPathName()); - break; - } - thisVertex.Uv[0] = UV[0]; - thisVertex.Uv[1] = UV[1]; + status = faceVert.getUV(UV); + if (status != MS::kSuccess) { + MGlobal::displayError(MString() + " faceVert.getUV() ERROR: " + status.errorString() + "for local vertex " + i + " in " + faceID + " in mesh " + thisMeshPath.fullPathName()); + break; + } + thisVertex.Uv[0] = UV[0]; + thisVertex.Uv[1] = UV[1]; - if (newMesh.hasSkin) { - thisVertex.useWeights = true; - float totalWeight = 0.0f; - unsigned int totalBones = 0; - MIntArray jointIDs /* ??? */; - weights.selectAncestorLogicalIndex(vertexIndex, weightListObject); - weights.getExistingArrayAttributeIndices(jointIDs); - for (unsigned int i = 0; i < jointIDs.length() && i < 4; i++) { - if (weights[i].asFloat() > 0.001f) { - thisVertex.BoneIndices[totalBones] = jointIDs[i]; - thisVertex.BoneWeights[totalBones] = weights[i].asFloat(); - totalWeight = totalWeight + weights[i].asFloat(); - totalBones++; - } - } + if (newMesh.hasSkin) { + thisVertex.useWeights = true; + float totalWeight = 0.0f; + unsigned int totalBones = 0; + MIntArray jointIDs /* ??? */; + weights.selectAncestorLogicalIndex(vertexIndex, weightListObject); + weights.getExistingArrayAttributeIndices(jointIDs); + for (unsigned int i = 0; i < jointIDs.length() && i < 4; i++) { + if (weights[i].asFloat() > 0.001f) { + thisVertex.BoneIndices[totalBones] = jointIDs[i]; + thisVertex.BoneWeights[totalBones] = weights[i].asFloat(); + totalWeight = totalWeight + weights[i].asFloat(); + totalBones++; + } + } - for (unsigned int i = 0; i < 4; i++) { - //thisVertex.BoneWeights[i] = thisVertex.BoneWeights[i] / totalWeight; - } - } else { - thisVertex.useWeights = false; + for (unsigned int i = 0; i < 4; i++) { + //thisVertex.BoneWeights[i] = thisVertex.BoneWeights[i] / totalWeight; + } + } } - //float totalWeight = thisVertex.BoneWeights[0] + thisVertex.BoneWeights[1] + thisVertex.BoneWeights[2] + thisVertex.BoneWeights[3]; //if (totalWeight > 0.0001f) { // thisVertex.BoneWeights[0] /= totalWeight; diff --git a/tools/MayaExporter/MayaExporter/Mesh.h b/tools/MayaExporter/MayaExporter/Mesh.h index affc4320..f9376a8c 100644 --- a/tools/MayaExporter/MayaExporter/Mesh.h +++ b/tools/MayaExporter/MayaExporter/Mesh.h @@ -11,7 +11,8 @@ class VertexLayout : public OutputData { public: - bool useWeights = true; + bool isCollision = false; + bool useWeights = false; float Pos[3]{ 0 }; float Normal[3]{ 0 }; float Tangent[3]{ 0 }; @@ -23,28 +24,31 @@ public: virtual void WriteBinary(std::ostream& out) { out.write((char*)&Pos, sizeof(float) * 3); - out.write((char*)&Normal, sizeof(float) * 3); - out.write((char*)&Tangent, sizeof(float) * 3); - out.write((char*)&BiNormal, sizeof(float) * 3); - out.write((char*)&Uv, sizeof(float) * 2); - if (useWeights) { - out.write((char*)&BoneIndices, sizeof(float) * 4); - out.write((char*)&BoneWeights, sizeof(float) * 4); + if (!isCollision) { + out.write((char*)&Normal, sizeof(float) * 3); + out.write((char*)&Tangent, sizeof(float) * 3); + out.write((char*)&BiNormal, sizeof(float) * 3); + out.write((char*)&Uv, sizeof(float) * 2); + if (useWeights) { + out.write((char*)&BoneIndices, sizeof(float) * 4); + out.write((char*)&BoneWeights, sizeof(float) * 4); + } } } virtual void WriteASCII(std::ostream& out) const { out << Pos[0] << " " << Pos[1] << " " << Pos[2] << endl; - out << Normal[0] << " " << Normal[1] << " " << Normal[2] << endl; - out << Tangent[0] << " " << Tangent[1] << " " << Tangent[2] << endl; - out << BiNormal[0] << " " << BiNormal[1] << " " << BiNormal[2] << endl; - out << Uv[0] << " " << Uv[1] << endl; - if (useWeights) { - out << BoneIndices[0] << " " << BoneIndices[1] << " " << BoneIndices[2] << " " << BoneIndices[3] << endl; - out << BoneWeights[0] << " " << BoneWeights[1] << " " << BoneWeights[2] << " " << BoneWeights[3] << endl; + if (!isCollision) { + out << Normal[0] << " " << Normal[1] << " " << Normal[2] << endl; + out << Tangent[0] << " " << Tangent[1] << " " << Tangent[2] << endl; + out << BiNormal[0] << " " << BiNormal[1] << " " << BiNormal[2] << endl; + out << Uv[0] << " " << Uv[1] << endl; + if (useWeights) { + out << BoneIndices[0] << " " << BoneIndices[1] << " " << BoneIndices[2] << " " << BoneIndices[3] << endl; + out << BoneWeights[0] << " " << BoneWeights[1] << " " << BoneWeights[2] << " " << BoneWeights[3] << endl; + } } - } bool operator==(const VertexLayout& right) { @@ -62,6 +66,7 @@ public: class Mesh : public OutputData { public: + bool isCollison = false; bool hasSkin = false; unsigned int NumVertices; unsigned int NumIndices; @@ -70,7 +75,9 @@ public: virtual void WriteBinary(std::ostream& out) { - out.write((char*)&hasSkin, sizeof(bool)); + if (!isCollison) { + out.write((char*)&hasSkin, sizeof(bool)); + } out.write((char*)&NumVertices, sizeof(int)); out.write((char*)&NumIndices, sizeof(int)); for (auto aVertex : Vertices) { @@ -86,11 +93,13 @@ public: virtual void WriteASCII(std::ostream& out) const { out << "New Mesh _ not in binary" << endl; - out << "hasSkin: "; - if(hasSkin) - out << "true" << endl; - else - out << "false" << endl; + if (!isCollison) { + out << "hasSkin: "; + if (hasSkin) + out << "true" << endl; + else + out << "false" << endl; + } out << "Number of vertices: " << NumVertices << endl; out << "number of indices: " << NumIndices << endl; int vertexNumber = 0; @@ -115,7 +124,7 @@ class MeshClass { public: MeshClass(); - Mesh GetMeshData(MObjectArray Object); + Mesh GetMeshData(MObjectArray Object, bool collision = false); ~MeshClass(); private: struct WeightInfo {