blob: 57eb2373bab00b5c855d7fa0a877d6ca8b2cb9b2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
import { Manager } from "./utils.mjs";
import { Guest } from "./data";
export class GuestManager extends Manager {
constructor() {
super("guest", []);
console.log("Loading guest data.");
let tempGuest = new Guest();
let data = JSON.parse(localStorage.getItem(tempGuest.description));
if (data === null || data.length === 0) {
console.log("Guest data unavailable: " + data);
this.generate();
return;
}
console.log(tempGuest.description);
for (let i = 0; i < data.length; i++) {
console.log(data[i]);
let id = Number(data[i].id);
let status = Boolean(Number(data[i].status));
let games = data[i].games;
this.data.push(new Guest(id, status, games));
}
console.log("Loaded " + this.data.length + " players.");
this.render();
}
generate() {
console.log("Generating guest data.");
const tempGuest = new Guest(0, false);
const totalGuestCount = tempGuest.maxCount * tempGuest.categoryCount;
for (let i = 0; i < totalGuestCount; i++) {
let p = new Guest(i, false, 0);
this.data.push(p);
}
console.log("Generated data for " + this.data.length + " guest");
this.store();
this.render();
}
active(factor) {
factor = typeof factor !== "undefined" ? factor : 1;
let data = super.active();
console.log("Normalize skill by a factor of " + factor + ".");
let players = data.map(function (p) {
p.skill = Math.ceil(p.skill / factor);
return p;
});
return players;
}
}
|