Files

41 lines
1.3 KiB
TypeScript

/** Same order and names as module/config.lua and module/locale/en.cfg */
export const statistics: [name: string, title: string][] = [
["Playtime", "Playtime"],
["AfkTime", "AFK Time"],
["MapsPlayed", "Maps Played"],
["JoinCount", "Join Count"],
["ChatMessages", "Messages"],
["CommandsUsed", "Commands"],
["RocketsLaunched", "Rockets Launched"],
["ResearchCompleted", "Research Completed"],
["MachinesBuilt", "Machines Built"],
["MachinesRemoved", "Machines Removed"],
["TilesBuilt", "Tiles Placed"],
["TilesRemoved", "Tiles Removed"],
["TreesDestroyed", "Trees Destroyed"],
["OreMined", "Ore Mined"],
["ItemsCrafted", "Items Crafted"],
["ItemsPickedUp", "Items Picked Up"],
["Kills", "Kills"],
["Deaths", "Deaths"],
["DamageDealt", "Damage Dealt"],
["DistanceTravelled", "Distance Travelled"],
["CapsulesUsed", "Capsules Used"],
["EntityRepaired", "Machines Repaired"],
["DeconstructionPlannerUsed", "Decon Planner Used"],
["MapTagsMade", "Map Tags Created"],
];
/** Measured in minutes */
const timeStatistics = new Set(["Playtime", "AfkTime"]);
export function formatValue(name: string, value: number) {
if (timeStatistics.has(name)) {
return `${Math.floor(value / 60)} h ${value % 60} m`;
}
if (name === "DistanceTravelled") {
return `${value.toLocaleString()} tiles`;
}
return value.toLocaleString();
}