Merge branch 'master' of https://github.com/Ronin0000/BangleApps into Ronin0000-master
commit
b71ad0c8d6
|
|
@ -0,0 +1 @@
|
|||
theme: jekyll-theme-cayman
|
||||
21
apps.json
21
apps.json
|
|
@ -3430,13 +3430,30 @@
|
|||
"name": "Car Crazy",
|
||||
"shortName":"Car Crazy",
|
||||
"icon": "carcrash.png",
|
||||
"version":"0.01",
|
||||
"version":"0.03",
|
||||
"description": "A simple car game where you try to avoid the other cars by tilting your wrist left and right. Hold down button 2 to start.",
|
||||
"tags": "game",
|
||||
"readme": "README.md",
|
||||
"storage": [
|
||||
{"name":"carcrazy.app.js","url":"app.js"},
|
||||
{"name":"carcrazy.img","url":"app-icon.js","evaluate":true}
|
||||
{"name":"carcrazy.img","url":"app-icon.js","evaluate":true},
|
||||
{"name":"carcrazy.settings.js","url":"settings.js"}
|
||||
],
|
||||
"data": [
|
||||
{"name":"app.json"}
|
||||
]
|
||||
},
|
||||
{ "id": "schoolCalendar",
|
||||
"name": "School Calendar",
|
||||
"shortName":"SCalender",
|
||||
"icon": "CalenderLogo.png",
|
||||
"version":"0.01",
|
||||
"description": "A simple calendar that you can see your upcoming events. Keep in note that your events reapeat weekly.",
|
||||
"tags": "tool",
|
||||
"readme": "README.md",
|
||||
"custom":"interface.html",
|
||||
"data": [
|
||||
{"name":"app.json"}
|
||||
]
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -1 +1,3 @@
|
|||
0.01: Car Crazy is now avialable for testing in beta!
|
||||
0.02: 10 Levels are now added making the game harder as it goes along. Some of the levels include multiple cars and faster cars. More levels coming soon.
|
||||
0.03: Settings are now added so that you can reset your high score.
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
# Car Crazy
|
||||
Car crazy is a fun game where you tilt your wrist left and right to avoid incoming cars. If you get hit by a car you lose a heart. In the game you have three hearts, if you get hit 3 times you are sent to the game over screen. Your goal is to try to last as long as you can. Because this game is still in beta please report any bugs here: https://forms.office.com/r/HnwYzG9Sk7.
|
||||
Car crazy is a fun game where you tilt your wrist left and right to avoid incoming cars. If you get hit by a car you lose a heart. In the game you have three hearts, if you get hit 3 times you are sent to the game over screen. Recently levels have been added making the game get harder as you play. Your goal is to try to last as long as you can. Because this game is still in production please report any bugs here: https://forms.office.com/r/HnwYzG9Sk7.
|
||||
|
||||
### Images:
|
||||
(Coming Soon)
|
||||
|
|
@ -11,8 +11,50 @@ BNT2: Hold down this button to start the game if you are on the starting page an
|
|||
Tilting Left-Right: Tilt your wrist left and right to steer your car and try not to get hit by the enemy car.
|
||||
|
||||
### Feautures Coming Soon:
|
||||
0.02: Levels are creating making the game get harder as it goes along.
|
||||
0.02: Levels are creating making the game get harder as it goes along. (Completed)
|
||||
|
||||
0.03: Optional soundtrack in settings. More levels.
|
||||
0.03: Setting for reseting high score. (Completed)
|
||||
|
||||
0.04: With higher scores you can now unlock different colors of cars.
|
||||
0.04: Optional soundtrack in settings. More levels.
|
||||
|
||||
0.05: With higher scores you can now unlock different colors of cars. More settings.
|
||||
|
||||
0.06: Car selector at game over screen and start screen.
|
||||
|
||||
0.07 More levels.
|
||||
|
||||
0.08 More types of Cars.
|
||||
|
||||
### Levels
|
||||
Here is a list of all the levels:
|
||||
|
||||
##### Level 1:
|
||||
Basic single car moving at 10 speed.
|
||||
|
||||
##### Level 2:
|
||||
A single car can come from any position at the top of the screen.
|
||||
|
||||
##### Level 3:
|
||||
A single car are coming at 12 speed and can come from any position at the top of the screen.
|
||||
|
||||
##### Level 4:
|
||||
2 cars come at 8 speed.
|
||||
|
||||
##### Level 5:
|
||||
2 cars come at 9 speed.
|
||||
|
||||
##### Level 6:
|
||||
2 cars come at 9.5 and 8 speed.
|
||||
|
||||
##### Level 7:
|
||||
2 cars come at 10 and 8 speed.
|
||||
|
||||
##### Level 8:
|
||||
2 cars come at 11.5 speed.
|
||||
|
||||
##### Level 9 and Above:
|
||||
2 cars come at 13 and 14 speed.
|
||||
|
||||
### Other
|
||||
|
||||
-Settings are now avialable for resetting your high score.
|
||||
|
|
|
|||
|
|
@ -22,6 +22,10 @@ var PurpleCar = require("heatshrink").decompress(atob("ol74UBitg///BIP/7lVqtUDJU
|
|||
|
||||
var LightGreenCar = require("heatshrink").decompress(atob("ol74UBocF///BIP1z9VqtUDJUVBwIABq2qABOVCCkolQJC0AwDgWolAQD1EqwBCH0EqCCdKxQuEAAkKwGhCH4Q/CGD7ECDINEAAoQIwBACgQQYwQ+EAAcC1EACAeAlQfDAAheBCG2oCBUCCB8qCCiQBdp3+fxW/CH4Q/CH4QxgQQKwAQD1QQK1QQUmQQKxiH/CBGqCB3/5WACA+j/4Qf14QxKjGqRI0CCAv+x4QBEYcC1Wo/SpFCBtUlQQBBgISBAAQGBCAOo6te1QQB///lQPC1AGBCAOqyoQQlAuBCAXPAQIAD/Q2BlGoCAgAGCAUqCBnyCAVS1WrB5AAB9RUDCB1WCB0VVIIQMXQYQ/CAbFBBw/8BQIQFn4QewDNBCQgOCgEACDADBAAMC1T5BCAwABCQIACA4QQZABAQ/CH4Q/CH4QC1APKhQQPlQQUxWgGJOCCAcCCBWACAmqGhAQFwEqCA8qFYIQTuWohWqAAIQE1WghUFCANVD4JFBAAqzBlQPCCCNyHIIQGMoONCAdWQ5WVCCjNJZIYQM1WtCAt6KYwAB0oQFIoIPGIIoQTqhDG6oMDA"));
|
||||
|
||||
function consoleDebug(message) {
|
||||
//console.log(message);
|
||||
}
|
||||
|
||||
function getRandomInt(min, max) {
|
||||
min = Math.ceil(min);
|
||||
max = Math.floor(max);
|
||||
|
|
@ -30,21 +34,55 @@ function getRandomInt(min, max) {
|
|||
|
||||
function moveEnemyPosition(){
|
||||
score += 1;
|
||||
checkForNextLevel();
|
||||
if(level == 1){
|
||||
randomRoadPositionIndicator = getRandomInt(1, 4);
|
||||
if ((randomRoadPositionIndicator == 1)) {
|
||||
randomRoadPosition = 85;
|
||||
enemyPositonCenterX = 85;
|
||||
}else if((randomRoadPositionIndicator == 2)){
|
||||
randomRoadPosition = 120;
|
||||
enemyPositonCenterX = 120;
|
||||
}else {
|
||||
randomRoadPosition = 155;
|
||||
enemyPositonCenterX = 155;
|
||||
}
|
||||
}else if(level == 2||level==3){
|
||||
enemyPositonCenterX = getRandomInt(85, 155);
|
||||
}else if(level == 4 || level == 5 || level == 6 || level == 8 || level == 9 || level == 10 || level > 10){
|
||||
do{
|
||||
randomRoadPositionIndicator = getRandomInt(1, 4);
|
||||
randomRoadPositionIndicator2 = getRandomInt(1, 4);
|
||||
}while(randomRoadPositionIndicator==randomRoadPositionIndicator2);
|
||||
|
||||
if ((randomRoadPositionIndicator == 1)) {
|
||||
enemyPositonCenterX = 85;
|
||||
}else if((randomRoadPositionIndicator == 2)){
|
||||
enemyPositonCenterX = 120;
|
||||
}else if((randomRoadPositionIndicator == 3)){
|
||||
enemyPositonCenterX = 155;
|
||||
}
|
||||
|
||||
if ((randomRoadPositionIndicator2 == 1)) {
|
||||
enemyPositonCenterX2 = 85;
|
||||
}else if((randomRoadPositionIndicator2 == 2)){
|
||||
enemyPositonCenterX2 = 120;
|
||||
}else if((randomRoadPositionIndicator2 == 3)){
|
||||
enemyPositonCenterX2 = 155;
|
||||
}else if(level == 7||level == 8){
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function collision(){
|
||||
if(gameStatus == GAMEPLAYING){
|
||||
consoleDebug("Px:"+playerCarLeftX+", "+playerCarRightX);
|
||||
consoleDebug("1x:"+enemyCarLeftX+", "+enemyCarRightX);
|
||||
consoleDebug("2x:"+enemyCarLeftX2+", "+enemyCarRightX2);
|
||||
consoleDebug("Py:"+playerCarFrontY);
|
||||
consoleDebug("1y:"+enemyCarFrontY);
|
||||
consoleDebug("2y:"+enemyCarFrontY2);
|
||||
if
|
||||
(
|
||||
(enemyCarFrontY > playerCarFrontY)
|
||||
(enemyCarFrontY < 300 && enemyCarFrontY > playerCarFrontY)
|
||||
&&
|
||||
(
|
||||
(enemyCarLeftX > playerCarLeftX && enemyCarLeftX < playerCarRightX)
|
||||
|
|
@ -52,51 +90,105 @@ function collision(){
|
|||
(enemyCarRightX > playerCarLeftX && enemyCarRightX < playerCarRightX)
|
||||
)
|
||||
){
|
||||
// hit
|
||||
setTimeout(collision, 2500); // wait 2.5 second for the function to actiavte agian.
|
||||
// hit car 1
|
||||
consoleDebug("1 HIT");
|
||||
enemyPositonCenterY = 300;
|
||||
numberofHearts -= 1;
|
||||
score -= 1;
|
||||
Bangle.buzz();
|
||||
}else{
|
||||
// miss
|
||||
setTimeout(collision, 1); // try again in 1 milliseconds.
|
||||
Bangle.buzz(50,50);
|
||||
}else if
|
||||
(
|
||||
(enemyCarFrontY2 < 300 && enemyCarFrontY2 > playerCarFrontY)
|
||||
&&
|
||||
(
|
||||
(enemyCarLeftX2 > playerCarLeftX && enemyCarLeftX2 < playerCarRightX)
|
||||
||
|
||||
(enemyCarRightX2 > playerCarLeftX && enemyCarRightX2 < playerCarRightX)
|
||||
)
|
||||
){
|
||||
// hit car 2
|
||||
consoleDebug("2 HIT");
|
||||
enemyPositonCenterY2 = 300;
|
||||
numberofHearts -= 1;
|
||||
Bangle.buzz(50,50);
|
||||
}
|
||||
setTimeout(collision, 50); // try again in 50 milliseconds.
|
||||
}
|
||||
}
|
||||
|
||||
function storeMyData(data) {
|
||||
// ensure there are less than 500 elements in the array
|
||||
while (log.length >= 500) log.shift();
|
||||
// append a new item to the array
|
||||
log.push(data);
|
||||
function checkForNextLevel(){
|
||||
if(score < 10){
|
||||
level = 1;
|
||||
}else if(score >= 10 && score < 20){
|
||||
level = 2;
|
||||
}else if(score >= 20 && score < 30){
|
||||
level = 3;
|
||||
}else if(score >= 30 && score < 40){
|
||||
level = 4;
|
||||
}else if(score >= 40 && score < 50){
|
||||
level = 5;
|
||||
}else if(score >= 50 && score < 60){
|
||||
level = 6;
|
||||
}else if(score >= 60 && score < 70){
|
||||
level = 7;
|
||||
}else if(score >= 70 && score < 80){
|
||||
level = 8;
|
||||
}else if(score >= 80 && score < 90){
|
||||
level = 9;
|
||||
}else if(score >= 90){
|
||||
level = 10;
|
||||
}
|
||||
}
|
||||
|
||||
var accel = Bangle.getAccel();
|
||||
|
||||
var file = require("Storage").open("CarCrazy.csv","r");
|
||||
var currentHighScore = file.readLine();
|
||||
if (currentHighScore == undefined) currentHighScore = 0;
|
||||
|
||||
var BackgroundStartingPosition = 75;
|
||||
var carScale = 0.5;
|
||||
var accel = Bangle.getAccel();
|
||||
var playerCarPosition = 120-accel.x*40;
|
||||
var BackgroundYPosition = BackgroundStartingPosition;
|
||||
var randomRoadPositionIndicator = getRandomInt(1, 3);
|
||||
var randomRoadPosition = 120;
|
||||
var enemyPositonY = 30;
|
||||
|
||||
var randomRoadPositionIndicator;
|
||||
var randomRoadPositionIndicator2;
|
||||
var enemyPositonCenterX;
|
||||
var enemyPositonCenterX2;
|
||||
|
||||
var carScale = 0.5;
|
||||
var carWidth = 30;
|
||||
var carHeight = 60;
|
||||
var playerCarY = 130;
|
||||
var enemyCarLeftX;
|
||||
var enemyCarRightX;
|
||||
|
||||
var playerCarCenterY = 130;
|
||||
var playerCarCenterX;
|
||||
|
||||
var enemyPositonCenterY = 0 - carHeight/2;
|
||||
var enemyPositonCenterY2 = 0 - carHeight/2;
|
||||
|
||||
var playerCarLeftX;
|
||||
var playerCarRightX;
|
||||
var enemyCarFrontY;
|
||||
var playerCarFrontY;
|
||||
|
||||
var playerCarFrontY;
|
||||
var playerCarBackY;
|
||||
var playerCarLeftX;
|
||||
var playerCarRightX;
|
||||
|
||||
var enemyCarFrontY;
|
||||
var enemyCarBackY;
|
||||
var enemyCarLeftX;
|
||||
var enemyCarRightX;
|
||||
|
||||
var enemyCarFrontY2;
|
||||
var enemyCarBackY2;
|
||||
var enemyCarLeftX2;
|
||||
var enemyCarRightX2;
|
||||
|
||||
var GAMEPLAYING = 1;
|
||||
var GAMEOVER = 2;
|
||||
var GAMESTART = 3;
|
||||
var gameStatus = GAMESTART;
|
||||
var score = 0;
|
||||
var level = 1;
|
||||
|
||||
|
||||
moveEnemyPosition();
|
||||
collision();
|
||||
|
|
@ -114,11 +206,16 @@ function draw(){
|
|||
if(gameStatus == GAMEPLAYING){
|
||||
BackgroundYPosition += 10;
|
||||
accel = Bangle.getAccel();
|
||||
playerCarPosition = 120-accel.x*40;
|
||||
playerCarCenterX = Math.round(120-accel.x*120);
|
||||
if (playerCarCenterX > 170) { playerCarCenterX = 170; }
|
||||
if (playerCarCenterX < 70) { playerCarCenterX = 70; }
|
||||
g.flip();
|
||||
g.drawImage(backgroundImage,125,BackgroundYPosition, {scale:13,rotate:0});
|
||||
g.drawImage(RedCar,playerCarPosition,playerCarY, {scale:carScale,rotate:3.142});
|
||||
g.drawImage(OrangeCar,randomRoadPosition,enemyPositonY, {scale:carScale,rotate:0});
|
||||
g.drawImage(RedCar,playerCarCenterX,playerCarCenterY, {scale:carScale,rotate:3.142});
|
||||
g.drawImage(OrangeCar,enemyPositonCenterX,enemyPositonCenterY, {scale:carScale,rotate:0});
|
||||
if(level>=4){
|
||||
g.drawImage(OrangeCar,enemyPositonCenterX2,enemyPositonCenterY2, {scale:carScale,rotate:0});
|
||||
}
|
||||
|
||||
if(numberofHearts==3){
|
||||
g.drawImage(heartImage,10,10, {scale:2,rotate:0});
|
||||
|
|
@ -141,23 +238,38 @@ function draw(){
|
|||
}
|
||||
}
|
||||
|
||||
playerCarFrontY = playerCarY-carHeight/2;
|
||||
playerCarBackY = playerCarY+carHeight/2;
|
||||
playerCarLeftX = playerCarPosition-carWidth/2;
|
||||
playerCarRightX = playerCarPosition+carWidth/2;
|
||||
playerCarFrontY = playerCarCenterY-carHeight/2;
|
||||
playerCarBackY = playerCarCenterY+carHeight/2;
|
||||
playerCarLeftX = playerCarCenterX-carWidth/2;
|
||||
playerCarRightX = playerCarCenterX+carWidth/2;
|
||||
|
||||
enemyCarFrontY = enemyPositonY+carHeight/2;
|
||||
enemyCarBackY = enemyPositonY-carHeight/2;
|
||||
enemyCarLeftX = randomRoadPosition-carWidth/2;
|
||||
enemyCarRightX = randomRoadPosition+carWidth/2;
|
||||
enemyCarFrontY = enemyPositonCenterY+carHeight/2;
|
||||
enemyCarBackY = enemyPositonCenterY-carHeight/2;
|
||||
enemyCarLeftX = enemyPositonCenterX-carWidth/2;
|
||||
enemyCarRightX = enemyPositonCenterX+carWidth/2;
|
||||
|
||||
enemyCarFrontY2 = enemyPositonCenterY2+carHeight/2;
|
||||
enemyCarBackY2 = enemyPositonCenterY2-carHeight/2;
|
||||
enemyCarLeftX2 = enemyPositonCenterX2-carWidth/2;
|
||||
enemyCarRightX2 = enemyPositonCenterX2+carWidth/2;
|
||||
|
||||
g.setColor(255,0,0);
|
||||
//g.drawRect(playerCarLeftX, playerCarFrontY, playerCarRightX, playerCarBackY);
|
||||
//g.drawRect(enemyCarLeftX, enemyCarFrontY, enemyCarRightX, enemyCarBackY);
|
||||
//g.drawRect(enemyCarLeftX2, enemyCarFrontY2, enemyCarRightX2, enemyCarBackY2);
|
||||
|
||||
g.setColor(0,0,0);
|
||||
g.drawString("Score: "+score,180,5);
|
||||
g.drawString("HighScore:",178,15);
|
||||
g.drawString(currentHighScore,205,25);
|
||||
g.drawString("Level: "+level,180,150);
|
||||
|
||||
//g.drawString("P:"+playerCarLeftX+", "+playerCarRightX,180,90);
|
||||
//g.drawString("1:"+enemyCarLeftX+", "+enemyCarRightX,180,100);
|
||||
//g.drawString("2:"+enemyCarLeftX2+", "+enemyCarRightX2,180,110);
|
||||
//g.drawString("P:"+playerCarFrontY,180,120);
|
||||
//g.drawString("1:"+enemyCarFrontY,180,130);
|
||||
//g.drawString("2:"+enemyCarFrontY2,180,140);
|
||||
|
||||
if(BackgroundYPosition > 170){
|
||||
BackgroundYPosition = BackgroundStartingPosition;
|
||||
|
|
@ -200,41 +312,75 @@ function draw(){
|
|||
g.drawString("2 To Start",10,130);
|
||||
g.drawImage(LightGreenCar,180,115, {scale:0.5,rotate:3});
|
||||
g.drawImage(PurpleCar,215,115, {scale:0.5,rotate:3});
|
||||
//setTimeout(displayPopup, 3000);
|
||||
}
|
||||
}
|
||||
setInterval(draw ,10);
|
||||
setInterval(draw, 50);
|
||||
|
||||
|
||||
function moveEnemyCar(){
|
||||
if(gameStatus == GAMEPLAYING){
|
||||
enemyPositonY = enemyPositonY + 10;
|
||||
if((enemyPositonY > 200)){
|
||||
enemyPositonY = 30;
|
||||
if(level==1||level==2){
|
||||
enemyPositonCenterY = enemyPositonCenterY + 10;
|
||||
enemyPositonCenterY2 = 0;
|
||||
}else if(level==3){
|
||||
enemyPositonCenterY = enemyPositonCenterY + 12;
|
||||
enemyPositonCenterY2 = 0;
|
||||
}else if(level==4){
|
||||
enemyPositonCenterY = enemyPositonCenterY + 8;
|
||||
enemyPositonCenterY2 = enemyPositonCenterY2 + 8;
|
||||
}else if(level==5){
|
||||
enemyPositonCenterY = enemyPositonCenterY + 9;
|
||||
enemyPositonCenterY2 = enemyPositonCenterY2 + 9;
|
||||
}else if(level==6){
|
||||
enemyPositonCenterY = enemyPositonCenterY + 9.5;
|
||||
enemyPositonCenterY2 = enemyPositonCenterY2 + 8;
|
||||
}else if(level==7){
|
||||
enemyPositonCenterY = enemyPositonCenterY + 10;
|
||||
enemyPositonCenterY2 = enemyPositonCenterY2 + 8;
|
||||
}else if(level==8){
|
||||
enemyPositonCenterY = enemyPositonCenterY + 11.5;
|
||||
enemyPositonCenterY2 = enemyPositonCenterY2 + 11.5;
|
||||
}else if(level>=9){
|
||||
enemyPositonCenterY = enemyPositonCenterY + 13;
|
||||
enemyPositonCenterY2 = enemyPositonCenterY2 + 14;
|
||||
}
|
||||
if(enemyPositonCenterY > 200){
|
||||
enemyPositonCenterY = 300;
|
||||
}
|
||||
if(enemyPositonCenterY2 > 200){
|
||||
enemyPositonCenterY2 = 300;
|
||||
}
|
||||
if(enemyPositonCenterY > 200 && (enemyPositonCenterY2 > 200 || level < 4)){
|
||||
enemyPositonCenterY = 0 - carHeight/2;
|
||||
if (level >= 4) { enemyPositonCenterY2 = 0 - carHeight/2; }
|
||||
moveEnemyPosition();
|
||||
}
|
||||
}
|
||||
}
|
||||
setInterval(moveEnemyCar,10);
|
||||
setInterval(moveEnemyCar,50);
|
||||
|
||||
setWatch(() => {
|
||||
if(gameStatus == GAMESTART){
|
||||
gameStatus = GAMEPLAYING;
|
||||
collision();
|
||||
enemyPositonY = 0;
|
||||
numberofHearts = 3;
|
||||
enemyPositonCenterX = 120;
|
||||
enemyPositonCenterY = 0 - carHeight/2;
|
||||
enemyPositonCenterX2 = 120;
|
||||
enemyPositonCenterY2 = 0 - carHeight/2;
|
||||
score = 0;
|
||||
level = 1;
|
||||
checkForNextLevel();
|
||||
}else if(gameStatus == GAMEOVER){
|
||||
gameStatus = GAMEPLAYING;
|
||||
collision();
|
||||
enemyPositonY = 0;
|
||||
enemyPositonCenterX = 120;
|
||||
enemyPositonCenterY = 0 - carHeight/2;
|
||||
enemyPositonCenterX2 = 120;
|
||||
enemyPositonCenterY2 = 0 - carHeight/2;
|
||||
numberofHearts = 3;
|
||||
score = 0;
|
||||
level = 1;
|
||||
checkForNextLevel();
|
||||
}
|
||||
}, BTN2, {repeat:true});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,20 @@
|
|||
|
||||
(function (back) {
|
||||
const menu = {
|
||||
'': { 'title': 'Car Crazy' },
|
||||
'< Back': back,
|
||||
'Reset Highscore': () => {
|
||||
E.showPrompt('Reset Highscore?').then((v) => {
|
||||
let delay = 50;
|
||||
if (v) {
|
||||
delay = 500;
|
||||
E.showMessage('Resetting');
|
||||
var f = require('Storage').open('CarCrazy.csv', 'w');
|
||||
f.write('0\n');
|
||||
}
|
||||
setTimeout(() => E.showMenu(menu), delay);
|
||||
});
|
||||
}
|
||||
};
|
||||
E.showMenu(menu);
|
||||
});
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
|
|
@ -0,0 +1,2 @@
|
|||
# Changelog for the bangle.hs-calenderapp repository:
|
||||
0.01: App is created with gradient background.
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
# Bangle.js Calendar
|
||||
|
||||
School Calender is a calender that you can see your upcoming classes or schedule.
|
||||
|
||||
## Versions:
|
||||
|
||||
Version 1.00: Get Design Working
|
||||
|
||||
Version 2.00: Update Graphics
|
||||
|
|
@ -0,0 +1 @@
|
|||
require("heatshrink").decompress(atob("mEwyBC/AH4A/AH4A/AH4A/AH4A/AH4A80s0AIIh/L/5f/EP4ATscsAIo9DBY4BVEJZf/L/5fRznzAIJfdEJZfpymyAJmSBpwPLBZRfqIYYBwL9OMuIBzL9VRAMRTDCJhfymBpkL+GEmABzL9UQAJelinOrPWzQDBymSCpe96+c6YnNL9N794tBAYoFD5152u21t1AoP332MuIPDVIJxB88c///AoODD4gFBLoYJBL9YBT888M4IHDNYPvvoDDznzD5pfq54BT737L4QHCVYQFCL4XTD5pfpueuAKOtqpRBxlRB5JfDEJpfqxwBIG4OOwkw/4AC+++xlxC5ZfBymyDoYlHAIJf0AImEiBbB0s0MIOtuoTJL4glML9NrtoBTLoJTBBpJfCyQfNL9VNAKZfB88cBpJfED5hfslgzEAoT3BxlxBYd795RB2uWC4tjAoQNBC4olFCIZfpFoIBJe4JJB+++AYe964XLL4YPLAIJfqhgBNueuAIJnBCp4BPL9Na9YBBsQBCAoY3BA4YBRC4INPL9oBS5YXWDoxfqJIIByL9NS1QBzL9WKAIgzBAooHFAMBfpMJABqLtYA/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4A/AH4ALA"))
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
if(currentHour >= schedule[i].startingTimeHour && currentMinute >= schedule[i].startingTimeMinute){
|
||||
if(currentHour <= schedule[i].endingTimeHour){
|
||||
console.log("Time of Day "+schedule[i].description);
|
||||
g.drawString(i + ": "+schedule[i].description, 10, 10*i-100);
|
||||
}
|
||||
|
||||
//console.log("DayOfWeek:"+currentDayOfWeek+", Hour:"+ currentHour + ", Minute:" + currentMinute);
|
||||
//console.log("DayOfWeek:"+schedule[i].dayOfWeek+", StartHour:"+ schedule[i].startingTimeHour +", EndHour:" + schedule[i].endingTimeHour + ", StartMinute:" + schedule[i].startingTimeMinute + ", EndMinute:" + schedule[i].endingTimeMinute);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
*/
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,46 @@
|
|||
<html>
|
||||
<head>
|
||||
<meta charset='utf-8' />
|
||||
<link href='fullcalendar/main.css' rel='stylesheet' />
|
||||
<script src='fullcalendar/main.js'></script>
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
var calendarEl = document.getElementById('calendar');
|
||||
var calendar = new FullCalendar.Calendar(calendarEl, {
|
||||
initialView: 'dayGridMonth'
|
||||
});
|
||||
calendar.render();
|
||||
});
|
||||
</script>
|
||||
|
||||
<style>
|
||||
body {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
html, body, #map {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
#map { z-index: 1; }
|
||||
#controls {
|
||||
padding: 10px;
|
||||
margin: 10px;
|
||||
border: 1px solid black;
|
||||
position:absolute;
|
||||
right:0px;top:0px;
|
||||
background-color: rgb(255, 255, 255);
|
||||
z-index: 100;
|
||||
}
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div id='calendar'></div>
|
||||
|
||||
<div id="controls">
|
||||
<p>Find the area of interest</p>
|
||||
<p>If ok, Click <button id="upload" class="btn btn-primary">Upload</button></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,229 @@
|
|||
require("FontTeletext5x9Mode7").add(Graphics);
|
||||
Bangle.setLCDMode();
|
||||
|
||||
function getBackgroundImage() {
|
||||
return require("heatshrink").decompress(atob("gMwyEgBAsAgQBCgcAggBCgsAgwBCg8AhABChMAhQBChcAhgBChsAhwBCh8AiEAiIBCiUAiYBCikAioBCi0Ai4BCjEAjIBCjUAjYBCjkAjoBCj0Aj4BBA"));
|
||||
}
|
||||
|
||||
Graphics.prototype.setFontAudiowide = function() {
|
||||
// Actual height 33 (36 - 4)
|
||||
var widths = atob("BxYfDBkYGhkZFRkZCA==");
|
||||
var font = atob("AAAAAAAAA8AAAAHgAAAB8AAAAHgAAAA4AAAAAAAAAAEAAAABgAAAA8AAAAPgAAAH8AAAB/gAAA/4AAAf+AAAH/AAAD/wAAA/4AAAf8AAAP/AAAD/gAAB/4AAAf8AAAD+AAAAfgAAADwAAAAcAAAAAAAAAAAAAAAAAAAAAAP/AAAH//AAB//8AAf//wAH///AA///4APwD/gB8A/8APgP/gB8D98AfAfvgD4H58AfB/PgD4Px8AfD8PgD4/h8AfH4PgD5+B8AP/wPgB/8B8AP/APgB/4D8AH8B/AA///4AD//+AAP//gAA//4AAB/8AAAAAAAAAAAAAAAAAAD4AAAAfAAAAD4AAAAfAAAAD///8Af///gD///8Af///gD///8AAAAAAAAAAAAAAAAAAAA/8AAAf/gD4H/8AfA//gD4P/8AfB+PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgB8Ph8AP/8PgB//B8AP/4PgA/+B8AD/gPgABgA8AAAAAAAAAAAAPA4HgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgB8Ph8AP///gB///8AH///AA///wAB//8AAAAAAAAAAAAB/8AAAf/4AAD//gAAf/8AAD//gAAf/8AAAAPgAAAB8AAAAPgAAAB8AAAAPgAAAB8AAAAPgAAAB8AAAAPgAAAB8AAAAPgAAP///gD///8Af///gD///8Af///gD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAD/8B8Af/wPgD//B8Af/4PgD//h8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB//gD4H/8AfA//AAAD/4AAAP8AAAAAAAAAAAAAH//AAB//8AAf//wAH///AB///8AP58/gB8Ph8APh8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB//gD4H/8AAA//AAAD/4AAAP8AAAAAAAAAAAAD4AAAAfAAAAD4AAAAfAABgD4AA8AfAAPgD4AH8AfAD/gD4A/8AfAf/AD4P/gAfH/wAD5/8AAf/+AAD//AAAf/gAAD/4AAAf8AAAB+AAAAPAAAAAAAAAAAAAAAAAB/gAAAf+AAP//4AH///gA///8AP/+PgB//h8APh8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgB8Ph8AP/8PgB//h8AP///gA///8AD///AADz/4AAAP8AAAAMAAAAAAAAAAAAAB/gAAA/+AAAH/4AAB//B8AP/8PgB8Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8AfB8PgD4Ph8APh8PgB8Ph8APx8fgB///8AH///AAf//wAD//8AAH//AAAAAAAAAAAAAAAAAAAAAAAAAOAHgAD4A8AAfAPgAD4A8AAOAHAAAAAAA==");
|
||||
var scale = 1; // size multiplier for this font
|
||||
g.setFontCustom(font, 46, widths, 33+(scale<<8)+(1<<16));
|
||||
};
|
||||
|
||||
function logDebug(message){
|
||||
//console.log(message);
|
||||
}
|
||||
|
||||
var NEXTCLASS = 4;
|
||||
var CURRRENTCLASS = 3;
|
||||
var NEXTNEXTCLASS = 5;
|
||||
var BEHINDCLASS = 2;
|
||||
var BEHINDBEHINDCLASS = 1;
|
||||
var NEXTNEXTNEXTCLASS = 6;
|
||||
var stage = 3;
|
||||
|
||||
function drawInfo(){
|
||||
var currentDate = new Date();
|
||||
var currentDayOfWeek = currentDate.getDay();
|
||||
var currentHour = currentDate.getHours();
|
||||
var currentMinute = currentDate.getMinutes();
|
||||
var currentMinuteUpdated;
|
||||
var currentHourUpdated;
|
||||
if (currentMinute<10){
|
||||
currentMinuteUpdated = "0"+currentMinute;
|
||||
}else{
|
||||
currentMinuteUpdated = currentMinute;
|
||||
}if(currentHour >= 13){
|
||||
currentHourUpdated = currentHour-12;
|
||||
}else{
|
||||
currentHourUpdated = currentHour;
|
||||
}
|
||||
for(var i = 0;i<=240;i++){
|
||||
g.drawImage(getBackgroundImage(),i,120,{scale:5,rotate:0});
|
||||
}
|
||||
g.setColor(255,255,255);
|
||||
g.setFont("Audiowide");
|
||||
g.drawString(currentHourUpdated+":"+currentMinuteUpdated, 145, 16);
|
||||
g.setFont("Teletext5x9Mode7", 2);
|
||||
foundClass = processDay();
|
||||
if (foundClass.startingTimeMinute<10){
|
||||
classMinuteUpdated = "0"+foundClass.startingTimeMinute;
|
||||
}else{
|
||||
classMinuteUpdated = foundClass.startingTimeMinute;
|
||||
}
|
||||
if (foundClass.endingTimeMinute<10){
|
||||
classEndingMinuteUpdated = "0"+foundClass.endingTimeMinute;
|
||||
}else{
|
||||
classEndingMinuteUpdated = foundClass.endingTimeMinute;
|
||||
}if(foundClass.startingTimeHour >= 13){
|
||||
classHourUpdated = foundClass.startingTimeHour-12;
|
||||
}else{
|
||||
classHourUpdated = foundClass.startingTimeHour;
|
||||
}if(foundClass.endingTimeHour >= 13){
|
||||
classEndingHourUpdated = foundClass.endingTimeHour-12;
|
||||
}else{
|
||||
classEndingHourUpdated = foundClass.endingTimeHour;
|
||||
}
|
||||
switch (foundClass.dayOfWeek) {
|
||||
case 0:
|
||||
updatedDay = "Sun";
|
||||
break;
|
||||
case 1:
|
||||
updatedDay = "Mon";
|
||||
break;
|
||||
case 2:
|
||||
updatedDay = "Tue";
|
||||
break;
|
||||
case 3:
|
||||
updatedDay = "Wed";
|
||||
break;
|
||||
case 4:
|
||||
updatedDay = "Thur";
|
||||
break;
|
||||
case 5:
|
||||
updatedDay = "Fri";
|
||||
break;
|
||||
case 6:
|
||||
updatedDay = "Sat";
|
||||
}
|
||||
if (foundClass != null) {
|
||||
g.drawString(classHourUpdated+":"+classMinuteUpdated+" - "+classEndingHourUpdated+":"+classEndingMinuteUpdated+" "+updatedDay, 25, 50);
|
||||
g.drawString(foundClass.className, 25, 80);
|
||||
g.drawString(foundClass.teacher, 25, 110);
|
||||
g.drawString(foundClass.roomNumber, 25, 140);
|
||||
}
|
||||
}
|
||||
setInterval(drawInfo, 60000);
|
||||
|
||||
function processDay(){
|
||||
let schedule = [
|
||||
//Sunday
|
||||
|
||||
//Monday:
|
||||
{className: "Biblical Theology", dayOfWeek:1, startingTimeHour: 8, startingTimeMinute: 10, endingTimeHour:9, endingTimeMinute: 5, description:"Biblical Theology 7B 3B Mr. Besaw Block 3B M207", roomNumber:"207", teacher:"Mr. Besaw"},
|
||||
{className: "English", dayOfWeek:1, startingTimeHour: 9, startingTimeMinute: 5, endingTimeHour:10, endingTimeMinute: 0, description:"English 7B 4B Dr. Wong Block 4B M206", teacher:"Dr. Wong"},
|
||||
{className: "Break", dayOfWeek:1, startingTimeHour: 10, startingTimeMinute: 0, endingTimeHour:10, endingTimeMinute: 10, description:"Break MF MS", teacher:""},
|
||||
{className: "MS Robotics", dayOfWeek:1, startingTimeHour: 10, startingTimeMinute: 10, endingTimeHour:11, endingTimeMinute: 0, description:"MS Robotics S1A Mr. Broyles MS MF Elective Block A M211", roomNumber:"211", teacher:"Mr. Broyles"},
|
||||
{className: "MS Physical Education Boys", dayOfWeek:1, startingTimeHour: 11, startingTimeMinute: 0, endingTimeHour:11, endingTimeMinute: 50, description:"MS Physical Education Boys S1B Mr. Mendezona MS MF Elective Block B Gym", roomNumber:"GYM", teacher:"Mr. Mendezona"},
|
||||
{className: "Office Hours Besaw/Nunez", dayOfWeek:1, startingTimeHour: 11, startingTimeMinute: 50, endingTimeHour:12, endingTimeMinute: 25, description:"Office Hours Besaw/Nunez Mr. Besaw, Dr. Nunez, Mrs.McDonough, Mr. Pettit Office Hours MF MS M203", roomNumber:"203", teacher:"Besaw/Nunez"},
|
||||
{className: "Lunch", dayOfWeek:1, startingTimeHour: 12, startingTimeMinute: 25, endingTimeHour:12, endingTimeMinute: 50, description:"Lunch MF MS", roomNumber:"Commence or Advisory", teacher:""},
|
||||
{className: "Activity Period", dayOfWeek:1, startingTimeHour: 12, startingTimeMinute: 50, endingTimeHour:13, endingTimeMinute: 0, description:"Activity Period MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "Latin", dayOfWeek:1, startingTimeHour: 13, startingTimeMinute: 5, endingTimeHour:14, endingTimeMinute: 0, description:"Latin 7B 5B Mrs. Scrivner Block 5B M208", roomNumber:"208", teacher:"Mrs.Scrivner"},
|
||||
{className: "Algebra 1", dayOfWeek:1, startingTimeHour: 14, startingTimeMinute: 0, endingTimeHour:15, endingTimeMinute: 0, description:"Algebra 1 7B 6B Mr. Benson Block 6B M204", roomNumber:"204", teacher:"Mr. Benson"},
|
||||
|
||||
//Tuesday:
|
||||
{className: "Logic", dayOfWeek:2, startingTimeHour: 8, startingTimeMinute: 10, endingTimeHour:9, endingTimeMinute: 0, description:"Logic 7B 5B Mrs. Scrivner Block 5B M208", roomNumber:"208", teacher:"Mrs.Scrivner"},
|
||||
{className: "Algebra 1", dayOfWeek:2, startingTimeHour: 9, startingTimeMinute: 0, endingTimeHour:10, endingTimeMinute: 0, description:"Algebra 1 7B 6B Mr. Benson Block 6B M204", roomNumber:"204", teacher:"Mr. Benson"},
|
||||
{className: "Chapel", dayOfWeek:2, startingTimeHour: 10, startingTimeMinute: 0, endingTimeHour:10, endingTimeMinute: 25, description:"Chapel MF MS", roomNumber:"Advisory", teacher:""},
|
||||
{className: "Break", dayOfWeek:2, startingTimeHour: 10, startingTimeMinute: 25, endingTimeHour:10, endingTimeMinute: 35, description:"Break MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "Advisory Besaw", dayOfWeek:2, startingTimeHour: 10, startingTimeMinute: 35, endingTimeHour:11, endingTimeMinute: 0, description:"Advisory Besaw Mr. Besaw Advisory MF MS M207", roomNumber:"207", teacher:"Mr. Besaw"},
|
||||
{className: "MS Robotics", dayOfWeek:2, startingTimeHour: 11, startingTimeMinute: 0, endingTimeHour:11, endingTimeMinute: 50, description:"MS Robotics S1A Mr. Broyles MS MF Elective Block A M211", roomNumber:"211", teacher:"Mr. Broyles"},
|
||||
{className: "Office Hours Besaw/Nunez", dayOfWeek:2, startingTimeHour: 11, startingTimeMinute: 50, endingTimeHour:12, endingTimeMinute: 25, description:"Office Hours Besaw/Nunez Mr. Besaw, Dr. Nunez, Mrs.McDonough, Mr. Pettit Office Hours MF MS M203", roomNumber:"203", teacher:" Besaw/Nunez"},
|
||||
{className: "Lunch", dayOfWeek:2, startingTimeHour: 12, startingTimeMinute: 25, endingTimeHour:12, endingTimeMinute: 50, description:"Lunch MF MS", roomNumber:"Commence or Advisory", teacher:""},
|
||||
{className: "Activity Period", dayOfWeek:2, startingTimeHour: 12, startingTimeMinute: 50, endingTimeHour:13, endingTimeMinute: 5, description:"Activity Period MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "Medieval Western Civilization", dayOfWeek:2, startingTimeHour: 13, startingTimeMinute: 5, endingTimeHour:14, endingTimeMinute: 0, description:"Medieval Western Civilization 7B 1B Mr. Kuhle Block 1BM205", roomNumber:"205", teacher:"Mr. Khule"},
|
||||
{className: "Introductory Biology and Epidemiology", dayOfWeek:2, startingTimeHour: 14, startingTimeMinute: 0, endingTimeHour:15, endingTimeMinute: 0, description:"Introductory Biology and Epidemiology 7B 2B Mrs. Brown Block 2B M202", roomNumber:"202", teacher:"Mrs. Brown"},
|
||||
|
||||
//Wensday:
|
||||
{className: "English", dayOfWeek:3, startingTimeHour: 9, startingTimeMinute: 0, endingTimeHour:9, endingTimeMinute: 55, description:"English 7B 4B Dr. Wong Block 4B M206", roomNumber:"206", teacher:"Dr. Wong"},
|
||||
{className: "Biblical Theology", dayOfWeek:3, startingTimeHour: 9, startingTimeMinute: 55, endingTimeHour:10, endingTimeMinute: 50, description:"Biblical Theology 7B 3B Mr. Besaw Block 3B M207", roomNumber:"207", teacher:"Mr. Besaw"},
|
||||
{className: "Break", dayOfWeek:3, startingTimeHour: 10, startingTimeMinute: 50, endingTimeHour:11, endingTimeMinute: 0, description:"Break MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "MS Physical Education Boys", dayOfWeek:3, startingTimeHour: 11, startingTimeMinute: 0, endingTimeHour:11, endingTimeMinute: 50, description:"MS Physical Education Boys S1B Mr. Mendezona MS MF Elective Block B Gym", roomNumber:"GYM", teacher:"Mr. Mendezona"},
|
||||
{className: "Office Hours Besaw/Nunez", dayOfWeek:3, startingTimeHour: 11, startingTimeMinute: 50, endingTimeHour:12, endingTimeMinute: 25, description:"Office Hours Besaw/Nunez Mr. Besaw, Dr. Nunez, Mrs.McDonough, Mr. Pettit Office Hours MF MS M203", roomNumber:"203", teacher:" Besaw/Nunez"},
|
||||
{className: "Lunch", dayOfWeek:3, startingTimeHour: 12, startingTimeMinute: 25, endingTimeHour:12, endingTimeMinute: 50, description:"Lunch MF MS", roomNumber:"Commence or Advisory", teacher:""},
|
||||
{className: "Activity Period", dayOfWeek:2, startingTimeHour: 12, startingTimeMinute: 50, endingTimeHour:13, endingTimeMinute: 0, description:"Activity Period MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "Introductory Biology and Epidemiology", dayOfWeek:3, startingTimeHour: 13, startingTimeMinute: 0, endingTimeHour:14, endingTimeMinute: 0, description:"Introductory Biology and Epidemiology 7B 2B Mrs. Brown Block 2B M202", roomNumber:"202", teacher:"Mrs. Brown"},
|
||||
{className: "Medieval Western Civilization", dayOfWeek:3, startingTimeHour: 14, startingTimeMinute: 0, endingTimeHour:15, endingTimeMinute: 0, description:"Medieval Western Civilization 7B 1B Mr. Kuhle Block 1B M205", roomNumber:"205", teacher:"Mr. Khule"},
|
||||
|
||||
//Thursday:
|
||||
{className: "Algebra 1", dayOfWeek:4, startingTimeHour: 8, startingTimeMinute: 10, endingTimeHour:9, endingTimeMinute: 5, description:"Algebra 1 7B 6B Mr. Benson Block 6B M204", roomNumber:"204", teacher:"Mr. Benson"},
|
||||
{className: "Latin", dayOfWeek:4, startingTimeHour: 9, startingTimeMinute: 5, endingTimeHour:10, endingTimeMinute: 0, description:"Latin 7B 5B Mrs. Scrivner Block 5B M208", roomNumber:"208", teacher:"Mrs.Scrivner"},
|
||||
{className: "Break", dayOfWeek:4, startingTimeHour: 10, startingTimeMinute: 0, endingTimeHour:10, endingTimeMinute: 10, description:"Break MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "MS Robotics", dayOfWeek:4, startingTimeHour: 10, startingTimeMinute: 10, endingTimeHour:11, endingTimeMinute: 0, description:"MS Robotics S1A Mr. Broyles MS MF Elective Block A M211", roomNumber:"211", teacher:"Mr. Broyles"},
|
||||
{className: "Advisory Besaw", dayOfWeek:4, startingTimeHour: 11, startingTimeMinute: 50, endingTimeHour:12, endingTimeMinute: 25, description:"Advisory Besaw Mr. Besaw Advisory MF MS M207", roomNumber:"207", teacher:"Mr. Besaw"},
|
||||
{className: "Lunch", dayOfWeek:4, startingTimeHour: 12, startingTimeMinute: 25, endingTimeHour:12, endingTimeMinute: 50, description:"Lunch MF MS", roomNumber:"Commence or Advisory", teacher:""},
|
||||
{className: "Activity Period", dayOfWeek:4, startingTimeHour: 12, startingTimeMinute: 50, endingTimeHour:13, endingTimeMinute: 0, description:"Activity Period MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "Biblical Theology", dayOfWeek:4, startingTimeHour: 13, startingTimeMinute: 5, endingTimeHour:14, endingTimeMinute: 0, description:"Biblical Theology 7B 3B Mr. Besaw Block 3B M207", roomNumber:"207", teacher:"Mr. Besaw"},
|
||||
{className: "English", dayOfWeek:4, startingTimeHour: 14, startingTimeMinute: 0, endingTimeHour:15, endingTimeMinute: 0, description:"English 7B 4B Dr. Wong Block 4B M206", roomNumber:"206", teacher:"Dr. Wong"},
|
||||
|
||||
//Friday:
|
||||
{className: "Medieval Western Civilization", dayOfWeek:5, startingTimeHour: 8, startingTimeMinute: 10, endingTimeHour:9, endingTimeMinute: 5, description:"Medieval Western Civilization 7B 1B Mr. Kuhle Block 1B M205", roomNumber:"205", teacher:"Mr. Khule"},
|
||||
{className: "Introductory Biology and Epidemiology", dayOfWeek:5, startingTimeHour: 9, startingTimeMinute: 5, endingTimeHour:10, endingTimeMinute: 0, description:"Introductory Biology and Epidemiology 7B 2B Mrs. Brown Block 2B M202", roomNumber:"202", teacher:"Mrs. Brown"},
|
||||
{className: "Break", dayOfWeek:5, startingTimeHour: 10, startingTimeMinute: 0, endingTimeHour:10, endingTimeMinute: 10, description:"Break MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "MS Robotics", dayOfWeek:5, startingTimeHour: 10, startingTimeMinute: 10, endingTimeHour:11, endingTimeMinute: 0, description:"MS Robotics S1A Mr. Broyles MS MF Elective Block A M211", roomNumber:"211", teacher:"Mr. Broyles"},
|
||||
{className: "Office Hours Besaw/Nunez", dayOfWeek:5, startingTimeHour: 11, startingTimeMinute: 50, endingTimeHour:12, endingTimeMinute: 25, description:"Office Hours Besaw/Nunez Mr. Besaw, Dr. Nunez, Mrs.McDonough, Mr. Pettit Office Hours MF MS M203", roomNumber:"203", teacher:" Besaw/Nunez"},
|
||||
{className: "Lunch", dayOfWeek:5, startingTimeHour: 12, startingTimeMinute: 25, endingTimeHour:12, endingTimeMinute: 50, description:"Lunch MF MS", roomNumber:"Commence or Advisory", teacher:""},
|
||||
{className: "Activity Period", dayOfWeek:5, startingTimeHour: 12, startingTimeMinute: 50, endingTimeHour:13, endingTimeMinute: 0, description:"Activity Period MF MS", roomNumber:"Outside", teacher:""},
|
||||
{className: "Algebra 1", dayOfWeek:5, startingTimeHour: 13, startingTimeMinute: 5, endingTimeHour:14, endingTimeMinute: 0, description:"Algebra 1 7B 6B Mr. Benson Block 6B M204", roomNumber:"204", teacher:"Mr. Benson"},
|
||||
{className: "Logic", dayOfWeek:5, startingTimeHour: 14, startingTimeMinute: 0, endingTimeHour:15, endingTimeMinute: 0, description:"Logic 7B 5B Mrs. Scrivner Block 5B M208", roomNumber:"208", teacher:"Mrs.Scrivner"},
|
||||
|
||||
//Sataturday:
|
||||
];
|
||||
|
||||
var currentDate = new Date();
|
||||
var currentDayOfWeek = currentDate.getDay();
|
||||
var currentHour = currentDate.getHours();
|
||||
var currentMinute = currentDate.getMinutes();
|
||||
var minofDay = (currentHour*60)+currentMinute;
|
||||
var i;
|
||||
var currentPositon;
|
||||
for(i = 0;i<schedule.length;i++){
|
||||
currentPositon = i;
|
||||
if(schedule[i].dayOfWeek == currentDayOfWeek){
|
||||
logDebug("DayOfWeek:"+schedule[i].dayOfWeek+", StartHour:"+ schedule[i].startingTimeHour +", EndHour:" + schedule[i].endingTimeHour + ", StartMinute:" + schedule[i].startingTimeMinute + ", EndMinute:" + schedule[i].endingTimeMinute);
|
||||
logDebug("Day of Week");
|
||||
logDebug("minuteOfDay:"+minofDay+", startMinuteOfDayOfClass:"+ (schedule[i].startingTimeHour*60+schedule[i].startingTimeMinute) + ", endMinuteOfDayOfClass:" + (schedule[i].endingTimeHour*60+schedule[i].endingTimeMinute));
|
||||
if(minofDay >= (schedule[i].startingTimeHour*60+schedule[i].startingTimeMinute) && minofDay < (schedule[i].endingTimeHour*60+schedule[i].endingTimeMinute) ){
|
||||
console.log("Match:" + schedule[i].className);
|
||||
console.log("stage:" + stage);
|
||||
if(stage == 3){
|
||||
return schedule[i];
|
||||
}else if(stage == 4 && ++currentPositon <= schedule.length){
|
||||
return schedule[currentPositon];
|
||||
}else if(stage == 5 && (currentPositon+=2) <= schedule.length){
|
||||
return schedule[currentPositon];
|
||||
}else if(stage == 6 && (currentPositon+=3) <= schedule.length){
|
||||
return schedule[currentPositon];
|
||||
}else if(stage == 2 && (currentPositon-=1) <= schedule.length){
|
||||
return schedule[currentPositon];
|
||||
}else if(stage == 1 && (currentPositon-=2) <= schedule.length){
|
||||
return schedule[currentPositon];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
setWatch(() => {
|
||||
if(stage<=1){
|
||||
}else{
|
||||
stage -= 1;
|
||||
drawInfo();
|
||||
}
|
||||
}, BTN1, {repeat:true});
|
||||
|
||||
setWatch(() => {
|
||||
}, BTN2, {repeat:true});
|
||||
|
||||
setWatch(() => {
|
||||
if(stage>=6){
|
||||
}else{
|
||||
stage += 1;
|
||||
drawInfo();
|
||||
}
|
||||
}, BTN3, {repeat:true});
|
||||
|
||||
setWatch(() => {
|
||||
|
||||
}, BTN4, {repeat:true});
|
||||
|
||||
setWatch(() => {
|
||||
|
||||
}, BTN5, {repeat:true});
|
||||
|
||||
drawInfo();
|
||||
Loading…
Reference in New Issue