Compare commits

..

2 commits

Author SHA1 Message Date
dhain
d582a10f2e Merge remote-tracking branch 'origin/develop' into develop 2023-01-31 10:30:10 +01:00
dhain
995e8c4dab Game only playing when logged in 2023-01-31 10:30:01 +01:00
5 changed files with 51 additions and 42 deletions

View file

@ -21,10 +21,8 @@ and run:
npm install npm install
``` ```
### Start the container (in the project root) ### Start the container
```shell ```shell
docker compose up --build docker compose up --build
``` ```
You can then access the website on `localhost:8080`

View file

@ -1,32 +1,33 @@
version: '3.1' version: '3.1'
services: services:
db: db:
build: backend/db build: backend/db
container_name: postgres-db container_name: postgres-db
environment: environment:
POSTGRES_DB: ${POSTGRES_DB} POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: ${POSTGRES_USER} POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
ports: ports:
- "${POSTGRES_PORT}:5432" - "${POSTGRES_PORT}:5432"
volumes: volumes:
- ./backend/pgdata:/var/lib/postgresql/data - ./backend/pgdata:/var/lib/postgresql/data
api: api:
build: backend/api build: backend/api
depends_on: depends_on:
- db - db
container_name: express-api container_name: express-api
ports: ports:
- "${EXPRESS_PORT}:3000" - "${EXPRESS_PORT}:3000"
vue: vue:
build: frontend build: frontend
container_name: frontend container_name: frontend
ports: ports:
- "${FRONTEND_PORT}:8080" - "${FRONTEND_PORT}:8080"
volumes: volumes:
- ./frontend:/app - ./frontend:/app

View file

@ -43,7 +43,7 @@ var score = 0;
var paused; var paused;
var hasAlreadyScored = false; var hasAlreadyScored = false;
var hasDied = true; var hasDied = true;
var ready = true; var ready = false;
function preload(){ function preload(){
font = loadFont(FONT_PATH); font = loadFont(FONT_PATH);
@ -67,6 +67,12 @@ function setup(){
window.dispatchEvent(event); window.dispatchEvent(event);
originalSetItem.apply(this, arguments); originalSetItem.apply(this, arguments);
}; };
window.addEventListener("itemInserted", e => {
if(e.key === "frontend-ready"){
ready = e.value === "true";
score = 0;
}
})
} }
function setupObstacleConsts(){ function setupObstacleConsts(){
@ -155,13 +161,15 @@ function collisionCheck(o){
function die(){ function die(){
if(localStorage.getItem("frontend-ready") == "false") if(localStorage.getItem("frontend-ready") == "false")
return; return;
ready = false; ready = false;
hasDied = true; hasDied = true;
playTime = Date.now() - startTime; playTime = Date.now() - startTime;
exportToLocalStorage(); exportToLocalStorage();
setTimeout(function(){ setTimeout(function(){
return ready = true; if(localStorage.getItem("frontend-ready") == "true"){
return ready = true;
}
}, 1000); }, 1000);
} }
@ -208,19 +216,20 @@ function checkRaspberryScore(){
} }
function resetScore(){ function resetScore(){
if(!hasDied || localStorage.getItem("frontend-ready") == "false") if(!hasDied)
return; return;
hasDied = false; hasDied = false;
score = 0; score = 0;
hasAlreadyScored = false; hasAlreadyScored = false;
startTime = Date.now(); startTime = Date.now();
exportToLocalStorage();
} }
function keyPressed(){ function keyPressed(){
if(!ready) if(!ready){
return; return;
}
if(BOOST_KEYS.includes(key.toLowerCase())){ if(BOOST_KEYS.includes(key.toLowerCase())){
resetScore(); resetScore();
raspberry.boost(); raspberry.boost();

View file

@ -39,6 +39,7 @@ export default {
if (user) { if (user) {
this.$emit('userChange', user); this.$emit('userChange', user);
localStorage.setItem("frontend-ready", "true");
} }
}, },
} }

View file

@ -1,3 +1,3 @@
export class Rest { export class Rest {
static readonly URL = 'http://localhost:3000'; static readonly URL = 'http://139.144.178.216:3000';
} }