home *** CD-ROM | disk | FTP | other *** search
/ Champak 40 / Vol 40.iso / games / tetris.swf / scripts / DefineSprite_724 / frame_1 / DoAction.as
Encoding:
Text File  |  2007-04-25  |  14.4 KB  |  518 lines

  1. function ┬º\x01\x02┬º()
  2. {
  3.    return 2986;
  4. }
  5. var ┬º\x01┬º = -2521 + "\x01\x02"();
  6. while(true)
  7. {
  8.    if(eval("\x01") == 465)
  9.    {
  10.       set("\x01",eval("\x01") - 347);
  11.       ┬º┬ºpush(true);
  12.    }
  13.    else if(eval("\x01") == 220)
  14.    {
  15.       set("\x01",eval("\x01") + 117);
  16.       ┬º┬ºpush(eval(function ┬º\x01\x02┬º()
  17.       {
  18.          return 2986;
  19.       }));
  20.    }
  21.    else if(eval("\x01") == 876)
  22.    {
  23.       set("\x01",eval("\x01") - 201);
  24.       var ┬º┬ºpop() = function ┬º\x01\x02┬º()
  25.       {
  26.          return 2986;
  27.       };
  28.    }
  29.    else if(eval("\x01") == 575)
  30.    {
  31.       set("\x01",eval("\x01") + 301);
  32.       ┬º┬ºpush("\x0f");
  33.       ┬º┬ºpush(1);
  34.    }
  35.    else if(eval("\x01") == 208)
  36.    {
  37.       set("\x01",eval("\x01") + 367);
  38.    }
  39.    else if(eval("\x01") == 842)
  40.    {
  41.       set("\x01",eval("\x01") - 796);
  42.    }
  43.    else if(eval("\x01") == 118)
  44.    {
  45.       set("\x01",eval("\x01") + 387);
  46.       if(function ┬º\x01\x02┬º()
  47.       {
  48.          return 2986;
  49.       })
  50.       {
  51.          set("\x01",eval("\x01") - 14);
  52.       }
  53.    }
  54.    else if(eval("\x01") == 675)
  55.    {
  56.       set("\x01",eval("\x01") - 455);
  57.       ┬º┬ºpush("\x0f");
  58.    }
  59.    else if(eval("\x01") == 491)
  60.    {
  61.       set("\x01",eval("\x01") + 84);
  62.    }
  63.    else if(eval("\x01") == 337)
  64.    {
  65.       set("\x01",eval("\x01") + 59);
  66.       ┬º┬ºpush(!function ┬º\x01\x02┬º()
  67.       {
  68.          return 2986;
  69.       });
  70.    }
  71.    else
  72.    {
  73.       if(eval("\x01") == 46)
  74.       {
  75.          set("\x01",eval("\x01") + 136);
  76.          startLevel = 1;
  77.          startFall = function()
  78.          {
  79.             clearInterval(timeout);
  80.             timeout = setInterval(down,speed);
  81.          };
  82.          fastFall = function()
  83.          {
  84.             clearInterval(fasttime);
  85.             fasttime = setInterval(down,10);
  86.          };
  87.          stopFall = function()
  88.          {
  89.             clearInterval(timeout);
  90.             clearInterval(fasttime);
  91.          };
  92.          stopFall();
  93.          drawBlock = function(num, blockPos)
  94.          {
  95.             b_mc[blockPos].gotoAndStop(num + 1);
  96.          };
  97.          huang_fun = function()
  98.          {
  99.             huang_mc.play();
  100.          };
  101.          addnum = 0;
  102.          addBlock = function()
  103.          {
  104.             if(addnum > 0)
  105.             {
  106.                addnum--;
  107.                huang_fun();
  108.                _root.man1.gotoAndPlay("lose");
  109.                var _loc4_ = 0;
  110.                while(_loc4_ <= 17)
  111.                {
  112.                   var _loc3_ = 0;
  113.                   while(_loc3_ < 10)
  114.                   {
  115.                      var _loc2_ = _loc4_ * 10 + _loc3_;
  116.                      if(_loc4_ == 17)
  117.                      {
  118.                         aab = random(2);
  119.                         if(aab == 1)
  120.                         {
  121.                            flag_array[_loc2_] = 5;
  122.                         }
  123.                         else
  124.                         {
  125.                            flag_array[_loc2_] = 0;
  126.                         }
  127.                         drawBlock(flag_array[_loc2_],_loc2_);
  128.                      }
  129.                      else
  130.                      {
  131.                         drawBlock(flag_array[_loc2_] = flag_array[_loc2_ + 10],_loc2_);
  132.                      }
  133.                      _loc3_ = _loc3_ + 1;
  134.                   }
  135.                   _loc4_ = _loc4_ + 1;
  136.                }
  137.                if(addnum > 0)
  138.                {
  139.                   addBlock();
  140.                }
  141.             }
  142.          };
  143.          drawNextBlock = function(num, blockPos)
  144.          {
  145.             next_mc[blockPos].gotoAndStop(num + 1);
  146.          };
  147.          drawThisShape = function()
  148.          {
  149.             if(moved)
  150.             {
  151.                var _loc1_ = 0;
  152.                while(_loc1_ < 4)
  153.                {
  154.                   drawBlock(0,block_array[_loc1_]);
  155.                   _loc1_ = _loc1_ + 1;
  156.                }
  157.             }
  158.             else
  159.             {
  160.                moved = true;
  161.             }
  162.             _loc1_ = 0;
  163.             while(_loc1_ < 4)
  164.             {
  165.                blockPos = shape_array[thisShape * 16 + rotation * 4 + _loc1_];
  166.                block_array[_loc1_] = (blockPos >> 2) * 6 + blockPos + xPos + yPos;
  167.                drawBlock(thisShape + 1,block_array[_loc1_]);
  168.                _loc1_ = _loc1_ + 1;
  169.             }
  170.          };
  171.          drawNextShape = function()
  172.          {
  173.             addBlock();
  174.             nextShape = int(Math.random() * 7);
  175.             if(nextShape == 6)
  176.             {
  177.                next_mc._x = -166;
  178.             }
  179.             else if(nextShape == 0)
  180.             {
  181.                next_mc._x = -164;
  182.             }
  183.             else
  184.             {
  185.                next_mc._x = -158;
  186.             }
  187.             var _loc1_ = 0;
  188.             while(_loc1_ < 11)
  189.             {
  190.                drawNextBlock(0,_loc1_);
  191.                _loc1_ = _loc1_ + 1;
  192.             }
  193.             _loc1_ = 0;
  194.             while(_loc1_ < 4)
  195.             {
  196.                drawNextBlock(nextShape + 1,shape_array[nextShape * 16 + _loc1_]);
  197.                _loc1_ = _loc1_ + 1;
  198.             }
  199.          };
  200.          collision = function(x, y, rot)
  201.          {
  202.             var _loc1_ = 0;
  203.             while(_loc1_ < 4)
  204.             {
  205.                blockPos = shape_array[thisShape * 16 + rot * 4 + _loc1_];
  206.                if(flag_array[(blockPos >> 2) * 6 + blockPos + x + y] != 0)
  207.                {
  208.                   return true;
  209.                }
  210.                _loc1_ = _loc1_ + 1;
  211.             }
  212.             return false;
  213.          };
  214.          left = function()
  215.          {
  216.             var _loc2_ = 0;
  217.             while(_loc2_ < 4)
  218.             {
  219.                var _loc1_ = block_array[_loc2_] - yPos;
  220.                while(_loc1_ >= 0)
  221.                {
  222.                   if(_loc1_ == 0)
  223.                   {
  224.                      return undefined;
  225.                   }
  226.                   _loc1_ -= 10;
  227.                }
  228.                _loc2_ = _loc2_ + 1;
  229.             }
  230.             if(!collision(xPos - 1,yPos,rotation))
  231.             {
  232.                xPos--;
  233.                drawThisShape();
  234.             }
  235.          };
  236.          right = function()
  237.          {
  238.             var _loc2_ = 0;
  239.             while(_loc2_ < 4)
  240.             {
  241.                var _loc1_ = block_array[_loc2_] - yPos;
  242.                while(_loc1_ >= 0)
  243.                {
  244.                   if(_loc1_ == 9)
  245.                   {
  246.                      return undefined;
  247.                   }
  248.                   _loc1_ -= 10;
  249.                }
  250.                _loc2_ = _loc2_ + 1;
  251.             }
  252.             if(!collision(xPos + 1,yPos,rotation))
  253.             {
  254.                xPos++;
  255.                drawThisShape();
  256.             }
  257.          };
  258.          rotate = function(clockwise)
  259.          {
  260.             testRot = rotation;
  261.             if(clockwise)
  262.             {
  263.                testRot++;
  264.             }
  265.             else
  266.             {
  267.                testRot--;
  268.             }
  269.             if(testRot == 4)
  270.             {
  271.                testRot = 0;
  272.             }
  273.             else if(testRot == -1)
  274.             {
  275.                testRot = 3;
  276.             }
  277.             var _loc2_ = 0;
  278.             while(_loc2_ < 4)
  279.             {
  280.                blockPos = shape_array[thisShape * 16 + testRot * 4 + _loc2_];
  281.                var _loc1_ = (blockPos >> 2) * 6 + blockPos + xPos;
  282.                while(_loc1_ >= -1)
  283.                {
  284.                   if(_loc1_ == -1 && xPos < 0 || _loc1_ == 0 && xPos > 6)
  285.                   {
  286.                      return undefined;
  287.                   }
  288.                   _loc1_ -= 10;
  289.                }
  290.                _loc2_ = _loc2_ + 1;
  291.             }
  292.             if((blockPos >> 2) * 6 + blockPos + xPos + yPos > 179)
  293.             {
  294.                return undefined;
  295.             }
  296.             if(!collision(xPos,yPos,testRot))
  297.             {
  298.                rotation = testRot;
  299.                drawThisShape();
  300.                sound_mc.gotoAndPlay("popHi");
  301.             }
  302.          };
  303.          down = function()
  304.          {
  305.             if(gameOver || simult)
  306.             {
  307.                return undefined;
  308.             }
  309.             if(block_array[3] - xPos < 170 && !collision(xPos,yPos + 10,rotation))
  310.             {
  311.                yPos += 10;
  312.                drawThisShape();
  313.             }
  314.             else
  315.             {
  316.                clearInterval(fasttime);
  317.                var _loc3_ = 0;
  318.                while(_loc3_ < 4)
  319.                {
  320.                   flag_array[block_array[_loc3_]] = thisShape + 1;
  321.                   _loc3_ = _loc3_ + 1;
  322.                }
  323.                simult = 0;
  324.                var _loc4_ = 0;
  325.                while(_loc4_ < 180)
  326.                {
  327.                   var _loc5_ = 0;
  328.                   while(_loc5_ < 10)
  329.                   {
  330.                      if(flag_array[_loc5_ + _loc4_] == 0)
  331.                      {
  332.                         break;
  333.                      }
  334.                      if(_loc5_ == 9)
  335.                      {
  336.                         stopFall();
  337.                         _loc3_ = 0;
  338.                         while(_loc3_ < 10)
  339.                         {
  340.                            b_mc[_loc3_ + _loc4_].bang_mc.y = _loc4_;
  341.                            b_mc[_loc3_ + _loc4_].bang_mc.play();
  342.                            _loc3_ = _loc3_ + 1;
  343.                         }
  344.                         simult++;
  345.                         _root.game1.addnum = _root.game1.addnum + 1;
  346.                         lines++;
  347.                         _root.p1lines += 100;
  348.                         _root.p1.nextFrame();
  349.                         _root.man1.gotoAndPlay("win");
  350.                      }
  351.                      _loc5_ = _loc5_ + 1;
  352.                   }
  353.                   _loc4_ += 10;
  354.                }
  355.                if(simult > 0)
  356.                {
  357.                   sound_mc.gotoAndPlay("win");
  358.                   switch(simult)
  359.                   {
  360.                      case 1:
  361.                         score += level * 40;
  362.                         break;
  363.                      case 2:
  364.                         score += level * 100;
  365.                         break;
  366.                      case 3:
  367.                         score += level * 300;
  368.                         break;
  369.                      case 4:
  370.                         score += level * 1200;
  371.                   }
  372.                }
  373.                scoreTxt = score;
  374.                if(collision(xPos,yPos,rotation) && yPos == -10)
  375.                {
  376.                   gameOver = true;
  377.                   stopFall();
  378.                   _root.game1.stopFall();
  379.                   _root.game2.stopFall();
  380.                   quitGame_mc.gotoAndStop(2);
  381.                   quitGame_mc._visible = true;
  382.                   _root.pgameover = 1;
  383.                   Key.removeListener(this);
  384.                   _root.gotoAndStop("gameover2");
  385.                }
  386.                else
  387.                {
  388.                   level = int(lines / 10) + startLevel;
  389.                   speed = speed_fun();
  390.                   xPos = 3;
  391.                   yPos = -10;
  392.                   rotation = 0;
  393.                   moved = false;
  394.                   thisShape = nextShape;
  395.                   if(simult == 0)
  396.                   {
  397.                      drawNextShape();
  398.                      drawThisShape();
  399.                      sound_mc.gotoAndPlay("popLo");
  400.                   }
  401.                }
  402.             }
  403.             updateAfterEvent();
  404.          };
  405.          this.onEnterFrame = function()
  406.          {
  407.             if(gameOver || simult)
  408.             {
  409.                return undefined;
  410.             }
  411.             var _loc2_ = Key.getCode();
  412.             if(!paused)
  413.             {
  414.                if(Key.isDown(_root.Acode))
  415.                {
  416.                   left();
  417.                }
  418.                if(Key.isDown(_root.Dcode))
  419.                {
  420.                   right();
  421.                }
  422.                if(Key.isDown(_root.Scode))
  423.                {
  424.                   down();
  425.                }
  426.             }
  427.             updateAfterEvent();
  428.          };
  429.          this.onKeyDown = function()
  430.          {
  431.             if(gameOver || simult)
  432.             {
  433.                return undefined;
  434.             }
  435.             var _loc2_ = Key.getCode();
  436.             if(!paused)
  437.             {
  438.                switch(_loc2_)
  439.                {
  440.                   case _root.Wcode:
  441.                      rotate(true);
  442.                      break;
  443.                   case _root.Fcode:
  444.                      fastFall();
  445.                }
  446.             }
  447.             updateAfterEvent();
  448.          };
  449.          Key.removeListener(this);
  450.          Key.addListener(this);
  451.          gameOver = true;
  452.          paused = moved = false;
  453.          _root.p1lines = 0;
  454.          score = scoreTxt = lines = thisShape = nextShape = rotation = 0;
  455.          level = startLevel;
  456.          speed_fun = function()
  457.          {
  458.             return 500;
  459.          };
  460.          speed = speed_fun();
  461.          xPos = 3;
  462.          yPos = -10;
  463.          shape_array = new Array(5,6,9,10,5,6,9,10,5,6,9,10,5,6,9,10,4,5,6,9,1,4,5,9,1,4,5,6,1,5,6,9,4,5,9,10,2,5,6,9,4,5,9,10,2,5,6,9,5,6,8,9,1,5,6,10,5,6,8,9,1,5,6,10,4,5,6,8,0,1,5,9,2,4,5,6,1,5,9,10,4,5,6,10,1,5,8,9,0,4,5,6,1,2,5,9,4,5,6,7,1,5,9,13,4,5,6,7,1,5,9,13);
  464.          block_array = new Array(0,0,0,0);
  465.          flag_array = new Array();
  466.          var i = 18;
  467.          while(i >= 0)
  468.          {
  469.             var j = 0;
  470.             while(j < 10)
  471.             {
  472.                var k = i * 10 + j;
  473.                b_mc.attachMovie("µû╣σ¥ù",k,k,{_x:j * 20,_y:i * 20});
  474.                flag_array[k] = 0;
  475.                j++;
  476.             }
  477.             i--;
  478.          }
  479.          var i = 0;
  480.          while(i < 3)
  481.          {
  482.             var j = 0;
  483.             while(j < 4)
  484.             {
  485.                var k = i * 4 + j;
  486.                next_mc.attachMovie("µû╣σ¥ù",k,k,{_x:j * 20,_y:i * 20});
  487.                j++;
  488.             }
  489.             i++;
  490.          }
  491.          b_mc._xscale = 90;
  492.          b_mc._yscale = 90;
  493.          break;
  494.       }
  495.       if(eval("\x01") == 182)
  496.       {
  497.          set("\x01",eval("\x01") - 182);
  498.          break;
  499.       }
  500.       if(eval("\x01") != 396)
  501.       {
  502.          if(eval("\x01") == 505)
  503.          {
  504.             set("\x01",eval("\x01") - 14);
  505.          }
  506.          break;
  507.       }
  508.       set("\x01",eval("\x01") + 446);
  509.       if(function ┬º\x01\x02┬º()
  510.       {
  511.          return 2986;
  512.       })
  513.       {
  514.          set("\x01",eval("\x01") - 796);
  515.       }
  516.    }
  517. }
  518.