Online Book Reader

Home Category

HTML5 Canvas [164]

By Root 6520 0

tempRock.y+tempRock.halfHeight,10);

if (tempRock.scale<3) {

splitRock(tempRock.scale+1, tempRock.x, tempRock.y);

}

addToScore(tempRock.scoreValue);

playerMissiles.splice(playerMissileCtr,1);

tempPlayerMissile = null;

rocks.splice(rockCtr,1);

tempRock = null;

break rocks;

break missiles;

}

}

saucers:for (var saucerCtr=saucerLength;saucerCtr>=0;saucerCtr--){

tempSaucer = saucers[saucerCtr];

if (boundingBoxCollide(tempRock,tempSaucer)){

//ConsoleLog.log("hit rock");

createExplode(tempSaucer.x+tempSaucer.halfWidth,

tempSaucer.y+tempSaucer.halfHeight,10);

createExplode(tempRock.x+tempRock.halfWidth,

tempRock.y+tempRock.halfHeight,10);

if (tempRock.scale<3) {

splitRock(tempRock.scale+1, tempRock.x, tempRock.y);

}

saucers.splice(saucerCtr,1);

tempSaucer = null;

rocks.splice(rockCtr,1);

tempRock = null;

break rocks;

break saucers;

}

}

//saucer missiles against rocks

//this is done here so we don't have to loop

//through rocks again as it would probably

//be the biggest array

saucerMissiles:for (var saucerMissileCtr=saucerMissileLength;

saucerMissileCtr>=0;saucerMissileCtr--){

tempSaucerMissile = saucerMissiles[saucerMissileCtr];

if (boundingBoxCollide(tempRock,tempSaucerMissile)){

//ConsoleLog.log("hit rock");

createExplode(tempRock.x+tempRock.halfWidth,

tempRock.y+tempRock.halfHeight,10);

if (tempRock.scale<3) {

splitRock(tempRock.scale+1, tempRock.x, tempRock.y);

}

saucerMissiles.splice(saucerCtr,1);

tempSaucerMissile = null;

rocks.splice(rockCtr,1);

tempRock = null;

break rocks;

break saucerMissiles;

}

}

//check player aginst rocks

if (boundingBoxCollide(tempRock,player)){

//ConsoleLog.log("hit player");

createExplode(tempRock.x+tempRock.halfWidth,tempRock.halfHeight,10);

addToScore(tempRock.scoreValue);

if (tempRock.scale<3) {

splitRock(tempRock.scale+1, tempRock.x, tempRock.y);

}

rocks.splice(rockCtr,1);

tempRock = null;

playerDie();

}

}

//now check player against saucers and then saucers against player missiles

//and finally player against saucer missiles

playerMissileLength = playerMissiles.length-1;

saucerLength = saucers.length-1;

saucers:for (var saucerCtr=saucerLength;saucerCtr>=0;saucerCtr--){

tempSaucer = saucers[saucerCtr];

missiles:for (var playerMissileCtr=playerMissileLength;

playerMissileCtr>=0;playerMissileCtr--){

tempPlayerMissile = playerMissiles[playerMissileCtr];

if (boundingBoxCollide(tempSaucer,tempPlayerMissile)){

//ConsoleLog.log("hit rock");

createExplode(tempSaucer.x+tempSaucer.halfWidth,

tempSaucer.y+tempSaucer.halfHeight,10);

addToScore(tempSaucer.scoreValue);

playerMissiles.splice(playerMissileCtr,1);

tempPlayerMissile = null;

saucers.splice(saucerCtr,1);

tempSaucer = null;

break saucers;

break missiles;

}

}

//player against saucers

if (boundingBoxCollide(tempSaucer,player)){

ConsoleLog.log("hit player");

createExplode(tempSaucer.x+16,tempSaucer.y+16,10);

addToScore(tempSaucer.scoreValue);

saucers.splice(rockCtr,1);

tempSaucer = null;

playerDie();

}

}

//saucerMissiles against player

saucerMissileLength = saucerMissiles.length-1;

saucerMissiles:for (var saucerMissileCtr=saucerMissileLength;

saucerMissileCtr>=0;saucerMissileCtr--){

tempSaucerMissile = saucerMissiles[saucerMissileCtr];

if (boundingBoxCollide(player,tempSaucerMissile)){

ConsoleLog.log("saucer missile hit player");

playerDie();

saucerMissiles.splice(saucerCtr,1);

tempSaucerMissile = null;

break saucerMissiles;

}

}

}

function firePlayerMissile(){

//ConsoleLog.log("fire playerMissile");

var newPlayerMissile = {};

newPlayerMissile.dx = 5*Math.cos(Math.PI*(player.rotation)/180);

newPlayerMissile.dy = 5*Math.sin(Math.PI*(player.rotation)/180);

newPlayerMissile.x = player.x+player.halfWidth;

newPlayerMissile.y = player.y+player.halfHeight;

newPlayerMissile.life = 60;

newPlayerMissile.lifeCtr = 0;

newPlayerMissile.width = 2;

newPlayerMissile.height = 2;

playerMissiles.push(newPlayerMissile);

}

function fireSaucerMissile(saucer) {

var

Return Main Page Previous Page Next Page

®Online Book Reader