Team:AUC TURKEY/Test

From 2013hs.igem.org

(Difference between revisions)
Line 18: Line 18:
<div style="display: none;">
<div style="display: none;">
//platform
//platform
 +
var platform:MovieClip = _root.createEmptyMovieClip("platform", _root.getNextHighestDepth());
var platform:MovieClip = _root.createEmptyMovieClip("platform", _root.getNextHighestDepth());
 +
var pID:Number = 20;
var pID:Number = 20;
 +
var pLeft:Number = 0;
var pLeft:Number = 0;
 +
var pRight:Number = pID * 40;
var pRight:Number = pID * 40;
 +
var pFall:Number = 57;
var pFall:Number = 57;
 +
var pInc:Number = 3;
var pInc:Number = 3;
 +
//speed
//speed
 +
var speedTimer:Number = 0;
var speedTimer:Number = 0;
 +
var speedWait:Number = 48;
var speedWait:Number = 48;
 +
var speedInc:Number = .2;
var speedInc:Number = .2;
 +
var speed:Number = 7;
var speed:Number = 7;
 +
var minSpeed:Number = 5;
var minSpeed:Number = 5;
 +
//jump
//jump
 +
var fallSpeed:Number = 0;
var fallSpeed:Number = 0;
 +
var jumpSpeed:Number = 10;
var jumpSpeed:Number = 10;
 +
var floor:Number = 250;
var floor:Number = 250;
 +
var jump:Number = 0;
var jump:Number = 0;
 +
var doubleJump:Boolean = false;
var doubleJump:Boolean = false;
 +
var gravity:Number = .5;
var gravity:Number = .5;
 +
var plat_arr:Array = [pLeft, 250, pRight];
var plat_arr:Array = [pLeft, 250, pRight];
 +
var signal:Boolean = true;
var signal:Boolean = true;
 +
//animation
//animation
 +
var animFrame:Number = 0;
var animFrame:Number = 0;
 +
igeman_mc.stop();
igeman_mc.stop();
 +
igeman_mc.run.stop();
igeman_mc.run.stop();
 +
//fps
//fps
 +
var fps:Number = 48;
var fps:Number = 48;
 +
var frames:Number = 0;
var frames:Number = 0;
 +
var startTime:Number = 0;
var startTime:Number = 0;
 +
//fire
//fire
 +
var nextFire:Number = random(5) + 20;
var nextFire:Number = random(5) + 20;
 +
//ice
//ice
 +
var ices:MovieClip = _root.createEmptyMovieClip("ices", _root.getNextHighestDepth());
var ices:MovieClip = _root.createEmptyMovieClip("ices", _root.getNextHighestDepth());
 +
var iceUse:Number = 1;
var iceUse:Number = 1;
 +
var iceGiven:Number = 1;
var iceGiven:Number = 1;
 +
var iceReady:Boolean = true;
var iceReady:Boolean = true;
 +
var iceCooldown:Number = 0;
var iceCooldown:Number = 0;
 +
var iceFloor:Number = 0;
var iceFloor:Number = 0;
 +
var iceRight:Number = 0;
var iceRight:Number = 0;
 +
var iceWait:Number = 120;
var iceWait:Number = 120;
 +
//music
//music
 +
var doMute:Boolean = true;
var doMute:Boolean = true;
 +
var firstMute:Number = mute_mc.getDepth();
var firstMute:Number = mute_mc.getDepth();
 +
mute_mc.swapDepths(_root.getNextHighestDepth());
mute_mc.swapDepths(_root.getNextHighestDepth());
-
if (snd)
 
-
{
 
-
mute_mc.gotoAndStop(1);
 
-
}
 
-
else
 
-
{
 
-
mute_mc.gotoAndStop(2);
 
-
}
 
-
var loop_snd:Sound = new Sound(this);
 
-
var pauseTime:Number = 2000;
 
-
var pause:Number;
 
-
loop_snd.onSoundComplete = processPause;
 
-
loop_snd.attachSound("music");
 
-
function loopSound()
 
-
{
 
-
clearInterval(pause);
 
-
loop_snd.start(0,1);
 
-
}
 
-
function processPause()
 
-
{
 
-
pause = setInterval(loopSound, pauseTime);
 
-
}
 
-
if (snd)
 
-
{
 
-
loopSound();
 
-
}
 
-
mute_btn.onPress = function()
 
-
{
 
-
if (snd)
 
-
{
 
-
pos = loop_snd.position / 1000;
 
-
loop_snd.stop();
 
-
mute_mc.gotoAndStop(2);
 
-
}
 
-
else
 
-
{
 
-
loop_snd.start(pos);
 
-
mute_mc.gotoAndStop(1);
 
-
}
 
-
snd = !snd;
 
-
};
 
-
//pause
 
-
var doPause:Boolean = true;
 
-
var firstPause:Number = pause_mc.getDepth();
 
-
pause_mc.swapDepths(_root.getNextHighestDepth());
 
-
var paused:Boolean = false;
 
-
pause_btn.onPress = function()
 
-
{
 
-
if (paused)
 
-
{
 
-
pause_mc.gotoAndStop(1);
 
-
}
 
-
else
 
-
{
 
-
pause_mc.gotoAndStop(2);
 
-
}
 
-
paused = !paused;
 
-
};
 
-
//game over
 
-
var over:Boolean = false;
 
-
var score:Number = 0;
 
-
var minTemp:Number = Infinity;
 
-
//the Code
 
-
for (var i:Number = 0; i < pID; i++)
 
-
{
 
-
var newPlat:MovieClip = platform.attachMovie("platform", "platform_" + i + "_mc", platform.getNextHighestDepth());
 
-
newPlat._x = i * 40;
 
-
newPlat._y = 250;
 
-
if (--nextFire == 0)
 
-
{
 
-
var newFire:MovieClip = platform.attachMovie("fire", "fire_" + pID + "_mc", platform.getNextHighestDepth());
 
-
nextFire = random(12) + 3;
 
-
newFire._x = newPlat._x + 20;
 
-
newFire._y = newPlat._y + 10;
 
-
newFire.onEnterFrame = function()
 
-
{
 
-
if (paused)
 
-
{
 
-
return;
 
-
}
 
-
if (igeman_mc.hitTest(this._x + platform._x, this._y - 50, true))
 
-
{
 
-
speed -= .4;
 
-
}
 
-
if (platform._x < -this._x - 80)
 
-
{
 
-
this.removeMovieClip();
 
-
}
 
-
};
 
-
}
 
-
newPlat.onEnterFrame = function()
 
-
{
 
-
if (paused)
 
-
{
 
-
return;
 
-
}
 
-
this.gotoAndStop(Math.max(1, (200 - (int(speed * 8)))));
 
-
if (platform._x < -this._x - 80)
 
-
{
 
-
this.removeMovieClip();
 
-
}
 
-
};
 
-
}
 
-
onEnterFrame = function ()
 
-
{
 
-
//mute
 
-
if (Key.isDown(77))
 
-
{
 
-
if (doMute)
 
-
{
 
-
mute_btn.onPress();
 
-
doMute = false;
 
-
}
 
-
}
 
-
else
 
-
{
 
-
doMute = true;
 
-
}
 
-
//pause
 
-
if (Key.isDown(80))
 
-
{
 
-
if (doPause)
 
-
{
 
-
pause_btn.onPress();
 
-
doPause = false;
 
-
}
 
-
}
 
-
else
 
-
{
 
-
doPause = true;
 
-
}
 
-
if (paused)
 
-
{
 
-
return;
 
-
}
 
-
var currentTime:Number = (getTimer() - startTime) / 1000;
 
-
frames++;
 
-
if (currentTime > 1)
 
-
{
 
-
fps = Math.floor((frames / currentTime) * 10.0) / 10.0;
 
-
startTime = getTimer();
 
-
frames = 0;
 
-
}
 
-
if (signal && igeman_mc._x - platform._x + 20 > plat_arr[0])
 
-
{
 
-
floor = plat_arr[1];
 
-
plat_arr = plat_arr.slice(2);
 
-
signal = !signal;
 
-
realFloor = floor;
 
-
}
 
-
if (!signal && igeman_mc._x - platform._x - 20 > plat_arr[0])
 
-
{
 
-
floor = 800;
 
-
plat_arr = plat_arr.slice(1);
 
-
signal = !signal;
 
-
realFloor = floor;
 
-
}
 
-
if (igeman_mc._x - platform._x - 10 < iceRight)
 
-
{
 
-
floor = Math.min(realFloor, iceFloor);
 
-
if (floor == iceFloor && !jump)
 
-
{
 
-
speedInc = 1.2;
 
-
}
 
-
else
 
-
{
 
-
speedInc = .2;
 
-
}
 
-
}
 
-
else
 
-
{
 
-
speedInc = .2;
 
-
floor = realFloor;
 
-
}
 
-
if (!over)
 
-
{
 
-
if (platform._x <= -pLeft + 550)
 
-
{
 
-
addPlatform();
 
-
pFall += pInc;
 
-
}
 
-
if (++speedTimer >= speedWait)
 
-
{
 
-
speedTimer = 0;
 
-
speed += speedInc;
 
-
}
 
-
if (speed < minSpeed)
 
-
{
 
-
speed = minSpeed;
 
-
}
 
-
platform._x -= speed * 12 / 25;
 
-
ices._x -= speed * 12 / 25;
 
-
animFrame = (animFrame + speed * 25 / 120) % igeman_mc.run._totalframes;
 
-
igeman_mc.run.gotoAndStop(int(animFrame));
 
-
if (!jump && floor > igeman_mc._y + 95 / 2)
 
-
{
 
-
fallSpeed = 0;
 
-
jump = 1;
 
-
}
 
-
if (Key.isDown(Key.UP))
 
-
{
 
-
if (jump == 0)
 
-
{
 
-
fallSpeed = -jumpSpeed;
 
-
jump++;
 
-
}
 
-
if (doubleJump == true)
 
-
{
 
-
fallSpeed = -jumpSpeed;
 
-
jump++;
 
-
doubleJump = false;
 
-
}
 
-
}
 
-
else if (jump == 1)
 
-
{
 
-
doubleJump = true;
 
-
}
 
-
if (floor + 1 < igeman_mc._y + 95 / 2)
 
-
{
 
-
over = true;
 
-
ices.removeMovieClip();
 
-
}
 
-
}
 
-
if (jump || over)
 
-
{
 
-
igeman_mc._y += fallSpeed += gravity;
 
-
if (igeman_mc._y > floor - 95 / 2 && !over)
 
-
{
 
-
jump = 0;
 
-
doubleJump = false;
 
-
igeman_mc._y = floor - 95 / 2;
 
-
}
 
-
}
 
-
if (jump)
 
-
{
 
-
igeman_mc.gotoAndStop(2);
 
-
animFrame = 25;
 
-
}
 
-
else
 
-
{
 
-
igeman_mc.gotoAndStop(1);
 
-
}
 
-
var dist:Number = Math.floor((-platform._x) / 50);
 
-
//ice
 
-
if (dist >= iceGiven * iceWait)
 
-
{
 
-
iceGiven++;
 
-
iceUse++;
 
-
}
 
-
if (iceCooldown > 0)
 
-
{
 
-
iceCooldown--;
 
-
}
 
-
if (Key.isDown(Key.SPACE))
 
-
{
 
-
if (iceReady && iceUse && !iceCooldown)
 
-
{
 
-
iceCooldown = 24;
 
-
iceReady = false;
 
-
iceUse--;
 
-
iceRight = -platform._x + igeman_mc._x + 300;
 
-
var newIce:MovieClip = ices.attachMovie("ice", "ice", ices.getNextHighestDepth());
 
-
newIce._x = -platform._x + igeman_mc._x;
 
-
newIce._y = igeman_mc._y + 95 / 2;
 
-
iceFloor = newIce._y;
 
-
newIce.onEnterFrame = function()
 
-
{
 
-
if (paused)
 
-
{
 
-
return;
 
-
}
 
-
if (this._x < -300 - ices._x)
 
-
{
 
-
this.removeMovieClip();
 
-
}
 
-
};
 
-
}
 
-
}
 
-
else
 
-
{
 
-
iceReady = true;
 
-
}
 
-
//ui
 
-
//fps_txt.text = (Math.round(fps * 10) / 10);
 
-
speed_txt.text = (Math.round(speed * 10) / 10);
 
-
dist_txt.text = dist;
 
-
special_txt.text = iceUse;
 
-
special_mc._xscale = 100 - (iceGiven * iceWait - dist) / iceWait * 100;
 
-
//temp_txt.text = (200 - (int(speed * 8)));
 
-
var temp:Number = (200 - (int(speed * 8)));
 
-
minTemp = Math.min(minTemp, temp);
 
-
thermometer_mc.gotoAndStop(Math.max(1, temp));
 
-
bg_mc.gotoAndStop(Math.max(1, temp));
 
-
if (igeman_mc._y > 400)
 
-
{
 
-
over = true;
 
-
loop_snd.stop();
 
-
platform.removeMovieClip();
 
-
ices.removeMovieClip();
 
-
score = dist * 25 + Math.pow(Math.min(Math.max(0, 144 - minTemp), 144), 2);
 
-
mute_mc.swapDepths(firstMute);
 
-
pause_mc.swapDepths(firstPause);
 
-
nextFrame();
 
-
delete onEnterFrame;
 
-
}
 
-
};
 
-
function addPlatform()
 
-
{
 
-
var h:Number = random(150) + 200;
 
-
var len:Number = random(10) + 1;
 
-
var moving:Boolean = false;
 
-
pLeft = pRight + pFall;
 
-
pRight = pLeft + len * 40;
 
-
plat_arr.push(pLeft);
 
-
plat_arr.push(h);
 
-
plat_arr.push(pRight);
 
-
if (len > 4 && !(random(5)))
 
-
{
 
-
moving = true;
 
-
}
 
-
for (var i:Number = 0; i < len; i++)
 
-
{
 
-
var newPlat:MovieClip = platform.attachMovie("platform", "platform_" + pID + "_mc", platform.getNextHighestDepth());
 
-
newPlat._x = i * 40 + pLeft;
 
-
newPlat._y = h;
 
-
if (!moving && --nextFire == 0)
 
-
{
 
-
var newFire:MovieClip = platform.attachMovie("fire", "fire_" + pID + "_mc", platform.getNextHighestDepth());
 
-
nextFire = random(12) + 3;
 
-
newFire._x = newPlat._x + 20;
 
-
newFire._y = newPlat._y + 10;
 
-
newFire.onEnterFrame = function()
 
-
{
 
-
if (paused)
 
-
{
 
-
return;
 
-
}
 
-
if (this.hitTest(ices))
 
-
{
 
-
this.removeMovieClip();
 
-
}
 
-
if (igeman_mc.hitTest(this._x + platform._x, this._y - 50, true))
 
-
{
 
-
speed -= .4;
 
-
}
 
-
if (platform._x < -this._x - 80)
 
-
{
 
-
this.removeMovieClip();
 
-
}
 
-
};
 
-
pID++;
 
-
}
 
-
newPlat.onEnterFrame = function()
 
-
{
 
-
if (paused)
 
-
{
 
-
return;
 
-
}
 
-
this.gotoAndStop(Math.max(1, (200 - (int(speed * 8)))));
 
-
if (platform._x < -this._x - 80)
 
-
{
 
-
this.removeMovieClip();
 
-
}
 
-
};
 
-
}
 
-
if (moving)
 
-
{
 
-
var newFire:MovieClip = platform.attachMovie("fire", "fire_" + pID + "_mc", platform.getNextHighestDepth());
 
-
newFire._x = pLeft + random(len) * 40 + 20;
 
-
newFire._y = h + 10;
 
-
newFire.left = pLeft + 20;
 
-
newFire.right = pRight - 20;
 
-
newFire.speed = 2;
 
-
newFire.onEnterFrame = function()
 
-
{
 
-
if (paused)
 
-
{
 
-
return;
 
-
}
 
-
if (this.hitTest(ices))
 
-
{
 
-
this.removeMovieClip();
 
-
}
 
-
if (this._x < this.left || this._x > this.right)
 
-
{
 
-
this.speed *= -1;
 
-
}
 
-
this._x += this.speed;
 
-
if (igeman_mc.hitTest(this._x + platform._x, this._y - 50, true))
 
-
{
 
-
speed -= .4;
 
-
}
 
-
if (platform._x < -this._x - pRight + pLeft - 80)
 
-
{
 
-
this.removeMovieClip();
 
-
}
 
-
};
 
-
}
 
-
}
 
</div>
</div>
</div>
</div>

Revision as of 06:01, 12 June 2013



Here's the source code of the game if you're interested:
//platform var platform:MovieClip = _root.createEmptyMovieClip("platform", _root.getNextHighestDepth()); var pID:Number = 20; var pLeft:Number = 0; var pRight:Number = pID * 40; var pFall:Number = 57; var pInc:Number = 3; //speed var speedTimer:Number = 0; var speedWait:Number = 48; var speedInc:Number = .2; var speed:Number = 7; var minSpeed:Number = 5; //jump var fallSpeed:Number = 0; var jumpSpeed:Number = 10; var floor:Number = 250; var jump:Number = 0; var doubleJump:Boolean = false; var gravity:Number = .5; var plat_arr:Array = [pLeft, 250, pRight]; var signal:Boolean = true; //animation var animFrame:Number = 0; igeman_mc.stop(); igeman_mc.run.stop(); //fps var fps:Number = 48; var frames:Number = 0; var startTime:Number = 0; //fire var nextFire:Number = random(5) + 20; //ice var ices:MovieClip = _root.createEmptyMovieClip("ices", _root.getNextHighestDepth()); var iceUse:Number = 1; var iceGiven:Number = 1; var iceReady:Boolean = true; var iceCooldown:Number = 0; var iceFloor:Number = 0; var iceRight:Number = 0; var iceWait:Number = 120; //music var doMute:Boolean = true; var firstMute:Number = mute_mc.getDepth(); mute_mc.swapDepths(_root.getNextHighestDepth());

<forum_subtle/>