home *** CD-ROM | disk | FTP | other *** search
- function initSFX()
- {
- sfxCollect = new Sound();
- sfxCollect.attachSound("sfxCollect.WAV");
- sfxBuzz = new Sound();
- sfxBuzz.attachSound("sfxBuzz.WAV");
- menuMusic = new Sound();
- menuMusic.attachSound("menuMusic");
- }
- function startSounds()
- {
- if(_currentframe < 15)
- {
- menuMusic.start(0,999999);
- }
- ol.sfxWind.setVolume(0);
- ol.sfxWind.start(0,10000);
- skidoo.sfxMotor.setVolume(0);
- skidoo.sfxMotor.start(0,10000);
- skidoo.sfxIdle.setVolume(0);
- skidoo.sfxIdle.start(0,10000);
- }
- function newGame()
- {
- if(courseNum == 1)
- {
- scoreTime = 0;
- }
- ol.startWind();
- gameOn = true;
- gameOver = false;
- timerOn = false;
- boostCount = 0;
- bulletsNum = 10;
- lap = 1;
- ol.lap = 1;
- screen = 1;
- screenVisits = new Array();
- i = 0;
- while(screenCount >= i)
- {
- screenVisits.push(0);
- i++;
- }
- }
- function rampCheck(x, y)
- {
- rampNum = courseRamps[screen];
- if(rampNum == 0)
- {
- return 0;
- }
- ramp = eval("bg.ramp" + rampNum);
- onRamp = ramp.hitTest(x,y,true);
- if(onRamp)
- {
- if(rampNum == 1 || rampNum == 3)
- {
- rampTop = bg._y + ramp._y;
- rampGirth = ramp._height;
- }
- else
- {
- rampTop = bg._x + ramp._x;
- rampGirth = ramp._width;
- }
- if(rampNum == 1 || rampNum == 4)
- {
- rampBottom = rampTop + rampGirth;
- rampBumpLine = rampTop + rampGirth * 0.6;
- rampJumpLine = rampTop + rampGirth * 0.1;
- }
- else
- {
- rampBottom = rampTop - rampGirth;
- rampBumpLine = rampTop - rampGirth * 0.6;
- rampJumpLine = rampTop - rampGirth * 0.1;
- }
- if(!skidoo.onRamp)
- {
- if(rampNum == 1 && y < rampBumpLine || rampNum == 3 && rampBumpLine < y || rampNum == 2 && rampBumpLine < x || rampNum == 4 && x < rampBumpLine)
- {
- return 2;
- }
- skidoo.onRamp = true;
- }
- else
- {
- if(rampNum == 1 || rampNum == 3)
- {
- scale = Math.abs(rampBottom - y);
- }
- else
- {
- scale = Math.abs(rampBottom - x);
- }
- scale *= 30 / rampGirth;
- scale += 100;
- skidoo._xscale = scale;
- skidoo._yscale = scale;
- if(rampNum == 1 && y < rampJumpLine || rampNum == 3 && rampJumpLine < y || rampNum == 2 && rampJumpLine < x || rampNum == 4 && x < rampJumpLine)
- {
- skidoo.startJump();
- }
- }
- }
- else if(skidoo.onRamp)
- {
- skidoo._xscale = 100;
- skidoo._yscale = 100;
- skidoo.onRamp = false;
- }
- return 0;
- }
- function edgeCollisions(x, y)
- {
- exit = courseExit[screen];
- entrance = courseEntrance[screen];
- prevScreen = screen;
- if(x < 0 || 600 < x || y < 20 || 480 < y)
- {
- if(x < 0 && (exit == 4 || entrance == 4))
- {
- skidoo._x += 600;
- screen++;
- if(entrance == 4)
- {
- screen -= 2;
- }
- }
- else if(600 < x && (exit == 2 || entrance == 2))
- {
- skidoo._x -= 600;
- screen++;
- if(entrance == 2)
- {
- screen -= 2;
- }
- }
- else if(y < 20 && (exit == 1 || entrance == 1))
- {
- skidoo._y += 460;
- screen++;
- if(entrance == 1)
- {
- screen -= 2;
- }
- }
- else
- {
- if(!(480 < y && (exit == 3 || entrance == 3)))
- {
- return 2;
- }
- skidoo._y -= 460;
- screen++;
- if(entrance == 3)
- {
- screen -= 2;
- }
- }
- if(screenCount < screen)
- {
- screen = 1;
- }
- if(screen < 1)
- {
- screen = screenCount;
- }
- if(screen != prevScreen)
- {
- if(bg.ballMove)
- {
- ball = eval("bg.ball" + prevScreen);
- bg.ballMove = false;
- bg.ballXpos[prevScreen] = ball._x;
- bg.ballYpos[prevScreen] = ball._y;
- }
- bg.gotoAndStop(screen);
- screenVisits[screen] = lap;
- return 1;
- }
- }
- return 0;
- }
- function courseCollisions(x, y)
- {
- if(0 < boostCount)
- {
- boostCount -= 0.5;
- ol.boost.gotoAndStop(boostCount);
- }
- trackCheck = bg.track.hitTest(x,y,true);
- if(trackCheck)
- {
- skidoo.topspeed = 7 + boostCount / 15;
- }
- else
- {
- skidoo.speed *= 0.8;
- skidoo.topspeed = 7;
- }
- boardsCheck = bg.boards.hitTest(x,y,true);
- if(boardsCheck)
- {
- trace("hit board");
- return 2;
- }
- ball = eval("bg.ball" + screen);
- ballCheck = ball.hitTest(x,y,true);
- if(ballCheck)
- {
- bg.moveBall(x,y,Math.abs(skidoo.speed));
- return 2;
- }
- iceCheck = bg.ice.hitTest(x,y,true);
- if(iceCheck && skidoo.iceSkid == 0)
- {
- skidoo.iceSkid = 20;
- }
- rollerCheck = bg.roller.hitTest(x,y,false);
- if(rollerCheck && skidoo.spin == 0)
- {
- skidoo.spin = 50;
- if(random(2) == 0)
- {
- skidoo.spin = -50;
- }
- }
- ammoCheck = bg.ammo.hitTest(skidoo);
- if(ammoCheck)
- {
- bulletsNum += 5;
- ol.bullets.gotoAndStop(11 - bulletsNum);
- bg.ammo._x = -1000;
- if(!mute)
- {
- sfxCollect.start();
- }
- }
- boostCheck = bg.boost.hitTest(skidoo);
- if(boostCheck)
- {
- boostCount = 100;
- bg.boost._x = -1000;
- if(!mute)
- {
- sfxCollect.start();
- }
- }
- if(screen == 1 && !gameOver)
- {
- startCheck = bg.startline.hitTest(skidoo);
- if(startCheck)
- {
- if(!timerOn && lap == 1)
- {
- if(!mute)
- {
- sfxBuzz.start();
- }
- ol.startTime = 0;
- timerOn = true;
- }
- else
- {
- lapValid = true;
- i = 1;
- while(screenCount >= i)
- {
- if(screenVisits[i] != lap)
- {
- lapValid = false;
- break;
- }
- i++;
- }
- if(lapValid)
- {
- if(lap == 4)
- {
- if(!mute)
- {
- sfxBuzz.start();
- }
- skidoo.gameOverCount = 15;
- gameOver = true;
- timerOn = false;
- }
- else
- {
- if(!mute)
- {
- sfxBuzz.start();
- }
- lap++;
- ol.lap = lap;
- }
- }
- }
- }
- }
- }
- _quality = "BEST";
- fxOn = true;
- mute = false;
- mute = false;
- fxOn = true;
-