home *** CD-ROM | disk | FTP | other *** search
/ 600 Games / 600games.iso / Aventura / paranormality.swf / scripts / frame_213 / DoAction_2.as next >
Encoding:
Text File  |  2005-09-29  |  7.5 KB  |  333 lines

  1. function moveDweeb(mc)
  2. {
  3.    if(Key.isDown(Key.RIGHT))
  4.    {
  5.       mc.lastkey = 4;
  6.       mc.xstep = mc.speed;
  7.       mc._xscale = 100;
  8.       _level0.turnright(mc);
  9.    }
  10.    else if(Key.isDown(Key.LEFT) && _level0.stopLeft == false)
  11.    {
  12.       mc.lastkey = 3;
  13.       mc.xstep = - mc.speed;
  14.       mc._xscale = -100;
  15.       _level0.turnleft(mc);
  16.       if(mc._x < mc.startx)
  17.       {
  18.          mc._x = mc.startx;
  19.       }
  20.    }
  21.    else
  22.    {
  23.       if(Key.isDown(Key.UP) == false)
  24.       {
  25.          mc.gotoAndStop(4);
  26.       }
  27.       mc.xstep = 0;
  28.    }
  29.    if(Key.isDown(Key.UP) && mc.falling == false && mc.fly == false)
  30.    {
  31.       if(mc.onladder == true)
  32.       {
  33.          mc._y = Math.round(mc._y / 10) * 10;
  34.          mc.jump = false;
  35.          mc.jumped = false;
  36.          mc._y -= mc.ystep;
  37.          mc.gotoAndStop(9);
  38.       }
  39.       else if(mc.jumped == false && mc.firing == false)
  40.       {
  41.          mc.jump = true;
  42.          if(mc.lastkey == 4)
  43.          {
  44.             _level0.turnright(mc);
  45.          }
  46.          else
  47.          {
  48.             _level0.turnleft(mc);
  49.          }
  50.       }
  51.    }
  52.    else if(mc.fly == true)
  53.    {
  54.       mc.gotoAndStop(5);
  55.       if(Key.isDown(Key.UP) && mc._y - mc._height >= _level0.miny)
  56.       {
  57.          mc._y -= mc.ystep / 2;
  58.       }
  59.       else if(Key.isDOwn(Key.DOWN) && _level0.maxy >= mc._y + mc._height)
  60.       {
  61.          mc._y += mc.ystep / 2;
  62.       }
  63.       mc.flycount = mc.flycount + 1;
  64.       if(mc.flycount == 200)
  65.       {
  66.          mc.fly = false;
  67.          mc.speed = 8;
  68.          mc._alpha = 100;
  69.       }
  70.       if(mc.flycount >= 176 && mc.flycount / 2 == int(mc.flycount / 2) && mc.fly == true)
  71.       {
  72.          mc._alpha = 50;
  73.       }
  74.       else if(mc.flycount >= 176)
  75.       {
  76.          mc._alpha = 100;
  77.       }
  78.    }
  79.    if(mc.jump == true && mc.jumped == false)
  80.    {
  81.       mc.jumped = true;
  82.       mc.jump = false;
  83.       mc.jumpstep = - mc.jumpheight;
  84.    }
  85.    if(mc.onladder == true)
  86.    {
  87.       mc.jumped = false;
  88.       if(Key.isDown(Key.DOWN))
  89.       {
  90.          mc._y += mc.ystep;
  91.          mc.gotoAndStop(9);
  92.       }
  93.    }
  94.    if(mc.jumped == true)
  95.    {
  96.       for(i in "_level0:platformSet")
  97.       {
  98.          if(mc.headblock.hitTest(_level0.platformSet[i].platformMC))
  99.          {
  100.             mc.jumped = false;
  101.          }
  102.       }
  103.       mc._y += mc.jumpstep;
  104.       mc.jumpstep += 2;
  105.    }
  106.    if(mc._y >= 240)
  107.    {
  108.       mc.jumped = false;
  109.    }
  110.    if(mc.fly == false)
  111.    {
  112.       _level0.dweebGravity(mc);
  113.    }
  114.    if(Key.isDown(Key.SPACE) && mc.armed == true)
  115.    {
  116.       if(Key.isDown(Key.UP) && -80 < mc.fireAngle && mc.newAngle == false)
  117.       {
  118.          mc.fireAngle -= 5;
  119.          mc.newAngle = true;
  120.       }
  121.       else if(Key.isDown(Key.DOWN) && mc.fireAngle < 70 && mc.newAngle == false)
  122.       {
  123.          mc.fireAngle += 5;
  124.          mc.newAngle = true;
  125.       }
  126.       mc.firing = true;
  127.       if(mc.fire == 0)
  128.       {
  129.          _level0.shoot(mc);
  130.          if(_level0.weapon == 4)
  131.          {
  132.             _level0.shoot(mc);
  133.          }
  134.          firedelay = 10 - _level0.weapon;
  135.       }
  136.    }
  137.    else if(Key.isDown(Key.SPACE) == false && mc.armed == true)
  138.    {
  139.       mc.firing = false;
  140.       mc.fireAngle = 0;
  141.    }
  142.    mc.newAngle = false;
  143.    if(0 < firedelay && mc.armed == true)
  144.    {
  145.       firedelay--;
  146.    }
  147.    else
  148.    {
  149.       mc.fire = 0;
  150.    }
  151.    if(_level0.stopRight == false)
  152.    {
  153.       for(i in "_level0:groundSet")
  154.       {
  155.          _level0.groundSet[i]._x -= mc.xstep;
  156.          _level0.hillSet[i]._x -= mc.xstep / 2;
  157.       }
  158.       for(i in "_level0:scrollitem")
  159.       {
  160.          _level0.scrollitem[i]._x -= mc.xstep;
  161.       }
  162.       mc.xpos += mc.xstep;
  163.    }
  164.    else
  165.    {
  166.       mc._x += mc.xstep;
  167.       mc.xpos += mc.xstep;
  168.       if(mc._x >= _level0.maxx)
  169.       {
  170.          mc._x -= mc.xstep;
  171.          mc.xpos -= mc.xstep;
  172.       }
  173.    }
  174. }
  175. function dweebGravity(mc)
  176. {
  177.    mc.fallingcount = 0;
  178.    mc.falling = false;
  179.    for(i in "platformSet")
  180.    {
  181.       if(mc.hitblock.hitTest(_level0.platformSet[i]) == false)
  182.       {
  183.          mc.fallingcount = mc.fallingcount + 1;
  184.       }
  185.       else
  186.       {
  187.          mc.fallingcount = 0;
  188.          mc.platformIndex = i;
  189.       }
  190.    }
  191.    if(mc.fallingcount == _level0.platformSet.length)
  192.    {
  193.       mc.falling = true;
  194.       mc.onPlatform = false;
  195.       mc.onLadder = false;
  196.    }
  197.    else
  198.    {
  199.       mc.onPlatform = true;
  200.       mc._y = _level0.platformSet[mc.platformIndex].coords.y;
  201.       mc.jumped = false;
  202.    }
  203.    mc.ladderCount = 0;
  204.    for(i in "_level0:ladderSet")
  205.    {
  206.       if(mc.hitblock.hitTest(_level0.ladderSet[i]) == false)
  207.       {
  208.          mc.ladderCount = mc.ladderCount + 1;
  209.       }
  210.       else
  211.       {
  212.          mc.ladderCount = 0;
  213.       }
  214.    }
  215.    if(mc.laddercount == _level0.ladderSet.length)
  216.    {
  217.       mc.onLadder = false;
  218.    }
  219.    else
  220.    {
  221.       mc.falling = false;
  222.       mc.onLadder = true;
  223.    }
  224.    if(mc.falling == true && mc.jumped == false)
  225.    {
  226.       mc._y += mc.ystep * 1.5;
  227.       if(400 < mc._y)
  228.       {
  229.          _level0.health = 0;
  230.       }
  231.    }
  232. }
  233. function resetdweeb(mc)
  234. {
  235.    mc._x = mc.startx;
  236.    mc._y = mc.starty;
  237.    for(i in "_level0:groundSet")
  238.    {
  239.       _level0.groundSet[i]._x += mc.xpos - mc._x;
  240.       _level0.hillSet[i]._x += mc.xpos / 2 - mc._x / 2;
  241.    }
  242.    for(i in "_level0:scrollitem")
  243.    {
  244.       _level0.scrollitem[i]._x += mc.xpos - mc._x;
  245.    }
  246.    mc.xpos = mc._x;
  247.    _level0.health = 100;
  248.    _level0.life -= 1;
  249.    if(0 >= _level0.life)
  250.    {
  251.       _level0.removeAll();
  252.    }
  253. }
  254. function shoot(mc)
  255. {
  256.    _level0.attachMovie("bullet","bullet" + _level0.itemdepth,_level0.itemdepth);
  257.    if(Key.isDown(Key.RIGHT))
  258.    {
  259.       _level0["bullet" + _level0.itemdepth]._xscale = 100;
  260.       _level0["bullet" + _level0.itemdepth]._x = mc._x + 20;
  261.       _level0["bullet" + _level0.itemdepth]._y = mc._y - 25;
  262.    }
  263.    else if(mc.lastkey == 4)
  264.    {
  265.       _level0["bullet" + _level0.itemdepth]._xscale = 100;
  266.       _level0["bullet" + _level0.itemdepth]._x = mc._x + 20;
  267.       _level0["bullet" + _level0.itemdepth]._y = mc._y - 30;
  268.    }
  269.    else if(Key.isDown(Key.LEFT))
  270.    {
  271.       _level0["bullet" + _level0.itemdepth]._xscale = -100;
  272.       _level0["bullet" + _level0.itemdepth]._x = mc._x - 20;
  273.       _level0["bullet" + _level0.itemdepth]._y = mc._y - 25;
  274.    }
  275.    else if(mc.lastkey == 3)
  276.    {
  277.       _level0["bullet" + _level0.itemdepth]._xscale = -100;
  278.       _level0["bullet" + _level0.itemdepth]._x = mc._x - 20;
  279.       _level0["bullet" + _level0.itemdepth]._y = mc._y - 30;
  280.    }
  281.    if(mc.fly == true)
  282.    {
  283.       _level0["bullet" + _level0.itemdepth]._y = mc._y - 14;
  284.    }
  285.    _level0.itemdepth = _level0.itemdepth + 1;
  286.    mc.fire = 1;
  287. }
  288. function turnright(mc)
  289. {
  290.    if(mc.fly == false)
  291.    {
  292.       mc.gotoAndStop(3);
  293.    }
  294. }
  295. function turnleft(mc)
  296. {
  297.    if(mc.fly == false)
  298.    {
  299.       mc.gotoAndStop(3);
  300.    }
  301. }
  302. function removeAll()
  303. {
  304.    for(i in "_level0:groundSet")
  305.    {
  306.       _level0.groundSet[i].removeMovieClip();
  307.       _level0.groundSet.splice(i,1);
  308.    }
  309.    for(i in "_level0:itemSet")
  310.    {
  311.       _level0.itemSet[i].removeMovieClip();
  312.       _level0.itemSet.splice(i,1);
  313.    }
  314.    for(i in "_level0:hillSet")
  315.    {
  316.       _level0.hillSet[i].removeMovieClip();
  317.       _level0.hillSet.splice(i,1);
  318.    }
  319.    _level0.platformSet.slice(1);
  320.    _level0.ladderSet.slice(1);
  321.    _level0["interface"].removeMovieClip();
  322.    if(0 >= _level0.life)
  323.    {
  324.       _level0.dweeb.removeMovieClip();
  325.       _level0.gotoAndStop("playagain");
  326.    }
  327.    else if(4 < _level0.level)
  328.    {
  329.       _level0.dweeb.removeMovieClip();
  330.       _level0.life = 0;
  331.    }
  332. }
  333.