// UT Tip: Ever hit a nuke and landed on a tightrope? Fear not for the marble's safety.
// For a faster time, think what you can do with the gravity modifiers.
// Rep. by Phil
//--- OBJECT WRITE BEGIN ---
new SimGroup(MissionGroup) {

   new ScriptObject(MissionInfo) {
         artist = "Andrew";
         type = "Expert";
         level = "20";
         startHelpText = "Can you maintain your balance long enough to make it to the end?";
         music = "Astrolabe.ogg";
         desc = "Good balancing skills are the key to success here!";
         name = "Catwalks";
         goldTime = "135000";
         ultimateTime = "95000";
   };
   new MissionArea(MissionArea) {
      area = "-360 -648 720 1296";
      flightCeiling = "300";
      flightCeilingRange = "20";
         locked = "true";
   };
   new Sky(Sky) {
      position = "336 136 0";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      cloudHeightPer[0] = "0";
      cloudHeightPer[1] = "0";
      cloudHeightPer[2] = "0";
      cloudSpeed1 = "0.0001";
      cloudSpeed2 = "0.0002";
      cloudSpeed3 = "0.0003";
      visibleDistance = "500";
      useSkyTextures = "1";
      renderBottomTexture = "1";
      SkySolidColor = "0.600000 0.600000 0.600000 1.000000";
      fogDistance = "300";
      fogColor = "0.600000 0.600000 0.600000 1.000000";
      fogVolume1 = "-1 7.45949e-31 1.3684e-38";
      fogVolume2 = "-1 1.07208e-14 8.756e-14";
      fogVolume3 = "-1 5.1012e-10 2.05098e-08";
      materialList = "~/data/skies/Expert/Expert_Sky.dml";
      windVelocity = "1 0 0";
      windEffectPrecipitation = "0";
      noRenderBans = "1";
      fogVolumeColor1 = "128.000000 128.000000 128.000000 0.000000";
      fogVolumeColor2 = "128.000000 128.000000 128.000000 0.000004";
      fogVolumeColor3 = "128.000000 128.000000 128.000000 14435505.000000";
   };
   new Sun() {
      direction = "0.638261 0.459006 -0.61801";
      color = "0.700000 0.700000 0.700000 1.000000";
      ambient = "0.100000 0.100000 0.200000 1.000000";
   };
   new InteriorInstance() {
      position = "0 0 0";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      interiorFile = "~/data/interiors_MBP/Catwalks.dif";
      showTerrainInside = "0";
   };
   new Item() {
      position = "-52.25 66.5 11";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "-26.25 44.75 5";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "1.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "48.25 45.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "48.25 70.75 11.5";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new StaticShape(StartPoint) {
      position = "-3 3 0";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "StartPad";
   };
   new Item() {
      position = "-36.5 95.75 12.75";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "SuperJumpItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new StaticShape() {
      position = "-24.25 69.5 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 62.5 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 59.5 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 58.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 53.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 52.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 46.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 45.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 40.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 39.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 38.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 34.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new StaticShape() {
      position = "-24.25 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "RoundBumper";
   };
   new Item() {
      position = "-24.75 83.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "-24.25 61 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new StaticShape() {
      position = "-12 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "-2.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "-1.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "4.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "5.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "18 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "21.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "26.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "34.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "42.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "43.5 30.25 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "Nuke";
         resettime = "Default";
   };
   new StaticShape() {
      position = "84.1922 27.758 31";
      rotation = "0 0 1 48.70139";
      scale = "1 1 1";
      dataBlock = "checkPoint";
   };
   new StaticShape() {
      position = "30.0147 73.2642 11.5";
      rotation = "0 0 -1 119.175";
      scale = "1 1 1";
      dataBlock = "checkPoint";
   };
   new Item() {
      position = "-87.75 60.9 12.35";
      rotation = "-1 0 0 89.99999";
      scale = "1 1 1";
      dataBlock = "AntiGravityItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "-72.25 60.65 28.75";
      rotation = "1 0 0 180";
      scale = "1 1 1";
      dataBlock = "AntiGravityItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "-76 70.75 11.5";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "-87.8 60.05 31.75";
      rotation = "1 0 0 89.99999";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Item() {
      position = "-64.25 32.125 20.5";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new StaticShape(EndPoint) {
      position = "-29 33.5 28";
      rotation = "0 0 1 89.99999";
      scale = "1 1 1";
      dataBlock = "EndPad";
   };
   new Item() {
      position = "-34.5 95.75 21";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "GemItem";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new Trigger(Bounds) {
      position = "-199 208.5 -39.4";
      rotation = "1 0 0 0";
      scale = "398.5 315.5 300";
      dataBlock = "InBoundsTrigger";
      polyhedron = "0.0000000 0.0000000 0.0000000 1.0000000 0.0000000 0.0000000 0.0000000 -1.0000000 0.0000000 0.0000000 0.0000000 1.0000000";
   };
   new StaticShape() {
      position = "-28.8388 32.9381 40.5722";
      rotation = "0 0 1 89.99999";
      scale = "1 1 1";
      dataBlock = "SignFinish";
   };
   new Item() {
      position = "86 30.05 30.3";
      rotation = "1 0 0 0";
      scale = "0.1 0.1 0.13";
      dataBlock = "easterEgg";
      collideable = "0";
      static = "1";
      rotate = "1";
   };
   new StaticShape() {
      position = "-60 52 34.4";
      rotation = "-0.0111715 0.7071552 0.7069702 180";
      scale = "1 1 1";
      dataBlock = "SignSide";
   };
   new StaticShape() {
      position = "85.5 29 31";
      rotation = "1 0 0 0";
      scale = "1 1 1";
      dataBlock = "SignDownSide";
   };
   new StaticShape() {
      position = "-16.5 35.96 22.25";
      rotation = "0.646292 0.496432 0.579536 127.577";
      scale = "1 1 1";
      dataBlock = "SignDownSide";
   };
   new StaticShape() {
      position = "-60 52 7";
      rotation = "0.5776569 -0.5771969 -0.5771969 120";
      scale = "1 1 1";
      dataBlock = "SignSide";
   };
   new StaticShape() {
      position = "-32.1 44.94 4.7";
      rotation = "-0.06955559 0.728308 0.6817108 170.279";
      scale = "1 1 1";
      dataBlock = "SignDownSide";
   };
   new StaticShape() {
      position = "-29.4 36.494 20.6";
      rotation = "0.5988381 -0.5616982 -0.5708662 120";
      scale = "1 1 1";
      dataBlock = "SignSide";
   };
   new SimGroup(PathNodeGroup) {

      new StaticShape(CameraPath1) {
         position = "-7.632129 -3.770316 4.553862";
         rotation = "0.7005134 -0.1576937 0.6959983 35.84624";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath2";
            useRotation = "1";
            timeToNext = "5000";
            usePosition = "1";
      };
      new StaticShape(CameraPath2) {
         position = "-4.936481 6.76386 0.5748117";
         rotation = "0.3458537 -0.1198537 0.9306021 40.8494";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath3";
            useRotation = "1";
            timeToNext = "0";
            usePosition = "1";
      };
      new StaticShape(CameraPath3) {
         position = "-22.27641 41.3661 6.337476";
         rotation = "-0.008091549 -0.004315048 -0.999958 56.14207";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath4";
            useRotation = "1";
            timeToNext = "2000";
            usePosition = "1";
      };
      new StaticShape(CameraPath4) {
         position = "-35.29622 40.50616 6.471128";
         rotation = "-0.03105326 -0.0117874 -0.9994482 41.59316";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath5";
            useRotation = "1";
            timeToNext = "1850";
            usePosition = "1";
      };
      new StaticShape(CameraPath5) {
         position = "-45.46947 43.61758 6.934303";
         rotation = "-0.281957 -0.04000225 -0.9585928 16.83753";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath6";
            useRotation = "1";
            timeToNext = "1850";
            usePosition = "1";
      };
      new StaticShape(CameraPath6) {
         position = "-52.16965 50.1764 7.576992";
         rotation = "-0.6568775 0.04832856 0.7524469 11.16909";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath7";
            useRotation = "1";
            timeToNext = "2250";
            usePosition = "1";
      };
      new StaticShape(CameraPath7) {
         position = "-56.65506 58.92434 8.709538";
         rotation = "-0.3275427 0.09342228 0.9402063 33.75148";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath8";
            useRotation = "1";
            timeToNext = "0";
            usePosition = "1";
      };
      new StaticShape(CameraPath8) {
         position = "-34.99322 105.2285 29.03946";
         rotation = "0.02410529 -0.1913654 0.9812228 165.908";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath9";
            useRotation = "1";
            timeToNext = "2700";
            usePosition = "1";
      };
      new StaticShape(CameraPath9) {
         position = "-26.78448 98.54224 26.61551";
         rotation = "0.002831251 -0.1373338 0.9905208 177.6604";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath10";
            useRotation = "1";
            timeToNext = "3000";
            usePosition = "1";
      };
      new StaticShape(CameraPath10) {
         position = "-19.89803 87.48076 24.00925";
         rotation = "-0.009218285 -0.09772585 0.9951707 190.7256";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath11";
            useRotation = "1";
            timeToNext = "2900";
            usePosition = "1";
      };
      new StaticShape(CameraPath11) {
         position = "-17.52596 77.04362 22.68654";
         rotation = "-0.01163757 -0.05298888 0.9985273 204.7383";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath12";
            useRotation = "1";
            timeToNext = "3000";
            usePosition = "1";
      };
      new StaticShape(CameraPath12) {
         position = "-14.15017 62.51549 21.78843";
         rotation = "-0.01261113 -0.03555794 0.9992881 219.0298";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath13";
            useRotation = "1";
            timeToNext = "0";
            usePosition = "1";
      };
      new StaticShape(CameraPath13) {
         position = "90.5672 25.06526 49.88752";
         rotation = "0.6600572 0.2679038 -0.7018206 60.08369";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath14";
            useRotation = "1";
            timeToNext = "4500";
            usePosition = "1";
      };
      new StaticShape(CameraPath14) {
         position = "73.53151 41.39048 31.56881";
         rotation = "0.5250435 0.2269524 -0.8202572 55.57618";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath15";
            useRotation = "1";
            timeToNext = "4300";
            usePosition = "1";
      };
      new StaticShape(CameraPath15) {
         position = "53.72363 59.71314 18.74932";
         rotation = "0.3850878 0.1721835 -0.9066754 52.50052";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath16";
            useRotation = "1";
            timeToNext = "0";
            usePosition = "1";
      };
      new StaticShape(CameraPath16) {
         position = "-49.84782 89.41047 9.861037";
         rotation = "0.02756782 0.07219972 0.9970092 221.6822";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath17";
            useRotation = "1";
            timeToNext = "6000";
            usePosition = "1";
      };
      new StaticShape(CameraPath17) {
         position = "-62.98911 75.28195 14.61477";
         rotation = "0.07465227 0.1731232 0.9820669 225.903";
         scale = "1 1 1";
         dataBlock = "PathNode";
            placed = "1";
            reverseRotation = "0";
            useScale = "0";
            nextNode = "CameraPath1";
            useRotation = "1";
            timeToNext = "0";
            usePosition = "1";
      };
   };
   new AudioProfile(MusicProfile) {
      fileName = "~/data/sound/music/Pianoforte (Guitar Remix).ogg";
      description = "AudioMusic";
      preload = "0";
   };
};
//--- OBJECT WRITE END ---
