@conquest-eth/tools 0.0.6 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/storage/json-storage.d.ts +1 -1
- package/dist/storage/json-storage.d.ts.map +1 -1
- package/dist/storage/json-storage.js +10 -2
- package/dist/storage/json-storage.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +2 -1
- package/src/storage/json-storage.ts +10 -2
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEX,WAAW,EACX,iBAAiB,EAEjB,MAAM,YAAY,CAAC;AAIpB;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEX,WAAW,EACX,iBAAiB,EAEjB,MAAM,YAAY,CAAC;AAIpB;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CA0BxF"}
|
package/dist/index.js
CHANGED
|
@@ -23,7 +23,8 @@ export async function createConquestEnv(options) {
|
|
|
23
23
|
abi: Abi_IOuterSpace,
|
|
24
24
|
};
|
|
25
25
|
const { spaceInfo, contractConfig } = await createSpaceInfo(clients, gameContract);
|
|
26
|
-
|
|
26
|
+
// Organize storage by network/contract
|
|
27
|
+
const storage = new JsonFleetStorage(storagePath, chain.id, gameContractAddress);
|
|
27
28
|
return {
|
|
28
29
|
fleetManager: new FleetManager(clients, gameContract, spaceInfo, contractConfig, storage),
|
|
29
30
|
planetManager: new PlanetManager(clients, gameContract, spaceInfo, contractConfig, storage),
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAC,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAQlD,OAAO,EAAC,eAAe,EAAC,MAAM,+CAA+C,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAA0B;IACjE,MAAM,EAAC,MAAM,EAAE,YAAY,EAAE,mBAAmB,EAAE,UAAU,EAAE,WAAW,GAAG,QAAQ,EAAC,GAAG,OAAO,CAAC;IAEhG,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,UAAU,CAAC;QAC1B,KAAK;QACL,UAAU;KACV,CAA8B,CAAC;IAEhC,MAAM,YAAY,GAAiB;QAClC,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,eAAe;KACpB,CAAC;IAEF,MAAM,EAAC,SAAS,EAAE,cAAc,EAAC,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjF,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,WAAW,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAC,gBAAgB,EAAC,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAQlD,OAAO,EAAC,eAAe,EAAC,MAAM,+CAA+C,CAAC;AAE9E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAA0B;IACjE,MAAM,EAAC,MAAM,EAAE,YAAY,EAAE,mBAAmB,EAAE,UAAU,EAAE,WAAW,GAAG,QAAQ,EAAC,GAAG,OAAO,CAAC;IAEhG,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,UAAU,CAAC;QAC1B,KAAK;QACL,UAAU;KACV,CAA8B,CAAC;IAEhC,MAAM,YAAY,GAAiB;QAClC,OAAO,EAAE,mBAAmB;QAC5B,GAAG,EAAE,eAAe;KACpB,CAAC;IAEF,MAAM,EAAC,SAAS,EAAE,cAAc,EAAC,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjF,uCAAuC;IACvC,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC;IAEjF,OAAO;QACN,YAAY,EAAE,IAAI,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,CAAC;QACzF,aAAa,EAAE,IAAI,aAAa,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,CAAC;QAC3F,SAAS;QACT,cAAc;QACd,OAAO;QACP,OAAO;KACP,CAAC;AACH,CAAC"}
|
|
@@ -5,7 +5,7 @@ export declare class JsonFleetStorage implements FleetStorage {
|
|
|
5
5
|
private dataPath;
|
|
6
6
|
private data;
|
|
7
7
|
private initialized;
|
|
8
|
-
constructor(dataDir
|
|
8
|
+
constructor(dataDir: string | undefined, chainId: number, contractAddress: string);
|
|
9
9
|
initialize(): Promise<void>;
|
|
10
10
|
private ensureInitialized;
|
|
11
11
|
private save;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-storage.d.ts","sourceRoot":"","sources":["../../src/storage/json-storage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AAQtD,qBAAa,gBAAiB,YAAW,YAAY;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,WAAW,CAAS;gBAEhB,OAAO,
|
|
1
|
+
{"version":3,"file":"json-storage.d.ts","sourceRoot":"","sources":["../../src/storage/json-storage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AAQtD,qBAAa,gBAAiB,YAAW,YAAY;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,WAAW,CAAS;gBAEhB,OAAO,EAAE,MAAM,YAAW,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM;IAa1E,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YA4BnB,iBAAiB;YAMjB,IAAI;IAKZ,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7C,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAKvD,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAOlE,mBAAmB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAQ9C,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUhE,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1D,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAMvC,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAMjD,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAK7D,uBAAuB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAOhE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAShF,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvE,mBAAmB,CACxB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC;IAWV,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvE,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1D,kBAAkB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;CAIlD"}
|
|
@@ -5,8 +5,16 @@ export class JsonFleetStorage {
|
|
|
5
5
|
dataPath;
|
|
6
6
|
data;
|
|
7
7
|
initialized = false;
|
|
8
|
-
constructor(dataDir = './data') {
|
|
9
|
-
|
|
8
|
+
constructor(dataDir = './data', chainId, contractAddress) {
|
|
9
|
+
// Organize data by network/contract in subdirectories
|
|
10
|
+
let basePath = dataDir;
|
|
11
|
+
if (chainId !== undefined) {
|
|
12
|
+
basePath = path.join(basePath, chainId.toString());
|
|
13
|
+
}
|
|
14
|
+
if (contractAddress) {
|
|
15
|
+
basePath = path.join(basePath, contractAddress.toLowerCase());
|
|
16
|
+
}
|
|
17
|
+
this.dataPath = path.join(basePath, 'conquest-data.json');
|
|
10
18
|
this.data = { fleets: {}, exits: {} };
|
|
11
19
|
}
|
|
12
20
|
async initialize() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-storage.js","sourceRoot":"","sources":["../../src/storage/json-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,IAAI,EAAE,EAAC,MAAM,IAAI,CAAC;AAClC,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,OAAO,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AAO9D,MAAM,OAAO,gBAAgB;IACpB,QAAQ,CAAS;IACjB,IAAI,CAAc;IAClB,WAAW,GAAG,KAAK,CAAC;IAE5B,YAAY,UAAkB,QAAQ;
|
|
1
|
+
{"version":3,"file":"json-storage.js","sourceRoot":"","sources":["../../src/storage/json-storage.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -34,7 +34,8 @@ export async function createConquestEnv(options: EnvFactoryOptions): Promise<Con
|
|
|
34
34
|
};
|
|
35
35
|
|
|
36
36
|
const {spaceInfo, contractConfig} = await createSpaceInfo(clients, gameContract);
|
|
37
|
-
|
|
37
|
+
// Organize storage by network/contract
|
|
38
|
+
const storage = new JsonFleetStorage(storagePath, chain.id, gameContractAddress);
|
|
38
39
|
|
|
39
40
|
return {
|
|
40
41
|
fleetManager: new FleetManager(clients, gameContract, spaceInfo, contractConfig, storage),
|
|
@@ -15,8 +15,16 @@ export class JsonFleetStorage implements FleetStorage {
|
|
|
15
15
|
private data: StorageData;
|
|
16
16
|
private initialized = false;
|
|
17
17
|
|
|
18
|
-
constructor(dataDir: string = './data') {
|
|
19
|
-
|
|
18
|
+
constructor(dataDir: string = './data', chainId: number, contractAddress: string) {
|
|
19
|
+
// Organize data by network/contract in subdirectories
|
|
20
|
+
let basePath = dataDir;
|
|
21
|
+
if (chainId !== undefined) {
|
|
22
|
+
basePath = path.join(basePath, chainId.toString());
|
|
23
|
+
}
|
|
24
|
+
if (contractAddress) {
|
|
25
|
+
basePath = path.join(basePath, contractAddress.toLowerCase());
|
|
26
|
+
}
|
|
27
|
+
this.dataPath = path.join(basePath, 'conquest-data.json');
|
|
20
28
|
this.data = {fleets: {}, exits: {}};
|
|
21
29
|
}
|
|
22
30
|
|