diff options
Diffstat (limited to 'src/guest.mjs')
| -rw-r--r-- | src/guest.mjs | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/src/guest.mjs b/src/guest.mjs index ba9e8cc..c82d115 100644 --- a/src/guest.mjs +++ b/src/guest.mjs @@ -1,11 +1,22 @@ import { Manager } from "./utils.mjs"; export class Guest { - constructor(id, name, level, status, totalPlayed) { + maxGuestCount = 12; + categoryCount = 3; + + categories = { + 0: { description: "Beginner", level: 1 }, + 1: { description: "Novice", level: 3 }, + 2: { description: "Intermediate", level: 6 }, + }; + + constructor(id, status, totalPlayed) { this.id = id; this.status = typeof status !== "undefined" ? status : false; - this.name = name; - this.level = typeof level !== "undefined" ? level : 1; + const categoryId = Math.floor(id / (12 / this.categoryCount)); + const guestIdentifier = (id % (12 / this.categoryCount)) + 1; + this.name = this.categories[categoryId].description + " " + guestIdentifier; + this.level = this.categories[categoryId].level; this.totalPlayed = typeof totalPlayed !== "undefined" ? status : 0; } toggle() { @@ -19,7 +30,7 @@ export class Guest { render() { let color = this.status ? "is-success" : "is-danger"; let type = `class="button is-medium ${color}"`; - return `<button id=${"regular_" + this.id} ${type}>${this.name}</button>`; + return `<button id=${"guest_" + this.id} ${type}>${this.name}</button>`; } } @@ -35,21 +46,17 @@ export class GuestManager extends Manager { } for (let i = 0; i < data.length; i++) { let id = Number(data[i].id); - let name = data[i].name; - let level = data[i].level; let status = data[i].status; let totalPlayed = data[i].totalPlayed; - this.listData.push(new Player(id, name, level, status, totalPlayed)); + this.listData.push(new Guest(id, status, totalPlayed)); } console.log("Loaded " + this.listData.length + " players."); this.render(); } generate() { console.log("Generating guest data."); - let maxPlayerCount = 12; - for (let i = 0; i < maxPlayerCount; i++) { - let level = i < 3 ? 1 : ( i < 6 ? 3 : 7); - let p = new Player(i, "Player " + i, level, false, 0); + for (let i = 0; i < new Guest(0, false).maxGuestCount; i++) { + let p = new Guest(i, false, 0); this.listData.push(p); } console.log("Generated data for " + this.listData.length + " guest"); @@ -66,4 +73,4 @@ export class GuestManager extends Manager { }); return players; } -}
\ No newline at end of file +} |
