81 lines
1.9 KiB
JavaScript
81 lines
1.9 KiB
JavaScript
/* istanbul ignore file */
|
|
"use strict";
|
|
|
|
// Public modules from npm
|
|
const log4js = require("log4js");
|
|
|
|
/**
|
|
* Class containing variables shared between modules.
|
|
*/
|
|
class Shared {
|
|
//#region Properties
|
|
/**
|
|
* Indicates whether a user is logged in to the F95Zone platform or not.
|
|
* @type Boolean
|
|
*/
|
|
static #_isLogged = false;
|
|
/**
|
|
* List of possible game engines used for development.
|
|
* @type String[]
|
|
*/
|
|
static #_engines = ["ADRIFT", "Flash", "HTML", "Java", "Others", "QSP", "RAGS", "RPGM", "Ren'Py", "Tads", "Unity", "Unreal Engine", "WebGL", "Wolf RPG"];
|
|
/**
|
|
* List of possible development statuses that a game can assume.
|
|
* @type String[]
|
|
*/
|
|
static #_statuses = ["Completed", "Onhold", "Abandoned"];
|
|
/**
|
|
* Logger object used to write to both file and console.
|
|
* @type log4js.Logger
|
|
*/
|
|
static #_logger = log4js.getLogger();
|
|
//#endregion Properties
|
|
|
|
//#region Getters
|
|
/**
|
|
* Indicates whether a user is logged in to the F95Zone platform or not.
|
|
* @returns {Boolean}
|
|
*/
|
|
static get isLogged() {
|
|
return this.#_isLogged;
|
|
}
|
|
/**
|
|
* List of possible game engines used for development.
|
|
* @returns {String[]}
|
|
*/
|
|
static get engines() {
|
|
return this.#_engines;
|
|
}
|
|
/**
|
|
* List of possible development states that a game can assume.
|
|
* @returns {String[]}
|
|
*/
|
|
static get statuses() {
|
|
return this.#_statuses;
|
|
}
|
|
/**
|
|
* Logger object used to write to both file and console.
|
|
* @returns {log4js.Logger}
|
|
*/
|
|
static get logger() {
|
|
return this.#_logger;
|
|
}
|
|
//#endregion Getters
|
|
|
|
//#region Setters
|
|
static set engines(val) {
|
|
this.#_engines = val;
|
|
}
|
|
|
|
static set statuses(val) {
|
|
this.#_statuses = val;
|
|
}
|
|
|
|
static set isLogged(val) {
|
|
this.#_isLogged = val;
|
|
}
|
|
//#endregion Setters
|
|
}
|
|
|
|
module.exports = Shared;
|