Browse Source

Make way for import of new code.

Lasse Öörni 14 years ago
parent
commit
a48885a729
100 changed files with 0 additions and 14174 deletions
  1. 0 1
      Bin/Avatar.bat
  2. 0 12
      Bin/CoreData/Materials/Default.xml
  3. 0 8
      Bin/CoreData/Materials/DefaultAlpha.xml
  4. 0 8
      Bin/CoreData/Materials/DefaultAlphaTS.xml
  5. 0 12
      Bin/CoreData/Materials/DefaultDiff.xml
  6. 0 8
      Bin/CoreData/Materials/DefaultDiffAlpha.xml
  7. 0 12
      Bin/CoreData/Materials/DefaultDiffAlphaMask.xml
  8. 0 12
      Bin/CoreData/Materials/DefaultDiffAlphaMaskTS.xml
  9. 0 8
      Bin/CoreData/Materials/DefaultDiffAlphaTS.xml
  10. 0 12
      Bin/CoreData/Materials/DefaultDiffNormal.xml
  11. 0 12
      Bin/CoreData/Materials/DefaultDiffNormalAlphaMask.xml
  12. 0 12
      Bin/CoreData/Materials/DefaultDiffNormalAlphaMaskTS.xml
  13. 0 12
      Bin/CoreData/Materials/DefaultDiffNormalTS.xml
  14. 0 12
      Bin/CoreData/Materials/DefaultDiffTS.xml
  15. 0 12
      Bin/CoreData/Materials/DefaultTS.xml
  16. 0 125
      Bin/CoreData/Scripts/Editor.as
  17. 0 519
      Bin/CoreData/Scripts/EditorCamera.as
  18. 0 665
      Bin/CoreData/Scripts/EditorComponentWindow.as
  19. 0 341
      Bin/CoreData/Scripts/EditorImport.as
  20. 0 378
      Bin/CoreData/Scripts/EditorScene.as
  21. 0 770
      Bin/CoreData/Scripts/EditorSceneWindow.as
  22. 0 382
      Bin/CoreData/Scripts/EditorUI.as
  23. BIN
      Bin/CoreData/Textures/Ramp.png
  24. 0 7
      Bin/CoreData/Textures/Ramp.xml
  25. BIN
      Bin/CoreData/Textures/RampExtreme.png
  26. 0 6
      Bin/CoreData/Textures/RampExtreme.xml
  27. BIN
      Bin/CoreData/Textures/RampWide.png
  28. 0 6
      Bin/CoreData/Textures/RampWide.xml
  29. BIN
      Bin/CoreData/Textures/Spot.png
  30. 0 7
      Bin/CoreData/Textures/Spot.xml
  31. BIN
      Bin/CoreData/Textures/SpotWide.png
  32. 0 6
      Bin/CoreData/Textures/SpotWide.xml
  33. BIN
      Bin/CoreData/Textures/UI.png
  34. 0 5
      Bin/CoreData/Textures/UI.xml
  35. 0 47
      Bin/CoreData/UI/ComponentWindow.xml
  36. 0 413
      Bin/CoreData/UI/DefaultStyle.xml
  37. 0 129
      Bin/CoreData/UI/EditorSettingsDialog.xml
  38. 0 65
      Bin/CoreData/UI/SceneSettingsDialog.xml
  39. 0 77
      Bin/CoreData/UI/SceneWindow.xml
  40. 0 2
      Bin/CreatePackages.bat
  41. BIN
      Bin/Data/Fonts/BlueHighway.ttf
  42. 0 7306
      Bin/Data/GraphicsTestScene.xml
  43. 0 6
      Bin/Data/Materials/CloudPlane.xml
  44. 0 3
      Bin/Data/Materials/Jack.xml
  45. 0 7
      Bin/Data/Materials/Jack_Body.xml
  46. 0 7
      Bin/Data/Materials/Jack_Face.xml
  47. 0 9
      Bin/Data/Materials/LitSmoke.xml
  48. 0 7
      Bin/Data/Materials/Mushroom.xml
  49. 0 7
      Bin/Data/Materials/Ninja.xml
  50. 0 6
      Bin/Data/Materials/Particle.xml
  51. 0 7
      Bin/Data/Materials/Potion.xml
  52. 0 6
      Bin/Data/Materials/Smoke.xml
  53. 0 7
      Bin/Data/Materials/Snow.xml
  54. 0 7
      Bin/Data/Materials/SnowCrate.xml
  55. 0 19
      Bin/Data/Materials/Test.xml
  56. BIN
      Bin/Data/Models/Box.mdl
  57. BIN
      Bin/Data/Models/CloudPlane.mdl
  58. BIN
      Bin/Data/Music/NinjaGods.xm
  59. 0 113
      Bin/Data/NinjaSnowWar.xml
  60. 0 50
      Bin/Data/NinjaSnowWarScene.xml
  61. 0 20
      Bin/Data/Particle/Smoke.xml
  62. 0 16
      Bin/Data/Particle/SnowExplosion.xml
  63. 0 18
      Bin/Data/Particle/SnowExplosionBig.xml
  64. 0 3
      Bin/Data/Physics/Avatar.xml
  65. 0 3
      Bin/Data/Physics/Box.xml
  66. 0 3
      Bin/Data/Physics/Level.xml
  67. 0 3
      Bin/Data/Physics/Mushroom.xml
  68. 0 3
      Bin/Data/Physics/Ninja.xml
  69. 0 3
      Bin/Data/Physics/Potion.xml
  70. 0 3
      Bin/Data/Physics/SnowBall.xml
  71. 0 3
      Bin/Data/Physics/SnowCrate.xml
  72. 0 174
      Bin/Data/Scripts/AIController.as
  73. 0 210
      Bin/Data/Scripts/Avatar.as
  74. 0 196
      Bin/Data/Scripts/AvatarTest.as
  75. 0 197
      Bin/Data/Scripts/GameObject.as
  76. 0 607
      Bin/Data/Scripts/GraphicsTest.as
  77. 0 34
      Bin/Data/Scripts/LightFlash.as
  78. 0 346
      Bin/Data/Scripts/Ninja.as
  79. 0 446
      Bin/Data/Scripts/NinjaSnowWar.as
  80. 0 57
      Bin/Data/Scripts/Potion.as
  81. 0 101
      Bin/Data/Scripts/SnowBall.as
  82. 0 58
      Bin/Data/Scripts/SnowCrate.as
  83. BIN
      Bin/Data/Sounds/BigExplosion.wav
  84. BIN
      Bin/Data/Sounds/NutThrow.wav
  85. BIN
      Bin/Data/Sounds/PlayerFist.wav
  86. BIN
      Bin/Data/Sounds/PlayerFistHit.wav
  87. BIN
      Bin/Data/Sounds/PlayerLand.wav
  88. BIN
      Bin/Data/Sounds/Powerup.wav
  89. BIN
      Bin/Data/Sounds/SmallExplosion.wav
  90. BIN
      Bin/Data/Textures/CloudPlane.dds
  91. BIN
      Bin/Data/Textures/Diffuse.dds
  92. BIN
      Bin/Data/Textures/DiffuseMask.dds
  93. BIN
      Bin/Data/Textures/Flare.dds
  94. BIN
      Bin/Data/Textures/HealthBarBorder.png
  95. BIN
      Bin/Data/Textures/HealthBarInside.png
  96. BIN
      Bin/Data/Textures/Jack_body_color.jpg
  97. BIN
      Bin/Data/Textures/Jack_face.jpg
  98. BIN
      Bin/Data/Textures/Mushroom.dds
  99. BIN
      Bin/Data/Textures/Ninja.dds
  100. BIN
      Bin/Data/Textures/Normal.dds

+ 0 - 1
Bin/Avatar.bat

@@ -1 +0,0 @@
-Urho3D Scripts/AvatarTest.as %1 %2 %3 %4 %5 %6 %7 %8

+ 0 - 12
Bin/CoreData/Materials/Default.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer" ps="Deferred/GBuffer" />
-        <pass name="prepass" vs="Prepass/GBuffer" ps="Prepass/GBuffer" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material" depthwrite="false" depthtest="equal" />
-        <pass name="ambient" vs="Forward" ps="Forward_Ambient" />
-        <pass name="light" vs="Forward" ps="Forward" depthwrite="false" depthtest="equal" blend="add" />
-        <pass name="negative" vs="Forward" ps="Forward" depthwrite="false" depthtest="equal" blend="multiply" />       
-        <pass name="shadow" vs="Shadow" ps="Shadow" />
-    </technique>
-</material>

+ 0 - 8
Bin/CoreData/Materials/DefaultAlpha.xml

@@ -1,8 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="ambient" vs="Forward" ps="Forward_Ambient" depthwrite="false" blend="alpha" />
-        <pass name="light" vs="Forward" ps="Forward" depthwrite="false" blend="addalpha" />
-        <pass name="negative" vs="Forward" ps="Forward" depthwrite="false" blend="multiply" />
-    </technique>
-</material>

+ 0 - 8
Bin/CoreData/Materials/DefaultAlphaTS.xml

@@ -1,8 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="ambient" vs="Forward" ps="Forward_Ambient" depthwrite="false" blend="alpha" cull="none" />
-        <pass name="light" vs="Forward" ps="Forward" depthwrite="false" blend="addalpha" cull="none" />
-        <pass name="negative" vs="Forward" ps="Forward" depthwrite="false" blend="multiply" cull="none" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultDiff.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer" ps="Deferred/GBuffer_Diff" />
-        <pass name="prepass" vs="Prepass/GBuffer" ps="Prepass/GBuffer" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_Diff" depthwrite="false" depthtest="equal" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" />
-        <pass name="light" vs="Forward" ps="Forward_Diff" depthwrite="false" depthtest="equal" blend="add" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" depthwrite="false" depthtest="equal" blend="multiply" />     
-        <pass name="shadow" vs="Shadow" ps="Shadow" />
-    </technique>
-</material>

+ 0 - 8
Bin/CoreData/Materials/DefaultDiffAlpha.xml

@@ -1,8 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" depthwrite="false" blend="alpha" />
-        <pass name="light" vs="Forward" ps="Forward_Diff" depthwrite="false" blend="addalpha" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" depthwrite="false" blend="multiply" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultDiffAlphaMask.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer" ps="Deferred/GBuffer_DiffMask" alphamask="true" />
-        <pass name="prepass" vs="Prepass/GBuffer" ps="Prepass/GBuffer_Mask" alphamask="true" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_DiffMask" alphamask="true" depthwrite="false" depthtest="equal" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" alphatest="true" />
-        <pass name="light" vs="Forward" ps="Forward_Diff" alphatest="true" depthwrite="false" depthtest="equal" blend="add" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" alphatest="true" depthwrite="false" depthtest="equal" blend="multiply" />  
-        <pass name="shadow" vs="Shadow_Mask" ps="Shadow_Mask" alphamask="true" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultDiffAlphaMaskTS.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer" ps="Deferred/GBuffer_DiffMask" alphamask="true" cull="none" />
-        <pass name="prepass" vs="Prepass/GBuffer" ps="Prepass/GBuffer_Mask" alphamask="true" cull="none" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_DiffMask" alphamask="true" depthwrite="false" depthtest="equal" cull="none" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" alphatest="true" cull="none" />
-        <pass name="light" vs="Forward" ps="Forward_Diff" alphatest="true" depthwrite="false" depthtest="equal" blend="add" cull="none" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" alphatest="true" depthwrite="false" depthtest="equal" blend="multiply" cull="none" />
-        <pass name="shadow" vs="Shadow_Mask" ps="Shadow_Mask" alphamask="true" cull="none" />
-    </technique>
-</material>

+ 0 - 8
Bin/CoreData/Materials/DefaultDiffAlphaTS.xml

@@ -1,8 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" depthwrite="false" blend="alpha" cull="none" />
-        <pass name="light" vs="Forward" ps="Forward_Diff" depthwrite="false" blend="addalpha" cull="none" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" depthwrite="false" blend="multiply" cull="none" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultDiffNormal.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer_Normal" ps="Deferred/GBuffer_DiffNormal" />
-        <pass name="prepass" vs="Prepass/GBuffer_Normal" ps="Prepass/GBuffer_Normal" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_Diff" depthwrite="false" depthtest="equal" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" />
-        <pass name="light" vs="Forward_Normal" ps="Forward_DiffNormal" depthwrite="false" depthtest="equal" blend="add" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" depthwrite="false" depthtest="equal" blend="multiply" />       
-        <pass name="shadow" vs="Shadow" ps="Shadow" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultDiffNormalAlphaMask.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer_Normal" ps="Deferred/GBuffer_DiffNormalMask" alphamask="true" />
-        <pass name="prepass" vs="Prepass/GBuffer_Normal" ps="Prepass/GBuffer_NormalMask" alphamask="true" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_DiffMask" alphamask="true" depthwrite="false" depthtest="equal" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" alphatest="true" />
-        <pass name="light" vs="Forward_Normal" ps="Forward_DiffNormal" alphatest="true" depthwrite="false" depthtest="equal" blend="add" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" alphatest="true" depthwrite="false" depthtest="equal" blend="multiply" />
-        <pass name="shadow" vs="Shadow_Mask" ps="Shadow_Mask" alphamask="true" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultDiffNormalAlphaMaskTS.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer_Normal" ps="Deferred/GBuffer_DiffNormalMask" alphamask="true" cull="none" />
-        <pass name="prepass" vs="Prepass/GBuffer_Normal" ps="Prepass/GBuffer_NormalMask" alphamask="true" cull="none" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_DiffMask" alphamask="true" depthwrite="false" depthtest="equal" cull="none" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" alphatest="true" cull="none" />
-        <pass name="light" vs="Forward_Normal" ps="Forward_DiffNormal" alphatest="true" depthwrite="false" depthtest="equal" blend="add" cull="none" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" alphatest="true" depthwrite="false" depthtest="equal" blend="multiply" cull="none" />
-        <pass name="shadow" vs="Shadow_Mask" ps="Shadow_Mask" alphamask="true" cull="none" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultDiffNormalTS.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer_Normal" ps="Deferred/GBuffer_DiffNormal" cull="none" />
-        <pass name="prepass" vs="Prepass/GBuffer_Normal" ps="Prepass/GBuffer_Normal" cull="none" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_Diff" depthwrite="false" depthtest="equal" cull="none" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" cull="none" />
-        <pass name="light" vs="Forward_Normal" ps="Forward_DiffNormal" depthwrite="false" depthtest="equal" blend="add" cull="none" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" depthwrite="false" depthtest="equal" blend="multiply" cull="none" />
-        <pass name="shadow" vs="Shadow" ps="Shadow" cull="none" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultDiffTS.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer" ps="Deferred/GBuffer_Diff" cull="none" />
-        <pass name="prepass" vs="Prepass/GBuffer" ps="Prepass/GBuffer" cull="none" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_Diff" depthwrite="false" depthtest="equal" cull="none" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" cull="none" />
-        <pass name="light" vs="Forward" ps="Forward_Diff" depthwrite="false" depthtest="equal" blend="add" cull="none" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" depthwrite="false" depthtest="equal" blend="multiply" cull="none" />
-        <pass name="shadow" vs="Shadow" ps="Shadow" cull="none" />
-    </technique>
-</material>

+ 0 - 12
Bin/CoreData/Materials/DefaultTS.xml

@@ -1,12 +0,0 @@
-<material>
-    <technique>
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer" ps="Deferred/GBuffer" cull="none" />
-        <pass name="prepass" vs="Prepass/GBuffer" ps="Prepass/GBuffer" cull="none" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material" depthwrite="false" depthtest="equal" cull="none" />
-        <pass name="ambient" vs="Forward" ps="Forward_Ambient" cull="none" />
-        <pass name="light" vs="Forward" ps="Forward" depthwrite="false" depthtest="equal" blend="add" cull="none" />
-        <pass name="negative" vs="Forward" ps="Forward" depthwrite="false" depthtest="equal" blend="multiply" cull="none" />
-        <pass name="shadow" vs="Shadow" ps="Shadow" cull="none" />
-    </technique>
-</material>

+ 0 - 125
Bin/CoreData/Scripts/Editor.as

@@ -1,125 +0,0 @@
-// Urho3D editor
-
-#include "Scripts/EditorCamera.as"
-#include "Scripts/EditorScene.as"
-#include "Scripts/EditorUI.as"
-#include "Scripts/EditorImport.as"
-
-string configFileName;
-
-void start()
-{
-    if (engine.isHeadless())
-    {
-        errorDialog("Urho3D Editor", "Headless mode is not supported. The program will now exit.");
-        engine.exit();
-        return;
-    }
-
-    configFileName = getUserDocumentsDirectory() + "Urho3D/Editor/Config.xml";
-
-    // Free the mouse cursor
-    input.setClipCursor(false);
-
-    // Enable console commands from the editor script
-    engine.setDefaultScriptFile(scriptFile);
-    
-    subscribeToEvent("Update", "handleUpdate");
-
-    createScene();
-    createUI();
-    loadConfig();
-    parseArguments();
-}
-
-void stop()
-{
-    saveConfig();
-}
-
-void parseArguments()
-{
-    array<string> arguments = getArguments();
-
-    // The first argument should be the editor script name. Scan for a scene to load
-    for (uint i = 1; i < arguments.size(); ++i)
-    {
-        if (arguments[i][0] != '-')
-        {
-            loadScene(getAbsoluteFileName(arguments[i]));
-            break;
-        }
-    }
-}
-
-void handleUpdate(StringHash eventType, VariantMap& eventData)
-{
-    float timeStep = eventData["TimeStep"].getFloat();
-
-    moveCamera(timeStep);
-    updateStats(timeStep);
-
-    if (runPhysics)
-        editorScene.getPhysicsWorld().update(timeStep);
-}
-
-void loadConfig()
-{
-    if (!fileExists(configFileName))
-        return;
-
-    XMLFile config;
-    config.load(File(configFileName, FILE_READ));
-
-    XMLElement configElem = config.getRootElement("configuration");
-    if (configElem.isNull())
-        return;
-
-    XMLElement cameraElem = configElem.getChildElement("camera");
-    XMLElement objectElem = configElem.getChildElement("object");
-    if ((cameraElem.isNull()) || (objectElem.isNull()))
-        return;
-
-    camera.setNearClip(cameraElem.getFloat("nearclip"));
-    camera.setFarClip(cameraElem.getFloat("farclip"));
-    camera.setFov(cameraElem.getFloat("fov"));
-    cameraBaseSpeed = cameraElem.getFloat("speed");
-
-    newNodeDistance = objectElem.getFloat("newnodedistance");
-    moveStep = objectElem.getFloat("movestep");
-    rotateStep = objectElem.getFloat("rotatestep");
-    scaleStep = objectElem.getFloat("scalestep");
-    moveSnap = objectElem.getBool("movesnap");
-    rotateSnap = objectElem.getBool("rotatesnap");
-    scaleSnap = objectElem.getBool("scalesnap");
-    useLocalIDs = objectElem.getBool("uselocalids");
-}
-
-void saveConfig()
-{
-    if (configFileName.empty())
-        return;
-
-    createDirectory(getUserDocumentsDirectory() + "Urho3D/Editor");
-
-    XMLFile config;
-    XMLElement configElem = config.createRootElement("configuration");
-    XMLElement cameraElem = configElem.createChildElement("camera");
-    XMLElement objectElem = configElem.createChildElement("object");
-
-    cameraElem.setFloat("nearclip", camera.getNearClip());
-    cameraElem.setFloat("farclip", camera.getFarClip());
-    cameraElem.setFloat("fov", camera.getFov());
-    cameraElem.setFloat("speed", cameraBaseSpeed);
-
-    objectElem.setFloat("newnodedistance", newNodeDistance);
-    objectElem.setFloat("movestep", moveStep);
-    objectElem.setFloat("rotatestep", rotateStep);
-    objectElem.setFloat("scalestep", scaleStep);
-    objectElem.setBool("movesnap", moveSnap);
-    objectElem.setBool("rotatesnap", rotateSnap);
-    objectElem.setBool("scalesnap", scaleSnap);
-    objectElem.setBool("uselocalids", useLocalIDs);
-
-    config.save(File(configFileName, FILE_WRITE));
-}

+ 0 - 519
Bin/CoreData/Scripts/EditorCamera.as

@@ -1,519 +0,0 @@
-// Urho3D editor camera functions
-
-Camera@ camera;
-Window@ editorSettingsDialog;
-
-enum ObjectMoveMode
-{
-    OBJ_MOVE = 0,
-    OBJ_ROTATE,
-    OBJ_SCALE
-}
-
-float cameraBaseSpeed = 10;
-float cameraBaseRotationSpeed = 0.2;
-float cameraShiftSpeedMultiplier = 5;
-float cameraYaw = 0;
-float cameraPitch = 0;
-float newNodeDistance = 20;
-float moveStep = 0.5;
-float rotateStep = 5;
-float scaleStep = 0.1;
-bool moveSnap = false;
-bool rotateSnap = false;
-bool scaleSnap = false;
-ObjectMoveMode moveMode = OBJ_MOVE;
-
-Text@ renderStatsText;
-Text@ cameraPosText;
-bool subscribedToCameraEdits = false;
-
-array<string> moveModeText = {
-    "Move    ",
-    "Rotate  ",
-    "Scale   "
-};
-
-void createCamera()
-{
-    // Note: this camera will not be bound into a scene entity, so that it does not get listed in the editor UI
-    @camera = editorScene.createComponent("Camera");
-    resetCamera();
-
-    pipeline.setViewport(0, Viewport(editorScene, camera));
-}
-
-void resetCamera()
-{
-    camera.setPosition(Vector3(0, 10, 0));
-    camera.setRotation(Quaternion());
-    cameraPitch = 0;
-    cameraYaw = 0;
-}
-
-void createEditorSettingsDialog()
-{
-    if (!(editorSettingsDialog is null))
-        return;
-    
-    @editorSettingsDialog = ui.loadLayout(cache.getResource("XMLFile", "UI/EditorSettingsDialog.xml"), uiStyle);
-    uiRoot.addChild(editorSettingsDialog);
-    centerDialog(editorSettingsDialog);
-    updateEditorSettingsDialog();
-    hideEditorSettingsDialog();
-}
-
-void updateEditorSettingsDialog()
-{
-    if (editorSettingsDialog is null)
-        return;
-
-    LineEdit@ nearClipEdit = editorSettingsDialog.getChild("NearClipEdit", true);
-    nearClipEdit.setText(toString(camera.getNearClip()));
-    
-    LineEdit@ farClipEdit = editorSettingsDialog.getChild("FarClipEdit", true);
-    farClipEdit.setText(toString(camera.getFarClip()));
-    
-    LineEdit@ fovEdit = editorSettingsDialog.getChild("FOVEdit", true);
-    fovEdit.setText(toString(camera.getFov()));
-
-    LineEdit@ speedEdit = editorSettingsDialog.getChild("SpeedEdit", true);
-    speedEdit.setText(toString(cameraBaseSpeed));
-
-    LineEdit@ distanceEdit = editorSettingsDialog.getChild("DistanceEdit", true);
-    distanceEdit.setText(toString(newNodeDistance));
-
-    LineEdit@ moveStepEdit = editorSettingsDialog.getChild("MoveStepEdit", true);
-    moveStepEdit.setText(toString(moveStep));
-    CheckBox@ moveSnapToggle = editorSettingsDialog.getChild("MoveSnapToggle", true);
-    moveSnapToggle.setChecked(moveSnap);
-
-    LineEdit@ rotateStepEdit = editorSettingsDialog.getChild("RotateStepEdit", true);
-    rotateStepEdit.setText(toString(rotateStep));
-    CheckBox@ rotateSnapToggle = editorSettingsDialog.getChild("RotateSnapToggle", true);
-    rotateSnapToggle.setChecked(rotateSnap);
-
-    LineEdit@ scaleStepEdit = editorSettingsDialog.getChild("ScaleStepEdit", true);
-    scaleStepEdit.setText(toString(scaleStep));
-    CheckBox@ scaleSnapToggle = editorSettingsDialog.getChild("ScaleSnapToggle", true);
-    scaleSnapToggle.setChecked(scaleSnap);
-
-    CheckBox@ localIDToggle = editorSettingsDialog.getChild("LocalIDToggle", true);
-    localIDToggle.setChecked(useLocalIDs);
-
-    if (!subscribedToCameraEdits)
-    {
-        subscribeToEvent(nearClipEdit, "TextChanged", "editCameraNearClip");
-        subscribeToEvent(nearClipEdit, "TextFinished", "editCameraNearClip");
-        subscribeToEvent(farClipEdit, "TextChanged", "editCameraFarClip");
-        subscribeToEvent(farClipEdit, "TextFinished", "editCameraFarClip");
-        subscribeToEvent(fovEdit, "TextChanged", "editCameraFOV");
-        subscribeToEvent(fovEdit, "TextFinished", "editCameraFOV");
-        subscribeToEvent(speedEdit, "TextChanged", "editCameraSpeed");
-        subscribeToEvent(speedEdit, "TextFinished", "editCameraSpeed");
-        subscribeToEvent(distanceEdit, "TextChanged", "editNewNodeDistance");
-        subscribeToEvent(distanceEdit, "TextFinished", "editNewNodeDistance");
-        subscribeToEvent(moveStepEdit, "TextChanged", "editMoveStep");
-        subscribeToEvent(moveStepEdit, "TextFinished", "editMoveStep");
-        subscribeToEvent(rotateStepEdit, "TextChanged", "editRotateStep");
-        subscribeToEvent(rotateStepEdit, "TextFinished", "editRotateStep");
-        subscribeToEvent(scaleStepEdit, "TextChanged", "editScaleStep");
-        subscribeToEvent(scaleStepEdit, "TextFinished", "editScaleStep");
-        subscribeToEvent(moveSnapToggle, "Toggled", "editMoveSnap");
-        subscribeToEvent(rotateSnapToggle, "Toggled", "editRotateSnap");
-        subscribeToEvent(scaleSnapToggle, "Toggled", "editScaleSnap");
-        subscribeToEvent(localIDToggle, "Toggled", "editUseLocalIDs");
-        subscribeToEvent(editorSettingsDialog.getChild("CloseButton", true), "Released", "hideEditorSettingsDialog");
-        subscribedToCameraEdits = true;
-    }
-}
-
-void showEditorSettingsDialog()
-{
-    updateEditorSettingsDialog();
-    editorSettingsDialog.setVisible(true);
-    editorSettingsDialog.bringToFront();
-}
-
-void hideEditorSettingsDialog()
-{
-    editorSettingsDialog.setVisible(false);
-}
-
-void editCameraNearClip(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    camera.setNearClip(edit.getText().toFloat());
-    if (eventType == StringHash("TextFinished"))
-        edit.setText(toString(camera.getNearClip()));
-}
-
-void editCameraFarClip(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    camera.setFarClip(max(edit.getText().toFloat(), 10));
-    if (eventType == StringHash("TextFinished"))
-        edit.setText(toString(camera.getFarClip()));
-}
-
-void editCameraFOV(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    camera.setFov(edit.getText().toFloat());
-    if (eventType == StringHash("TextFinished"))
-        edit.setText(toString(camera.getFov()));
-}
-
-void editCameraSpeed(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    cameraBaseSpeed = max(edit.getText().toFloat(), 1);
-    if (eventType == StringHash("TextFinished"))
-        edit.setText(toString(cameraBaseSpeed));
-}
-
-void editNewNodeDistance(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    newNodeDistance = max(edit.getText().toFloat(), 0);
-    if (eventType == StringHash("TextFinished"))
-        edit.setText(toString(newNodeDistance));
-}
-
-void editMoveStep(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    moveStep = max(edit.getText().toFloat(), 0);
-    if (eventType == StringHash("TextFinished"))
-        edit.setText(toString(moveStep));
-}
-
-void editRotateStep(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    rotateStep = max(edit.getText().toFloat(), 0);
-    if (eventType == StringHash("TextFinished"))
-        edit.setText(toString(rotateStep));
-}
-
-void editScaleStep(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    scaleStep = max(edit.getText().toFloat(), 0);
-    if (eventType == StringHash("TextFinished"))
-        edit.setText(toString(scaleStep));
-}
-
-void editMoveSnap(StringHash eventType, VariantMap& eventData)
-{
-    CheckBox@ edit = eventData["Element"].getUIElement();
-    moveSnap = edit.isChecked();
-}
-
-void editRotateSnap(StringHash eventType, VariantMap& eventData)
-{
-    CheckBox@ edit = eventData["Element"].getUIElement();
-    rotateSnap = edit.isChecked();
-}
-
-void editScaleSnap(StringHash eventType, VariantMap& eventData)
-{
-    CheckBox@ edit = eventData["Element"].getUIElement();
-    scaleSnap = edit.isChecked();
-}
-
-void editUseLocalIDs(StringHash eventType, VariantMap& eventData)
-{
-    CheckBox@ edit = eventData["Element"].getUIElement();
-    useLocalIDs = edit.isChecked();
-}
-
-void createStatsBar()
-{
-    Font@ font = cache.getResource("Font", "cour.ttf");
-    
-    @renderStatsText = Text();
-    @cameraPosText = Text();
-    
-    if (uiRoot.getWidth() >= 1024)
-    {
-        setupStatsBarText(renderStatsText, font, 0, 20, HA_LEFT);
-        setupStatsBarText(cameraPosText, font, 0, 20, HA_RIGHT);
-    }
-    else
-    {
-        setupStatsBarText(renderStatsText, font, 0, 20, HA_LEFT);
-        setupStatsBarText(cameraPosText, font, 0, 32, HA_LEFT);
-    }
-}
-
-void setupStatsBarText(Text@ text, Font@ font, int x, int y, HorizontalAlignment align)
-{
-    text.setPosition(x, y);
-    text.setHorizontalAlignment(align);
-    text.setFont(font, 9);
-    text.setColor(Color(1, 1, 0));
-    text.setPriority(-100);
-    uiRoot.addChild(text);
-}
-
-void updateStats(float timeStep)
-{
-    renderStatsText.setText(
-        "Tris: " + pipeline.getNumPrimitives() +
-        " Batches: " + pipeline.getNumBatches() +
-        " Lights: " + pipeline.getNumLights(true) +
-        " Shadowmaps: " + pipeline.getNumShadowMaps(true) +
-        " Occluders: " + (pipeline.getNumOccluders(true) + pipeline.getNumShadowOccluders(true))
-    );
-    
-    Vector3 cameraPos = camera.getPosition();
-    string xText = toString(cameraPos.x);
-    string yText = toString(cameraPos.y);
-    string zText = toString(cameraPos.z);
-    xText.resize(8);
-    yText.resize(8);
-    zText.resize(8);
-    
-    cameraPosText.setText(moveModeText[moveMode] + "Physics: " + (runPhysics ? "Running " : "Paused  ") + " Camera pos: " + xText
-        + " " + yText + " " + zText + " ");
-    
-    renderStatsText.setSize(renderStatsText.getMinSize());
-    cameraPosText.setSize(cameraPosText.getMinSize());
-}
-
-void moveCamera(float timeStep)
-{
-    // Move camera
-    if ((ui.getFocusElement() is null) && (!input.getKeyDown(KEY_CTRL)))
-    {
-        float speedMultiplier = 1.0;
-        if (input.getKeyDown(KEY_SHIFT))
-            speedMultiplier = cameraShiftSpeedMultiplier;
-
-        if ((input.getKeyDown('W')) || (input.getKeyDown(KEY_UP)))
-            camera.translateRelative(Vector3(0, 0, cameraBaseSpeed) * timeStep * speedMultiplier);
-        if ((input.getKeyDown('S')) || (input.getKeyDown(KEY_DOWN)))
-            camera.translateRelative(Vector3(0, 0, -cameraBaseSpeed) * timeStep * speedMultiplier);
-        if ((input.getKeyDown('A')) || (input.getKeyDown(KEY_LEFT)))
-            camera.translateRelative(Vector3(-cameraBaseSpeed, 0, 0) * timeStep * speedMultiplier);
-        if ((input.getKeyDown('D')) || (input.getKeyDown(KEY_RIGHT)))
-            camera.translateRelative(Vector3(cameraBaseSpeed, 0, 0) * timeStep * speedMultiplier);
-    }
-
-    // Rotate camera
-    if (input.getMouseButtonDown(MOUSEB_RIGHT))
-    {
-        IntVector2 mouseMove = input.getMouseMove();
-        if ((mouseMove.x != 0) || (mouseMove.y != 0))
-        {
-            cameraYaw += mouseMove.x * cameraBaseRotationSpeed;
-            cameraPitch += mouseMove.y * cameraBaseRotationSpeed;
-            if (cameraPitch < -90.0f)
-                cameraPitch = -90.0f;
-            if (cameraPitch > 90.0f)
-                cameraPitch = 90.0f;
-
-            camera.setRotation(Quaternion(cameraPitch, cameraYaw, 0));
-        }
-    }
-
-    // Move/rotate/scale object
-    if ((selectedComponent !is null) && (ui.getFocusElement() is null) && (input.getKeyDown(KEY_CTRL)))
-    {
-        Node@ node = cast<Node>(selectedComponent);
-        if (node !is null)
-        {
-            bool changed = false;
-            Vector3 adjust(0, 0, 0);
-            if (input.getKeyDown(KEY_UP))
-                adjust.z = 1;
-            if (input.getKeyDown(KEY_DOWN))
-                adjust.z = -1;
-            if (input.getKeyDown(KEY_LEFT))
-                adjust.x = -1;
-            if (input.getKeyDown(KEY_RIGHT))
-                adjust.x = 1;
-            if (input.getKeyDown(KEY_PAGEUP))
-                adjust.y = 1;
-            if (input.getKeyDown(KEY_PAGEDOWN))
-                adjust.y = -1;
-            if (moveMode == OBJ_SCALE)
-            {
-                if ((input.getKeyDown(KEY_ADD)) || (input.getKeyDown(KEY_OEM_PLUS)))
-                    adjust = Vector3(1, 1, 1);
-                if ((input.getKeyDown(KEY_SUBTRACT)) || (input.getKeyDown(KEY_OEM_MINUS)))
-                    adjust = Vector3(-1, -1, -1);
-            }
-
-            if (adjust != Vector3(0, 0, 0))
-            {
-                adjust *= timeStep * 10;
-
-                if (input.getKeyDown(KEY_SHIFT))
-                    adjust *= cameraShiftSpeedMultiplier;
-
-                switch (moveMode)
-                {
-                case OBJ_MOVE:
-                    if (!moveSnap)
-                    {
-                        node.setPosition(node.getPosition() + adjust * moveStep);
-                        changed = true;
-                    }
-                    break;
-    
-                case OBJ_ROTATE:
-                    if (!rotateSnap)
-                    {
-                        Vector3 euler = node.getRotation().getEulerAngles();
-                        euler.x += adjust.z * rotateStep;
-                        euler.y += adjust.x * rotateStep;
-                        euler.z += adjust.y * rotateStep;
-                        node.setRotation(Quaternion(euler));
-                        changed = true;
-                    }
-                    break;
-    
-                case OBJ_SCALE:
-                    if (!scaleSnap)
-                    {
-                        node.setScale(node.getScale() + adjust * scaleStep);
-                        changed = true;
-                    }
-                    break;
-                }
-            }
-
-            if (changed)
-            {
-                // If is a physics body, make sure the physics and rendering transforms are in sync
-                RigidBody@ body = cast<RigidBody>(node);
-                if (body !is null)
-                    body.setTransform(node.getPosition(), node.getRotation(), node.getScale());
-
-                updateComponentAttributes();
-            }
-        }
-    }
-}
-
-void steppedObjectManipulation(int key)
-{
-    Node@ node = cast<Node>(selectedComponent);
-    if (node is null)
-        return;
-
-    // Do not react in non-snapped mode, because that is handled in frame update
-    if ((moveMode == OBJ_MOVE) && (!moveSnap))
-        return;
-    if ((moveMode == OBJ_ROTATE) && (!rotateSnap))
-        return;
-    if ((moveMode == OBJ_SCALE) && (!scaleSnap))
-        return;
-
-    Vector3 adjust(0, 0, 0);
-    if (key == KEY_UP)
-        adjust.z = 1;
-    if (key == KEY_DOWN)
-        adjust.z = -1;
-    if (key == KEY_LEFT)
-        adjust.x = -1;
-    if (key == KEY_RIGHT)
-        adjust.x = 1;
-    if (key == KEY_PAGEUP)
-        adjust.y = 1;
-    if (key == KEY_PAGEDOWN)
-        adjust.y = -1;
-    if (moveMode == OBJ_SCALE)
-    {
-        if ((key == KEY_ADD) || (key == KEY_OEM_PLUS))
-            adjust = Vector3(1, 1, 1);
-        if ((key == KEY_SUBTRACT) || (key == KEY_OEM_MINUS))
-            adjust = Vector3(-1, -1, -1);
-    }
-
-    if (adjust == Vector3(0, 0, 0))
-        return;
-
-    switch (moveMode)
-    {
-    case OBJ_MOVE:
-        {
-            Vector3 pos = node.getPosition();
-            if (adjust.x != 0)
-            {
-                pos.x += adjust.x * moveStep;
-                pos.x = floor(pos.x / moveStep + 0.5) * moveStep;
-            }
-            if (adjust.y != 0)
-            {
-                pos.y += adjust.y * moveStep;
-                pos.y = floor(pos.y / moveStep + 0.5) * moveStep;
-            }
-            if (adjust.z != 0)
-            {
-                pos.z += adjust.z * moveStep;
-                pos.z = floor(pos.z / moveStep + 0.5) * moveStep;
-            }
-            node.setPosition(pos);
-        }
-        break;
-
-    case OBJ_ROTATE:
-        {
-            Vector3 rot = node.getRotation().getEulerAngles();
-            if (adjust.z != 0)
-            {
-                rot.x += adjust.z * rotateStep;
-                rot.x = floor(rot.x / rotateStep + 0.5) * rotateStep;
-            }
-            if (adjust.x != 0)
-            {
-                rot.y += adjust.x * rotateStep;
-                rot.y = floor(rot.y / rotateStep + 0.5) * rotateStep;
-            }
-            if (adjust.y != 0)
-            {
-                rot.z += adjust.y * rotateStep;
-                rot.z = floor(rot.z / rotateStep + 0.5) * rotateStep;
-            }
-            node.setRotation(Quaternion(rot));
-        }
-        break;
-
-    case OBJ_SCALE:
-        {
-            Vector3 scale = node.getScale();
-            if (adjust.x != 0)
-            {
-                scale.x += adjust.x * scaleStep;
-                scale.x = floor(scale.x / scaleStep + 0.5) * scaleStep;
-            }
-            if (adjust.y != 0)
-            {
-                scale.y += adjust.y * scaleStep;
-                scale.y = floor(scale.y / scaleStep + 0.5) * scaleStep;
-            }
-            if (adjust.z != 0)
-            {
-                scale.z += adjust.z * scaleStep;
-                scale.z = floor(scale.z / scaleStep + 0.5) * scaleStep;
-            }
-            node.setScale(scale);
-        }
-        break;
-    }
-
-    // If is a physics body, make sure the physics and rendering transforms are in sync
-    RigidBody@ body = cast<RigidBody>(node);
-    if (body !is null)
-        body.setTransform(node.getPosition(), node.getRotation(), node.getScale());
-
-    updateComponentAttributes();
-}
-
-Vector3 getNewNodePosition()
-{
-    return camera.getWorldPosition() + camera.getWorldRotation() * Vector3(0, 0, newNodeDistance);
-}

+ 0 - 665
Bin/CoreData/Scripts/EditorComponentWindow.as

@@ -1,665 +0,0 @@
-// Urho3D editor component edit window handling
-
-Window@ componentWindow;
-
-XMLFile componentData;
-
-const uint ATTR_EDITOR_STRING = 0;
-const uint ATTR_EDITOR_FLOAT = 1;
-const uint ATTR_EDITOR_VECTOR2 = 2;
-const uint ATTR_EDITOR_VECTOR3 = 3;
-const uint ATTR_EDITOR_VECTOR4 = 4;
-const uint ATTR_EDITOR_BOOL = 5;
-const uint ATTR_EDITOR_ENUM = 64;
-const uint ATTR_EDITOR_RESOURCE = 128;
-const uint MAX_ATTRNAME_LENGTH = 15;
-
-class EnumEditorData
-{
-    string componentType;
-    string categoryName;
-    string attributeName;
-    array<string>@ choices;
-
-    EnumEditorData(const string& in componentType_, const string& in categoryName_, const string& in attributeName_, array<string>@ choices_)
-    {
-        componentType = componentType_;
-        categoryName = categoryName_;
-        attributeName = attributeName_;
-        @choices = choices_;
-    }
-}
-
-class ResourceEditorData
-{
-    string componentType;
-    string categoryName;
-    string attributeName;
-    string resourceType;
-    string fileExtension;
-    string lastPath;
-
-    ResourceEditorData(const string& in componentType_, const string& in categoryName_, const string& in attributeName_, const string& in resourceType_, const string& in fileExtension_)
-    {
-        componentType = componentType_;
-        categoryName = categoryName_;
-        attributeName = attributeName_;
-        resourceType = resourceType_;
-        fileExtension = fileExtension_;
-    }
-}
-
-array<EnumEditorData@> enumEditors;
-array<ResourceEditorData@> resourceEditors;
-
-bool inLoadAttributeEditor = false;
-uint lastAttributeCount = 0;
-
-uint resourcePickType = 0;
-string resourcePickEditorName;
-
-void createComponentWindow()
-{
-    if (componentWindow !is null)
-        return;
-
-    @componentWindow = ui.loadLayout(cache.getResource("XMLFile", "UI/ComponentWindow.xml"), uiStyle);
-    uiRoot.addChild(componentWindow);
-    int height = min(uiRoot.getHeight() - 60, 500);
-    componentWindow.setSize(300, height);
-    componentWindow.setPosition(uiRoot.getWidth() - 20 - componentWindow.getWidth(), 40);
-    componentWindow.setVisible(true);
-    updateComponentWindow();
-    
-    // Fill enum & resource editor data
-    array<string> lightTypes = {"directional", "spot", "point"};
-    array<string> bodyTypes = {"static", "dynamic", "kinematic"};
-    enumEditors.push(EnumEditorData("Light", "light", "type", lightTypes));
-    enumEditors.push(EnumEditorData("RigidBody", "body", "mode", bodyTypes));
-
-    resourceEditors.push(ResourceEditorData("", "material", "name", "Material", ".xml"));
-    resourceEditors.push(ResourceEditorData("", "model", "name", "Model", ".mdl"));
-    resourceEditors.push(ResourceEditorData("", "animation", "name", "Animation", ".ani"));
-    resourceEditors.push(ResourceEditorData("RigidBody", "collision", "name", "CollisionShape", ".xml"));
-    resourceEditors.push(ResourceEditorData("ScriptInstance", "script", "name", "ScriptFile", ".as"));
-    resourceEditors.push(ResourceEditorData("ParticleEmitter", "emitter", "name", "XMLFile", ".xml"));
-
-    subscribeToEvent(componentWindow.getChild("CloseButton", true), "Released", "hideComponentWindow");
-    subscribeToEvent(componentWindow.getChild("EntityNameEdit", true), "TextFinished", "editEntityName");
-    subscribeToEvent(componentWindow.getChild("ComponentNameEdit", true), "TextFinished", "editComponentName");
-}
-
-void hideComponentWindow()
-{
-    componentWindow.setVisible(false);
-}
-
-void showComponentWindow()
-{
-    componentWindow.setVisible(true);
-    componentWindow.bringToFront();
-}
-
-void updateComponentWindow()
-{
-    // If a resource pick was in progress, it cannot be completed now, as component was changed
-    pickResourceCanceled();
-
-    Text@ entityTitle = componentWindow.getChild("EntityTitle", true);
-    Text@ componentTitle = componentWindow.getChild("ComponentTitle", true);
-    LineEdit@ entityNameEdit = componentWindow.getChild("EntityNameEdit", true);
-    LineEdit@ componentNameEdit = componentWindow.getChild("ComponentNameEdit", true);
-    ListView@ list = componentWindow.getChild("AttributeList", true);
-    list.removeAllItems();
-    lastAttributeCount = 0;
-
-    if (selectedEntity is null)
-    {
-        entityTitle.setText("No entity");
-        entityNameEdit.setText("");
-        entityNameEdit.setEnabled(false);
-    }
-    else
-    {
-        uint entityID = selectedEntity.getID();
-        entityTitle.setText("Entity ID " + entityID + " " + (entityID < 65536 ? "(Replicated)" : "(Local)"));
-        entityNameEdit.setText(selectedEntity.getName());
-        entityNameEdit.setEnabled(true);
-    }
-
-    if (selectedComponent is null)
-    {
-        componentTitle.setText("No component");
-        componentNameEdit.setText("");
-        componentNameEdit.setEnabled(false);
-    }
-    else
-    {
-        componentTitle.setText("Component " + selectedComponent.getTypeName());
-        componentNameEdit.setText(selectedComponent.getName());
-        componentNameEdit.setEnabled(true);
-        updateComponentAttributes();
-    }
-}
-
-void editEntityName()
-{
-    if (selectedEntity is null)
-        return;
-
-    LineEdit@ nameEdit = componentWindow.getChild("EntityNameEdit", true);
-    
-    beginModify(selectedEntity.getID());
-    selectedEntity.setName(nameEdit.getText());
-    endModify(selectedEntity.getID());
-
-    updateSceneWindowEntityOnly(selectedEntity);
-}
-
-void editComponentName()
-{
-    if (selectedComponent is null)
-        return;
-
-    LineEdit@ nameEdit = componentWindow.getChild("ComponentNameEdit", true);
-    
-    beginModify(selectedComponent.getEntity().getID());
-    selectedComponent.setName(nameEdit.getText());
-    endModify(selectedComponent.getEntity().getID());
-    
-    updateSceneWindowEntity(selectedComponent.getEntity());
-}
-
-void updateComponentAttributes()
-{
-    ListView@ list = componentWindow.getChild("AttributeList", true);
-
-    // Save component to XML, then inspect the result
-    XMLElement rootElem = componentData.createRootElement("component");
-    selectedComponent.saveXML(rootElem);
-    Node@ node = cast<Node>(selectedComponent);
-
-    // Check amount of attributes. If has changed, do full refresh. Otherwise just refresh values
-    XMLElement categoryElem = rootElem.getChildElement();
-    uint attributeCount = 0;
-    while (categoryElem.notNull())
-    {
-        attributeCount += categoryElem.getNumAttributes();
-        categoryElem = categoryElem.getNextElement();
-    }
-
-    categoryElem = rootElem.getChildElement();
-    uint index = 0;
-
-    if (attributeCount != lastAttributeCount)
-    {
-        // If a resource pick was in progress, it cannot be completed now, as component structure was changed
-        pickResourceCanceled();
-
-        IntVector2 listOldPos = list.getViewPosition();
-
-        list.removeAllItems();
-
-        attributeCount = 0;
-        while (categoryElem.notNull())
-        {
-            string category = categoryElem.getName();
-
-            Text@ text = Text();
-            text.setStyleAuto(uiStyle);
-            text.setText(category);
-            list.addItem(text);
-
-            {
-                UIElement@ spacer = UIElement();
-                spacer.setFixedHeight(4);
-                list.addItem(spacer);
-            }
-
-            array<string> attrs = categoryElem.getAttributeNames();
-
-            // Do not make the parent node reference editable. It is handled via scene window drag and drop instead
-            if ((category == "parent") && (node !is null))
-            {
-                Node@ parentNode = node.getParent();
-
-                Text@ attrName = Text();
-                attrName.setStyle(uiStyle, "EditorAttributeText");
-                if (parentNode !is null)
-                    attrName.setText(" " + parentNode.getTypeName() + " in " + getEntityTitle(parentNode.getEntity()));
-                else
-                    attrName.setText(" No parent");
-
-                list.addItem(attrName);
-            }
-            else
-            {
-                for (uint i = 0; i < attrs.size(); ++i)
-                {
-                    string name = attrs[i];
-                    if (name.length() > MAX_ATTRNAME_LENGTH)
-                        name.resize(MAX_ATTRNAME_LENGTH);
-    
-                    UIElement@ bar = UIElement();
-                    bar.setLayout(LM_HORIZONTAL, 4, IntRect(0, 0, 0, 0));
-                    bar.setFixedHeight(18);
-                    list.addItem(bar);
-
-                    uint type = getAttributeEditorType(selectedComponent, category, attrs[i], categoryElem.getAttribute(attrs[i]));
-
-                    UIElement@ spacer = UIElement();
-                    spacer.setFixedWidth(8);
-                    bar.addChild(spacer);
-
-                    // Do not create the name for resource editors
-                    if (type < ATTR_EDITOR_RESOURCE)
-                    {
-                        Text@ attrName = Text();
-                        attrName.setStyle(uiStyle, "EditorAttributeText");
-                        attrName.setText(name);
-                        attrName.setFixedWidth(110);
-                        bar.addChild(attrName);
-                    }
-
-                    createAttributeEditor(bar, type, categoryElem, index, attrs[i]);
-                    loadAttributeEditor(type, categoryElem, index, attrs[i]);
-                }
-            }
-
-            {
-                UIElement@ spacer = UIElement();
-                spacer.setFixedHeight(4);
-                list.addItem(spacer);
-            }
-
-            categoryElem = categoryElem.getNextElement();
-            attributeCount += attrs.size();
-            ++index;
-        }
-    
-        lastAttributeCount = attributeCount;
-        
-        // Try to reset to old view position
-        list.setViewPosition(listOldPos);
-    }
-    else
-    {
-        while (categoryElem.notNull())
-        {
-            array<string> attrs = categoryElem.getAttributeNames();
-        
-            for (uint i = 0; i < attrs.size(); ++i)
-            {
-                string category = categoryElem.getName();
-                uint type = getAttributeEditorType(selectedComponent, category, attrs[i], categoryElem.getAttribute(attrs[i]));
-                loadAttributeEditor(type, categoryElem, index, attrs[i]);
-            }
-
-            categoryElem = categoryElem.getNextElement();
-            ++index;
-        }
-    }
-}
-
-void editComponentAttribute(StringHash eventType, VariantMap& eventData)
-{
-    // Changing elements programmatically may cause events to be sent. Stop possible infinite loop in that case.
-    if ((selectedComponent is null) || (inLoadAttributeEditor))
-        return;
-
-    UIElement@ attrEdit = eventData["Element"].getUIElement();
-    editComponentAttribute(attrEdit, eventType == StringHash("TextChanged"));
-}
-
-void editComponentAttribute(UIElement@ attrEdit, bool intermediateEdit)
-{
-    if ((selectedComponent is null) || (inLoadAttributeEditor))
-        return;
-
-    XMLElement rootElem = componentData.getRootElement();
-    XMLElement categoryElem = rootElem.getChildElement();
-    uint index = 0;
-    while (categoryElem.notNull())
-    {
-        if (index == uint(attrEdit.userData["Index"].getInt()))
-        {
-            storeAttributeEditor(attrEdit.userData["Type"].getInt(), categoryElem, index, attrEdit.userData["Attribute"].getString());
-
-            uint id = selectedComponent.getEntity().getID();
-            beginModify(id);
-            selectedComponent.loadXML(rootElem);
-            selectedComponent.postLoad();
-            endModify(id);
-
-            // If intermediate edit on a numeric field, do not refresh value back from the component to the edit field
-            if (!intermediateEdit)
-                updateComponentAttributes();
-            return;
-        }
-        categoryElem = categoryElem.getNextElement();
-        ++index;
-    }
-}
-
-void pickResource(StringHash eventType, VariantMap& eventData)
-{
-    if (uiFileSelector !is null)
-        return;
-
-    UIElement@ button = eventData["Element"].getUIElement();
-    LineEdit@ attrEdit = button.getParent().getChild(1);
-    uint type = uint(attrEdit.userData["Type"].getInt());
-
-    ResourceEditorData@ data = resourceEditors[type - ATTR_EDITOR_RESOURCE];
-
-    array<string> filters;
-    filters.push("*" + data.fileExtension);
-    string lastPath = data.lastPath;
-    if (lastPath.empty())
-        lastPath = sceneResourcePath;
-    createFileSelector("Pick " + data.resourceType, "OK", "Cancel", lastPath, filters, 0);
-    subscribeToEvent(uiFileSelector, "FileSelected", "pickResourceDone");
-
-    resourcePickType = type;
-    resourcePickEditorName = attrEdit.getName();
-}
-
-void openResource(StringHash eventType, VariantMap& eventData)
-{
-    UIElement@ button = eventData["Element"].getUIElement();
-    LineEdit@ attrEdit = button.getParent().getChild(1);
-    systemOpenFile(sceneResourcePath + attrEdit.getText(), "");
-}
-
-void pickResourceDone(StringHash eventType, VariantMap& eventData)
-{
-    closeFileSelector();
-
-    if (!eventData["OK"].getBool())
-    {
-        resourcePickType = 0;
-        return;
-    }
-
-    // Check if another component was selected in the meanwhile
-    if (resourcePickType == 0)
-        return;
-
-    ResourceEditorData@ data = resourceEditors[resourcePickType - ATTR_EDITOR_RESOURCE];
-    resourcePickType = 0;
-
-    ListView@ list = componentWindow.getChild("AttributeList", true);
-    LineEdit@ attrEdit = list.getChild(resourcePickEditorName, true);
-    if (attrEdit is null)
-        return;
-
-    // Validate the resource. It must come from within the scene resource directory, and be loaded successfully
-    string resourceName = eventData["FileName"].getString();
-    if (resourceName.find(sceneResourcePath) != 0)
-        return;
-    data.lastPath = getPath(resourceName);
-
-    resourceName = resourceName.substr(sceneResourcePath.length());
-
-    Resource@ res = cache.getResource(data.resourceType, resourceName);
-    if (res is null)
-        return;
-
-    attrEdit.setText(resourceName);
-    editComponentAttribute(attrEdit, false);
-}
-
-void pickResourceCanceled()
-{
-    if (resourcePickType != 0)
-    {
-        resourcePickType = 0;
-        closeFileSelector();
-    }
-}
-
-int getAttributeEditorType(Component@ component, const string& in category, const string& in attribute, const string& in value)
-{
-    for (uint i = 0; i < enumEditors.size(); ++i)
-    {
-        if ((category == enumEditors[i].categoryName) && (attribute == enumEditors[i].attributeName) && ((enumEditors[i].componentType.empty())
-            || (component.getTypeName() == enumEditors[i].componentType)))
-            return ATTR_EDITOR_ENUM + i;
-    }
-
-    for (uint i = 0; i < resourceEditors.size(); ++i)
-    {
-        if ((category == resourceEditors[i].categoryName) && (attribute == resourceEditors[i].attributeName) && 
-            ((resourceEditors[i].componentType.empty()) || (component.getTypeName() == resourceEditors[i].componentType)))
-            return ATTR_EDITOR_RESOURCE + i;
-    }
-
-    // Note: we always use valid, ie. just serialized data for this, not own edited values
-    if ((category == "animation") && (attribute == "startbone"))
-        return ATTR_EDITOR_STRING;
-    else if ((category == "script") && (attribute == "class"))
-        return ATTR_EDITOR_STRING;
-    else if ((value == "true") || (value == "false"))
-        return ATTR_EDITOR_BOOL;
-
-    uint coords = value.split(' ').size();
-    if (coords == 1)
-        return ATTR_EDITOR_FLOAT;
-    if (coords == 2)
-        return ATTR_EDITOR_VECTOR2;
-    else if (coords == 3)
-        return ATTR_EDITOR_VECTOR3;
-    else if (coords == 4)
-        return ATTR_EDITOR_VECTOR4;
-    
-    return ATTR_EDITOR_STRING;
-}
-
-string getAttributeEditorName(uint index, const string& in attribute)
-{
-    return "Attr_" + toString(index) + "_" + attribute;
-}
-
-void createAttributeEditor(UIElement@ bar, uint type, XMLElement categoryElem, uint index, const string& in attribute)
-{
-    if (type == ATTR_EDITOR_STRING)
-    {
-        LineEdit@ attrEdit = LineEdit(getAttributeEditorName(index, attribute));
-        attrEdit.setStyle(uiStyle, "EditorAttributeEdit");
-        attrEdit.userData["Type"] = type;
-        attrEdit.userData["Index"] = index;
-        attrEdit.userData["Attribute"] = attribute;
-        attrEdit.setFixedHeight(16);
-        bar.addChild(attrEdit);
-        subscribeToEvent(attrEdit, "TextFinished", "editComponentAttribute");
-    }
-
-    if (type == ATTR_EDITOR_BOOL)
-    {
-        CheckBox@ attrEdit = CheckBox(getAttributeEditorName(index, attribute));
-        attrEdit.setStyleAuto(uiStyle);
-        attrEdit.userData["Type"] = type;
-        attrEdit.userData["Index"] = index;
-        attrEdit.userData["Attribute"] = attribute;
-        attrEdit.setFixedSize(16, 16);
-        bar.addChild(attrEdit);
-        subscribeToEvent(attrEdit, "Toggled", "editComponentAttribute");
-    }
-
-    if ((type >= ATTR_EDITOR_FLOAT) && (type <= ATTR_EDITOR_VECTOR4))
-    {
-        for (uint i = 0; i < type; ++i)
-        {
-            LineEdit@ attrEdit = LineEdit(getAttributeEditorName(index, attribute) + "_" + toString(i));
-            attrEdit.setStyle(uiStyle, "EditorAttributeEdit");
-            attrEdit.userData["Type"] = type;
-            attrEdit.userData["Index"] = index;
-            attrEdit.userData["Attribute"] = attribute;
-            attrEdit.setFixedHeight(16);
-            bar.addChild(attrEdit);
-            // For the numeric style editors, subscribe to every change
-            subscribeToEvent(attrEdit, "TextChanged", "editComponentAttribute");
-            subscribeToEvent(attrEdit, "TextFinished", "editComponentAttribute");
-        }
-    }
-    
-    if ((type >= ATTR_EDITOR_ENUM) && (type < ATTR_EDITOR_RESOURCE))
-    {
-        DropDownList@ attrEdit = DropDownList(getAttributeEditorName(index, attribute));
-        attrEdit.setStyleAuto(uiStyle);
-        attrEdit.userData["Type"] = type;
-        attrEdit.userData["Index"] = index;
-        attrEdit.userData["Attribute"] = attribute;
-        attrEdit.setFixedHeight(16);
-        attrEdit.setResizePopup(true);
-        
-        EnumEditorData@ data = enumEditors[type - ATTR_EDITOR_ENUM];
-        for (uint i = 0; i < data.choices.size(); ++i)
-        {
-            Text@ choice = Text();
-            choice.setStyle(uiStyle, "EditorEnumAttributeText");
-            choice.setText(data.choices[i]);
-            attrEdit.addItem(choice);
-        }
-        bar.addChild(attrEdit);
-        
-        subscribeToEvent(attrEdit, "ItemSelected", "editComponentAttribute");
-    }
-    
-    if (type >= ATTR_EDITOR_RESOURCE)
-    {
-        LineEdit@ attrEdit = LineEdit(getAttributeEditorName(index, attribute));
-        attrEdit.setStyle(uiStyle, "EditorAttributeEdit");
-        attrEdit.userData["Type"] = type;
-        attrEdit.userData["Index"] = index;
-        attrEdit.userData["Attribute"] = attribute;
-        attrEdit.setFixedHeight(16);
-        bar.addChild(attrEdit);
-        subscribeToEvent(attrEdit, "TextFinished", "editComponentAttribute");
-
-        Button@ pickButton = Button(getAttributeEditorName(index, attribute) + "_Pick");
-        pickButton.setStyleAuto(uiStyle);
-        pickButton.userData["Type"] = type;
-        pickButton.userData["Index"] = index;
-        pickButton.userData["Attribute"] = attribute;
-        pickButton.setFixedSize(36, 16);
-        Text@ pickButtonText = Text();
-        pickButtonText.setStyle(uiStyle, "EditorAttributeText");
-        pickButtonText.setAlignment(HA_CENTER, VA_CENTER);
-        pickButtonText.setText("Pick");
-        pickButton.addChild(pickButtonText);
-        bar.addChild(pickButton);
-        subscribeToEvent(pickButton, "Released", "pickResource");
-
-        Button@ openButton = Button(getAttributeEditorName(index, attribute) + "_Edit");
-        openButton.setStyleAuto(uiStyle);
-        openButton.userData["Type"] = type;
-        openButton.userData["Index"] = index;
-        openButton.userData["Attribute"] = attribute;
-        openButton.setFixedSize(36, 16);
-        Text@ openButtonText = Text();
-        openButtonText.setStyle(uiStyle, "EditorAttributeText");
-        openButtonText.setAlignment(HA_CENTER, VA_CENTER);
-        openButtonText.setText("Open");
-        openButton.addChild(openButtonText);
-        bar.addChild(openButton);
-        subscribeToEvent(openButton, "Released", "openResource");
-    }
-}
-
-void loadAttributeEditor(uint type, XMLElement categoryElem, int index, const string& in attribute)
-{
-    inLoadAttributeEditor = true;
-
-    ListView@ list = componentWindow.getChild("AttributeList", true);
-    string value = categoryElem.getAttribute(attribute);
-
-    if ((type == ATTR_EDITOR_STRING) || (type >= ATTR_EDITOR_RESOURCE))
-    {
-        LineEdit@ attrEdit = list.getChild(getAttributeEditorName(index, attribute), true);
-        if (attrEdit is null)
-            return;
-        attrEdit.setText(value);
-    }
-
-    if (type == ATTR_EDITOR_BOOL)
-    {
-        CheckBox@ attrEdit = list.getChild(getAttributeEditorName(index, attribute), true);
-        if (attrEdit is null)
-            return;
-        attrEdit.setChecked(value.toBool());
-    }
-
-    if ((type >= ATTR_EDITOR_FLOAT) && (type <= ATTR_EDITOR_VECTOR4))
-    {
-        string baseName = getAttributeEditorName(index, attribute);
-        array<string> coords = value.split(' ');
-        for (uint i = 0; (i < coords.size()) && (i < type); ++i)
-        {
-            LineEdit@ attrEdit = list.getChild(baseName + "_" + toString(i), true);
-            if (attrEdit !is null)
-                attrEdit.setText(coords[i]);
-            else
-                break;
-        }
-    }
-
-    if ((type >= ATTR_EDITOR_ENUM) && (type < ATTR_EDITOR_RESOURCE))
-    {
-        DropDownList@ attrEdit = list.getChild(getAttributeEditorName(index, attribute), true);
-        if (attrEdit is null)
-            return;
-        EnumEditorData@ data = enumEditors[type - ATTR_EDITOR_ENUM];
-        string value = categoryElem.getAttribute(attribute);
-        for (uint i = 0; i < data.choices.size(); ++i)
-        {
-            if (value.toLower() == data.choices[i])
-            {
-                attrEdit.setSelection(i);
-                break;
-            }
-        }
-    }
-
-    inLoadAttributeEditor = false;
-}
-
-void storeAttributeEditor(uint type, XMLElement categoryElem, int index, const string& in attribute)
-{
-    ListView@ list = componentWindow.getChild("AttributeList", true);
-
-    if ((type == ATTR_EDITOR_STRING) || (type >= ATTR_EDITOR_RESOURCE))
-    {
-        LineEdit@ attrEdit = list.getChild(getAttributeEditorName(index, attribute), true);
-        categoryElem.setAttribute(attribute, attrEdit.getText());
-    }
-
-    if (type == ATTR_EDITOR_BOOL)
-    {
-        CheckBox@ attrEdit = list.getChild(getAttributeEditorName(index, attribute), true);
-        categoryElem.setAttribute(attribute, toString(attrEdit.isChecked()));
-    }
-
-    if ((type >= ATTR_EDITOR_FLOAT) && (type <= ATTR_EDITOR_VECTOR4))
-    {
-        string baseName = getAttributeEditorName(index, attribute);
-        string value;
-        for (uint i = 0; i < type; ++i)
-        {
-            LineEdit@ attrEdit = list.getChild(baseName + "_" + toString(i), true);
-            if (attrEdit is null)
-                break;
-            if (i != 0)
-                value += " ";
-            value += attrEdit.getText();
-        }
-        categoryElem.setAttribute(attribute, value);
-    }
-    
-    if ((type >= ATTR_EDITOR_ENUM) && (type < ATTR_EDITOR_RESOURCE))
-    {
-        DropDownList@ attrEdit = list.getChild(getAttributeEditorName(index, attribute), true);
-        EnumEditorData@ data = enumEditors[type - ATTR_EDITOR_ENUM];
-        categoryElem.setAttribute(attribute, data.choices[attrEdit.getSelection()]);
-    }
-}

+ 0 - 341
Bin/CoreData/Scripts/EditorImport.as

@@ -1,341 +0,0 @@
-// Urho3D editor import functions
-
-bool useLocalIDs = false;
-
-void importModel(const string& in fileName)
-{
-    string modelName = "Models/" + getFileName(fileName) + ".mdl";
-    string outFileName = sceneResourcePath + modelName;
-    string materialListName = sceneResourcePath + "_tempmatlist_.txt";
-
-    createDirectory(sceneResourcePath + "Models");
-    
-    array<string> args;
-    args.push("model");
-    args.push("\"" + fileName + "\"");
-    args.push("\"" + outFileName + "\"");
-    args.push("-p\"" + sceneResourcePath + "\"");
-    args.push("-m\"" + materialListName + "\"");
-
-    if (systemRun(getExecutableDirectory() + "AssetImporter.exe", args) == 0)
-    {
-        Entity@ newEntity = editorScene.createEntity(getFileName(fileName));
-        StaticModel@ newModel = newEntity.createComponent("StaticModel");
-        newModel.setPosition(getNewNodePosition());
-        newModel.setModel(cache.getResource("Model", modelName));
-
-        if (fileExists(materialListName))
-        {
-            File list(materialListName, FILE_READ);
-            for (uint i = 0; i < newModel.getNumGeometries(); ++i)
-            {
-                if (!list.isEof())
-                    newModel.setMaterial(i, cache.getResource("Material", list.readLine()));
-                else
-                    break;
-            }
-            list.close();
-            deleteFile(materialListName);
-        }
-
-        updateAndFocusNewEntity(newEntity);
-    }
-}
-
-void importScene(const string& in fileName)
-{
-    // Handle Tundra scene files here in code, otherwise via AssetImporter
-    if (getExtension(fileName) == ".txml")
-        importTundraScene(fileName);
-    else
-    {
-        // Export scene to a temp file, then load and delete it if successful
-        string tempSceneName = sceneResourcePath + "_tempscene_.xml";
-        array<string> args;
-        args.push("scene");
-        args.push("\"" + fileName + "\"");
-        args.push("\"" + tempSceneName + "\"");
-        args.push("-p\"" + sceneResourcePath + "\"");
-        
-        if (useLocalIDs)
-            args.push("-i");
-        
-        if (systemRun(getExecutableDirectory() + "AssetImporter.exe", args) == 0)
-        {
-            string currentFileName = sceneFileName;
-            loadScene(tempSceneName);
-            deleteFile(tempSceneName);
-            sceneFileName = currentFileName;
-            updateWindowTitle();
-        }
-    }
-}
-
-void autoCollisionMesh()
-{
-    array<string> createdCollisions;
-
-    array<Entity@> entities = editorScene.getAllEntities();
-    for (uint i = 0; i < entities.size(); ++i)
-    {
-        StaticModel@ model = entities[i].getComponent("StaticModel");
-        if (model !is null)
-        {
-            Model@ mesh = model.getModel();
-            if (mesh !is null)
-            {
-                string collisionName = "Physics/" + getFileName(mesh.getName()) + ".xml";
-                // Create collision file if not exist yet
-                bool found = false;
-                for (uint i = 0; i < createdCollisions.size(); ++i)
-                {
-                    if (createdCollisions[i] == collisionName)
-                    {
-                        found = true;
-                        break;
-                    }
-                }
-                
-                if (!found)
-                {
-                    XMLFile collision;
-                    XMLElement rootElem = collision.createRootElement("collisionshape");
-                    XMLElement triangleMeshElem = rootElem.createChildElement("trianglemesh");
-                    triangleMeshElem.setAttribute("name", mesh.getName());
-                    
-                    collision.save(File(sceneResourcePath + collisionName, FILE_WRITE));
-                }
-                
-                // Swap around so that rigidbody gets the model's world transform, and then model can have identity
-                RigidBody@ body = entities[i].createComponent("RigidBody");
-                body.setPosition(model.getWorldPosition());
-                body.setRotation(model.getWorldRotation());
-                body.setScale(model.getWorldScale());
-                model.setPosition(Vector3(0, 0, 0));
-                model.setRotation(Quaternion());
-                model.setScale(Vector3(1, 1, 1));
-                body.addChild(model);
-                body.setCollisionShape(cache.getResource("CollisionShape", collisionName));
-            }
-        }
-        
-        updateSceneWindow(false);
-    }
-}
-
-void importTundraScene(const string& in fileName)
-{
-    createDirectory(sceneResourcePath + "Materials");
-    createDirectory(sceneResourcePath + "Models");
-    createDirectory(sceneResourcePath + "Textures");
-    createDirectory(sceneResourcePath + "Physics");
-    
-    XMLFile source;
-    source.load(File(fileName, FILE_READ));
-    string filePath = getPath(fileName);
-
-    XMLElement sceneElem = source.getRootElement();
-    XMLElement entityElem = sceneElem.getChildElement("entity");
-    
-    array<string> convertedMaterials;
-    array<string> convertedMeshes;
-    
-    // Clear old scene, then create a zone and a directional light first
-    createScene();
-
-    Entity@ zoneEntity = editorScene.createEntity("", useLocalIDs);
-    Zone@ zone = zoneEntity.createComponent("Zone");
-    Light@ sunLight = zoneEntity.createComponent("Light");
-    sunLight.setLightType(LIGHT_DIRECTIONAL);
-    sunLight.setRotation(Quaternion(60, 30, 0));
-    sunLight.setCastShadows(true);
-    sunLight.setShadowCascade(CascadeParameters(3, 0.95, 0.2, 1000000));
-    zone.setBoundingBox(BoundingBox(-1000, 1000));
-    zone.setAmbientColor(Color(0.5, 0.5, 0.5));
-    zone.setFogColor(Color(0.5, 0.7, 1.0));
-    zone.setFogStart(100);
-    zone.setFogEnd(500);
-    
-    while (entityElem.notNull())
-    {
-        string entityName;
-        string meshName;
-        Vector3 pos;
-        Vector3 rot;
-        Vector3 scale;
-        bool castShadows = false;
-        float drawDistance = 0;
-        array<string> materialNames;
-
-        XMLElement compElem = entityElem.getChildElement("component");
-        while (compElem.notNull())
-        {
-            string compType = compElem.getAttribute("type");
-            if (compType == "EC_Mesh")
-            {
-                meshName = getComponentAttribute(compElem, "Mesh ref");
-                castShadows = getComponentAttribute(compElem, "Cast shadows").toBool();
-                drawDistance = getComponentAttribute(compElem, "Draw distance").toFloat();
-                materialNames = getComponentAttribute(compElem, "Mesh materials").split(';');
-                processRef(meshName);
-                for (uint i = 0; i < materialNames.size(); ++i)
-                    processRef(materialNames[i]);
-            }
-            if (compType == "EC_Name")
-                entityName = getComponentAttribute(compElem, "name");
-            if (compType == "EC_Placeable")
-            {
-                array<string> coords = getComponentAttribute(compElem, "Transform").split(',');
-                pos = getVector3FromStrings(coords, 0);
-                rot = getVector3FromStrings(coords, 3);
-                scale = getVector3FromStrings(coords, 6);
-                
-                // Fix coordinate system
-                pos = Vector3(pos.x, pos.z, pos.y);
-                rot = Vector3(rot.x, -rot.z + 180, rot.y);
-            }
-            
-            compElem = compElem.getNextElement("component");
-        }
-
-        // For now we are only interested of meshes
-        if (meshName.empty())
-            continue;
-        
-        for (uint i = 0; i < materialNames.size(); ++i)
-        {
-            bool found = false;
-            for (uint j = 0; j < convertedMaterials.size(); ++j)
-            {
-                if (convertedMaterials[j] == materialNames[i])
-                {
-                    found = true;
-                    break;
-                }
-            }
-
-            if (!found)
-            {
-                convertMaterial(materialNames[i], filePath);
-                convertedMaterials.push(materialNames[i]);
-            }
-        }
-
-        bool found = false;
-        for (uint i = 0; i < convertedMeshes.size(); ++i)
-        {
-            if (convertedMeshes[i] == meshName)
-            {
-                found = true;
-                break;
-            }
-        }
-        if (!found)
-            convertModel(meshName, filePath);
-
-        Entity@ newEntity = editorScene.createEntity(entityName, useLocalIDs);
-        StaticModel@ model = newEntity.createComponent("StaticModel");
-        
-        model.setTransform(pos, Quaternion(rot), scale);
-        model.setModel(cache.getResource("Model", "Models/" + meshName.replace(".mesh", ".mdl")));
-        model.setDrawDistance(drawDistance);
-        model.setCastShadows(castShadows);
-        for (uint i = 0; i < materialNames.size(); ++i)
-            model.setMaterial(i, cache.getResource("Material", "Materials/" + materialNames[i].replace(".material", ".xml")));
-
-        updateSceneWindow(false);
-        
-        entityElem = entityElem.getNextElement("entity");
-    }
-}
-
-string getComponentAttribute(XMLElement compElem, const string& in name)
-{
-    XMLElement attrElem = compElem.getChildElement("attribute");
-    while (attrElem.notNull())
-    {
-        if (attrElem.getAttribute("name") == name)
-            return attrElem.getAttribute("value");
-
-        attrElem = attrElem.getNextElement("attribute");
-    }
-
-    return "";
-}
-
-Vector3 getVector3FromStrings(array<string>@ coords, uint startIndex)
-{
-    return Vector3(coords[startIndex].toFloat(), coords[startIndex + 1].toFloat(), coords[startIndex + 2].toFloat());
-}
-
-void processRef(string& ref)
-{
-    if (ref.find("local://") == 0)
-        ref = ref.substr(8);
-}
-
-void convertModel(const string& in modelName, const string& in filePath)
-{
-    // Convert .mesh to .mesh.xml
-    string cmdLine = "ogrexmlconverter.exe \"" + filePath + modelName + "\" \"" + filePath + modelName + ".xml\"";
-    systemCommand(cmdLine.replace('/', '\\'));
-
-    // Convert .mesh.xml to .mdl
-    array<string> args;
-    args.push("\"" + filePath + modelName + ".xml\"");
-    args.push("\"" + sceneResourcePath + "Models/" + modelName.replace(".mesh", ".mdl") + "\"");
-    args.push("-a");
-    systemRun(getExecutableDirectory() + "OgreImporter.exe", args);
-}
-
-void convertMaterial(const string& in materialName, const string& in filePath)
-{
-    string fileName = filePath + materialName;
-    string outFileName = sceneResourcePath + "Materials/" + getFileName(materialName) + ".xml";
-
-    if (!fileExists(fileName))
-        return;
-
-    bool mask = false;
-    bool twoSided = false;
-    string textureName;
-
-    File file(fileName, FILE_READ);
-    while (!file.isEof())
-    {
-        string line = file.readLine().trim();
-        if (line.find("alpha_rejection") == 0)
-            mask = true;
-        if (line.find("cull_hardware none") == 0)
-            twoSided = true;
-        if (line.find("texture ") == 0)
-        {
-            textureName = line.substr(8);
-            processRef(textureName);
-        }
-    }
-
-    XMLFile outMat;
-    XMLElement rootElem = outMat.createRootElement("material");
-    
-    XMLElement baseElem = rootElem.createChildElement("base");
-    string baseName = mask ? "Materials/DefaultDiffAlphaMask.xml" : "Materials/DefaultDiff.xml";
-    if (twoSided)
-        baseName = baseName.replace(".xml", "TS.xml");
-    baseElem.setAttribute("name", baseName);
-
-    XMLElement techniqueElem = rootElem.createChildElement("technique");
-    
-    if (!textureName.empty())
-    {
-        XMLElement textureElem = techniqueElem.createChildElement("texture");
-        textureElem.setAttribute("unit", "diffuse");
-        textureElem.setAttribute("name", "Textures/" + textureName);
-
-        File outFile(outFileName, FILE_WRITE);
-        outMat.save(outFile);
-        outFile.close();
-    
-        copyFile(filePath + textureName, sceneResourcePath + "Textures/" + textureName);
-    }
-}

+ 0 - 378
Bin/CoreData/Scripts/EditorScene.as

@@ -1,378 +0,0 @@
-// Urho3D editor scene handling
-
-#include "Scripts/EditorSceneWindow.as"
-#include "Scripts/EditorComponentWindow.as"
-
-Scene@ editorScene;
-Window@ sceneSettingsDialog;
-
-string sceneFileName;
-string sceneResourcePath;
-bool sceneModified = false;
-bool runPhysics = false;
-bool renderingDebug = false;
-bool physicsDebug = false;
-bool octreeDebug = false;
-bool subscribedToSceneSettingsEdits = false;
-
-Component@ selectedComponent;
-Entity@ selectedEntity;
-
-void createScene()
-{
-    @selectedComponent = null;
-    @selectedEntity = null;
-
-    // Create a scene with default values, these will be overridden when loading scenes
-    @editorScene = engine.createScene("Urho3D Editor", BoundingBox(-1000.0, 1000.0), 8, true);
-
-    // Always pause the scene for now
-    editorScene.setPaused(true);
-
-    if (sceneWindow !is null)
-    {
-        updateSceneWindow(false);
-        updateComponentWindow();
-    }
-
-    runPhysics = false;
-    sceneFileName = "";
-    updateWindowTitle();
-    createCamera();
-
-    subscribeToEvent("PostRenderUpdate", "scenePostRenderUpdate");
-    subscribeToEvent("UIMouseClick", "sceneMouseClick");
-
-    engine.setDefaultScene(editorScene);
-    
-    updateSceneSettingsDialog();
-}
-
-void createSceneSettingsDialog()
-{
-    if (sceneSettingsDialog !is null)
-        return;
-    
-    @sceneSettingsDialog = ui.loadLayout(cache.getResource("XMLFile", "UI/SceneSettingsDialog.xml"), uiStyle);
-    uiRoot.addChild(sceneSettingsDialog);
-    centerDialog(sceneSettingsDialog);
-    updateSceneSettingsDialog();
-    hideSceneSettingsDialog();
-}
-
-void updateSceneSettingsDialog()
-{
-    if (sceneSettingsDialog is null)
-        return;
-        
-    // Fill the current values and subscribe to changes
-    LineEdit@ octreeMinEdit = sceneSettingsDialog.getChild("OctreeMinEdit", true);
-    octreeMinEdit.setText(editorScene.getOctree().getWorldBoundingBox().min.toString());
-    
-    LineEdit@ octreeMaxEdit = sceneSettingsDialog.getChild("OctreeMaxEdit", true);
-    octreeMaxEdit.setText(editorScene.getOctree().getWorldBoundingBox().max.toString());
-    
-    LineEdit@ octreeLevelsEdit = sceneSettingsDialog.getChild("OctreeLevelsEdit", true);
-    octreeLevelsEdit.setText(toString(editorScene.getOctree().getNumLevels()));
-    
-    LineEdit@ gravityEdit = sceneSettingsDialog.getChild("GravityEdit", true);
-    gravityEdit.setText(editorScene.getPhysicsWorld().getGravity().toString());
-
-    LineEdit@ physicsFPSEdit = sceneSettingsDialog.getChild("PhysicsFPSEdit", true);
-    physicsFPSEdit.setText(toString(editorScene.getPhysicsWorld().getFps()));
-
-    if (!subscribedToSceneSettingsEdits)
-    {
-        subscribeToEvent(octreeMinEdit, "TextFinished", "editOctreeMin");
-        subscribeToEvent(octreeMaxEdit, "TextFinished", "editOctreeMax");
-        subscribeToEvent(octreeLevelsEdit, "TextFinished", "editOctreeLevels");
-        subscribeToEvent(gravityEdit, "TextFinished", "editGravity");
-        subscribeToEvent(physicsFPSEdit, "TextFinished", "editPhysicsFPS");
-        subscribeToEvent(sceneSettingsDialog.getChild("CloseButton", true), "Released", "hideSceneSettingsDialog");
-        subscribedToSceneSettingsEdits = true;
-    }
-}
-
-void showSceneSettingsDialog()
-{
-    sceneSettingsDialog.setVisible(true);
-    sceneSettingsDialog.bringToFront();
-}
-
-void hideSceneSettingsDialog()
-{
-    sceneSettingsDialog.setVisible(false);
-}
-
-void editOctreeMin(StringHash eventType, VariantMap& eventData)
-{
-    Octree@ octree = editorScene.getOctree();
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    BoundingBox box = octree.getWorldBoundingBox();
-    box.min = edit.getText().toVector3();
-    edit.setText(box.min.toString());
-    
-    octree.resize(box, octree.getNumLevels());
-}
-
-void editOctreeMax(StringHash eventType, VariantMap& eventData)
-{
-    Octree@ octree = editorScene.getOctree();
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    BoundingBox box = octree.getWorldBoundingBox();
-    box.max = edit.getText().toVector3();
-    edit.setText(box.max.toString());
-    
-    octree.resize(box, octree.getNumLevels());
-}
-
-void editOctreeLevels(StringHash eventType, VariantMap& eventData)
-{
-    Octree@ octree = editorScene.getOctree();
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    octree.resize(octree.getWorldBoundingBox(), edit.getText().toInt());
-    edit.setText(toString(octree.getNumLevels()));
-}
-
-void editGravity(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    editorScene.getPhysicsWorld().setGravity(edit.getText().toVector3());
-    edit.setText(editorScene.getPhysicsWorld().getGravity().toString());
-}
-
-void editPhysicsFPS(StringHash eventType, VariantMap& eventData)
-{
-    LineEdit@ edit = eventData["Element"].getUIElement();
-    editorScene.getPhysicsWorld().setFps(edit.getText().toInt());
-    edit.setText(toString(editorScene.getPhysicsWorld().getFps()));
-}
-
-void setResourcePath(string newPath)
-{
-    newPath = fixPath(newPath);
-
-    if (newPath == sceneResourcePath)
-        return;
-
-    cache.releaseAllResources(false);
-
-    // Remove the old scene resource path if any. However make sure that CoreData path never gets removed
-    if ((!sceneResourcePath.empty()) && (sceneResourcePath.find("CoreData") < 0))
-        cache.removeResourcePath(sceneResourcePath);
-
-    cache.addResourcePath(newPath);
-    sceneResourcePath = newPath;
-    
-    // If scenes were not loaded yet, default load/save to the resource path
-    if (uiScenePath.empty())
-        uiScenePath = newPath;
-}
-
-void reloadResources()
-{
-    array<Resource@> sceneResources = editorScene.getResourceRefs();
-    uint numResources = sceneResources.size();
-    for (uint i = 0; i < numResources; ++i)
-    {
-        // Material textures are not listed by getResourceRefs(), so have to handle them manually
-        Material@ mat = cast<Material>(sceneResources[i]);
-        if (mat !is null)
-        {
-            for (uint j = 0; j < mat.getNumTechniques(); ++j)
-            {
-                MaterialTechnique@ tech = mat.getTechnique(j);
-                for (int k = 0; k < MAX_MATERIAL_TEXTURE_UNITS; ++k)
-                {
-                    Texture@ tex = tech.getTexture(TextureUnit(k));
-                    if (tex !is null)
-                    {
-                        bool found = false;
-                        for (uint l = numResources; l < sceneResources.size(); ++l)
-                        {
-                            if (sceneResources[l] is tex)
-                            {
-                                found = true;
-                                break;
-                            }
-                        }
-                        if (!found)
-                            sceneResources.push(tex);
-                    }
-                }
-            }
-        }
-    }
-
-    print("Reloading resources");
-    for (uint i = 0; i < sceneResources.size(); ++i)
-        cache.reloadResource(sceneResources[i]);
-}
-
-
-void loadScene(string fileName)
-{
-    // Always load the scene from the filesystem, not from resource paths
-    if (!fileExists(fileName))
-    {
-        logError("No such scene " + fileName);
-        return;
-    }
-
-    // Clear the old scene
-    @selectedComponent = null;
-    @selectedEntity = null;
-    editorScene.removeAllEntities();
-
-    // Add the new resource path
-    setResourcePath(getPreferredResourcePath(getPath(fileName)));
-
-    File file(fileName, FILE_READ);
-    string extension = getExtension(fileName);
-    if ((extension == ".bin") || (extension == ".dat"))
-        editorScene.load(file);
-    else
-        editorScene.loadXML(file);
-    
-    sceneFileName = fileName;
-    sceneModified = false;
-    runPhysics = false;
-    updateWindowTitle();
-    updateSceneSettingsDialog();
-    updateSceneWindow(false);
-    updateComponentWindow();
-    resetCamera();
-}
-
-void saveScene(string fileName)
-{
-    if ((fileName.empty()) || (getFileName(fileName).empty()))
-        return;
-
-    editorScene.setName(getFileName(fileName));
-
-    File file(fileName, FILE_WRITE);
-    string extension = getExtension(fileName);
-    if ((extension == ".bin") || (extension == ".sav"))
-        editorScene.save(file);
-    else
-        editorScene.saveXML(file);
-
-    sceneFileName = fileName;
-    sceneModified = false;
-    updateWindowTitle();
-}
-
-void beginModify(uint entityID)
-{
-    // Undo/Redo can be implemented here
-}
-
-void endModify(uint entityID)
-{
-    // Undo/Redo can be implemented here
-
-    if (!sceneModified)
-    {
-        sceneModified = true;
-        updateWindowTitle();
-    }
-}
-
-string getEntityTitle(Entity@ entity)
-{
-    string name = entity.getName();
-    if (name.empty())
-        return "Entity (ID " + entity.getID() + ")";
-    else
-        return name + " (ID " + entity.getID() + ")";
-}
-
-string getComponentTitle(Component@ component, int indent)
-{
-    string indentStr;
-    indentStr.resize(indent);
-    for (int i = 0; i < indent; ++i)
-        indentStr[i] = ' ';
-
-    string name = component.getName();
-    if (name.empty())
-        return indentStr + component.getTypeName();
-    else
-        return indentStr + name + " (" + component.getTypeName() + ")";
-}
-
-void scenePostRenderUpdate()
-{
-    DebugRenderer@ debug = editorScene.getDebugRenderer();
-    
-    // Visualize current selection (either renderables or rigidbodies can be visualized)
-    if (selectedComponent !is null)
-    {
-        VolumeNode@ node = cast<VolumeNode>(selectedComponent);
-        if (node !is null)
-            node.drawDebugGeometry(debug, false);
-        else
-        {
-            RigidBody@ body = cast<RigidBody>(selectedComponent);
-            if (body !is null)
-                body.drawDebugGeometry(debug, false);
-        }
-    }
-    
-    if (renderingDebug)
-        pipeline.drawDebugGeometry(false);
-    if (physicsDebug)
-        editorScene.getPhysicsWorld().drawDebugGeometry(true);
-    if (octreeDebug)
-        editorScene.getOctree().drawDebugGeometry(true);
-    
-    sceneRaycast(false);
-}
-
-void sceneMouseClick()
-{
-    sceneRaycast(true);
-}
-
-void sceneRaycast(bool mouseClick)
-{
-    DebugRenderer@ debug = editorScene.getDebugRenderer();
-    IntVector2 pos = ui.getCursorPosition();
-
-    //! \todo allow to switch between renderer and physics raycast
-    if (ui.getElementAt(pos, true) is null)
-    {
-        Ray cameraRay = camera.getScreenRay(float(pos.x) / renderer.getWidth(), float(pos.y) / renderer.getHeight());
-        array<RayQueryResult> result = editorScene.getOctree().raycast(cameraRay, NODE_GEOMETRY, camera.getFarClip(), RAY_TRIANGLE);
-        GeometryNode@ node;
-        if (!result.empty())
-        {
-            @node = result[0].node;
-            node.drawDebugGeometry(debug, false);
-        }
-        if ((mouseClick) && (input.getMouseButtonPress(MOUSEB_LEFT)))
-            selectComponent(node);
-    }
-}
-
-void toggleRenderingDebug()
-{
-    renderingDebug = !renderingDebug;
-}
-
-void togglePhysicsDebug()
-{
-    physicsDebug = !physicsDebug;
-}
-
-void toggleOctreeDebug()
-{
-    octreeDebug = !octreeDebug;
-}
-
-void togglePhysics()
-{
-    runPhysics = !runPhysics;
-}
-

+ 0 - 770
Bin/CoreData/Scripts/EditorSceneWindow.as

@@ -1,770 +0,0 @@
-// Urho3D editor scene hierarchy window handling
-
-const int ITEM_NONE = 0;
-const int ITEM_ENTITY = 1;
-const int ITEM_COMPONENT = 2;
-const uint NO_ITEM = 0xffffffff;
-
-Window@ sceneWindow;
-uint listAddIndex;
-uint copyBufferEntityID = 0;
-XMLFile copyBuffer;
-
-array<string> newEntityChoices = {"Replicated", "Local"};
-
-void createSceneWindow()
-{
-    if (sceneWindow !is null)
-        return;
-
-    @sceneWindow = ui.loadLayout(cache.getResource("XMLFile", "UI/SceneWindow.xml"), uiStyle);
-    uiRoot.addChild(sceneWindow);
-    int height = min(uiRoot.getHeight() - 60, 500);
-    sceneWindow.setSize(300, height);
-    sceneWindow.setPosition(20, 40);
-    updateSceneWindow(false);
-
-    DropDownList@ newEntityList = sceneWindow.getChild("NewEntityList", true);
-    for (uint i = 0; i < newEntityChoices.size(); ++i)
-    {
-        Text@ choice = Text();
-        choice.setStyle(uiStyle, "FileSelectorFilterText");
-        choice.setText(newEntityChoices[i]);
-        newEntityList.addItem(choice);
-    }
-
-    DropDownList@ newComponentList = sceneWindow.getChild("NewComponentList", true);
-    array<string> componentTypes = editorScene.getComponentTypes();
-    for (uint i = 0; i < componentTypes.size(); ++i)
-    {
-        Text@ choice = Text();
-        choice.setStyle(uiStyle, "FileSelectorFilterText");
-        choice.setText(componentTypes[i]);
-        newComponentList.addItem(choice);
-    }
-
-    subscribeToEvent(sceneWindow.getChild("CloseButton", true), "Released", "hideSceneWindow");
-    subscribeToEvent(sceneWindow.getChild("ExpandAllButton", true), "Released", "expandSceneHierarchy");
-    subscribeToEvent(sceneWindow.getChild("CollapseAllButton", true), "Released", "collapseSceneHierarchy");
-    subscribeToEvent(sceneWindow.getChild("EntityList", true), "ItemSelected", "handleEntityListSelectionChange");
-    subscribeToEvent(sceneWindow.getChild("EntityList", true), "ItemDeselected", "handleEntityListSelectionChange");
-    subscribeToEvent(sceneWindow.getChild("EntityList", true), "UnhandledKey", "handleEntityListKey");
-    subscribeToEvent(newEntityList, "ItemSelected", "handleCreateEntity");
-    subscribeToEvent(newComponentList, "ItemSelected", "handleCreateComponent");
-    subscribeToEvent("DragDropTest", "handleDragDropTest");
-    subscribeToEvent("DragDropFinish", "handleDragDropFinish");
-}
-
-void showSceneWindow()
-{
-    sceneWindow.setVisible(true);
-    sceneWindow.bringToFront();
-}
-
-void hideSceneWindow()
-{
-    sceneWindow.setVisible(false);
-}
-
-void expandSceneHierarchy()
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    list.setChildItemsVisible(true);
-}
-
-void collapseSceneHierarchy()
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    list.setChildItemsVisible(false);
-}
-
-void updateSceneWindow(bool showComponents)
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    list.getContentElement().disableLayoutUpdate();
-    list.removeAllItems();
-
-    array<Entity@> entities = editorScene.getAllEntities();
-    for (uint i = 0; i < entities.size(); ++i)
-    {
-        uint itemIndex = list.getNumItems();
-        Entity@ entity = entities[i];
-
-        updateSceneWindowEntity(itemIndex, entity);
-        list.setChildItemsVisible(itemIndex, showComponents);
-    }
-    
-    list.getContentElement().enableLayoutUpdate();
-    list.getContentElement().updateLayout();
-    
-    // Clear copybuffer when whole window refreshed
-    copyBuffer.createRootElement("none");
-}
-
-void updateSceneWindowEntity(uint itemIndex, Entity@ entity)
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-
-    // Remove old item if exists
-    uint numItems = list.getNumItems();
-    if (itemIndex < numItems)
-        list.removeItem(itemIndex);
-        
-    if (entity is null)
-        return;
-
-    if (itemIndex >= numItems)
-    {
-        // Scan for correct place to insert at
-        uint entityID = entity.getID();
-        for (itemIndex = 0; itemIndex < numItems; ++itemIndex)
-        {
-            UIElement@ item = list.getItem(itemIndex);
-            if (uint(item.userData["EntityID"].getInt()) > entityID)
-                break;
-        }
-    }
-
-    Text@ text = Text();
-    text.setStyle(uiStyle, "FileSelectorListText");
-    text.userData["Type"] = ITEM_ENTITY;
-    text.userData["EntityID"] = entity.getID();
-    text.userData["Indent"] = 0;
-    text.setText(getEntityTitle(entity));
-    text.setDragDropMode(DD_TARGET);
-
-    list.insertItem(itemIndex, text);
-
-    listAddIndex = itemIndex + 1;
-
-    array<Component@>@ components = entity.getComponents();
-    for (uint j = 0; j < components.size(); ++j)
-    {
-        Node@ node = cast<Node@>(components[j]);
-        // If is a scenenode, only add root-level node or node parented to a node in another entity
-        if ((node is null) || (node.getParent() is null) || (node.getParent().getEntity() !is entity))
-            addComponentToSceneWindow(entity, components, j, 1);
-    }
-}
-
-void updateSceneWindowEntityOnly(uint itemIndex, Entity@ entity)
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-
-    Text@ text = list.getItem(itemIndex);
-    if (text is null)
-        return;
-    text.setText(getEntityTitle(entity));
-}
-
-void updateSceneWindowEntity(Entity@ entity)
-{
-    uint index = getEntityListIndex(entity);
-    updateSceneWindowEntity(index, entity);
-}
-
-void updateSceneWindowEntityOnly(Entity@ entity)
-{
-    uint index = getEntityListIndex(entity);
-    updateSceneWindowEntityOnly(index, entity);
-}
-
-void addComponentToSceneWindow(Entity@ entity, array<Component@>@ components, uint componentID, int indent)
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-
-    Component@ component = components[componentID];
-    Text@ text = Text();
-    text.setStyle(uiStyle, "FileSelectorListText");
-    text.userData["Type"] = ITEM_COMPONENT;
-    text.userData["EntityID"] = entity.getID();
-    // Note: must remember to update indices whenever components are added/removed.
-    // Should have direct unique identification for components in the scene model
-    text.userData["ComponentID"] = componentID;
-    text.userData["Indent"] = indent;
-    text.setText(getComponentTitle(component, indent));
-    text.setDragDropMode(DD_SOURCE_AND_TARGET);
-    list.insertItem(listAddIndex, text);
-    ++listAddIndex;
-    
-    // Check child scenenodes in the same entity and add them with increased indent
-    Node@ node = cast<Node@>(component);
-    if (node !is null)
-    {
-        array<Node@> childNodes = node.getChildren(NODE_ANY, false);
-        for (uint i = 0; i < childNodes.size(); ++i)
-        {
-            Node@ childNode = childNodes[i];
-            if (childNode.getEntity() is entity)
-            {
-                // Must find the corresponding component index
-                for (uint j = 0; j < components.size(); ++j)
-                {
-                    if (components[j] is childNode)
-                    {
-                        addComponentToSceneWindow(entity, components, j, indent + 1);
-                        break;
-                    }
-                }
-            }
-        }
-    }
-}
-
-uint getEntityListIndex(Entity@ entity)
-{
-    if (entity is null)
-        return NO_ITEM;
-
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    uint numItems = list.getNumItems();
-    uint entityID = entity.getID();
-
-    for (uint i = 0; i < numItems; ++i)
-    {
-        UIElement@ item = list.getItem(i);
-        if ((item.userData["Type"].getInt() == ITEM_ENTITY) && (item.userData["EntityID"].getInt() == int(entityID)))
-            return i;
-    }
-
-    return NO_ITEM;
-}
-
-uint getEntityListIndex(Entity@ entity, uint startPos)
-{
-    if (entity is null)
-        return NO_ITEM;
-
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    uint numItems = list.getNumItems();
-    uint entityID = entity.getID();
-
-    for (uint i = startPos; i < numItems; --i)
-    {
-        UIElement@ item = list.getItem(i);
-        if ((item.userData["Type"].getInt() == ITEM_ENTITY) && (item.userData["EntityID"].getInt() == int(entityID)))
-            return i;
-    }
-    
-    return NO_ITEM;
-}
-
-Entity@ getListEntity(uint index)
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    UIElement@ item = list.getItem(index);
-    if (item is null)
-        return null;
-
-    return editorScene.getEntity(uint(item.userData["EntityID"].getInt()));
-}
-
-Component@ getListComponent(uint index)
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    UIElement@ item = list.getItem(index);
-    return getListComponent(item);
-}
-
-Component@ getListComponent(UIElement@ item)
-{
-    if (item is null)
-        return null;
-    if (item.userData["Type"].getInt() != ITEM_COMPONENT)
-        return null;
-
-    Entity@ entity = editorScene.getEntity(uint(item.userData["EntityID"].getInt()));
-    if (entity is null)
-        return null;
-
-    array<Component@>@ components = entity.getComponents();
-    uint componentID = uint(item.userData["ComponentID"].getInt());
-    if (componentID < components.size())
-        return components[componentID];
-    else
-        return null;
-}
-
-uint getComponentListIndex(Component@ component)
-{
-    if (component is null)
-        return NO_ITEM;
-
-    Entity@ entity = component.getEntity();
-    if (entity is null)
-        return NO_ITEM;
-
-    // Find the index of component in the entity's component list
-    array<Component@>@ components = entity.getComponents();
-    uint componentID = 0;
-    for (uint i = 0; i < components.size(); ++i)
-    {
-        if (components[i] is component)
-        {
-            componentID = i;
-            break;
-        }
-    }
-
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-
-    uint entityIndex = getEntityListIndex(component.getEntity());
-    uint numItems = list.getNumItems();
-
-    for (uint i = entityIndex + 1; i < numItems; ++i)
-    {
-        UIElement@ item = list.getItem(i);
-        if (item.userData["Type"].getInt() == ITEM_ENTITY)
-            break;
-        if (item.userData["ComponentID"].getInt() == int(componentID))
-            return i;
-    }
-    
-    return NO_ITEM;
-}
-
-
-void selectComponent(Component@ component)
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-
-    if (component is null)
-    {
-        list.clearSelection();
-        return;
-    }
-    Entity@ entity = component.getEntity();
-    if (entity is null)
-    {
-        list.clearSelection();
-        return;
-    }
-
-    uint numItems = list.getNumItems();
-    uint entityItem = getEntityListIndex(entity);
-    uint componentItem = getComponentListIndex(component);
-
-    if ((entityItem < numItems) && (componentItem < numItems))
-    {
-        // Make sure the selected entity is expanded
-        list.setChildItemsVisible(entityItem, true);
-        // This causes an event to be sent, in response we set selectedComponent & selectedEntity, and refresh editors
-        list.setSelection(componentItem);
-    }
-    else
-        list.clearSelection();
-}
-
-void handleEntityListSelectionChange()
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-
-    uint index = list.getSelection();
-    @selectedEntity = getListEntity(index);
-    @selectedComponent = getListComponent(index);
-
-    updateComponentWindow();
-}
-
-void handleEntityListKey(StringHash eventType, VariantMap& eventData)
-{
-    int key = eventData["Key"].getInt();
-    
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    
-    uint index = list.getSelection();
-    Entity@ entity = getListEntity(index);
-    Component@ component = getListComponent(index);
-    uint entityItem = getEntityListIndex(entity, index);
-}
-
-void handleDragDropTest(StringHash eventType, VariantMap& eventData)
-{
-    UIElement@ source = eventData["Source"].getUIElement();
-    UIElement@ target = eventData["Target"].getUIElement();
-    eventData["Accept"] = testSceneWindowElements(source, target);
-}
-
-void handleDragDropFinish(StringHash eventType, VariantMap& eventData)
-{
-    UIElement@ source = eventData["Source"].getUIElement();
-    UIElement@ target = eventData["Target"].getUIElement();
-    bool accept =  testSceneWindowElements(source, target);
-    eventData["Accept"] = accept;
-    if (!accept)
-        return;
-
-    // Now perform the action
-    Entity@ sourceEntity = editorScene.getEntity(uint(source.userData["EntityID"].getInt()));
-    Entity@ targetEntity = editorScene.getEntity(uint(target.userData["EntityID"].getInt()));
-    Component@ sourceComponent = getListComponent(source);
-
-    // Move component into another entity, and/or make unparented
-    if (target.userData["Type"].getInt() == ITEM_ENTITY)
-    {
-        // Within same entity
-        if (sourceEntity is targetEntity)
-        {
-            beginModify(sourceEntity.getID());
-
-            Node@ sourceNode = cast<Node>(sourceComponent);
-            if ((sourceNode !is null) && (sourceNode.getParent() !is null))
-                sourceNode.getParent().removeChild(sourceNode, true);
-
-            updateSceneWindowEntity(sourceEntity);
-            endModify(sourceEntity.getID());
-        }
-        // Move to different entity
-        else
-        {
-            beginModify(sourceEntity.getID());
-            beginModify(targetEntity.getID());
-
-            sourceEntity.removeComponent(sourceComponent);
-            targetEntity.addComponent(sourceComponent);
-
-            Node@ sourceNode = cast<Node>(sourceComponent);
-            
-            if (sourceNode !is null)
-            {
-                if (sourceNode.getParent() !is null)
-                    sourceNode.getParent().removeChild(sourceNode, true);
-
-                // Move also all children of the source node to the target entity to keep the hierarchy consistent
-                // (note: under the current scene model, programmatically such limitation does not exist)
-                array<Node@> allChildren = sourceNode.getChildren(NODE_ANY, true);
-                for (uint i = 0; i < allChildren.size(); ++i)
-                {
-                    sourceEntity.removeComponent(allChildren[i]);
-                    targetEntity.addComponent(allChildren[i]);
-                }
-            }
-
-            updateSceneWindowEntity(sourceEntity);
-            updateSceneWindowEntity(targetEntity);
-
-            endModify(targetEntity.getID());
-            endModify(sourceEntity.getID());
-        }
-    }
-    else
-    {
-        Node@ sourceNode = getListComponent(source);
-        Node@ targetNode = getListComponent(target);
-
-        // Reparent a node
-        // Entity is different: also move to different entity
-        if (targetEntity !is sourceEntity)
-        {
-            beginModify(sourceEntity.getID());
-            beginModify(targetEntity.getID());
-
-            sourceEntity.removeComponent(sourceNode);
-            targetEntity.addComponent(sourceNode);
-
-            // Move also all children of the source node to the target entity to keep the hierarchy consistent
-            // (note: under the current scene model, programmatically such limitation does not exist)
-            array<Node@> allChildren = sourceNode.getChildren(NODE_ANY, true);
-            for (uint i = 0; i < allChildren.size(); ++i)
-            {
-                sourceEntity.removeComponent(allChildren[i]);
-                targetEntity.addComponent(allChildren[i]);
-            }
-
-            // Set transform so that the world transform stays through the parent change
-            Vector3 newPos;
-            Quaternion newRot;
-            Vector3 newScale;
-            calculateNewTransform(sourceNode, targetNode, newPos, newRot, newScale);
-            targetNode.addChild(sourceNode);
-            sourceNode.setTransform(newPos, newRot, newScale);
-
-            updateSceneWindowEntity(sourceEntity);
-            updateSceneWindowEntity(targetEntity);
-
-            endModify(targetEntity.getID());
-            endModify(sourceEntity.getID());
-        }
-        // Entity is same: only need to reparent
-        else
-        {
-            beginModify(sourceEntity.getID());
-            
-            Vector3 newPos;
-            Quaternion newRot;
-            Vector3 newScale;
-            calculateNewTransform(sourceNode, targetNode, newPos, newRot, newScale);
-            targetNode.addChild(sourceNode);
-            sourceNode.setTransform(newPos, newRot, newScale);
-
-            updateSceneWindowEntity(sourceEntity);
-            endModify(sourceEntity.getID());
-        }
-    }
-
-    selectComponent(sourceComponent);
-}
-
-bool testSceneWindowElements(UIElement@ source, UIElement@ target)
-{
-    Entity@ sourceEntity = editorScene.getEntity(uint(source.userData["EntityID"].getInt()));
-    Entity@ targetEntity = editorScene.getEntity(uint(target.userData["EntityID"].getInt()));
-    Node@ sourceNode = getListComponent(source);
-
-    // Move component into another entity, or make unparented
-    if (target.userData["Type"].getInt() == ITEM_ENTITY)
-    {
-        if (sourceEntity !is targetEntity)
-            return true;
-        if ((sourceNode !is null) && (sourceNode.getParent() !is null))
-            return true;
-        return false;
-    }
-
-    // Reparent a node
-    Node@ targetNode = getListComponent(target);
-    if ((sourceNode is null) || (targetNode is null))
-        return false;
-    if (sourceNode.getParent() is targetNode)
-        return false;
-    // Check for looped parent-child assignment
-    array<Node@> allChildren = sourceNode.getChildren(NODE_ANY, true);
-    for (uint i = 0; i < allChildren.size(); ++i)
-    {
-        if (allChildren[i] is targetNode)
-            return false;
-    }
-    return true;
-}
-
-void calculateNewTransform(Node@ source, Node@ target, Vector3& pos, Quaternion& rot, Vector3& scale)
-{
-    Vector3 sourceWorldPos = source.getWorldPosition();
-    Quaternion sourceWorldRot = source.getWorldRotation();
-    Vector3 sourceWorldScale = source.getWorldScale();
-
-    Quaternion inverseTargetWorldRot = target.getWorldRotation().getInverse();
-    Vector3 inverseTargetWorldScale = Vector3(1, 1, 1) / target.getWorldScale();
-    scale = inverseTargetWorldScale * sourceWorldScale;
-    rot = inverseTargetWorldRot * sourceWorldRot;
-    pos = inverseTargetWorldScale * (inverseTargetWorldRot * (sourceWorldPos - target.getWorldPosition()));
-}
-
-void updateAndFocusNewEntity(Entity@ newEntity)
-{
-    updateSceneWindowEntity(newEntity);
-    uint index = getEntityListIndex(newEntity);
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    list.setSelection(index);
-}
-
-void handleCreateEntity(StringHash eventType, VariantMap& eventData)
-{
-    DropDownList@ list = eventData["Element"].getUIElement();
-    uint mode = list.getSelection();
-    if (mode > list.getNumItems())
-        return;
-    bool local = (mode == 1);
-    
-    Entity@ newEntity = editorScene.createEntity("", local);
-    updateAndFocusNewEntity(newEntity);
-}
-
-void handleCreateComponent(StringHash eventType, VariantMap& eventData)
-{
-    if (selectedEntity is null)
-        return;
-
-    DropDownList@ list = eventData["Element"].getUIElement();
-    Text@ text = list.getSelectedItem();
-    if (text is null)
-        return;
-
-    Component@ newComponent = selectedEntity.createComponent(text.getText(), "");
-    // If component is a scene node, set it to a certain distance from camera
-    Node@ newNode = cast<Node>(newComponent);
-    if (newNode !is null)
-        newNode.setPosition(getNewNodePosition());
-
-    updateSceneWindowEntity(selectedEntity);
-}
-
-bool checkSceneWindowFocus(bool allowNoElement)
-{
-    // Allow scene edits only when either no item focused, or the 
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    UIElement@ focusElement = ui.getFocusElement();
-    if (focusElement is list)
-        return true;
-    if (focusElement !is null)
-        return false;
-    return allowNoElement;
-}
-
-void sceneDelete()
-{
-    ListView@ list = sceneWindow.getChild("EntityList", true);
-    uint index = list.getSelection();
-    uint entityIndex = getEntityListIndex(selectedEntity);
-    
-    // Remove component
-    if ((selectedEntity !is null) && (selectedComponent !is null))
-    {
-        if (!checkSceneWindowFocus(true))
-            return;
-        
-        uint id = selectedEntity.getID();
-        beginModify(id);
-        selectedEntity.removeComponent(selectedComponent);
-        endModify(id);
-        
-        // If component is a node, remove it from the parent node
-        Node@ node = cast<Node>(selectedComponent);
-        if ((node !is null) && (node.getParent() !is null))
-            node.getParent().removeChild(node, true);
-        
-        @selectedComponent = null;
-        
-        updateSceneWindowEntity(entityIndex, selectedEntity);
-        
-        // Select the next item in the same index
-        list.setSelection(index);
-    }
-    // Remove entity
-    else if ((selectedEntity !is null) && (selectedComponent is null))
-    {
-        // Entity operations are dangerous. Require the scene hierarchy to be focused
-        if (!checkSceneWindowFocus(false))
-            return;
-
-        uint id = selectedEntity.getID();
-
-        beginModify(id);
-        editorScene.removeEntity(selectedEntity);
-        endModify(id);
-
-        @selectedComponent = null;
-        @selectedEntity = null;
-
-        updateSceneWindowEntity(entityIndex, null);
-
-        // Select the next item in the same index
-        list.setSelection(index);
-    }
-}
-
-void sceneCut()
-{
-    sceneCopy();
-    sceneDelete();
-}
-
-void sceneCopy()
-{
-    // Copy component
-    if ((selectedEntity !is null) && (selectedComponent !is null))
-    {
-        if (!checkSceneWindowFocus(true))
-            return;
-        
-        XMLElement rootElem = copyBuffer.createRootElement("component");
-        selectedComponent.saveXML(rootElem);
-        
-        // If component is a node, save the world transform instead, and delete the parent reference
-        Node@ node = cast<Node>(selectedComponent);
-        if (node !is null)
-        {
-            XMLElement transformElem = rootElem.getChildElement("transform");
-            transformElem.setVector3("pos", node.getWorldPosition());
-            transformElem.setVector3("rot", node.getWorldRotation().getEulerAngles());
-            transformElem.setVector3("scale", node.getWorldScale());
-            rootElem.removeChildElement("parent", false);
-        }
-        
-        copyBufferEntityID = selectedEntity.getID();
-    }
-    // Copy entity
-    else if ((selectedEntity !is null) && (selectedComponent is null))
-    {
-        if (!checkSceneWindowFocus(false))
-            return;
-        
-        XMLElement rootElem = copyBuffer.createRootElement("entity");
-        selectedEntity.saveXML(rootElem);
-        copyBufferEntityID = selectedEntity.getID();
-    }
-}
-
-void scenePaste()
-{
-    XMLElement rootElem = copyBuffer.getRootElement();
-    string mode = rootElem.getName();
-    
-    if ((mode == "component") && (selectedEntity !is null))
-    {
-        if (!checkSceneWindowFocus(true))
-            return;
-        
-        beginModify(selectedEntity.getID());
-        
-        Component@ newComponent = selectedEntity.createComponent(rootElem.getAttribute("type"), rootElem.getAttribute("name"));
-        if (newComponent is null)
-            return;
-        newComponent.loadXML(rootElem);
-        newComponent.postLoad();
-        
-        // If component is a scene node, parent it to the selected component if exists
-        Node@ selectedNode = cast<Node>(selectedComponent);
-        Node@ newNode = cast<Node>(newComponent);
-        if ((newNode !is null) && (selectedNode !is null))
-        {
-            Vector3 pos;
-            Quaternion rot;
-            Vector3 scale;
-            calculateNewTransform(newNode, selectedNode, pos, rot, scale);
-            newNode.setTransform(pos, rot, scale);
-            selectedNode.addChild(newNode);
-        }
-        
-        endModify(selectedEntity.getID());
-        
-        updateSceneWindowEntity(selectedEntity);
-    }
-    else if (mode == "entity")
-    {
-        if (!checkSceneWindowFocus(false))
-            return;
-        
-        // If copied entity was local, make the new local too
-        Entity@ newEntity = editorScene.createEntity(rootElem.getAttribute("name"), copyBufferEntityID >= 65536);
-        uint newEntityID = newEntity.getID();
-        
-        beginModify(newEntityID);
-
-        // Before loading, rewrite scene node references to the copied entity
-        XMLElement compElem = rootElem.getChildElement("component");
-        bool rewrite = false;
-        while (compElem.notNull())
-        {
-            XMLElement parentElem = compElem.getChildElement("parent");
-            if ((parentElem.notNull()) && (uint(parentElem.getInt("id")) == copyBufferEntityID))
-            {
-                parentElem.setInt("id", newEntityID);
-                rewrite = true;
-            }
-            compElem = compElem.getNextElement("component");
-        }
-        
-        // If we modified the copybuffer, change the "stored ID" value to reflect the change
-        if (rewrite)
-            copyBufferEntityID = newEntity.getID();
-        
-        newEntity.loadXML(rootElem);
-        newEntity.postLoad();
-        
-        endModify(newEntityID);
-        
-        updateAndFocusNewEntity(newEntity);
-    }
-}
-

+ 0 - 382
Bin/CoreData/Scripts/EditorUI.as

@@ -1,382 +0,0 @@
-// Urho3D editor user interface
-
-XMLFile@ uiStyle;
-UIElement@ uiMenuBar;
-FileSelector@ uiFileSelector;
-
-array<string> uiSceneFilters = {"*.xml", "*.bin", "*.dat", "*.*"};
-array<string> uiAllFilter = {"*.*"};
-uint uiSceneFilter = 0;
-string uiScenePath;
-string uiImportPath;
-
-void createUI()
-{
-    @uiStyle = cache.getResource("XMLFile", "UI/DefaultStyle.xml");
-
-    createCursor();
-    createMenuBar();
-    createSceneWindow();
-    createComponentWindow();
-    createSceneSettingsDialog();
-    createEditorSettingsDialog();
-    createStatsBar();
-    createConsole();
-    
-    subscribeToEvent("ScreenMode", "resizeUI");
-    subscribeToEvent("MenuSelected", "handleMenuSelected");
-    subscribeToEvent("KeyDown", "handleKeyDown");
-}
-
-void resizeUI()
-{
-    uiMenuBar.setFixedWidth(renderer.getWidth());
-}
-
-void createCursor()
-{
-    Cursor@ cursor = Cursor("Cursor");
-    cursor.setStyleAuto(uiStyle);
-    cursor.setPosition(input.getMousePosition());
-    ui.setCursor(cursor);
-}
-
-void createMenuBar()
-{
-    @uiMenuBar = BorderImage("MenuBar");
-    uiMenuBar.setEnabled(true);
-    uiMenuBar.setStyle(uiStyle, "EditorMenuBar");
-    uiMenuBar.setLayout(LM_HORIZONTAL, 4, IntRect(2, 2, 2, 2));
-    uiRoot.addChild(uiMenuBar);
-
-    {
-        Menu@ fileMenu = createMenu("File");
-        Window@ filePopup = fileMenu.getPopup();
-        filePopup.addChild(createMenuItem("New scene", 0, 0));
-        filePopup.addChild(createMenuItem("Open scene", 'O', QUAL_CTRL));
-        filePopup.addChild(createMenuItem("Save scene", 'S', QUAL_CTRL));
-        filePopup.addChild(createMenuItem("Save scene as", 'S', QUAL_SHIFT | QUAL_CTRL));
-        filePopup.addChild(createMenuDivider());
-        filePopup.addChild(createMenuItem("Import model", 0, 0));
-        filePopup.addChild(createMenuItem("Import scene", 0, 0));
-        filePopup.addChild(createMenuDivider());
-        filePopup.addChild(createMenuItem("Set resource path", 0, 0));
-        filePopup.addChild(createMenuItem("Reload resources", 'R', QUAL_CTRL));
-        filePopup.addChild(createMenuDivider());
-        filePopup.addChild(createMenuItem("Exit", 0, 0));
-        uiMenuBar.addChild(fileMenu);
-    }
-
-    {
-        Menu@ editMenu = createMenu("Edit");
-        Window@ editPopup = editMenu.getPopup();
-        editPopup.addChild(createMenuItem("Cut", 'X', QUAL_CTRL));
-        editPopup.addChild(createMenuItem("Copy", 'C', QUAL_CTRL));
-        editPopup.addChild(createMenuItem("Paste", 'V', QUAL_CTRL));
-        editPopup.addChild(createMenuItem("Delete", KEY_DELETE, 0));
-        editPopup.addChild(createMenuDivider());
-        editPopup.addChild(createMenuItem("Toggle physics", 'P', QUAL_CTRL));
-        uiMenuBar.addChild(editMenu);
-    }
-    
-    {
-        Menu@ fileMenu = createMenu("View");
-        Window@ filePopup = fileMenu.getPopup();
-        filePopup.addChild(createMenuItem("Scene hierarchy", 'H', QUAL_CTRL));
-        filePopup.addChild(createMenuItem("Entity / component edit", 'E', QUAL_CTRL));
-        filePopup.addChild(createMenuItem("Global scene settings", 0, 0));
-        filePopup.addChild(createMenuItem("Editor settings", 0, 0));
-        uiMenuBar.addChild(fileMenu);
-    }
-
-    UIElement@ spacer = UIElement("MenuBarSpacer");
-    uiMenuBar.addChild(spacer);
-
-    resizeUI();
-}
-
-Menu@ createMenuItem(const string& in title, int accelKey, int accelQual)
-{
-    Menu@ menu = Menu(title);
-    menu.setStyleAuto(uiStyle);
-    menu.setLayout(LM_HORIZONTAL, 0, IntRect(4, 0, 4, 0));
-    if (accelKey != 0)
-        menu.setAccelerator(accelKey, accelQual);
-
-    Text@ menuText = Text();
-    menuText.setStyle(uiStyle, "EditorMenuText");
-    menuText.setText(title);
-    menu.addChild(menuText);
-
-    return menu;
-}
-
-BorderImage@ createMenuDivider()
-{
-    BorderImage@ divider = BorderImage();
-    divider.setStyle(uiStyle, "EditorDivider");
-    divider.setFixedHeight(4);
-
-    return divider;
-}
-
-Window@ createPopup(Menu@ baseMenu)
-{
-    Window@ popup = Window();
-    popup.setStyleAuto(uiStyle);
-    popup.setLayout(LM_VERTICAL, 4, IntRect(4, 4, 4, 4));
-    baseMenu.setPopup(popup);
-    baseMenu.setPopupOffset(0, baseMenu.getHeight());
-
-    return popup;
-}
-
-Menu@ createMenu(const string& in title)
-{
-    Menu@ menu = createMenuItem(title, 0, 0);
-    menu.setName("");
-    menu.setFixedWidth(menu.getWidth());
-    createPopup(menu);
-
-    return menu;
-}
-
-void createFileSelector(const string& in title, const string& in ok, const string& in cancel, const string& in initialPath, array<string>@ filters,
-    uint initialFilter)
-{
-    // Within the editor UI, the file selector is a kind of a "singleton". When the previous one is overwritten, also 
-    // the events subscribed from it are disconnected, so new ones are safe to subscribe.
-    @uiFileSelector = FileSelector();
-    uiFileSelector.setStyle(uiStyle);
-    uiFileSelector.setTitle(title);
-    uiFileSelector.setButtonTexts(ok, cancel);
-    uiFileSelector.setPath(initialPath);
-    uiFileSelector.setFilters(filters, initialFilter);
-    
-    Window@ window = uiFileSelector.getWindow();
-    centerDialog(window);
-}
-
-void closeFileSelector()
-{
-    @uiFileSelector = null;
-}
-
-void createConsole()
-{
-    Console@ console = engine.createConsole();
-    console.setStyle(uiStyle);
-    console.setNumRows(16);
-}
-
-void centerDialog(UIElement@ element)
-{
-    IntVector2 size = element.getSize();
-    element.setPosition((renderer.getWidth() - size.x) / 2, (renderer.getHeight() - size.y) / 2);
-}
-
-void updateWindowTitle()
-{
-    string sceneName = sceneFileName.empty() ? "Untitled" : getFileNameAndExtension(sceneFileName);
-    if (sceneModified)
-        sceneName += "*";
-    renderer.setWindowTitle("Urho3D editor - " + sceneName);
-}
-
-void handleMenuSelected(StringHash eventType, VariantMap& eventData)
-{
-    Menu@ menu = eventData["Element"].getUIElement();
-    if (menu is null)
-        return;
-
-    string action = menu.getName();
-    if (action.empty())
-        return;
-        
-    // Close the menu now
-    UIElement@ menuParent = menu.getParent();
-    Menu@ topLevelMenu = menuParent.userData["Origin"].getUIElement();
-    if (topLevelMenu !is null)
-        topLevelMenu.showPopup(false);
-
-    if (uiFileSelector is null)
-    {
-        if (action == "New scene")
-            createScene();
-            
-        if (action == "Open scene")
-        {
-            createFileSelector("Open scene", "Open", "Cancel", uiScenePath, uiSceneFilters, uiSceneFilter);
-            subscribeToEvent(uiFileSelector, "FileSelected", "handleOpenSceneFile");
-        }
-
-        if (action == "Save scene")
-            saveScene(sceneFileName);
-
-        if (action == "Save scene as")
-        {
-            createFileSelector("Save scene as", "Save", "Cancel", uiScenePath, uiSceneFilters, uiSceneFilter);
-            uiFileSelector.setFileName(getFileNameAndExtension(sceneFileName));
-            subscribeToEvent(uiFileSelector, "FileSelected", "handleSaveSceneFile");
-        }
-
-        if (action == "Import model")
-        {
-            createFileSelector("Import model", "Import", "Cancel", uiImportPath, uiAllFilter, 0);
-            subscribeToEvent(uiFileSelector, "FileSelected", "handleImportModel");
-        }
-
-        if (action == "Import scene")
-        {
-            createFileSelector("Import scene", "Import", "Cancel", uiImportPath, uiAllFilter, 0);
-            subscribeToEvent(uiFileSelector, "FileSelected", "handleImportScene");
-        }
-        
-        if (action == "Set resource path")
-        {
-            createFileSelector("Set resource path", "Set", "Cancel", sceneResourcePath, uiAllFilter, 0);
-            uiFileSelector.setDirectoryMode(true);
-            subscribeToEvent(uiFileSelector, "FileSelected", "handleResourcePath");
-        }
-    }
-
-    if (action == "Reload resources")
-        reloadResources();
-
-    if (action == "Scene hierarchy")
-        showSceneWindow();
-
-    if (action == "Global scene settings")
-        showSceneSettingsDialog();
-        
-    if (action == "Entity / component edit")
-        showComponentWindow();
-
-    if (action == "Editor settings")
-        showEditorSettingsDialog();
-    
-    if (action == "Cut")
-        sceneCut();
-    
-    if (action == "Copy")
-        sceneCopy();
-    
-    if (action == "Paste")
-        scenePaste();
-    
-    if (action == "Delete")
-        sceneDelete();
-    
-    if (action == "Toggle physics")
-        togglePhysics();
-    
-    if (menu.getName() == "Exit")
-        engine.exit();
-}
-
-void handleOpenSceneFile(StringHash eventType, VariantMap& eventData)
-{
-    // Save filter & path for next time
-    uiSceneFilter = uiFileSelector.getFilterIndex();
-    uiScenePath = uiFileSelector.getPath();
-    closeFileSelector();
-
-    // Check for cancel
-    if (!eventData["OK"].getBool())
-        return;
-
-    string fileName = eventData["FileName"].getString();
-    loadScene(fileName);
-}
-
-void handleSaveSceneFile(StringHash eventType, VariantMap& eventData)
-{
-    // Save filter for next time
-    uiSceneFilter = uiFileSelector.getFilterIndex();
-    uiScenePath = uiFileSelector.getPath();
-    closeFileSelector();
-
-    // Check for cancel
-    if (!eventData["OK"].getBool())
-        return;
-
-    string fileName = eventData["FileName"].getString();
-    saveScene(fileName);
-}
-
-void handleImportModel(StringHash eventType, VariantMap& eventData)
-{
-    // Save path for next time
-    uiImportPath = uiFileSelector.getPath();
-    closeFileSelector();
-
-    // Check for cancel
-    if (!eventData["OK"].getBool())
-        return;
-
-    string fileName = eventData["FileName"].getString();
-    importModel(fileName);
-}
-
-void handleImportScene(StringHash eventType, VariantMap& eventData)
-{
-    // Save path for next time
-    uiImportPath = uiFileSelector.getPath();
-    closeFileSelector();
-
-    // Check for cancel
-    if (!eventData["OK"].getBool())
-        return;
-
-    string fileName = eventData["FileName"].getString();
-    importScene(fileName);
-}
-
-void handleResourcePath(StringHash eventType, VariantMap& eventData)
-{
-    closeFileSelector();
-
-    // Check for cancel
-    if (!eventData["OK"].getBool())
-        return;
-
-    setResourcePath(eventData["FileName"].getString());
-}
-
-void handleKeyDown(StringHash eventType, VariantMap& eventData)
-{
-    int key = eventData["Key"].getInt();
-    
-    if (key == 220)
-    {
-        console.toggle();
-        input.suppressNextChar();
-    }
-    if (key == KEY_ESC)
-    {
-        UIElement@ front = ui.getFrontElement();
-        if ((uiFileSelector !is null) && (front is uiFileSelector.getWindow()))
-            closeFileSelector();
-        else if ((front is sceneSettingsDialog) || (front is editorSettingsDialog) || (front is sceneWindow) || (front is componentWindow))
-            front.setVisible(false);
-    }
-
-    if (key == KEY_F1)
-        toggleRenderingDebug();
-    if (key == KEY_F2)
-        togglePhysicsDebug();
-    if (key == KEY_F3)
-        toggleOctreeDebug();
-        
-    if (eventData["Qualifiers"].getInt() == QUAL_CTRL)
-    {
-        if (key == '1')
-            moveMode = OBJ_MOVE;
-        else if (key == '2')
-            moveMode = OBJ_ROTATE;
-        else if (key == '3')
-            moveMode = OBJ_SCALE;
-        else
-            steppedObjectManipulation(key);
-    }
-}

BIN
Bin/CoreData/Textures/Ramp.png


+ 0 - 7
Bin/CoreData/Textures/Ramp.xml

@@ -1,7 +0,0 @@
-<texture>
-    <address coord="u" mode="clamp" />
-    <address coord="v" mode="clamp" />
-    <mipmap enable="false" />
-    <quality low="0" />
-</texture>
-

BIN
Bin/CoreData/Textures/RampExtreme.png


+ 0 - 6
Bin/CoreData/Textures/RampExtreme.xml

@@ -1,6 +0,0 @@
-<texture>
-    <address coord="u" mode="clamp" />
-    <address coord="v" mode="clamp" />
-    <mipmap enable="false" />
-    <quality low="0" />
-</texture>

BIN
Bin/CoreData/Textures/RampWide.png


+ 0 - 6
Bin/CoreData/Textures/RampWide.xml

@@ -1,6 +0,0 @@
-<texture>
-    <address coord="u" mode="clamp" />
-    <address coord="v" mode="clamp" />
-    <mipmap enable="false" />
-    <quality low="0" />
-</texture>

BIN
Bin/CoreData/Textures/Spot.png


+ 0 - 7
Bin/CoreData/Textures/Spot.xml

@@ -1,7 +0,0 @@
-<texture>
-    <address coord="u" mode="clamp" />
-    <address coord="v" mode="clamp" />
-    <mipmap enable="false" />
-    <quality low="0" />
-</texture>
-

BIN
Bin/CoreData/Textures/SpotWide.png


+ 0 - 6
Bin/CoreData/Textures/SpotWide.xml

@@ -1,6 +0,0 @@
-<texture>
-    <address coord="u" mode="clamp" />
-    <address coord="v" mode="clamp" />
-    <mipmap enable="false" />
-    <quality low="0" />
-</texture>

BIN
Bin/CoreData/Textures/UI.png


+ 0 - 5
Bin/CoreData/Textures/UI.xml

@@ -1,5 +0,0 @@
-<texture>
-    <mipmap enable="false" />
-    <quality low="0" />
-</texture>
-

+ 0 - 47
Bin/CoreData/UI/ComponentWindow.xml

@@ -1,47 +0,0 @@
-<element type="Window" name="ComponentWindow">
-    <movable enable="true" />
-    <resizable enable="true" />
-    <resizeborder value="6 6 6 6" />
-    <layout mode="vertical" spacing="4" border="6 6 6 6" />
-    <element>
-        <fixedheight value="16" />
-        <layout mode="horizontal" />
-        <element type="Text" name="WindowTitle">
-            <text value="Entity / component edit" />
-        </element>
-        <element type="Button" style="CloseButton" name="CloseButton" />
-    </element>
-    <element type="BorderImage" style="EditorDivider">
-        <fixedheight value="4" />
-    </element>
-    <element type="Text" name="EntityTitle">
-        <fixedheight value="16" />
-    </element>
-    <element>
-        <fixedheight value="16" />
-        <layout mode="horizontal" />
-        <element type="Text">
-            <fixedwidth value="50" />
-            <text value="Name" />
-        </element>
-        <element type="LineEdit" name="EntityNameEdit" />
-    </element>
-    <element type="BorderImage" style="EditorDivider">
-        <fixedheight value="4" />
-    </element>
-    <element type="Text" name="ComponentTitle">
-        <fixedheight value="16" />
-    </element>
-    <element>
-        <fixedheight value="16" />
-        <layout mode="horizontal" />
-        <element type="Text">
-            <fixedwidth value="50" />
-            <text value="Name" />
-        </element>
-        <element type="LineEdit" name="ComponentNameEdit" />
-    </element>
-    <element type="ListView" name="AttributeList">
-        <highlight value="always" />
-    </element>
-</element>

+ 0 - 413
Bin/CoreData/UI/DefaultStyle.xml

@@ -1,413 +0,0 @@
-<elements>
-    <element type="Button">
-        <size value="16 16" />
-        <texture name="Textures/UI.png" />
-        <imagerect value="16 0 32 16" />
-        <border value="4 4 4 4" />
-        <pressedoffset value="16 0" />
-        <hoveroffset value="0 16" />
-        <labeloffset value="-1 1" />
-    </element>
-    <element type="CheckBox">
-        <size value="16 16" />
-        <texture name="Textures/UI.png" />
-        <imagerect value="64 0 80 16" />
-        <border value="4 4 4 4" />
-        <checkedoffset value="16 0" />
-        <hoveroffset value="0 16" />
-    </element>
-    <element type="CloseButton">
-        <fixedsize value="16 16" />
-        <texture name="Textures/UI.png" />
-        <imagerect value="128 0 144 16" />
-        <border value="4 4 4 4" />
-        <pressedoffset value="16 0" />
-        <hoveroffset value="0 16" />
-        <labeloffset value="-1 1" />
-    </element>
-    <element type="Cursor">
-        <shape name="normal" texture="Textures/UI.png" imagerect="0 0 12 24" hotspot="0 0" />
-        <shape name="resizevertical" texture="Textures/UI.png" imagerect="0 64 20 84" hotspot="9 9" />
-        <shape name="resizediagonal_topright" texture="Textures/UI.png" imagerect="20 64 40 84" hotspot="9 9" />
-        <shape name="resizehorizontal" texture="Textures/UI.png" imagerect="40 64 60 84" hotspot="9 9" />
-        <shape name="resizediagonal_topleft" texture="Textures/UI.png" imagerect="60 64 80 84" hotspot="9 9" />
-        <shape name="rejectdrop" texture="Textures/UI.png" imagerect="80 64 100 84" hotspot="9 9" />
-        <shape name="acceptdrop" texture="Textures/UI.png" imagerect="100 64 128 90" hotspot="0 0" />
-    </element>
-    <element type="DropDownList">
-        <texture name="Textures/UI.png" />
-        <imagerect value="16 0 32 16" />
-        <border value="4 4 4 4" />
-        <pressedoffset value="16 0" />
-        <hoveroffset value="0 16" />
-        <labeloffset value="-1 1" />
-        <layout mode="horizontal" border="4 2 4 2" />
-        <popup>
-            <texture name="Textures/UI.png" />
-            <imagerect value="48 0 64 16" />
-            <border value="3 3 3 3" />
-            <layout border="4 2 4 2" />
-        </popup>
-        <listview>
-            <horizontalscrollbar>
-                <height value="12" />
-                <backbutton>
-                    <texture name="Textures/UI.png" />
-                    <imagerect horizontal="32 32 48 48" vertical="0 32 16 48" />
-                    <border value="3 3 3 3" />
-                    <pressedoffset value="64 0" />
-                    <hoveroffset value="0 16" />
-                </backbutton>
-                <forwardbutton>
-                    <texture name="Textures/UI.png" />
-                    <imagerect horizontal="48 32 64 48" vertical="16 32 32 48" />
-                    <border value="3 3 3 3" />
-                    <pressedoffset value="64 0" />
-                    <hoveroffset value="0 16" />
-                </forwardbutton>
-                <slider>
-                    <texture name="Textures/UI.png" />
-                    <imagerect value="48 0 64 16" />
-                    <border value="3 3 3 3" />
-                    <knob>
-                        <texture name="Textures/UI.png" />
-                        <imagerect value="16 0 32 16" />
-                        <border value="4 4 4 4" />
-                        <hoveroffset value="0 16" />
-                    </knob>
-                </slider>
-            </horizontalscrollbar>
-            <verticalscrollbar>
-                <width value="12" />
-                <backbutton>
-                    <texture name="Textures/UI.png" />
-                    <imagerect horizontal="32 32 48 48" vertical="0 32 16 48" />
-                    <border value="3 3 3 3" />
-                    <pressedoffset value="64 0" />
-                    <hoveroffset value="0 16" />
-                </backbutton>
-                <forwardbutton>
-                    <texture name="Textures/UI.png" />
-                    <imagerect horizontal="48 32 64 48" vertical="16 32 32 48" />
-                    <border value="3 3 3 3" />
-                    <pressedoffset value="64 0" />
-                    <hoveroffset value="0 16" />
-                </forwardbutton>
-                <slider>
-                    <texture name="Textures/UI.png" />
-                    <imagerect value="48 0 64 16" />
-                    <border value="3 3 3 3" />
-                    <knob>
-                        <texture name="Textures/UI.png" />
-                        <imagerect value="16 0 32 16" />
-                        <border value="4 4 4 4" />
-                        <hoveroffset value="0 16" />
-                    </knob>
-                </slider>
-            </verticalscrollbar>
-            <scrollpanel>
-                <color value="0 0 0 0" />
-            </scrollpanel>
-        </listview>
-    </element>
-    <element type="LineEdit">
-        <texture name="Textures/UI.png" />
-        <imagerect value="112 0 128 16" />
-        <border value="2 2 2 2" />
-        <clipborder value="1 1 1 1" />
-        <hoveroffset value="0 16" />
-        <text>
-            <position value="1 1" />
-            <font name="Cour.ttf" size="10" />
-            <hovercolor value="0.45 0.70 0.45" />
-            <selectioncolor value="0.70 0.70 0.70" />
-        </text>
-        <cursor>
-            <size value="4 16" />
-            <texture name="Textures/UI.png" />
-            <imagerect value="12 0 16 16" />
-        </cursor>
-    </element>
-    <element type="ListView">
-        <horizontalscrollbar>
-            <height value="12" />
-            <backbutton>
-                <texture name="Textures/UI.png" />
-                <imagerect horizontal="32 32 48 48" vertical="0 32 16 48" />
-                <border value="3 3 3 3" />
-                <pressedoffset value="64 0" />
-                <hoveroffset value="0 16" />
-            </backbutton>
-            <forwardbutton>
-                <texture name="Textures/UI.png" />
-                <imagerect horizontal="48 32 64 48" vertical="16 32 32 48" />
-                <border value="3 3 3 3" />
-                <pressedoffset value="64 0" />
-                <hoveroffset value="0 16" />
-            </forwardbutton>
-            <slider>
-                <texture name="Textures/UI.png" />
-                <imagerect value="48 0 64 16" />
-                <border value="3 3 3 3" />
-                <knob>
-                    <texture name="Textures/UI.png" />
-                    <imagerect value="16 0 32 16" />
-                    <border value="4 4 4 4" />
-                    <hoveroffset value="0 16" />
-                </knob>
-            </slider>
-        </horizontalscrollbar>
-        <verticalscrollbar>
-            <width value="12" />
-            <backbutton>
-                <texture name="Textures/UI.png" />
-                <imagerect horizontal="32 32 48 48" vertical="0 32 16 48" />
-                <border value="3 3 3 3" />
-                <pressedoffset value="64 0" />
-                <hoveroffset value="0 16" />
-            </backbutton>
-            <forwardbutton>
-                <texture name="Textures/UI.png" />
-                <imagerect horizontal="48 32 64 48" vertical="16 32 32 48" />
-                <border value="3 3 3 3" />
-                <pressedoffset value="64 0" />
-                <hoveroffset value="0 16" />
-            </forwardbutton>
-            <slider>
-                <texture name="Textures/UI.png" />
-                <imagerect value="48 0 64 16" />
-                <border value="3 3 3 3" />
-                <knob>
-                    <texture name="Textures/UI.png" />
-                    <imagerect value="16 0 32 16" />
-                    <border value="4 4 4 4" />
-                    <hoveroffset value="0 16" />
-                </knob>
-            </slider>
-        </verticalscrollbar>
-        <scrollpanel>
-            <texture name="Textures/UI.png" />
-            <imagerect value="112 0 128 16" />
-            <border value="2 2 2 2" />
-            <clipborder value="1 1 1 1" />
-        </scrollpanel>
-    </element>
-    <element type="Menu">
-        <texture name="Textures/UI.png" />
-        <imagerect value="96 0 112 16" />
-        <border value="2 2 2 2" />
-        <pressedoffset value="16 0" />
-        <hoveroffset value="0 16" />
-    </element>
-    <element type="ScrollBar">
-        <backbutton>
-            <size value="12 12" />
-            <texture name="Textures/UI.png" />
-            <imagerect horizontal="32 32 48 48" vertical="0 32 16 48" />
-            <border value="3 3 3 3" />
-            <pressedoffset value="64 0" />
-            <hoveroffset value="0 16" />
-        </backbutton>
-        <forwardbutton>
-            <size value="12 12" />
-            <texture name="Textures/UI.png" />
-            <imagerect horizontal="48 32 64 48" vertical="16 32 32 48" />
-            <border value="3 3 3 3" />
-            <pressedoffset value="64 0" />
-            <hoveroffset value="0 16" />
-        </forwardbutton>
-        <slider>
-            <size value="12 12" />
-            <texture name="Textures/UI.png" />
-            <imagerect value="48 0 64 16" />
-            <border value="3 3 3 3" />
-            <knob>
-                <texture name="Textures/UI.png" />
-                <imagerect value="16 0 32 16" />
-                <border value="4 4 4 4" />
-                <hoveroffset value="0 16" />
-            </knob>
-        </slider>
-    </element>
-    <element type="ScrollView">
-        <horizontalscrollbar>
-            <height value="12" />
-            <backbutton>
-                <texture name="Textures/UI.png" />
-                <imagerect horizontal="32 32 48 48" vertical="0 32 16 48" />
-                <border value="3 3 3 3" />
-                <pressedoffset value="64 0" />
-                <hoveroffset value="0 16" />
-            </backbutton>
-            <forwardbutton>
-                <texture name="Textures/UI.png" />
-                <imagerect horizontal="48 32 64 48" vertical="16 32 32 48" />
-                <border value="3 3 3 3" />
-                <pressedoffset value="64 0" />
-                <hoveroffset value="0 16" />
-            </forwardbutton>
-            <slider>
-                <texture name="Textures/UI.png" />
-                <imagerect value="48 0 64 16" />
-                <border value="3 3 3 3" />
-                <knob>
-                    <texture name="Textures/UI.png" />
-                    <imagerect value="16 0 32 16" />
-                    <border value="4 4 4 4" />
-                    <hoveroffset value="0 16" />
-                </knob>
-            </slider>
-        </horizontalscrollbar>
-        <verticalscrollbar>
-            <width value="12" />
-            <backbutton>
-                <texture name="Textures/UI.png" />
-                <imagerect horizontal="32 32 48 48" vertical="0 32 16 48" />
-                <border value="3 3 3 3" />
-                <pressedoffset value="64 0" />
-                <hoveroffset value="0 16" />
-            </backbutton>
-            <forwardbutton>
-                <texture name="Textures/UI.png" />
-                <imagerect horizontal="48 32 64 48" vertical="16 32 32 48" />
-                <border value="3 3 3 3" />
-                <pressedoffset value="64 0" />
-                <hoveroffset value="0 16" />
-            </forwardbutton>
-            <slider>
-                <texture name="Textures/UI.png" />
-                <imagerect value="48 0 64 16" />
-                <border value="3 3 3 3" />
-                <knob>
-                    <texture name="Textures/UI.png" />
-                    <imagerect value="16 0 32 16" />
-                    <border value="4 4 4 4" />
-                    <hoveroffset value="0 16" />
-                </knob>
-            </slider>
-        </verticalscrollbar>
-        <scrollpanel>
-            <texture name="Textures/UI.png" />
-            <imagerect value="112 0 128 16" />
-            <border value="2 2 2 2" />
-            <clipborder value="1 1 1 1" />
-        </scrollpanel>
-    </element>
-    <element type="Slider">
-        <size value="12 12" />
-        <texture name="Textures/UI.png" />
-        <imagerect value="48 0 64 16" />
-        <border value="3 3 3 3" />
-        <knob>
-            <texture name="Textures/UI.png" />
-            <imagerect value="16 0 32 16" />
-            <border value="4 4 4 4" />
-            <hoveroffset value="0 16" />
-        </knob>
-    </element>
-    <element type="Window">
-        <texture name="Textures/UI.png" />
-        <imagerect value="48 0 64 16" />
-        <border value="3 3 3 3" />
-        <resizeborder value="8 8 8 8" />
-    </element>
-    <element type="Text">
-        <font name="Cour.ttf" size="10" />
-    </element>
-    <element type="DebugHudText">
-        <font name="Cour.ttf" size="10" />
-    </element>
-    <element type="ConsoleBackground">
-        <color topleft="0 0.25 0 0.75" topright="0 0.25 0 0.75" bottomleft="0.25 0.75 0.25 0.75" bottomright="0.25 0.75 0.25 0.75" />
-        <layout spacing="0" border="4 4 4 4" />
-    </element>
-    <element type="ConsoleText">
-        <font name="Cour.ttf" size="10" />
-    </element>
-    <element type="ConsoleLineEdit">
-        <color value="0 0 0 0.5" />
-        <text>
-            <font name="Cour.ttf" size="10" />
-            <selectioncolor value="0 0.5 0 0.75" />
-        </text>
-        <cursor>
-            <size value="4 16" />
-            <texture name="Textures/UI.png" />
-            <imagerect value="12 0 16 16" />
-        </cursor>
-    </element>
-    <element type="FileSelector">
-        <size value="400 300" />
-        <movable enable="true" />
-        <resizable enable="true" />
-        <resizeborder value="6 6 6 6" />
-        <layout mode="vertical" spacing="4" border="6 6 6 6" />
-    </element>
-    <element type="FileSelectorButton">
-        <fixedsize value="80 22" />
-    </element>
-    <element type="FileSelectorButtonText">
-        <font name="Cour.ttf" size="10" />
-    </element>
-    <element type="FileSelectorFilterList">
-        <fixedwidth value="64" />
-        <resizepopup enable="true" />
-    </element>
-    <element type="FileSelectorFilterText">
-        <font name="Cour.ttf" size="10" />
-        <hovercolor value="0.45 0.70 0.45" />
-    </element>
-    <element type="FileSelectorTitleLayout">
-        <fixedheight value="16" />
-        <layout spacing="4" />
-    </element>
-    <element type="FileSelectorLayout">
-        <layout spacing="4" />
-    </element>
-    <element type="FileSelectorListText">
-        <font name="Cour.ttf" size="10" />
-        <hovercolor value="0.45 0.70 0.45" />
-        <selectioncolor value="0.70 0.70 0.70" />
-    </element>
-    <element type="FileSelectorTitleText">
-        <font name="Cour.ttf" size="10" />
-    </element>
-    <element type="EditorDivider">
-        <texture name="Textures/UI.png" />
-        <imagerect value="112 0 128 16" />
-        <border value="2 2 2 2" />
-    </element>
-    <element type="EditorMenuBar">
-        <texture name="Textures/UI.png" />
-        <imagerect value="96 0 112 16" />
-        <border value="2 2 2 2" />
-    </element>
-    <element type="EditorMenuText">
-        <font name="cour.ttf" size="10" />
-    </element>
-    <element type="EditorAttributeText">
-        <font name="cour.ttf" size="9" />
-    </element>
-    <element type="EditorEnumAttributeText">
-        <font name="Cour.ttf" size="9" />
-        <hovercolor value="0.45 0.70 0.45" />
-    </element>
-    <element type="EditorAttributeEdit">
-        <texture name="Textures/UI.png" />
-        <imagerect value="112 0 128 16" />
-        <border value="2 2 2 2" />
-        <clipborder value="1 1 1 1" />
-        <hoveroffset value="0 16" />
-        <text>
-            <position value="1 1" />
-            <font name="Cour.ttf" size="9" />
-            <hovercolor value="0.45 0.70 0.45" />
-            <selectioncolor value="0.70 0.70 0.70" />
-        </text>
-        <cursor>
-            <size value="4 16" />
-            <texture name="Textures/UI.png" />
-            <imagerect value="12 0 16 16" />
-        </cursor>
-    </element>
-</elements>

+ 0 - 129
Bin/CoreData/UI/EditorSettingsDialog.xml

@@ -1,129 +0,0 @@
-<element type="Window" name="CameraDialog">
-    <movable enable="true" />
-    <layout mode="vertical" spacing="4" border="6 6 6 6" />
-    <element>
-        <fixedheight value="16" />
-        <layout mode="horizontal" />
-        <element type="Text">
-            <text value="Editor camera settings" />
-        </element>
-        <element type="Button" style="CloseButton" name="CloseButton" />
-    </element>
-    <element type="BorderImage" style="EditorDivider">
-        <fixedheight value="4" />
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Near clip distance" />
-        </element>
-        <element type="LineEdit" name="NearClipEdit">
-            <fixedwidth value="80" />
-        </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Far clip distance" />
-        </element>
-        <element type="LineEdit" name="FarClipEdit">
-            <fixedwidth value="80" />
-         </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Field of view" />
-        </element>
-        <element type="LineEdit" name="FOVEdit">
-            <fixedwidth value="80" />
-        </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Movement speed" />
-        </element>
-        <element type="LineEdit" name="SpeedEdit">
-            <fixedwidth value="80" />
-        </element>
-    </element>
-    <element type="BorderImage" style="EditorDivider">
-        <fixedheight value="4" />
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="New node distance" />
-        </element>
-        <element type="LineEdit" name="DistanceEdit">
-            <fixedwidth value="80" />
-        </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="8" />
-        <element type="Text">
-            <text value="Node move step" />
-        </element>
-        <element type="CheckBox" name="MoveSnapToggle">
-            <fixedsize value="16 16" />
-        </element>
-        <element type="Text">
-            <fixedwidth value="34" />
-            <text value="Snap" />
-        </element>
-        <element type="LineEdit" name="MoveStepEdit">
-            <fixedwidth value="80" />
-        </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="8" />
-        <element type="Text">
-            <text value="Node rotate step" />
-        </element>
-        <element type="CheckBox" name="RotateSnapToggle">
-            <fixedsize value="16 16" />
-        </element>
-        <element type="Text">
-            <fixedwidth value="34" />
-            <text value="Snap" />
-        </element>
-        <element type="LineEdit" name="RotateStepEdit">
-            <fixedwidth value="80" />
-        </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="8" />
-        <element type="Text">
-            <text value="Node scale step" />
-        </element>
-        <element type="CheckBox" name="ScaleSnapToggle">
-            <fixedsize value="16 16" />
-        </element>
-        <element type="Text">
-            <fixedwidth value="34" />
-            <text value="Snap" />
-        </element>
-        <element type="LineEdit" name="ScaleStepEdit">
-            <fixedwidth value="80" />
-        </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="8" />
-        <element type="CheckBox" name="LocalIDToggle">
-            <fixedsize value="16 16" />
-        </element>
-        <element type="Text">
-            <text value="Use local entity IDs on import" />
-        </element>
-    </element>
-</element>

+ 0 - 65
Bin/CoreData/UI/SceneSettingsDialog.xml

@@ -1,65 +0,0 @@
-<element type="Window" name="SceneSettingsDialog">
-    <movable enable="true" />
-    <layout mode="vertical" spacing="4" border="6 6 6 6" />
-    <element>
-        <fixedheight value="16" />
-        <layout mode="horizontal" />
-        <element type="Text">
-            <text value="Global scene settings" />
-        </element>
-        <element type="Button" style="CloseButton" name="CloseButton" />
-    </element>
-    <element type="BorderImage" style="EditorDivider">
-        <fixedheight value="4" />
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Octree min bounds" />
-        </element>
-        <element type="LineEdit" name="OctreeMinEdit">
-            <fixedwidth value="160" />
-        </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Octree max bounds" />
-        </element>
-       <element type="LineEdit" name="OctreeMaxEdit">
-            <fixedwidth value="160" />
-        </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Octree levels" />
-        </element>
-       <element type="LineEdit" name="OctreeLevelsEdit">
-            <fixedwidth value="160" />
-       </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Gravity" />
-        </element>
-       <element type="LineEdit" name="GravityEdit">
-            <fixedwidth value="160" />
-       </element>
-    </element>
-    <element>
-        <fixedheight value="17" />
-        <layout mode="horizontal" spacing="20" />
-        <element type="Text">
-            <text value="Physics FPS" />
-        </element>
-       <element type="LineEdit" name="PhysicsFPSEdit">
-            <fixedwidth value="160" />
-       </element>
-    </element>
-</element>

+ 0 - 77
Bin/CoreData/UI/SceneWindow.xml

@@ -1,77 +0,0 @@
-<element type="Window" name="SceneWindow">
-    <movable enable="true" />
-    <resizable enable="true" />
-    <resizeborder value="6 6 6 6" />
-    <layout mode="vertical" spacing="4" border="6 6 6 6" />
-    <element>
-        <fixedheight value="16" />
-        <layout mode="horizontal" />
-        <element type="Text">
-            <text value="Scene hierarchy" />
-        </element>
-        <element type="Button" style="CloseButton" name="CloseButton" />
-    </element>
-    <element type="BorderImage" style="EditorDivider">
-        <fixedheight value="4" />
-    </element>
-    <element>
-        <fixedheight value="18" />
-        <layout mode="horizontal" spacing="4" />
-        <element type="Button" name="ExpandAllButton">
-            <fixedwidth value="70" />
-            <element type="Text">
-                <font name="cour.ttf" size="9" />
-                <text value="Expand" />
-                <alignment horizontal="center" vertical="center" />
-            </element>
-        </element>
-        <element type="Button" name="CollapseAllButton">
-            <fixedwidth value="70" />
-            <element type="Text">
-                <font name="cour.ttf" size="9" />
-                <text value="Collapse" />
-                <alignment horizontal="center" vertical="center" />
-            </element>
-        </element>
-        <element />
-    </element>
-    <element type="ListView" name="EntityList">
-        <hierarchy enable="true" />
-        <highlight value="always" />
-    </element>
-    <element>
-        <fixedheight value="22" />
-        <layout mode="horizontal" spacing="4" />
-        <element type="Element" />
-        <element type="DropDownList" name="NewEntityList">
-            <fixedsize value="90 22" />
-            <layout border="4 4 4 4" />
-            <placeholder>
-                <visible enable="false" />
-            </placeholder>
-            <element type="Text">
-                <text value="New Entity" />
-                <textalignment value="center" />
-            </element>
-            <popup>
-                <layout border="4 4 4 4" />   
-            </popup>         
-        </element>
-        <element />
-        <element type="DropDownList" name="NewComponentList">
-            <fixedsize value="90 22" />
-            <layout border="4 4 4 4" />
-            <placeholder>
-                <visible enable="false" />
-            </placeholder>
-            <element type="Text">
-                <text value="New Comp" />
-                <textalignment value="center" />
-            </element>
-            <popup>
-                <layout border="4 4 4 4" />   
-            </popup>
-        </element>
-        <element />
-    </element>
-</element>

+ 0 - 2
Bin/CreatePackages.bat

@@ -1,2 +0,0 @@
-PackageTool CoreData CoreData.pak
-PackageTool Data Data.pak

BIN
Bin/Data/Fonts/BlueHighway.ttf


+ 0 - 7306
Bin/Data/GraphicsTestScene.xml

@@ -1,7306 +0,0 @@
-<scene name="GraphicsTest">
-    <interpolation predictiontime="2" constant="50" snapthreshold="1" />
-    <physics gravity="0 -9.81 0" fps="100" timeacc="0" randomseed="0">
-        <contacts max="20" bouncethreshold="0.1" erp="0.2" cfm="1e-005" surfacelayer="0.001" />
-        <linear restthreshold="0.1" dampingthreshold="0.01" dampingscale="0" />
-        <angular restthreshold="0.1" dampingthreshold="0.01" dampingscale="0" maxnetvelocity="256" />
-    </physics>
-    <octree min="-1000 -1000 -1000" max="1000 1000 1000" levels="8" />
-    <entity id="1" netflags="0" netdistance="0" groupflags="0">
-        <component type="Light" netflags="0">
-            <transform pos="0 0 0" rot="54.7356 45 24.2034" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="directional" color="0.2 0.2 0.2 1" specular="1" range="0" fov="30" aspectratio="1" />
-            <shadows fadedistance="0" intensity="0" resolution="1" nearfarratio="0.002" />
-            <shadowbias constant="0.0001" slopescaled="0.0001" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="2" netflags="0" netdistance="0" groupflags="0">
-        <component type="Zone" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" />
-            <zone min="-1000 -1000 -1000" max="1000 1000 1000" ambientcolor="0.1 0.1 0.1 0" priority="0" />
-            <fog color="0 0 0 0" start="250" end="1000" />
-        </component>
-    </entity>
-    <entity id="3" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="3" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="4" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="4" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="5" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="5" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="6" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="6" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="7" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="7" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="8" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="8" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="9" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="9" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="10" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="10" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="11" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="11" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="12" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="12" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="13" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 -102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="13" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="14" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="14" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="15" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="15" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="16" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="16" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="17" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="17" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="18" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="18" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="19" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="19" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="20" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="20" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="21" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="21" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="22" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="22" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="23" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="23" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="24" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 -82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="24" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="25" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="25" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="26" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="26" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="27" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="27" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="28" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="28" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="29" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="29" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="30" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="30" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="31" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="31" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="32" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="32" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="33" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="33" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="34" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="34" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="35" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 -61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="35" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="36" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="36" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="37" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="37" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="38" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="38" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="39" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="39" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="40" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="40" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="41" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="41" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="42" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="42" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="43" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="43" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="44" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="44" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="45" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="45" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="46" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 -41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="46" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="47" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="47" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="48" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="48" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="49" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="49" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="50" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="50" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="51" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="51" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="52" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="52" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="53" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="53" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="54" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="54" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="55" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="55" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="56" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="56" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="57" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 -20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="57" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="58" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="58" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="59" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="59" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="60" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="60" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="61" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="61" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="62" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="62" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="63" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="63" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="64" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="64" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="65" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="65" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="66" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="66" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="67" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="67" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="68" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 0" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="68" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="69" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="69" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="70" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="70" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="71" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="71" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="72" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="72" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="73" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="73" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="74" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="74" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="75" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="75" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="76" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="76" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="77" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="77" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="78" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="78" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="79" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 20.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="79" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="80" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="80" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="81" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="81" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="82" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="82" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="83" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="83" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="84" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="84" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="85" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="85" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="86" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="86" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="87" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="87" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="88" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="88" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="89" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="89" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="90" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 41" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="90" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="91" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="91" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="92" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="92" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="93" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="93" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="94" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="94" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="95" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="95" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="96" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="96" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="97" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="97" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="98" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="98" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="99" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="99" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="100" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="100" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="101" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 61.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="101" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="102" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="102" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="103" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="103" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="104" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="104" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="105" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="105" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="106" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="106" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="107" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="107" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="108" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="108" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="109" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="109" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="110" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="110" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="111" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="111" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="112" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 82" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="112" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="113" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-102.5 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="113" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="114" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-82 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="114" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="115" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-61.5 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="115" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="116" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-41 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="116" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="117" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="-20.5 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="117" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="118" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="118" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="119" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="20.5 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="119" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="120" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="41 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="120" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="121" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="61.5 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="121" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="122" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="82 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="122" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="123" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="102.5 -0.5 102.5" rot="0 0 0" scale="10 0.5 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="123" type="RigidBody" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="124" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 5 0" rot="0 0 0" scale="112 5 0.5" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="124" type="RigidBody" name="" />
-            <render castshadows="true" occluder="true" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="125" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 5 0" rot="0 90 0" scale="112 5 0.5" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Box.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="125" type="RigidBody" name="" />
-            <render castshadows="true" occluder="true" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Box.mdl" />
-            <material name="Materials/Test.xml" />
-        </component>
-    </entity>
-    <entity id="126" netflags="0" netdistance="0" groupflags="0">
-        <component type="RigidBody" netflags="0">
-            <transform pos="50 0 50" rot="0 0 0" scale="10 10 10" />
-            <parent id="0" type="" name="" />
-            <body mode="static" mass="1" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Mushroom.xml" group="2" mask="1" />
-            <linear velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" />
-            <angular velocity="0 0 0" restthreshold="0" dampingthreshold="0" dampingscale="0" maxvelocity="0" />
-        </component>
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="0 0 0" scale="1 1 1" />
-            <parent id="126" type="RigidBody" name="" />
-            <render castshadows="true" occluder="true" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-        </component>
-    </entity>
-    <entity id="127" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="10.1709 0 -79.7998" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="6.17432 0 -6.13403" rot="-0 -149.403 0" scale="1.95972 1.95972 1.95972" />
-            <instance pos="7.9187 0 -2.99438" rot="-0 -63.7866 0" scale="2.49316 2.49316 2.49316" />
-            <instance pos="7.17834 0 -6.51794" rot="-0 -104.227 0" scale="2.02704 2.02704 2.02704" />
-            <instance pos="-9.70032 0 -3.92029" rot="0 32.9041 0" scale="1.72888 1.72888 1.72888" />
-            <instance pos="-6.68213 0 -7.05383" rot="-0 -4.14184 0" scale="1.89136 1.89136 1.89136" />
-            <instance pos="-9.90662 0 -7.61841" rot="0 3.20801 0" scale="1.75574 1.75574 1.75574" />
-            <instance pos="1.42334 0 0.632935" rot="-0 -143.372 0" scale="2.21429 2.21429 2.21429" />
-            <instance pos="3.2605 0 -6.67542" rot="0 162.279 0" scale="1.70422 1.70422 1.70422" />
-            <instance pos="2.15332 0 -8.85925" rot="-0 -78.0139 0" scale="2.60516 2.60516 2.60516" />
-            <instance pos="-3.96118 0 0.397339" rot="-0 -44.6594 0" scale="2.45331 2.45331 2.45331" />
-            <instance pos="8.51379 0 9.11743" rot="-0 -165.839 0" scale="1.28467 1.28467 1.28467" />
-            <instance pos="-5.29358 0 -0.758667" rot="-0 -49.6033 0" scale="1.41919 1.41919 1.41919" />
-            <instance pos="6.87256 0 5.59265" rot="-0 -1.16456 0" scale="2.99933 2.99933 2.99933" />
-            <instance pos="-2.15149 0 2.22961" rot="0 95.8337 0" scale="1.59454 1.59454 1.59454" />
-            <instance pos="-9.52515 0 6.80237" rot="0 135.308 0" scale="1.18524 1.18524 1.18524" />
-            <instance pos="-8.87573 0 3.5437" rot="0 3.16406 0" scale="2.83752 2.83752 2.83752" />
-            <instance pos="-4.54224 0 -4.48242" rot="-0 -148.359 0" scale="2.38232 2.38232 2.38232" />
-            <instance pos="4.52942 0 6.75171" rot="0 174.573 0" scale="1.41071 1.41071 1.41071" />
-            <instance pos="-0.631104 0 4.87427" rot="0 164.861 0" scale="2.89825 2.89825 2.89825" />
-            <instance pos="-7.83447 0 4.88831" rot="-0 -144.349 0" scale="1.77045 1.77045 1.77045" />
-            <instance pos="2.17896 0 4.69971" rot="-0 -153.94 0" scale="1.72266 1.72266 1.72266" />
-            <instance pos="-5.49805 0 -6.96899" rot="0 153.051 0" scale="2.60571 2.60571 2.60571" />
-            <instance pos="9.79919 0 0.341797" rot="-0 -89.4507 0" scale="1.6911 1.6911 1.6911" />
-            <instance pos="3.14575 0 -6.62048" rot="0 177.078 0" scale="1.12708 1.12708 1.12708" />
-            <instance pos="0.0958252 0 3.99475" rot="0 53.0969 0" scale="2.89911 2.89911 2.89911" />
-            <instance pos="8.10181 0 -7.16858" rot="-0 -110.566 0" scale="1.60608 1.60608 1.60608" />
-            <instance pos="-8.59253 0 -1.46912" rot="-0 -12.03 0" scale="2.36633 2.36633 2.36633" />
-            <instance pos="7.54456 0 -6.93542" rot="-0 -64.2041 0" scale="2.16406 2.16406 2.16406" />
-            <instance pos="-6.44226 0 -6.1731" rot="-0 -65.8191 0" scale="1.9505 1.9505 1.9505" />
-            <instance pos="0.078125 0 -6.88904" rot="-0 -96.4819 0" scale="1.81116 1.81116 1.81116" />
-            <instance pos="1.37451 0 -4.40857" rot="-0 -114.401 0" scale="2.51166 2.51166 2.51166" />
-            <instance pos="-0.494385 0 4.43787" rot="0 44.2859 0" scale="1.7356 1.7356 1.7356" />
-            <instance pos="-9.2981 0 6.69312" rot="-0 -173.881 0" scale="2.32593 2.32593 2.32593" />
-            <instance pos="-7.90649 0 -1.47583" rot="-0 -18.2483 0" scale="2.84271 2.84271 2.84271" />
-            <instance pos="-3.08044 0 0.990601" rot="0 169.816 0" scale="1.74994 1.74994 1.74994" />
-            <instance pos="-3.66272 0 6.93909" rot="0 164.191 0" scale="1.54376 1.54376 1.54376" />
-            <instance pos="-4.04419 0 9.65881" rot="-0 -93.9001 0" scale="2.13452 2.13452 2.13452" />
-            <instance pos="5.22583 0 -6.08032" rot="-0 -57.8101 0" scale="1.79529 1.79529 1.79529" />
-            <instance pos="7.80273 0 0.0177002" rot="0 9.8877 0" scale="2.9892 2.9892 2.9892" />
-            <instance pos="-8.98987 0 1.45142" rot="-0 -168.728 0" scale="1.38812 1.38812 1.38812" />
-            <instance pos="2.53479 0 6.86035" rot="-0 -123.267 0" scale="1.39569 1.39569 1.39569" />
-            <instance pos="-7.53357 0 6.84265" rot="0 39.5728 0" scale="2.48621 2.48621 2.48621" />
-            <instance pos="8.8208 0 -3.71887" rot="0 102.986 0" scale="1.67261 1.67261 1.67261" />
-            <instance pos="4.66125 0 -7.19482" rot="-0 -59.5459 0" scale="2.41595 2.41595 2.41595" />
-            <instance pos="4.94385 0 2.00439" rot="0 90.9778 0" scale="1.28894 1.28894 1.28894" />
-            <instance pos="-8.77991 0 -9.96765" rot="-0 -69.7632 0" scale="2.7052 2.7052 2.7052" />
-            <instance pos="-7.68799 0 -5.78857" rot="-0 -160.851 0" scale="1.0285 1.0285 1.0285" />
-            <instance pos="-0.910034 0 -7.72461" rot="-0 -89.209 0" scale="2.37225 2.37225 2.37225" />
-            <instance pos="-8.52234 0 0.86853" rot="0 157.214 0" scale="1.40387 1.40387 1.40387" />
-            <instance pos="-4.19312 0 3.92395" rot="0 157.203 0" scale="1.46484 1.46484 1.46484" />
-        </component>
-    </entity>
-    <entity id="128" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="5.20996 0 12.4561" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-6.79626 0 2.57324" rot="-0 -178.517 0" scale="2.92603 2.92603 2.92603" />
-            <instance pos="8.49548 0 3.91479" rot="0 68.3789 0" scale="1.67188 1.67188 1.67188" />
-            <instance pos="9.90295 0 -6.43311" rot="0 164.674 0" scale="2.99597 2.99597 2.99597" />
-            <instance pos="2.50305 0 -8.04993" rot="0 33.9807 0" scale="1.87543 1.87543 1.87543" />
-            <instance pos="-9.03137 0 8.62976" rot="-0 -37.9468 0" scale="1.58002 1.58002 1.58002" />
-            <instance pos="5.38086 0 -5.4541" rot="0 147.854 0" scale="1.40393 1.40393 1.40393" />
-            <instance pos="2.08252 0 2.56104" rot="0 162.576 0" scale="1.93268 1.93268 1.93268" />
-            <instance pos="2.69409 0 1.95618" rot="-0 -52.2839 0" scale="2.65753 2.65753 2.65753" />
-            <instance pos="4.41772 0 2.49512" rot="-0 -156.335 0" scale="1.75024 1.75024 1.75024" />
-            <instance pos="4.75769 0 -6.3147" rot="-0 -160.159 0" scale="2.81012 2.81012 2.81012" />
-            <instance pos="-6.22131 0 -5.14282" rot="-0 -142.306 0" scale="2.39697 2.39697 2.39697" />
-            <instance pos="-2.97424 0 1.69189" rot="0 178 0" scale="1.16077 1.16077 1.16077" />
-            <instance pos="2.2406 0 4.81445" rot="-0 -136.67 0" scale="2.3822 2.3822 2.3822" />
-            <instance pos="-7.01782 0 6.09009" rot="-0 -152.633 0" scale="2.73541 2.73541 2.73541" />
-            <instance pos="2.2937 0 8.23059" rot="-0 -98.042 0" scale="1.08643 1.08643 1.08643" />
-            <instance pos="9.53003 0 3.3551" rot="0 113.401 0" scale="2.13837 2.13837 2.13837" />
-            <instance pos="-6.52161 0 -3.88367" rot="0 39.0784 0" scale="2.73804 2.73804 2.73804" />
-            <instance pos="4.88586 0 7.02393" rot="0 55.7556 0" scale="1.65381 1.65381 1.65381" />
-            <instance pos="-8.46802 0 -8.41309" rot="-0 -129.254 0" scale="2.63995 2.63995 2.63995" />
-            <instance pos="-1.03516 0 0.901489" rot="0 147.228 0" scale="1.59747 1.59747 1.59747" />
-            <instance pos="0.0238037 0 -0.689087" rot="0 54.9536 0" scale="1.64606 1.64606 1.64606" />
-            <instance pos="-3.72253 0 4.75952" rot="-0 -62.4023 0" scale="2.91809 2.91809 2.91809" />
-            <instance pos="4.50012 0 7.46643" rot="0 108.018 0" scale="2.88794 2.88794 2.88794" />
-            <instance pos="-8.6853 0 -7.45544" rot="-0 -77.4206 0" scale="2.04913 2.04913 2.04913" />
-            <instance pos="9.1217 0 2.19238" rot="0 26.0156 0" scale="2.75122 2.75122 2.75122" />
-            <instance pos="-3.55774 0 3.07678" rot="0 37.7271 0" scale="2.01007 2.01007 2.01007" />
-            <instance pos="-4.19434 0 -5.45837" rot="-0 -28.8171 0" scale="2.10229 2.10229 2.10229" />
-            <instance pos="-7.70935 0 3.25562" rot="0 177.308 0" scale="1.75824 1.75824 1.75824" />
-            <instance pos="5.8667 0 -0.0640869" rot="-0 -176.671 0" scale="1.76471 1.76471 1.76471" />
-            <instance pos="0.6427 0 3.76282" rot="-0 -141.746 0" scale="1.79034 1.79034 1.79034" />
-            <instance pos="4.1571 0 -9.8822" rot="0 36.2219 0" scale="2.24609 2.24609 2.24609" />
-            <instance pos="-0.170288 0 7.2644" rot="-0 -90.9668 0" scale="1.99377 1.99377 1.99377" />
-            <instance pos="5.70679 0 -2.39807" rot="-0 -160.994 0" scale="1.71417 1.71417 1.71417" />
-            <instance pos="2.61658 0 9.11377" rot="0 63.5669 0" scale="1.74847 1.74847 1.74847" />
-            <instance pos="4.86511 0 -7.36755" rot="-0 -17.3914 0" scale="2.22394 2.22394 2.22394" />
-            <instance pos="-3.40332 0 -9.44336" rot="0 20.127 0" scale="2.27838 2.27838 2.27838" />
-            <instance pos="6.94092 0 -7.36755" rot="-0 -48.8562 0" scale="2.19373 2.19373 2.19373" />
-            <instance pos="7.07886 0 4.43237" rot="0 5.28442 0" scale="1.25293 1.25293 1.25293" />
-            <instance pos="2.34253 0 4.15771" rot="0 78.3215 0" scale="1.1319 1.1319 1.1319" />
-            <instance pos="2.48169 0 -6.6217" rot="0 122.75 0" scale="1.63879 1.63879 1.63879" />
-            <instance pos="3.2196 0 -2.64893" rot="-0 -71.1475 0" scale="2.61371 2.61371 2.61371" />
-            <instance pos="2.22168 0 0.530396" rot="-0 -72.6636 0" scale="2.80115 2.80115 2.80115" />
-            <instance pos="2.60315 0 -7.10388" rot="0 144.866 0" scale="1.50739 1.50739 1.50739" />
-            <instance pos="7.10327 0 -7.26929" rot="0 23.8184 0" scale="1.85559 1.85559 1.85559" />
-            <instance pos="-3.95447 0 1.46667" rot="-0 -162.708 0" scale="1.45111 1.45111 1.45111" />
-            <instance pos="-7.78748 0 -3.77319" rot="-0 -69.115 0" scale="1.26941 1.26941 1.26941" />
-            <instance pos="5.76172 0 -4.31519" rot="-0 -37.7271 0" scale="2.57922 2.57922 2.57922" />
-            <instance pos="2.30408 0 4.87549" rot="0 130.001 0" scale="2.71326 2.71326 2.71326" />
-            <instance pos="7.27112 0 -5.4303" rot="0 82.5952 0" scale="1.49908 1.49908 1.49908" />
-            <instance pos="9.69604 0 0.847778" rot="0 19.3689 0" scale="1.16284 1.16284 1.16284" />
-        </component>
-    </entity>
-    <entity id="129" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="-11.7139 0 3.94531" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-4.82422 0 -8.10669" rot="-0 -39.0564 0" scale="1.46552 1.46552 1.46552" />
-            <instance pos="-7.49817 0 -7.06909" rot="-0 -24.6204 0" scale="1.16022 1.16022 1.16022" />
-            <instance pos="-8.82568 0 -9.05823" rot="0 121.102 0" scale="2.82935 2.82935 2.82935" />
-            <instance pos="-1.3446 0 -2.0282" rot="-0 -19.3909 0" scale="2.67432 2.67432 2.67432" />
-            <instance pos="6.84143 0 0.684204" rot="-0 -110.336 0" scale="1.79535 1.79535 1.79535" />
-            <instance pos="-9.91333 0 -4.81689" rot="-0 -170.793 0" scale="2.90955 2.90955 2.90955" />
-            <instance pos="-5.17822 0 -2.02637" rot="-0 -149.205 0" scale="1.51025 1.51025 1.51025" />
-            <instance pos="8.90503 0 3.67981" rot="0 156.775 0" scale="2.7804 2.7804 2.7804" />
-            <instance pos="8.81897 0 -9.85657" rot="-0 -143.448 0" scale="2.57227 2.57227 2.57227" />
-            <instance pos="-7.15149 0 1.5332" rot="0 80.0354 0" scale="1.76599 1.76599 1.76599" />
-            <instance pos="-1.64185 0 -9.91455" rot="0 29.6082 0" scale="2.31982 2.31982 2.31982" />
-            <instance pos="-8.703 0 7.10144" rot="-0 -68.0273 0" scale="2.3241 2.3241 2.3241" />
-            <instance pos="6.05347 0 3.82935" rot="-0 -169.156 0" scale="2.37122 2.37122 2.37122" />
-            <instance pos="3.78967 0 -7.14478" rot="-0 -97.9651 0" scale="2.55542 2.55542 2.55542" />
-            <instance pos="7.37305 0 -9.37866" rot="-0 -127.98 0" scale="2.41309 2.41309 2.41309" />
-            <instance pos="1.03943 0 -8.29102" rot="-0 -18.7647 0" scale="1.11755 1.11755 1.11755" />
-            <instance pos="-7.09656 0 -4.50073" rot="-0 -6.56984 0" scale="2.23993 2.23993 2.23993" />
-            <instance pos="8.4491 0 -4.15527" rot="0 132.308 0" scale="2.38904 2.38904 2.38904" />
-            <instance pos="-6.88171 0 -5.62744" rot="0 86.5942 0" scale="2.04285 2.04285 2.04285" />
-            <instance pos="-7.8717 0 8.04504" rot="-0 -35.0574 0" scale="1.88342 1.88342 1.88342" />
-            <instance pos="5.64148 0 -8.39783" rot="0 61.842 0" scale="2.94873 2.94873 2.94873" />
-            <instance pos="7.40723 0 5.51697" rot="0 75.8276 0" scale="1.91321 1.91321 1.91321" />
-            <instance pos="5.01221 0 -9.92493" rot="0 41.0559 0" scale="1.80939 1.80939 1.80939" />
-            <instance pos="9.85168 0 -3.77747" rot="0 13.8867 0" scale="1.50415 1.50415 1.50415" />
-            <instance pos="-5.04639 0 -6.2146" rot="0 55.2612 0" scale="2.2406 2.2406 2.2406" />
-            <instance pos="8.78113 0 7.70691" rot="0 70.4333 0" scale="2.55927 2.55927 2.55927" />
-            <instance pos="3.13477 0 2.91077" rot="-0 -32.7173 0" scale="1.91089 1.91089 1.91089" />
-            <instance pos="3.28308 0 8.42529" rot="0 54.2725 0" scale="2.27264 2.27264 2.27264" />
-            <instance pos="-1.55945 0 1.39038" rot="-0 -20.5225 0" scale="2.08112 2.08112 2.08112" />
-            <instance pos="0.72876 0 1.57104" rot="0 91.9006 0" scale="1.79388 1.79388 1.79388" />
-            <instance pos="-9.26758 0 -2.995" rot="-0 -73.7183 0" scale="1.39301 1.39301 1.39301" />
-            <instance pos="-2.21191 0 -8.59436" rot="-0 -147.338 0" scale="1.14185 1.14185 1.14185" />
-            <instance pos="-6.88232 0 -6.04675" rot="-0 -128.046 0" scale="1.90863 1.90863 1.90863" />
-            <instance pos="3.94653 0 2.08557" rot="0 158.862 0" scale="2.3689 2.3689 2.3689" />
-            <instance pos="6.71387 0 -2.0697" rot="-0 -146.81 0" scale="1.39917 1.39917 1.39917" />
-            <instance pos="7.51953 0 8.98865" rot="0 141.01 0" scale="2.97485 2.97485 2.97485" />
-            <instance pos="7.91382 0 -6.29395" rot="-0 -153.204 0" scale="1.88409 1.88409 1.88409" />
-            <instance pos="4.16992 0 2.54639" rot="0 17.8638 0" scale="1.57111 1.57111 1.57111" />
-            <instance pos="-1.84753 0 -4.79614" rot="-0 -37.6941 0" scale="2.42035 2.42035 2.42035" />
-            <instance pos="7.92053 0 4.56848" rot="0 141.68 0" scale="1.7948 1.7948 1.7948" />
-            <instance pos="-3.82813 0 8.07678" rot="0 139.713 0" scale="2.14111 2.14111 2.14111" />
-            <instance pos="4.67346 0 -2.92908" rot="-0 -91.6809 0" scale="2.47272 2.47272 2.47272" />
-            <instance pos="-7.21375 0 4.78821" rot="0 72.0593 0" scale="1.54517 1.54517 1.54517" />
-            <instance pos="8.22205 0 3.6084" rot="0 132.418 0" scale="2.03528 2.03528 2.03528" />
-            <instance pos="8.14819 0 -7.8125" rot="0 73.103 0" scale="2.03589 2.03589 2.03589" />
-            <instance pos="-1.22986 0 3.09631" rot="-0 -112.456 0" scale="1.18085 1.18085 1.18085" />
-            <instance pos="-8.4845 0 -8.40881" rot="0 10.0085 0" scale="1.71014 1.71014 1.71014" />
-            <instance pos="3.94531 0 -3.85559" rot="0 51.3611 0" scale="1.78967 1.78967 1.78967" />
-            <instance pos="3.5144 0 -8.64319" rot="-0 -99.0308 0" scale="1.3974 1.3974 1.3974" />
-            <instance pos="2.31384 0 3.88" rot="-0 -124.244 0" scale="2.08795 2.08795 2.08795" />
-        </component>
-    </entity>
-    <entity id="130" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="7.25586 0 -64.2725" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="9.49097 0 -9.00757" rot="0 167.047 0" scale="2.93988 2.93988 2.93988" />
-            <instance pos="0.618896 0 4.55688" rot="-0 -115.236 0" scale="2.38556 2.38556 2.38556" />
-            <instance pos="-2.22778 0 -2.55798" rot="0 17.9846 0" scale="2.61951 2.61951 2.61951" />
-            <instance pos="-8.78357 0 -6.60889" rot="0 111.797 0" scale="2.56891 2.56891 2.56891" />
-            <instance pos="-3.56201 0 -5.75073" rot="0 174.474 0" scale="1.01831 1.01831 1.01831" />
-            <instance pos="0.15686 0 -1.203" rot="-0 -141.866 0" scale="2.51703 2.51703 2.51703" />
-            <instance pos="-3.00415 0 -1.97876" rot="-0 -56.6565 0" scale="2.88458 2.88458 2.88458" />
-            <instance pos="9.94507 0 2.46582" rot="0 19.248 0" scale="2.12567 2.12567 2.12567" />
-            <instance pos="-2.26501 0 7.27051" rot="0 110.303 0" scale="1.56842 1.56842 1.56842" />
-            <instance pos="2.25098 0 -9.46594" rot="0 140.823 0" scale="1.03723 1.03723 1.03723" />
-            <instance pos="-0.88623 0 -9.37927" rot="-0 -51.1523 0" scale="2.87347 2.87347 2.87347" />
-            <instance pos="4.54529 0 -1.96228" rot="-0 -139.834 0" scale="2.6167 2.6167 2.6167" />
-            <instance pos="1.65161 0 7.50793" rot="-0 -145.8 0" scale="1.15802 1.15802 1.15802" />
-            <instance pos="-0.756226 0 5.86304" rot="-0 -147.382 0" scale="2.17883 2.17883 2.17883" />
-            <instance pos="6.3208 0 1.38367" rot="-0 -117.817 0" scale="1.68713 1.68713 1.68713" />
-            <instance pos="-4.65393 0 -9.79553" rot="0 122.959 0" scale="1.46417 1.46417 1.46417" />
-            <instance pos="-2.56531 0 5.41992" rot="-0 -46.8567 0" scale="1.2337 1.2337 1.2337" />
-            <instance pos="2.57813 0 4.51111" rot="-0 -38.1885 0" scale="1.36603 1.36603 1.36603" />
-            <instance pos="8.03955 0 0.71106" rot="-0 -79.1785 0" scale="2.93036 2.93036 2.93036" />
-            <instance pos="8.0304 0 -6.05286" rot="-0 -72.9382 0" scale="2.90674 2.90674 2.90674" />
-            <instance pos="7.8064 0 6.97571" rot="-0 -133.671 0" scale="1.37091 1.37091 1.37091" />
-            <instance pos="-4.70032 0 2.33826" rot="0 90.2307 0" scale="2.46436 2.46436 2.46436" />
-            <instance pos="-6.58142 0 5.76172" rot="-0 -103.008 0" scale="1.96185 1.96185 1.96185" />
-            <instance pos="6.13037 0 -8.37036" rot="-0 -52.0862 0" scale="1.24927 1.24927 1.24927" />
-            <instance pos="1.46606 0 -3.85071" rot="0 170.266 0" scale="2.52405 2.52405 2.52405" />
-            <instance pos="4.55505 0 -6.16272" rot="-0 -1.80177 0" scale="1.0307 1.0307 1.0307" />
-            <instance pos="3.8324 0 2.95227" rot="0 62.688 0" scale="1.14423 1.14423 1.14423" />
-            <instance pos="3.5321 0 -4.50073" rot="-0 -57.9968 0" scale="2.11328 2.11328 2.11328" />
-            <instance pos="5.5896 0 -2.57568" rot="0 83.7048 0" scale="2.27643 2.27643 2.27643" />
-            <instance pos="-5.9082 0 -5.36682" rot="-0 -10.437 0" scale="1.56348 1.56348 1.56348" />
-            <instance pos="5.38391 0 -9.54224" rot="0 54.657 0" scale="1.09393 1.09393 1.09393" />
-            <instance pos="-3.02856 0 -9.81506" rot="-0 -128.21 0" scale="1.68646 1.68646 1.68646" />
-            <instance pos="-1.66992 0 -1.70898" rot="0 32.6404 0" scale="2.09033 2.09033 2.09033" />
-            <instance pos="-3.24036 0 3.98499" rot="-0 -123.3 0" scale="2.75244 2.75244 2.75244" />
-            <instance pos="1.40015 0 0.709229" rot="0 19.4348 0" scale="1.93152 1.93152 1.93152" />
-            <instance pos="-1.46423 0 -4.80042" rot="-0 -49.2078 0" scale="1.97314 1.97314 1.97314" />
-            <instance pos="1.31592 0 -8.25134" rot="-0 -104.623 0" scale="2.55688 2.55688 2.55688" />
-            <instance pos="7.0105 0 7.28394" rot="0 105.48 0" scale="2.7287 2.7287 2.7287" />
-            <instance pos="4.93652 0 2.89795" rot="-0 -61.6992 0" scale="2.53119 2.53119 2.53119" />
-            <instance pos="8.16589 0 7.43774" rot="-0 -31.4978 0" scale="2.04388 2.04388 2.04388" />
-            <instance pos="-7.84729 0 -1.1969" rot="0 127.441 0" scale="2.64606 2.64606 2.64606" />
-            <instance pos="-6.60339 0 -1.44592" rot="0 0.307617 0" scale="2.31488 2.31488 2.31488" />
-            <instance pos="-8.72559 0 5.47058" rot="0 32.3328 0" scale="1.7713 1.7713 1.7713" />
-            <instance pos="6.15173 0 3.67737" rot="0 55.47 0" scale="1.28571 1.28571 1.28571" />
-            <instance pos="-3.07739 0 -9.03076" rot="0 6.67969 0" scale="2.95679 2.95679 2.95679" />
-            <instance pos="-8.927 0 2.95227" rot="-0 -30.9155 0" scale="2.2749 2.2749 2.2749" />
-            <instance pos="-9.57886 0 -1.36597" rot="0 87.3303 0" scale="1.78387 1.78387 1.78387" />
-            <instance pos="5.63721 0 3.07983" rot="0 8.21777 0" scale="2.65204 2.65204 2.65204" />
-            <instance pos="2.68494 0 -7.23145" rot="-0 -161.862 0" scale="2.96692 2.96692 2.96692" />
-            <instance pos="-5.70435 0 -0.731812" rot="0 108.248 0" scale="2.56427 2.56427 2.56427" />
-        </component>
-    </entity>
-    <entity id="131" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="-3.10547 0 -25.1953" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-7.94983 0 2.16003" rot="-0 -5.61402 0" scale="2.5116 2.5116 2.5116" />
-            <instance pos="-0.872192 0 -6.98242" rot="-0 -103.821 0" scale="2.99744 2.99744 2.99744" />
-            <instance pos="2.83264 0 5.50964" rot="-0 -136.373 0" scale="2.89215 2.89215 2.89215" />
-            <instance pos="-4.2041 0 3.76282" rot="-0 -155.83 0" scale="1.58075 1.58075 1.58075" />
-            <instance pos="4.24683 0 0.964355" rot="0 88.7146 0" scale="2.09332 2.09332 2.09332" />
-            <instance pos="9.04053 0 -0.147705" rot="-0 -118.872 0" scale="2.53027 2.53027 2.53027" />
-            <instance pos="-1.08521 0 2.46704" rot="-0 -72.4548 0" scale="2.49103 2.49103 2.49103" />
-            <instance pos="-5.90759 0 9.77783" rot="-0 -133.396 0" scale="2.81958 2.81958 2.81958" />
-            <instance pos="8.36731 0 1.82556" rot="-0 -178.011 0" scale="1.97876 1.97876 1.97876" />
-            <instance pos="7.78625 0 -1.00586" rot="-0 -21.4673 0" scale="1.36584 1.36584 1.36584" />
-            <instance pos="-5.93994 0 -4.96094" rot="-0 -97.0312 0" scale="2.8822 2.8822 2.8822" />
-            <instance pos="-9.17297 0 2.50122" rot="-0 -129.122 0" scale="1.06903 1.06903 1.06903" />
-            <instance pos="0.889282 0 1.12671" rot="0 160.675 0" scale="1.12274 1.12274 1.12274" />
-            <instance pos="-7.44507 0 9.92004" rot="-0 -143.679 0" scale="1.10071 1.10071 1.10071" />
-            <instance pos="3.20435 0 -6.54419" rot="0 119.674 0" scale="1.6319 1.6319 1.6319" />
-            <instance pos="-1.78955 0 3.07129" rot="0 153.896 0" scale="1.44324 1.44324 1.44324" />
-            <instance pos="-6.67114 0 3.56995" rot="0 179.11 0" scale="2.01526 2.01526 2.01526" />
-            <instance pos="-1.29883 0 6.05408" rot="0 1.62598 0" scale="1.67896 1.67896 1.67896" />
-            <instance pos="-7.42859 0 -2.4823" rot="-0 -62.1716 0" scale="2.46655 2.46655 2.46655" />
-            <instance pos="2.86621 0 7.82227" rot="-0 -125.793 0" scale="2.02893 2.02893 2.02893" />
-            <instance pos="4.74304 0 4.67896" rot="-0 -15.4578 0" scale="1.93164 1.93164 1.93164" />
-            <instance pos="-7.75635 0 -2.73499" rot="-0 -34.3323 0" scale="2.6424 2.6424 2.6424" />
-            <instance pos="-7.82654 0 -0.904541" rot="-0 -47.0105 0" scale="2.52271 2.52271 2.52271" />
-            <instance pos="-1.66687 0 -9.21753" rot="-0 -23.0054 0" scale="1.1355 1.1355 1.1355" />
-            <instance pos="-5.77454 0 -6.70288" rot="0 42.0886 0" scale="2.18219 2.18219 2.18219" />
-            <instance pos="2.36511 0 -7.63306" rot="-0 -151.172 0" scale="2.38055 2.38055 2.38055" />
-            <instance pos="8.31238 0 4.63074" rot="-0 -118.905 0" scale="1.59698 1.59698 1.59698" />
-            <instance pos="-2.43652 0 6.17676" rot="-0 -0.911875 0" scale="2.54498 2.54498 2.54498" />
-            <instance pos="-6.58875 0 -5.91187" rot="0 139.768 0" scale="1.36243 1.36243 1.36243" />
-            <instance pos="-6.08765 0 1.61926" rot="-0 -14.3591 0" scale="1.38049 1.38049 1.38049" />
-            <instance pos="-3.92029 0 -2.36572" rot="0 43.4949 0" scale="1.3963 1.3963 1.3963" />
-            <instance pos="5.42297 0 -9.07532" rot="-0 -86.0339 0" scale="2.76202 2.76202 2.76202" />
-            <instance pos="-1.02783 0 -9.9646" rot="0 153.49 0" scale="2.60303 2.60303 2.60303" />
-            <instance pos="-0.103149 0 -0.773315" rot="-0 -90.2307 0" scale="1.47699 1.47699 1.47699" />
-            <instance pos="-8.14514 0 1.18774" rot="-0 -28.0811 0" scale="2.7876 2.7876 2.7876" />
-            <instance pos="-8.80737 0 7.13989" rot="0 176.715 0" scale="2.26404 2.26404 2.26404" />
-            <instance pos="5.12085 0 4.94385" rot="0 92.0654 0" scale="2.81976 2.81976 2.81976" />
-            <instance pos="-6.00769 0 5.83923" rot="-0 -160.983 0" scale="1.10248 1.10248 1.10248" />
-            <instance pos="5.80688 0 0.443115" rot="-0 -106.512 0" scale="1.0481 1.0481 1.0481" />
-            <instance pos="1.06689 0 4.6344" rot="-0 -30.8936 0" scale="2.75104 2.75104 2.75104" />
-            <instance pos="-3.8916 0 5.93811" rot="0 142.174 0" scale="1.96375 1.96375 1.96375" />
-            <instance pos="3.03894 0 -8.94836" rot="0 0.307617 0" scale="2.53711 2.53711 2.53711" />
-            <instance pos="-5.60547 0 5.12329" rot="0 55.7117 0" scale="1.11505 1.11505 1.11505" />
-            <instance pos="-9.34631 0 3.41187" rot="0 124.508 0" scale="2.39569 2.39569 2.39569" />
-            <instance pos="-1.27502 0 5.96252" rot="-0 -6.59181 0" scale="2.27106 2.27106 2.27106" />
-            <instance pos="-0.460815 0 -4.09424" rot="-0 -45.2417 0" scale="1.15857 1.15857 1.15857" />
-            <instance pos="-7.13562 0 -7.98035" rot="0 51.4819 0" scale="2.83594 2.83594 2.83594" />
-            <instance pos="-2.5238 0 -3.82568" rot="-0 -67.0276 0" scale="1.09326 1.09326 1.09326" />
-            <instance pos="-5.2002 0 6.28357" rot="-0 -36.7712 0" scale="1.513 1.513 1.513" />
-            <instance pos="-5.83984 0 -4.61304" rot="0 82.5732 0" scale="2.69226 2.69226 2.69226" />
-        </component>
-    </entity>
-    <entity id="132" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="62.0264 0 59.9707" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="2.18506 0 6.89514" rot="0 14.7217 0" scale="1.34705 1.34705 1.34705" />
-            <instance pos="-2.88208 0 -6.32507" rot="0 161.73 0" scale="1.37012 1.37012 1.37012" />
-            <instance pos="2.46033 0 7.88879" rot="-0 -163.323 0" scale="2.8233 2.8233 2.8233" />
-            <instance pos="4.61243 0 0.45166" rot="-0 -0.25268 0" scale="2.9386 2.9386 2.9386" />
-            <instance pos="6.80359 0 7.34802" rot="0 52.8003 0" scale="1.74878 1.74878 1.74878" />
-            <instance pos="-6.58081 0 -4.31274" rot="-0 -9.45923 0" scale="2.48358 2.48358 2.48358" />
-            <instance pos="-9.38232 0 4.33167" rot="-0 -127.793 0" scale="2.62537 2.62537 2.62537" />
-            <instance pos="6.36292 0 4.71802" rot="0 44.8682 0" scale="2.43774 2.43774 2.43774" />
-            <instance pos="2.99622 0 -2.49878" rot="-0 -30.4541 0" scale="2.7793 2.7793 2.7793" />
-            <instance pos="5.46936 0 -9.35669" rot="0 161.587 0" scale="1.01514 1.01514 1.01514" />
-            <instance pos="-1.63086 0 -5.42786" rot="0 56.3708 0" scale="2.83801 2.83801 2.83801" />
-            <instance pos="-5.14282 0 0.0335693" rot="-0 -88.396 0" scale="2.81299 2.81299 2.81299" />
-            <instance pos="-9.35791 0 -5.73059" rot="-0 -82.3865 0" scale="1.45648 1.45648 1.45648" />
-            <instance pos="6.12732 0 1.13159" rot="-0 -53.2837 0" scale="1.66321 1.66321 1.66321" />
-            <instance pos="9.83521 0 0.778198" rot="-0 -47.0435 0" scale="2.2937 2.2937 2.2937" />
-            <instance pos="6.25549 0 -5.44556" rot="0 133.572 0" scale="1.73376 1.73376 1.73376" />
-            <instance pos="1.22559 0 -9.30054" rot="0 143.229 0" scale="1.23956 1.23956 1.23956" />
-            <instance pos="7.97974 0 -3.50159" rot="0 72.5317 0" scale="2.88031 2.88031 2.88031" />
-            <instance pos="6.98608 0 -7.49878" rot="-0 -38.1885 0" scale="1.89111 1.89111 1.89111" />
-            <instance pos="2.6947 0 -5.55786" rot="-0 -158.379 0" scale="2.24805 2.24805 2.24805" />
-            <instance pos="-9.67041 0 -1.5271" rot="-0 -48.9221 0" scale="1.27924 1.27924 1.27924" />
-            <instance pos="-4.16077 0 -4.6521" rot="-0 -114.609 0" scale="2.12286 2.12286 2.12286" />
-            <instance pos="2.14417 0 9.17603" rot="-0 -76.2451 0" scale="1.8454 1.8454 1.8454" />
-            <instance pos="4.78882 0 6.36719" rot="0 48.8782 0" scale="2.03302 2.03302 2.03302" />
-            <instance pos="-9.86023 0 -9.59839" rot="-0 -90.6152 0" scale="1.66772 1.66772 1.66772" />
-            <instance pos="-0.755005 0 8.04199" rot="-0 -83.562 0" scale="1.10101 1.10101 1.10101" />
-            <instance pos="-9.5166 0 2.61902" rot="-0 -114.335 0" scale="2.93811 2.93811 2.93811" />
-            <instance pos="4.1272 0 0.00854492" rot="0 95.7349 0" scale="2.64465 2.64465 2.64465" />
-            <instance pos="1.94397 0 2.93213" rot="0 94.8999 0" scale="2.68842 2.68842 2.68842" />
-            <instance pos="4.96277 0 -0.79895" rot="0 126.573 0" scale="1.02899 1.02899 1.02899" />
-            <instance pos="2.5293 0 -0.46936" rot="0 145.393 0" scale="1.76721 1.76721 1.76721" />
-            <instance pos="-4.22363 0 -9.44763" rot="-0 -145.14 0" scale="2.7677 2.7677 2.7677" />
-            <instance pos="8.63037 0 -1.35681" rot="0 137.867 0" scale="2.06622 2.06622 2.06622" />
-            <instance pos="9.48425 0 -9.79858" rot="-0 -48.5376 0" scale="1.87482 1.87482 1.87482" />
-            <instance pos="-3.34106 0 3.99231" rot="-0 -143.163 0" scale="1.99707 1.99707 1.99707" />
-            <instance pos="-9.21997 0 1.19202" rot="0 136.154 0" scale="1.46606 1.46606 1.46606" />
-            <instance pos="7.18994 0 8.74634" rot="-0 -12.9309 0" scale="2.21759 2.21759 2.21759" />
-            <instance pos="-8.47107 0 1.67908" rot="0 146.525 0" scale="1.6106 1.6106 1.6106" />
-            <instance pos="-8.39905 0 -0.0286865" rot="-0 -45.0879 0" scale="1.60852 1.60852 1.60852" />
-            <instance pos="8.65723 0 5.62988" rot="-0 -148.173 0" scale="1.43243 1.43243 1.43243" />
-            <instance pos="1.21399 0 -4.41406" rot="-0 -45.2197 0" scale="1.50012 1.50012 1.50012" />
-            <instance pos="4.54224 0 -3.97217" rot="-0 -48.0322 0" scale="1.46216 1.46216 1.46216" />
-            <instance pos="-1.06445 0 -6.18591" rot="-0 -39.4849 0" scale="2.14862 2.14862 2.14862" />
-            <instance pos="9.90417 0 -9.42444" rot="0 21.3245 0" scale="2.23834 2.23834 2.23834" />
-            <instance pos="-6.60339 0 -4.86145" rot="0 41.803 0" scale="1.46295 1.46295 1.46295" />
-            <instance pos="9.19556 0 -0.102539" rot="0 17.7429 0" scale="1.15924 1.15924 1.15924" />
-            <instance pos="-4.40552 0 -3.24707" rot="-0 -174.408 0" scale="1.98108 1.98108 1.98108" />
-            <instance pos="8.49365 0 -1.75476" rot="-0 -143.624 0" scale="1.58429 1.58429 1.58429" />
-            <instance pos="-1.96716 0 -0.485229" rot="-0 -17.5342 0" scale="2.09668 2.09668 2.09668" />
-            <instance pos="5.88806 0 6.698" rot="-0 -71.4111 0" scale="2.18567 2.18567 2.18567" />
-        </component>
-    </entity>
-    <entity id="133" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="-29.1113 0 59.209" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-4.64172 0 8.78296" rot="-0 -20.4126 0" scale="2.4375 2.4375 2.4375" />
-            <instance pos="5.49744 0 -7.44751" rot="0 170.233 0" scale="1.35181 1.35181 1.35181" />
-            <instance pos="-9.16748 0 -9.46655" rot="0 163.718 0" scale="2.72455 2.72455 2.72455" />
-            <instance pos="-9.71069 0 -7.27783" rot="0 76.5967 0" scale="2.63702 2.63702 2.63702" />
-            <instance pos="5.59265 0 5.9436" rot="-0 -122.948 0" scale="1.59747 1.59747 1.59747" />
-            <instance pos="8.42957 0 5.62805" rot="-0 -56.8433 0" scale="1.48523 1.48523 1.48523" />
-            <instance pos="-9.53979 0 -0.0250244" rot="0 27.2571 0" scale="1.06177 1.06177 1.06177" />
-            <instance pos="4.30603 0 -2.87598" rot="0 147.524 0" scale="1.36084 1.36084 1.36084" />
-            <instance pos="-6.35803 0 -4.04175" rot="-0 -91.8457 0" scale="1.26947 1.26947 1.26947" />
-            <instance pos="0.512085 0 -8.83545" rot="0 129.188 0" scale="2.6134 2.6134 2.6134" />
-            <instance pos="7.99683 0 -6.82373" rot="0 47.4499 0" scale="1.05847 1.05847 1.05847" />
-            <instance pos="6.36108 0 -6.37146" rot="0 89.7144 0" scale="2.14136 2.14136 2.14136" />
-            <instance pos="0.79834 0 -3.06213" rot="-0 -120.641 0" scale="2.74146 2.74146 2.74146" />
-            <instance pos="8.90503 0 8.6499" rot="0 37.8699 0" scale="1.30646 1.30646 1.30646" />
-            <instance pos="6.00464 0 1.15906" rot="-0 -37.76 0" scale="1.14502 1.14502 1.14502" />
-            <instance pos="6.44775 0 7.44568" rot="0 139.779 0" scale="2.09753 2.09753 2.09753" />
-            <instance pos="-0.981445 0 3.43872" rot="0 101.294 0" scale="2.89886 2.89886 2.89886" />
-            <instance pos="4.56055 0 9.64233" rot="-0 -145.876 0" scale="1.54474 1.54474 1.54474" />
-            <instance pos="-6.04126 0 -7.36084" rot="-0 -143.822 0" scale="1.97467 1.97467 1.97467" />
-            <instance pos="-5.40161 0 -2.89368" rot="0 172.233 0" scale="2.38354 2.38354 2.38354" />
-            <instance pos="3.42224 0 8.9624" rot="-0 -6.28417 0" scale="1.47504 1.47504 1.47504" />
-            <instance pos="-5.28381 0 0.270996" rot="-0 -36.7163 0" scale="1.96869 1.96869 1.96869" />
-            <instance pos="0.749512 0 -3.47107" rot="-0 -154.523 0" scale="1.67303 1.67303 1.67303" />
-            <instance pos="-6.6156 0 -3.03711" rot="0 104.458 0" scale="1.43854 1.43854 1.43854" />
-            <instance pos="4.79309 0 8.45581" rot="-0 -69.4885 0" scale="2.30084 2.30084 2.30084" />
-            <instance pos="-4.59839 0 3.73352" rot="-0 -83.9356 0" scale="1.12885 1.12885 1.12885" />
-            <instance pos="7.18079 0 4.43481" rot="0 122.959 0" scale="1.08875 1.08875 1.08875" />
-            <instance pos="-9.58435 0 -0.314331" rot="-0 -58.2605 0" scale="2.237 2.237 2.237" />
-            <instance pos="2.08069 0 0.811157" rot="-0 -155.281 0" scale="2.55469 2.55469 2.55469" />
-            <instance pos="3.93433 0 2.80029" rot="-0 -86.4294 0" scale="2.73596 2.73596 2.73596" />
-            <instance pos="-1.53015 0 -6.84021" rot="-0 -76.8823 0" scale="1.04285 1.04285 1.04285" />
-            <instance pos="-9.1571 0 -1.23291" rot="-0 -177.737 0" scale="1.53851 1.53851 1.53851" />
-            <instance pos="-5.10315 0 -8.63464" rot="-0 -6.47094 0" scale="2.01288 2.01288 2.01288" />
-            <instance pos="-8.57971 0 2.31018" rot="0 132.297 0" scale="2.91101 2.91101 2.91101" />
-            <instance pos="-3.25073 0 7.20093" rot="0 87.0776 0" scale="1.57904 1.57904 1.57904" />
-            <instance pos="9.85352 0 -8.98071" rot="0 62.0837 0" scale="1.13782 1.13782 1.13782" />
-            <instance pos="-3.98193 0 -5.59753" rot="-0 -76.7395 0" scale="2.29919 2.29919 2.29919" />
-            <instance pos="-4.74487 0 -8.32642" rot="0 49.1309 0" scale="1.43506 1.43506 1.43506" />
-            <instance pos="-6.43494 0 1.25122" rot="-0 -132.385 0" scale="1.21381 1.21381 1.21381" />
-            <instance pos="5.17639 0 -0.925903" rot="0 120.168 0" scale="1.11481 1.11481 1.11481" />
-            <instance pos="3.8855 0 -4.34998" rot="-0 -45.6372 0" scale="2.13513 2.13513 2.13513" />
-            <instance pos="-8.37585 0 7.36938" rot="-0 -73.6633 0" scale="2.99927 2.99927 2.99927" />
-            <instance pos="2.37671 0 2.69958" rot="-0 -145.887 0" scale="2.18622 2.18622 2.18622" />
-            <instance pos="9.57703 0 -6.11511" rot="0 83.3423 0" scale="1.08459 1.08459 1.08459" />
-            <instance pos="-4.89746 0 -5.21912" rot="0 146.448 0" scale="2.58984 2.58984 2.58984" />
-            <instance pos="8.00049 0 -4.55078" rot="0 136.593 0" scale="2.45508 2.45508 2.45508" />
-            <instance pos="-8.94104 0 -5.87036" rot="-0 -142.361 0" scale="1.70795 1.70795 1.70795" />
-            <instance pos="3.36182 0 -2.77527" rot="-0 -8.63526 0" scale="1.44727 1.44727 1.44727" />
-            <instance pos="-3.06091 0 7.91504" rot="-0 -16.7432 0" scale="2.3302 2.3302 2.3302" />
-            <instance pos="-4.35303 0 -5.9668" rot="0 127.958 0" scale="2.06396 2.06396 2.06396" />
-        </component>
-    </entity>
-    <entity id="134" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="-44.8047 0 -33.4424" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-7.8656 0 -8.00781" rot="-0 -104.645 0" scale="2.68756 2.68756 2.68756" />
-            <instance pos="6.38245 0 3.43689" rot="0 2.07642 0" scale="1.98267 1.98267 1.98267" />
-            <instance pos="8.70605 0 2.09229" rot="0 104.623 0" scale="2.21161 2.21161 2.21161" />
-            <instance pos="7.4762 0 4.93774" rot="-0 -31.6077 0" scale="2.66016 2.66016 2.66016" />
-            <instance pos="-3.90259 0 2.11792" rot="-0 -77.6843 0" scale="1.30023 1.30023 1.30023" />
-            <instance pos="3.78052 0 0.852051" rot="0 142.064 0" scale="2.98633 2.98633 2.98633" />
-            <instance pos="-1.76819 0 -7.96143" rot="0 9.87671 0" scale="2.37482 2.37482 2.37482" />
-            <instance pos="-6.61987 0 -4.82239" rot="0 82.3096 0" scale="1.37799 1.37799 1.37799" />
-            <instance pos="5.2655 0 7.24365" rot="0 17.1387 0" scale="1.96643 1.96643 1.96643" />
-            <instance pos="9.22424 0 -8.87695" rot="0 30.5969 0" scale="2.13092 2.13092 2.13092" />
-            <instance pos="1.47766 0 9.25049" rot="-0 -43.6926 0" scale="1.81738 1.81738 1.81738" />
-            <instance pos="-1.73035 0 -1.93726" rot="-0 -122.937 0" scale="2.64667 2.64667 2.64667" />
-            <instance pos="-4.33777 0 8.9032" rot="0 0.802002 0" scale="2.23248 2.23248 2.23248" />
-            <instance pos="3.12073 0 -9.01123" rot="0 151.897 0" scale="2.90894 2.90894 2.90894" />
-            <instance pos="-5.98267 0 2.07886" rot="0 149.172 0" scale="1.68109 1.68109 1.68109" />
-            <instance pos="6.1676 0 2.46216" rot="0 1.74683 0" scale="1.21051 1.21051 1.21051" />
-            <instance pos="-4.46289 0 -2.11182" rot="0 114.038 0" scale="2.64844 2.64844 2.64844" />
-            <instance pos="-3.76953 0 7.0697" rot="0 71.1585 0" scale="2.12933 2.12933 2.12933" />
-            <instance pos="9.90173 0 -0.618896" rot="0 155.962 0" scale="1.73694 1.73694 1.73694" />
-            <instance pos="-2.30286 0 -1.62476" rot="-0 -151.051 0" scale="2.75543 2.75543 2.75543" />
-            <instance pos="-2.13257 0 -3.25195" rot="-0 -17.6331 0" scale="2.01825 2.01825 2.01825" />
-            <instance pos="2.16553 0 -1.62842" rot="-0 -80.376 0" scale="1.1673 1.1673 1.1673" />
-            <instance pos="-5.84167 0 -6.97632" rot="0 31.4429 0" scale="1.63452 1.63452 1.63452" />
-            <instance pos="2.5824 0 -0.563965" rot="0 119.795 0" scale="1.15863 1.15863 1.15863" />
-            <instance pos="-7.14355 0 2.29004" rot="0 101.052 0" scale="2.6499 2.6499 2.6499" />
-            <instance pos="9.8877 0 -1.21887" rot="0 79.541 0" scale="1.21466 1.21466 1.21466" />
-            <instance pos="-4.70825 0 0.379639" rot="0 2.64771 0" scale="2.15247 2.15247 2.15247" />
-            <instance pos="-7.84973 0 5.41077" rot="-0 -11.0962 0" scale="1.73883 1.73883 1.73883" />
-            <instance pos="0.43396 0 8.07922" rot="0 80.1563 0" scale="1.60522 1.60522 1.60522" />
-            <instance pos="-3.78784 0 -0.430908" rot="0 149.183 0" scale="2.52942 2.52942 2.52942" />
-            <instance pos="-2.21802 0 6.83167" rot="0 153.885 0" scale="2.4483 2.4483 2.4483" />
-            <instance pos="-8.172 0 4.69788" rot="0 29.4214 0" scale="2.5061 2.5061 2.5061" />
-            <instance pos="2.75574 0 6.93909" rot="0 129.463 0" scale="1.95001 1.95001 1.95001" />
-            <instance pos="-1.69434 0 -8.11218" rot="0 67.8076 0" scale="1.68622 1.68622 1.68622" />
-            <instance pos="-5.41382 0 8.26721" rot="0 111.709 0" scale="1.30853 1.30853 1.30853" />
-            <instance pos="-6.35437 0 -3.16956" rot="0 98.02 0" scale="1.41187 1.41187 1.41187" />
-            <instance pos="-3.29468 0 -6.5509" rot="0 23.5547 0" scale="2.00378 2.00378 2.00378" />
-            <instance pos="6.18469 0 9.27307" rot="0 160.719 0" scale="2.82593 2.82593 2.82593" />
-            <instance pos="-0.361938 0 -6.41479" rot="0 169.948 0" scale="2.39844 2.39844 2.39844" />
-            <instance pos="8.73352 0 -5.02808" rot="0 99.8767 0" scale="1.59906 1.59906 1.59906" />
-            <instance pos="6.39221 0 6.44836" rot="-0 -133.242 0" scale="2.59009 2.59009 2.59009" />
-            <instance pos="-4.78088 0 -9.85596" rot="0 104.227 0" scale="2.90588 2.90588 2.90588" />
-            <instance pos="0.348511 0 7.18872" rot="-0 -105.304 0" scale="1.51233 1.51233 1.51233" />
-            <instance pos="-0.175171 0 8.42041" rot="0 33.6731 0" scale="2.65192 2.65192 2.65192" />
-            <instance pos="-4.34753 0 -8.46619" rot="0 138.186 0" scale="2.2865 2.2865 2.2865" />
-            <instance pos="-1.36963 0 0.301514" rot="0 50.658 0" scale="2.94989 2.94989 2.94989" />
-            <instance pos="-9.89624 0 -8.50769" rot="-0 -30.6848 0" scale="1.8233 1.8233 1.8233" />
-            <instance pos="-6.24695 0 5.1062" rot="0 36.6174 0" scale="1.84625 1.84625 1.84625" />
-            <instance pos="0.548096 0 3.55835" rot="-0 -63.2922 0" scale="2.67432 2.67432 2.67432" />
-            <instance pos="-0.010376 0 -4.57031" rot="-0 -46.6479 0" scale="1.29797 1.29797 1.29797" />
-        </component>
-    </entity>
-    <entity id="135" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="6.1377 0 75.3223" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-8.66516 0 -5.58655" rot="0 73.6633 0" scale="1.39545 1.39545 1.39545" />
-            <instance pos="-6.00952 0 -6.14197" rot="-0 -15.5676 0" scale="2.18695 2.18695 2.18695" />
-            <instance pos="-4.11255 0 4.77539" rot="-0 -115.269 0" scale="2.5722 2.5722 2.5722" />
-            <instance pos="8.56812 0 8.4259" rot="-0 -56.0522 0" scale="1.51794 1.51794 1.51794" />
-            <instance pos="-8.76221 0 -7.89124" rot="-0 -34.6509 0" scale="1.29663 1.29663 1.29663" />
-            <instance pos="-2.81189 0 7.85461" rot="-0 -15.6006 0" scale="1.76312 1.76312 1.76312" />
-            <instance pos="3.6908 0 -3.37097" rot="-0 -40.4956 0" scale="1.76019 1.76019 1.76019" />
-            <instance pos="3.49243 0 -1.33484" rot="0 96.1524 0" scale="1.96564 1.96564 1.96564" />
-            <instance pos="6.04065 0 0.556641" rot="-0 -74.1248 0" scale="2.49261 2.49261 2.49261" />
-            <instance pos="6.55518 0 -0.266724" rot="-0 -158.752 0" scale="1.55756 1.55756 1.55756" />
-            <instance pos="-8.91724 0 -3.05664" rot="-0 -31.9592 0" scale="2.52576 2.52576 2.52576" />
-            <instance pos="-4.35242 0 -2.63062" rot="0 76.0474 0" scale="1.64911 1.64911 1.64911" />
-            <instance pos="7.63184 0 -8.99719" rot="0 89.5715 0" scale="1.80762 1.80762 1.80762" />
-            <instance pos="7.50488 0 -7.10266" rot="-0 -141.086 0" scale="2.56726 2.56726 2.56726" />
-            <instance pos="-0.966187 0 -6.06323" rot="-0 -85.7702 0" scale="1.86664 1.86664 1.86664" />
-            <instance pos="6.0907 0 2.72888" rot="0 62.7979 0" scale="1.64532 1.64532 1.64532" />
-            <instance pos="4.18762 0 9.26331" rot="0 71.1145 0" scale="2.72571 2.72571 2.72571" />
-            <instance pos="4.86389 0 -9.05396" rot="0 12.9749 0" scale="1.26166 1.26166 1.26166" />
-            <instance pos="1.05347 0 -8.35266" rot="-0 -155.182 0" scale="2.06598 2.06598 2.06598" />
-            <instance pos="-8.45642 0 -5.62256" rot="0 109.655 0" scale="1.12891 1.12891 1.12891" />
-            <instance pos="-7.32605 0 -1.7749" rot="0 90.6042 0" scale="2.64124 2.64124 2.64124" />
-            <instance pos="-4.62585 0 0.175171" rot="-0 -4.3506 0" scale="2.83301 2.83301 2.83301" />
-            <instance pos="-4.31152 0 -7.56531" rot="-0 -105.502 0" scale="1.94183 1.94183 1.94183" />
-            <instance pos="-3.1073 0 -4.10522" rot="-0 -170.969 0" scale="2.62219 2.62219 2.62219" />
-            <instance pos="-8.65356 0 0.344238" rot="-0 -61.4905 0" scale="2.10876 2.10876 2.10876" />
-            <instance pos="0.19104 0 -7.92725" rot="-0 -19.2041 0" scale="2.44617 2.44617 2.44617" />
-            <instance pos="-0.974121 0 -0.521851" rot="-0 -29.2127 0" scale="2.09766 2.09766 2.09766" />
-            <instance pos="7.68677 0 -2.6947" rot="-0 -122.509 0" scale="1.24506 1.24506 1.24506" />
-            <instance pos="-7.75146 0 0.147705" rot="0 100.723 0" scale="2.0929 2.0929 2.0929" />
-            <instance pos="-2.61658 0 5.8252" rot="-0 -51.0864 0" scale="2.48865 2.48865 2.48865" />
-            <instance pos="-2.80701 0 -0.723267" rot="0 159.148 0" scale="2.17181 2.17181 2.17181" />
-            <instance pos="2.64038 0 -2.41943" rot="-0 -159.269 0" scale="1.96515 1.96515 1.96515" />
-            <instance pos="-6.28601 0 6.73279" rot="0 3.49365 0" scale="1.21851 1.21851 1.21851" />
-            <instance pos="-5.56458 0 -9.18762" rot="0 92.1423 0" scale="1.82056 1.82056 1.82056" />
-            <instance pos="-1.14563 0 4.15161" rot="0 47.9004 0" scale="2.08807 2.08807 2.08807" />
-            <instance pos="6.1322 0 7.13501" rot="0 78.5742 0" scale="2.8476 2.8476 2.8476" />
-            <instance pos="-7.13562 0 -3.73291" rot="-0 -141.537 0" scale="1.02057 1.02057 1.02057" />
-            <instance pos="0.744629 0 9.11072" rot="0 139.274 0" scale="1.02478 1.02478 1.02478" />
-            <instance pos="7.71362 0 -5.25879" rot="-0 -146.722 0" scale="1.30518 1.30518 1.30518" />
-            <instance pos="0.703735 0 -9.66919" rot="-0 -29.9927 0" scale="2.30542 2.30542 2.30542" />
-            <instance pos="-1.88904 0 -5.51086" rot="-0 -12.3157 0" scale="1.19415 1.19415 1.19415" />
-            <instance pos="0.12207 0 -2.00867" rot="0 120.707 0" scale="1.6568 1.6568 1.6568" />
-            <instance pos="-4.98474 0 2.50793" rot="0 104.381 0" scale="2.06702 2.06702 2.06702" />
-            <instance pos="-0.438843 0 7.97302" rot="0 118.136 0" scale="2.34912 2.34912 2.34912" />
-            <instance pos="1.65466 0 -0.793457" rot="0 148.59 0" scale="2.84454 2.84454 2.84454" />
-            <instance pos="3.29407 0 -7.58057" rot="0 53.5254 0" scale="1.49475 1.49475 1.49475" />
-            <instance pos="-7.95959 0 -7.76855" rot="-0 -111.786 0" scale="2.65283 2.65283 2.65283" />
-            <instance pos="-0.925293 0 -0.185547" rot="-0 -124.772 0" scale="1.83698 1.83698 1.83698" />
-            <instance pos="-8.01575 0 2.79785" rot="-0 -60.9961 0" scale="1.73724 1.73724 1.73724" />
-            <instance pos="0.400391 0 7.55859" rot="-0 -13.5901 0" scale="1.78937 1.78937 1.78937" />
-        </component>
-    </entity>
-    <entity id="136" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="20.8936 0 36.1084" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="6.2677 0 -2.5177" rot="-0 -53.0859 0" scale="1.12787 1.12787 1.12787" />
-            <instance pos="-2.75269 0 4.87122" rot="0 84.8144 0" scale="2.63788 2.63788 2.63788" />
-            <instance pos="-4.52148 0 5.67383" rot="-0 -157.247 0" scale="1.34943 1.34943 1.34943" />
-            <instance pos="5.1416 0 -7.51526" rot="0 148.964 0" scale="1.55884 1.55884 1.55884" />
-            <instance pos="0.883789 0 -6.58081" rot="0 86.8469 0" scale="1.63721 1.63721 1.63721" />
-            <instance pos="3.1604 0 -5.49866" rot="-0 -108.578 0" scale="2.34045 2.34045 2.34045" />
-            <instance pos="-8.87939 0 2.86621" rot="0 118.619 0" scale="2.90442 2.90442 2.90442" />
-            <instance pos="-3.84766 0 -3.58643" rot="0 58.667 0" scale="1.73706 1.73706 1.73706" />
-            <instance pos="9.2218 0 -4.47144" rot="0 85.0342 0" scale="1.52161 1.52161 1.52161" />
-            <instance pos="5.12024 0 2.49634" rot="-0 -150.194 0" scale="1.54199 1.54199 1.54199" />
-            <instance pos="-3.24219 0 4.24255" rot="-0 -102.92 0" scale="1.04315 1.04315 1.04315" />
-            <instance pos="2.61353 0 4.01062" rot="0 45.4944 0" scale="2.4397 2.4397 2.4397" />
-            <instance pos="0.478516 0 -2.3822" rot="-0 -48.9221 0" scale="2.18384 2.18384 2.18384" />
-            <instance pos="-9.38416 0 -0.0970459" rot="-0 -118.169 0" scale="2.10693 2.10693 2.10693" />
-            <instance pos="1.45142 0 -3.00842" rot="-0 -84.8694 0" scale="1.04529 1.04529 1.04529" />
-            <instance pos="0.938721 0 -9.98718" rot="-0 -90.7031 0" scale="1.56445 1.56445 1.56445" />
-            <instance pos="6.7041 0 5.88013" rot="-0 -99.4373 0" scale="1.5929 1.5929 1.5929" />
-            <instance pos="-1.88843 0 0.772705" rot="0 36.6394 0" scale="1.77875 1.77875 1.77875" />
-            <instance pos="3.36365 0 -8.0658" rot="0 58.2605 0" scale="2.38184 2.38184 2.38184" />
-            <instance pos="4.7699 0 3.41492" rot="-0 -40.2429 0" scale="2.51312 2.51312 2.51312" />
-            <instance pos="-4.70154 0 1.38977" rot="0 40.1221 0" scale="1.53424 1.53424 1.53424" />
-            <instance pos="9.54895 0 4.66858" rot="0 175.638 0" scale="1.42981 1.42981 1.42981" />
-            <instance pos="2.25769 0 6.02356" rot="0 125.464 0" scale="1.96521 1.96521 1.96521" />
-            <instance pos="-2.52686 0 9.96948" rot="-0 -18.7317 0" scale="1.44122 1.44122 1.44122" />
-            <instance pos="1.51367 0 2.60498" rot="0 52.3938 0" scale="2.85974 2.85974 2.85974" />
-            <instance pos="2.84607 0 -0.841675" rot="0 17.5122 0" scale="2.31146 2.31146 2.31146" />
-            <instance pos="-8.00049 0 4.84741" rot="-0 -125.739 0" scale="1.39917 1.39917 1.39917" />
-            <instance pos="4.64233 0 -5.31311" rot="-0 -1.97755 0" scale="2.50818 2.50818 2.50818" />
-            <instance pos="0.952759 0 7.8656" rot="-0 -38.9685 0" scale="2.73767 2.73767 2.73767" />
-            <instance pos="4.39758 0 2.31873" rot="-0 -96.8225 0" scale="1.30383 1.30383 1.30383" />
-            <instance pos="-6.94458 0 5.1239" rot="0 145.701 0" scale="2.22894 2.22894 2.22894" />
-            <instance pos="6.59912 0 4.33533" rot="-0 -41.0339 0" scale="1.12744 1.12744 1.12744" />
-            <instance pos="2.07214 0 -2.1051" rot="0 175.704 0" scale="1.90271 1.90271 1.90271" />
-            <instance pos="1.57532 0 5.2356" rot="0 120.861 0" scale="2.16608 2.16608 2.16608" />
-            <instance pos="4.99451 0 -2.79358" rot="0 29.3225 0" scale="1.19128 1.19128 1.19128" />
-            <instance pos="-9.11072 0 9.9408" rot="0 142.8 0" scale="1.21637 1.21637 1.21637" />
-            <instance pos="-1.32202 0 -1.70105" rot="0 97.0972 0" scale="1.90601 1.90601 1.90601" />
-            <instance pos="-4.77356 0 -5.50049" rot="-0 -128.98 0" scale="2.78613 2.78613 2.78613" />
-            <instance pos="-1.01379 0 7.57874" rot="0 148.206 0" scale="1.46411 1.46411 1.46411" />
-            <instance pos="4.78699 0 9.28772" rot="0 123.014 0" scale="2.44604 2.44604 2.44604" />
-            <instance pos="2.42859 0 2.06726" rot="-0 -38.0896 0" scale="2.36493 2.36493 2.36493" />
-            <instance pos="-7.8241 0 -5.28748" rot="-0 -168.607 0" scale="2.43097 2.43097 2.43097" />
-            <instance pos="-9.69788 0 1.35864" rot="-0 -176.078 0" scale="1.91687 1.91687 1.91687" />
-            <instance pos="7.79236 0 9.4165" rot="-0 -107.15 0" scale="1.49164 1.49164 1.49164" />
-            <instance pos="-4.66675 0 -7.92908" rot="0 167.86 0" scale="2.2135 2.2135 2.2135" />
-            <instance pos="-2.27661 0 -9.01855" rot="0 41.9897 0" scale="2.99628 2.99628 2.99628" />
-            <instance pos="-9.18335 0 4.79797" rot="0 1.58203 0" scale="2.36047 2.36047 2.36047" />
-            <instance pos="4.13208 0 9.12781" rot="-0 -89.6924 0" scale="1.28217 1.28217 1.28217" />
-            <instance pos="2.25464 0 3.56506" rot="-0 -121.333 0" scale="2.95197 2.95197 2.95197" />
-            <instance pos="8.14758 0 -8.57788" rot="-0 -49.9329 0" scale="2.25696 2.25696 2.25696" />
-        </component>
-    </entity>
-    <entity id="137" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="12.0215 0 62.2363" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="7.9718 0 -6.95618" rot="-0 -153.402 0" scale="1.52588 1.52588 1.52588" />
-            <instance pos="2.50549 0 -6.49048" rot="-0 -59.6558 0" scale="2.34052 2.34052 2.34052" />
-            <instance pos="-1.02966 0 7.17224" rot="-0 -6.14137 0" scale="2.32019 2.32019 2.32019" />
-            <instance pos="-8.83545 0 4.1748" rot="-0 -66.2585 0" scale="2.49377 2.49377 2.49377" />
-            <instance pos="6.70654 0 9.48242" rot="0 113.082 0" scale="1.23529 1.23529 1.23529" />
-            <instance pos="-4.16443 0 -5.88989" rot="-0 -18.8086 0" scale="2.68494 2.68494 2.68494" />
-            <instance pos="-5.68176 0 -5.00488" rot="-0 -48.1861 0" scale="1.86176 1.86176 1.86176" />
-            <instance pos="8.57422 0 -5.88562" rot="-0 -88.8135 0" scale="1.77997 1.77997 1.77997" />
-            <instance pos="1.15906 0 -2.50549" rot="-0 -132.946 0" scale="2.88208 2.88208 2.88208" />
-            <instance pos="4.72046 0 4.72473" rot="0 139.933 0" scale="2.10034 2.10034 2.10034" />
-            <instance pos="2.5592 0 9.60388" rot="0 117.96 0" scale="1.86005 1.86005 1.86005" />
-            <instance pos="3.91296 0 2.54639" rot="0 176.44 0" scale="2.33673 2.33673 2.33673" />
-            <instance pos="-7.90527 0 -4.63318" rot="0 23.4668 0" scale="1.27954 1.27954 1.27954" />
-            <instance pos="-6.39465 0 -0.921021" rot="-0 -127.266 0" scale="2.7135 2.7135 2.7135" />
-            <instance pos="6.35132 0 -4.67834" rot="-0 -135.044 0" scale="2.83356 2.83356 2.83356" />
-            <instance pos="-4.91638 0 -7.95471" rot="0 178.967 0" scale="2.40222 2.40222 2.40222" />
-            <instance pos="-7.80823 0 4.08203" rot="0 133.912 0" scale="1.96356 1.96356 1.96356" />
-            <instance pos="-8.02307 0 9.21997" rot="0 163.619 0" scale="1.18634 1.18634 1.18634" />
-            <instance pos="-3.48083 0 0.414429" rot="-0 -75.4212 0" scale="2.64825 2.64825 2.64825" />
-            <instance pos="1.27869 0 4.75586" rot="0 18.6218 0" scale="1.37469 1.37469 1.37469" />
-            <instance pos="-1.4563 0 9.81689" rot="-0 -128.375 0" scale="2.44281 2.44281 2.44281" />
-            <instance pos="6.85852 0 8.01453" rot="-0 -30.4871 0" scale="1.96594 1.96594 1.96594" />
-            <instance pos="4.54956 0 -0.404053" rot="-0 -87.2315 0" scale="1.76788 1.76788 1.76788" />
-            <instance pos="-4.52026 0 4.89197" rot="0 130.638 0" scale="1.06244 1.06244 1.06244" />
-            <instance pos="5.15747 0 6.4447" rot="0 156.478 0" scale="1.44855 1.44855 1.44855" />
-            <instance pos="-4.68567 0 -8.35083" rot="-0 -134.758 0" scale="2.53448 2.53448 2.53448" />
-            <instance pos="-4.90601 0 -3.47717" rot="0 174.584 0" scale="2.50372 2.50372 2.50372" />
-            <instance pos="-3.04199 0 1.2384" rot="-0 -109.336 0" scale="2.9342 2.9342 2.9342" />
-            <instance pos="-4.54651 0 -1.96655" rot="-0 -40.0122 0" scale="2.18469 2.18469 2.18469" />
-            <instance pos="-3.05298 0 2.13196" rot="-0 -71.499 0" scale="2.65948 2.65948 2.65948" />
-            <instance pos="-1.53198 0 6.29944" rot="0 29.2566 0" scale="2.26477 2.26477 2.26477" />
-            <instance pos="3.77319 0 9.65027" rot="0 179.736 0" scale="1.36853 1.36853 1.36853" />
-            <instance pos="-5.23254 0 1.34521" rot="-0 -49.6912 0" scale="1.57782 1.57782 1.57782" />
-            <instance pos="6.39832 0 9.79065" rot="0 144.899 0" scale="1.64343 1.64343 1.64343" />
-            <instance pos="3.15125 0 -2.02698" rot="-0 -24.895 0" scale="2.80768 2.80768 2.80768" />
-            <instance pos="5.27283 0 -4.44641" rot="-0 -170.75 0" scale="2.90448 2.90448 2.90448" />
-            <instance pos="2.84851 0 8.33984" rot="0 17.2485 0" scale="1.5271 1.5271 1.5271" />
-            <instance pos="5.849 0 -4.22729" rot="0 92.9004 0" scale="1.57404 1.57404 1.57404" />
-            <instance pos="8.28735 0 -2.96204" rot="-0 -65.3577 0" scale="1.48676 1.48676 1.48676" />
-            <instance pos="-5.40344 0 -3.55713" rot="-0 -13.9856 0" scale="1.49097 1.49097 1.49097" />
-            <instance pos="6.35925 0 8.67126" rot="0 37.2217 0" scale="2.15448 2.15448 2.15448" />
-            <instance pos="-2.48108 0 -5.45288" rot="0 68.9062 0" scale="2.57416 2.57416 2.57416" />
-            <instance pos="-3.81531 0 7.93396" rot="0 19.5007 0" scale="2.50403 2.50403 2.50403" />
-            <instance pos="1.16943 0 4.38538" rot="-0 -162.751 0" scale="1.73718 1.73718 1.73718" />
-            <instance pos="-8.62244 0 -7.81189" rot="-0 -81.6833 0" scale="1.0545 1.0545 1.0545" />
-            <instance pos="-3.83362 0 -3.59741" rot="0 52.1851 0" scale="2.05182 2.05182 2.05182" />
-            <instance pos="4.81384 0 -3.45581" rot="-0 -144.547 0" scale="2.15906 2.15906 2.15906" />
-            <instance pos="3.20862 0 8.51685" rot="-0 -104.48 0" scale="2.16254 2.16254 2.16254" />
-            <instance pos="-4.10522 0 -8.56445" rot="0 5.26245 0" scale="2.54431 2.54431 2.54431" />
-            <instance pos="1.59058 0 9.94812" rot="0 109.885 0" scale="1.9502 1.9502 1.9502" />
-        </component>
-    </entity>
-    <entity id="138" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="2.49512 0 -58.4082" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="0.991211 0 -6.25549" rot="0 135.802 0" scale="2.02185 2.02185 2.02185" />
-            <instance pos="4.46472 0 3.54614" rot="-0 -105.249 0" scale="2.23157 2.23157 2.23157" />
-            <instance pos="9.13879 0 -7.53296" rot="-0 -96.9763 0" scale="1.11273 1.11273 1.11273" />
-            <instance pos="-0.0238037 0 -5.44128" rot="0 48.1201 0" scale="2.94781 2.94781 2.94781" />
-            <instance pos="5.69214 0 -0.866699" rot="-0 -139.603 0" scale="2.54938 2.54938 2.54938" />
-            <instance pos="6.78711 0 2.25159" rot="0 103.953 0" scale="2.99603 2.99603 2.99603" />
-            <instance pos="-3.24402 0 7.1521" rot="0 56.6235 0" scale="1.21539 1.21539 1.21539" />
-            <instance pos="9.57642 0 9.25781" rot="-0 -149.623 0" scale="1.22766 1.22766 1.22766" />
-            <instance pos="-3.38135 0 -8.63037" rot="0 143.361 0" scale="1.86169 1.86169 1.86169" />
-            <instance pos="6.0907 0 4.68811" rot="-0 -145.195 0" scale="2.75616 2.75616 2.75616" />
-            <instance pos="8.14636 0 1.27319" rot="0 74.1248 0" scale="1.45844 1.45844 1.45844" />
-            <instance pos="-1.21216 0 -6.41785" rot="0 115.334 0" scale="1.43353 1.43353 1.43353" />
-            <instance pos="5.67322 0 6.69434" rot="-0 -51.8005 0" scale="1.79608 1.79608 1.79608" />
-            <instance pos="8.97461 0 -1.13647" rot="0 17.1716 0" scale="2.57678 2.57678 2.57678" />
-            <instance pos="0.389404 0 -3.98804" rot="0 79.541 0" scale="2.33734 2.33734 2.33734" />
-            <instance pos="-6.5509 0 -4.20654" rot="-0 -46.0107 0" scale="1.94464 1.94464 1.94464" />
-            <instance pos="8.23486 0 6.85547" rot="-0 -149.304 0" scale="1.3186 1.3186 1.3186" />
-            <instance pos="3.64014 0 -1.07971" rot="-0 -65.5884 0" scale="2.96405 2.96405 2.96405" />
-            <instance pos="0.288696 0 9.30847" rot="0 31.6736 0" scale="1.10144 1.10144 1.10144" />
-            <instance pos="7.24976 0 1.53687" rot="-0 -146.646 0" scale="2.20667 2.20667 2.20667" />
-            <instance pos="-4.34021 0 1.61011" rot="-0 -76.1023 0" scale="1.77429 1.77429 1.77429" />
-            <instance pos="-7.60925 0 7.63184" rot="-0 -11.5466 0" scale="1.11548 1.11548 1.11548" />
-            <instance pos="-3.12317 0 -1.6394" rot="0 129.078 0" scale="1.00397 1.00397 1.00397" />
-            <instance pos="-5.76904 0 -3.65906" rot="-0 -78.5413 0" scale="1.98151 1.98151 1.98151" />
-            <instance pos="7.77954 0 -8.77747" rot="0 143.13 0" scale="2.13715 2.13715 2.13715" />
-            <instance pos="4.13086 0 -1.09558" rot="-0 -155.325 0" scale="2.17017 2.17017 2.17017" />
-            <instance pos="-6.08948 0 2.12402" rot="0 135.077 0" scale="2.552 2.552 2.552" />
-            <instance pos="1.2854 0 8.11584" rot="-0 -67.6538 0" scale="2.59772 2.59772 2.59772" />
-            <instance pos="5.40283 0 8.96423" rot="0 70.9607 0" scale="2.25995 2.25995 2.25995" />
-            <instance pos="6.86584 0 0.27832" rot="-0 -62.9626 0" scale="2.45831 2.45831 2.45831" />
-            <instance pos="2.37427 0 3.81226" rot="0 142.745 0" scale="2.75671 2.75671 2.75671" />
-            <instance pos="0.657349 0 9.65515" rot="0 91.0767 0" scale="2.20007 2.20007 2.20007" />
-            <instance pos="2.81555 0 3.61511" rot="-0 -17.7649 0" scale="2.12445 2.12445 2.12445" />
-            <instance pos="0.203247 0 -4.57397" rot="0 72.9492 0" scale="2.75189 2.75189 2.75189" />
-            <instance pos="-7.01965 0 -6.60278" rot="-0 -100.052 0" scale="2.383 2.383 2.383" />
-            <instance pos="2.44263 0 1.13586" rot="-0 -1.2854 0" scale="2.99982 2.99982 2.99982" />
-            <instance pos="0.27832 0 1.9635" rot="-0 -170.936 0" scale="1.09137 1.09137 1.09137" />
-            <instance pos="7.85278 0 6.65222" rot="-0 -161.609 0" scale="1.51398 1.51398 1.51398" />
-            <instance pos="8.66516 0 -9.89319" rot="-0 -65.7092 0" scale="1.19965 1.19965 1.19965" />
-            <instance pos="7.08923 0 -7.38342" rot="0 137.373 0" scale="2.5246 2.5246 2.5246" />
-            <instance pos="-3.46924 0 -8.69507" rot="0 5.82275 0" scale="1.15021 1.15021 1.15021" />
-            <instance pos="-9.87488 0 -2.60376" rot="0 82.8369 0" scale="2.14917 2.14917 2.14917" />
-            <instance pos="-2.90649 0 4.92859" rot="0 158.181 0" scale="1.22949 1.22949 1.22949" />
-            <instance pos="-2.1051 0 6.53931" rot="0 115.148 0" scale="2.86853 2.86853 2.86853" />
-            <instance pos="1.28723 0 1.94275" rot="-0 -45.835 0" scale="2.16949 2.16949 2.16949" />
-            <instance pos="-3.56812 0 -5.27222" rot="0 84.2651 0" scale="2.25354 2.25354 2.25354" />
-            <instance pos="3.15613 0 3.10791" rot="-0 -86.2537 0" scale="1.99921 1.99921 1.99921" />
-            <instance pos="-6.48926 0 0.229492" rot="0 151.15 0" scale="1.94196 1.94196 1.94196" />
-            <instance pos="7.73987 0 9.68689" rot="0 7.97607 0" scale="1.14655 1.14655 1.14655" />
-            <instance pos="-2.21252 0 -8.14819" rot="0 114.181 0" scale="2.8645 2.8645 2.8645" />
-        </component>
-    </entity>
-    <entity id="139" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="11.7578 0 53.1689" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-2.10632 0 -0.116577" rot="-0 -28.905 0" scale="2.04388 2.04388 2.04388" />
-            <instance pos="7.21863 0 -7.7478" rot="0 150.447 0" scale="2.50562 2.50562 2.50562" />
-            <instance pos="-5.42358 0 9.91394" rot="0 10.8655 0" scale="1.93066 1.93066 1.93066" />
-            <instance pos="-2.89124 0 -7.63245" rot="0 122.487 0" scale="2.88788 2.88788 2.88788" />
-            <instance pos="8.8446 0 -9.59167" rot="-0 -78.772 0" scale="2.55328 2.55328 2.55328" />
-            <instance pos="5.01404 0 5.5249" rot="-0 -138.922 0" scale="1.08807 1.08807 1.08807" />
-            <instance pos="1.08032 0 -8.94348" rot="-0 -108.842 0" scale="1.27063 1.27063 1.27063" />
-            <instance pos="4.6283 0 -4.27185" rot="0 118.828 0" scale="1.69537 1.69537 1.69537" />
-            <instance pos="8.22876 0 0.195313" rot="-0 -19.9402 0" scale="2.84985 2.84985 2.84985" />
-            <instance pos="1.40381 0 7.22595" rot="-0 -21.709 0" scale="2.38348 2.38348 2.38348" />
-            <instance pos="9.8175 0 -3.86719" rot="0 153.04 0" scale="2.88055 2.88055 2.88055" />
-            <instance pos="-0.179443 0 2.09351" rot="0 59.6228 0" scale="2.44916 2.44916 2.44916" />
-            <instance pos="-3.53088 0 -9.021" rot="-0 -179.011 0" scale="1.43915 1.43915 1.43915" />
-            <instance pos="-6.85181 0 -9.69116" rot="-0 -166.761 0" scale="1.60168 1.60168 1.60168" />
-            <instance pos="0.918579 0 6.97327" rot="0 125.761 0" scale="1.00244 1.00244 1.00244" />
-            <instance pos="-4.28467 0 -7.66968" rot="-0 -162.521 0" scale="1.00159 1.00159 1.00159" />
-            <instance pos="-8.47229 0 5.31311" rot="-0 -29.6851 0" scale="2.61206 2.61206 2.61206" />
-            <instance pos="-2.32788 0 -5.8252" rot="0 161.235 0" scale="2.54999 2.54999 2.54999" />
-            <instance pos="8.302 0 7.48108" rot="-0 -166.08 0" scale="2.28839 2.28839 2.28839" />
-            <instance pos="2.25769 0 -5.00305" rot="-0 -128.353 0" scale="2.42761 2.42761 2.42761" />
-            <instance pos="1.40503 0 9.07349" rot="0 52.24 0" scale="1.69464 1.69464 1.69464" />
-            <instance pos="5.56519 0 7.16797" rot="-0 -93.2849 0" scale="2.88367 2.88367 2.88367" />
-            <instance pos="-7.8241 0 6.12793" rot="0 42.5391 0" scale="1.05078 1.05078 1.05078" />
-            <instance pos="-1.19385 0 8.85071" rot="0 73.0151 0" scale="2.27496 2.27496 2.27496" />
-            <instance pos="-3.35754 0 -6.04614" rot="-0 -86.1658 0" scale="2.29791 2.29791 2.29791" />
-            <instance pos="-6.92078 0 9.07959" rot="-0 -131.726 0" scale="1.35529 1.35529 1.35529" />
-            <instance pos="-8.46191 0 -1.54358" rot="0 142.02 0" scale="2.51202 2.51202 2.51202" />
-            <instance pos="6.63269 0 5.34058" rot="-0 -110.885 0" scale="1.81396 1.81396 1.81396" />
-            <instance pos="2.81799 0 -0.0305176" rot="0 30.0696 0" scale="1.56824 1.56824 1.56824" />
-            <instance pos="-5.36743 0 -6.35376" rot="-0 -136.362 0" scale="1.06537 1.06537 1.06537" />
-            <instance pos="-3.32581 0 9.58008" rot="-0 -6.8445 0" scale="2.05481 2.05481 2.05481" />
-            <instance pos="1.42456 0 -8.88611" rot="0 149.117 0" scale="1.2876 1.2876 1.2876" />
-            <instance pos="-6.94946 0 -2.04285" rot="0 108.82 0" scale="1.43713 1.43713 1.43713" />
-            <instance pos="-4.69482 0 -8.95203" rot="-0 -145.338 0" scale="2.71185 2.71185 2.71185" />
-            <instance pos="1.65955 0 -3.31909" rot="-0 -27.8723 0" scale="2.47186 2.47186 2.47186" />
-            <instance pos="5.78247 0 -9.48792" rot="-0 -131.166 0" scale="1.16144 1.16144 1.16144" />
-            <instance pos="0.497437 0 -7.92847" rot="-0 -144.174 0" scale="1.87109 1.87109 1.87109" />
-            <instance pos="3.34351 0 -9.58801" rot="-0 -7.6465 0" scale="1.84064 1.84064 1.84064" />
-            <instance pos="-3.14087 0 -8.48633" rot="-0 -64.5007 0" scale="1.21619 1.21619 1.21619" />
-            <instance pos="1.72058 0 8.07129" rot="-0 -104.271 0" scale="1.37384 1.37384 1.37384" />
-            <instance pos="-9.1449 0 2.28882" rot="0 99.7339 0" scale="2.12195 2.12195 2.12195" />
-            <instance pos="2.65625 0 2.31018" rot="-0 -58.1177 0" scale="2.09491 2.09491 2.09491" />
-            <instance pos="1.42639 0 2.90161" rot="-0 -14.7437 0" scale="1.65082 1.65082 1.65082" />
-            <instance pos="3.16833 0 -8.97644" rot="0 73.8721 0" scale="2.58575 2.58575 2.58575" />
-            <instance pos="-5.14099 0 6.90674" rot="-0 -42.9126 0" scale="1.97668 1.97668 1.97668" />
-            <instance pos="5.31677 0 1.25977" rot="0 7.51465 0" scale="2.46582 2.46582 2.46582" />
-            <instance pos="-4.19739 0 -0.761108" rot="0 153.732 0" scale="2.29907 2.29907 2.29907" />
-            <instance pos="8.46863 0 -8.20313" rot="0 9.01977 0" scale="1.43079 1.43079 1.43079" />
-            <instance pos="0.783691 0 5.04089" rot="0 117.301 0" scale="1.00726 1.00726 1.00726" />
-            <instance pos="4.06311 0 8.22327" rot="0 97.6794 0" scale="2.54199 2.54199 2.54199" />
-        </component>
-    </entity>
-    <entity id="140" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="-46.2354 0 -72.0752" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="0.942993 0 -5.07324" rot="0 9.2395 0" scale="1.28778 1.28778 1.28778" />
-            <instance pos="-2.34863 0 0.751343" rot="0 164.323 0" scale="2.69427 2.69427 2.69427" />
-            <instance pos="-1.78955 0 -9.57275" rot="0 55.9534 0" scale="2.47955 2.47955 2.47955" />
-            <instance pos="-2.40234 0 -2.78015" rot="0 57.4255 0" scale="1.72009 1.72009 1.72009" />
-            <instance pos="-3.69873 0 -0.0976563" rot="0 134.846 0" scale="2.10675 2.10675 2.10675" />
-            <instance pos="-0.821533 0 3.9679" rot="0 133.704 0" scale="1.41882 1.41882 1.41882" />
-            <instance pos="-6.89697 0 9.91516" rot="0 130.836 0" scale="1.90808 1.90808 1.90808" />
-            <instance pos="6.53137 0 -5.77454" rot="-0 -37.002 0" scale="2.40527 2.40527 2.40527" />
-            <instance pos="4.10217 0 -1.33728" rot="0 103.403 0" scale="1.96222 1.96222 1.96222" />
-            <instance pos="-0.596313 0 -6.4801" rot="0 117.301 0" scale="1.84131 1.84131 1.84131" />
-            <instance pos="-0.9729 0 -9.57031" rot="0 108.04 0" scale="1.66473 1.66473 1.66473" />
-            <instance pos="1.03821 0 -9.62097" rot="-0 -55.3052 0" scale="2.53748 2.53748 2.53748" />
-            <instance pos="0.985107 0 2.53784" rot="-0 -117.356 0" scale="2.95422 2.95422 2.95422" />
-            <instance pos="8.56934 0 -0.465698" rot="-0 -111.742 0" scale="2.30469 2.30469 2.30469" />
-            <instance pos="8.10852 0 4.80347" rot="-0 -161.06 0" scale="1.789 1.789 1.789" />
-            <instance pos="5.91064 0 -2.37488" rot="0 69.939 0" scale="1.55554 1.55554 1.55554" />
-            <instance pos="-2.30957 0 -8.51196" rot="0 118.861 0" scale="1.8739 1.8739 1.8739" />
-            <instance pos="-0.854492 0 -8.60229" rot="0 179.506 0" scale="1.15601 1.15601 1.15601" />
-            <instance pos="-7.17285 0 5.75195" rot="-0 -124.036 0" scale="2.6366 2.6366 2.6366" />
-            <instance pos="-5.58167 0 -1.58508" rot="-0 -51.5698 0" scale="2.5271 2.5271 2.5271" />
-            <instance pos="-8.44116 0 -3.39172" rot="0 21.8408 0" scale="1.45416 1.45416 1.45416" />
-            <instance pos="-1.67358 0 0.252686" rot="-0 -151.238 0" scale="1.99615 1.99615 1.99615" />
-            <instance pos="-1.48804 0 8.37402" rot="0 77.5195 0" scale="2.1297 2.1297 2.1297" />
-            <instance pos="0.808105 0 8.20862" rot="-0 -142.899 0" scale="1.39874 1.39874 1.39874" />
-            <instance pos="-0.964355 0 2.62573" rot="-0 -70.1257 0" scale="1.61902 1.61902 1.61902" />
-            <instance pos="0.534668 0 1.50024" rot="-0 -116.532 0" scale="2.92993 2.92993 2.92993" />
-            <instance pos="-4.15405 0 -7.34924" rot="0 13.0408 0" scale="1.0069 1.0069 1.0069" />
-            <instance pos="-7.19788 0 -2.02698" rot="0 65.1929 0" scale="2.24603 2.24603 2.24603" />
-            <instance pos="8.16467 0 -9.59961" rot="-0 -85.21 0" scale="2.73407 2.73407 2.73407" />
-            <instance pos="-0.0811768 0 -2.70081" rot="-0 -154.138 0" scale="1.81604 1.81604 1.81604" />
-            <instance pos="-6.63879 0 5.94482" rot="0 87.9675 0" scale="2.07324 2.07324 2.07324" />
-            <instance pos="4.09973 0 -3.31604" rot="0 159.181 0" scale="2.52332 2.52332 2.52332" />
-            <instance pos="-8.90747 0 -0.575562" rot="-0 -173.09 0" scale="2.8562 2.8562 2.8562" />
-            <instance pos="2.854 0 -0.933228" rot="0 77.926 0" scale="1.51709 1.51709 1.51709" />
-            <instance pos="9.94385 0 5.50415" rot="0 148.788 0" scale="1.45001 1.45001 1.45001" />
-            <instance pos="6.87683 0 -6.17554" rot="0 167.816 0" scale="2.31396 2.31396 2.31396" />
-            <instance pos="-3.43201 0 -9.67529" rot="0 60.0842 0" scale="2.98383 2.98383 2.98383" />
-            <instance pos="0.441284 0 9.9762" rot="-0 -53.5693 0" scale="1.1496 1.1496 1.1496" />
-            <instance pos="7.3291 0 0.957642" rot="-0 -112.039 0" scale="1.82513 1.82513 1.82513" />
-            <instance pos="4.2865 0 1.88477" rot="-0 -112.874 0" scale="1.58014 1.58014 1.58014" />
-            <instance pos="2.4408 0 7.3584" rot="0 156.687 0" scale="2.3067 2.3067 2.3067" />
-            <instance pos="1.00952 0 7.46033" rot="0 47.9004 0" scale="1.33392 1.33392 1.33392" />
-            <instance pos="2.6062 0 -3.18176" rot="-0 -30.9924 0" scale="1.70276 1.70276 1.70276" />
-            <instance pos="2.95715 0 -1.13586" rot="0 5.37231 0" scale="1.41296 1.41296 1.41296" />
-            <instance pos="8.16162 0 0.917358" rot="-0 -67.4121 0" scale="1.45593 1.45593 1.45593" />
-            <instance pos="2.61353 0 5.70984" rot="0 93.6255 0" scale="1.44452 1.44452 1.44452" />
-            <instance pos="0.713501 0 -5.01953" rot="-0 -88.5828 0" scale="2.6535 2.6535 2.6535" />
-            <instance pos="5.49438 0 -9.23157" rot="-0 -11.8762 0" scale="1.28253 1.28253 1.28253" />
-            <instance pos="7.28333 0 -9.97437" rot="-0 -117.806 0" scale="1.75415 1.75415 1.75415" />
-            <instance pos="5.53467 0 -1.82861" rot="0 34.6509 0" scale="2.8595 2.8595 2.8595" />
-        </component>
-    </entity>
-    <entity id="141" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="55.5469 0 -22.2217" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="5.64392 0 6.43005" rot="0 74.0259 0" scale="2.29803 2.29803 2.29803" />
-            <instance pos="2.8772 0 5.73242" rot="-0 -92.8784 0" scale="1.99609 1.99609 1.99609" />
-            <instance pos="4.65271 0 -2.03308" rot="-0 -179.066 0" scale="2.47803 2.47803 2.47803" />
-            <instance pos="2.1106 0 -4.06616" rot="-0 -41.3196 0" scale="1.94379 1.94379 1.94379" />
-            <instance pos="8.88855 0 6.02783" rot="0 151.534 0" scale="2.74744 2.74744 2.74744" />
-            <instance pos="4.06433 0 1.42395" rot="-0 -15.293 0" scale="2.54504 2.54504 2.54504" />
-            <instance pos="0.447388 0 0.147705" rot="0 14.6558 0" scale="2.25854 2.25854 2.25854" />
-            <instance pos="6.35254 0 -1.35071" rot="0 98.4814 0" scale="2.16907 2.16907 2.16907" />
-            <instance pos="-1.0321 0 1.51489" rot="-0 -23.1152 0" scale="2.45111 2.45111 2.45111" />
-            <instance pos="-2.54639 0 -2.06543" rot="-0 -128.188 0" scale="1.46088 1.46088 1.46088" />
-            <instance pos="-6.10657 0 5.54932" rot="0 120.223 0" scale="2.09113 2.09113 2.09113" />
-            <instance pos="-9.77966 0 -7.68738" rot="0 125.079 0" scale="1.50488 1.50488 1.50488" />
-            <instance pos="-0.756836 0 -3.02124" rot="-0 -35.2332 0" scale="2.56024 2.56024 2.56024" />
-            <instance pos="-2.09839 0 -1.14746" rot="-0 -97.5586 0" scale="2.2395 2.2395 2.2395" />
-            <instance pos="-9.1272 0 -2.57996" rot="0 56.283 0" scale="1.39453 1.39453 1.39453" />
-            <instance pos="-7.34741 0 -7.51343" rot="0 152.018 0" scale="1.12091 1.12091 1.12091" />
-            <instance pos="6.24207 0 5.45288" rot="0 178.989 0" scale="2.07367 2.07367 2.07367" />
-            <instance pos="6.55457 0 -7.66113" rot="0 70.9827 0" scale="2.03705 2.03705 2.03705" />
-            <instance pos="6.68091 0 9.20227" rot="-0 -46.9116 0" scale="2.06012 2.06012 2.06012" />
-            <instance pos="-4.87305 0 0.553589" rot="0 155.775 0" scale="2.47198 2.47198 2.47198" />
-            <instance pos="2.15454 0 -8.58582" rot="0 17.5232 0" scale="1.08795 1.08795 1.08795" />
-            <instance pos="3.34656 0 -6.37695" rot="0 77.2119 0" scale="2.91974 2.91974 2.91974" />
-            <instance pos="-1.47156 0 7.0343" rot="-0 -162.455 0" scale="1.70209 1.70209 1.70209" />
-            <instance pos="-5.83984 0 6.21643" rot="0 20.6873 0" scale="2.54828 2.54828 2.54828" />
-            <instance pos="7.33521 0 -6.71326" rot="0 57.4585 0" scale="2.04718 2.04718 2.04718" />
-            <instance pos="-0.498657 0 7.50549" rot="0 91.2964 0" scale="1.11389 1.11389 1.11389" />
-            <instance pos="-1.96106 0 -7.74963" rot="0 38.1995 0" scale="2.90704 2.90704 2.90704" />
-            <instance pos="-6.19263 0 9.99756" rot="-0 -55.9973 0" scale="1.12494 1.12494 1.12494" />
-            <instance pos="-7.19727 0 5.93933" rot="-0 -59.9524 0" scale="2.99323 2.99323 2.99323" />
-            <instance pos="-9.96765 0 -9.14246" rot="0 78.783 0" scale="2.2561 2.2561 2.2561" />
-            <instance pos="3.75122 0 3.87939" rot="0 150.238 0" scale="2.48438 2.48438 2.48438" />
-            <instance pos="-1.83533 0 5.74097" rot="0 120.828 0" scale="2.01233 2.01233 2.01233" />
-            <instance pos="-7.26013 0 3.18604" rot="-0 -144.327 0" scale="2.81543 2.81543 2.81543" />
-            <instance pos="6.24146 0 -4.88037" rot="-0 -154.358 0" scale="2.64301 2.64301 2.64301" />
-            <instance pos="-6.38245 0 1.14441" rot="0 160.499 0" scale="2.71625 2.71625 2.71625" />
-            <instance pos="3.86475 0 3.10974" rot="0 69.2139 0" scale="2.30591 2.30591 2.30591" />
-            <instance pos="-3.00659 0 0.286255" rot="-0 -131.155 0" scale="2.50104 2.50104 2.50104" />
-            <instance pos="8.21838 0 8.80249" rot="0 163.191 0" scale="2.48145 2.48145 2.48145" />
-            <instance pos="-2.49634 0 5.9668" rot="0 132.429 0" scale="2.60724 2.60724 2.60724" />
-            <instance pos="-7.41882 0 -9.91089" rot="0 115.038 0" scale="1.63647 1.63647 1.63647" />
-            <instance pos="3.57483 0 -3.5553" rot="-0 -36.7712 0" scale="2.38477 2.38477 2.38477" />
-            <instance pos="-2.65564 0 -0.0109863" rot="-0 -66.8298 0" scale="1.13855 1.13855 1.13855" />
-            <instance pos="9.69055 0 5.45959" rot="-0 -108.853 0" scale="1.13477 1.13477 1.13477" />
-            <instance pos="3.52661 0 -4.51782" rot="-0 -2.87842 0" scale="1.4198 1.4198 1.4198" />
-            <instance pos="-8.84216 0 -2.6886" rot="0 86.6492 0" scale="1.39905 1.39905 1.39905" />
-            <instance pos="8.78845 0 -1.16882" rot="-0 -167.3 0" scale="2.3913 2.3913 2.3913" />
-            <instance pos="1.37268 0 -5.56519" rot="0 148.414 0" scale="2.49884 2.49884 2.49884" />
-            <instance pos="5.95093 0 -8.58582" rot="-0 -7.85523 0" scale="2.10687 2.10687 2.10687" />
-            <instance pos="-8.41736 0 -2.51831" rot="-0 -163.971 0" scale="2.32404 2.32404 2.32404" />
-            <instance pos="4.00818 0 0.0500488" rot="-0 -160.708 0" scale="1.67712 1.67712 1.67712" />
-        </component>
-    </entity>
-    <entity id="142" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="-54.7363 0 -16.8311" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-6.27869 0 -8.4668" rot="0 104.93 0" scale="1.16449 1.16449 1.16449" />
-            <instance pos="4.33838 0 3.31604" rot="-0 -126.079 0" scale="2.23517 2.23517 2.23517" />
-            <instance pos="-9.62585 0 6.80298" rot="-0 -82.0899 0" scale="2.32507 2.32507 2.32507" />
-            <instance pos="-6.56494 0 9.76868" rot="0 63.8196 0" scale="2.75696 2.75696 2.75696" />
-            <instance pos="1.49902 0 9.375" rot="0 89.8901 0" scale="2.74371 2.74371 2.74371" />
-            <instance pos="6.71936 0 -6.26465" rot="0 69.126 0" scale="1.91321 1.91321 1.91321" />
-            <instance pos="-2.35413 0 -1.32446" rot="-0 -65.4895 0" scale="1.8053 1.8053 1.8053" />
-            <instance pos="-1.0199 0 -4.68689" rot="0 77.0251 0" scale="2.15436 2.15436 2.15436" />
-            <instance pos="2.00195 0 -5.91492" rot="-0 -72.1253 0" scale="2.76971 2.76971 2.76971" />
-            <instance pos="-1.22253 0 0.841064" rot="-0 -63.9624 0" scale="2.8255 2.8255 2.8255" />
-            <instance pos="3.28613 0 -9.36035" rot="-0 -67.5 0" scale="2.37396 2.37396 2.37396" />
-            <instance pos="-7.41516 0 -5.14526" rot="0 12.3816 0" scale="1.89313 1.89313 1.89313" />
-            <instance pos="-8.86353 0 7.23633" rot="0 166.19 0" scale="2.68317 2.68317 2.68317" />
-            <instance pos="-8.57178 0 4.53674" rot="0 111.423 0" scale="1.92163 1.92163 1.92163" />
-            <instance pos="-5.99731 0 7.33398" rot="-0 -124.058 0" scale="1.1925 1.1925 1.1925" />
-            <instance pos="0.0280762 0 -3.32581" rot="0 64.0613 0" scale="2.29974 2.29974 2.29974" />
-            <instance pos="-0.464478 0 -7.84119" rot="-0 -163.103 0" scale="1.17865 1.17865 1.17865" />
-            <instance pos="8.43933 0 7.10754" rot="0 178.099 0" scale="1.71741 1.71741 1.71741" />
-            <instance pos="-2.52136 0 6.40625" rot="0 36.178 0" scale="2.30133 2.30133 2.30133" />
-            <instance pos="6.19141 0 2.68616" rot="0 114.73 0" scale="2.89209 2.89209 2.89209" />
-            <instance pos="5.05798 0 -3.55774" rot="0 101.843 0" scale="1.45483 1.45483 1.45483" />
-            <instance pos="-1.06995 0 -4.27795" rot="0 149.854 0" scale="1.54529 1.54529 1.54529" />
-            <instance pos="-5.12573 0 1.01074" rot="-0 -43.2202 0" scale="1.86963 1.86963 1.86963" />
-            <instance pos="7.55676 0 -9.06067" rot="0 140.581 0" scale="1.62939 1.62939 1.62939" />
-            <instance pos="5.29053 0 -5.56763" rot="-0 -22.3792 0" scale="2.46405 2.46405 2.46405" />
-            <instance pos="9.87122 0 4.93164" rot="0 156.533 0" scale="2.80396 2.80396 2.80396" />
-            <instance pos="-6.67358 0 2.31079" rot="-0 -61.3696 0" scale="1.44562 1.44562 1.44562" />
-            <instance pos="4.70886 0 -1.8866" rot="-0 -103.667 0" scale="2.16235 2.16235 2.16235" />
-            <instance pos="-9.95422 0 9.73328" rot="-0 -19.3799 0" scale="2.16272 2.16272 2.16272" />
-            <instance pos="-1.41479 0 -0.828857" rot="0 128.958 0" scale="2.20856 2.20856 2.20856" />
-            <instance pos="-1.5509 0 1.97693" rot="0 4.84497 0" scale="1.2063 1.2063 1.2063" />
-            <instance pos="-5.16724 0 2.02087" rot="0 40.199 0" scale="1.08319 1.08319 1.08319" />
-            <instance pos="-6.13708 0 -2.29248" rot="0 11.9531 0" scale="2.76111 2.76111 2.76111" />
-            <instance pos="5.24597 0 -4.74304" rot="-0 -155.995 0" scale="1.04065 1.04065 1.04065" />
-            <instance pos="6.83167 0 -5.31311" rot="-0 -54.1736 0" scale="1.20764 1.20764 1.20764" />
-            <instance pos="4.21631 0 4.10828" rot="0 18.9294 0" scale="1.17529 1.17529 1.17529" />
-            <instance pos="8.50769 0 7.97363" rot="0 122.531 0" scale="1.97339 1.97339 1.97339" />
-            <instance pos="5.37903 0 4.88953" rot="0 49.5264 0" scale="2.39819 2.39819 2.39819" />
-            <instance pos="-1.45935 0 0.626831" rot="0 84.2102 0" scale="2.63458 2.63458 2.63458" />
-            <instance pos="0.748291 0 -8.04565" rot="-0 -87.2315 0" scale="2.66357 2.66357 2.66357" />
-            <instance pos="-4.5282 0 6.90979" rot="-0 -161.993 0" scale="2.26764 2.26764 2.26764" />
-            <instance pos="2.36145 0 -2.84973" rot="-0 -10.5798 0" scale="2.44556 2.44556 2.44556" />
-            <instance pos="9.61975 0 7.99194" rot="-0 -120.059 0" scale="1.05084 1.05084 1.05084" />
-            <instance pos="6.41846 0 1.77063" rot="0 120.498 0" scale="2.46448 2.46448 2.46448" />
-            <instance pos="-1.52527 0 0.151978" rot="0 3.82324 0" scale="2.11578 2.11578 2.11578" />
-            <instance pos="-0.078125 0 1.00586" rot="-0 -31.3989 0" scale="1.66357 1.66357 1.66357" />
-            <instance pos="4.58801 0 -4.51782" rot="0 135.198 0" scale="1.64911 1.64911 1.64911" />
-            <instance pos="9.81873 0 0.900879" rot="-0 -35.6067 0" scale="1.43561 1.43561 1.43561" />
-            <instance pos="-4.03809 0 -4.90784" rot="-0 -49.823 0" scale="1.24384 1.24384 1.24384" />
-            <instance pos="-5.3595 0 7.80457" rot="-0 -42.0337 0" scale="2.0993 2.0993 2.0993" />
-        </component>
-    </entity>
-    <entity id="143" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="71.5332 0 -41.5283" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="5.01038 0 -1.14258" rot="0 5.82275 0" scale="1.86432 1.86432 1.86432" />
-            <instance pos="-3.73901 0 4.18091" rot="-0 -119.114 0" scale="1.36047 1.36047 1.36047" />
-            <instance pos="-1.18469 0 -6.83167" rot="0 67.9834 0" scale="2.84491 2.84491 2.84491" />
-            <instance pos="6.16455 0 9.97009" rot="0 57.3926 0" scale="2.16534 2.16534 2.16534" />
-            <instance pos="-1.92871 0 8.57605" rot="-0 -51.3501 0" scale="1.21863 1.21863 1.21863" />
-            <instance pos="-4.7345 0 -4.58801" rot="-0 -118.246 0" scale="1.6803 1.6803 1.6803" />
-            <instance pos="0.125122 0 9.94995" rot="-0 -134.341 0" scale="2.1131 2.1131 2.1131" />
-            <instance pos="1.44958 0 3.94653" rot="0 105.227 0" scale="2.76733 2.76733 2.76733" />
-            <instance pos="-8.53333 0 9.94446" rot="-0 -51.9214 0" scale="1.38452 1.38452 1.38452" />
-            <instance pos="-6.81091 0 -0.349731" rot="-0 -127.716 0" scale="2.31805 2.31805 2.31805" />
-            <instance pos="6.24451 0 2.82715" rot="-0 -43.5498 0" scale="2.2821 2.2821 2.2821" />
-            <instance pos="9.31213 0 7.31445" rot="-0 -26.7297 0" scale="1.0426 1.0426 1.0426" />
-            <instance pos="7.28088 0 -9.19128" rot="-0 -52.1301 0" scale="2.36182 2.36182 2.36182" />
-            <instance pos="1.26526 0 5.02563" rot="-0 -157.896 0" scale="1.50897 1.50897 1.50897" />
-            <instance pos="9.58862 0 2.86987" rot="0 86.1987 0" scale="2.65057 2.65057 2.65057" />
-            <instance pos="-2.11975 0 9.2395" rot="0 178.857 0" scale="2.43158 2.43158 2.43158" />
-            <instance pos="6.38611 0 6.08765" rot="-0 -42.8247 0" scale="1.06042 1.06042 1.06042" />
-            <instance pos="-7.35901 0 -7.63611" rot="0 37.4963 0" scale="1.21082 1.21082 1.21082" />
-            <instance pos="-2.3877 0 9.46777" rot="-0 -91.3843 0" scale="2.05231 2.05231 2.05231" />
-            <instance pos="-6.55396 0 -7.16736" rot="-0 -101.547 0" scale="2.72198 2.72198 2.72198" />
-            <instance pos="0.942993 0 0.268555" rot="0 95.5261 0" scale="2.55048 2.55048 2.55048" />
-            <instance pos="-5.12146 0 -2.31323" rot="-0 -73.6194 0" scale="2.35419 2.35419 2.35419" />
-            <instance pos="5.30701 0 -7.16797" rot="0 110.314 0" scale="2.10626 2.10626 2.10626" />
-            <instance pos="-7.03369 0 -2.34985" rot="-0 -107.314 0" scale="1.2995 1.2995 1.2995" />
-            <instance pos="6.90186 0 9.91028" rot="-0 -82.1228 0" scale="1.31232 1.31232 1.31232" />
-            <instance pos="2.453 0 -5.28992" rot="0 43.3191 0" scale="2.0921 2.0921 2.0921" />
-            <instance pos="7.70691 0 -3.50647" rot="-0 -64.1931 0" scale="2.46655 2.46655 2.46655" />
-            <instance pos="-3.43994 0 2.1936" rot="0 31.311 0" scale="2.39722 2.39722 2.39722" />
-            <instance pos="-3.49731 0 6.14014" rot="-0 -100.47 0" scale="2.48639 2.48639 2.48639" />
-            <instance pos="9.25476 0 -2.65381" rot="-0 -125.486 0" scale="1.05042 1.05042 1.05042" />
-            <instance pos="-7.61719 0 -0.197144" rot="0 112.478 0" scale="2.07245 2.07245 2.07245" />
-            <instance pos="0.0128174 0 6.40991" rot="0 58.2166 0" scale="2.34619 2.34619 2.34619" />
-            <instance pos="-9.22668 0 -2.8418" rot="0 41.2097 0" scale="1.12323 1.12323 1.12323" />
-            <instance pos="1.08765 0 2.20154" rot="0 62.8088 0" scale="2.57751 2.57751 2.57751" />
-            <instance pos="-8.05481 0 0.432739" rot="0 15.6116 0" scale="2.39844 2.39844 2.39844" />
-            <instance pos="7.27234 0 -5.80872" rot="-0 -3.55958 0" scale="2.82477 2.82477 2.82477" />
-            <instance pos="-7.96875 0 -9.26697" rot="-0 -85.979 0" scale="1.43359 1.43359 1.43359" />
-            <instance pos="8.16895 0 -8.9209" rot="-0 -67.3132 0" scale="1.99463 1.99463 1.99463" />
-            <instance pos="-3.45703 0 -3.12622" rot="-0 -126.606 0" scale="2.70398 2.70398 2.70398" />
-            <instance pos="2.95105 0 -4.12537" rot="-0 -166.816 0" scale="2.10925 2.10925 2.10925" />
-            <instance pos="-3.61633 0 -3.2959" rot="0 144.459 0" scale="2.03845 2.03845 2.03845" />
-            <instance pos="-2.36877 0 -6.52405" rot="0 55.2832 0" scale="1.8454 1.8454 1.8454" />
-            <instance pos="6.36597 0 -9.06189" rot="0 91.8787 0" scale="1.28387 1.28387 1.28387" />
-            <instance pos="4.82544 0 -9.25598" rot="-0 -75.2673 0" scale="2.32343 2.32343 2.32343" />
-            <instance pos="6.22559 0 9.4812" rot="-0 -60.6006 0" scale="1.21887 1.21887 1.21887" />
-            <instance pos="6.02051 0 9.08508" rot="0 133.341 0" scale="1.1463 1.1463 1.1463" />
-            <instance pos="4.14063 0 -9.74121" rot="-0 -139.977 0" scale="2.71802 2.71802 2.71802" />
-            <instance pos="-3.66333 0 9.52698" rot="-0 -38.4192 0" scale="2.68878 2.68878 2.68878" />
-            <instance pos="2.74231 0 -9.45496" rot="0 11.1401 0" scale="2.16602 2.16602 2.16602" />
-            <instance pos="-8.20374 0 -9.70459" rot="0 126.288 0" scale="2.63641 2.63641 2.63641" />
-        </component>
-    </entity>
-    <entity id="144" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="61.0742 0 -73.6865" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-8.7854 0 -5.85083" rot="0 124.135 0" scale="1.90881 1.90881 1.90881" />
-            <instance pos="7.74536 0 -4.81628" rot="0 17.0178 0" scale="1.8407 1.8407 1.8407" />
-            <instance pos="2.31262 0 -4.31519" rot="-0 -95.5701 0" scale="2.78333 2.78333 2.78333" />
-            <instance pos="0.274048 0 6.39709" rot="0 167.41 0" scale="2.21527 2.21527 2.21527" />
-            <instance pos="-6.0553 0 -1.91162" rot="0 71.499 0" scale="2.53497 2.53497 2.53497" />
-            <instance pos="-2.52625 0 4.0918" rot="0 68.4558 0" scale="2.94824 2.94824 2.94824" />
-            <instance pos="1.76208 0 -3.83179" rot="0 135.879 0" scale="1.39191 1.39191 1.39191" />
-            <instance pos="-7.46277 0 -0.687256" rot="0 105.985 0" scale="1.30408 1.30408 1.30408" />
-            <instance pos="4.7229 0 1.13159" rot="-0 -165.289 0" scale="1.0553 1.0553 1.0553" />
-            <instance pos="-3.78113 0 1.41724" rot="0 122.563 0" scale="2.85211 2.85211 2.85211" />
-            <instance pos="-5.77454 0 -2.46155" rot="0 78.2007 0" scale="2.92566 2.92566 2.92566" />
-            <instance pos="-2.77588 0 -8.72009" rot="0 116.356 0" scale="1.81824 1.81824 1.81824" />
-            <instance pos="5.755 0 -7.24731" rot="0 160.961 0" scale="2.57959 2.57959 2.57959" />
-            <instance pos="5.10193 0 6.99463" rot="0 85.0452 0" scale="1.68634 1.68634 1.68634" />
-            <instance pos="-6.97937 0 -1.10229" rot="-0 -121.542 0" scale="2.49622 2.49622 2.49622" />
-            <instance pos="-4.36829 0 2.07581" rot="0 94.7461 0" scale="2.05005 2.05005 2.05005" />
-            <instance pos="4.59778 0 7.30713" rot="0 68.4119 0" scale="1.03387 1.03387 1.03387" />
-            <instance pos="-1.28052 0 -3.83423" rot="-0 -146.118 0" scale="1.71399 1.71399 1.71399" />
-            <instance pos="3.06824 0 -4.51965" rot="0 137.208 0" scale="1.65662 1.65662 1.65662" />
-            <instance pos="8.78357 0 -1.76636" rot="-0 -47.8784 0" scale="2.04565 2.04565 2.04565" />
-            <instance pos="6.66016 0 6.53381" rot="0 131.287 0" scale="2.41064 2.41064 2.41064" />
-            <instance pos="-2.35291 0 2.28149" rot="0 84.2871 0" scale="2.5769 2.5769 2.5769" />
-            <instance pos="-6.61072 0 1.1554" rot="0 153.545 0" scale="1.65125 1.65125 1.65125" />
-            <instance pos="9.9292 0 -4.45496" rot="0 19.2371 0" scale="2.85529 2.85529 2.85529" />
-            <instance pos="7.70081 0 2.05505" rot="0 4.77905 0" scale="2.01886 2.01886 2.01886" />
-            <instance pos="0.935059 0 -0.800781" rot="0 73.7842 0" scale="2.5459 2.5459 2.5459" />
-            <instance pos="9.60754 0 -9.07776" rot="0 130.056 0" scale="2.66602 2.66602 2.66602" />
-            <instance pos="-2.9541 0 1.55945" rot="0 11.6016 0" scale="1.78284 1.78284 1.78284" />
-            <instance pos="6.33179 0 -2.12524" rot="-0 -89.8682 0" scale="1.7337 1.7337 1.7337" />
-            <instance pos="-1.38916 0 3.7854" rot="-0 -32.8601 0" scale="1.77075 1.77075 1.77075" />
-            <instance pos="6.44714 0 3.41492" rot="0 137.867 0" scale="1.07813 1.07813 1.07813" />
-            <instance pos="5.33691 0 -1.91589" rot="0 154.49 0" scale="1.63635 1.63635 1.63635" />
-            <instance pos="-3.48328 0 -7.11975" rot="-0 -40.3967 0" scale="1.24701 1.24701 1.24701" />
-            <instance pos="4.17908 0 -1.5863" rot="0 81.3647 0" scale="1.53003 1.53003 1.53003" />
-            <instance pos="0.234985 0 3.39966" rot="0 161.598 0" scale="2.7063 2.7063 2.7063" />
-            <instance pos="-0.267944 0 3.68469" rot="0 147.931 0" scale="1.97754 1.97754 1.97754" />
-            <instance pos="0.0689697 0 3.34229" rot="-0 -158.566 0" scale="1.31677 1.31677 1.31677" />
-            <instance pos="7.11975 0 -6.53503" rot="-0 -129.232 0" scale="1.48132 1.48132 1.48132" />
-            <instance pos="1.39832 0 4.2749" rot="0 144.393 0" scale="2.06061 2.06061 2.06061" />
-            <instance pos="7.38708 0 -3.81714" rot="-0 -68.2581 0" scale="2.37219 2.37219 2.37219" />
-            <instance pos="-0.844727 0 5.41321" rot="-0 -55.0854 0" scale="1.01764 1.01764 1.01764" />
-            <instance pos="5.39001 0 9.8291" rot="0 131.924 0" scale="2.91101 2.91101 2.91101" />
-            <instance pos="6.96716 0 -9.42627" rot="0 32.926 0" scale="1.59247 1.59247 1.59247" />
-            <instance pos="-9.81445 0 -4.84009" rot="0 90.4944 0" scale="1.63995 1.63995 1.63995" />
-            <instance pos="8.79395 0 -2.37122" rot="-0 -34.6619 0" scale="2.99048 2.99048 2.99048" />
-            <instance pos="-2.07581 0 1.40259" rot="0 168.651 0" scale="1.98444 1.98444 1.98444" />
-            <instance pos="-6.9281 0 0.459595" rot="-0 -177.627 0" scale="2.94482 2.94482 2.94482" />
-            <instance pos="-2.76306 0 4.45496" rot="0 98.5254 0" scale="1.10437 1.10437 1.10437" />
-            <instance pos="9.35303 0 3.4082" rot="0 29.0149 0" scale="2.69263 2.69263 2.69263" />
-            <instance pos="-2.86865 0 -2.40906" rot="-0 -2.95533 0" scale="2.99591 2.99591 2.99591" />
-        </component>
-    </entity>
-    <entity id="145" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="59.5654 0 65.8447" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="2.01904 0 7.85645" rot="0 83.9355 0" scale="1.73773 1.73773 1.73773" />
-            <instance pos="-1.57104 0 -0.837402" rot="0 63.9404 0" scale="1.90546 1.90546 1.90546" />
-            <instance pos="-3.52112 0 -8.98499" rot="-0 -75.487 0" scale="2.13995 2.13995 2.13995" />
-            <instance pos="-3.8147 0 -8.30688" rot="-0 -57.2937 0" scale="2.1922 2.1922 2.1922" />
-            <instance pos="-8.60474 0 7.62573" rot="-0 -78.4863 0" scale="1.16687 1.16687 1.16687" />
-            <instance pos="-0.631714 0 1.0321" rot="-0 -22.5879 0" scale="2.64697 2.64697 2.64697" />
-            <instance pos="6.96289 0 8.69141" rot="0 71.4551 0" scale="2.75916 2.75916 2.75916" />
-            <instance pos="1.54358 0 -7.52502" rot="0 5.07568 0" scale="2.49371 2.49371 2.49371" />
-            <instance pos="4.74609 0 2.2583" rot="-0 -18.0835 0" scale="2.59015 2.59015 2.59015" />
-            <instance pos="-2.78442 0 1.83899" rot="-0 -143.02 0" scale="2.30231 2.30231 2.30231" />
-            <instance pos="-7.55493 0 -1.50574" rot="0 54.1736 0" scale="2.3548 2.3548 2.3548" />
-            <instance pos="7.84424 0 6.78772" rot="0 113.785 0" scale="1.40277 1.40277 1.40277" />
-            <instance pos="-8.84155 0 7.26685" rot="0 10.8215 0" scale="2.30902 2.30902 2.30902" />
-            <instance pos="-9.63867 0 -9.33838" rot="-0 -154.281 0" scale="1.54907 1.54907 1.54907" />
-            <instance pos="5.15381 0 8.22205" rot="0 168.508 0" scale="2.05847 2.05847 2.05847" />
-            <instance pos="8.18542 0 -1.19385" rot="-0 -22.2583 0" scale="2.83331 2.83331 2.83331" />
-            <instance pos="-5.86975 0 -6.6394" rot="0 55.5139 0" scale="1.59772 1.59772 1.59772" />
-            <instance pos="4.73755 0 7.39807" rot="0 39.6497 0" scale="1.84985 1.84985 1.84985" />
-            <instance pos="7.98401 0 2.11792" rot="0 134.462 0" scale="2.59949 2.59949 2.59949" />
-            <instance pos="-0.544434 0 4.776" rot="-0 -178.737 0" scale="2.10931 2.10931 2.10931" />
-            <instance pos="4.07532 0 8.94287" rot="0 149.93 0" scale="1.95325 1.95325 1.95325" />
-            <instance pos="6.31287 0 5.26672" rot="0 172.617 0" scale="2.70264 2.70264 2.70264" />
-            <instance pos="6.9928 0 3.37219" rot="-0 -138.845 0" scale="1.55481 1.55481 1.55481" />
-            <instance pos="-5.16907 0 -4.48608" rot="0 69.0601 0" scale="1.21503 1.21503 1.21503" />
-            <instance pos="-9.17969 0 2.61353" rot="-0 -0.351553 0" scale="2.34503 2.34503 2.34503" />
-            <instance pos="-6.4032 0 -6.69434" rot="0 21.4124 0" scale="2.89032 2.89032 2.89032" />
-            <instance pos="3.90198 0 -3.38135" rot="-0 -148.129 0" scale="2.59912 2.59912 2.59912" />
-            <instance pos="-3.72253 0 -1.09497" rot="-0 -48.8123 0" scale="2.0448 2.0448 2.0448" />
-            <instance pos="-3.89282 0 5.6665" rot="0 106.886 0" scale="2.46533 2.46533 2.46533" />
-            <instance pos="-9.86267 0 -1.12488" rot="0 170.684 0" scale="1.7312 1.7312 1.7312" />
-            <instance pos="8.59741 0 -9.56299" rot="0 169.014 0" scale="2.75458 2.75458 2.75458" />
-            <instance pos="7.05078 0 2.40723" rot="0 68.1592 0" scale="1.65308 1.65308 1.65308" />
-            <instance pos="6.09131 0 -5.40833" rot="0 15.5017 0" scale="1.979 1.979 1.979" />
-            <instance pos="-2.97852 0 -9.84741" rot="-0 -102.008 0" scale="2.32849 2.32849 2.32849" />
-            <instance pos="-8.37036 0 -0.148315" rot="0 119.147 0" scale="1.64124 1.64124 1.64124" />
-            <instance pos="4.19434 0 -4.45313" rot="-0 -84.1663 0" scale="1.50452 1.50452 1.50452" />
-            <instance pos="3.84155 0 -6.42517" rot="0 155.995 0" scale="1.77356 1.77356 1.77356" />
-            <instance pos="5.37537 0 -1.36047" rot="0 98.7671 0" scale="2.8208 2.8208 2.8208" />
-            <instance pos="-3.28857 0 8.83423" rot="0 97.9651 0" scale="2.72668 2.72668 2.72668" />
-            <instance pos="-8.95813 0 -7.57874" rot="0 90.4614 0" scale="2.724 2.724 2.724" />
-            <instance pos="1.84204 0 -3.00415" rot="0 90.5164 0" scale="1.20911 1.20911 1.20911" />
-            <instance pos="8.86353 0 1.65466" rot="0 91.3403 0" scale="1.63171 1.63171 1.63171" />
-            <instance pos="-6.77795 0 -7.20093" rot="-0 -164.707 0" scale="2.57605 2.57605 2.57605" />
-            <instance pos="9.71497 0 -5.80139" rot="0 173.716 0" scale="1.34644 1.34644 1.34644" />
-            <instance pos="-5.50964 0 -8.06885" rot="-0 -2.1753 0" scale="1.36853 1.36853 1.36853" />
-            <instance pos="-3.80859 0 4.83887" rot="-0 -178.055 0" scale="2.71997 2.71997 2.71997" />
-            <instance pos="8.703 0 1.1084" rot="-0 -119.883 0" scale="2.10236 2.10236 2.10236" />
-            <instance pos="-6.37512 0 -8.3844" rot="-0 -142.383 0" scale="1.56702 1.56702 1.56702" />
-            <instance pos="-9.40247 0 0.651855" rot="-0 -1.64795 0" scale="2.30731 2.30731 2.30731" />
-            <instance pos="3.60107 0 4.65271" rot="-0 -90.3186 0" scale="2.82965 2.82965 2.82965" />
-        </component>
-    </entity>
-    <entity id="146" netflags="0" netdistance="0" groupflags="0">
-        <component type="InstancedModel" netflags="0">
-            <transform pos="10.8838 0 -3.46191" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Mushroom.mdl" />
-            <material name="Materials/Mushroom.xml" />
-            <instances relative="true" count="50" />
-            <instance pos="-1.83899 0 1.41907" rot="-0 -45.3296 0" scale="1.99725 1.99725 1.99725" />
-            <instance pos="9.91028 0 -6.13281" rot="-0 -123.783 0" scale="2.58899 2.58899 2.58899" />
-            <instance pos="3.03589 0 1.06506" rot="0 15.7764 0" scale="2.73761 2.73761 2.73761" />
-            <instance pos="7.39746 0 3.97522" rot="0 52.7124 0" scale="1.25647 1.25647 1.25647" />
-            <instance pos="-9.24438 0 4.10217" rot="0 165.146 0" scale="2.22467 2.22467 2.22467" />
-            <instance pos="-1.1615 0 -2.36084" rot="0 171.156 0" scale="1.55072 1.55072 1.55072" />
-            <instance pos="-8.91907 0 -8.94592" rot="-0 -15.9851 0" scale="1.63367 1.63367 1.63367" />
-            <instance pos="5.14648 0 -6.25244" rot="-0 -47.0215 0" scale="1.935 1.935 1.935" />
-            <instance pos="-6.63513 0 -6.58875" rot="-0 -159.401 0" scale="2.27264 2.27264 2.27264" />
-            <instance pos="4.21082 0 9.69666" rot="0 47.9443 0" scale="2.65027 2.65027 2.65027" />
-            <instance pos="-8.05664 0 -8.16162" rot="-0 -120.948 0" scale="2.43439 2.43439 2.43439" />
-            <instance pos="7.53723 0 -4.15649" rot="0 55.5798 0" scale="2.69153 2.69153 2.69153" />
-            <instance pos="-5.97473 0 6.87561" rot="-0 -46.6479 0" scale="2.49786 2.49786 2.49786" />
-            <instance pos="-0.614624 0 2.46094" rot="0 11.5576 0" scale="1.03448 1.03448 1.03448" />
-            <instance pos="-9.91577 0 2.1405" rot="0 146.228 0" scale="2.27972 2.27972 2.27972" />
-            <instance pos="-1.58508 0 -0.811157" rot="-0 -60.9082 0" scale="2.11218 2.11218 2.11218" />
-            <instance pos="6.74866 0 0.0335693" rot="0 73.0371 0" scale="2.63599 2.63599 2.63599" />
-            <instance pos="1.82129 0 6.98853" rot="-0 -14.5789 0" scale="1.5415 1.5415 1.5415" />
-            <instance pos="2.19116 0 9.93896" rot="-0 -149.326 0" scale="1.31354 1.31354 1.31354" />
-            <instance pos="-8.02185 0 2.59338" rot="0 63.1165 0" scale="2.09973 2.09973 2.09973" />
-            <instance pos="4.02222 0 8.93005" rot="-0 -148.491 0" scale="1.05164 1.05164 1.05164" />
-            <instance pos="5.57861 0 -4.53369" rot="0 76.5308 0" scale="1.95099 1.95099 1.95099" />
-            <instance pos="9.67773 0 -5.0293" rot="-0 -37.7271 0" scale="1.93359 1.93359 1.93359" />
-            <instance pos="5.27527 0 -2.75146" rot="0 13.2385 0" scale="1.12317 1.12317 1.12317" />
-            <instance pos="9.31213 0 -7.38098" rot="0 147.931 0" scale="1.98822 1.98822 1.98822" />
-            <instance pos="-6.17981 0 3.71521" rot="-0 -99.624 0" scale="2.23395 2.23395 2.23395" />
-            <instance pos="-8.81409 0 -8.76953" rot="0 160.664 0" scale="2.0415 2.0415 2.0415" />
-            <instance pos="-9.29382 0 9.22913" rot="-0 -13.9087 0" scale="1.4679 1.4679 1.4679" />
-            <instance pos="9.55933 0 -4.33899" rot="-0 -166.289 0" scale="2.81818 2.81818 2.81818" />
-            <instance pos="-8.6908 0 -6.30981" rot="0 65.9509 0" scale="1.80273 1.80273 1.80273" />
-            <instance pos="-4.91821 0 9.47083" rot="-0 -39.7156 0" scale="2.29297 2.29297 2.29297" />
-            <instance pos="8.52417 0 1.9928" rot="0 114.313 0" scale="2.48596 2.48596 2.48596" />
-            <instance pos="7.68188 0 -9.37439" rot="0 157.5 0" scale="1.29266 1.29266 1.29266" />
-            <instance pos="-3.08899 0 -4.02283" rot="0 60.7764 0" scale="2.76123 2.76123 2.76123" />
-            <instance pos="-8.04077 0 -0.297852" rot="-0 -164.707 0" scale="1.34741 1.34741 1.34741" />
-            <instance pos="-0.667725 0 -1.11938" rot="0 151.556 0" scale="1.84546 1.84546 1.84546" />
-            <instance pos="-4.92493 0 0.5896" rot="0 110.259 0" scale="2.79205 2.79205 2.79205" />
-            <instance pos="-3.90625 0 -7.70508" rot="0 95.8997 0" scale="1.15466 1.15466 1.15466" />
-            <instance pos="7.13989 0 -6.30737" rot="-0 -175.364 0" scale="1.11816 1.11816 1.11816" />
-            <instance pos="-3.41431 0 5.61523" rot="-0 -122.509 0" scale="2.78113 2.78113 2.78113" />
-            <instance pos="4.10889 0 1.63696" rot="0 70.1807 0" scale="1.57526 1.57526 1.57526" />
-            <instance pos="-6.57593 0 -2.00378" rot="0 70.8618 0" scale="2.2196 2.2196 2.2196" />
-            <instance pos="-6.83044 0 7.46887" rot="-0 -62.9517 0" scale="2.02258 2.02258 2.02258" />
-            <instance pos="-0.908813 0 -7.19666" rot="-0 -137.197 0" scale="1.34412 1.34412 1.34412" />
-            <instance pos="0.632324 0 5.36072" rot="0 47.7356 0" scale="2.03046 2.03046 2.03046" />
-            <instance pos="5.07324 0 4.56604" rot="-0 -21.2585 0" scale="1.63416 1.63416 1.63416" />
-            <instance pos="2.32239 0 3.81348" rot="-0 -164.015 0" scale="2.23187 2.23187 2.23187" />
-            <instance pos="3.50647 0 -1.56677" rot="0 74.1907 0" scale="1.65179 1.65179 1.65179" />
-            <instance pos="-3.53027 0 1.36047" rot="0 90.6592 0" scale="1.92438 1.92438 1.92438" />
-            <instance pos="-8.68713 0 2.12219" rot="-0 -48.8892 0" scale="2.76776 2.76776 2.76776" />
-        </component>
-    </entity>
-    <entity id="147" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-8.1134 0 -47.0819" rot="-0 -35.3101 0" scale="1.24014 1.24014 1.24014" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="148" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-28.4161 0 -86.6107" rot="-0 -80.6287 0" scale="1.01727 1.01727 1.01727" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="149" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="17.287 0 -2.29614" rot="-0 -31.0474 0" scale="1.08162 1.08162 1.08162" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="150" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="81.1395 0 17.2375" rot="-0 -56.9202 0" scale="1.1164 1.1164 1.1164" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="151" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-65.4785 0 37.2107" rot="0 151.194 0" scale="1.06493 1.06493 1.06493" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="152" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="80.6451 0 79.9915" rot="0 92.0654 0" scale="1.10044 1.10044 1.10044" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="153" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-15.6226 0 -57.3376" rot="-0 -60.1062 0" scale="1.06136 1.06136 1.06136" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="154" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="37.4084 0 -10.5469" rot="0 138.252 0" scale="1.07835 1.07835 1.07835" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="155" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="86.8799 0 89.7089" rot="0 13.2495 0" scale="1.24495 1.24495 1.24495" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="156" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="45.6592 0 81.947" rot="0 97.0422 0" scale="1.05807 1.05807 1.05807" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="157" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-87.7203 0 14.7382" rot="0 73.0042 0" scale="1.23022 1.23022 1.23022" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="158" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="38.8037 0 -55.0964" rot="-0 -86.2317 0" scale="1.09978 1.09978 1.09978" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="159" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="54.5856 0 63.7427" rot="0 83.4082 0" scale="1.24107 1.24107 1.24107" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="160" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-15.7928 0 31.9318" rot="0 95.0537 0" scale="1.00054 1.00054 1.00054" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="161" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-12.4255 0 -86.3855" rot="-0 -64.9182 0" scale="1.06101 1.06101 1.06101" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="162" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-79.5685 0 -29.5807" rot="0 45.2637 0" scale="1.01007 1.01007 1.01007" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="163" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="3.2959 0 85.979" rot="0 53.9648 0" scale="1.01461 1.01461 1.01461" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="164" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="17.0343 0 41.5778" rot="-0 -132.133 0" scale="1.07781 1.07781 1.07781" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="165" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-66.8848 0 -26.4606" rot="0 75.1904 0" scale="1.23017 1.23017 1.23017" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="166" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-63.1989 0 73.0426" rot="-0 -128.101 0" scale="1.13128 1.13128 1.13128" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="167" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="51.2073 0 -61.1115" rot="-0 -97.9871 0" scale="1.18368 1.18368 1.18368" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="168" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="20.5444 0 63.9514" rot="-0 -56.7005 0" scale="1.1356 1.1356 1.1356" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="169" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="20.5664 0 -74.1577" rot="-0 -90.3296 0" scale="1.02399 1.02399 1.02399" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="170" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-25.6531 0 22.5055" rot="-0 -138.636 0" scale="1.18439 1.18439 1.18439" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="171" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="21.5497 0 -16.7322" rot="-0 -65.6433 0" scale="1.17932 1.17932 1.17932" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="172" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-80.6781 0 -83.9301" rot="-0 -159.862 0" scale="1.12173 1.12173 1.12173" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="173" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-77.1295 0 1.41174" rot="-0 -72.8943 0" scale="1.24488 1.24488 1.24488" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="174" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="23.9063 0 -86.2701" rot="-0 -145.162 0" scale="1.19556 1.19556 1.19556" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="175" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-84.8914 0 -79.2664" rot="0 112.632 0" scale="1.15186 1.15186 1.15186" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="176" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-21.4014 0 21.3959" rot="-0 -86.77 0" scale="1.24226 1.24226 1.24226" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="177" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="86.748 0 53.2178" rot="-0 -66.6541 0" scale="1.11761 1.11761 1.11761" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="178" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-66.7584 0 9.34937" rot="-0 -167.959 0" scale="1.1524 1.1524 1.1524" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="179" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="22.6868 0 76.2231" rot="0 98.1958 0" scale="1.12708 1.12708 1.12708" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="180" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="16.7761 0 -7.65747" rot="-0 -41.6052 0" scale="1.11785 1.11785 1.11785" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="181" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="45.2307 0 -61.2048" rot="0 176.55 0" scale="1.19555 1.19555 1.19555" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="182" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="59.5184 0 42.171" rot="-0 -43.8025 0" scale="1.16014 1.16014 1.16014" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="183" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-42.3633 0 -19.5062" rot="0 17.1716 0" scale="1.16252 1.16252 1.16252" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="184" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="57.9199 0 -87.2424" rot="-0 -22.489 0" scale="1.18996 1.18996 1.18996" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="185" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-29.8773 0 82.7435" rot="-0 -47.9224 0" scale="1.01695 1.01695 1.01695" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="186" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-58.1726 0 -42.2864" rot="-0 -100.975 0" scale="1.09799 1.09799 1.09799" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="187" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="28.3612 0 12.6288" rot="0 145.459 0" scale="1.0037 1.0037 1.0037" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="188" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="84.2596 0 0.439453" rot="-0 -136.571 0" scale="1.12705 1.12705 1.12705" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="189" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="64.5227 0 59.2383" rot="0 167.596 0" scale="1.01118 1.01118 1.01118" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="190" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="33.6621 0 -63.3142" rot="-0 -34.1895 0" scale="1.02531 1.02531 1.02531" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="191" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-89.22 0 -17.4847" rot="-0 -126.255 0" scale="1.24037 1.24037 1.24037" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="192" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-31.311 0 89.6375" rot="0 165.048 0" scale="1.23094 1.23094 1.23094" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="193" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-44.6814 0 54.5361" rot="0 148.041 0" scale="1.15496 1.15496 1.15496" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="194" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="15.4413 0 57.4915" rot="0 60.293 0" scale="1.08789 1.08789 1.08789" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="195" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="20.8685 0 53.3771" rot="-0 -87.5611 0" scale="1.2128 1.2128 1.2128" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="196" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-52.7344 0 13.5352" rot="-0 -27.7185 0" scale="1.09298 1.09298 1.09298" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="197" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="65.6927 0 -10.5579" rot="-0 -159.412 0" scale="1.12862 1.12862 1.12862" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="198" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-13.0078 0 -41.2701" rot="0 89.7803 0" scale="1.17419 1.17419 1.17419" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="199" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="7.13562 0 44.2584" rot="0 176.748 0" scale="1.16796 1.16796 1.16796" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="200" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="11.7114 0 -13.2275" rot="-0 -158.972 0" scale="1.0003 1.0003 1.0003" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="201" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-72.3944 0 81.8427" rot="-0 -140.306 0" scale="1.22237 1.22237 1.22237" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="202" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="40.0507 0 -58.3099" rot="0 10.0745 0" scale="1.07162 1.07162 1.07162" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="203" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-56.8762 0 -7.49268" rot="-0 -168.376 0" scale="1.16582 1.16582 1.16582" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="204" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="21.9122 0 87.9181" rot="0 38.2324 0" scale="1.09211 1.09211 1.09211" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="205" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-85.6824 0 -30.8002" rot="0 92.0764 0" scale="1.2425 1.2425 1.2425" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="206" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="10.7721 0 -87.1326" rot="-0 -129.518 0" scale="1.12272 1.12272 1.12272" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="207" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="79.931 0 -3.68591" rot="-0 -143.185 0" scale="1.23562 1.23562 1.23562" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="208" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-1.58203 0 -77.9919" rot="-0 -133.154 0" scale="1.01591 1.01591 1.01591" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="209" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-87.1381 0 -8.96484" rot="0 101.733 0" scale="1.16771 1.16771 1.16771" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="210" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-47.7686 0 -53.5474" rot="-0 -141.163 0" scale="1.1315 1.1315 1.1315" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="211" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="58.6725 0 57.1729" rot="-0 -148.206 0" scale="1.03203 1.03203 1.03203" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="212" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="54.9426 0 83.0127" rot="-0 -129.166 0" scale="1.08374 1.08374 1.08374" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="213" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-23.4174 0 -48.5431" rot="-0 -105.095 0" scale="1.05527 1.05527 1.05527" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="214" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="66.9067 0 -53.1848" rot="-0 -13.5022 0" scale="1.01962 1.01962 1.01962" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="215" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-76.9812 0 -77.6019" rot="-0 -119.18 0" scale="1.2415 1.2415 1.2415" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="216" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-29.1357 0 16.3422" rot="0 80.1782 0" scale="1.17846 1.17846 1.17846" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="217" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="77.5964 0 41.6162" rot="-0 -34.9036 0" scale="1.19735 1.19735 1.19735" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="218" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-80.799 0 31.0309" rot="0 133.33 0" scale="1.23269 1.23269 1.23269" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="219" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="51.6687 0 7.64099" rot="0 157.939 0" scale="1.23846 1.23846 1.23846" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="220" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="23.725 0 21.3574" rot="0 55.8765 0" scale="1.15997 1.15997 1.15997" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="221" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="39.3201 0 -37.7325" rot="-0 -101.876 0" scale="1.02721 1.02721 1.02721" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="222" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-12.074 0 11.3818" rot="0 92.6917 0" scale="1.14647 1.14647 1.14647" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="223" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="10.8765 0 -20.6433" rot="0 11.9202 0" scale="1.24158 1.24158 1.24158" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="224" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="21.731 0 13.8647" rot="0 14.9414 0" scale="1.02147 1.02147 1.02147" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="225" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="8.94287 0 26.2024" rot="-0 -142.998 0" scale="1.02547 1.02547 1.02547" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="226" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-21.1981 0 -42.1765" rot="-0 -23.4888 0" scale="1.22315 1.22315 1.22315" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="227" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-73.0865 0 37.326" rot="0 91.3293 0" scale="1.22002 1.22002 1.22002" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="228" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-43.7421 0 88.6212" rot="0 155.402 0" scale="1.04571 1.04571 1.04571" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="229" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="29.9652 0 -79.184" rot="-0 -92.9443 0" scale="1.12638 1.12638 1.12638" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="230" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="16.9684 0 40.5286" rot="-0 -99.8328 0" scale="1.16762 1.16762 1.16762" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="231" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="58.6066 0 37.1503" rot="-0 -110.522 0" scale="1.04965 1.04965 1.04965" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="232" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-65.6708 0 1.81824" rot="-0 -18.6987 0" scale="1.21125 1.21125 1.21125" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="233" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-25.34 0 -9.45374" rot="0 60.8752 0" scale="1.12405 1.12405 1.12405" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="234" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="39.4849 0 12.3431" rot="0 27.6196 0" scale="1.08366 1.08366 1.08366" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="235" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="9.81079 0 52.7563" rot="-0 -50.5371 0" scale="1.16936 1.16936 1.16936" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="236" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-68.8513 0 -86.402" rot="0 147.7 0" scale="1.09869 1.09869 1.09869" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="237" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="16.6003 0 -0.582275" rot="-0 -36.7053 0" scale="1.07868 1.07868 1.07868" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="238" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="87.8192 0 -48.6749" rot="-0 -103.722 0" scale="1.13026 1.13026 1.13026" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="239" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-78.0634 0 38.8751" rot="0 109.138 0" scale="1.23729 1.23729 1.23729" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="240" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="82.5787 0 50.5536" rot="-0 -14.3372 0" scale="1.04694 1.04694 1.04694" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="241" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="23.1317 0 53.5144" rot="0 16.4246 0" scale="1.22288 1.22288 1.22288" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="242" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="60.3479 0 -76.7834" rot="-0 -97.8772 0" scale="1.1778 1.1778 1.1778" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="243" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="46.4117 0 33.5742" rot="-0 -93.8782 0" scale="1.03702 1.03702 1.03702" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="244" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="77.6459 0 8.21228" rot="0 67.3022 0" scale="1.05946 1.05946 1.05946" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="245" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="27.9108 0 83.5016" rot="-0 -15.3479 0" scale="1.11783 1.11783 1.11783" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="246" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="4.87244 0 3.97156" rot="-0 -95.3723 0" scale="1.21438 1.21438 1.21438" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="247" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-42.7808 0 0.741577" rot="0 62.7869 0" scale="1.13391 1.13391 1.13391" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="248" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-8.95935 0 33.5522" rot="0 90.7141 0" scale="1.21049 1.21049 1.21049" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="249" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-16.6278 0 47.1039" rot="0 119.597 0" scale="1.05958 1.05958 1.05958" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="250" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="51.0974 0 -57.7826" rot="-0 -8.22876 0" scale="1.00198 1.00198 1.00198" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="251" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-76.6241 0 32.569" rot="0 11.2939 0" scale="1.03129 1.03129 1.03129" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="252" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="35.6232 0 -32.4976" rot="0 5.00977 0" scale="1.05135 1.05135 1.05135" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="253" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="53.2288 0 -48.3728" rot="0 125.189 0" scale="1.23531 1.23531 1.23531" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="254" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-16.853 0 81.7932" rot="0 165.059 0" scale="1.23278 1.23278 1.23278" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="255" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-58.5681 0 12.0905" rot="0 98.5583 0" scale="1.07673 1.07673 1.07673" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="256" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-45.0989 0 -12.5739" rot="0 55.3491 0" scale="1.01665 1.01665 1.01665" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="257" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="5.00427 0 56.4368" rot="-0 -77.4097 0" scale="1.12957 1.12957 1.12957" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="258" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="72.0648 0 -55.7721" rot="0 24.5215 0" scale="1.18539 1.18539 1.18539" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="259" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="27.9932 0 -4.36157" rot="-0 -168.75 0" scale="1.11829 1.11829 1.11829" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="260" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="35.5627 0 89.6375" rot="0 107.864 0" scale="1.08054 1.08054 1.08054" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="261" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="42.4951 0 -4.52087" rot="0 55.2393 0" scale="1.18048 1.18048 1.18048" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="262" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-71.6968 0 51.2457" rot="-0 -106.304 0" scale="1.13109 1.13109 1.13109" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="263" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-27.8174 0 55.3876" rot="0 80.8374 0" scale="1.16078 1.16078 1.16078" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="264" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-40.0452 0 -68.0988" rot="0 54.7449 0" scale="1.16299 1.16299 1.16299" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="265" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="18.2922 0 59.7656" rot="-0 -66.1597 0" scale="1.18608 1.18608 1.18608" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="266" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="54.223 0 -32.7338" rot="0 144.613 0" scale="1.24007 1.24007 1.24007" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="267" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-11.8268 0 -58.1836" rot="-0 -111.5 0" scale="1.02197 1.02197 1.02197" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="268" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-1.40625 0 -64.0833" rot="-0 -140.845 0" scale="1.03601 1.03601 1.03601" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="269" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="86.2811 0 -40.1276" rot="0 41.3745 0" scale="1.21047 1.21047 1.21047" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="270" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-23.3899 0 -58.0957" rot="0 162.872 0" scale="1.23772 1.23772 1.23772" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="271" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-72.312 0 6.22925" rot="0 110.248 0" scale="1.23891 1.23891 1.23891" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="272" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="42.6434 0 49.834" rot="-0 -39.6826 0" scale="1.2299 1.2299 1.2299" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="273" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-85.8746 0 -71.543" rot="0 178.066 0" scale="1.24016 1.24016 1.24016" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="274" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-20.8466 0 32.4646" rot="-0 -167.476 0" scale="1.06085 1.06085 1.06085" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="275" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-67.533 0 -36.7493" rot="-0 -138.197 0" scale="1.22409 1.22409 1.22409" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="276" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="76.4484 0 -49.2462" rot="-0 -121.575 0" scale="1.18954 1.18954 1.18954" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="277" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="55.7831 0 22.7362" rot="-0 -133.583 0" scale="1.09023 1.09023 1.09023" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="278" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-45.033 0 -53.5419" rot="-0 -58.7988 0" scale="1.01394 1.01394 1.01394" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="279" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="6.80603 0 -6.67419" rot="0 163.685 0" scale="1.17177 1.17177 1.17177" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="280" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-69.9829 0 -32.7887" rot="0 59.7217 0" scale="1.18058 1.18058 1.18058" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="281" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="84.0015 0 -32.9919" rot="-0 -163.806 0" scale="1.06067 1.06067 1.06067" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="282" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="59.068 0 -35.9143" rot="0 64.9841 0" scale="1.17538 1.17538 1.17538" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="283" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-49.9658 0 45.2197" rot="0 26.1694 0" scale="1.21419 1.21419 1.21419" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="284" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-68.4943 0 21.6925" rot="0 121.465 0" scale="1.19574 1.19574 1.19574" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="285" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-37.1777 0 75.1355" rot="-0 -90.5713 0" scale="1.09254 1.09254 1.09254" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="286" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-79.1016 0 60.7434" rot="0 53.5254 0" scale="1.05378 1.05378 1.05378" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="287" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="9.01978 0 38.5181" rot="0 94.2847 0" scale="1.07784 1.07784 1.07784" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="288" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-60.249 0 13.1342" rot="-0 -23.1043 0" scale="1.11102 1.11102 1.11102" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="289" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-19.9347 0 13.0463" rot="0 125.431 0" scale="1.17429 1.17429 1.17429" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="290" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="16.8036 0 -70.4773" rot="0 74.9707 0" scale="1.24413 1.24413 1.24413" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="291" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-89.3353 0 66.1267" rot="0 172.848 0" scale="1.23966 1.23966 1.23966" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="292" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-3.24646 0 19.4073" rot="-0 -119.696 0" scale="1.09201 1.09201 1.09201" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="293" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-40.155 0 81.2494" rot="0 65.7532 0" scale="1.24796 1.24796 1.24796" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="294" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-17.4463 0 83.7048" rot="-0 -59.0295 0" scale="1.08412 1.08412 1.08412" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="295" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="54.4208 0 56.7773" rot="-0 -8.56934 0" scale="1.08338 1.08338 1.08338" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="296" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="80.1617 0 -40.166" rot="0 111.984 0" scale="1.00006 1.00006 1.00006" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="297" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-84.9353 0 -22.6868" rot="-0 -20.7861 0" scale="1.11549 1.11549 1.11549" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="298" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-14.1779 0 79.2773" rot="-0 -128.298 0" scale="1.06036 1.06036 1.06036" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="299" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="4.77356 0 -22.4945" rot="-0 -30.6409 0" scale="1.05569 1.05569 1.05569" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="300" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="35.8044 0 -22.3132" rot="-0 -56.7554 0" scale="1.04859 1.04859 1.04859" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="301" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-20.0775 0 78.3875" rot="0 106.941 0" scale="1.09489 1.09489 1.09489" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="302" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-61.2927 0 -22.5769" rot="-0 -179.132 0" scale="1.21465 1.21465 1.21465" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="303" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="43.7476 0 36.189" rot="-0 -179.242 0" scale="1.0725 1.0725 1.0725" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="304" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="50.1746 0 -77.3273" rot="-0 -158.588 0" scale="1.20933 1.20933 1.20933" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="305" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-17.6056 0 23.681" rot="0 7.26196 0" scale="1.17657 1.17657 1.17657" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="306" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-29.7894 0 7.00378" rot="-0 -119.323 0" scale="1.05017 1.05017 1.05017" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="307" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="23.4064 0 -15.9961" rot="0 39.4629 0" scale="1.17526 1.17526 1.17526" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="308" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="42.9126 0 -86.5503" rot="0 74.8279 0" scale="1.11852 1.11852 1.11852" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="309" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-83.2489 0 -3.01575" rot="0 40.8252 0" scale="1.17953 1.17953 1.17953" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="310" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-1.24146 0 47.0874" rot="-0 -33.1677 0" scale="1.18784 1.18784 1.18784" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="311" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="18.3472 0 37.9688" rot="0 144.141 0" scale="1.18712 1.18712 1.18712" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="312" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-40.6549 0 0.12085" rot="0 37.8479 0" scale="1.23326 1.23326 1.23326" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="313" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="56.0522 0 29.1522" rot="-0 -24.4995 0" scale="1.15765 1.15765 1.15765" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="314" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="24.6808 0 9.44824" rot="-0 -136.395 0" scale="1.02245 1.02245 1.02245" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="315" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="78.2172 0 3.40576" rot="0 163.169 0" scale="1.11921 1.11921 1.11921" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="316" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="62.9407 0 6.74011" rot="0 95.8447 0" scale="1.23765 1.23765 1.23765" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="317" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-15.3479 0 20.6049" rot="0 111.467 0" scale="1.05591 1.05591 1.05591" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="318" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="62.7319 0 41.0394" rot="-0 -11.283 0" scale="1.12901 1.12901 1.12901" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="319" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-19.8029 0 16.463" rot="-0 -40.2759 0" scale="1.07693 1.07693 1.07693" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="320" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-32.146 0 -86.1987" rot="-0 -169.805 0" scale="1.19912 1.19912 1.19912" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="321" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-29.317 0 -56.1566" rot="-0 -113.851 0" scale="1.11665 1.11665 1.11665" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="322" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="74.5697 0 6.5094" rot="-0 -1.53809 0" scale="1.16891 1.16891 1.16891" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="323" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="61.5015 0 26.6089" rot="-0 -3.26294 0" scale="1.16615 1.16615 1.16615" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="324" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="11.3818 0 60.7324" rot="-0 -116.675 0" scale="1.22464 1.22464 1.22464" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="325" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-1.42273 0 45.9283" rot="0 79.2114 0" scale="1.03584 1.03584 1.03584" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="326" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="81.2769 0 50.7129" rot="-0 -87.3743 0" scale="1.04626 1.04626 1.04626" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="327" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="71.8945 0 -0.86792" rot="-0 -58.1067 0" scale="1.14948 1.14948 1.14948" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="328" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-73.493 0 88.429" rot="-0 -156.357 0" scale="1.11698 1.11698 1.11698" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="329" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="61.5399 0 -28.9984" rot="-0 -22.3682 0" scale="1.11931 1.11931 1.11931" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="330" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-84.1553 0 81.1945" rot="0 159.5 0" scale="1.06408 1.06408 1.06408" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="331" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="6.17432 0 -62.3584" rot="0 152.666 0" scale="1.10252 1.10252 1.10252" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="332" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="34.3542 0 41.7151" rot="0 90.5823 0" scale="1.03097 1.03097 1.03097" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="333" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-85.9131 0 42.7643" rot="-0 -59.3921 0" scale="1.18897 1.18897 1.18897" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="334" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="55.6677 0 -29.306" rot="-0 -179.088 0" scale="1.08055 1.08055 1.08055" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="335" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="36.6779 0 86.5668" rot="-0 -78.717 0" scale="1.07011 1.07011 1.07011" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="336" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-83.2654 0 31.8713" rot="0 39.5837 0" scale="1.12973 1.12973 1.12973" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="337" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="84.5068 0 27.0044" rot="0 4.64722 0" scale="1.23916 1.23916 1.23916" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="338" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-64.9182 0 -60.3589" rot="-0 -82.8149 0" scale="1.16529 1.16529 1.16529" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="339" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="85.7813 0 53.6572" rot="0 39.7376 0" scale="1.22257 1.22257 1.22257" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="340" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-31.3989 0 79.1125" rot="-0 -12.865 0" scale="1.24093 1.24093 1.24093" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="341" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="7.38281 0 54.0527" rot="-0 -71.499 0" scale="1.09276 1.09276 1.09276" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="342" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="37.8094 0 38.6774" rot="-0 -147.832 0" scale="1.0056 1.0056 1.0056" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="343" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-61.6058 0 -87.5171" rot="-0 -35.2222 0" scale="1.01198 1.01198 1.01198" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="344" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="70.5927 0 -44.8956" rot="0 75.6958 0" scale="1.01305 1.01305 1.01305" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="345" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-63.9075 0 -78.6621" rot="-0 -41.8359 0" scale="1.05756 1.05756 1.05756" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="346" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="29.4983 0 -8.88245" rot="-0 -21.7639 0" scale="1.06269 1.06269 1.06269" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="347" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="74.4763 0 44.9396" rot="0 22.9395 0" scale="1.07838 1.07838 1.07838" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="348" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="61.496 0 -74.5367" rot="-0 -21.2146 0" scale="1.07162 1.07162 1.07162" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="349" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-24.7083 0 15.8478" rot="0 151.941 0" scale="1.08247 1.08247 1.08247" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="350" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-49.7845 0 -64.5117" rot="-0 -158.741 0" scale="1.22797 1.22797 1.22797" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="351" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-18.479 0 83.7268" rot="0 15.5017 0" scale="1.15605 1.15605 1.15605" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="352" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="30.7617 0 52.2345" rot="0 25.8948 0" scale="1.17547 1.17547 1.17547" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="353" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="13.4308 0 76.6406" rot="0 65.3687 0" scale="1.1637 1.1637 1.1637" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="354" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-33.0634 0 88.006" rot="0 25.6421 0" scale="1.22926 1.22926 1.22926" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="355" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="67.0605 0 14.8865" rot="-0 -16.4575 0" scale="1.22979 1.22979 1.22979" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="356" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="71.0211 0 36.4362" rot="0 167.574 0" scale="1.12296 1.12296 1.12296" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="357" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="15.249 0 -62.6605" rot="-0 -123.739 0" scale="1.00117 1.00117 1.00117" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="358" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-53.9539 0 45.0824" rot="0 39.2871 0" scale="1.03703 1.03703 1.03703" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="359" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-28.8391 0 20.2588" rot="-0 -107.139 0" scale="1.19112 1.19112 1.19112" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="360" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="30.5475 0 -39.5013" rot="0 20.3467 0" scale="1.15829 1.15829 1.15829" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="361" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-45.7196 0 88.6432" rot="0 69.6973 0" scale="1.15456 1.15456 1.15456" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="362" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-74.1522 0 65.8191" rot="0 158.632 0" scale="1.02074 1.02074 1.02074" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="363" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-61.062 0 -39.9738" rot="0 39.0454 0" scale="1.24452 1.24452 1.24452" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="364" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-14.1998 0 -49.1748" rot="-0 -8.21777 0" scale="1.12768 1.12768 1.12768" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="365" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-74.6631 0 80.8264" rot="0 43.0225 0" scale="1.19975 1.19975 1.19975" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="366" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="49.0649 0 14.5294" rot="0 33.6072 0" scale="1.10497 1.10497 1.10497" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="367" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="33.0414 0 -64.8248" rot="0 12.4695 0" scale="1.06376 1.06376 1.06376" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="368" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-6.11389 0 20.2478" rot="-0 -114.543 0" scale="1.13565 1.13565 1.13565" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="369" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="77.0251 0 -13.7714" rot="-0 -49.1418 0" scale="1.13493 1.13493 1.13493" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="370" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-44.6704 0 -76.7999" rot="0 172.683 0" scale="1.17574 1.17574 1.17574" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="371" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="66.1597 0 -49.9823" rot="-0 -176.77 0" scale="1.19806 1.19806 1.19806" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="372" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="25.0763 0 -89.4452" rot="0 25.9717 0" scale="1.2013 1.2013 1.2013" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="373" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="4.24622 0 61.7542" rot="0 30.0696 0" scale="1.03693 1.03693 1.03693" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="374" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-26.3177 0 14.0295" rot="-0 -172.178 0" scale="1.23676 1.23676 1.23676" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="375" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="73.5205 0 -65.3192" rot="-0 -53.7781 0" scale="1.22839 1.22839 1.22839" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="376" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="75.3223 0 14.9689" rot="-0 -136.088 0" scale="1.1645 1.1645 1.1645" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="377" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-59.3262 0 51.3885" rot="-0 -75.2014 0" scale="1.21743 1.21743 1.21743" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="378" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-24.9115 0 1.90613" rot="-0 -80.4858 0" scale="1.06566 1.06566 1.06566" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="379" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="65.3851 0 -52.3718" rot="-0 -73.916 0" scale="1.17371 1.17371 1.17371" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="380" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-81.2769 0 -39.3365" rot="-0 -179.088 0" scale="1.09219 1.09219 1.09219" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="381" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-28.7073 0 -71.3232" rot="0 171.453 0" scale="1.12923 1.12923 1.12923" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="382" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="24.917 0 16.9135" rot="-0 -158.225 0" scale="1.12022 1.12022 1.12022" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="383" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-40.4352 0 18.1329" rot="-0 -137.758 0" scale="1.14723 1.14723 1.14723" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="384" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-59.9524 0 71.2573" rot="-0 -105.392 0" scale="1.1846 1.1846 1.1846" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="385" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-35.1343 0 -80.755" rot="0 83.7048 0" scale="1.02248 1.02248 1.02248" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="386" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-44.5441 0 86.825" rot="0 27.1252 0" scale="1.19469 1.19469 1.19469" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="387" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="53.9044 0 -11.2225" rot="0 93.8782 0" scale="1.01262 1.01262 1.01262" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="388" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-12.7771 0 -50.6799" rot="0 63.6548 0" scale="1.18151 1.18151 1.18151" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="389" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="46.4337 0 -16.7157" rot="-0 -42.4951 0" scale="1.10095 1.10095 1.10095" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="390" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="18.4131 0 -20.3741" rot="-0 -168.42 0" scale="1.07597 1.07597 1.07597" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="391" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="58.7823 0 77.981" rot="0 164.938 0" scale="1.04031 1.04031 1.04031" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="392" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="23.8568 0 -61.1444" rot="-0 -27.2791 0" scale="1.01851 1.01851 1.01851" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="393" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-10.1514 0 18.0505" rot="0 36.0461 0" scale="1.1783 1.1783 1.1783" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="394" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-82.5952 0 -54.0253" rot="0 99.7229 0" scale="1.19988 1.19988 1.19988" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="395" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="-70.3729 0 2.47742" rot="-0 -50.8777 0" scale="1.06371 1.06371 1.06371" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="396" netflags="0" netdistance="0" groupflags="0">
-        <component type="AnimatedModel" netflags="0">
-            <transform pos="61.7047 0 67.8241" rot="0 57.4915 0" scale="1.23324 1.23324 1.23324" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="300" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" invisiblelodfactor="0" localanimation="false" />
-            <model name="Models/Jack.mdl" />
-            <material name="Materials/Jack.xml" />
-            <material name="Materials/Jack.xml" />
-            <animation name="Models/Jack_Walk.ani" startbone="Bip01" looped="true" weight="1" time="0" priority="0" nlerp="true" />
-        </component>
-    </entity>
-    <entity id="397" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="8.22144 16.6862 67.0898" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="0.0379944 0.966309 -2.44446" size="3.45947 4.83105" uv="0 0 1 1" color="1 1 1 1" rot="339.653" />
-            <billboard enabled="true" pos="0.62851 -2.77954 -1.71661" size="3.03546 4.78467" uv="0 0 1 1" color="1 1 1 1" rot="149.667" />
-            <billboard enabled="true" pos="-0.29068 -2.25903 -0.202789" size="3.56757 4.92499" uv="0 0 1 1" color="1 1 1 1" rot="280.975" />
-            <billboard enabled="true" pos="-1.43692 -0.493408 -5.62363" size="3.01227 3.8988" uv="0 0 1 1" color="1 1 1 1" rot="70.5762" />
-            <billboard enabled="true" pos="1.99173 -2.19604 3.52432" size="4.15326 4.34424" uv="0 0 1 1" color="1 1 1 1" rot="315.802" />
-            <billboard enabled="true" pos="5.6456 -1.19653 -4.6756" size="4.75488 4.73291" uv="0 0 1 1" color="1 1 1 1" rot="124.409" />
-            <billboard enabled="true" pos="0.856476 2.77246 1.55136" size="4.34705 3.27271" uv="0 0 1 1" color="1 1 1 1" rot="185.043" />
-            <billboard enabled="true" pos="-2.57217 -0.15332 -2.90863" size="3.18188 3.19006" uv="0 0 1 1" color="1 1 1 1" rot="16.0181" />
-            <billboard enabled="true" pos="-4.74976 -2.0166 -1.84296" size="3.40692 4.54486" uv="0 0 1 1" color="1 1 1 1" rot="238.59" />
-            <billboard enabled="true" pos="6.73599 0.294434 -0.20874" size="3.84656 3.27954" uv="0 0 1 1" color="1 1 1 1" rot="32.8491" />
-            <billboard enabled="true" pos="0.769043 -0.582031 4.13269" size="4.22583 4.72577" uv="0 0 1 1" color="1 1 1 1" rot="216.233" />
-            <billboard enabled="true" pos="-2.98279 0.908691 0.699005" size="4.45422 3.52759" uv="0 0 1 1" color="1 1 1 1" rot="180.571" />
-            <billboard enabled="true" pos="3.9386 -1.16992 0.449524" size="3.96832 4.14978" uv="0 0 1 1" color="1 1 1 1" rot="298.96" />
-            <billboard enabled="true" pos="1.49918 -2.18213 3.46207" size="3.35223 3.06421" uv="0 0 1 1" color="1 1 1 1" rot="233.525" />
-            <billboard enabled="true" pos="-2.61749 3.82642 -2.41425" size="3.77332 4.60217" uv="0 0 1 1" color="1 1 1 1" rot="144.415" />
-        </component>
-    </entity>
-    <entity id="398" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-64.1479 19.2584 -76.0437" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-3.18375 -2.28052 4.2984" size="3.41278 3.33789" uv="0 0 1 1" color="1 1 1 1" rot="219.902" />
-            <billboard enabled="true" pos="-4.15787 1.84326 2.5058" size="4.9931 3.12579" uv="0 0 1 1" color="1 1 1 1" rot="41.9128" />
-            <billboard enabled="true" pos="-2.85873 3.46631 2.19269" size="3.85596 3.73743" uv="0 0 1 1" color="1 1 1 1" rot="229.614" />
-            <billboard enabled="true" pos="-0.461426 0.720947 -6.77902" size="4.18555 3.6897" uv="0 0 1 1" color="1 1 1 1" rot="174.287" />
-            <billboard enabled="true" pos="0.980072 -3.34204 1.90109" size="4.39471 4.13702" uv="0 0 1 1" color="1 1 1 1" rot="327.261" />
-            <billboard enabled="true" pos="2.43622 3.75 6.59637" size="3.9809 3.61493" uv="0 0 1 1" color="1 1 1 1" rot="71.3013" />
-            <billboard enabled="true" pos="1.64566 -0.38208 7.09534" size="3.31482 4.65985" uv="0 0 1 1" color="1 1 1 1" rot="184.647" />
-            <billboard enabled="true" pos="0.482483 -0.246582 -7.11319" size="3.90454 4.29126" uv="0 0 1 1" color="1 1 1 1" rot="334.336" />
-            <billboard enabled="true" pos="3.00888 2.646 -3.02948" size="4.60345 3.03375" uv="0 0 1 1" color="1 1 1 1" rot="76.4099" />
-            <billboard enabled="true" pos="-3.82462 2.74438 -3.20206" size="3.12445 3.19092" uv="0 0 1 1" color="1 1 1 1" rot="16.7761" />
-            <billboard enabled="true" pos="6.07178 -1.92725 1.83563" size="3.33673 4.71228" uv="0 0 1 1" color="1 1 1 1" rot="265.781" />
-            <billboard enabled="true" pos="-6.05896 -0.919434 7.39105" size="4.4032 4.46826" uv="0 0 1 1" color="1 1 1 1" rot="25.0708" />
-            <billboard enabled="true" pos="2.25082 2.45483 6.11526" size="3.11761 4.31183" uv="0 0 1 1" color="1 1 1 1" rot="2.95532" />
-            <billboard enabled="true" pos="-3.64059 1.13501 6.41281" size="3.06927 3.21924" uv="0 0 1 1" color="1 1 1 1" rot="209.026" />
-            <billboard enabled="true" pos="1.02173 0.658203 -4.82574" size="4.75275 3.3028" uv="0 0 1 1" color="1 1 1 1" rot="174.76" />
-        </component>
-    </entity>
-    <entity id="399" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="35.2905 11.0631 -63.8672" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-6.2265 2.78271 6.2883" size="3.39618 4.64832" uv="0 0 1 1" color="1 1 1 1" rot="350.134" />
-            <billboard enabled="true" pos="-1.48361 1.4187 -0.809784" size="3.90155 3.71796" uv="0 0 1 1" color="1 1 1 1" rot="259.189" />
-            <billboard enabled="true" pos="4.13269 0.69165 -0.6633" size="3.82196 3.35895" uv="0 0 1 1" color="1 1 1 1" rot="293.566" />
-            <billboard enabled="true" pos="-6.66321 0.229004 0.26001" size="3.02618 4.11267" uv="0 0 1 1" color="1 1 1 1" rot="235.371" />
-            <billboard enabled="true" pos="2.63992 -0.544678 0.601959" size="3.30768 4.94055" uv="0 0 1 1" color="1 1 1 1" rot="167.695" />
-            <billboard enabled="true" pos="6.29883 -1.87109 -3.66257" size="3.85919 4.85474" uv="0 0 1 1" color="1 1 1 1" rot="200.094" />
-            <billboard enabled="true" pos="-5.57648 -1.88623 -5.11871" size="4.35797 4.44977" uv="0 0 1 1" color="1 1 1 1" rot="55.5688" />
-            <billboard enabled="true" pos="3.77838 -2.0249 0.0874329" size="4.9162 3.41644" uv="0 0 1 1" color="1 1 1 1" rot="271.373" />
-            <billboard enabled="true" pos="-6.0704 -1.17822 0.375824" size="3.06354 4.48236" uv="0 0 1 1" color="1 1 1 1" rot="154.094" />
-            <billboard enabled="true" pos="-0.715942 -2.48413 -6.34186" size="3.42987 3.05707" uv="0 0 1 1" color="1 1 1 1" rot="137.67" />
-            <billboard enabled="true" pos="-3.79211 -3.04736 4.25262" size="4.14594 4.40814" uv="0 0 1 1" color="1 1 1 1" rot="164.894" />
-            <billboard enabled="true" pos="5.60211 1.56494 -4.55658" size="3.42053 3.71631" uv="0 0 1 1" color="1 1 1 1" rot="55.0964" />
-            <billboard enabled="true" pos="-3.02216 2.53174 -6.37756" size="4.53735 4.09454" uv="0 0 1 1" color="1 1 1 1" rot="196.161" />
-            <billboard enabled="true" pos="-2.95761 0.381104 -2.02515" size="3.89471 4.86414" uv="0 0 1 1" color="1 1 1 1" rot="334.94" />
-            <billboard enabled="true" pos="1.00708 -0.253174 -4.77951" size="4.93286 4.30548" uv="0 0 1 1" color="1 1 1 1" rot="239.37" />
-        </component>
-    </entity>
-    <entity id="400" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="67.7185 10.6213 -80.481" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-4.35974 -3.55737 7.47208" size="4.82166 3.94281" uv="0 0 1 1" color="1 1 1 1" rot="79.8816" />
-            <billboard enabled="true" pos="-1.48407 -0.986328 7.23175" size="4.5647 4.00391" uv="0 0 1 1" color="1 1 1 1" rot="135.714" />
-            <billboard enabled="true" pos="-6.20773 -0.609375 -4.04434" size="3.56464 3.72174" uv="0 0 1 1" color="1 1 1 1" rot="68.0054" />
-            <billboard enabled="true" pos="-5.961 3.82373 -4.00314" size="4.07568 3.35248" uv="0 0 1 1" color="1 1 1 1" rot="154.666" />
-            <billboard enabled="true" pos="4.75937 -1.53345 -5.21805" size="4.60828 3.02301" uv="0 0 1 1" color="1 1 1 1" rot="66.4453" />
-            <billboard enabled="true" pos="1.75415 0.515137 1.73309" size="4.81433 3.77692" uv="0 0 1 1" color="1 1 1 1" rot="176.199" />
-            <billboard enabled="true" pos="0.900879 3 6.194" size="3.39191 3.96814" uv="0 0 1 1" color="1 1 1 1" rot="303.959" />
-            <billboard enabled="true" pos="-0.940704 1.24048 -2.40601" size="4.46985 3.01581" uv="0 0 1 1" color="1 1 1 1" rot="59.2053" />
-            <billboard enabled="true" pos="-1.67038 1.22925 3.93768" size="4.13928 3.13062" uv="0 0 1 1" color="1 1 1 1" rot="149.766" />
-            <billboard enabled="true" pos="1.65665 -0.137207 -1.32706" size="3.72607 3.315" uv="0 0 1 1" color="1 1 1 1" rot="287.194" />
-            <billboard enabled="true" pos="-4.81201 2.94141 -6.51581" size="3.29114 4.97516" uv="0 0 1 1" color="1 1 1 1" rot="355.001" />
-            <billboard enabled="true" pos="-3.78296 2.26099 4.93515" size="4.96094 3.11047" uv="0 0 1 1" color="1 1 1 1" rot="285.315" />
-            <billboard enabled="true" pos="-0.631714 -3.12207 -4.46915" size="4.26947 3.51965" uv="0 0 1 1" color="1 1 1 1" rot="254.993" />
-            <billboard enabled="true" pos="7.25601 0.773438 4.06723" size="3.99756 3.02875" uv="0 0 1 1" color="1 1 1 1" rot="129.968" />
-            <billboard enabled="true" pos="4.58267 2.65552 -4.57855" size="4.26135 4.65717" uv="0 0 1 1" color="1 1 1 1" rot="0.911865" />
-        </component>
-    </entity>
-    <entity id="401" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-55.0049 17.2488 75.2319" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="6.23932 0.371582 -6.44943" size="4.23804 3.82104" uv="0 0 1 1" color="1 1 1 1" rot="328.546" />
-            <billboard enabled="true" pos="-4.59732 2.84106 4.3158" size="4.36047 3.40131" uv="0 0 1 1" color="1 1 1 1" rot="192.535" />
-            <billboard enabled="true" pos="4.85138 1.41187 -4.47372" size="4.42743 3.35297" uv="0 0 1 1" color="1 1 1 1" rot="316.329" />
-            <billboard enabled="true" pos="0.862427 0.804443 5.34027" size="4.88501 4.90881" uv="0 0 1 1" color="1 1 1 1" rot="358.473" />
-            <billboard enabled="true" pos="3.53439 -0.958008 1.80862" size="4.52539 4.31293" uv="0 0 1 1" color="1 1 1 1" rot="305.684" />
-            <billboard enabled="true" pos="-3.81042 -2.28711 5.11139" size="4.87738 4.20856" uv="0 0 1 1" color="1 1 1 1" rot="321.998" />
-            <billboard enabled="true" pos="-4.15833 -3.98364 -6.16196" size="3.50391 4.66168" uv="0 0 1 1" color="1 1 1 1" rot="210.278" />
-            <billboard enabled="true" pos="-6.67282 3.72827 -2.90039" size="3.51825 3.8819" uv="0 0 1 1" color="1 1 1 1" rot="206.104" />
-            <billboard enabled="true" pos="6.33316 -2.81934 3.66119" size="4.20111 4.84753" uv="0 0 1 1" color="1 1 1 1" rot="18.9514" />
-            <billboard enabled="true" pos="0.145111 -2.82593 -4.9736" size="3.50806 3.40472" uv="0 0 1 1" color="1 1 1 1" rot="283.524" />
-            <billboard enabled="true" pos="6.36246 1.44458 -1.67496" size="3.76221 3.24225" uv="0 0 1 1" color="1 1 1 1" rot="232.515" />
-            <billboard enabled="true" pos="-4.05121 1.88965 -1.10825" size="3.17401 4.69495" uv="0 0 1 1" color="1 1 1 1" rot="153.776" />
-            <billboard enabled="true" pos="1.68594 3.20483 3.35999" size="4.27197 4.84723" uv="0 0 1 1" color="1 1 1 1" rot="37.1228" />
-            <billboard enabled="true" pos="-6.73965 -0.0869141 3.92349" size="4.11249 3.14844" uv="0 0 1 1" color="1 1 1 1" rot="331.348" />
-            <billboard enabled="true" pos="2.67929 3.9751 -0.112152" size="4.5166 4.95605" uv="0 0 1 1" color="1 1 1 1" rot="268.11" />
-        </component>
-    </entity>
-    <entity id="402" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="72.2473 16.7027 -56.9824" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-4.6431 -0.783447 2.63168" size="3.74139 4.9845" uv="0 0 1 1" color="1 1 1 1" rot="190.745" />
-            <billboard enabled="true" pos="-5.91888 3.24512 3.46527" size="3.10504 4.3219" uv="0 0 1 1" color="1 1 1 1" rot="228.34" />
-            <billboard enabled="true" pos="-0.122681 -1.44482 -2.60742" size="4.84204 4.8833" uv="0 0 1 1" color="1 1 1 1" rot="290.358" />
-            <billboard enabled="true" pos="0.917816 -0.672607 3.73215" size="3.42749 3.60077" uv="0 0 1 1" color="1 1 1 1" rot="220.836" />
-            <billboard enabled="true" pos="7.14249 -0.845703 5.95093" size="4.77319 3.31348" uv="0 0 1 1" color="1 1 1 1" rot="83.2983" />
-            <billboard enabled="true" pos="-6.82617 -2.4458 -6.80054" size="4.64539 4.7818" uv="0 0 1 1" color="1 1 1 1" rot="45.9119" />
-            <billboard enabled="true" pos="-2.54562 -2.53833 5.76736" size="3.67725 3.02423" uv="0 0 1 1" color="1 1 1 1" rot="182.307" />
-            <billboard enabled="true" pos="-0.853271 0.309814 -3.42545" size="3.82227 4.86176" uv="0 0 1 1" color="1 1 1 1" rot="0.219727" />
-            <billboard enabled="true" pos="-2.54517 -2.79077 -6.6156" size="4.83453 3.30719" uv="0 0 1 1" color="1 1 1 1" rot="172.101" />
-            <billboard enabled="true" pos="4.02054 -1.00195 -6.24939" size="4.56799 4.03552" uv="0 0 1 1" color="1 1 1 1" rot="9.53613" />
-            <billboard enabled="true" pos="2.33231 1.57324 6.19904" size="4.81293 3.86328" uv="0 0 1 1" color="1 1 1 1" rot="103.81" />
-            <billboard enabled="true" pos="2.98737 -1.06958 1.12106" size="4.28339 3.19775" uv="0 0 1 1" color="1 1 1 1" rot="171.497" />
-            <billboard enabled="true" pos="4.58176 -0.269043 -7.25876" size="3.47992 4.04901" uv="0 0 1 1" color="1 1 1 1" rot="263.243" />
-            <billboard enabled="true" pos="1.31241 2.98218 -6.32584" size="3.73737 4.66736" uv="0 0 1 1" color="1 1 1 1" rot="39.0894" />
-            <billboard enabled="true" pos="-0.524597 -2.44775 5.36453" size="4.06592 3.43811" uv="0 0 1 1" color="1 1 1 1" rot="191.788" />
-        </component>
-    </entity>
-    <entity id="403" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="3.28369 8.30551 -59.8877" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="2.23206 -1.34692 4.29016" size="4.54681 3.5675" uv="0 0 1 1" color="1 1 1 1" rot="57.5024" />
-            <billboard enabled="true" pos="4.10522 1.86401 4.78683" size="3.51337 3.85828" uv="0 0 1 1" color="1 1 1 1" rot="184.691" />
-            <billboard enabled="true" pos="-4.35013 0.249268 2.47604" size="4.57227 3.22284" uv="0 0 1 1" color="1 1 1 1" rot="196.633" />
-            <billboard enabled="true" pos="-4.89349 -0.132324 2.23709" size="4.31439 3.3103" uv="0 0 1 1" color="1 1 1 1" rot="181.274" />
-            <billboard enabled="true" pos="1.80313 3.6062 -2.4852" size="3.4082 3.03967" uv="0 0 1 1" color="1 1 1 1" rot="65.2478" />
-            <billboard enabled="true" pos="-0.664673 2.35181 -5.66437" size="4.90491 3.91235" uv="0 0 1 1" color="1 1 1 1" rot="38.3972" />
-            <billboard enabled="true" pos="-5.58243 -0.423828 4.59366" size="3.96747 3.62079" uv="0 0 1 1" color="1 1 1 1" rot="40.5945" />
-            <billboard enabled="true" pos="0.121307 -3.11206 -2.36252" size="4.48969 3.96436" uv="0 0 1 1" color="1 1 1 1" rot="309.089" />
-            <billboard enabled="true" pos="-0.719604 0.193604 6.63757" size="4.54443 4.25983" uv="0 0 1 1" color="1 1 1 1" rot="49.3945" />
-            <billboard enabled="true" pos="0.991974 -0.939209 3.10272" size="3.16675 4.57782" uv="0 0 1 1" color="1 1 1 1" rot="346.783" />
-            <billboard enabled="true" pos="2.21741 2.70044 1.16913" size="3.8866 3.50012" uv="0 0 1 1" color="1 1 1 1" rot="23.9282" />
-            <billboard enabled="true" pos="-5.5751 -2.30859 -0.292511" size="3.93121 3.92462" uv="0 0 1 1" color="1 1 1 1" rot="58.3594" />
-            <billboard enabled="true" pos="3.81912 2.1521 -3.19656" size="4.36432 4.99536" uv="0 0 1 1" color="1 1 1 1" rot="305.365" />
-            <billboard enabled="true" pos="4.92783 1.50952 4.64996" size="3.87006 3.75537" uv="0 0 1 1" color="1 1 1 1" rot="293.796" />
-            <billboard enabled="true" pos="2.94388 3.34937 0.166626" size="3.67584 3.85736" uv="0 0 1 1" color="1 1 1 1" rot="318.219" />
-        </component>
-    </entity>
-    <entity id="404" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="96.344 5.06271 -71.0144" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="4.42612 -2.0542 -0.939789" size="4.71216 3.53516" uv="0 0 1 1" color="1 1 1 1" rot="144.778" />
-            <billboard enabled="true" pos="-1.68869 2.09888 -2.39319" size="3.85016 4.07336" uv="0 0 1 1" color="1 1 1 1" rot="8.03101" />
-            <billboard enabled="true" pos="-3.49365 0.360107 -5.54169" size="4.95056 3.31061" uv="0 0 1 1" color="1 1 1 1" rot="222.341" />
-            <billboard enabled="true" pos="-5.57373 2.8291 -4.27094" size="4.47528 4.56592" uv="0 0 1 1" color="1 1 1 1" rot="199.369" />
-            <billboard enabled="true" pos="7.22809 0.763428 -3.60764" size="4.59344 4.75897" uv="0 0 1 1" color="1 1 1 1" rot="134.088" />
-            <billboard enabled="true" pos="-1.4296 -3.80762 2.845" size="4.49139 4.77277" uv="0 0 1 1" color="1 1 1 1" rot="82.3096" />
-            <billboard enabled="true" pos="-5.36362 3.34277 -4.8761" size="4.12103 3.0246" uv="0 0 1 1" color="1 1 1 1" rot="207.631" />
-            <billboard enabled="true" pos="1.29456 -1.51782 2.13776" size="4.83893 4.59387" uv="0 0 1 1" color="1 1 1 1" rot="63.6438" />
-            <billboard enabled="true" pos="-0.628052 3.28857 -2.01736" size="3.90875 3.41693" uv="0 0 1 1" color="1 1 1 1" rot="256.267" />
-            <billboard enabled="true" pos="-6.36063 -1.24146 7.44461" size="4.5769 4.81116" uv="0 0 1 1" color="1 1 1 1" rot="72.6416" />
-            <billboard enabled="true" pos="-0.40329 -1.08081 3.66348" size="3.63977 4.18964" uv="0 0 1 1" color="1 1 1 1" rot="31.0803" />
-            <billboard enabled="true" pos="-7.06421 -0.738037 4.87198" size="3.3446 3.51855" uv="0 0 1 1" color="1 1 1 1" rot="166.805" />
-            <billboard enabled="true" pos="3.95874 -1.1792 -0.36026" size="3.36285 4.10486" uv="0 0 1 1" color="1 1 1 1" rot="224.956" />
-            <billboard enabled="true" pos="2.66006 -1.78296 5.41992" size="4.68652 4.93011" uv="0 0 1 1" color="1 1 1 1" rot="311.385" />
-            <billboard enabled="true" pos="-5.99762 -0.247803 2.84637" size="3.88116 4.22003" uv="0 0 1 1" color="1 1 1 1" rot="237.294" />
-        </component>
-    </entity>
-    <entity id="405" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="19.9585 6.45523 -99.7864" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="5.4776 1.71265 3.78479" size="4.76666 4.83911" uv="0 0 1 1" color="1 1 1 1" rot="58.1506" />
-            <billboard enabled="true" pos="2.84088 -3.35327 2.51175" size="4.96393 4.78247" uv="0 0 1 1" color="1 1 1 1" rot="282.404" />
-            <billboard enabled="true" pos="6.47461 -2.84033 -5.06516" size="3.34924 4.23462" uv="0 0 1 1" color="1 1 1 1" rot="325.942" />
-            <billboard enabled="true" pos="1.28174 1.8042 -3.47855" size="4.15259 3.40594" uv="0 0 1 1" color="1 1 1 1" rot="297.037" />
-            <billboard enabled="true" pos="-2.15286 -0.291748 -2.50351" size="3.83978 4.16418" uv="0 0 1 1" color="1 1 1 1" rot="64.27" />
-            <billboard enabled="true" pos="-4.55795 3.14355 -5.41901" size="3.57501 4.35699" uv="0 0 1 1" color="1 1 1 1" rot="34.7278" />
-            <billboard enabled="true" pos="2.27325 -1.66943 5.23407" size="4.0047 4.29779" uv="0 0 1 1" color="1 1 1 1" rot="240.007" />
-            <billboard enabled="true" pos="5.02945 -1.65771 3.23822" size="3.8241 4.09528" uv="0 0 1 1" color="1 1 1 1" rot="90.5933" />
-            <billboard enabled="true" pos="-3.85941 2.16553 1.84753" size="3.21887 3.96191" uv="0 0 1 1" color="1 1 1 1" rot="279.261" />
-            <billboard enabled="true" pos="1.707 0.0566406 5.65384" size="4.74512 3.8139" uv="0 0 1 1" color="1 1 1 1" rot="318.801" />
-            <billboard enabled="true" pos="2.72461 -1.7124 -3.25882" size="3.77795 4.61896" uv="0 0 1 1" color="1 1 1 1" rot="193.843" />
-            <billboard enabled="true" pos="-6.2114 3.19775 1.43188" size="4.57019 3.31158" uv="0 0 1 1" color="1 1 1 1" rot="254.894" />
-            <billboard enabled="true" pos="-6.09009 2.17822 -7.14615" size="4.46423 4.92828" uv="0 0 1 1" color="1 1 1 1" rot="50.4382" />
-            <billboard enabled="true" pos="-4.81888 -3.21313 3.58429" size="4.15045 3.16479" uv="0 0 1 1" color="1 1 1 1" rot="25.5103" />
-            <billboard enabled="true" pos="-6.26312 -2.34912 -1.41861" size="4.30457 3.07739" uv="0 0 1 1" color="1 1 1 1" rot="56.6016" />
-        </component>
-    </entity>
-    <entity id="406" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="74.7925 18.3827 45.5566" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-4.62891 2.8938 2.91962" size="3.74463 3.10938" uv="0 0 1 1" color="1 1 1 1" rot="289.413" />
-            <billboard enabled="true" pos="-5.95734 -2.17358 0.519562" size="4.77887 3.54877" uv="0 0 1 1" color="1 1 1 1" rot="219.551" />
-            <billboard enabled="true" pos="6.26907 2.61255 -1.67999" size="3.99377 4.4892" uv="0 0 1 1" color="1 1 1 1" rot="158.049" />
-            <billboard enabled="true" pos="-1.91849 -3.35303 4.91409" size="4.55737 4.84235" uv="0 0 1 1" color="1 1 1 1" rot="314.297" />
-            <billboard enabled="true" pos="-1.81229 -1.68091 0.688477" size="4.69489 4.6416" uv="0 0 1 1" color="1 1 1 1" rot="278.295" />
-            <billboard enabled="true" pos="-4.76715 -1.19189 -3.00751" size="4.0741 4.19244" uv="0 0 1 1" color="1 1 1 1" rot="341.422" />
-            <billboard enabled="true" pos="-2.05811 -2.32739 -5.02899" size="4.77325 3.88275" uv="0 0 1 1" color="1 1 1 1" rot="38.5071" />
-            <billboard enabled="true" pos="1.50055 1.19214 -0.294342" size="3.85944 4.81" uv="0 0 1 1" color="1 1 1 1" rot="106.512" />
-            <billboard enabled="true" pos="3.98712 2.56055 1.48041" size="3.15491 4.20056" uv="0 0 1 1" color="1 1 1 1" rot="78.2336" />
-            <billboard enabled="true" pos="-3.72665 -0.454346 -6.83853" size="3.28796 3.7547" uv="0 0 1 1" color="1 1 1 1" rot="188.251" />
-            <billboard enabled="true" pos="6.9191 -2.8772 0.253143" size="4.86487 3.80518" uv="0 0 1 1" color="1 1 1 1" rot="210.103" />
-            <billboard enabled="true" pos="4.59824 2.85205 -7.48581" size="4.80396 3.77649" uv="0 0 1 1" color="1 1 1 1" rot="151.809" />
-            <billboard enabled="true" pos="-1.13251 -3.58691 2.51358" size="3.80151 4.12067" uv="0 0 1 1" color="1 1 1 1" rot="216.738" />
-            <billboard enabled="true" pos="4.98642 -1.27808 6.47186" size="4.79126 4.9425" uv="0 0 1 1" color="1 1 1 1" rot="14.0405" />
-            <billboard enabled="true" pos="-0.553436 1.45361 0.637665" size="3.37384 4.15625" uv="0 0 1 1" color="1 1 1 1" rot="1.5271" />
-        </component>
-    </entity>
-    <entity id="407" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-77.7832 7.90222 20.9778" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-3.77014 3.09985 -3.85345" size="3.60736 4.07098" uv="0 0 1 1" color="1 1 1 1" rot="141.801" />
-            <billboard enabled="true" pos="-4.49844 -3.24072 1.44974" size="3.79401 4.65265" uv="0 0 1 1" color="1 1 1 1" rot="4.42749" />
-            <billboard enabled="true" pos="4.41238 -1.42676 2.37671" size="3.94324 4.37781" uv="0 0 1 1" color="1 1 1 1" rot="4.05396" />
-            <billboard enabled="true" pos="3.94363 3.93091 -2.04987" size="4.46057 4.71191" uv="0 0 1 1" color="1 1 1 1" rot="6.29517" />
-            <billboard enabled="true" pos="-3.43323 2.30273 4.70306" size="4.2226 4.24347" uv="0 0 1 1" color="1 1 1 1" rot="248.335" />
-            <billboard enabled="true" pos="4.13727 -0.144775 -3.0217" size="4.28094 3.48889" uv="0 0 1 1" color="1 1 1 1" rot="355.562" />
-            <billboard enabled="true" pos="-7.23495 -2.53662 -7.23999" size="4.56915 4.46625" uv="0 0 1 1" color="1 1 1 1" rot="347.794" />
-            <billboard enabled="true" pos="-3.61954 3.14966 -5.6044" size="4.66455 3.8559" uv="0 0 1 1" color="1 1 1 1" rot="96.9873" />
-            <billboard enabled="true" pos="-1.77017 -0.692139 -2.26547" size="4.6933 3.54987" uv="0 0 1 1" color="1 1 1 1" rot="339.115" />
-            <billboard enabled="true" pos="-1.59897 1.271 -6.92093" size="3.09387 4.85358" uv="0 0 1 1" color="1 1 1 1" rot="83.54" />
-            <billboard enabled="true" pos="-2.46872 3.86426 -1.19385" size="4.42877 3.77472" uv="0 0 1 1" color="1 1 1 1" rot="127.661" />
-            <billboard enabled="true" pos="4.00269 1.53271 5.40756" size="4.99945 3.98267" uv="0 0 1 1" color="1 1 1 1" rot="119.114" />
-            <billboard enabled="true" pos="6.00128 -1.53687 0.941162" size="4.92993 4.38196" uv="0 0 1 1" color="1 1 1 1" rot="236.052" />
-            <billboard enabled="true" pos="-2.24213 2.82715 -4.68658" size="4.88861 3.07758" uv="0 0 1 1" color="1 1 1 1" rot="103.997" />
-            <billboard enabled="true" pos="-2.10388 -3.15894 2.33002" size="3.966 4.0589" uv="0 0 1 1" color="1 1 1 1" rot="340.071" />
-        </component>
-    </entity>
-    <entity id="408" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-13.0493 6.50192 92.2852" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-0.123596 2.66138 3.37509" size="4.39355 3.63171" uv="0 0 1 1" color="1 1 1 1" rot="260.079" />
-            <billboard enabled="true" pos="-6.02051 -0.994141 -0.659637" size="3.80804 3.90839" uv="0 0 1 1" color="1 1 1 1" rot="85.3418" />
-            <billboard enabled="true" pos="-4.65775 0.317139 7.41806" size="4.14716 4.34198" uv="0 0 1 1" color="1 1 1 1" rot="145.514" />
-            <billboard enabled="true" pos="6.66092 2.99194 -6.62476" size="3.09027 3.25928" uv="0 0 1 1" color="1 1 1 1" rot="145.096" />
-            <billboard enabled="true" pos="1.47263 -3.03467 6.79596" size="3.12469 3.85083" uv="0 0 1 1" color="1 1 1 1" rot="216.628" />
-            <billboard enabled="true" pos="4.68704 -0.48999 3.21716" size="3.73138 3.7002" uv="0 0 1 1" color="1 1 1 1" rot="42.6819" />
-            <billboard enabled="true" pos="-0.058136 0.570313 6.08917" size="3.88129 3.89734" uv="0 0 1 1" color="1 1 1 1" rot="116.521" />
-            <billboard enabled="true" pos="-2.6239 2.3291 -1.88049" size="4.1618 3.79572" uv="0 0 1 1" color="1 1 1 1" rot="18.6658" />
-            <billboard enabled="true" pos="-1.38107 -3.53857 -1.40442" size="3.68488 4.19666" uv="0 0 1 1" color="1 1 1 1" rot="197.479" />
-            <billboard enabled="true" pos="3.74496 -3.31836 6.92871" size="4.48059 4.55927" uv="0 0 1 1" color="1 1 1 1" rot="304.146" />
-            <billboard enabled="true" pos="7.04865 -3.30933 2.35611" size="4.5968 4.99615" uv="0 0 1 1" color="1 1 1 1" rot="172.365" />
-            <billboard enabled="true" pos="4.10065 3.53662 -0.211029" size="3.86646 3.56653" uv="0 0 1 1" color="1 1 1 1" rot="133.813" />
-            <billboard enabled="true" pos="1.06705 0.65625 1.64108" size="4.50977 3.97968" uv="0 0 1 1" color="1 1 1 1" rot="129.144" />
-            <billboard enabled="true" pos="-6.97174 0.510986 -0.553894" size="3.66418 4.50934" uv="0 0 1 1" color="1 1 1 1" rot="174.144" />
-            <billboard enabled="true" pos="5.45517 -1.25659 1.54953" size="3.83032 3.95679" uv="0 0 1 1" color="1 1 1 1" rot="297.433" />
-        </component>
-    </entity>
-    <entity id="409" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-47.5403 14.7032 47.467" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-0.605164 -2.66089 -6.52725" size="4.68213 4.784" uv="0 0 1 1" color="1 1 1 1" rot="84.7925" />
-            <billboard enabled="true" pos="-3.51334 -2.02759 5.80856" size="3.62402 3.58972" uv="0 0 1 1" color="1 1 1 1" rot="127.156" />
-            <billboard enabled="true" pos="5.69046 -2.17505 -3.98346" size="4.67517 4.79095" uv="0 0 1 1" color="1 1 1 1" rot="302.476" />
-            <billboard enabled="true" pos="-5.50369 3.97949 -0.831299" size="4.54333 3.33398" uv="0 0 1 1" color="1 1 1 1" rot="90.813" />
-            <billboard enabled="true" pos="-5.39246 3.84937 -4.71268" size="4.56213 4.05182" uv="0 0 1 1" color="1 1 1 1" rot="99.7119" />
-            <billboard enabled="true" pos="3.27255 0.541992 -7.22626" size="4.90332 3.02856" uv="0 0 1 1" color="1 1 1 1" rot="345.157" />
-            <billboard enabled="true" pos="-2.45819 3.23047 -6.14319" size="3.91528 3.85852" uv="0 0 1 1" color="1 1 1 1" rot="185.372" />
-            <billboard enabled="true" pos="-2.74109 -3.38721 -4.22791" size="4.57416 3.97296" uv="0 0 1 1" color="1 1 1 1" rot="185.295" />
-            <billboard enabled="true" pos="3.19107 -3.01855 4.21371" size="4.7243 3.97339" uv="0 0 1 1" color="1 1 1 1" rot="55.8215" />
-            <billboard enabled="true" pos="-3.27576 3.76978 7.27249" size="3.82117 4.90265" uv="0 0 1 1" color="1 1 1 1" rot="113.258" />
-            <billboard enabled="true" pos="-1.09543 3.62646 -4.55658" size="4.51691 3.83856" uv="0 0 1 1" color="1 1 1 1" rot="224.648" />
-            <billboard enabled="true" pos="6.17661 0.163574 -1.74728" size="4.90411 4.37268" uv="0 0 1 1" color="1 1 1 1" rot="209.355" />
-            <billboard enabled="true" pos="4.79645 3.46802 -2.56851" size="4.7962 4.68066" uv="0 0 1 1" color="1 1 1 1" rot="141.592" />
-            <billboard enabled="true" pos="2.49802 0.293213 -2.67563" size="3.33691 3.25433" uv="0 0 1 1" color="1 1 1 1" rot="127.002" />
-            <billboard enabled="true" pos="6.40778 -0.440186 2.13455" size="3.73175 4.19666" uv="0 0 1 1" color="1 1 1 1" rot="294.258" />
-        </component>
-    </entity>
-    <entity id="410" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="30.9937 15.0525 -18.1946" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="4.78775 0.978516 -3.50281" size="4.0329 3.85834" uv="0 0 1 1" color="1 1 1 1" rot="160.521" />
-            <billboard enabled="true" pos="2.77359 -3.83105 3.82507" size="3.2392 4.35925" uv="0 0 1 1" color="1 1 1 1" rot="316.945" />
-            <billboard enabled="true" pos="-2.07779 1.02344 4.45313" size="4.80396 3.15173" uv="0 0 1 1" color="1 1 1 1" rot="314.242" />
-            <billboard enabled="true" pos="-6.35193 0.027832 -6.87561" size="3.20374 3.78601" uv="0 0 1 1" color="1 1 1 1" rot="73.8611" />
-            <billboard enabled="true" pos="-5.5806 1.47144 -6.12442" size="3.05756 4.41095" uv="0 0 1 1" color="1 1 1 1" rot="13.4802" />
-            <billboard enabled="true" pos="1.8457 2.17432 -5.43365" size="4.85175 4.26959" uv="0 0 1 1" color="1 1 1 1" rot="181.758" />
-            <billboard enabled="true" pos="-0.050354 0.885742 1.76331" size="4.81519 3.3316" uv="0 0 1 1" color="1 1 1 1" rot="268.077" />
-            <billboard enabled="true" pos="3.86536 1.15991 1.73904" size="3.02667 4.86969" uv="0 0 1 1" color="1 1 1 1" rot="353.035" />
-            <billboard enabled="true" pos="-3.50739 -3.10376 5.58151" size="4.19989 4.664" uv="0 0 1 1" color="1 1 1 1" rot="269.604" />
-            <billboard enabled="true" pos="-6.65405 -1.48975 5.9436" size="4.42151 4.24304" uv="0 0 1 1" color="1 1 1 1" rot="35.4529" />
-            <billboard enabled="true" pos="6.28143 3.82983 -0.881653" size="3.67145 3.38483" uv="0 0 1 1" color="1 1 1 1" rot="279.426" />
-            <billboard enabled="true" pos="-3.6058 -1.66724 -6.68976" size="3.4718 3.26239" uv="0 0 1 1" color="1 1 1 1" rot="44.7693" />
-            <billboard enabled="true" pos="4.49066 1.23413 -3.47031" size="4.74951 4.37256" uv="0 0 1 1" color="1 1 1 1" rot="293.038" />
-            <billboard enabled="true" pos="-6.4563 2.19092 4.88159" size="4.2063 4.98285" uv="0 0 1 1" color="1 1 1 1" rot="260.519" />
-            <billboard enabled="true" pos="0.817566 -0.959961 3.49228" size="3.41296 4.52454" uv="0 0 1 1" color="1 1 1 1" rot="139.57" />
-        </component>
-    </entity>
-    <entity id="411" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-36.6638 18.1145 30.7129" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="1.40762 2.96704 2.95395" size="4.27899 4.24707" uv="0 0 1 1" color="1 1 1 1" rot="242.853" />
-            <billboard enabled="true" pos="-6.87469 -2.55054 1.89606" size="4.41327 3.23889" uv="0 0 1 1" color="1 1 1 1" rot="211.926" />
-            <billboard enabled="true" pos="1.48819 0.438965 -4.54926" size="3.24023 4.22638" uv="0 0 1 1" color="1 1 1 1" rot="174.089" />
-            <billboard enabled="true" pos="3.67081 -2.66797 2.22198" size="4.56244 4.20325" uv="0 0 1 1" color="1 1 1 1" rot="330.04" />
-            <billboard enabled="true" pos="-1.85852 0.412598 -4.32999" size="4.82269 3.63135" uv="0 0 1 1" color="1 1 1 1" rot="151.051" />
-            <billboard enabled="true" pos="-0.938416 -1.41284 5.90149" size="4.36877 4.01605" uv="0 0 1 1" color="1 1 1 1" rot="220.199" />
-            <billboard enabled="true" pos="5.66574 -0.681641 -6.01501" size="3.31586 4.05402" uv="0 0 1 1" color="1 1 1 1" rot="342.103" />
-            <billboard enabled="true" pos="-0.875702 0.756104 3.80493" size="4.02008 4.84741" uv="0 0 1 1" color="1 1 1 1" rot="303.948" />
-            <billboard enabled="true" pos="4.90952 -1.36182 -0.162048" size="4.77362 4.48254" uv="0 0 1 1" color="1 1 1 1" rot="348.091" />
-            <billboard enabled="true" pos="6.73782 3.9978 -5.41901" size="3.02386 3.03699" uv="0 0 1 1" color="1 1 1 1" rot="22.9944" />
-            <billboard enabled="true" pos="0.716858 1.02515 -1.45935" size="3.4538 4.07159" uv="0 0 1 1" color="1 1 1 1" rot="0.131836" />
-            <billboard enabled="true" pos="-2.84683 -1.34644 -4.44809" size="4.89044 3.11615" uv="0 0 1 1" color="1 1 1 1" rot="305.321" />
-            <billboard enabled="true" pos="-5.4332 -2.49878 -6.34827" size="4.47968 4.83826" uv="0 0 1 1" color="1 1 1 1" rot="37.2217" />
-            <billboard enabled="true" pos="-2.42294 2.76538 -6.35696" size="4.133 3.72473" uv="0 0 1 1" color="1 1 1 1" rot="100.25" />
-            <billboard enabled="true" pos="-0.578156 0.484863 -4.29245" size="3.16223 3.47162" uv="0 0 1 1" color="1 1 1 1" rot="267.363" />
-        </component>
-    </entity>
-    <entity id="412" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-29.3457 5.55893 11.5417" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-0.980988 2.08374 -6.67648" size="3.34863 4.74628" uv="0 0 1 1" color="1 1 1 1" rot="331.886" />
-            <billboard enabled="true" pos="0.661926 1.67944 3.31924" size="3.20361 3.51965" uv="0 0 1 1" color="1 1 1 1" rot="63.5339" />
-            <billboard enabled="true" pos="-5.97153 2.10059 6.70532" size="3.89539 4.44684" uv="0 0 1 1" color="1 1 1 1" rot="175.122" />
-            <billboard enabled="true" pos="-3.9624 2.9314 -2.98279" size="3.33795 3.30426" uv="0 0 1 1" color="1 1 1 1" rot="289.16" />
-            <billboard enabled="true" pos="-3.21808 3.56763 -1.49231" size="3.33533 4.75189" uv="0 0 1 1" color="1 1 1 1" rot="335.764" />
-            <billboard enabled="true" pos="1.97571 0.285645 3.42453" size="4.8136 4.97156" uv="0 0 1 1" color="1 1 1 1" rot="347.487" />
-            <billboard enabled="true" pos="1.86722 1.1333 0.187683" size="4.93774 3.03223" uv="0 0 1 1" color="1 1 1 1" rot="282.118" />
-            <billboard enabled="true" pos="-7.49863 0.931396 2.27371" size="4.17676 4.12561" uv="0 0 1 1" color="1 1 1 1" rot="110.039" />
-            <billboard enabled="true" pos="-2.98737 -0.313965 -0.500793" size="3.52203 3.10559" uv="0 0 1 1" color="1 1 1 1" rot="324.657" />
-            <billboard enabled="true" pos="2.41013 -3.8916 3.1485" size="3.4306 3.63995" uv="0 0 1 1" color="1 1 1 1" rot="138.12" />
-            <billboard enabled="true" pos="0.534668 -3.30225 -1.59988" size="3.89355 3.00787" uv="0 0 1 1" color="1 1 1 1" rot="75.3662" />
-            <billboard enabled="true" pos="-5.19104 2.98901 -3.81683" size="4.58301 3.39197" uv="0 0 1 1" color="1 1 1 1" rot="82.1008" />
-            <billboard enabled="true" pos="-3.49182 -3.9187 1.26801" size="4.54974 3.6745" uv="0 0 1 1" color="1 1 1 1" rot="181.648" />
-            <billboard enabled="true" pos="4.89578 1.44971 3.45474" size="3.68213 3.50061" uv="0 0 1 1" color="1 1 1 1" rot="237.085" />
-            <billboard enabled="true" pos="-5.93033 -2.68457 -1.42593" size="4.3429 3.96954" uv="0 0 1 1" color="1 1 1 1" rot="303.333" />
-        </component>
-    </entity>
-    <entity id="413" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-64.8438 11.5341 -0.3479" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-6.10153 2.11377 -7.45468" size="4.89606 4.48883" uv="0 0 1 1" color="1 1 1 1" rot="54.1406" />
-            <billboard enabled="true" pos="-0.758972 3.14941 3.74817" size="4.25262 4.75769" uv="0 0 1 1" color="1 1 1 1" rot="287.853" />
-            <billboard enabled="true" pos="-6.58585 -3.00195 6.95938" size="4.17035 3.71118" uv="0 0 1 1" color="1 1 1 1" rot="282.898" />
-            <billboard enabled="true" pos="2.06406 -1.20337 -2.612" size="3.45203 3.6488" uv="0 0 1 1" color="1 1 1 1" rot="104.711" />
-            <billboard enabled="true" pos="-5.43045 -0.297607 -2.69852" size="3.60815 4.83881" uv="0 0 1 1" color="1 1 1 1" rot="4.83398" />
-            <billboard enabled="true" pos="2.89581 3.41919 2.16476" size="3.84003 4.25049" uv="0 0 1 1" color="1 1 1 1" rot="333.105" />
-            <billboard enabled="true" pos="0.402832 1.81567 -3.75183" size="3.59534 3.36639" uv="0 0 1 1" color="1 1 1 1" rot="161.741" />
-            <billboard enabled="true" pos="-4.48517 -2.5708 4.08875" size="3.5813 4.61285" uv="0 0 1 1" color="1 1 1 1" rot="173.782" />
-            <billboard enabled="true" pos="7.4501 3.35352 4.99786" size="4.87268 3.02979" uv="0 0 1 1" color="1 1 1 1" rot="201.5" />
-            <billboard enabled="true" pos="4.20319 -2.41309 -6.32172" size="3.3512 4.60046" uv="0 0 1 1" color="1 1 1 1" rot="17.0508" />
-            <billboard enabled="true" pos="-1.44562 -3.62988 -7.1109" size="3.40295 4.43347" uv="0 0 1 1" color="1 1 1 1" rot="85.0012" />
-            <billboard enabled="true" pos="2.91367 0.370361 5.72983" size="4.83728 3.97455" uv="0 0 1 1" color="1 1 1 1" rot="46.8567" />
-            <billboard enabled="true" pos="0.149231 3.77417 2.51633" size="4.61676 3.8855" uv="0 0 1 1" color="1 1 1 1" rot="108.303" />
-            <billboard enabled="true" pos="-2.87384 0.424072 -2.83813" size="4.46405 3.40198" uv="0 0 1 1" color="1 1 1 1" rot="344.652" />
-            <billboard enabled="true" pos="-2.68524 2.09668 7.37274" size="4.97467 3.12653" uv="0 0 1 1" color="1 1 1 1" rot="14.0735" />
-        </component>
-    </entity>
-    <entity id="414" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="72.1985 17.8156 -83.7524" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-3.46985 3.10815 -3.17368" size="4.24103 4.20758" uv="0 0 1 1" color="1 1 1 1" rot="236.909" />
-            <billboard enabled="true" pos="-2.25723 -0.865967 -2.69165" size="3.99689 3.84131" uv="0 0 1 1" color="1 1 1 1" rot="186.46" />
-            <billboard enabled="true" pos="-0.464172 3.70117 4.82346" size="3.00537 3.80914" uv="0 0 1 1" color="1 1 1 1" rot="67.3352" />
-            <billboard enabled="true" pos="1.62003 -3.18457 1.79123" size="3.93646 4.70294" uv="0 0 1 1" color="1 1 1 1" rot="64.5557" />
-            <billboard enabled="true" pos="-0.336914 2.71387 -6.70761" size="3.01544 3.83087" uv="0 0 1 1" color="1 1 1 1" rot="223.143" />
-            <billboard enabled="true" pos="5.06607 -2.4541 -3.0629" size="4.92865 3.11072" uv="0 0 1 1" color="1 1 1 1" rot="2.37305" />
-            <billboard enabled="true" pos="-5.73807 -2.33154 3.12561" size="4.27637 4.96851" uv="0 0 1 1" color="1 1 1 1" rot="111.412" />
-            <billboard enabled="true" pos="-3.29773 2.70166 3.12424" size="3.58197 4.07233" uv="0 0 1 1" color="1 1 1 1" rot="50.1196" />
-            <billboard enabled="true" pos="-1.63284 2.13062 3.19565" size="3.04657 3.67206" uv="0 0 1 1" color="1 1 1 1" rot="344.103" />
-            <billboard enabled="true" pos="6.89346 -0.741943 7.42584" size="4.37897 3.6012" uv="0 0 1 1" color="1 1 1 1" rot="205.049" />
-            <billboard enabled="true" pos="-0.252228 2.7002 -0.888977" size="3.39685 4.87598" uv="0 0 1 1" color="1 1 1 1" rot="230.988" />
-            <billboard enabled="true" pos="-2.4614 0.383057 5.11551" size="4.92523 3.54968" uv="0 0 1 1" color="1 1 1 1" rot="232.13" />
-            <billboard enabled="true" pos="5.04044 1.14404 -6.24069" size="4.07062 4.29565" uv="0 0 1 1" color="1 1 1 1" rot="330.238" />
-            <billboard enabled="true" pos="2.0874 1.54565 -6.026" size="3.46741 4.35364" uv="0 0 1 1" color="1 1 1 1" rot="59.1504" />
-            <billboard enabled="true" pos="-5.37689 3.41772 -3.95782" size="3.83221 3.22809" uv="0 0 1 1" color="1 1 1 1" rot="55.2612" />
-        </component>
-    </entity>
-    <entity id="415" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="95.8008 19.7926 20.7397" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="0.626221 1.47485 -6.57486" size="3.3324 3.56177" uv="0 0 1 1" color="1 1 1 1" rot="213.267" />
-            <billboard enabled="true" pos="5.69504 -2.03589 -1.54724" size="3.15558 3.07593" uv="0 0 1 1" color="1 1 1 1" rot="296.565" />
-            <billboard enabled="true" pos="-7.49588 0.915039 -3.59573" size="3.14825 4.36206" uv="0 0 1 1" color="1 1 1 1" rot="85.2649" />
-            <billboard enabled="true" pos="-2.58087 -0.843262 -3.31924" size="4.54315 3.33765" uv="0 0 1 1" color="1 1 1 1" rot="339.181" />
-            <billboard enabled="true" pos="-3.45566 1.3418 6.43387" size="4.25549 4.52509" uv="0 0 1 1" color="1 1 1 1" rot="281.129" />
-            <billboard enabled="true" pos="6.01364 -2.64258 -4.00772" size="4.96466 3.64679" uv="0 0 1 1" color="1 1 1 1" rot="144.613" />
-            <billboard enabled="true" pos="3.80905 0.546143 6.43616" size="3.65387 3.17181" uv="0 0 1 1" color="1 1 1 1" rot="245.369" />
-            <billboard enabled="true" pos="4.22562 -0.792725 0.281525" size="4.95667 3.8645" uv="0 0 1 1" color="1 1 1 1" rot="258.3" />
-            <billboard enabled="true" pos="2.08694 -2.32861 -3.66257" size="4.82074 4.99811" uv="0 0 1 1" color="1 1 1 1" rot="314.813" />
-            <billboard enabled="true" pos="-1.41632 1.94507 -1.89194" size="3.75043 3.97974" uv="0 0 1 1" color="1 1 1 1" rot="268.286" />
-            <billboard enabled="true" pos="6.12625 -0.494141 3.51425" size="3.49036 3.93219" uv="0 0 1 1" color="1 1 1 1" rot="353.024" />
-            <billboard enabled="true" pos="-7.32697 -1.72925 4.03152" size="4.7016 4.5495" uv="0 0 1 1" color="1 1 1 1" rot="148.315" />
-            <billboard enabled="true" pos="3.51929 -0.897217 -4.47189" size="4.21777 4.5296" uv="0 0 1 1" color="1 1 1 1" rot="120.52" />
-            <billboard enabled="true" pos="7.39426 0.410156 2.94754" size="3.09827 4.34583" uv="0 0 1 1" color="1 1 1 1" rot="316.307" />
-            <billboard enabled="true" pos="-4.22195 1.47925 -1.55914" size="3.16589 3.29425" uv="0 0 1 1" color="1 1 1 1" rot="244.973" />
-        </component>
-    </entity>
-    <entity id="416" netflags="0" netdistance="0" groupflags="0">
-        <component type="BillboardSet" netflags="0">
-            <transform pos="-46.9299 12.7513 -7.33032" rot="0 0 0" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" animlodbias="1" />
-            <material name="Materials/LitSmoke.xml" />
-            <billboards relative="true" sort="true" scale="true" count="15" />
-            <billboard enabled="true" pos="-4.08142 1.14453 -0.766754" size="3.78516 3.53119" uv="0 0 1 1" color="1 1 1 1" rot="338.873" />
-            <billboard enabled="true" pos="5.6131 -1.79053 -6.65359" size="4.36987 4.90076" uv="0 0 1 1" color="1 1 1 1" rot="133.539" />
-            <billboard enabled="true" pos="-3.43277 -3.8125 4.61197" size="3.04688 4.84943" uv="0 0 1 1" color="1 1 1 1" rot="108.182" />
-            <billboard enabled="true" pos="-0.846405 -3.22192 7.42584" size="4.7312 3.62921" uv="0 0 1 1" color="1 1 1 1" rot="193.722" />
-            <billboard enabled="true" pos="1.02585 0.672852 1.35818" size="3.93665 4.93628" uv="0 0 1 1" color="1 1 1 1" rot="35.1563" />
-            <billboard enabled="true" pos="-2.36343 2.35522 2.03888" size="4.44189 3.19635" uv="0 0 1 1" color="1 1 1 1" rot="149.238" />
-            <billboard enabled="true" pos="-3.67676 -3.42773 -0.718231" size="3.37048 3.73358" uv="0 0 1 1" color="1 1 1 1" rot="124.882" />
-            <billboard enabled="true" pos="3.70926 3.85498 -3.41721" size="4.36383 3.42908" uv="0 0 1 1" color="1 1 1 1" rot="249.565" />
-            <billboard enabled="true" pos="4.01825 3.73901 5.33752" size="3.98358 4.32355" uv="0 0 1 1" color="1 1 1 1" rot="278.185" />
-            <billboard enabled="true" pos="-3.92761 2.96802 -4.52362" size="3.65509 4.56085" uv="0 0 1 1" color="1 1 1 1" rot="125.815" />
-            <billboard enabled="true" pos="-6.48193 -1.0144 -3.92441" size="3.60931 4.35248" uv="0 0 1 1" color="1 1 1 1" rot="347.882" />
-            <billboard enabled="true" pos="-4.37531 -0.594238 -5.7399" size="4.64166 3.52435" uv="0 0 1 1" color="1 1 1 1" rot="255.026" />
-            <billboard enabled="true" pos="-0.788269 -1.07373 2.74063" size="3.34082 3.92712" uv="0 0 1 1" color="1 1 1 1" rot="240.667" />
-            <billboard enabled="true" pos="5.18875 1.27881 -5.01984" size="3.98987 4.81067" uv="0 0 1 1" color="1 1 1 1" rot="21.8738" />
-            <billboard enabled="true" pos="0.329132 -1.66455 6.67191" size="4.86145 4.42084" uv="0 0 1 1" color="1 1 1 1" rot="53.4705" />
-        </component>
-    </entity>
-    <entity id="417" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.809479 0.436766 0.3924 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="4.78821 53.898 22.7097" rot="45 63.9514 28.9965" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="0.5 1 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="418" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.383172 0.922701 -0.0424472 0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-27.9099 44.8636 70.7199" rot="45 -177.363 -173.64" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="0.5 1 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="419" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.632069 0.559358 0.536289 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-16.4063 40.9113 74.6521" rot="45 106.512 58.0452" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="0.5 1 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="420" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.672071 0.526065 0.521129 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-21.9131 49.9155 -22.3206" rot="45 97.8552 50.842" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 1 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="421" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.915743 0.386084 0.111153 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="19.1208 34.5978 58.0765" rot="45 16.7322 6.97176" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 0.5 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="422" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.499425 0.707921 0.499422 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="48.5046 52.8479 57.5912" rot="45 135.132 90.1867" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 1 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="423" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.796545 0.443858 0.410494 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="52.9587 56.7654 43.2312" rot="45 67.6428 31.0204" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 1 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="424" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.440873 0.801939 -0.403143 0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-5.4245 33.0139 -50.7889" rot="45 -149.821 -113.877" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="0.5 1 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="425" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.91203 0.387655 -0.133881 0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-21.7255 37.9651 51.6174" rot="45 -20.2038 -8.44122" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 0.5 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="426" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.632532 0.558949 -0.53617 0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="10.8856 42.9465 63.0981" rot="45 -106.414 -57.9578" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="0.5 1 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="427" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.731892 0.483068 0.480603 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-68.7561 43.3301 -29.2236" rot="45 84.2102 41.0455" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="0.5 1 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="428" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.803278 0.440138 0.401277 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="56.9595 56.5768 -43.721" rot="45 65.7422 29.9702" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 0.5 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="429" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.54353 0.650477 0.530524 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="36.7722 57.6196 49.0997" rot="45 125.354 77.4407" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="0.5 1 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="430" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.407388 0.867854 0.284367 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-53.5309 59.3408 55.2933" rot="45 160.873 135.731" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 0.5 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="431" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.884829 0.399572 -0.239622 0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-8.4549 41.4111 -28.5141" rot="45 -36.8481 -15.7126" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 0.5 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="432" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.679191 0.520551 0.517423 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-33.2108 49.4943 16.3101" rot="45 96.2842 49.6252" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 0.5 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="433" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.508116 0.695813 -0.507605 0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-10.8444 45.6335 -41.8854" rot="45 -133.154 -87.4314" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 0.5 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="434" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.76716 0.46086 -0.446177 0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="-25.415 35.0858 19.0567" rot="45 -75.4981 -35.5628" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 1 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="435" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.85721 0.412447 0.308349 -0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="52.2537 37.6208 -48.1796" rot="45 48.3838 21.0826" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 1 1 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-    <entity id="436" netflags="0" netdistance="0" groupflags="0">
-        <property hash="44830" type="Quaternion" value="0.891534 0.396568 -0.218865 0" sync="false" />
-        <component type="Light" netflags="0">
-            <transform pos="64.9155 47.5919 -2.99835" rot="45 -33.4973 -14.2109" scale="1 1 1" />
-            <parent id="0" type="" name="" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="200" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="spot" color="1 0.5 0.5 1" specular="1" range="75" fov="15" aspectratio="1" />
-            <shadows fadedistance="150" intensity="0" resolution="0.5" nearfarratio="0.01" />
-            <shadowbias constant="2e-005" slopescaled="0" />
-            <shadowcascade lambda="0.5" maxrange="1e+008" faderange="0.2" splits="1" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="0.5" minview="3" />
-            <ramptexture name="Textures/RampExtreme.png" />
-            <shapetexture name="" />
-        </component>
-    </entity>
-</scene>

+ 0 - 6
Bin/Data/Materials/CloudPlane.xml

@@ -1,6 +0,0 @@
-<material>
-    <technique>
-        <texture unit="diffuse" name="Textures/CloudPlane.dds" />
-        <pass name="postopaque" vs="Forward_Unlit" ps="Forward_DiffUnlit" cull="none" depthwrite="false" />
-    </technique>
-</material>

+ 0 - 3
Bin/Data/Materials/Jack.xml

@@ -1,3 +0,0 @@
-<material>
-    <base name="Materials/Default.xml" />
-</material>

+ 0 - 7
Bin/Data/Materials/Jack_Body.xml

@@ -1,7 +0,0 @@
-<material>
-    <base name="Materials/DefaultDiff.xml" />
-    <technique>
-        <texture unit="diffuse" name="Textures/Jack_body_color.jpg" />
-        <parameter name="MatSpecProperties" value="0.1 16" />
-    </technique>
-</material>

+ 0 - 7
Bin/Data/Materials/Jack_Face.xml

@@ -1,7 +0,0 @@
-<material>
-    <base name="Materials/DefaultDiff.xml" />
-    <technique>
-        <texture unit="diffuse" name="Textures/Jack_face.jpg" />
-        <parameter name="MatSpecProperties" value="0.1 16" />
-    </technique>
-</material>

+ 0 - 9
Bin/Data/Materials/LitSmoke.xml

@@ -1,9 +0,0 @@
-<material>
-    <technique>
-        <texture unit="diffuse" name="Textures/Smoke.dds" />
-        <parameter name="MatDiffColor" value="0.5 0.5 0.5 0.5" />
-        <pass name="ambient" vs="Billboard" ps="Billboard_DiffAmbient" depthwrite="false" blend="alpha" />
-        <pass name="light" vs="Billboard" ps="Billboard_Diff" depthwrite="false" blend="addalpha" />
-        <pass name="negative" vs="Billboard" ps="Billboard_Diff" depthwrite="false" blend="multiply" />
-    </technique>
-</material>

+ 0 - 7
Bin/Data/Materials/Mushroom.xml

@@ -1,7 +0,0 @@
-<material>
-    <base name="Materials/DefaultDiff.xml" />
-    <technique>
-        <texture unit="diffuse" name="Textures/Mushroom.dds" />
-        <parameter name="MatSpecProperties" value="0.1 16" />
-    </technique>
-</material>

+ 0 - 7
Bin/Data/Materials/Ninja.xml

@@ -1,7 +0,0 @@
-<material>
-    <base name="Materials/DefaultDiff.xml" />
-    <technique>
-        <texture unit="diffuse" name="Textures/Ninja.dds" />
-        <parameter name="MatSpecProperties" value="0 0" />
-    </technique>
-</material>

+ 0 - 6
Bin/Data/Materials/Particle.xml

@@ -1,6 +0,0 @@
-<material>
-    <technique>
-        <texture unit="diffuse" name="Textures/Flare.dds" />
-        <pass name="ambient" vs="Billboard" ps="Billboard_DiffAdditive" depthwrite="false" blend="add" />
-    </technique>
-</material>

+ 0 - 7
Bin/Data/Materials/Potion.xml

@@ -1,7 +0,0 @@
-<material>
-    <base name="Materials/Default.xml" />
-    <technique>
-        <parameter name="MatDiffColor" value="1 0 0 1" />
-        <parameter name="MatSpecProperties" value="0.25 16" />
-    </technique>
-</material>

+ 0 - 6
Bin/Data/Materials/Smoke.xml

@@ -1,6 +0,0 @@
-<material>
-    <technique>
-        <texture unit="diffuse" name="Textures/Smoke.dds" />
-        <pass name="ambient" vs="Billboard" ps="Billboard_DiffUnlit" depthwrite="false" blend="alpha" />
-    </technique>
-</material>

+ 0 - 7
Bin/Data/Materials/Snow.xml

@@ -1,7 +0,0 @@
-<material>
-    <base name="Materials/DefaultDiff.xml" />
-    <technique>
-        <texture unit="diffuse" name="Textures/Snow.dds" />
-        <parameter name="MatSpecProperties" value="0.25 16" />
-    </technique>
-</material>

+ 0 - 7
Bin/Data/Materials/SnowCrate.xml

@@ -1,7 +0,0 @@
-<material>
-    <base name="Materials/DefaultDiff.xml" />
-    <technique>
-        <texture unit="diffuse" name="Textures/SnowCrate.dds" />
-        <parameter name="MatSpecProperties" value="0.15 16" />
-    </technique>
-</material>

+ 0 - 19
Bin/Data/Materials/Test.xml

@@ -1,19 +0,0 @@
-<material>
-    <base name="Materials/DefaultDiffNormal.xml" />
-    <technique quality="1">
-        <texture unit="diffuse" name="Textures/Diffuse.dds" />
-        <texture unit="normal" name="Textures/Normal.dds" />
-        <parameter name="MatSpecProperties" value="0.5 16" />
-    </technique>
-    <technique quality="0">
-        <texture unit="diffuse" name="Textures/Diffuse.dds" />
-        <parameter name="MatSpecProperties" value="0.5 16" />
-        <pass name="deferred" vs="Deferred/GBuffer" ps="Deferred/GBuffer_Diff" />
-        <pass name="prepass" vs="Prepass/GBuffer" ps="Prepass/GBuffer" />
-        <pass name="material" vs="Prepass/Material" ps="Prepass/Material_Diff" depthwrite="false" depthtest="equal" />
-        <pass name="ambient" vs="Forward" ps="Forward_DiffAmbient" />
-        <pass name="light" vs="Forward" ps="Forward_Diff" depthwrite="false" depthtest="equal" blend="add" />
-        <pass name="negative" vs="Forward" ps="Forward_Diff" depthwrite="false" depthtest="equal" blend="multiply" />
-        <pass name="shadow" vs="Shadow" ps="Shadow" />
-    </technique>
-</material>

BIN
Bin/Data/Models/Box.mdl


BIN
Bin/Data/Models/CloudPlane.mdl


BIN
Bin/Data/Music/NinjaGods.xm


+ 0 - 113
Bin/Data/NinjaSnowWar.xml

@@ -1,113 +0,0 @@
-<Config>
-  <Engine>
-    <ViewStart>10</ViewStart>
-    <ViewEnd>16000</ViewEnd>
-    <StencilShadows>true</StencilShadows>
-    <TextureShadows>false</TextureShadows>
-    <ShadowDistance>1000</ShadowDistance>
-    <ShadowTextureSize>512</ShadowTextureSize>
-  </Engine>
-  <Scene>
-    <AmbientColour>0.2 0.2 0.7</AmbientColour>
-    <ShadowColour>0.5 0.5 0.5</ShadowColour>
-    <LightColour>1 1 1</LightColour>
-    <LightDirection>-1 -1 1</LightDirection>
-    <FogColour>0.2 0.2 0.7</FogColour>
-    <FogStart>5000</FogStart>
-    <FogEnd>15000</FogEnd>
-    <SkyScale>1000</SkyScale>
-    <SkyDistance>3000</SkyDistance>
-    <SkyTiling>5</SkyTiling>
-  </Scene>
-  <Physics>
-    <Gravity>0 -981 0</Gravity>
-    <FrameRate>200</FrameRate>
-    <MinFrameRate>10</MinFrameRate>
-    <TimeScale>1.0</TimeScale>
-  </Physics>
-  <Camera>
-    <MinDistance>25</MinDistance>
-    <MaxDistance>500</MaxDistance>
-    <SafetyDistance>30</SafetyDistance>
-    <RayLength>600</RayLength>
-  </Camera>
-  <Controls>
-    <MouseSensitivity>0.125</MouseSensitivity>
-  </Controls>
-  <Game>
-    <LevelName>NinjaSnowWarScene.xml</LevelName>
-    <PlayerHealth>20</PlayerHealth>
-    <PlayerStart>0 90 0</PlayerStart>
-    <Enemies>5</Enemies>
-    <MaxEnemies>25</MaxEnemies>
-    <IncrementEach>10</IncrementEach>
-    <PowerUps>5</PowerUps>
-    <EnemySpawnRate>1</EnemySpawnRate>
-    <EnemySpawnPosition>0 1000 -12000</EnemySpawnPosition>
-    <EnemySpawnOffset>4000</EnemySpawnOffset>
-    <EnemySpawnVelocity>0 1000 3000</EnemySpawnVelocity>
-    <PowerUpSpawnRate>15</PowerUpSpawnRate>
-    <PowerUpSpawnOffset>4000</PowerUpSpawnOffset>
-    <PowerUpSpawnHeight>5000</PowerUpSpawnHeight>
-  </Game>
-  <AI>
-    <Aggression>0.0025</Aggression>
-    <Prediction>3000</Prediction>
-    <AimSpeed>5</AimSpeed>
-    <DeltaAggression>0.00005</DeltaAggression>
-    <DeltaPrediction>-20</DeltaPrediction>
-    <DeltaAimSpeed>0.15</DeltaAimSpeed>
-    <MaxAggression>0.01</MaxAggression>
-    <MaxPrediction>2000</MaxPrediction>
-    <MaxAimSpeed>20</MaxAimSpeed>
-  </AI>
-  <Objects>
-    <Ninja>
-      <Points>250</Points>
-      <Health>2</Health>
-      <Mass>80</Mass>
-      <Friction>0.5</Friction>
-      <CorpseDuration>3</CorpseDuration>
-      <MoveForce>500000</MoveForce>
-      <AirMoveForce>25000</AirMoveForce>
-      <DampingForce>1000</DampingForce>
-      <JumpForce>9000000</JumpForce>
-      <MinSpeed>10</MinSpeed>
-      <ThrowVelocity>0 425 2000</ThrowVelocity>
-      <ThrowPosition>0 20 100</ThrowPosition>
-      <ThrowDelay>0.1</ThrowDelay>
-      <MaxYAim>65</MaxYAim>
-      <MinYAim>-65</MinYAim>
-      <RenderDistance>15000</RenderDistance>
-    </Ninja>
-    <Potion>
-      <Health>5</Health>
-      <Mass>10</Mass>
-      <Friction>0.5</Friction>
-      <RenderDistance>12500</RenderDistance>
-    </Potion>
-    <SnowCrate>
-      <Points>500</Points>
-      <Health>5</Health>
-      <Mass>200</Mass>
-      <Friction>0.35</Friction>
-      <RenderDistance>15000</RenderDistance>
-    </SnowCrate>
-    <SnowBall>
-      <Damage>1</Damage>
-      <Mass>10</Mass>
-      <Friction>0.5</Friction>
-      <DampingForce>20</DampingForce>
-      <MinHitSpeed>100</MinHitSpeed>
-      <Duration>5</Duration>
-      <GroundHitDuration>1</GroundHitDuration>
-      <ObjectHitDuration>0</ObjectHitDuration>
-      <RenderDistance>7500</RenderDistance>
-    </SnowBall>
-  </Objects>
-</Config>
-
-
-
-
-

+ 0 - 50
Bin/Data/NinjaSnowWarScene.xml

@@ -1,50 +0,0 @@
-<scene name="NinjaSnowWar">
-    <octree min="-20000 -20000 -20000" max="20000 20000 20000" levels="7" />
-    <physics gravity="0 -981 0" fps="200">
-        <linear restthreshold="0.1" dampingthreshold="0" dampingscale="0.001" />
-    </physics>
-    <interpolation predictiontime="2" constant="50" snapthreshold="200" />
-    <entity id="65536" name="Zone" netflags="0" netdistance="0" groupflags="0">
-        <component type="Zone" netflags="0">
-            <transform pos="0 0 0" rot="1 0 0 0" scale="1 1 1" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" />
-            <zone min="-100000 -100000 -100000" max="100000 100000 100000" ambientcolor="0.2 0.2 0.7 0" priority="0" />
-            <fog color="0.2 0.2 0.7 0" start="5000" end="15000" />
-        </component>
-        <component type="Light" netflags="0">
-            <transform pos="0 0 0" rot="0.888074 0.325058 -0.325058 0" scale="1 1 1" />
-            <render castshadows="true" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" fadedistance="0" detail="0" shadowdetail="0" />
-            <light type="directional" color="1 1 1 1" specular="0" range="0" fov="30" aspectratio="1" />
-            <shadows fadedistance="0" intensity="0" resolution="1" nearfarratio="0.002" />
-            <shadowbias constant="0.00025" slopescaled="0.001" />
-            <shadowcascade lambda="0.5" maxrange="5000" faderange="0.2" splits="2" />
-            <shadowfocus enable="true" nonuniform="true" zoomout="true" quantize="50" minview="900" />
-            <ramptexture name="" />
-            <shapetexture name="" />
-        </component>
-        <component type="Skybox" netflags="0">
-            <transform pos="0 3000 0" rot="1 0 0 0" scale="30000 1 30000" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/CloudPlane.mdl" />
-            <material index="0" name="Materials/CloudPlane.xml" />
-        </component>
-    </entity>
-    <entity id="65537" name="Static" netflags="0" netdistance="0" groupflags="0">
-        <component type="StaticModel" netflags="0">
-            <transform pos="0 0 0" rot="1 0 0 0" scale="1 1 1" />
-            <parent id="65537" type="RigidBody" />
-            <render castshadows="false" occluder="false" visible="true" />
-            <lod drawdistance="0" shadowdistance="0" viewmask="-1" lightmask="-1" lodbias="1" />
-            <model name="Models/Level.mdl" />
-            <material index="0" name="Materials/Snow.xml" />
-        </component>
-        <component type="RigidBody" netflags="0">
-            <transform pos="0 0 0" rot="1 0 0 0" scale="1 1 1" />
-            <body mode="static" mass="1.0" friction="0.5" bounce="0" active="false" />
-            <collision name="Physics/Level.xml" group="2" mask="3" />
-        </component>
-    </entity>
-</scene>

+ 0 - 20
Bin/Data/Particle/Smoke.xml

@@ -1,20 +0,0 @@
-<particleemitter>
-    <material name="Materials/Smoke.xml" />
-    <updateinvisible enable="true" />
-    <relative enable="false" />
-    <numparticles value="10" />
-    <activetime value="2" />
-    <inactivetime value="0" />
-    <interval value="0.075" />
-    <sorting enable="true" />
-    <rotationspeed min="-60" max="60" />
-    <direction min="-0.15 1 -0.15" max="0.15 1 0.15" />
-    <velocity min="100" max="130" />
-    <particlesize min="20 20" max="30 30" />
-    <sizedelta add="0" mul="1.3" />
-    <timetolive value="4" />
-    <constantforce value="0.0 -20 0.0" />
-    <colorfade color="0.2 0.2 0.2 0.0" time="0.0" />
-    <colorfade color="0.2 0.2 0.2 1.0" time="0.25" />
-    <colorfade color="0.6 0.6 0.6 0.0" time="4.0" />
-</particleemitter>

+ 0 - 16
Bin/Data/Particle/SnowExplosion.xml

@@ -1,16 +0,0 @@
-<particleemitter>
-    <material name="Materials/Particle.xml" />
-    <updateinvisible enable="true" />
-    <numparticles value="10" />
-    <activetime value="0.1" />
-    <inactivetime value="0" />
-    <interval value="0.02" />
-    <sorting enable="true" />
-    <direction min="-1 0 -1" max="1 1 1" />
-    <velocity min="50" max="100" />
-    <particlesize value="25 25" />
-    <timetolive value="0.5" />
-    <constantforce value="0.0 -200 0.0" />
-    <colorfade color="0.35 0.35 0.5 1.0" time="0.0" />
-    <colorfade color="0.0 0.0 0.0 1.0" time="0.5" />
-</particleemitter>

+ 0 - 18
Bin/Data/Particle/SnowExplosionBig.xml

@@ -1,18 +0,0 @@
-<particleemitter>
-    <material name="Materials/Particle.xml" />
-    <updateinvisible enable="true" />
-    <numparticles value="10" />
-    <emittertype value="box" />
-    <emittersize value="30 30 30" />
-    <activetime value="0.2" />
-    <inactivetime value="0" />
-    <interval value="0.02" />
-    <sorting enable="true" />
-    <direction min="-1 0.5 -1" max="1 1 1" />
-    <velocity min="200" max="300" />
-    <particlesize value="60 60" />
-    <timetolive value="0.5" />
-    <constantforce value="0.0 -400 0.0" />
-    <colorfade color="0.35 0.35 0.5 1.0" time="0.0" />
-    <colorfade color="0.0 0.0 0.0 1.0" time="0.5" />
-</particleemitter>

+ 0 - 3
Bin/Data/Physics/Avatar.xml

@@ -1,3 +0,0 @@
-<collisionshape>
-    <capsule radius="0.35" height="1.2" rotation="90 0 0" />
-</collisionshape>

+ 0 - 3
Bin/Data/Physics/Box.xml

@@ -1,3 +0,0 @@
-<collisionshape>
-    <box halfsize="1 1 1" />
-</collisionshape>

+ 0 - 3
Bin/Data/Physics/Level.xml

@@ -1,3 +0,0 @@
-<collisionshape>
-    <trianglemesh name="Models/Level.mdl" />
-</collisionshape>

+ 0 - 3
Bin/Data/Physics/Mushroom.xml

@@ -1,3 +0,0 @@
-<collisionshape>
-    <trianglemesh name="Models/Mushroom.mdl" lodlevel="0" />
-</collisionshape>

+ 0 - 3
Bin/Data/Physics/Ninja.xml

@@ -1,3 +0,0 @@
-<collisionshape>
-    <capsule radius="35" height="110" rotation="90 0 0" />
-</collisionshape>

+ 0 - 3
Bin/Data/Physics/Potion.xml

@@ -1,3 +0,0 @@
-<collisionshape>
-    <box size="20 40 20" />
-</collisionshape>

+ 0 - 3
Bin/Data/Physics/SnowBall.xml

@@ -1,3 +0,0 @@
-<collisionshape>
-    <box size="15 15 15" />
-</collisionshape>

+ 0 - 3
Bin/Data/Physics/SnowCrate.xml

@@ -1,3 +0,0 @@
-<collisionshape>
-    <box size="80 80 80" />
-</collisionshape>

+ 0 - 174
Bin/Data/Scripts/AIController.as

@@ -1,174 +0,0 @@
-const float initialAggression = 0.0025;
-const float initialPrediction = 3000;
-const float initialAimSpeed = 5;
-const float deltaAggression = 0.00005;
-const float deltaPrediction = -20;
-const float deltaAimSpeed = 0.15;
-const float maxAggression = 0.01;
-const float maxPrediction = 2000;
-const float maxAimSpeed = 20;
-
-float aiAggression = initialAggression;
-float aiPrediction = initialPrediction;
-float aiAimSpeed = initialAimSpeed;
-
-void resetAI()
-{
-    aiAggression = initialAggression;
-    aiPrediction = initialPrediction;
-    aiAimSpeed = initialAimSpeed;
-}
-
-void makeAIHarder()
-{
-    aiAggression += deltaAggression;
-    if (aiAggression > maxAggression)
-        aiAggression = maxAggression;
-
-    aiPrediction += deltaPrediction;
-    if (aiPrediction < maxPrediction)
-        aiPrediction = maxPrediction;
-
-    aiAimSpeed += deltaAimSpeed;
-    if (aiAimSpeed > maxAimSpeed)
-        aiAimSpeed = maxAimSpeed;
-}
-
-class AIController
-{
-    void control(Ninja@ ninja, Entity@ entity, float timeStep)
-    {
-        Scene@ scene = entity.getScene();
-        RigidBody@ body = entity.getComponent("RigidBody");
-
-        // Get closest ninja on the player's side
-        Entity@ targetEntity;
-        Ninja@ targetNinja;
-        RigidBody@ targetBody;
-        array<Entity@> entities = scene.getScriptedEntities("Ninja");
-        float closestDistance = M_INFINITY;
-        for (uint i = 0; i < entities.size(); ++i)
-        {
-            Ninja@ otherNinja = cast<Ninja>(entities[i].getScriptObject());
-            RigidBody@ otherBody = entities[i].getComponent("RigidBody");
-            if (otherNinja.side == SIDE_PLAYER)
-            {
-                float distance = (body.getPhysicsPosition() - otherBody.getPhysicsPosition()).getLength();
-                if (distance < closestDistance)
-                {
-                    @targetEntity = entities[i];
-                    @targetNinja = otherNinja;
-                    @targetBody = otherBody;
-                    closestDistance = distance;
-                }
-            }
-        }
-
-        if ((@targetEntity != null) && (targetNinja.health > 0))
-        {
-            ninja.controls.set(CTRL_FIRE, false);
-            ninja.controls.set(CTRL_JUMP, false);
-
-            float deltaX = 0.0f;
-            float deltaY = 0.0f;
-
-            // Aim from own head to target's feet
-            Vector3 ownPos(body.getPhysicsPosition() + Vector3(0, 90, 0));
-            Vector3 targetPos(targetBody.getPhysicsPosition() + Vector3(0, -90, 0));
-            float distance = (targetPos - ownPos).getLength();
-
-            // Use prediction according to target distance & estimated snowball speed
-            Vector3 currentAim(ninja.getAim() * Vector3(0, 0, 1));
-            float predictDistance = distance;
-            if (predictDistance > 5000) predictDistance = 5000;
-            Vector3 predictedPos = targetPos + targetBody.getLinearVelocity() * predictDistance / aiPrediction;
-            Vector3 targetAim = (predictedPos - ownPos);
-
-            // Add distance/height compensation
-            float compensation = max(targetAim.getLength() - 1500, 0);
-            targetAim += Vector3(0, 0.6, 0) * compensation;
-
-            // X-aiming
-            targetAim.normalize();
-            Vector3 currentYaw(currentAim.x, 0, currentAim.z);
-            Vector3 targetYaw(targetAim.x, 0, targetAim.z);
-            currentYaw.normalize();
-            targetYaw.normalize();
-            deltaX = clamp(Quaternion(currentYaw, targetYaw).getYaw(), -aiAimSpeed, aiAimSpeed);
-
-            // Y-aiming
-            Vector3 currentPitch(0, currentAim.y, 1);
-            Vector3 targetPitch(0, targetAim.y, 1);
-            currentPitch.normalize();
-            targetPitch.normalize();
-            deltaY = clamp(Quaternion(currentPitch, targetPitch).getPitch(), -aiAimSpeed, aiAimSpeed);
-
-            ninja.controls.yaw += 0.1 * deltaX;
-            ninja.controls.pitch += 0.1 * deltaY;
-
-            // Firing? if close enough and relatively correct aim
-            if ((distance < 2500) && (currentAim.dotProduct(targetAim) > 0.75))
-            {
-                if (random(1.0) < aiAggression)
-                    ninja.controls.set(CTRL_FIRE, true);
-            }
-
-            // Movement
-            ninja.dirChangeTime -= timeStep;
-            if (ninja.dirChangeTime <= 0)
-            {
-                ninja.dirChangeTime = 0.5 + random(1.0);
-                ninja.controls.set(CTRL_UP|CTRL_DOWN|CTRL_LEFT|CTRL_RIGHT, false);
-
-                // Far distance: go forward
-                if (distance > 3000)
-                    ninja.controls.set(CTRL_UP, true);
-                else if (distance > 600)
-                {
-                    // Medium distance: random strafing, predominantly forward
-                    float v = random(1.0);
-                    if (v < 0.8)
-                        ninja.controls.set(CTRL_UP, true);
-                    float h = random(1.0);
-                    if (h < 0.3)
-                        ninja.controls.set(CTRL_LEFT, true);
-                    if (h > 0.7)
-                        ninja.controls.set(CTRL_RIGHT, true);
-                }
-                else
-                {
-                    // Close distance: random strafing backwards
-                    float v = random(1.0);
-                    if (v < 0.8)
-                        ninja.controls.set(CTRL_DOWN, true);
-                    float h = random(1.0);
-                    if (h < 0.4)
-                        ninja.controls.set(CTRL_LEFT, true);
-                    if (h > 0.6)
-                        ninja.controls.set(CTRL_RIGHT, true);
-                }
-            }
-
-            // Random jump, if going forward
-            if ((ninja.controls.isDown(CTRL_UP)) && (distance < 1000))
-            {
-                if (random(1.0) < (aiAggression / 5.0))
-                    ninja.controls.set(CTRL_JUMP, true);
-            }
-        }
-        else
-        {
-            // If no target, walk idly
-            ninja.controls.set(CTRL_ALL, false);
-            ninja.controls.set(CTRL_UP, true);
-            ninja.dirChangeTime -= timeStep;
-            if (ninja.dirChangeTime <= 0)
-            {
-                ninja.dirChangeTime = 1 + random(2.0);
-                ninja.controls.yaw += 0.1 * (random(600.0) - 300.0);
-            }
-            if (ninja.isSliding)
-                ninja.controls.yaw += 0.2;
-        }
-    }
-}

+ 0 - 210
Bin/Data/Scripts/Avatar.as

@@ -1,210 +0,0 @@
-#include "Scripts/GameObject.as"
-
-const int ANIM_MOVE = 1;
-
-const float avatarMass = 80;
-const float avatarFriction = 0.75;
-const float avatarMoveForce = 4000;
-const float avatarAirMoveForce = 250;
-const float avatarDampingForce = 750;
-const float avatarJumpForce = 50000;
-
-class Avatar : GameObject
-{
-    Controls controls;
-    Controls prevControls;
-    bool okToJump;
-    float inAirTime;
-    float onGroundTime;
-    float aimX;
-    float aimY;
-
-    Avatar()
-    {
-        health = maxHealth = 100;
-        okToJump = false;
-        onGround = false;
-        isSliding = false;
-        inAirTime = 1;
-        onGroundTime = 0;
-        aimX = 0;
-        aimY = 0;
-    }
-
-    void start()
-    {
-        subscribeToEvent("EntityCollision", "handleEntityCollision");
-    }
-
-    void create(const Vector3&in position, const Quaternion&in rotation)
-    {
-        // Create model
-        AnimatedModel@ model = entity.createComponent("AnimatedModel");
-        model.setModel(cache.getResource("Model", "Models/Jack.mdl"));
-        model.setMaterial(0, cache.getResource("Material", "Materials/Jack_Body.xml"));
-        model.setMaterial(1, cache.getResource("Material", "Materials/Jack_Face.xml"));
-        model.setCastShadows(true);
-        model.setInvisibleLodFactor(3.0f);
-
-        // Create animation controller
-        AnimationController@ controller = entity.createComponent("AnimationController");
-        controller.setAnimatedModel(model);
-
-        // Create body
-        RigidBody@ body = entity.createComponent("RigidBody");
-        body.setPosition(position);
-        body.setRotation(rotation);
-        body.setMode(PHYS_DYNAMIC);
-        body.setMass(avatarMass);
-        body.setFriction(avatarFriction);
-        body.setCollisionShape(cache.getResource("CollisionShape", "Physics/Avatar.xml"));
-        body.setCollisionGroup(1);
-        body.setCollisionMask(3);
-        body.setAngularMaxVelocity(0);
-        body.addChild(model);
-        model.setPosition(Vector3(0, -1.0, 0));
-
-        aimX = rotation.getYaw();
-    }
-
-    void setControls(const Controls&in newControls)
-    {
-        controls = newControls;
-    }
-
-    Quaternion getAim()
-    {
-        Quaternion q;
-        q = q * Quaternion(aimX, Vector3(0, 1, 0));
-        q = q * Quaternion(aimY, Vector3(1, 0, 0));
-        return q;
-    }
-
-    void updateFixed(float timeStep)
-    {
-        RigidBody@ body = entity.getComponent("RigidBody");
-        AnimationController@ controller = entity.getComponent("AnimationController");
-
-        // Turning / horizontal aiming
-        if (aimX != controls.yaw)
-        {
-            body.setActive(true);
-            aimX = controls.yaw;
-        }
-        // Vertical aiming
-        if (aimY != controls.pitch)
-        {
-            body.setActive(true);
-            aimY = controls.pitch;
-        }
-
-        // Force orientation to horizontal aim
-        Quaternion q;
-        q = q * Quaternion(aimX, Vector3(0, 1, 0));
-        body.setRotation(q);
-
-        // Movement ground/air
-        Vector3 vel = body.getLinearVelocity();
-        if (onGround)
-        {
-            inAirTime = 0;
-            onGroundTime += timeStep;
-        }
-        else
-        {
-            onGroundTime = 0;
-            inAirTime += timeStep;
-        }
-
-        if ((inAirTime < 0.3f) && (!isSliding))
-        {
-            bool sidemove = false;
-
-            // Movement in four directions
-            if (controls.isDown(CTRL_UP|CTRL_DOWN|CTRL_LEFT|CTRL_RIGHT))
-            {
-                float animDir = 1.0f;
-                Vector3 force(0, 0, 0);
-                if (controls.isDown(CTRL_UP))
-                    force += q * Vector3(0, 0, 1);
-                if (controls.isDown(CTRL_DOWN))
-                {
-                    animDir = -1.0f;
-                    force += q * Vector3(0, 0, -1);
-                }
-                if (controls.isDown(CTRL_LEFT))
-                {
-                    sidemove = true;
-                    force += q * Vector3(-1, 0, 0);
-                }
-                if (controls.isDown(CTRL_RIGHT))
-                {
-                    sidemove = true;
-                    force += q * Vector3(1, 0, 0);
-                }
-                // Normalize so that diagonal strafing isn't faster
-                force.normalize();
-                force *= avatarMoveForce;
-                body.applyForce(force);
-                
-                // Walk animation
-                controller.setAnimation("Models/Jack_Walk.ani", ANIM_MOVE, true, false, animDir * 0.3 * (Vector3(vel.x, 0, vel.z).getLength()), 1.0, 0.2, 0.0, true);
-            }
-            else
-            {
-                // Idle animation
-                controller.removeAllAnimations(0.2);
-            }
-
-            // Overall damping to cap maximum speed
-            body.applyForce(Vector3(-avatarDampingForce * vel.x, 0, -avatarDampingForce * vel.z));
-
-            // Jumping
-            if (controls.isDown(CTRL_JUMP))
-            {
-                if ((okToJump) && (inAirTime < 0.1f))
-                {
-                    // Lift slightly off the ground for better animation
-                    body.setPosition(body.getPhysicsPosition() + Vector3(0, 0.05, 0));
-                    body.applyForce(Vector3(0, avatarJumpForce, 0));
-                    inAirTime = 1.0f;
-                    controller.removeAllAnimations(0.2);
-                    okToJump = false;
-                }
-            }
-            else okToJump = true;
-        }
-        else
-        {
-            // Motion in the air
-            // Note: when sliding a steep slope, control (or damping) isn't allowed!
-            if ((inAirTime > 0.3f) && (!isSliding))
-            {
-                if (controls.isDown(CTRL_UP|CTRL_DOWN|CTRL_LEFT|CTRL_RIGHT))
-                {
-                    Vector3 force(0, 0, 0);
-                    if (controls.isDown(CTRL_UP))
-                        force += q * Vector3(0, 0, 1);
-                    if (controls.isDown(CTRL_DOWN))
-                        force += q * Vector3(0, 0, -1);
-                    if (controls.isDown(CTRL_LEFT))
-                        force += q * Vector3(-1, 0, 0);
-                    if (controls.isDown(CTRL_RIGHT))
-                        force += q * Vector3(1, 0, 0);
-                    // Normalize so that diagonal strafing isn't faster
-                    force.normalize();
-                    force *= avatarAirMoveForce;
-                    body.applyForce(force);
-                }
-            }
-            
-            // Falling/jumping/sliding animation
-            if (inAirTime > 0.01f)
-                controller.removeAllAnimations(0.2);
-        }
-
-        prevControls = controls;
-        
-        resetWorldCollision();
-    }
-}

+ 0 - 196
Bin/Data/Scripts/AvatarTest.as

@@ -1,196 +0,0 @@
-#include "Scripts/Avatar.as"
-
-const float mouseSensitivity = 0.125;
-const float cameraMinDist = 1;
-const float cameraMaxDist = 6;
-const float cameraSafetyDist = 0.30;
-
-Scene@ gameScene;
-Camera@ gameCamera;
-
-Controls playerControls;
-Controls prevPlayerControls;
-bool drawDebug = false;
-
-void start()
-{
-    initConsole();
-    initScene();
-    createCamera();
-    startGame();
-
-    subscribeToEvent("Update", "handleUpdate");
-    subscribeToEvent("PostUpdate", "handlePostUpdate");
-    subscribeToEvent("PostRenderUpdate", "handlePostRenderUpdate");
-    subscribeToEvent("KeyDown", "handleKeyDown");
-    subscribeToEvent("ScreenMode", "handleScreenMode");
-}
-
-void initConsole()
-{
-    if (engine.isHeadless())
-        return;
-
-    XMLFile@ uiStyle = cache.getResource("XMLFile", "UI/DefaultStyle.xml");
-
-    Console@ console = engine.createConsole();
-    console.setStyle(uiStyle);
-    console.setNumRows(16);
-
-    engine.createDebugHud();
-    debugHud.setStyle(uiStyle);
-}
-
-void initScene()
-{
-    @gameScene = engine.createScene("AvatarTest", BoundingBox(-1000.0, 1000.0), 8, true);
-    // Make the scene & script classes directly accessible from the console
-    engine.setDefaultScene(gameScene);
-    engine.setDefaultScriptFile(scriptFile);
-
-    File@ levelFile = cache.getFile("GraphicsTestScene.xml");
-    gameScene.loadXML(levelFile);
-}
-
-void createCamera()
-{
-    Entity@ cameraEntity = gameScene.createEntity("Camera");
-    @gameCamera = cameraEntity.createComponent("Camera");
-    gameCamera.setNearClip(0.1);
-    gameCamera.setFarClip(500.0);
-
-    if (!engine.isHeadless())
-        pipeline.setViewport(0, Viewport(gameScene, gameCamera));
-}
-
-void startGame()
-{
-    Entity@ playerEntity = gameScene.createEntity("Player");
-    Avatar@ playerAvatar = cast<Avatar>(playerEntity.createScriptObject(scriptFile, "Avatar"));
-    playerAvatar.create(Vector3(50, 5, 50), Quaternion());
-    playerAvatar.controls = playerAvatar.prevControls = playerControls;
-}
-
-void handleUpdate(StringHash eventType, VariantMap& eventData)
-{
-    float timeStep = eventData["TimeStep"].getFloat();
-
-    if (input.getKeyPress(KEY_F1))
-        debugHud.toggleAll();
-    if (input.getKeyPress(KEY_F2))
-        drawDebug = !drawDebug;
-        
-    if (input.getKeyPress(KEY_F5))
-        gameScene.save(File(getExecutableDirectory() + "Data/Save.dat", FILE_WRITE));
-
-    if (input.getKeyPress(KEY_ESC))
-    {
-        if (!console.isVisible())
-            engine.exit();
-        else
-        console.setVisible(false);
-    }
-
-    if (!gameScene.isPaused())
-        updateControls();
-}
-
-void handlePostUpdate()
-{
-    updateCamera();
-    updateStatus();
-}
-
-void handlePostRenderUpdate()
-{
-    if (drawDebug)
-        gameScene.getPhysicsWorld().drawDebugGeometry(true);
-}
-
-void updateControls()
-{
-    prevPlayerControls = playerControls;
-    playerControls.set(CTRL_ALL, false);
-
-    if (!console.isVisible())
-    {
-        if (input.getKeyDown('W'))
-            playerControls.set(CTRL_UP, true);
-        if (input.getKeyDown('S'))
-            playerControls.set(CTRL_DOWN, true);
-        if (input.getKeyDown('A'))
-            playerControls.set(CTRL_LEFT, true);
-        if (input.getKeyDown('D'))
-            playerControls.set(CTRL_RIGHT, true);
-        if (input.getKeyDown(KEY_CTRL))
-            playerControls.set(CTRL_FIRE, true);
-        if (input.getKeyDown(' '))
-            playerControls.set(CTRL_JUMP, true);
-    }
-
-    if (input.getMouseButtonDown(MOUSEB_LEFT))
-        playerControls.set(CTRL_FIRE, true);
-    if (input.getMouseButtonDown(MOUSEB_RIGHT))
-        playerControls.set(CTRL_JUMP, true);
-
-    playerControls.yaw += mouseSensitivity * input.getMouseMoveX();
-    playerControls.pitch += mouseSensitivity * input.getMouseMoveY();
-    playerControls.pitch = clamp(playerControls.pitch, -60, 60);
-
-    Entity@ playerEntity = gameScene.getEntity("Player");
-    if (playerEntity !is null)
-    {
-        Avatar@ playerAvatar = cast<Avatar>(playerEntity.getScriptObject());
-        playerAvatar.controls = playerControls;
-    }
-}
-
-void updateCamera()
-{
-    Entity@ playerEntity = gameScene.getEntity("Player");
-    if (playerEntity is null)
-        return;
-
-    RigidBody@ body = playerEntity.getComponent("RigidBody");
-    Vector3 pos = body.getWorldPosition();
-    Quaternion dir;
-    dir = dir * Quaternion(playerControls.yaw, Vector3(0, 1, 0));
-    dir = dir * Quaternion(playerControls.pitch, Vector3(1, 0, 0));
-
-    Vector3 aimPoint = pos + Vector3(0, 1, 0);
-    Vector3 minDist = aimPoint + dir * Vector3(0, 0, -cameraMinDist);
-    Vector3 maxDist = aimPoint + dir * Vector3(0, 0, -cameraMaxDist);
-
-    // Collide camera ray with static objects (collision mask 2)
-    Vector3 rayDir = (maxDist - minDist).getNormalized();
-    float rayDistance = cameraMaxDist - cameraMinDist + cameraSafetyDist;
-    array<PhysicsRaycastResult>@ result = gameScene.getPhysicsWorld().raycast(Ray(minDist, rayDir), rayDistance, 2);
-    if (result.size() > 0)
-        rayDistance = min(rayDistance, result[0].distance - cameraSafetyDist);
-
-    gameCamera.setPosition(minDist + rayDir * rayDistance);
-    gameCamera.setRotation(dir);
-
-    audio.setListenerPosition(pos);
-    audio.setListenerRotation(dir);
-}
-
-void updateStatus()
-{
-    if (engine.isHeadless())
-        return;
-}
-
-void handleKeyDown(StringHash eventType, VariantMap& eventData)
-{
-    // Check for toggling the console
-    if (eventData["Key"].getInt() == 220)
-    {
-        console.toggle();
-        input.suppressNextChar();
-    }
-}
-
-void handleScreenMode()
-{
-}

+ 0 - 197
Bin/Data/Scripts/GameObject.as

@@ -1,197 +0,0 @@
-const int CTRL_UP = 1;
-const int CTRL_DOWN = 2;
-const int CTRL_LEFT = 4;
-const int CTRL_RIGHT = 8;
-const int CTRL_FIRE = 16;
-const int CTRL_JUMP = 32;
-const int CTRL_ALL = 63;
-
-const int SIDE_NEUTRAL = 0;
-const int SIDE_PLAYER = 1;
-const int SIDE_ENEMY = 2;
-
-class GameObject : ScriptObject
-{
-    bool onGround;
-    bool isSliding;
-    float duration;
-    int health;
-    int maxHealth;
-    int side;
-    int lastDamageSide;
-
-    GameObject()
-    {
-        onGround = false;
-        isSliding = false;
-        duration = -1; // Infinite
-        health = 0;
-        maxHealth = 0;
-        side = SIDE_NEUTRAL;
-        lastDamageSide = SIDE_NEUTRAL;
-    }
-
-    void create(const Vector3&in position, const Quaternion&in rotation)
-    {
-    }
-
-    void updateFixed(float timeStep)
-    {
-        // Disappear when duration expired
-        if (duration >= 0)
-        {
-            duration -= timeStep;
-            if (duration <= 0)
-                scene.removeEntity(entity);
-        }
-    }
-
-    bool damage(GameObject@ origin, int amount)
-    {
-        if ((origin.side == side) || (health == 0))
-            return false;
-
-        lastDamageSide = origin.side;
-        health -= amount;
-        if (health < 0)
-            health = 0;
-        return true;
-    }
-
-    bool heal(int amount)
-    {
-        // By default do not heal
-        return false;
-    }
-
-    void playSound(const string&in soundName)
-    {
-        RigidBody@ body = entity.getComponent("RigidBody");
-        if (@body == null)
-            return;
-
-        // Create the sound channel
-        PositionalChannel@ channel = entity.createComponent("PositionalChannel", entity.getUniqueComponentName());
-        body.addChild(channel);
-        channel.setAutoRemove(true);
-        channel.setDistanceAttenuation(200, 5000, 1);
-        Sound@ sound = cache.getResource("Sound", soundName);
-        channel.play(sound, sound.getFrequency());
-    }
-
-    Entity@ spawnObject(const Vector3&in position, const Quaternion&in rotation, const string&in className)
-    {
-        Entity@ newEntity = scene.createEntity();
-
-        // Create the script object with specified class
-        GameObject@ object = cast<GameObject>(newEntity.createScriptObject(scriptFile, className));
-        if (@object != null)
-            object.create(position, rotation);
-
-        return newEntity;
-    }
-
-    Entity@ spawnParticleEffect(const Vector3&in position, const string&in effectName, float duration)
-    {
-        Entity@ newEntity = scene.createEntity();
-
-        // Create the particle emitter
-        ParticleEmitter@ emitter = newEntity.createComponent("ParticleEmitter");
-        emitter.loadParameters(cache.getResource("XMLFile", effectName));
-        emitter.setPosition(position);
-
-        // Create a GameObject for managing the effect lifetime
-        GameObject@ object = cast<GameObject>(newEntity.createScriptObject(scriptFile, "GameObject"));
-        if (@object != null)
-            object.duration = duration;
-
-        return newEntity;
-    }
-
-    Entity@ spawnSound(const Vector3&in position, const string&in soundName, float duration)
-    {
-        Entity@ newEntity = scene.createEntity();
-
-        // Create the sound channel
-        PositionalChannel@ channel = newEntity.createComponent("PositionalChannel");
-        channel.setPosition(position);
-        channel.setAutoRemove(true);
-        channel.setDistanceAttenuation(200, 5000, 1);
-        Sound@ sound = cache.getResource("Sound", soundName);
-        channel.play(sound, sound.getFrequency());
-
-        // Create a GameObject for managing the sound lifetime
-        GameObject@ object = cast<GameObject>(newEntity.createScriptObject(scriptFile, "GameObject"));
-        if (@object != null)
-            object.duration = duration;
-
-        return newEntity;
-    }
-
-    void handleEntityCollision(StringHash eventType, VariantMap& eventData)
-    {
-        Entity@ otherEntity = eventData["OtherEntity"].getEntity();
-        RigidBody@ otherBody = eventData["OtherBody"].getRigidBody();
-
-        // If the other rigid body belongs to static geometry, perform world collision
-        if (otherBody.getCollisionGroup() == 2)
-            worldCollision(eventData);
-
-        // If the other entity is scripted, perform object-to-object collision
-        GameObject@ otherObject = cast<GameObject>(otherEntity.getScriptObject());
-        if (@otherObject != null)
-            objectCollision(otherObject, eventData);
-    }
-
-    void worldCollision(VariantMap& eventData)
-    {
-        RigidBody@ body = entity.getComponent("RigidBody");
-
-        VectorBuffer contacts = eventData["Contacts"].getBuffer();
-        while (!contacts.isEof())
-        {
-            Vector3 contactPosition = contacts.readVector3();
-            Vector3 contactNormal = contacts.readVector3();
-            float contactDepth = contacts.readFloat();
-            float contactVelocity = contacts.readFloat();
-
-            // If contact is below center and mostly vertical, assume it's ground contact
-            if (contactPosition.y < body.getPhysicsPosition().y)
-            {
-                float level = abs(contactNormal.y);
-                if (level > 0.75)
-                    onGround = true;
-                else
-                {
-                    // If contact is somewhere inbetween vertical/horizontal, is sliding a slope
-                    if (level > 0.1)
-                        isSliding = true;
-                }
-            }
-        }
-
-        // Ground contact has priority over sliding contact
-        if (onGround == true)
-            isSliding = false;
-    }
-
-    void objectCollision(GameObject@ otherObject, VariantMap& eventData)
-    {
-    }
-
-    void resetWorldCollision()
-    {
-        RigidBody@ body = entity.getComponent("RigidBody");
-        if (body.isActive())
-        {
-            onGround = false;
-            isSliding = false;
-        }
-        else
-        {
-            // If body is not active, assume it rests on the ground
-            onGround = true;
-            isSliding = false;
-        }
-    }
-}

+ 0 - 607
Bin/Data/Scripts/GraphicsTest.as

@@ -1,607 +0,0 @@
-// GraphicsTest example
-
-const uint NUM_OBJECTS = 250;
-const uint NUM_LIGHTS = 20;
-const uint NUM_INSTANCENODES = 20;
-const uint NUM_INSTANCES = 50;
-const uint NUM_BILLBOARDNODES = 20;
-const uint NUM_BILLBOARDS = 15;
-
-Scene@ testScene;
-Camera@ camera;
-Light@ cameraLight;
-float yaw = 0.0;
-float pitch = 0.0;
-float objectangle = 0.0;
-bool paused = true;
-
-int texturequality = 2;
-int materialquality = 2;
-bool usespecular = true;
-bool drawshadows = true;
-int shadowmapsize = 1024;
-bool hiresshadowmap = false;
-bool useocclusion = true;
-bool attach = true;
-int drawdebug = 0;
-
-array<Entity@> animatingObjects;
-array<Entity@> billboards;
-array<Entity@> lights;
-
-FileSelector@ fileSelector;
-
-void start()
-{
-    if (engine.isHeadless())
-    {
-        errorDialog("GraphicsTest", "Headless mode is not supported. The program will now exit.");
-        engine.exit();
-        return;
-    }
-         
-    initConsole();
-    initScene();
-    initUI();
-    createCamera();
-
-    subscribeToEvent("Update", "handleUpdate");
-    subscribeToEvent("KeyDown", "handleKeyDown");
-    subscribeToEvent("MouseMove", "handleMouseMove");
-    subscribeToEvent("MouseButtonDown", "handleMouseButtonDown");
-    subscribeToEvent("MouseButtonUp", "handleMouseButtonUp");
-    subscribeToEvent("PostRenderUpdate", "handlePostRenderUpdate");
-}
-
-void initScene()
-{
-    @testScene = engine.createScene("GraphicsTest", BoundingBox(-1000.0, 1000.0), 8, true);
-    // Make the scene directly accessible from the console
-    engine.setDefaultScene(testScene);
-
-    PhysicsWorld@ world = testScene.getPhysicsWorld();
-
-    // Set the physics world parameters
-    world.setGravity(Vector3(0.0, -9.81, 0.0));
-    world.setFps(100);
-    world.setLinearRestThreshold(0.1);
-    world.setAngularRestThreshold(0.1);
-    world.setContactSurfaceLayer(0.001);
-
-    // Create the directional light
-    Entity@ sun = testScene.createEntity();
-    Light@ sunLight = sun.createComponent("Light");
-    sunLight.setLightType(LIGHT_DIRECTIONAL);
-    sunLight.setDirection(Vector3(0.5, -1.0, 0.5));
-    sunLight.setColor(Color(0.2, 0.2, 0.2));
-    sunLight.setSpecularIntensity(1.0);
-    //sunLight.setCastShadows(true);
-    //sunLight.setShadowCascade(CascadeParameters(3, 0.95, 0.2, 500.0));
-
-    // Create a zone to control the ambient lighting
-    Entity@ zoneEntity = testScene.createEntity();
-    Zone@ zone = zoneEntity.createComponent("Zone");
-    zone.setBoundingBox(BoundingBox(-1000.0, 1000.0));
-    zone.setAmbientColor(Color(0.1, 0.1, 0.1));
-
-    // Create the "floor"
-    for (int y = -5; y <= 5; y++)
-    {
-        for (int x = -5; x <= 5; x++)
-        {
-            Entity@ newEntity = testScene.createEntity();
-            RigidBody@ body = newEntity.createComponent("RigidBody");
-            body.setPosition(Vector3(x * 20.5, -0.5, y * 20.5));
-            body.setScale(Vector3(10.0, 0.5, 10.0));
-            body.setCollisionShape(cache.getResource("CollisionShape", "Physics/Box.xml"));
-            body.setCollisionGroup(2);
-            body.setCollisionMask(1);
-
-            StaticModel@ object = newEntity.createComponent("StaticModel");
-            object.setModel(cache.getResource("Model", "Models/Box.mdl"));
-            object.setMaterial(cache.getResource("Material", "Materials/Test.xml"));
-            body.addChild(object);
-        }
-    }
-
-    // Create 2 occluder walls
-    for (int x = 0; x < 2; x++)
-    {
-        Entity@ newEntity = testScene.createEntity();
-        RigidBody@ body = newEntity.createComponent("RigidBody");
-        body.setPosition(Vector3(0.0, 5.0, 0.0));
-        body.setRotation(Quaternion(x * 90.0f, Vector3(0, 1, 0)));
-        body.setScale(Vector3(112.0, 5.0, 0.5));
-        body.setCollisionShape(cache.getResource("CollisionShape", "Physics/Box.xml"));
-        body.setCollisionGroup(2);
-        body.setCollisionMask(1);
-
-        StaticModel@ object = newEntity.createComponent("StaticModel");
-        object.setModel(cache.getResource("Model", "Models/Box.mdl"));
-        object.setMaterial(cache.getResource("Material", "Materials/Test.xml"));
-        object.setCastShadows(true);
-        object.setOccluder(true);
-        body.addChild(object);
-    }
-    
-    // Create static mushroom with physics
-    {
-        Entity@ newEntity = testScene.createEntity();
-        RigidBody@ body = newEntity.createComponent("RigidBody");
-        body.setPosition(Vector3(50.0, 0.0, 50.0));
-        body.setScale(10.0);
-        body.setCollisionShape(cache.getResource("CollisionShape", "Physics/Mushroom.xml"));
-        body.setCollisionGroup(2);
-        body.setCollisionMask(1);
-
-        StaticModel@ object = newEntity.createComponent("StaticModel");
-        object.setModel(cache.getResource("Model", "Models/Mushroom.mdl"));
-        object.setMaterial(cache.getResource("Material", "Materials/Mushroom.xml"));
-        object.setCastShadows(true);
-        object.setOccluder(true);
-        body.addChild(object);
-    }
-    
-    // Create instanced mushrooms
-    for (uint i = 0; i < NUM_INSTANCENODES; ++i)
-    {
-        Entity@ newEntity = testScene.createEntity();
-        InstancedModel@ instanced = newEntity.createComponent("InstancedModel");
-
-        instanced.setModel(cache.getResource("Model", "Models/Mushroom.mdl"));
-        instanced.setMaterial(cache.getResource("Material", "Materials/Mushroom.xml"));
-        instanced.setPosition(Vector3(random() * 160.0 - 80.0, 0.0, random() * 160.0 - 80.0));
-        instanced.setCastShadows(true);
-        instanced.setNumInstances(NUM_INSTANCES);
-
-        for (uint j = 0; j < NUM_INSTANCES; ++j)
-        {
-            Vector3 position(random() * 20.0f - 10.0f, 0.0f, random() * 20.0f - 10.0f);
-            float angle = random() * 360.0f;
-            float size = 1.0f + random() * 2.0f;
-            
-            Instance@ instance = instanced.getInstance(j);
-            instance.position = position;
-            instance.rotation = Quaternion(angle, Vector3(0, 1, 0));
-            instance.scale = Vector3(size, size, size);
-        }
-        
-        instanced.updated();
-    }
-    
-    // Create animated models
-    for (uint i = 0; i < NUM_OBJECTS; ++i)
-    {
-        Entity@ newEntity = testScene.createEntity();
-        AnimatedModel@ object = newEntity.createComponent("AnimatedModel");
-        
-        Vector3 position(random() * 180.0 - 90.0, 0.0, random() * 180.0 - 90.0);
-        float angle = random() * 360.0f;
-        
-        object.setPosition(position);
-        object.setRotation(Quaternion(angle, Vector3(0, 1, 0)));
-        object.setCastShadows(true);
-        object.setScale(1.0 + random() * 0.25);
-        object.setModel(cache.getResource("Model", "Models/Jack.mdl"));
-        object.setMaterial(cache.getResource("Material", "Materials/Jack.xml"));
-        object.setDrawDistance(300.0);
-        
-        AnimationState@ anim = object.addAnimationState(cache.getResource("Animation", "Models/Jack_Walk.ani"));
-        anim.setUseNlerp(true);
-        anim.setLooped(true);
-        anim.setWeight(1.0f);
-
-        animatingObjects.push(newEntity);
-    }
-    
-    // Create floating smoke clouds
-    for (uint i = 0; i < NUM_BILLBOARDNODES; ++i)
-    {
-        Entity@ newEntity = testScene.createEntity();
-        BillboardSet@ billboard = newEntity.createComponent("BillboardSet");
-
-        billboard.setNumBillboards(NUM_BILLBOARDS);
-        billboard.setPosition(Vector3(random() * 200.0 - 100.0, random() * 15.0 + 5.0, random() * 200.0 - 100.0));
-        billboard.setMaterial(cache.getResource("Material", "Materials/LitSmoke.xml"));
-        billboard.setBillboardsSorted(true);
-
-        for (uint j = 0; j < NUM_BILLBOARDS; ++j)
-        {
-            Billboard@ bb = billboard.getBillboard(j);
-            bb.position = Vector3(random() * 15.0 - 7.5, random() * 8.0 - 4.0, random() * 15.0 - 7.5);
-            bb.size = Vector2(random() * 2.0 + 3.0, random() * 2.0 + 3.0);
-            bb.rotation = random() * 360.0;
-            bb.enabled = true;
-        }
-        
-        billboard.updated();
-        
-        billboards.push(newEntity);
-    }
-    
-    // Create lights
-    for (uint i = 0; i < NUM_LIGHTS; ++i)
-    {
-        Entity@ newEntity = testScene.createEntity();
-        Light@ light = newEntity.createComponent("Light");
-
-        Vector3 position(
-            random() * 150.0 - 75.0,
-            random() * 30.0 + 30.0,
-            random() * 150.0 - 75.0
-        );
-        
-        Color color(
-            (randomInt() & 1) * 0.5 + 0.5,
-            (randomInt() & 1) * 0.5 + 0.5,
-            (randomInt() & 1) * 0.5 + 0.5
-        );
-        
-        if ((color.r == 0.5) && (color.g == 0.5) && (color.b == 0.5))
-            color = Color(1.0, 1.0, 1.0);
-        
-        float angle = random() * 360.0;
-        
-        light.setPosition(position);
-        light.setDirection(Vector3(sin(angle), -1.0, cos(angle)));
-        light.setLightType(LIGHT_SPOT);
-        light.setRange(75.0);
-        light.setRampTexture(cache.getResource("Texture2D", "Textures/RampExtreme.png"));
-        light.setFov(15.0);
-        light.setColor(color);
-        light.setSpecularIntensity(1.0f);
-        light.setCastShadows(true);
-        light.setShadowBias(BiasParameters(0.00002, 0.0));
-        light.setShadowDistance(200.0f);
-        light.setShadowFadeDistance(150.0f);
-        light.setShadowResolution(0.5);
-        // The spot lights will not have anything near them, so move the near plane of the shadow camera farther
-        // for better shadow depth resolution
-        light.setShadowNearFarRatio(0.01);
-        
-        // Store the original rotation as an entity property
-        newEntity.setProperty("rotation", Variant(light.getRotation()));
-
-        lights.push(newEntity);
-    }
-    
-    // Save the ready scene for examination
-    //scene.saveXML(File("Data/GraphicsTestScene.xml", FILE_WRITE));
-    //scene.save(File("Data/GraphicsTestScene.bin", FILE_WRITE));
-}
-
-void animateScene(float timeStep)
-{
-    objectangle += 10.0f * timeStep;
-    
-    for (uint i = 0; i < lights.size(); ++i)
-    {
-        Light@ light = lights[i].getComponent("Light");
-        light.setRotation(Quaternion(0, objectangle * 2, 0) * lights[i].getProperty("rotation").getQuaternion());
-    }
-    
-    for (uint i = 0; i < animatingObjects.size(); ++i)
-    {
-        AnimatedModel@ model = animatingObjects[i].getComponent("AnimatedModel");
-        uint numAnims = model.getNumAnimationStates();
-        for (uint j = 0; j < numAnims; ++j)
-        {
-            AnimationState@ state = model.getAnimationState(j);
-            state.addTime(timeStep);
-        }
-    }
-    
-    for (uint i = 0; i < billboards.size(); ++i)
-    {
-        BillboardSet@ billboard = billboards[i].getComponent("BillboardSet");
-        uint numBB = billboard.getNumBillboards();
-        for (uint j = 0; j < numBB; ++j)
-        {
-            Billboard@ bb = billboard.getBillboard(j);
-            bb.rotation += 50.0 * timeStep;
-        }
-
-        billboard.updated();
-    }
-}
-
-void initConsole()
-{
-    XMLFile@ uiStyle = cache.getResource("XMLFile", "UI/DefaultStyle.xml");
-
-    Console@ console = engine.createConsole();
-    console.setStyle(uiStyle);
-    console.setNumRows(16);
-
-    engine.createDebugHud();
-    debugHud.setStyle(uiStyle);
-    debugHud.setMode(DEBUGHUD_SHOW_STATS | DEBUGHUD_SHOW_MODE);
-}
-
-void initUI()
-{
-    XMLFile@ uiStyle = cache.getResource("XMLFile", "UI/DefaultStyle.xml");
-
-    Cursor@ cursor = Cursor("Cursor");
-    cursor.setStyleAuto(uiStyle);
-    cursor.setPosition(renderer.getWidth() / 2, renderer.getHeight() / 2);
-    ui.setCursor(cursor);
-}
-
-void createCamera()
-{
-    Entity@ cameraEntity = testScene.createEntity("Camera");
-    @camera = cameraEntity.createComponent("Camera");
-    camera.setPosition(Vector3(-50.0, 2.0, -50.0));
-
-    @cameraLight = cameraEntity.createComponent("Light");
-    cameraLight.setLightType(LIGHT_SPOT);
-    cameraLight.setDirection(Vector3(0.0, 0.0, 1.0));
-    cameraLight.setRange(50.0);
-    cameraLight.setColor(Color(2.0, 2.0, 2.0));
-    cameraLight.setSpecularIntensity(2.0);
-    cameraLight.setCastShadows(true);
-    cameraLight.setShadowDistance(200.0f);
-    cameraLight.setShadowFadeDistance(150.0f);
-    cameraLight.setShadowResolution(0.5);
-    cameraLight.setShadowFocus(FocusParameters(false, false, false, 0.5, 3.0));
-    cameraLight.setRampTexture(cache.getResource("Texture2D", "Textures/RampWide.png"));
-    cameraLight.setShapeTexture(cache.getResource("Texture2D", "Textures/SpotWide.png"));
-    camera.addChild(cameraLight);
-
-    pipeline.setViewport(0, Viewport(testScene, camera));
-
-    /*
-    // Auxiliary view test
-    const int D3DFMT_A8R8G8B8 = 21;
-
-    Texture2D@ rtTex = Texture2D(TEXTURE_RENDERTARGET, "RTT");
-    rtTex.setSize(512, 512, D3DFMT_A8R8G8B8);
-    rtTex.getRenderSurface().setViewport(Viewport(testScene, camera));
-    rtTex.setBackupTexture(cache.getResource("Texture2D", "Textures/Diffuse.dds"));
-
-    Material@ mat = cache.getResource("Material", "Materials/Test.xml");
-    MaterialTechnique@ tech = mat.getTechnique(0);
-    tech.setTexture(TU_DIFFUSE, rtTex);
-    */
-}
-
-void handleUpdate(StringHash eventType, VariantMap& eventData)
-{
-    float timeStep = eventData["TimeStep"].getFloat();
-
-    if (!paused)
-        animateScene(timeStep);
-
-    if (ui.getFocusElement() is null)
-    {
-        float speedMultiplier = 1.0;
-        if (input.getKeyDown(KEY_SHIFT))
-            speedMultiplier = 5.0;
-        if (input.getKeyDown(KEY_CTRL))
-            speedMultiplier = 0.1;
-
-        if (input.getKeyDown('W'))
-            camera.translateRelative(Vector3(0, 0, 10) * timeStep * speedMultiplier);
-        if (input.getKeyDown('S'))
-            camera.translateRelative(Vector3(0, 0, -10) * timeStep * speedMultiplier);
-        if (input.getKeyDown('A'))
-            camera.translateRelative(Vector3(-10, 0, 0) * timeStep * speedMultiplier);
-        if (input.getKeyDown('D'))
-            camera.translateRelative(Vector3(10, 0, 0) * timeStep * speedMultiplier);
-
-        if (input.getKeyPress('1'))
-        {
-            int nextRenderMode = renderer.getRenderMode();
-            if (input.getKeyDown(KEY_SHIFT))
-            {
-                --nextRenderMode;
-                if (nextRenderMode < 0)
-                    nextRenderMode = 2;
-            }
-            else
-            {
-                ++nextRenderMode;
-                if (nextRenderMode > 2)
-                    nextRenderMode = 0;
-            }
-
-            renderer.setMode(RenderMode(nextRenderMode), renderer.getWidth(), renderer.getHeight(), renderer.getFullscreen(),
-                renderer.getVsync(), renderer.getMultiSample());
-        }
-
-        if (input.getKeyPress('2'))
-        {
-            texturequality++;
-            if (texturequality > 2)
-                texturequality = 0;
-            pipeline.setTextureQuality(texturequality);
-        }
-
-        if (input.getKeyPress('3'))
-        {
-            materialquality++;
-            if (materialquality > 2)
-                materialquality = 0;
-            pipeline.setMaterialQuality(materialquality);
-        }
-
-        if (input.getKeyPress('4'))
-        {
-            usespecular = !usespecular;
-            pipeline.setSpecularLighting(usespecular);
-        }
-
-        if (input.getKeyPress('5'))
-        {
-            drawshadows = !drawshadows;
-            pipeline.setDrawShadows(drawshadows);
-        }
-
-        if (input.getKeyPress('6'))
-        {
-            shadowmapsize *= 2;
-            if (shadowmapsize > 2048)
-                shadowmapsize = 512;
-
-            pipeline.setShadowMapSize(shadowmapsize);
-        }
-
-        if (input.getKeyPress('7'))
-        {
-            hiresshadowmap = !hiresshadowmap;
-            pipeline.setShadowMapHiresDepth(hiresshadowmap);
-        }
-
-        if (input.getKeyPress('8'))
-        {
-            useocclusion = !useocclusion;
-            pipeline.setMaxOccluderTriangles(useocclusion ? 5000 : 0);
-        }
-
-        if (input.getKeyPress('L'))
-        {
-            attach = !attach;
-            if (attach)
-            {
-                cameraLight.setPosition(Vector3(0, 0, 0));
-                cameraLight.setRotation(Quaternion());
-                camera.addChild(cameraLight);
-            }
-            else
-            {
-                // Detach child and set world transform to match what it was before detach
-                camera.removeChild(cameraLight, true);
-            }
-        }
-
-        if (input.getKeyPress(' '))
-        {
-            drawdebug++;
-            if (drawdebug > 2) 
-                drawdebug = 0;
-        }
-
-        if (input.getKeyPress('P'))
-        {
-            paused = !paused;
-        }
-
-        if (input.getKeyPress('C'))
-            camera.setOrthographic(!camera.isOrthographic());
-
-        if (input.getKeyPress('T'))
-            debugHud.toggle(DEBUGHUD_SHOW_PROFILER);
-
-        if (input.getKeyPress('F'))
-        {
-            EdgeFilterParameters params = pipeline.getEdgeFilter();
-            if (params.maxFilter > 0.0f)
-                params.maxFilter = 0.0f;
-            else
-                params.maxFilter = 1.0f;
-            pipeline.setEdgeFilter(params);
-        }
-    }
-
-    if (input.getKeyPress(KEY_F5))
-        testScene.save(File(getExecutableDirectory() + "Data/Save.dat", FILE_WRITE));
-
-    if (input.getKeyPress(KEY_ESC))
-    {
-        if (ui.getFocusElement() is null)
-            engine.exit();
-        else
-            console.setVisible(false);
-    }
-}
-
-void handleKeyDown(StringHash eventType, VariantMap& eventData)
-{
-    // Check for toggling the console
-    if (eventData["Key"].getInt() == 220)
-    {
-        console.toggle();
-        input.suppressNextChar();
-    }
-}
-
-void handleMouseMove(StringHash eventType, VariantMap& eventData)
-{
-    if (eventData["Buttons"].getInt() & MOUSEB_RIGHT != 0)
-    {
-        int mousedx = eventData["DX"].getInt();
-        int mousedy = eventData["DY"].getInt();
-        yaw += mousedx / 10.0f;
-        pitch += mousedy / 10.0f;
-        if (pitch < -90.0f)
-            pitch = -90.0f;
-        if (pitch > 90.0f)
-            pitch = 90.0f;
-
-        camera.setRotation(Quaternion(yaw, Vector3(0, 1, 0)) * Quaternion(pitch, Vector3(1, 0, 0)));
-    }
-}
-
-void handleMouseButtonDown(StringHash eventType, VariantMap& eventData)
-{
-    int button = eventData["Button"].getInt();
-    if (button == MOUSEB_RIGHT)
-        uiCursor.setVisible(false);
-
-    // Test creating a new physics object
-    if ((button == MOUSEB_LEFT) && (ui.getElementAt(ui.getCursorPosition(), true) is null) && (ui.getFocusElement() is null))
-    {
-        Entity@ newEntity = testScene.createEntity();
-        
-        RigidBody@ body = newEntity.createComponent("RigidBody");
-        body.setMode(PHYS_DYNAMIC);
-        body.setPosition(camera.getPosition());
-        body.setRotation(camera.getRotation());
-        body.setScale(0.1);
-        body.setFriction(1.0);
-        body.setAngularMaxVelocity(500.0);
-        body.setCollisionShape(cache.getResource("CollisionShape", "Physics/Box.xml"));
-        body.setCollisionGroup(1);
-        body.setCollisionMask(3);
-        body.setLinearVelocity(camera.getUpVector() + camera.getForwardVector() * 10.0);
-        
-        StaticModel@ object = newEntity.createComponent("StaticModel");
-        object.setModel(cache.getResource("Model", "Models/Box.mdl"));
-        object.setMaterial(cache.getResource("Material", "Materials/Test.xml"));
-        object.setCastShadows(true);
-        object.setShadowDistance(75.0f);
-        object.setDrawDistance(100.0f);
-        body.addChild(object);
-    }
-}
-
-void handleMouseButtonUp(StringHash eventType, VariantMap& eventData)
-{
-    if (eventData["Button"].getInt() == MOUSEB_RIGHT)
-        uiCursor.setVisible(true);
-}
-
-void handlePostRenderUpdate()
-{
-    // Draw rendering debug geometry without depth test to see the effect of occlusion
-    if (drawdebug == 1)
-        pipeline.drawDebugGeometry(false);
-    if (drawdebug == 2)
-        testScene.getPhysicsWorld().drawDebugGeometry(true);
-
-    IntVector2 pos = ui.getCursorPosition();
-    if (ui.getElementAt(pos, true) is null)
-    {
-        Ray cameraRay = camera.getScreenRay(float(pos.x) / renderer.getWidth(), float(pos.y) / renderer.getHeight());
-        array<RayQueryResult> result = testScene.getOctree().raycast(cameraRay, NODE_STATICMODEL | NODE_ANIMATEDMODEL |
-            NODE_INSTANCEDMODEL, 250.0f, RAY_TRIANGLE);
-        if (result.size() > 0)
-        {
-            VolumeNode@ node = result[0].node;
-            Vector3 rayHitPos = cameraRay.origin + cameraRay.direction * result[0].distance;
-            debugRenderer.addBoundingBox(BoundingBox(rayHitPos + Vector3(-0.01, -0.01, -0.01), rayHitPos +
-                Vector3(0.01, 0.01, 0.01)), Color(1.0, 1.0, 1.0), true);
-        }
-    }
-}

+ 0 - 34
Bin/Data/Scripts/LightFlash.as

@@ -1,34 +0,0 @@
-#include "Scripts/GameObject.as"
-
-class LightFlash : GameObject
-{
-    LightFlash()
-    {
-    }
-    
-    void create(const Vector3&in position, const Quaternion&in rotation)
-    {
-        Light@ light = entity.createComponent("Light");
-        light.setLightType(LIGHT_POINT);
-        light.setRange(500.0);
-        light.setColor(Color(2.0, 2.0, 2.0));
-        light.setCastShadows(true);
-        light.setShadowResolution(0.25);
-        light.setRampTexture(cache.getResource("Texture2D", "Textures/RampWide.png"));
-        light.setPosition(position);
-        duration = 0.1;
-    }
-
-    void updateFixed(float timeStep)
-    {
-        Light@ light = entity.getComponent("Light");
-        light.setColor(light.getColor() * max(1.0 - timeStep * 10.0, 0.0));
-
-        if (duration >= 0)
-        {
-            duration -= timeStep;
-            if (duration <= 0)
-                scene.removeEntity(entity);
-        }
-    }
-}

+ 0 - 346
Bin/Data/Scripts/Ninja.as

@@ -1,346 +0,0 @@
-#include "Scripts/GameObject.as"
-#include "Scripts/AIController.as"
-
-const int ANIM_MOVE = 1;
-const int ANIM_ATTACK = 2;
-
-const float ninjaMass = 80;
-const float ninjaFriction = 0.5;
-const float ninjaMoveForce = 500000;
-const float ninjaAirMoveForce = 25000;
-const float ninjaDampingForce = 1000;
-const float ninjaJumpForce = 9000000;
-const Vector3 ninjaThrowVelocity(0, 425, 2000);
-const Vector3 ninjaThrowPosition(0, 20, 100);
-const float ninjaThrowDelay = 0.1;
-const float ninjaDrawDistance = 15000;
-const float ninjaCorpseDuration = 3;
-const int ninjaPoints = 250;
-
-class Ninja : GameObject
-{
-    Controls controls;
-    Controls prevControls;
-    AIController@ controller;
-    bool okToJump;
-    bool smoke;
-    float inAirTime;
-    float onGroundTime;
-    float throwTime;
-    float deathTime;
-    float deathDir;
-    float dirChangeTime;
-    float aimX;
-    float aimY;
-
-    Ninja()
-    {
-        health = maxHealth = 2;
-        okToJump = false;
-        smoke = false;
-        onGround = false;
-        isSliding = false;
-        inAirTime = 1;
-        onGroundTime = 0;
-        throwTime = 0;
-        deathTime = 0;
-        deathDir = 0;
-        dirChangeTime = 0;
-        aimX = 0;
-        aimY = 0;
-    }
-
-    void start()
-    {
-        subscribeToEvent("EntityCollision", "handleEntityCollision");
-    }
-
-    void create(const Vector3&in position, const Quaternion&in rotation)
-    {
-        // Create model
-        AnimatedModel@ model = entity.createComponent("AnimatedModel");
-        model.setModel(cache.getResource("Model", "Models/Ninja.mdl"));
-        model.setMaterial(cache.getResource("Material", "Materials/Ninja.xml"));
-        model.setDrawDistance(ninjaDrawDistance);
-        model.setCastShadows(true);
-        model.setInvisibleLodFactor(3.0f);
-
-        // Create animation controller
-        AnimationController@ controller = entity.createComponent("AnimationController");
-        controller.setAnimatedModel(model);
-
-        // Create body
-        RigidBody@ body = entity.createComponent("RigidBody");
-        body.setPosition(position);
-        body.setRotation(rotation);
-        body.setMode(PHYS_DYNAMIC);
-        body.setMass(ninjaMass);
-        body.setFriction(ninjaFriction);
-        body.setCollisionShape(cache.getResource("CollisionShape", "Physics/Ninja.xml"));
-        body.setCollisionGroup(1);
-        body.setCollisionMask(3);
-        body.setAngularMaxVelocity(0);
-        body.addChild(model);
-        model.setPosition(Vector3(0, -90, 0));
-
-        aimX = rotation.getYaw();
-    }
-
-    void setControls(const Controls&in newControls)
-    {
-        controls = newControls;
-    }
-
-    Quaternion getAim()
-    {
-        Quaternion q;
-        q = q * Quaternion(aimX, Vector3(0, 1, 0));
-        q = q * Quaternion(aimY, Vector3(1, 0, 0));
-        return q;
-    }
-
-    void updateFixed(float timeStep)
-    {
-        if (health <= 0)
-        {
-            deathUpdate(timeStep);
-            return;
-        }
-
-        // AI control if controller exists
-        if (@controller != null)
-            controller.control(this, entity, timeStep);
-
-        RigidBody@ body = entity.getComponent("RigidBody");
-        AnimationController@ controller = entity.getComponent("AnimationController");
-
-        // Turning / horizontal aiming
-        if (aimX != controls.yaw)
-        {
-            body.setActive(true);
-            aimX = controls.yaw;
-        }
-        // Vertical aiming
-        if (aimY != controls.pitch)
-        {
-            body.setActive(true);
-            aimY = controls.pitch;
-        }
-
-        // Force orientation to horizontal aim
-        Quaternion q;
-        q = q * Quaternion(aimX, Vector3(0, 1, 0));
-        body.setRotation(q);
-
-        // Movement ground/air
-        Vector3 vel = body.getLinearVelocity();
-        if (onGround)
-        {
-            inAirTime = 0;
-            onGroundTime += timeStep;
-        }
-        else
-        {
-            onGroundTime = 0;
-            inAirTime += timeStep;
-        }
-
-        if ((inAirTime < 0.3f) && (!isSliding))
-        {
-            bool sidemove = false;
-
-            // Movement in four directions
-            if (controls.isDown(CTRL_UP|CTRL_DOWN|CTRL_LEFT|CTRL_RIGHT))
-            {
-                float animDir = 1.0f;
-                Vector3 force(0, 0, 0);
-                if (controls.isDown(CTRL_UP))
-                    force += q * Vector3(0, 0, 1);
-                if (controls.isDown(CTRL_DOWN))
-                {
-                    animDir = -1.0f;
-                    force += q * Vector3(0, 0, -1);
-                }
-                if (controls.isDown(CTRL_LEFT))
-                {
-                    sidemove = true;
-                    force += q * Vector3(-1, 0, 0);
-                }
-                if (controls.isDown(CTRL_RIGHT))
-                {
-                    sidemove = true;
-                    force += q * Vector3(1, 0, 0);
-                }
-                // Normalize so that diagonal strafing isn't faster
-                force.normalize();
-                force *= ninjaMoveForce;
-                body.applyForce(force);
-                
-                // Walk or sidestep animation
-                if (sidemove)
-                    controller.setAnimation("Models/Ninja_Stealth.ani", ANIM_MOVE, true, false, animDir * 2.2, 1.0, 0.2, 0.0, true);
-                else
-                    controller.setAnimation("Models/Ninja_Walk.ani", ANIM_MOVE, true, false, animDir * 1.6, 1.0, 0.2, 0.0, true);
-            }
-            else
-            {
-                // Idle animation
-                controller.setAnimation("Models/Ninja_Idle3.ani", ANIM_MOVE, true, false, 1.0, 1.0, 0.2, 0.0, true);
-            }
-
-            // Overall damping to cap maximum speed
-            body.applyForce(Vector3(-ninjaDampingForce * vel.x, 0, -ninjaDampingForce * vel.z));
-
-            // Jumping
-            if (controls.isDown(CTRL_JUMP))
-            {
-                if ((okToJump) && (inAirTime < 0.1f))
-                {
-                    // Lift slightly off the ground for better animation
-                    body.setPosition(body.getPhysicsPosition() + Vector3(0, 3, 0));
-                    body.applyForce(Vector3(0, ninjaJumpForce, 0));
-                    inAirTime = 1.0f;
-                    controller.setAnimation("Models/Ninja_JumpNoHeight.ani", ANIM_MOVE, false, true, 1.0, 1.0, 0.0, 0.0, true);
-                    okToJump = false;
-                }
-            }
-            else okToJump = true;
-        }
-        else
-        {
-            // Motion in the air
-            // Note: when sliding a steep slope, control (or damping) isn't allowed!
-            if ((inAirTime > 0.3f) && (!isSliding))
-            {
-                if (controls.isDown(CTRL_UP|CTRL_DOWN|CTRL_LEFT|CTRL_RIGHT))
-                {
-                    Vector3 force(0, 0, 0);
-                    if (controls.isDown(CTRL_UP))
-                        force += q * Vector3(0, 0, 1);
-                    if (controls.isDown(CTRL_DOWN))
-                        force += q * Vector3(0, 0, -1);
-                    if (controls.isDown(CTRL_LEFT))
-                        force += q * Vector3(-1, 0, 0);
-                    if (controls.isDown(CTRL_RIGHT))
-                        force += q * Vector3(1, 0, 0);
-                    // Normalize so that diagonal strafing isn't faster
-                    force.normalize();
-                    force *= ninjaAirMoveForce;
-                    body.applyForce(force);
-                }
-            }
-            
-            // Falling/jumping/sliding animation
-            if (inAirTime > 0.01f)
-                controller.setAnimation("Models/Ninja_JumpNoHeight.ani", ANIM_MOVE, false, false, 1.0, 1.0, 0.2, 0.0, true);
-        }
-
-        // Shooting
-        if (throwTime >= 0)
-            throwTime -= timeStep;
-        
-        if ((controls.isPressed(CTRL_FIRE, prevControls)) && (throwTime <= 0))
-        {
-            Vector3 projectileVel = getAim() * ninjaThrowVelocity;
-
-            controller.setAnimation("Models/Ninja_Attack1.ani", ANIM_ATTACK, false, true, 1.0, 0.75, 0.0, 0.0, false);
-            controller.setFade("Models/Ninja_Attack1.ani", 0.0, 0.5);
-            controller.setPriority("Models/Ninja_Attack1.ani", 1);
-
-            Entity@ snowball = spawnObject(body.getPhysicsPosition() + vel * timeStep + q * ninjaThrowPosition, getAim(), "SnowBall");
-            RigidBody@ snowballBody = snowball.getComponent("RigidBody");
-            snowballBody.setLinearVelocity(projectileVel);
-            GameObject@ snowballObject = cast<GameObject>(snowball.getScriptObject());
-            snowballObject.side = side;
-
-            playSound("Sounds/NutThrow.wav");
-
-            throwTime = ninjaThrowDelay;
-        }
-        
-        prevControls = controls;
-        
-        resetWorldCollision();
-    }
-
-    void deathUpdate(float timeStep)
-    {
-        RigidBody@ body = entity.getComponent("RigidBody");
-        AnimationController@ controller = entity.getComponent("AnimationController");
-
-        Vector3 vel = body.getLinearVelocity();
-
-        // Overall damping to cap maximum speed
-        body.applyForce(Vector3(-ninjaDampingForce * vel.x, 0, -ninjaDampingForce * vel.z));
-
-        // Collide only to world geometry
-        body.setCollisionMask(2);
-
-        // Pick death animation on first death update
-        if (deathDir == 0)
-        {
-            if (random(1.0) < 0.5)
-                deathDir = -1;
-            else
-                deathDir = 1;
-
-            playSound("Sounds/SmallExplosion.wav");
-            
-            VariantMap eventData;
-            eventData["Points"] = ninjaPoints;
-            eventData["DamageSide"] = lastDamageSide;
-            sendEvent("Points", eventData);
-            sendEvent("Kill", eventData);
-        }
-
-        deathTime += timeStep;
-        AnimatedModel@ model = entity.getComponent("AnimatedModel");
-
-        // Move the model node to center the corpse mostly within the physics cylinder
-        // (because of the animation)
-        if (deathDir < 0)
-        {
-            // Backward death
-            controller.removeAnimations(ANIM_ATTACK, 0.1);
-            controller.setAnimation("Models/Ninja_Death1.ani", ANIM_MOVE, false, false, 0.5, 1.0, 0.2, 0.0, true);
-            if ((deathTime >= 0.3) && (deathTime < 0.8))
-                model.translate(Vector3(0, 0, 425 * timeStep));
-        }
-        else if (deathDir > 0)
-        {
-            // Forward death
-            controller.removeAnimations(ANIM_ATTACK, 0.1);
-            controller.setAnimation("Models/Ninja_Death2.ani", ANIM_MOVE, false, false, 0.5, 1.0, 0.2, 0.0, true);
-            if ((deathTime >= 0.4) && (deathTime < 0.8))
-                model.translate(Vector3(0, 0, -425 * timeStep));
-        }
-
-        // Create smokecloud just before vanishing
-        if ((deathTime > (ninjaCorpseDuration - 1)) && (!smoke))
-        {
-            spawnParticleEffect(body.getPhysicsPosition() + Vector3(0, -40, 0), "Particle/Smoke.xml", 8);
-            smoke = true;
-        }
-
-        if (deathTime > ninjaCorpseDuration)
-        {
-            spawnObject(body.getPhysicsPosition() + Vector3(0, -50, 0), Quaternion(), "LightFlash");
-            spawnSound(body.getPhysicsPosition() + Vector3(0, -50, 0), "Sounds/BigExplosion.wav", 2);
-            scene.removeEntity(entity);
-        }
-    }
-
-    bool heal(int amount)
-    {
-        if (health == maxHealth)
-            return false;
-
-        health += amount;
-        if (health > maxHealth)
-            health = maxHealth;
-        // If player, play the "powerup" sound
-        if (side == SIDE_PLAYER)
-            playSound("Sounds/Powerup.wav");
-        return true;
-    }
-}

+ 0 - 446
Bin/Data/Scripts/NinjaSnowWar.as

@@ -1,446 +0,0 @@
-// Remake of NinjaSnowWar in script
-// Does not support load/save, or multiplayer yet.
-
-#include "Scripts/LightFlash.as"
-#include "Scripts/Ninja.as"
-#include "Scripts/Potion.as"
-#include "Scripts/SnowBall.as"
-#include "Scripts/SnowCrate.as"
-
-const float mouseSensitivity = 0.125;
-const float cameraMinDist = 25;
-const float cameraMaxDist = 500;
-const float cameraSafetyDist = 30;
-const int initialMaxEnemies = 5;
-const int finalMaxEnemies = 25;
-const int maxPowerups = 5;
-const int incrementEach = 10;
-const int playerHealth = 20;
-const float enemySpawnRate = 1;
-const float powerupSpawnRate = 15;
-
-Scene@ gameScene;
-Camera@ gameCamera;
-Text@ scoreText;
-Text@ hiscoreText;
-Text@ messageText;
-BorderImage@ healthBar;
-BorderImage@ sight;
-
-Controls playerControls;
-Controls prevPlayerControls;
-bool gameOn = false;
-bool drawDebug = false;
-bool drawOctreeDebug = false;
-int score = 0;
-int hiscore = 0;
-int maxEnemies = 0;
-int incrementCounter = 0;
-float enemySpawnTimer = 0;
-float powerupSpawnTimer = 0;
-
-void start()
-{
-    initAudio();
-    initConsole();
-    initScene();
-    createCamera();
-    createOverlays();
-    startGame();
-
-    subscribeToEvent("Update", "handleUpdate");
-    subscribeToEvent(gameScene.getPhysicsWorld(), "PhysicsPreStep", "handleFixedUpdate");
-    subscribeToEvent("PostUpdate", "handlePostUpdate");
-    subscribeToEvent("PostRenderUpdate", "handlePostRenderUpdate");
-    subscribeToEvent("Points", "handlePoints");
-    subscribeToEvent("Kill", "handleKill");
-    subscribeToEvent("KeyDown", "handleKeyDown");
-    subscribeToEvent("ScreenMode", "handleScreenMode");
-}
-
-void initAudio()
-{
-    // Lower mastervolumes slightly
-    audio.setMasterGain(CHANNEL_MASTER, 0.75f);
-    audio.setMasterGain(CHANNEL_MUSIC, 0.75f);
-
-    // Start music playback
-    Song@ song = cache.getResource("XM", "Music/NinjaGods.xm");
-    song.play(0);
-}
-
-void initConsole()
-{
-    if (engine.isHeadless())
-        return;
-
-    XMLFile@ uiStyle = cache.getResource("XMLFile", "UI/DefaultStyle.xml");
-
-    Console@ console = engine.createConsole();
-    console.setStyle(uiStyle);
-    console.setNumRows(16);
-
-    engine.createDebugHud();
-    debugHud.setStyle(uiStyle);
-}
-
-void initScene()
-{
-    @gameScene = engine.createScene("NinjaSnowWar", BoundingBox(-100000.0, 100000.0), 8, true);
-    // Make the scene & script classes directly accessible from the console
-    engine.setDefaultScene(gameScene);
-    engine.setDefaultScriptFile(scriptFile);
-
-    File@ levelFile = cache.getFile("NinjaSnowWarScene.xml");
-    gameScene.loadXML(levelFile);
-}
-
-void createCamera()
-{
-    Entity@ cameraEntity = gameScene.createEntity("Camera");
-    @gameCamera = cameraEntity.createComponent("Camera");
-    gameCamera.setNearClip(10.0);
-    gameCamera.setFarClip(16000.0);
-    gameCamera.setPosition(Vector3(0, 200, -1000));
-
-    if (!engine.isHeadless())
-        pipeline.setViewport(0, Viewport(gameScene, gameCamera));
-}
-
-void createOverlays()
-{
-    if (engine.isHeadless())
-        return;
-
-    int height = renderer.getHeight() / 22;
-    if (height > 64)
-        height = 64;
-
-    @sight = BorderImage();
-    sight.setTexture(cache.getResource("Texture2D", "Textures/Sight.png"));
-    sight.setAlignment(HA_CENTER, VA_CENTER);
-    sight.setSize(height, height);
-    uiRoot.addChild(sight);
-
-    Font@ font = cache.getResource("Font", "Fonts/BlueHighway.ttf");
-
-    @scoreText = Text();
-    scoreText.setFont(font, 17);
-    scoreText.setAlignment(HA_LEFT, VA_TOP);
-    scoreText.setPosition(5, 5);
-    scoreText.setColor(C_BOTTOMLEFT, Color(1, 1, 0.25));
-    scoreText.setColor(C_BOTTOMRIGHT, Color(1, 1, 0.25));
-    uiRoot.addChild(scoreText);
-
-    @hiscoreText = Text();
-    hiscoreText.setFont(font, 17);
-    hiscoreText.setAlignment(HA_RIGHT, VA_TOP);
-    hiscoreText.setPosition(-5, 5);
-    hiscoreText.setColor(C_BOTTOMLEFT, Color(1, 1, 0.25));
-    hiscoreText.setColor(C_BOTTOMRIGHT, Color(1, 1, 0.25));
-    uiRoot.addChild(hiscoreText);
-
-    @messageText = Text();
-    messageText.setFont(font, 17);
-    messageText.setColor(Color(1, 0, 0));
-    messageText.setAlignment(HA_CENTER, VA_CENTER);
-    messageText.setPosition(0, -height * 2);
-    uiRoot.addChild(messageText);
-
-    BorderImage@ healthBorder = BorderImage();
-    healthBorder.setTexture(cache.getResource("Texture2D", "Textures/HealthBarBorder.png"));
-    healthBorder.setAlignment(HA_CENTER, VA_TOP);
-    healthBorder.setPosition(0, 8);
-    healthBorder.setSize(120, 20);
-    uiRoot.addChild(healthBorder);
-
-    @healthBar = BorderImage();
-    healthBar.setTexture(cache.getResource("Texture2D", "Textures/HealthBarInside.png"));
-    healthBar.setPosition(2, 2);
-    healthBar.setSize(116, 16);
-    healthBorder.addChild(healthBar);
-    uiRoot.addChild(healthBorder);
-}
-
-void startGame()
-{
-    // Clear the scene of all existing scripted entities
-    {
-        array<Entity@> scriptedEntities = gameScene.getScriptedEntities();
-        for (uint i = 0; i < scriptedEntities.size(); ++i)
-            gameScene.removeEntity(scriptedEntities[i]);
-    }
-
-    Entity@ playerEntity = gameScene.createEntity("Player");
-    Ninja@ playerNinja = cast<Ninja>(playerEntity.createScriptObject(scriptFile, "Ninja"));
-    playerNinja.create(Vector3(0, 90, 0), Quaternion());
-    playerNinja.health = playerNinja.maxHealth = playerHealth;
-    playerNinja.side = SIDE_PLAYER;
-    // Make sure the player can not shoot on first frame by holding the button down
-    playerNinja.controls = playerNinja.prevControls = playerControls;
-
-    resetAI();
-
-    gameOn = true;
-    score = 0;
-    maxEnemies = initialMaxEnemies;
-    incrementCounter = 0;
-    enemySpawnTimer = 0;
-    powerupSpawnTimer = 0;
-    playerControls.yaw = 0;
-    playerControls.pitch = 0;
-
-    messageText.setText("");
-}
-
-void handleUpdate(StringHash eventType, VariantMap& eventData)
-{
-    float timeStep = eventData["TimeStep"].getFloat();
-
-    if (input.getKeyPress(KEY_F1))
-        debugHud.toggleAll();
-    if (input.getKeyPress(KEY_F2))
-        drawDebug = !drawDebug;
-    if (input.getKeyPress(KEY_F3))
-        drawOctreeDebug = !drawOctreeDebug;
-        
-    if (input.getKeyPress(KEY_F5))
-        gameScene.save(File(getExecutableDirectory() + "Data/Save.dat", FILE_WRITE));
-
-    if ((!console.isVisible()) && (input.getKeyPress('P')) && (gameOn))
-    {
-        gameScene.setPaused(!gameScene.isPaused());
-        if (gameScene.isPaused())
-            messageText.setText("PAUSED");
-        else
-            messageText.setText("");
-    }
-
-    if (input.getKeyPress(KEY_ESC))
-    {
-        if (!console.isVisible())
-            engine.exit();
-        else
-        console.setVisible(false);
-    }
-
-    if (!gameScene.isPaused())
-        updateControls();
-}
-
-void handleFixedUpdate(StringHash eventType, VariantMap& eventData)
-{
-    float timeStep = eventData["TimeStep"].getFloat();
-
-    // Spawn new objects and check for end/restart of game
-    spawnObjects(timeStep);
-    checkEndAndRestart();
-}
-
-void handlePostUpdate()
-{
-    updateCamera();
-    updateStatus();
-}
-
-void handlePostRenderUpdate()
-{
-    if (drawDebug)
-        gameScene.getPhysicsWorld().drawDebugGeometry(true);
-    if (drawOctreeDebug)
-        gameScene.getOctree().drawDebugGeometry(true);
-}
-
-void handlePoints(StringHash eventType, VariantMap& eventData)
-{
-    if (eventData["DamageSide"].getInt() == SIDE_PLAYER)
-    {
-        score += eventData["Points"].getInt();
-        if (score > hiscore)
-            hiscore = score;
-    }
-}
-
-void handleKill(StringHash eventType, VariantMap& eventData)
-{
-    if (eventData["DamageSide"].getInt() == SIDE_PLAYER)
-    {
-        makeAIHarder();
-     
-        // Increment amount of simultaneous enemies after enough kills
-        incrementCounter++;
-        if (incrementCounter >= incrementEach)
-        {
-            incrementCounter = 0;
-            if (maxEnemies < finalMaxEnemies)
-                maxEnemies++;
-        }
-    }
-}
-
-void spawnObjects(float timeStep)
-{
-    // Spawn powerups
-    powerupSpawnTimer += timeStep;
-    if (powerupSpawnTimer >= powerupSpawnRate)
-    {
-        powerupSpawnTimer = 0;
-        int numPowerups = gameScene.getScriptedEntities("SnowCrate").size() + gameScene.getScriptedEntities("Potion").size();
-
-        if (numPowerups < maxPowerups)
-        {
-            const float maxOffset = 4000;
-            float xOffset = random(maxOffset * 2.0f) - maxOffset;
-            float zOffset = random(maxOffset * 2.0f) - maxOffset;
-
-            Vector3 position(xOffset, 5000, zOffset);
-            Entity@ crateEntity = gameScene.createEntity();
-            GameObject@ crateObject = cast<GameObject>(crateEntity.createScriptObject(scriptFile, "SnowCrate"));
-            crateObject.create(position, Quaternion());
-        }
-    }
-
-    // Spawn enemies
-    enemySpawnTimer += timeStep;
-    if (enemySpawnTimer > enemySpawnRate)
-    {
-        enemySpawnTimer = 0;
-        // Take the player ninja into account
-        int numEnemies = gameScene.getScriptedEntities("Ninja").size() - 1;
-
-        if (numEnemies < maxEnemies)
-        {
-            const float maxOffset = 4000;
-            float offset = random(maxOffset * 2.0) - maxOffset;
-            // Random north/east/south/west direction
-            int dir = randomInt() & 3;
-            dir *= 90;
-            Quaternion q(dir, Vector3(0, 1, 0));
-            Vector3 position(q * Vector3(offset, 1000, -12000));
-
-            Entity@ enemyEntity = gameScene.createEntity();
-            Ninja@ enemyNinja = cast<Ninja>(enemyEntity.createScriptObject(scriptFile, "Ninja"));
-            enemyNinja.create(position, q);
-            enemyNinja.side = SIDE_ENEMY;
-            @enemyNinja.controller = AIController();
-            RigidBody@ enemyBody = enemyEntity.getComponent("RigidBody");
-            enemyBody.setLinearVelocity(q * Vector3(0, 1000, 3000));
-        }
-    }
-}
-
-void checkEndAndRestart()
-{
-    if ((gameOn) && (gameScene.getEntity("Player") is null))
-    {
-        gameOn = false;
-        messageText.setText("Press Fire or Jump to restart!");
-        return;
-    }
-    
-    if ((!gameOn) && (playerControls.isPressed(CTRL_FIRE | CTRL_JUMP, prevPlayerControls)))
-        startGame();
-}
-
-void updateControls()
-{
-    prevPlayerControls = playerControls;
-    playerControls.set(CTRL_ALL, false);
-
-    if (!console.isVisible())
-    {
-        if (input.getKeyDown('W'))
-            playerControls.set(CTRL_UP, true);
-        if (input.getKeyDown('S'))
-            playerControls.set(CTRL_DOWN, true);
-        if (input.getKeyDown('A'))
-            playerControls.set(CTRL_LEFT, true);
-        if (input.getKeyDown('D'))
-            playerControls.set(CTRL_RIGHT, true);
-        if (input.getKeyDown(KEY_CTRL))
-            playerControls.set(CTRL_FIRE, true);
-        if (input.getKeyDown(' '))
-            playerControls.set(CTRL_JUMP, true);
-    }
-
-    if (input.getMouseButtonDown(MOUSEB_LEFT))
-        playerControls.set(CTRL_FIRE, true);
-    if (input.getMouseButtonDown(MOUSEB_RIGHT))
-        playerControls.set(CTRL_JUMP, true);
-
-    playerControls.yaw += mouseSensitivity * input.getMouseMoveX();
-    playerControls.pitch += mouseSensitivity * input.getMouseMoveY();
-    playerControls.pitch = clamp(playerControls.pitch, -60, 60);
-
-    Entity@ playerEntity = gameScene.getEntity("Player");
-    if (playerEntity !is null)
-    {
-        Ninja@ playerNinja = cast<Ninja>(playerEntity.getScriptObject());
-        playerNinja.controls = playerControls;
-    }
-}
-
-void updateCamera()
-{
-    Entity@ playerEntity = gameScene.getEntity("Player");
-    if (playerEntity is null)
-        return;
-
-    RigidBody@ body = playerEntity.getComponent("RigidBody");
-    Vector3 pos = body.getWorldPosition();
-    Quaternion dir;
-    dir = dir * Quaternion(playerControls.yaw, Vector3(0, 1, 0));
-    dir = dir * Quaternion(playerControls.pitch, Vector3(1, 0, 0));
-
-    Vector3 aimPoint = pos + Vector3(0, 100, 0);
-    Vector3 minDist = aimPoint + dir * Vector3(0, 0, -cameraMinDist);
-    Vector3 maxDist = aimPoint + dir * Vector3(0, 0, -cameraMaxDist);
-
-    // Collide camera ray with static objects (collision mask 2)
-    Vector3 rayDir = (maxDist - minDist).getNormalized();
-    float rayDistance = cameraMaxDist - cameraMinDist + cameraSafetyDist;
-    array<PhysicsRaycastResult>@ result = gameScene.getPhysicsWorld().raycast(Ray(minDist, rayDir), rayDistance, 2);
-    if (result.size() > 0)
-        rayDistance = min(rayDistance, result[0].distance - cameraSafetyDist);
-
-    gameCamera.setPosition(minDist + rayDir * rayDistance);
-    gameCamera.setRotation(dir);
-
-    audio.setListenerPosition(pos);
-    audio.setListenerRotation(dir);
-}
-
-void updateStatus()
-{
-    if (engine.isHeadless())
-        return;
-
-    scoreText.setText("Score " + score);
-    hiscoreText.setText("Hiscore " + hiscore);
-
-    Entity@ playerEntity = gameScene.getEntity("Player");
-    if (playerEntity is null)
-        return;
-
-    GameObject@ object = cast<GameObject>(playerEntity.getScriptObject());
-    healthBar.setWidth(116 * object.health / playerHealth);
-}
-
-void handleKeyDown(StringHash eventType, VariantMap& eventData)
-{
-    // Check for toggling the console
-    if (eventData["Key"].getInt() == 220)
-    {
-        console.toggle();
-        input.suppressNextChar();
-    }
-}
-
-void handleScreenMode()
-{
-    int height = renderer.getHeight() / 22;
-    if (height > 64)
-        height = 64;
-    sight.setSize(height, height);
-    messageText.setPosition(0, -height * 2);
-}

+ 0 - 57
Bin/Data/Scripts/Potion.as

@@ -1,57 +0,0 @@
-#include "Scripts/GameObject.as"
-
-const int potionHealAmount = 5;
-const float potionMass = 10;
-const float potionFriction = 0.5;
-const float potionDrawDistance = 15000;
-
-class Potion : GameObject
-{
-    int healAmount;
-
-    Potion()
-    {
-        healAmount = potionHealAmount;
-    }
-
-    void start()
-    {
-        subscribeToEvent("EntityCollision", "handleEntityCollision");
-    }
-    
-    void create(const Vector3&in position, const Quaternion&in rotation)
-    {
-        // Create model
-        StaticModel@ model = entity.createComponent("StaticModel");
-        model.setModel(cache.getResource("Model", "Models/Potion.mdl"));
-        model.setMaterial(cache.getResource("Material", "Materials/Potion.xml"));
-        model.setDrawDistance(potionDrawDistance);
-        model.setCastShadows(true);
-
-        // Create body
-        RigidBody@ body = entity.createComponent("RigidBody");
-        body.setPosition(position);
-        body.setRotation(rotation);
-        body.setMode(PHYS_DYNAMIC);
-        body.setMass(potionMass);
-        body.setFriction(potionFriction);
-        body.setCollisionShape(cache.getResource("CollisionShape", "Physics/Potion.xml"));
-        body.setCollisionGroup(1);
-        body.setCollisionMask(3);
-        body.addChild(model);
-    }
-    
-    void objectCollision(GameObject@ otherObject, VariantMap& eventData)
-    {
-        if (healAmount > 0)
-        {
-            if (otherObject.heal(healAmount))
-            {
-                // Note: this is called during a physics world callback. Can not remove the potion at this point,
-                // but instead set it to remove itself during the next update
-                healAmount = 0;
-                duration = 0;
-            }
-        }
-    }
-}

+ 0 - 101
Bin/Data/Scripts/SnowBall.as

@@ -1,101 +0,0 @@
-#include "Scripts/GameObject.as"
-
-const float snowballMass = 10;
-const float snowballFriction = 0.5;
-const float snowballDampingForce = 20;
-const float snowballMinHitSpeed = 100;
-const float snowballDuration = 5;
-const float snowballGroundHitDuration = 1;
-const float snowballObjectHitDuration = 0;
-const float snowballDrawDistance = 7500;
-const int snowballDamage = 1;
-
-class SnowBall : GameObject
-{
-    int hitDamage;
-
-    SnowBall()
-    {
-        duration = snowballDuration;
-        hitDamage = snowballDamage;
-    }
-
-    void start()
-    {
-        subscribeToEvent("EntityCollision", "handleEntityCollision");
-    }
-
-    void create(const Vector3&in position, const Quaternion&in rotation)
-    {
-        // Create model
-        StaticModel@ model = entity.createComponent("StaticModel");
-        model.setModel(cache.getResource("Model", "Models/SnowBall.mdl"));
-        model.setMaterial(cache.getResource("Material", "Materials/Snow.xml"));
-        model.setDrawDistance(snowballDrawDistance);
-        model.setCastShadows(true);
-    
-        // Create body
-        RigidBody@ body = entity.createComponent("RigidBody");
-        body.setPosition(position);
-        body.setRotation(rotation);
-        body.setMode(PHYS_DYNAMIC);
-        body.setMass(snowballMass);
-        body.setFriction(snowballFriction);
-        body.setCollisionShape(cache.getResource("CollisionShape", "Physics/SnowBall.xml"));
-        body.setCollisionGroup(1);
-        body.setCollisionMask(3);
-        body.addChild(model);
-    }
-    
-    void updateFixed(float timeStep)
-    {
-        // Apply damping when rolling on the ground, or near disappearing
-        RigidBody@ body = entity.getComponent("RigidBody");
-        if ((onGround) || (duration < snowballGroundHitDuration))
-        {
-            Vector3 vel = body.getLinearVelocity();
-            body.applyForce(Vector3(-snowballDampingForce * vel.x, 0, -snowballDampingForce * vel.z));
-        }
-
-        // Disappear when duration expired
-        if (duration >= 0)
-        {
-            duration -= timeStep;
-            if (duration <= 0)
-            {
-                spawnParticleEffect(body.getPhysicsPosition(), "Particle/SnowExplosion.xml", 1);
-                scene.removeEntity(entity);
-            }
-        }
-    }
-    
-    void worldCollision(VariantMap& eventData)
-    {
-        GameObject::worldCollision(eventData);
-        
-        // If hit the ground, disappear after a short while
-        if (duration > snowballGroundHitDuration)
-            duration = snowballGroundHitDuration;
-    }
-
-    void objectCollision(GameObject@ otherObject, VariantMap& eventData)
-    {
-        if (hitDamage > 0)
-        {
-            RigidBody@ body = entity.getComponent("RigidBody");
-            if ((body.getLinearVelocity().getLength() >= snowballMinHitSpeed))
-            {
-                if (side != otherObject.side)
-                {
-                    otherObject.damage(this, hitDamage);
-                    // Create a temp entity for the hit sound
-                    spawnSound(body.getPhysicsPosition(), "Sounds/PlayerFistHit.wav", 0.2);
-                }
-
-                hitDamage = 0;
-            }
-        }
-        if (duration > snowballObjectHitDuration)
-            duration = snowballObjectHitDuration;
-    }
-}

+ 0 - 58
Bin/Data/Scripts/SnowCrate.as

@@ -1,58 +0,0 @@
-#include "Scripts/GameObject.as"
-
-const int snowcrateHealth = 5;
-const float snowcrateMass = 200;
-const float snowcrateFriction = 0.35;
-const float snowcrateDrawDistance = 15000;
-const int snowcratePoints = 250;
-
-class SnowCrate : GameObject
-{
-    SnowCrate()
-    {
-        health = maxHealth = snowcrateHealth;
-    }
-    
-    void start()
-    {
-        subscribeToEvent("EntityCollision", "handleEntityCollision");
-    }
-    
-    void create(const Vector3&in position, const Quaternion&in rotation)
-    {
-        // Create model
-        StaticModel@ model = entity.createComponent("StaticModel");
-        model.setModel(cache.getResource("Model", "Models/SnowCrate.mdl"));
-        model.setMaterial(cache.getResource("Material", "Materials/SnowCrate.xml"));
-        model.setDrawDistance(snowcrateDrawDistance);
-        model.setCastShadows(true);
-
-        // Create body
-        RigidBody@ body = entity.createComponent("RigidBody");
-        body.setPosition(position);
-        body.setRotation(rotation);
-        body.setMode(PHYS_DYNAMIC);
-        body.setMass(snowcrateMass);
-        body.setFriction(snowcrateFriction);
-        body.setCollisionShape(cache.getResource("CollisionShape", "Physics/SnowCrate.xml"));
-        body.setCollisionGroup(2);
-        body.setCollisionMask(3);
-        body.addChild(model);
-    }
-    
-    void updateFixed(float timeStep)
-    {
-        if (health <= 0)
-        {
-            RigidBody@ body = entity.getComponent("RigidBody");
-            spawnParticleEffect(body.getPhysicsPosition(), "Particle/SnowExplosionBig.xml", 2);
-            spawnObject(body.getPhysicsPosition(), Quaternion(), "Potion");
-            scene.removeEntity(entity);
-            
-            VariantMap eventData;
-            eventData["Points"] = snowcratePoints;
-            eventData["DamageSide"] = lastDamageSide;
-            sendEvent("Points", eventData);
-        }
-    }
-}

BIN
Bin/Data/Sounds/BigExplosion.wav


BIN
Bin/Data/Sounds/NutThrow.wav


BIN
Bin/Data/Sounds/PlayerFist.wav


BIN
Bin/Data/Sounds/PlayerFistHit.wav


BIN
Bin/Data/Sounds/PlayerLand.wav


BIN
Bin/Data/Sounds/Powerup.wav


BIN
Bin/Data/Sounds/SmallExplosion.wav


BIN
Bin/Data/Textures/CloudPlane.dds


BIN
Bin/Data/Textures/Diffuse.dds


BIN
Bin/Data/Textures/DiffuseMask.dds


BIN
Bin/Data/Textures/Flare.dds


BIN
Bin/Data/Textures/HealthBarBorder.png


BIN
Bin/Data/Textures/HealthBarInside.png


BIN
Bin/Data/Textures/Jack_body_color.jpg


BIN
Bin/Data/Textures/Jack_face.jpg


BIN
Bin/Data/Textures/Mushroom.dds


BIN
Bin/Data/Textures/Ninja.dds


BIN
Bin/Data/Textures/Normal.dds


Some files were not shown because too many files changed in this diff