Files
reallife-gamemode/ReallifeGamemode.Client/FactionManagement/main.ts
2021-05-24 12:36:56 +02:00

45 lines
1.5 KiB
TypeScript

/**
* @overview Life of German Reallife - Faction Manager Main (main.js)
* @author hydrant
* @copyright (c) 2008 - 2018 Life of German
*/
export default function factionManagement(globalData: IGlobalData) {
var manageFactionRanksBrowser = null;
var rankData = null;
mp.events.add('manageFactionRanks', (ranks) => {
if (manageFactionRanksBrowser !== null) return;
manageFactionRanksBrowser = mp.browsers.new('package://assets/html/factionmanagement/ranks/index.html');
mp.gui.chat.activate(false);
rankData = JSON.parse(ranks);
});
mp.events.add('onManageFactionRanksLoaded', () => {
if (manageFactionRanksBrowser !== null) {
manageFactionRanksBrowser.execute(`setFactionName('${rankData.FactionName}')`);
manageFactionRanksBrowser.execute(`loadData(` + JSON.stringify(rankData.Ranks) + `)`);
mp.gui.cursor.show(true, true);
globalData.InMenu = true;
}
});
mp.events.add('saveFactionRankData', function (data) {
if (manageFactionRanksBrowser !== null) {
manageFactionRanksBrowser.destroy();
mp.gui.cursor.show(false, false);
mp.gui.chat.activate(true);
globalData.InMenu = false;
var obj: FactionRanks = {
factionId: rankData.FactionId,
ranks: JSON.parse(data)
};
mp.events.callRemote('OnFactionRanksEdit', JSON.stringify(obj));
manageFactionRanksBrowser = null;
}
});
}