From 6504e44ffa97965e47e893b55621d2d04003d519 Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Wed, 15 May 2024 23:49:33 +0200 Subject: [node] Added agent class, and fixed contract updates --- nodejs/lib/agent.ts | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 nodejs/lib/agent.ts (limited to 'nodejs/lib/agent.ts') diff --git a/nodejs/lib/agent.ts b/nodejs/lib/agent.ts new file mode 100644 index 0000000..ee7200c --- /dev/null +++ b/nodejs/lib/agent.ts @@ -0,0 +1,45 @@ +import { debugLog, send } from './api.ts'; + +export class Agent { + accountId: string; + credits: number; + headquarters: string; + shipCount: number; + startingFaction: string; + symbol: string; + constructor() { + this.accountId = ""; + this.credits = 0; + this.headquarters = ""; + this.shipCount = 0; + this.startingFaction = ""; + this.symbol = ""; + } + set(agent: Agent) { + this.accountId = agent.accountId; + this.credits = agent.credits; + this.headquarters = agent.headquarters; + this.shipCount = agent.shipCount; + this.startingFaction = agent.startingFaction; + this.symbol = agent.symbol; + } +}; + +let myAgent : Agent = new Agent(); + +export function getAgent(): Agent { + return myAgent; +} + +export async function initAgent(): Promise { + const response = await send({endpoint: `/my/agent`, page: 1}); + if (response.error) { + debugLog(response); + throw response; + } + myAgent.set(response.data); +} + +export function setAgent(agent: Agent): void { + myAgent.set(agent); +} -- cgit v1.2.3