Online Book Reader

Home Category

HTML5 Canvas [182]

By Root 6484 0
= saucerMissiles.length-1;

for (var saucerMissileCtr = saucerMissileLength;saucerMissileCtr>=0;

saucerMissileCtr--){

//ConsoleLog.log("update player missile" + playerMissileCtr)

tempSaucerMissile = saucerMissiles[saucerMissileCtr];

tempSaucerMissile.x += tempSaucerMissile.dx*frameRateCounter.step;

tempSaucerMissile.y += tempSaucerMissile.dy*frameRateCounter.step;

if (tempSaucerMissile.x > xMax) {

tempSaucerMissile.x =- tempSaucerMissile.width;

}else if (tempSaucerMissile.x<-tempSaucerMissile.width){

tempSaucerMissile.x = xMax;

}

if (tempSaucerMissile.y > yMax) {

tempSaucerMissile.y =- tempSaucerMissile.height;

}else if (tempSaucerMissile.y<-tempSaucerMissile.height){

tempSaucerMissile.y = yMax;

}

tempSaucerMissile.lifeCtr++;

if (tempSaucerMissile.lifeCtr > tempSaucerMissile.life){

//remove

saucerMissiles.splice(saucerMissileCtr,1)

tempSaucerMissile = null;

}

}

}

function updateParticles() {

var particleLength=particles.length-1;

ConsoleLog.log("particle=" + particleLength)

ConsoleLog.log("particlePool=" + particlePool.length)

for (var particleCtr=particleLength;particleCtr>=0;particleCtr--){

var remove = false;

tempParticle = particles[particleCtr];

tempParticle.x += tempParticle.dx*frameRateCounter.step;

tempParticle.y += tempParticle.dy*frameRateCounter.step;

tempParticle.lifeCtr++;

if (tempParticle.lifeCtr > tempParticle.life){

remove = true;

} else if ((tempParticle.x > xMax) || (tempParticle.x|| (tempParticle.y > yMax) || (tempParticle.yremove=true;

}

if (remove) {

particlePool.push(tempParticle)

particles.splice(particleCtr,1)

}

}

}

function renderPlayerShip(x,y,rotation, scale) {

//transformation

context.save(); //save current state in stack

context.globalAlpha = parseFloat(player.alpha);

var angleInRadians = rotation * Math.PI / 180;

var sourceX = Math.floor((player.rotation/10) % 10) * 32;

var sourceY = Math.floor((player.rotation/10) /10) *32;

if (player.thrust){

context.drawImage(shipTiles2, sourceX, sourceY, 32,32,

player.x,player.y,32,32);

}else{

context.drawImage(shipTiles, sourceX, sourceY, 32,32,

player.x,player.y,32,32);

}

//restore context

context.restore(); //pop old state on to screen

context.globalAlpha = 1;

}

function renderPlayerMissiles() {

var tempPlayerMissile = {};

var playerMissileLength=playerMissiles.length-1;

//ConsoleLog.log("render playerMissileLength=" + playerMissileLength);

for (var playerMissileCtr=playerMissileLength;playerMissileCtr>=0;

playerMissileCtr--){

//ConsoleLog.log("draw player missile " + playerMissileCtr)

tempPlayerMissile = playerMissiles[playerMissileCtr];

context.save(); //save current state in stack

var sourceX=Math.floor(1 % 4) * tempPlayerMissile.width;

var sourceY=Math.floor(1 / 4) * tempPlayerMissile.height;

context.drawImage(particleTiles, sourceX, sourceY,

tempPlayerMissile.width,tempPlayerMissile.height,

tempPlayerMissile.x,tempPlayerMissile.y,

tempPlayerMissile.width,tempPlayerMissile.height);

context.restore(); //pop old state on to screen

}

}

function renderRocks() {

var tempRock = {};

var rocksLength = rocks.length-1;

for (var rockCtr = rocksLength;rockCtr>=0;rockCtr--){

context.save(); //save current state in stack

tempRock = rocks[rockCtr];

var sourceX = Math.floor((tempRock.rotation) % 5) * tempRock.width;

var sourceY = Math.floor((tempRock.rotation) /5) *tempRock.height;

switch(tempRock.scale){

case 1:

context.drawImage(largeRockTiles, sourceX, sourceY,

tempRock.width,tempRock.height,tempRock.x,tempRock.y,

tempRock.width,tempRock.height);

break;

case 2:

context.drawImage(mediumRockTiles, sourceX,

sourceY,tempRock.width,tempRock.height,tempRock.x,tempRock.y,

tempRock.width,tempRock.height);

break;

case 3:

context.drawImage(smallRockTiles, sourceX,

sourceY,tempRock.width,tempRock.height,tempRock.x,tempRock.y,

tempRock.width,tempRock.height);

break;

}

context.restore(); //pop old state on to screen

}

}

function renderSaucers() {

var tempSaucer = {};

var saucerLength = saucers.length-1;

Return Main Page Previous Page Next Page

®Online Book Reader