home *** CD-ROM | disk | FTP | other *** search
/ 404 Jogos / CLJG.iso / Aventura / MindScape.swf / scripts / __Packages / Enemy3.as < prev    next >
Encoding:
Text File  |  2007-12-04  |  22.0 KB  |  539 lines

  1. class Enemy3 extends MovieClip
  2. {
  3.    var walkSpeed = 3;
  4.    var xStep = 0;
  5.    var yStep = 0;
  6.    var onGround = false;
  7.    var targetRot = 0;
  8.    var walking = false;
  9.    function Enemy3()
  10.    {
  11.       super();
  12.    }
  13.    function onLoad()
  14.    {
  15.       var _loc1_ = this;
  16.       var _loc3_ = _loc1_._name.split("_");
  17.       _loc1_.id = Number(_loc3_[1]);
  18.       var _loc2_ = _loc1_._parent.spawnPoints[3][_loc1_.id].split(":");
  19.       _loc1_._x = _loc2_[0] * _loc1_._parent.cellsize;
  20.       _loc1_._y = _loc2_[1] * _loc1_._parent.cellsize;
  21.       _loc1_._parent.cells[_loc2_[0]][_loc2_[1]].spawn = undefined;
  22.       _loc1_.onGround = false;
  23.       if(_loc1_._parent.cells[_loc2_[0]][_loc2_[1]].gravType > 0)
  24.       {
  25.          _loc1_.gravType = _loc1_._parent.cells[_loc2_[0]][_loc2_[1]].gravType;
  26.          if(_loc1_.gravType > 4)
  27.          {
  28.             _loc1_.gravType -= 4;
  29.             if(_loc1_.gravType == 0)
  30.             {
  31.                _loc1_.gravType = 1;
  32.             }
  33.          }
  34.          _loc1_._rotation = 90 * (_loc1_.gravType - 1);
  35.       }
  36.       else
  37.       {
  38.          _loc1_.gravType = 1;
  39.       }
  40.       _loc1_.createEmptyMovieClip("sprite",1);
  41.       _loc1_.sprite._y = _loc1_._parent.cellsize / 2 - 4;
  42.       _loc1_.enemyStatus = "enemy3_walk_1";
  43.       _loc1_.sprite.attachMovie(_loc1_.enemyStatus,"sprite",1);
  44.       _loc1_.walking = true;
  45.    }
  46.    function onEnterFrame()
  47.    {
  48.       var _loc1_ = this;
  49.       if(_loc1_.yStep != 0)
  50.       {
  51.          _loc1_.onGround = false;
  52.       }
  53.       _loc1_.xCell = Math.floor(_loc1_._x / _loc1_._parent.cellsize + 0.5);
  54.       _loc1_.yCell = Math.floor(_loc1_._y / _loc1_._parent.cellsize + 0.5);
  55.       if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].clip == undefined)
  56.       {
  57.          if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].tile == 2)
  58.          {
  59.             _loc1_.yCell = _loc1_.yCell + 1;
  60.          }
  61.          else if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].tile == 3)
  62.          {
  63.             _loc1_.xCell = _loc1_.xCell - 1;
  64.          }
  65.          else if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].tile == 4)
  66.          {
  67.             _loc1_.yCell = _loc1_.yCell - 1;
  68.          }
  69.          else if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].tile == 5)
  70.          {
  71.             _loc1_.xCell = _loc1_.xCell + 1;
  72.          }
  73.          _loc1_._parent.spawnPoints[3][_loc1_.id] = _loc1_.xCell + ":" + _loc1_.yCell;
  74.          _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].spawn = 3;
  75.          _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].spawnId = _loc1_.id;
  76.          ┬º┬ºpush(_loc1_.removeMovieClip());
  77.       }
  78.       if(_loc1_.hitTest(_loc1_._parent.player) && _loc1_.enemyStatus != "enemy3_attack_1" && _loc1_._parent.player.blinking <= 0)
  79.       {
  80.          _loc1_.enemyStatus = "enemy3_attack_1";
  81.          _loc1_.sprite.attachMovie(_loc1_.enemyStatus,"sprite",1);
  82.          _loc1_.walking = false;
  83.          if(_loc1_._parent.player.xStep > 0)
  84.          {
  85.             _loc1_.sprite._xscale = 100;
  86.             _loc1_.xStep = 0;
  87.          }
  88.          else if(_loc1_._parent.player.xStep < 0)
  89.          {
  90.             _loc1_.sprite._xscale = -100;
  91.             _loc1_.xStep = 0;
  92.          }
  93.       }
  94.       if(_loc1_.walking)
  95.       {
  96.          if(_loc1_.gravType == 1)
  97.          {
  98.             if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].tile != 4)
  99.             {
  100.                if(_loc1_.xStep >= 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell + 1].edges[0] == 1 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell].edges[3] == 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell + 1].edges[3] == 0)
  101.                {
  102.                   _loc1_.xStep = _loc1_.walkSpeed;
  103.                   _loc1_.sprite._xscale = -100;
  104.                }
  105.                else if(_loc1_.xStep <= 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell + 1].edges[0] == 1 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell].edges[1] == 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell + 1].edges[1] == 0)
  106.                {
  107.                   _loc1_.xStep = - _loc1_.walkSpeed;
  108.                   _loc1_.sprite._xscale = 100;
  109.                }
  110.                else if(_loc1_.onGround)
  111.                {
  112.                   _loc1_.xStep = - _loc1_.xStep;
  113.                   _loc1_.sprite._xscale = - _loc1_.sprite._xscale;
  114.                }
  115.                else
  116.                {
  117.                   _loc1_.xStep = 0;
  118.                }
  119.             }
  120.             else if(_loc1_.xStep >= 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell].edges[0] == 1 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell - 1].edges[3] == 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell].edges[3] == 0)
  121.             {
  122.                _loc1_.xStep = _loc1_.walkSpeed;
  123.                _loc1_.sprite._xscale = -100;
  124.             }
  125.             else if(_loc1_.xStep <= 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell].edges[0] == 1 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell - 1].edges[1] == 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell].edges[1] == 0)
  126.             {
  127.                _loc1_.xStep = - _loc1_.walkSpeed;
  128.                _loc1_.sprite._xscale = 100;
  129.             }
  130.             else if(_loc1_.onGround)
  131.             {
  132.                _loc1_.xStep = - _loc1_.xStep;
  133.                _loc1_.sprite._xscale = - _loc1_.sprite._xscale;
  134.             }
  135.             else
  136.             {
  137.                _loc1_.xStep = 0;
  138.             }
  139.             if(_loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell].clip == undefined || _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell].clip == undefined)
  140.             {
  141.                _loc1_.xStep = 0;
  142.             }
  143.          }
  144.          else if(_loc1_.gravType == 2)
  145.          {
  146.             if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].tile != 5)
  147.             {
  148.                if(_loc1_.xStep >= 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell + 1].edges[1] == 1 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell + 1].edges[0] == 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell + 1].edges[0] == 0)
  149.                {
  150.                   _loc1_.xStep = _loc1_.walkSpeed;
  151.                   _loc1_.sprite._xscale = -100;
  152.                }
  153.                else if(_loc1_.xStep <= 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell - 1].edges[1] == 1 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell - 1].edges[2] == 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell - 1].edges[2] == 0)
  154.                {
  155.                   _loc1_.xStep = - _loc1_.walkSpeed;
  156.                   _loc1_.sprite._xscale = 100;
  157.                }
  158.                else if(_loc1_.onGround)
  159.                {
  160.                   _loc1_.xStep = - _loc1_.xStep;
  161.                   _loc1_.sprite._xscale = - _loc1_.sprite._xscale;
  162.                }
  163.                else
  164.                {
  165.                   _loc1_.xStep = 0;
  166.                }
  167.             }
  168.             else if(_loc1_.xStep >= 0 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell + 1].edges[1] == 1 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell + 1].edges[0] == 0 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell + 1].edges[0] == 0)
  169.             {
  170.                _loc1_.xStep = _loc1_.walkSpeed;
  171.                _loc1_.sprite._xscale = -100;
  172.             }
  173.             else if(_loc1_.xStep <= 0 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell - 1].edges[1] == 1 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell - 1].edges[2] == 0 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell - 1].edges[2] == 0)
  174.             {
  175.                _loc1_.xStep = - _loc1_.walkSpeed;
  176.                _loc1_.sprite._xscale = 100;
  177.             }
  178.             else if(_loc1_.onGround)
  179.             {
  180.                _loc1_.xStep = - _loc1_.xStep;
  181.                _loc1_.sprite._xscale = - _loc1_.sprite._xscale;
  182.             }
  183.             else
  184.             {
  185.                _loc1_.xStep = 0;
  186.             }
  187.             if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell + 1].clip == undefined || _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell - 1].clip == undefined)
  188.             {
  189.                _loc1_.xStep = 0;
  190.             }
  191.          }
  192.          else if(_loc1_.gravType == 3)
  193.          {
  194.             if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].tile != 2)
  195.             {
  196.                if(_loc1_.xStep >= 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell - 1].edges[2] == 1 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell].edges[1] == 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell - 1].edges[1] == 0)
  197.                {
  198.                   _loc1_.xStep = _loc1_.walkSpeed;
  199.                   _loc1_.sprite._xscale = -100;
  200.                }
  201.                else if(_loc1_.xStep <= 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell - 1].edges[2] == 1 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell].edges[3] == 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell - 1].edges[3] == 0)
  202.                {
  203.                   _loc1_.xStep = - _loc1_.walkSpeed;
  204.                   _loc1_.sprite._xscale = 100;
  205.                }
  206.                else if(_loc1_.onGround)
  207.                {
  208.                   _loc1_.xStep = - _loc1_.xStep;
  209.                   _loc1_.sprite._xscale = - _loc1_.sprite._xscale;
  210.                }
  211.                else
  212.                {
  213.                   _loc1_.xStep = 0;
  214.                }
  215.             }
  216.             else if(_loc1_.xStep >= 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell].edges[2] == 1 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell + 1].edges[1] == 0 && _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell].edges[1] == 0)
  217.             {
  218.                _loc1_.xStep = _loc1_.walkSpeed;
  219.                _loc1_.sprite._xscale = -100;
  220.             }
  221.             else if(_loc1_.xStep <= 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell].edges[2] == 1 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell + 1].edges[3] == 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell].edges[3] == 0)
  222.             {
  223.                _loc1_.xStep = - _loc1_.walkSpeed;
  224.                _loc1_.sprite._xscale = 100;
  225.             }
  226.             else if(_loc1_.onGround)
  227.             {
  228.                _loc1_.xStep = - _loc1_.xStep;
  229.                _loc1_.sprite._xscale = - _loc1_.sprite._xscale;
  230.             }
  231.             else
  232.             {
  233.                _loc1_.xStep = 0;
  234.             }
  235.             if(_loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell].clip == undefined || _loc1_._parent.cells[_loc1_.xCell - 1][_loc1_.yCell].clip == undefined)
  236.             {
  237.                _loc1_.xStep = 0;
  238.             }
  239.          }
  240.          else if(_loc1_.gravType == 4)
  241.          {
  242.             if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].tile != 3)
  243.             {
  244.                if(_loc1_.xStep >= 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell - 1].edges[3] == 1 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell - 1].edges[2] == 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell - 1].edges[2] == 0)
  245.                {
  246.                   _loc1_.xStep = _loc1_.walkSpeed;
  247.                   _loc1_.sprite._xscale = -100;
  248.                }
  249.                else if(_loc1_.xStep <= 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell + 1].edges[3] == 1 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell + 1].edges[0] == 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell + 1].edges[0] == 0)
  250.                {
  251.                   _loc1_.xStep = - _loc1_.walkSpeed;
  252.                   _loc1_.sprite._xscale = 100;
  253.                }
  254.                else if(_loc1_.onGround)
  255.                {
  256.                   _loc1_.xStep = - _loc1_.xStep;
  257.                   _loc1_.sprite._xscale = - _loc1_.sprite._xscale;
  258.                }
  259.                else
  260.                {
  261.                   _loc1_.xStep = 0;
  262.                }
  263.             }
  264.             else if(_loc1_.xStep >= 0 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell - 1].edges[3] == 1 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell - 1].edges[2] == 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell - 1].edges[2] == 0)
  265.             {
  266.                _loc1_.xStep = _loc1_.walkSpeed;
  267.                _loc1_.sprite._xscale = -100;
  268.             }
  269.             else if(_loc1_.xStep <= 0 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell + 1].edges[3] == 1 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell + 1].edges[0] == 0 && _loc1_._parent.cells[_loc1_.xCell + 1][_loc1_.yCell + 1].edges[0] == 0)
  270.             {
  271.                _loc1_.xStep = - _loc1_.walkSpeed;
  272.                _loc1_.sprite._xscale = 100;
  273.             }
  274.             else if(_loc1_.onGround)
  275.             {
  276.                _loc1_.xStep = - _loc1_.xStep;
  277.                _loc1_.sprite._xscale = - _loc1_.sprite._xscale;
  278.             }
  279.             else
  280.             {
  281.                _loc1_.xStep = 0;
  282.             }
  283.             if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell + 1].clip == undefined || _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell - 1].clip == undefined)
  284.             {
  285.                _loc1_.xStep = 0;
  286.             }
  287.          }
  288.       }
  289.       if(_loc1_._parent.gravity < _loc1_._parent.maxspeed)
  290.       {
  291.          _loc1_.yStep += _loc1_._parent.gravity;
  292.       }
  293.       if(_loc1_.gravType == 1)
  294.       {
  295.          _loc1_.futureY = _loc1_._y + _loc1_.yStep;
  296.          _loc1_.futureX = _loc1_._x + _loc1_.xStep;
  297.          _loc1_.targetRot = 0;
  298.       }
  299.       else if(_loc1_.gravType == 2)
  300.       {
  301.          _loc1_.futureY = _loc1_._y + _loc1_.xStep;
  302.          _loc1_.futureX = _loc1_._x - _loc1_.yStep;
  303.          _loc1_.targetRot = 90;
  304.       }
  305.       else if(_loc1_.gravType == 3)
  306.       {
  307.          _loc1_.futureY = _loc1_._y - _loc1_.yStep;
  308.          _loc1_.futureX = _loc1_._x - _loc1_.xStep;
  309.          if(_loc1_._rotation <= -90)
  310.          {
  311.             _loc1_.targetRot = -180;
  312.          }
  313.          else
  314.          {
  315.             _loc1_.targetRot = 180;
  316.          }
  317.       }
  318.       else if(_loc1_.gravType == 4)
  319.       {
  320.          _loc1_.futureY = _loc1_._y - _loc1_.xStep;
  321.          _loc1_.futureX = _loc1_._x + _loc1_.yStep;
  322.          if(_loc1_._rotation >= 180)
  323.          {
  324.             _loc1_.targetRot = 270;
  325.          }
  326.          else
  327.          {
  328.             _loc1_.targetRot = -90;
  329.          }
  330.       }
  331.       if((_loc1_.targetRot - _loc1_._rotation) * (_loc1_.targetRot - _loc1_._rotation) > 5)
  332.       {
  333.          _loc1_._rotation += (_loc1_.targetRot - _loc1_._rotation) / 2;
  334.       }
  335.       else
  336.       {
  337.          _loc1_._rotation = _loc1_.targetRot;
  338.          if(_loc1_._rotation == -180)
  339.          {
  340.             _loc1_._rotation = 180;
  341.          }
  342.          if(_loc1_._rotation == 270)
  343.          {
  344.             _loc1_._rotation = -90;
  345.          }
  346.       }
  347.       _loc1_.xCell = Math.floor(_loc1_.futureX / _loc1_._parent.cellsize + 0.5);
  348.       _loc1_.yCell = Math.floor(_loc1_.futureY / _loc1_._parent.cellsize + 0.5);
  349.       if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].gravType != 0 && _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].gravType != undefined)
  350.       {
  351.          if(_loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].gravType <= 4)
  352.          {
  353.             _loc1_.gravType = _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].gravType;
  354.             _loc1_.shiftGrav = 0;
  355.          }
  356.          else if(_loc1_.shiftGrav != _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].gravType - 4)
  357.          {
  358.             _loc1_.shiftGrav = _loc1_._parent.cells[_loc1_.xCell][_loc1_.yCell].gravType - 4;
  359.             if(_loc1_.shiftGrav == _loc1_.gravType)
  360.             {
  361.                if(_loc1_.gravType < 4)
  362.                {
  363.                   _loc1_.gravType = _loc1_.gravType + 1;
  364.                }
  365.                else
  366.                {
  367.                   _loc1_.gravType = 1;
  368.                }
  369.             }
  370.             else if(_loc1_.gravType > 1)
  371.             {
  372.                _loc1_.gravType = _loc1_.gravType - 1;
  373.             }
  374.             else
  375.             {
  376.                _loc1_.gravType = 4;
  377.             }
  378.          }
  379.       }
  380.       _loc1_.rawHitTest();
  381.       _loc1_._y = _loc1_.futureY;
  382.       _loc1_._x = _loc1_.futureX;
  383.    }
  384.    function rawHitTest()
  385.    {
  386.       var _loc1_ = this;
  387.       var _loc3_ = -1;
  388.       while(_loc3_ <= 1)
  389.       {
  390.          var _loc2_ = -1;
  391.          while(_loc2_ <= 1)
  392.          {
  393.             if(_loc1_.xCell != 0 && _loc1_.yCell != 0)
  394.             {
  395.                _loc1_.detailHitTest(_loc1_.xCell + _loc3_,_loc1_.yCell + _loc2_);
  396.             }
  397.             else if(_loc1_.xCell == 0 && _loc1_.yCell != 0 && _loc3_ >= 0)
  398.             {
  399.                _loc1_.detailHitTest(_loc1_.xCell + _loc3_,_loc1_.yCell + _loc2_);
  400.             }
  401.             else if(_loc1_.xCell != 0 && _loc1_.yCell == 0 && _loc2_ >= 0)
  402.             {
  403.                _loc1_.detailHitTest(_loc1_.xCell + _loc3_,_loc1_.yCell + _loc2_);
  404.             }
  405.             else if(_loc3_ >= 0 && _loc2_ >= 0)
  406.             {
  407.                _loc1_.detailHitTest(_loc1_.xCell + _loc3_,_loc1_.yCell + _loc2_);
  408.             }
  409.             _loc2_ = _loc2_ + 1;
  410.          }
  411.          _loc3_ = _loc3_ + 1;
  412.       }
  413.    }
  414.    function detailHitTest(tmpX, tmpY)
  415.    {
  416.       var _loc1_ = this;
  417.       var _loc2_ = tmpX;
  418.       var _loc3_ = tmpY;
  419.       _loc2_;
  420.       _loc3_;
  421.       var tile = _loc1_._parent.cells[_loc2_][_loc3_].tile;
  422.       if(tile >= 1 && tile <= 5)
  423.       {
  424.          var left = _loc1_.futureX - _loc1_._width / 2;
  425.          var right = _loc1_.futureX + _loc1_._width / 2;
  426.          var top = _loc1_.futureY - _loc1_._height / 2;
  427.          var bottom = _loc1_.futureY + _loc1_._height / 2;
  428.          if(tile == 1)
  429.          {
  430.             var cLeft = _loc1_._parent.cells[_loc2_][_loc3_].clip._x - _loc1_._parent.cellsize / 2;
  431.             var cRight = _loc1_._parent.cells[_loc2_][_loc3_].clip._x + _loc1_._parent.cellsize / 2;
  432.             var cTop = _loc1_._parent.cells[_loc2_][_loc3_].clip._y - _loc1_._parent.cellsize / 2;
  433.             var cBottom = _loc1_._parent.cells[_loc2_][_loc3_].clip._y + _loc1_._parent.cellsize / 2;
  434.          }
  435.          else if(tile == 2)
  436.          {
  437.             var cLeft = _loc1_._parent.cells[_loc2_][_loc3_].clip._x - _loc1_._parent.cellsize / 2;
  438.             var cRight = _loc1_._parent.cells[_loc2_][_loc3_].clip._x + _loc1_._parent.cellsize / 2;
  439.             var cTop = _loc1_._parent.cells[_loc2_][_loc3_].clip._y - _loc1_._parent.cellsize / 2;
  440.             var cBottom = _loc1_._parent.cells[_loc2_][_loc3_].clip._y;
  441.          }
  442.          else if(tile == 3)
  443.          {
  444.             var cLeft = _loc1_._parent.cells[_loc2_][_loc3_].clip._x;
  445.             var cRight = _loc1_._parent.cells[_loc2_][_loc3_].clip._x + _loc1_._parent.cellsize / 2;
  446.             var cTop = _loc1_._parent.cells[_loc2_][_loc3_].clip._y - _loc1_._parent.cellsize / 2;
  447.             var cBottom = _loc1_._parent.cells[_loc2_][_loc3_].clip._y + _loc1_._parent.cellsize / 2;
  448.          }
  449.          else if(tile == 4)
  450.          {
  451.             var cLeft = _loc1_._parent.cells[_loc2_][_loc3_].clip._x - _loc1_._parent.cellsize / 2;
  452.             var cRight = _loc1_._parent.cells[_loc2_][_loc3_].clip._x + _loc1_._parent.cellsize / 2;
  453.             var cTop = _loc1_._parent.cells[_loc2_][_loc3_].clip._y;
  454.             var cBottom = _loc1_._parent.cells[_loc2_][_loc3_].clip._y + _loc1_._parent.cellsize / 2;
  455.          }
  456.          else if(tile == 5)
  457.          {
  458.             var cLeft = _loc1_._parent.cells[_loc2_][_loc3_].clip._x - _loc1_._parent.cellsize / 2;
  459.             var cRight = _loc1_._parent.cells[_loc2_][_loc3_].clip._x;
  460.             var cTop = _loc1_._parent.cells[_loc2_][_loc3_].clip._y - _loc1_._parent.cellsize / 2;
  461.             var cBottom = _loc1_._parent.cells[_loc2_][_loc3_].clip._y + _loc1_._parent.cellsize / 2;
  462.          }
  463.          if(bottom > cTop && top < cBottom && left < cRight && right > cLeft)
  464.          {
  465.             var projUp = cTop - _loc1_._height / 2 - _loc1_.futureY;
  466.             var projDown = cBottom + _loc1_._height / 2 - _loc1_.futureY;
  467.             var projLeft = cLeft - _loc1_._width / 2 - _loc1_.futureX;
  468.             var projRight = cRight + _loc1_._width / 2 - _loc1_.futureX;
  469.             if(Math.sqrt(projUp * projUp) < Math.sqrt(projDown * projDown))
  470.             {
  471.                var projY = projUp;
  472.             }
  473.             else
  474.             {
  475.                var projY = projDown;
  476.             }
  477.             if(Math.sqrt(projLeft * projLeft) < Math.sqrt(projRight * projRight))
  478.             {
  479.                var projX = projLeft;
  480.             }
  481.             else
  482.             {
  483.                var projX = projRight;
  484.             }
  485.             if(Math.sqrt(projX * projX) < Math.sqrt(projY * projY))
  486.             {
  487.                if(!(_loc1_.gravType == 1 || _loc1_.gravType == 3))
  488.                {
  489.                   if(_loc1_.gravType == 2 || _loc1_.gravType == 4)
  490.                   {
  491.                      _loc1_.yStep = 0;
  492.                   }
  493.                }
  494.                _loc1_.futureX += projX;
  495.                if(projX == projRight && _loc1_.gravType == 2)
  496.                {
  497.                   if(!_loc1_.onGround)
  498.                   {
  499.                      _loc1_.onGround = true;
  500.                   }
  501.                }
  502.                else if(projX == projLeft && _loc1_.gravType == 4)
  503.                {
  504.                   if(!_loc1_.onGround)
  505.                   {
  506.                      _loc1_.onGround = true;
  507.                   }
  508.                }
  509.             }
  510.             else
  511.             {
  512.                if(_loc1_.gravType == 1 || _loc1_.gravType == 3)
  513.                {
  514.                   _loc1_.yStep = 0;
  515.                }
  516.                else if(_loc1_.gravType == 2 || _loc1_.gravType == 4)
  517.                {
  518.                }
  519.                _loc1_.futureY += projY;
  520.                if(projY == projUp && _loc1_.gravType == 1)
  521.                {
  522.                   if(!_loc1_.onGround)
  523.                   {
  524.                      _loc1_.onGround = true;
  525.                   }
  526.                }
  527.                else if(projY == projDown && _loc1_.gravType == 3)
  528.                {
  529.                   if(!_loc1_.onGround)
  530.                   {
  531.                      _loc1_.onGround = true;
  532.                   }
  533.                }
  534.             }
  535.          }
  536.       }
  537.    }
  538. }
  539.