39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
import { userData } from "./Classes/userData";
|
|
import { lobbyMessage } from "./Classes/lobbyMessage";
|
|
import { lobbyState } from "./Classes/lobbyState";
|
|
import { playerData } from "./Classes/playerData";
|
|
import { persistentItemData } from "./Classes/itemData";
|
|
import { levelState } from "./Classes/levelState";
|
|
const fs = require('fs');
|
|
|
|
export class game{
|
|
static socketIO : any
|
|
|
|
static itemCount : number = 0
|
|
static accountsDB : userData[] = []
|
|
static playersDB : playerData[] = []
|
|
static itemsDB : persistentItemData[] = []
|
|
|
|
static lobbyState : lobbyState = new lobbyState()
|
|
|
|
/** Max items: 28 */
|
|
static messages : lobbyMessage[] = [];
|
|
|
|
static addMessage(message:lobbyMessage) {
|
|
while(game.messages.length >= 20){
|
|
game.messages.pop();
|
|
}
|
|
|
|
game.messages.unshift(message)
|
|
game.socketIO.emit('lobby/messages', JSON.stringify(game.messages))
|
|
}
|
|
|
|
static getItemTemplate(templateId){
|
|
let item = this.itemsDB.find(i=>i.id == templateId)
|
|
if (item == null){
|
|
console.log("Error, item " + templateId + " not found")
|
|
return null
|
|
}
|
|
return item
|
|
}
|
|
} |