jacobinathanialpeterson's picture
Upload 1035 files
1e40c2a
raw
history blame
2.94 kB
var instructions = [
[-1, "Touch anywhere on the screen and drag to move.", CANVAS_WIDTH / 2],
[2, "Collect all the coins.", CANVAS_WIDTH / 2],
[3, "Sometimes there's extra checkpoints to help out.", CANVAS_WIDTH / 2],
[4, "Sometimes going", "diagonally helps.", CANVAS_WIDTH / 4],
[6, "You can change the player color on the menu.", CANVAS_WIDTH / 2]
];
function initInstructions() {
instrForLevel = null;
for (var i = 0; i < instructions.length; i++) {
if (instructions[i][0] == level) {
instrForLevel = i;
break;
}
}
if (instrForLevel != null) {
instructionsOn = true;
instructionsWaiting = true;
instructionsFadingIn = false;
instructionsFadingOut = false;
instructionsTimer = 0;
instructionsAlpha = 0;
}
}
function updateInstructions() {
if (instructionsOn && instrForLevel != null) {
if (instructionsWaiting) {
if (instructionsTimer < INSTRUCTIONS_WAIT_TIME_TOT) {
instructionsTimer++;
} else {
instructionsTimer = 0;
instructionsAlpha = 0;
instructionsFadingIn = true;
instructionsFadingOut = false;
instructionsWaiting = false;
}
}
else if (instructionsFadingIn) {
if (instructionsAlpha < 1) {
instructionsAlpha += INSTRUCTIONS_FADE_IN_SPEED;
} else {
instructionsAlpha = 1;
instructionsTimer = 0;
instructionsFadingIn = false;
instructionsFadingOut = false;
instructionsWaiting = false;
}
} else if (!instructionsFadingIn &&
!instructionsFadingOut &&
!instructionsWaiting) {
if (instructionsTimer < INSTRUCTIONS_TIMER_TOT) {
instructionsTimer++;
} else {
instructionsFadingIn = false;
instructionsFadingOut = true;
instructionsWaiting = false;
instructionsTimer = 0;
instructionsAlpha = 1;
}
} else if (instructionsFadingOut) {
if (instructionsAlpha > 0) {
instructionsAlpha -= INSTRUCTIONS_FADE_OUT_SPEED;
if(instructionsAlpha<0){
instructionsAlpha = 0;
}
} else {
finishInstructions();
}
}
}
}
function drawInstructions() {
if (instrForLevel != null) {
canvas.fillStyle = INSTRUCTIONS_COLOR + instructionsAlpha + ")";
canvas.font = "Bold " + cwh(INSTRUCTIONS_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
if (instructions[instrForLevel].length == 3) {
canvas.fillText(instructions[instrForLevel][1], cwh(instructions[instrForLevel][2]) + os.x, cwh(INSTRUCTIONS_Y_0) + os.y);
} else if (instructions[instrForLevel].length == 4) {
canvas.fillText(instructions[instrForLevel][1], cwh(instructions[instrForLevel][3]) + os.x, cwh(INSTRUCTIONS_Y_0) + os.y);
canvas.fillText(instructions[instrForLevel][2], cwh(instructions[instrForLevel][3]) + os.x, cwh(INSTRUCTIONS_Y_1) + os.y);
}
}
}
function finishInstructions() {
instructionsOn = false;
instructionsFadingIn = false;
instructionsFadingOut = false;
instructionsWaiting = false;
instructionsTimer = 0;
instructionsAlpha = 0;
instrForLevel = null;
}