// ================================================================
// Global State & Constants
// ================================================================
window.towns = [];
window.selectedTownId = null;
window.clientOnline = false; // tracks Tampermonkey script heartbeat
window.wasClientOnline = null; // previous known state (null = unknown)
window.POLL_INTERVAL = 4000;
window.BUILDING_NAMES_GR = {
main: "Σύγκλητος",
storage: "Αποθήκη",
farm: "Φάρμα",
academy: "Ακαδημία",
temple: "Ναός",
barracks: "Στρατώνας",
docks: "Λιμάνι",
market: "Παζάρι",
hide: "Σπηλιά",
lumber: "Εργοστάσιο Ξυλοκόπων",
stoner: "Λατομείο",
ironer: "Ορυχείο Ασημιού",
wall: "Τείχος"
};
window.UNIT_NAMES_GR = {
sword: "Ξιφομάχος", slinger: "Σφενδονήτης", archer: "Τοξότης", hoplite: "Οπλίτης",
rider: "Ιππέας", chariot: "Άρμα", catapult: "Καταπέλτης", godsent: "Θεόσταλτος",
big_transporter: "Μεταφορικό", small_transporter: "Γρήγ. Μεταφορικό", bireme: "Διήρης",
attack_ship: "Πλοίο Φάρος", trireme: "Τριήρης", colonize_ship: "Αποικιακό",
medusa: "Μέδουσα", zyklop: "Κύκλωπας", harpy: "Άρπυια", pegasus: "Πήγασος",
minotaur: "Μινώταυρος", manticore: "Μαντιχώρας", cerberus: "Κέρβερος",
hydra: "Ύδρα", sea_monster: "Τέρας Θάλασσας", militia: "Εθνοφρουρά"
};
window.RES_ICONS = {
wood: '',
stone: '',
iron: '',
pop: ''
};
window.fmt = function(n) {
if (n >= 1000) return (n / 1000).toFixed(1) + 'k';
return n;
};