home *** CD-ROM | disk | FTP | other *** search
/ 600 Games / 600games.iso / Acao / snowrider.swf / scripts / frame_1 / DoAction.as
Encoding:
Text File  |  2005-07-22  |  11.2 KB  |  348 lines

  1. if(!§§pop())
  2. {
  3.    var setup = function()
  4.    {
  5.       var _ = {limit:1200,final:1160,loop1:10,loop2:500,score:0,values:[0,0],fps:0,_x_:(_level0 != this ? 0 : 0),_y_:(_level0 != this ? 0 : 0),cc:0,kk:0,sb:40,fs:0.1,fr:-0.02,xs:[4,15,2],xc:1,vp:[-170,50],oc:0,oq:[140,10,40,100,30,20,10,100,20],oy:-45,op:0.05,oz:0,gc:[0,0],gi:[0,0],gq:[[10000,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10],[10,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20]],gy:[-130,-48],gp:[0.04,0.045],gs:[1000,1000],tc:[0,0],tq:[[5,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10],[1,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10]],ts:[100,25],ty:[50,-60],tp:[0.1,0.03],fs:[100,50],fy:[-35,-55],fp:[0.06,0.05],ln:{o:"obstacle",g:["chicken","snowman"],t:"tree",f:["final_front","final_back"],p:"pointer"},mc:{o:ball,b:ball.boy,c:ball.core,g:ground,s:ground.ball_shadow,f:flakes,z:[mc_front,mc_back],d:{score:display.score,bars:[display.distance,display.speed]}},snd:{loop1:"l0",loop2:"l1",fx0:"s1",fx1:"s9",fx2:"s10",yeah0:"s5",yeah1:"s6",jumpend:"s3",jumpstart:"s4",gameover:"s2",gamedone:"s7"},ssc:0};
  6.       _.pre = Math.sqrt(_.limit) * _.xs[0] * _.xs[2];
  7.       fps = fpsa = 40;
  8.       fpsd = fspc = 0;
  9.       var i = 0;
  10.       while(i < 50)
  11.       {
  12.          _.gq[1][i] = 1 + parseInt(Math.random() * 10);
  13.          _.tq[0][i] = 1 + parseInt(Math.random() * 40);
  14.          _.tq[1][i] = 1 + parseInt(Math.random() * 50);
  15.          i++;
  16.       }
  17.       return _;
  18.    };
  19.    var game = function()
  20.    {
  21.       fpsc++;
  22.       if(fpsd < getTimer())
  23.       {
  24.          fps = parseInt(fpsa);
  25.          fpsa = (fpsa + fpsc) * 0.5;
  26.          fpsd = getTimer() + 1000;
  27.          fpsc = 0;
  28.       }
  29.       gotoAndPlay(_currentframe - 1);
  30.       if(Key.isDown(86) && !bol_toggle)
  31.       {
  32.          fnc_toggleVMode();
  33.       }
  34.       if(!Key.isDown(86))
  35.       {
  36.          bol_toggle = false;
  37.       }
  38.       _.cc = _.cc + 1;
  39.       _.xc -= 1 >= _.xc ? (_.final >= _.cc ? 0 : 0.01) : 0.02;
  40.       _.kk = parseInt(Math.sqrt(_.cc) * _.xs[0] * _.xc);
  41.       _.values[0] = parseInt(_.cc / _.limit * 100);
  42.       _.values[1] = parseInt(_.kk / _.pre * 100);
  43.       _.score += parseInt(_.values[1] / 2);
  44.       if(_.cc == _.limit)
  45.       {
  46.          gameDone(1);
  47.       }
  48.       _.mc.g._rotation = _.cc * _.fr;
  49.       _.mc.c._xscale = _.mc.c._yscale = _.mc.s._xscale = _.mc.s._yscale = _.sb + _.cc * _.fs;
  50.       var p = {x:_.mc.s.point._x,y:_.mc.s.point._y};
  51.       _.mc.s.localToGlobal(p);
  52.       _.mc.o._x = p.x + _._x_;
  53.       _.mc.o._y = p.y + _._y_;
  54.       if(_.mc.g.yoo)
  55.       {
  56.          _.mc.g.yoo = false;
  57.          _.xc += _.xc >= _.xs[2] ? 0 : 0.2;
  58.       }
  59.       else if(_.mc.o.yoo)
  60.       {
  61.          _.mc.o.yoo = false;
  62.          if(_.mc.o._currentframe < 2)
  63.          {
  64.             _.mc.o.gotoAndPlay(2);
  65.             _.mc.s.gotoAndPlay(2);
  66.          }
  67.       }
  68.       createObj();
  69.       moveObj();
  70.       setDisplay();
  71.    };
  72.    var createObj = function()
  73.    {
  74.       if(_.cc == _.oq[_.oc])
  75.       {
  76.          _.oz = 0;
  77.          _.mc.z[_.oz].attachMovie(_.ln.o,_.ln.o,100);
  78.          _.mc.z[_.oz][_.ln.o].mb._alpha = _.values[1];
  79.          _.mc.g.attachMovie(_.ln.p,"o",10);
  80.          _.mc.g.o._y = _.oy;
  81.          _.mc.g.o._x = _.vp[0];
  82.          _.ssf = 1;
  83.       }
  84.       for(var k in "_:gc")
  85.       {
  86.          if(_.cc == _.gq[k][_.gc[k]])
  87.          {
  88.             _.mc.z[0].attachMovie(_.ln.g[k],_.ln.g[k],1 * k + 200);
  89.             _.mc.z[0][_.ln.g[k]]._xscale = _.mc.z[0][_.ln.g[k]]._yscale = 75;
  90.             _.mc.g.attachMovie(_.ln.p,"g" + k,1 * k + 200);
  91.             _.mc.g["g" + k]._y = _.gy[k];
  92.             _.mc.g["g" + k]._x = _.vp[0];
  93.          }
  94.       }
  95.       for(var k in "_:tc")
  96.       {
  97.          if(_.cc == _.tq[k][_.tc[k]])
  98.          {
  99.             _.mc.z[k].attachMovie(_.ln.t,_.ln.t,300);
  100.             _.mc.z[k][_.ln.t]._xscale = _.mc.z[k][_.ln.t]._yscale = _.ts[k];
  101.             _.mc.z[k][_.ln.t].mb._alpha = _.cc * _.op * 10;
  102.             _.mc.g.attachMovie(_.ln.p,"t" + k,1 * k + 300);
  103.             _.mc.g["t" + k]._y = _.ty[k];
  104.             _.mc.g["t" + k]._x = _.vp[0];
  105.          }
  106.       }
  107.       if(_.cc == _.final)
  108.       {
  109.          for(var k in "_/ln:f")
  110.          {
  111.             _.mc.z[k].attachMovie(_.ln.f[k],_.ln.f[k],500);
  112.             _.mc.z[k][_.ln.f[k]]._xscale = _.mc.z[k][_.ln.f[k]]._yscale = _.fs[k];
  113.             _.mc.g.attachMovie(_.ln.p,"f" + k,1 * k + 500);
  114.             _.mc.g["f" + k]._y = _.fy[k];
  115.             _.mc.g["f" + k]._x = _.vp[0];
  116.          }
  117.          _level0.fnc_setQuality(2);
  118.       }
  119.    };
  120.    var moveObj = function()
  121.    {
  122.       if(_.mc.z[_.oz][_.ln.o])
  123.       {
  124.          _.mc.g.o._x += _.kk * _.op;
  125.          var p = {x:_.mc.g.o._x,y:_.mc.g.o._y};
  126.          _.mc.g.o.localToGlobal(p);
  127.          if(_.mc.s._x < p.x + _._x_)
  128.          {
  129.             _.mc.z[_.oz][_.ln.o].removeMovieClip();
  130.             _.oz = 1;
  131.             _.mc.z[_.oz].attachMovie(_.ln.o,_.ln.o,100);
  132.             _.mc.z[_.oz][_.ln.o].mb._alpha = _.values[1];
  133.          }
  134.          _.mc.z[_.oz][_.ln.o]._x = p.x + _._x_;
  135.          _.mc.z[_.oz][_.ln.o]._y = p.y + _._y_;
  136.          if(_.mc.s._x - _.mc.c._width * 0.3 < p.x + _._x_)
  137.          {
  138.             if(p.x + _._x_ < _.mc.s._x + _.mc.c._width * 0.5 && (_.mc.o._currentframe < 5 || 20 < _.mc.o._currentframe))
  139.             {
  140.                gameDone(0);
  141.                _.ssf = 0;
  142.             }
  143.             else if(_.ssf && _.mc.s._x + _.mc.c._width * 0.5 < p.x + _._x_)
  144.             {
  145.                sndPlay("yeah" + parseInt(0 + Math.random() * 2));
  146.                _.ssf = 0;
  147.             }
  148.          }
  149.          if(_.vp[1] < _.mc.g.o._x)
  150.          {
  151.             _.mc.g.o.removeMovieClip();
  152.             _.mc.z[_.oz][_.ln.o].removeMovieClip();
  153.             _.oc = _.oc + 1;
  154.             _.oq[_.oc] += _.cc;
  155.          }
  156.       }
  157.       for(var k in "_:gc")
  158.       {
  159.          if(_.mc.z[0][_.ln.g[k]])
  160.          {
  161.             _.mc.g["g" + k]._x += _.kk * _.gp[k];
  162.             var p = {x:_.mc.g["g" + k]._x,y:_.mc.g["g" + k]._y};
  163.             _.mc.g["g" + k].localToGlobal(p);
  164.             _.mc.z[0][_.ln.g[k]]._x = p.x + _._x_;
  165.             _.mc.z[0][_.ln.g[k]]._y = p.y + _._y_;
  166.             var hit = !k ? 5 < _.mc.o._currentframe && _.mc.o._currentframe < 20 : _.mc.o._currentframe < 5 || 20 < _.mc.o._currentframe;
  167.             if(_.mc.s._x - _.mc.c._width * 0.5 < p.x + _._x_ && p.x + _._x_ < _.mc.s._x + _.mc.c._width * 0.5 && (hit && _.mc.z[0][_.ln.g[k]]._currentframe == 1))
  168.             {
  169.                _.mc.z[0][_.ln.g[k]].gotoAndPlay(2);
  170.                if(_level0.bol_vMode)
  171.                {
  172.                   sndPlay("fx2");
  173.                   sndPlay("fx1");
  174.                }
  175.                else
  176.                {
  177.                   sndPlay("fx" + Math.floor(Math.random() * 2));
  178.                }
  179.                _.score += _.gs[k];
  180.                _.gi[k]++;
  181.             }
  182.             if(_.vp[1] < _.mc.g["g" + k]._x)
  183.             {
  184.                _.mc.g["g" + k].removeMovieClip();
  185.                _.mc.z[0][_.ln.g[k]].removeMovieClip();
  186.                _.gc[k]++;
  187.                _.gq[k][_.gc[k]] += _.cc;
  188.             }
  189.          }
  190.       }
  191.       for(var k in "_:tc")
  192.       {
  193.          if(_.mc.z[k][_.ln.t])
  194.          {
  195.             _.mc.g["t" + k]._x += _.kk * _.tp[k];
  196.             var p = {x:_.mc.g["t" + k]._x,y:_.mc.g["t" + k]._y};
  197.             _.mc.g["t" + k].localToGlobal(p);
  198.             _.mc.z[k][_.ln.t]._x = p.x + _._x_;
  199.             _.mc.z[k][_.ln.t]._y = p.y + _._y_;
  200.             if(_.vp[1] < _.mc.g["t" + k]._x)
  201.             {
  202.                _.mc.g["t" + k].removeMovieClip();
  203.                _.mc.z[k][_.ln.t].removeMovieClip();
  204.                _.tc[k]++;
  205.                _.tq[k][_.tc[k]] += _.cc;
  206.             }
  207.          }
  208.       }
  209.       if(_.cc >= _.final)
  210.       {
  211.          for(var k in "_/ln:f")
  212.          {
  213.             _.mc.g["f" + k]._x += _.kk * _.fp[k];
  214.             var p = {x:_.mc.g["f" + k]._x,y:_.mc.g["f" + k]._y};
  215.             _.mc.g["f" + k].localToGlobal(p);
  216.             _.mc.z[k][_.ln.f[k]]._x = p.x + _._x_;
  217.             _.mc.z[k][_.ln.f[k]]._y = p.y + _._y_;
  218.             if(_.vp[1] < _.mc.g["f" + k]._x)
  219.             {
  220.                _.mc.g["f" + k].removeMovieClip();
  221.                _.mc.z[k][_.ln.f[k]].removeMovieClip();
  222.             }
  223.          }
  224.       }
  225.    };
  226.    var setDisplay = function()
  227.    {
  228.       var p = _.score >= 10 ? (_.score >= 100 ? (_.score >= 1000 ? (_.score >= 10000 ? 5 : 4) : 3) : 2) : 1;
  229.       _.mc.d.score.gotoAndStop(p);
  230.       var p = _.score.toString();
  231.       var i = 0;
  232.       while(i < p.length)
  233.       {
  234.          _.mc.d.score["a" + i].gotoAndStop(1 * p.substr(i,1) + 1);
  235.          _.mc.d.score["b" + i].gotoAndStop(1 * p.substr(i,1) + 1);
  236.          i++;
  237.       }
  238.       for(var i in "_/mc/d:bars")
  239.       {
  240.          _.values[i] = _.values[i] >= 0 ? (100 >= _.values[i] ? _.values[i] : 100) : 0;
  241.          _.mc.d.bars[i].bar._x = !i ? 100 - _.values[i] : _.values[i] - 104;
  242.       }
  243.    };
  244.    var sndPlay = function(arg)
  245.    {
  246.       if(_level1001 && _.snd[arg] != undefined)
  247.       {
  248.          _level1001[_.snd[arg]].start();
  249.       }
  250.    };
  251.    var sndLoop = function(arg, onoff)
  252.    {
  253.       if(_level1001 && _.snd[arg] != undefined)
  254.       {
  255.          if(onoff)
  256.          {
  257.             _level1001[_.snd[arg]].start(0,1000);
  258.          }
  259.          else
  260.          {
  261.             _level1001[_.snd[arg]].stop();
  262.          }
  263.       }
  264.    };
  265.    var showHide = function(arg)
  266.    {
  267.       var mcs = [ball,ground,display,mc_front,mc_back];
  268.       for(var i in "mcs")
  269.       {
  270.          mcs[i]._visible = Boolean(arg);
  271.       }
  272.    };
  273.    var gameStart = function(obj)
  274.    {
  275.       _ = setup();
  276.       _.sendback = obj.sendback;
  277.       _level0.fnc_setQuality(1);
  278.       showHide(1);
  279.       for(var k in "_/mc:z")
  280.       {
  281.          for(var i in ("_/mc/z:" add k))
  282.          {
  283.             _.mc.z[k][i].removeMovieClip();
  284.          }
  285.       }
  286.       for(var i in "_/mc:g")
  287.       {
  288.          _.mc.g[i].removeMovieClip();
  289.       }
  290.       sndLoop("loop2",1);
  291.       _.mc.b.play();
  292.       gotoAndPlay(3);
  293.    };
  294.    var gameDone = function(arg)
  295.    {
  296.       gotoAndStop(2);
  297.       _level0.fnc_setQuality(2);
  298.       sndLoop("loop1",0);
  299.       sndLoop("loop2",0);
  300.       _.mc.b.stop();
  301.       sndPlay(!arg ? "gameover" : "gamedone");
  302.       var prm = {score:_.score,items:_.gi,done:Boolean(arg),fps:fps};
  303.       _.sendback[0][_.sendback[1]](prm);
  304.       if(_level0 == this)
  305.       {
  306.          this.attachMovie("bt_restart","bt",100);
  307.          var bt = this.bt;
  308.          bt._x = 150;
  309.          bt._y = 200;
  310.          bt.fnc = function()
  311.          {
  312.             _parent.gameStart();
  313.             this.removeMovieClip();
  314.          };
  315.       }
  316.    };
  317.    if(_level0 == this)
  318.    {
  319.       fnc_setQuality = function(int_quality)
  320.       {
  321.          if(int_quality == 1)
  322.          {
  323.             _quality = "LOW";
  324.          }
  325.          else if(int_quality == 2)
  326.          {
  327.             _quality = "HIGH";
  328.          }
  329.       };
  330.       if(_level0 == this)
  331.       {
  332.          loadMovieNum("../sounds.swf",1001,"GET");
  333.       }
  334.       this.attachMovie("bt_start","bt",100);
  335.       var bt = this.bt;
  336.       bt._x = 150;
  337.       bt._y = 200;
  338.       bt.fnc = function()
  339.       {
  340.          _parent.gameStart();
  341.          this.removeMovieClip();
  342.       };
  343.    }
  344.    _level0.fnc_setQuality(2);
  345.    showHide(0);
  346.    stop();
  347. }
  348.