Erinome Godville UI+

Материал из Энциклобогии
Перейти к навигации Перейти к поиску


Erinome Godville UI+ — расширение для браузеров, изначально основанное на Godville UI+, но получившее уже заметное количество отличий и дополнительных возможностей от оригинала.

Тема на форуме в квартале мастеровых: Erinome Godville UI+ - браузерное расширение для Годвилля (Firefox, Chrome, Opera).

_

Информеры

Дополнение может отслеживать различные события в жизни героя и выводить уведомления о них. Уведомление производится миганием иконки вкладки, и меткой в верхнем правом углу страницы. Дополнительно доступны всплывающие уведомления и звуковое уведомление.

Пользовательские информеры

Пользовательские информеры позволяют настроить уведомления на произвольный набор событий в игре.

Каждый информер описывается одной строкой в формате:

Текст уведомления | набор условий | тип информера и уведомлений

Информер можно временно отключить, закомментировав его символом # в начале строки

Несколько условий объединяются логическими операторами && (логическое «И»), || (логическое «ИЛИ») и группируются скобками. Доступно логическое отрицание «НЕ» !true = false

Так же доступны:

  • ==, !=, <, <=, >, >= ← операторы сравнения: равенство, неравенство, меньше, меньше или равно, больше, больше или равно;
  •  ~, ~* ← операторы регулярных выражений: регистрозависимое и регистронезависимое сравнение;
  •  +, -, *, / ← математические действия: сложение, вычитание, умножение, деление.

Унарные операторы (например: !x, -a):

  •  +, - ← преобразует аргумент к числу (если это требуется), позволяет инвертировать его знак;
  •  ! ← логическое отрицание.

Переменные

Полный и актуальный перечень доступных переменных находится в файле FAQ на странице дополнения.

Переменная Описание
gv.health здоровье героя
gv.healthMax максимальное здоровье героя
gv.healthPrc здоровье героя в процентах
gv.gold количество золота у героя
gv.inventory количество предметов в инвентаре
gv.inventoryMax максимальное количество предметов в инвентаре
gv.inventoryPrc количество предметов в процентах
gv.inventoryHealing количество лечебных трофеев в инвентаре
gv.supplies количество припасов в плавании
gv.suppliesMax максимальное количество припасов
gv.suppliesPrc количество припасов в процентах
gv.mileStones количество столбов до столицы в поле
gv.portDistance расстояние до порта в режиме плавания
gv.godpower количество праны
gv.godpowerMax максимальное количество праны
gv.godpowerPrc количество праны в процентах
gv.auraName название ауры, если она есть
gv.auraDuration оставшаяся длительность ауры в секундах, если она есть
gv.charges количество зарядов
gv.nearestTown название ближайшего города
gv.currentTown название текущего города, если герой в нем, иначе - пустая строка
gv.hasTemple герой имеет достроенный храм
gv.hasArk герой имеет достроенный ковчег
gv.currentMonster название монстра, если герой бьется с ним в поле, иначе - пустая строка
gv.lastNews текст строки из Вестей
gv.lastDiary текст последней строки из дневника
gv.lastGuildChat текст последних сообщений гильдчата (доступен только когда открыта вкладка гильдчата)
gv.questName название квеста
gv.questProgress прогресс выполнения квеста в процентах
gv.isGoingBack герой идет из поля в город
gv.isGoingForth герой идет из города в поле (экспериментально, может ошибаться!)
gv.isTrading герой продает трофеи (экспериментально, может ошибаться!)
gv.isFishing герой рыбачит (экспериментально, может ошибаться (особенно при лагах))
gv.dailyForecast текст астропрогноза
gv.arenaAvailable доступен поход на арену
gv.sparAvailable доступен тренировочный бой
gv.dungeonAvailable доступен поход в подземелье
gv.sailAvailable доступен заплыв в море
gv.arenaSendDelay время до доступности похода на арену (равно 0 в течение нескольких минут после выхода)
gv.sparSendDelay время до доступности тренировочного боя (равно 0 в течение нескольких минут после выхода)
gv.dungeonSendDelay время до доступности похода в подземелье (равно 0 в течение нескольких минут после выхода)
gv.sailSendDelay время до доступности заплыва в море (равно 0 в течение нескольких минут после выхода)
gv.inFight герой находится в боевом режиме
gv.inBossFight герой находится в бою с босс-монстром (любым) или корованом
gv.inTown герой находится в городе
gv.fightType тип боевого режима, возможные варианты:
monster индивидуальный босс в конце миниквеста или из боссоискательского трофея
monster_m рейдовый босс на поверхности или в подземелье
multi_monster любой корован
dungeon коридоры подземелья
sail режим плавания
challenge тренировка
town арена
"" если герой не в бою.
gv.fightStep номер шага в боевом режиме
gv.enemyHealth суммарное здоровье противников в боевом режиме
gv.enemyHealthMax максимальное суммарное здоровье противников в боевом режиме
gv.enemyHealthPrc суммарное здоровье противников в процентах (имеет смысл для одиночных противников)
gv.enemyGold количество золота у противника
gv.enemyCount количество противников (имеет смысл для корованов)
gv.enemyAliveCount количество живых противников (имеет смысл для корованов)
gv.enemyHasAbility("название способности") проверяет, имеет ли противник указанную из списка ниже способность (имеет смысл для боссов):
deafening глушащий
explosive взрывной
faithless неверующий
golden золотоносный
gp_restore лучезарный
overhearing ушастый
parasit паразитирующий
rapid_attack пробивающий
rogue тащущий
second_strike бойкий
shepherd зовущий
spender транжирящий
strong мощный
trophey_maker творящий
two_turns спешащий
cowardly драпающий
gv.enemyAbilitiesCount количество способностей у противника (имеет смысл для боссов)
gv.alliesHealth суммарное здоровье союзников в боевом режиме
gv.alliesHealthMax суммарный максимум здоровья союзников в боевом режиме
gv.alliesHealthPrc суммарное здоровье союзников в процентах (фактически, не имеет смысла)
gv.alliesCount количество союзников
gv.alliesAliveCount количество живых союзников
gv.expTimeout количество минут до окончания штрафа возложения золота в храме (или 10080, если данных нет)
gv.logTimeout количество минут до гарантированного бревна в подземелье (или 10080, если данных нет)
gv.getSeconds точное локальное время: секунды (0-59
gv.getMinutes точное локальное время: минуты (0-59)
gv.getHours точное локальное время: часы (0-23)
gv.getDay текущий день недели (1-7)
gv.windowFocused определяет, активна ли текущая вкладка браузера.

Типы информеров

Тип информера кодируется определённым числом.

Существующие на данный момент типы пользовательских информеров: 0 и 1 + необязательные модификаторы, определяющие тип уведомления.

  •  0 ← стандартный информер: включается, когда условие активации информера выполняется, выключается - когда условие активации информера перестает выполняться;
  •  1 ← неотключаемый информер: включается при выполнении условия активации информера, выключается - только когда пользователь кликнет на этот информер (или после перезагрузки страницы, когда условие перестает выполняться);
  •  16 ← стандартное уведомление (мигание заголовком + метка в углу страницы);
  •  32 ← всплывающее уведомление (для функционирования необходимо, чтобы глобальная опция разрешения всплывающих уведомлений была включена);
  •  64 ← звуковое уведомление

Тип информера равен сумме указанных выше флагов. Например, чтобы создать неотключаемый информер, уведомляющий миганием и всплывающим окном, необходимо указать тип: 49 (1+16+32).

Если модификаторы типа уведомления не указаны, то информер будет использовать набор уведомлений, выбранный для всех пользовательских информеров в общей таблице настроек информеров.

Готовые примеры