jacobinathanialpeterson's picture
Upload 1035 files
1e40c2a
raw
history blame
10.8 kB
var rainbowGradient = canvas.createLinearGradient(302, 0, 498, 0);
rainbowGradient.addColorStop(0, "rgb(" + PLAYER_FILL_COLORS[0][0] + "," + PLAYER_FILL_COLORS[0][1] + "," + PLAYER_FILL_COLORS[0][2] + ")");
rainbowGradient.addColorStop(0 + (1 / 8), "rgb(" + PLAYER_FILL_COLORS[1][0] + "," + PLAYER_FILL_COLORS[1][1] + "," + PLAYER_FILL_COLORS[1][2] + ")");
rainbowGradient.addColorStop(0 + (2 / 8), "rgb(" + PLAYER_FILL_COLORS[2][0] + "," + PLAYER_FILL_COLORS[2][1] + "," + PLAYER_FILL_COLORS[2][2] + ")");
rainbowGradient.addColorStop(0 + (3 / 8), "rgb(" + PLAYER_FILL_COLORS[3][0] + "," + PLAYER_FILL_COLORS[3][1] + "," + PLAYER_FILL_COLORS[3][2] + ")");
rainbowGradient.addColorStop(0 + (4 / 8), "rgb(" + PLAYER_FILL_COLORS[4][0] + "," + PLAYER_FILL_COLORS[4][1] + "," + PLAYER_FILL_COLORS[4][2] + ")");
rainbowGradient.addColorStop(0 + (5 / 8), "rgb(" + PLAYER_FILL_COLORS[5][0] + "," + PLAYER_FILL_COLORS[5][1] + "," + PLAYER_FILL_COLORS[5][2] + ")");
rainbowGradient.addColorStop(0 + (6 / 8), "rgb(" + PLAYER_FILL_COLORS[6][0] + "," + PLAYER_FILL_COLORS[6][1] + "," + PLAYER_FILL_COLORS[6][2] + ")");
rainbowGradient.addColorStop(0 + (7 / 8), "rgb(" + PLAYER_FILL_COLORS[7][0] + "," + PLAYER_FILL_COLORS[7][1] + "," + PLAYER_FILL_COLORS[7][2] + ")");
rainbowGradient.addColorStop(1, "rgb(" + PLAYER_FILL_COLORS[0][0] + "," + PLAYER_FILL_COLORS[0][1] + "," + PLAYER_FILL_COLORS[0][2] + ")");
function drawIGMenu() {
if (!mobile) {
if (paused && (state == "game" || state == "intermission")) {
// bg
canvas.beginPath();
canvas.rect(0, BAR_HEIGHT, CANVAS_WIDTH, CANVAS_HEIGHT - BAR_HEIGHT * 2);
canvas.fillStyle = "rgba(0, 0, 0, " + INGAME_MENU_BG_ALPHA + ")";
canvas.fill();
// timer
canvas.fillStyle = TIMER_COLOR;
canvas.font = IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "right";
canvas.fillText(msToTime(gameTimer), CANVAS_WIDTH - 10, BAR_HEIGHT + 30);
// resume game
if (onButton("ig_resumeGame"))
canvas.fillStyle = BARS_BUTTON_HOVER_COLOR;
else
canvas.fillStyle = "white";
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
canvas.fillText("RESUME GAME", CANVAS_WIDTH / 2, IG_BUTTONS_TOP);
// main menu
if (onButton("ig_mainMenu"))
canvas.fillStyle = BARS_BUTTON_HOVER_COLOR;
else
canvas.fillStyle = "white";
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
canvas.fillText("MAIN MENU", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE);
// level select
if (onButton("ig_levelSelect"))
canvas.fillStyle = BARS_BUTTON_HOVER_COLOR;
else
canvas.fillStyle = "white";
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
canvas.fillText("LEVEL SELECT", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 2);
// change player color
if (onButton("ig_playerColor")) {
if (player.color == PLAYER_OUTLINE_COLORS.length) {
canvas.fillStyle = rainbowGradient;
} else {
canvas.fillStyle = "rgba(" + player.redFill + ", " + player.greenFill + ", " + player.blueFill + ", 1)";
}
} else {
canvas.fillStyle = "white";
}
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
canvas.fillText("PLAYER COLOR", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 3);
// mute SFX
if (onButton("ig_muteSFX"))
canvas.fillStyle = BARS_BUTTON_HOVER_COLOR;
else
canvas.fillStyle = "white";
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
if (muteSFX)
canvas.fillText("UNMUTE SFX", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 4);
else
canvas.fillText("MUTE SFX", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 4);
// mute music
if (onButton("ig_muteMusic"))
canvas.fillStyle = BARS_BUTTON_HOVER_COLOR;
else
canvas.fillStyle = "white";
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
if (muteMusic)
canvas.fillText("UNMUTE MUSIC", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 5);
else
canvas.fillText("MUTE MUSIC", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 5);
// player bouncing
if (onButton("ig_playerBouncing"))
canvas.fillStyle = BARS_BUTTON_HOVER_COLOR;
else
canvas.fillStyle = "white";
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
if (bouncingEnabled)
canvas.fillText("DISABLE PLAYER BOUNCING", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 6);
else
canvas.fillText("ENABLE PLAYER BOUNCING", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 6);
// coolmath games
/*
if (onButton("ig_coolmathGames"))
canvas.fillStyle = BARS_BUTTON_HOVER_COLOR;
else
canvas.fillStyle = "white";
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
canvas.fillText("COOLMATH GAMES", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 7);
*/
// stephen critoph
//if (onButton("ig_stephenCritoph"))
// canvas.fillStyle = BARS_BUTTON_HOVER_COLOR;
//else
canvas.fillStyle = "white";
canvas.font = "Bold " + IG_BTN_TEXT_SIZE + "px Arial";
canvas.textAlign = "center";
canvas.fillText("BY: STEPHEN CRITOPH", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 7);
}
} else {
if (paused && (state == "game" || state == "intermission")) {
// bg
canvas.beginPath();
canvas.rect(os.x, cwh(BAR_HEIGHT) + os.y, cwh(CANVAS_WIDTH), cwh(CANVAS_HEIGHT - BAR_HEIGHT * 2));
canvas.fillStyle = "rgba(0, 0, 0, " + INGAME_MENU_BG_ALPHA + ")";
canvas.fill();
// timer
canvas.fillStyle = TIMER_COLOR;
canvas.font = cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "right";
canvas.fillText(msToTime(gameTimer), cwh(CANVAS_WIDTH - 10) + os.x, cwh(BAR_HEIGHT + 30) + os.y);
// resume game
canvas.fillStyle = "white";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
canvas.fillText("RESUME GAME", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP) + os.y);
// main menu
canvas.fillStyle = "white";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
canvas.fillText("MAIN MENU", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE) + os.y);
// level select
canvas.fillStyle = "white";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
canvas.fillText("LEVEL SELECT", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 2) + os.y);
// change player color
canvas.fillStyle = "rgba(" + player.redFill + ", " + player.greenFill + ", " + player.blueFill + ", 1)";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
canvas.fillText("PLAYER COLOR", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 3) + os.y);
// mute SFX
canvas.fillStyle = "white";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
if (muteSFX)
canvas.fillText("UNMUTE SFX", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 4) + os.y);
else
canvas.fillText("MUTE SFX", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 4) + os.y);
// mute music
canvas.fillStyle = "white";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
if (muteMusic)
canvas.fillText("UNMUTE MUSIC", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 5) + os.y);
else
canvas.fillText("MUTE MUSIC", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 5) + os.y);
// player bouncing
canvas.fillStyle = "white";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
if (bouncingEnabled)
canvas.fillText("DISABLE PLAYER BOUNCING", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 6) + os.y);
else
canvas.fillText("ENABLE PLAYER BOUNCING", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 6) + os.y);
// coolmath games
/*
canvas.fillStyle = "white";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
canvas.fillText("COOLMATH GAMES", CANVAS_WIDTH / 2, IG_BUTTONS_TOP + IG_BTN_SPACE * 7);
*/
// stephen critoph
canvas.fillStyle = "white";
canvas.font = "Bold " + cwh(IG_BTN_TEXT_SIZE) + "px Arial";
canvas.textAlign = "center";
canvas.fillText("BY: STEPHEN CRITOPH", cwh(CANVAS_WIDTH / 2) + os.x, cwh(IG_BUTTONS_TOP + IG_BTN_SPACE * 7) + os.y);
}
}
}
// https://stackoverflow.com/questions/9763441/milliseconds-to-time-in-javascript
function msToTime(s) {
function pad(n, z) {
z = z || 2;
return ('00' + n).slice(-z);
}
var ms = s % 1000;
s = (s - ms) / 1000;
var secs = s % 60;
s = (s - secs) / 60;
var mins = s % 60;
var hrs = (s - mins) / 60;
return pad(hrs) + ':' + pad(mins) + ':' + pad(secs) + '.' + pad(ms, 3);
}