hextris/js/comboTimer.js

38 lines
1.4 KiB
JavaScript
Raw Normal View History

2014-06-24 14:53:26 +00:00
function drawTimer(){
if(MainClock.ct - MainClock.lastCombo < settings.comboMultiplier){
2014-06-24 15:44:40 +00:00
for(var i=0;i<6;i++){
var done = (MainClock.ct -MainClock.lastCombo);
if(done>=(settings.comboMultiplier)*(i+1)*(1/6)){
drawSide(i,i+1,1);
}
else{
drawSide(i,i+1,((done*6)/settings.comboMultiplier)%(1));
break;
}
2014-06-24 14:53:26 +00:00
}
}
}
function drawSide(startVertex,endVertex,fraction){
startVertex = startVertex%6;
endVertex = endVertex%6;
ctx.globalAlpha=1;
ctx.beginPath();
ctx.lineCap = "round"
ctx.strokeStyle=MainClock.lastColorScored;
ctx.lineWidth =4;
2014-06-24 15:44:40 +00:00
var radius = (settings.rows * settings.blockHeight) * (2/Math.sqrt(3)) + settings.hexWidth + 2;
2014-06-24 14:53:26 +00:00
var halfRadius = radius/2;
var triHeight = radius *(Math.sqrt(3)/2);
2014-06-24 15:44:40 +00:00
var Vertexes =[[halfRadius,triHeight],[radius,0],[halfRadius,-triHeight],[-halfRadius,-triHeight],[-radius,0],[-halfRadius,triHeight]].reverse();
var startX =trueCanvas.width/2 + Vertexes[startVertex][0];
var startY =trueCanvas.height/2 + Vertexes[startVertex][1];
var endX = trueCanvas.width/2 + Vertexes[endVertex][0];
var endY = trueCanvas.height/2 + Vertexes[endVertex][1];
2014-06-24 14:53:26 +00:00
ctx.moveTo(startX,startY);
ctx.lineTo(((endX-startX)*fraction)+startX,((endY-startY)*fraction)+startY);
ctx.closePath()
ctx.fill()
ctx.stroke();
}