fix 2 storage
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @name Grepolis Remote Control
|
// @name Grepolis Remote Control
|
||||||
// @namespace http://tampermonkey.net/
|
// @namespace http://tampermonkey.net/
|
||||||
// @version 1.1
|
// @version 1.2
|
||||||
// @description Polls grepo.haunter-pets.top for remote commands and executes them in-game
|
// @description Polls grepo.haunter-pets.top for remote commands and executes them in-game
|
||||||
// @author Dimitrios
|
// @author Dimitrios
|
||||||
// @match https://*.grepolis.com/game/*
|
// @match https://*.grepolis.com/game/*
|
||||||
@@ -110,13 +110,38 @@
|
|||||||
log(`Failed to gather build data: ${e}`);
|
log(`Failed to gather build data: ${e}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ---- Storage capacity -----------------------------------------------
|
||||||
|
// res.storage / res.storage_capacity are always 0 in Grepolis.
|
||||||
|
// Real capacity lives in GameData keyed by the storage building level.
|
||||||
|
let storageCapacity = 0;
|
||||||
|
try {
|
||||||
|
// Strategy 1: dedicated getter (exists on some server versions)
|
||||||
|
storageCapacity = town.getStorageCapacity?.() || 0;
|
||||||
|
|
||||||
|
// Strategy 2: GameData.buildingData.storage.max_storage[level]
|
||||||
|
if (!storageCapacity) {
|
||||||
|
const storageLevel = buildings.storage ?? 0;
|
||||||
|
const gd = uw.GameData?.buildingData?.storage;
|
||||||
|
storageCapacity = gd?.max_storage?.[storageLevel]
|
||||||
|
|| gd?.storage?.[storageLevel]
|
||||||
|
|| 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Strategy 3: resource object fallback keys
|
||||||
|
if (!storageCapacity) {
|
||||||
|
storageCapacity = res.capacity || res.storage_capacity || res.storage || 0;
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
log(`storage capacity lookup failed: ${e}`);
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
town_id: town.id,
|
town_id: town.id,
|
||||||
town_name: town.name,
|
town_name: town.name,
|
||||||
wood: res.wood,
|
wood: res.wood,
|
||||||
stone: res.stone,
|
stone: res.stone,
|
||||||
iron: res.iron,
|
iron: res.iron,
|
||||||
storage: res.storage || res.storage_capacity || 0,
|
storage: storageCapacity,
|
||||||
population: res.population,
|
population: res.population,
|
||||||
points: town.getPoints?.() ?? 0,
|
points: town.getPoints?.() ?? 0,
|
||||||
god: town.god?.() ?? null,
|
god: town.god?.() ?? null,
|
||||||
|
|||||||
Reference in New Issue
Block a user