ФЭНДОМ


Основной глобальный игровой объект, содержащий всю игровую информацию.

ОбъектыПравить

Game.constructionSitesПравить

object<string, ConstructionSite>


Хэш, содержащий все ваши постройки с их ID в качестве хэш-ключей.

Game.cpuПравить

object


Объект, содержащий сведения об использовании ЦП со следующими свойствами:

Свойство Тип Описание
limit number Ограничение ЦП для текущего мира (шарда).
tickLimit number Доступное процессорное время на текущем игровом тике.
bucket number Объем неиспользуемого процессора, накопленный в "ведре".
shardLimits object<string,number> Объект с ограничениями для каждого мира (шарда) с именами миров (шардов) в качестве ключей. Вы можете использовать метод "setShardLimits", чтобы переназначить их.

Game.creepsПравить

object<string, Creep Creep>



Хэш, содержащий всех ваших крипов с их именами в качестве хэш-ключей.

Пример:

for(const i in Game.creeps) {
   Game.creeps[i].moveTo(flag);
}

Game.flagsПравить

object<string, Flag>


Хэш, содержащий все ваши флаги с их именами в качестве хэш-ключей.

Пример:

creep.moveTo(Game.flags.Flag1);

Game.gclПравить

object


Ваш глобальный уровень управления.

Объект со следующими свойствами:

Свойство Тип Описание
level number Текущий уровень.
progress number Текущий прогресс к следующему уровню.
progressTotal number Прогресс, необходимый для достижения следующего уровня.

Game.mapПравить

object


Глобальный объект, представляющий карту мира.

Game.marketПравить

object


Глобальный объект, представляющий внутриигровой рынок (магазин).

Game.resourcesПравить

object


Объект с глобальными ресурсами, привязанными к учетной записи. Каждый ключ объекта является константой ресурса, а значения - суммами ресурсов.

Game.roomsПравить

object<string, Room>


Хэш, содержащий все доступные вам комнаты с именами комнат в качестве хэш-ключей. Комната видна, если у вас в ней есть крип или принадлежащая вам структура.

Game.shardПравить

object


Объект, описывающий сегмент мира (шард), в котором в данный момент выполняется сценарий.

Свойство Тип Описание
name string Название (имя) сигмента мира (шарда).
type string В настоящее время всегда равен "normal".
ptr boolean Пренадлежит ли шард к тестовому.

Game.spawnsПравить

object<string, StructureSpawn>


Хэш, содержащий все ваши спавны с их именами в качестве хэш-ключей.

Game.structuresПравить

object<string, Structure>


Хэш, содержащий все ваши структуры с идентификатором структуры в качестве хэш-ключей.

Game.timeПравить

number


Системный счетчик игровых тиков. Он автоматически увеличивается на каждом ТИКе.

Пример:

console.log(Game.time);

СвойстваПравить

Game.cpu.getHeapStatistics()Править

Этот метод доступен только в том случае, если для виртуальной машины установлено значение «Изолированный» в настройках среды выполнения вашей учетной записи.

Game.cpu.getUsed() Править

Получить количество времени процессора, используемого с начала текущего игрового тика. Всегда возвращает 0 в режиме симуляции. Возвращаемое значение: Возвращает текущее время ЦП в виде числа с плавающей запятой.

Пример:

if(Game.cpu.getUsed() > Game.cpu.tickLimit / 2) {
    console.log("Уже используется половина ЦП!");
}
for(const name in Game.creeps) {
    const startCpu = Game.cpu.getUsed();

    // creep logic goes here

    const elapsed = Game.cpu.getUsed() - startCpu;
    console.log('Крип '+name+' уже использовал '+elapsed+' времени ЦП');
}

Game.cpu.setShardLimits(limits) Править

Выделение лимитов ЦП для различных шардов. Общее количество процессора должно оставаться равным "Game.cpu.shardLimits". Этот метод можно использовать только раз в 12 часов.

Параметр Тип Описание
limits object<string, number> Объект со значениями процессора для каждого шарда в том же формате, что и "Game.cpu.shardLimits".
Возвращаемые значения
Константа Значение Описание
OK 0 Операция была успешно запланирована.
ERR_BUSY -4 12-часовой период восстановления еще не закончился.
ERR_INVALID_ARGS -10 Аргумент не является допустимым объектом ограничения шарда.

Пример:Править

Game.cpu.setShardLimits({shard0: 20, shard1: 10});

Game.getObjectById(id)Править

Получить объект с указанным уникальным ID. Это может быть игровой объект любого типа. Вам могут быть доступны лишь объекты в тех комнатах, которые вам видны.

Параметр Тип Описание
id string Уникальный идентификатор

Возвращает экземпляр объекта или "null", если его не удается найти.

Пример:

creep.memory.sourceId = creep.pos.findClosestByRange(FIND_SOURCES).id;
const source = Game.getObjectById(creep.memory.sourceId);

Game.notify(message, [groupInterval])Править

Отправить пользовательское сообщение на ваш профиль электронной почты. Таким образом, вы можете настроить уведомления для себя по любому поводу в игре. Вы можете запланировать до 20 уведомлений во время одного игрового тика. Недоступно в комнате моделирования.

Параметр Тип Описание
message string Произвольный текст, который будет отправлен в сообщении. Максимальная длина-1000 символов.
groupInterval number Если задано значение 0 (по умолчанию), уведомление будет отправлено сразу. В противном случае оно будет сгруппировано с другими уведомлениями и отправлено позже, используя указанное время в минутах.

Примеры:

if(creep.hits < creep.memory.lastHits) {
    Game.notify('Крип '+creep+' был атакован в '+creep.pos+'!');
}
creep.memory.lastHits = creep.hits;
if(Game.spawns['Spawn1'].energy == 0) {
    Game.notify(
        'В Spawn1 закончилась энергия',
        180  // группировка уведомлений в 3 часа
    );
}