UNPKG

ggejs

Version:

A powerful Node.js module for interacting with the server of Goodgame Empire & Goodgame Empire: Four Kingdoms

64 lines (59 loc) 2.69 kB
const {allianceHelpAll} = require("../aha"); module.exports.name = "ahh"; /** * @param {BaseClient} client * @param {number} errorCode * @param {{LID:number, AC:number, PN:string, P:number, PID: number, TID: number, OP: Object, RT: number, TSL: number}} params */ module.exports.execute = function (client, errorCode, params) { if (!params) return; /* todo: const listId = params.LID; let allianceHelpRequest = allianceHelpData.getRequestVOByListID(listId); if (allianceHelpRequest) { parseAllianceHelpRequest(client, allianceHelpRequest, params); } else { allianceHelpRequest = new AllianceHelpRequest(); parseAllianceHelpRequest(client, allianceHelpRequest, params); allianceHelpData.allianceHelpRequests.push(allianceHelpRequest); } */ // TODO: REMOVE below because not part of source code // TODO: re-enable if (params["AC"] === 0) allianceHelpAll(client); } // TODO: Move to seperate parser file /** * @param {BaseClient} client * @param {AllianceHelpRequest} allianceHelpRequest * @param {{AC: number, LID:number, PN:string, P:number, PID: number, TID: number, OP: Object, RT: number, TSL: number}} helpRequest */ function parseAllianceHelpRequest(client, allianceHelpRequest, helpRequest) { const playerId = client.clientUserData.playerId; allianceHelpRequest.alreadyConfirmed = helpRequest["AC"]; allianceHelpRequest.listID = helpRequest["LID"]; allianceHelpRequest.playerName = helpRequest["PN"]; allianceHelpRequest.progress = helpRequest["P"]; allianceHelpRequest.playerId = helpRequest["PID"]; allianceHelpRequest.requestTypeId = helpRequest["TID"]; allianceHelpRequest.optionalParams = helpRequest["OP"]; allianceHelpRequest.neededProgress = getNeededProgress(allianceHelpRequest.requestTypeId); allianceHelpRequest.isOwnPlayer = allianceHelpRequest.playerId === playerId; allianceHelpRequest.expirationTime = helpRequest["RT"] === -1 ? -1 : getTimer() + helpRequest["RT"] * 1000; allianceHelpRequest.timeSinceLastHelp = getTimer() + helpRequest["TSL"] * 1000; } module.exports.parseAllianceHelpRequest = parseAllianceHelpRequest /** * @param {number} requestTypeId * @return {number} */ function getNeededProgress(requestTypeId) { let i = 0; const allianceHelpTypes = allianceHelpData.allianceHelpTypeVOs; while (i < allianceHelpTypes.length) { if (allianceHelpTypes[i].allianceHelpRequestID === requestTypeId) { return allianceHelpTypes[i].maxHelpersCount; } i++; } return -1; }