API пакета gvapi

Модуль gvapi.hero

Основной модуль пакета, в котором описан класс Hero

class gvapi.hero.Hero(god: str, token: str = None, api_url: str = 'https://godville.net/gods/api', threshold: int = 300)
Базовые классы: object

Герой игры Годвилль

Через данный класс осуществляется доступ к данным героя.

Параметры:
  • god – Имя божества героя
  • token – Токен для доступа к API, optional
  • api_url – URL для доступа к API, optional
  • threshold – Задержка обновления данных о герое в секундах, optional
activatables

Список активируемых предметов.

Type:list
alignment

Характер героя.

Type:str
arena

число побед и поражений на арене.

Type:tuple
ark

Число тварей(ж, м)

Type:tuple
ark_completed_at

Дата постройки ковчега.

Type:str
aura

Аура, если отсутствует - пустая строка

Type:str
boss_name

Имя собранного в лаборатории босса.

Type:str
boss_power

Мощь собранного в лаборатории босса.

Type:str
bricks

Число кирпичей для храма.

Type:int
bricks_percent

Число кирпичей для храма в процентах.

Type:float
clan

Название гильдии героя.

Type:str
clan_pos

Ранг героя в гильдии.

Type:str
diary_last

Последняя запись в дневнике.

Type:str
distance

Дистанция до столицы, при нахождении в любом городе - 0.

Type:int
exp

Прогресс опыта.

Type:int
expired

Флаг актуальности данных, True в случае, когда данные неакутальны.

Type:bool
fight_type

Тип боя

Type:str
from_last_updated

Количество секунд, прошедших с последнего обновления данных.

Type:int
gender

Пол героя.

Type:str
godpower

Количество праны.

Type:int
godpower_percent

Количество праны в процентах.

Type:int
gold

Примерное количество золота.

Type:str
goldf

Приверное количество золота, отформатированное в тысячи.

Type:float
health

Количество очков здоровья героя.

Type:int
health_percent

Количество очков здоровья героя в процентах.

Type:float
inventory

Корнеж из количества предметов в инвентаре, максимального количества предметов и количества активируемых предметов.

Type:tuple
inventory_max_num

Максимальное количество предметов в инвентаре.

Type:int
inventory_num

Количество предметов в инвентаре.

Type:int
is_alive

Жив ли герой.

Type:bool
is_fighting

Находится ли герой в бою(арена, босс, заплыв, подземка).

Type:bool
last_upd

Время последнего обновления данных.

Type:datetime
level

Уровень героя.

Type:int
lock

Заблокированы ли запросы к API.

Type:bool
max_godpower

Максимальное количество праны.

Type:int
max_health

Максимальное количество очков здоровья героя.

Type:int
motto

Девиз героя.

Type:str
name

Имя героя.

Type:str
quest

Текст текущего задания.

Type:str
quest_progress

Процесс выполнения задания в процентах.

Type:float
savings

Примерное число сбережений.

Type:str
savings_completed_at

Дата окончания сбора пенсии.

Type:str
savingsf

Отформатированное в миллионы число сбережений

Type:float
shop_name

Название лавки, только у пенсионеров.

Type:str
sync() → None

Синхронизировать данные

Произвести синхронизацию данных. Синхронизация производится только в случае если прошла задержка обновления данных(threshold).

t_level

Троговый уровень.

Type:int
temple_completed_at

Когда был достроен храм.

Type:str
threshold

Задержка обновления данных о герое в секундах.

Type:int
token

Токен в защищенном формате(не скрыты только последние 4 символа). Если токен не используется, то возвращает None

Type:str
town_name

Имя города, пустая строка если в поле или в бою.

Type:str
wood_count

Количество поленьев.

Type:int
words

Количество слов в книге.

Type:int

Модуль gvapi.pet

class gvapi.pet.Pet(hero)
Базовые классы: object

Класс питомца

Питомец героя, может существовать только как один из атрибутов героя.

Параметры:hero (Hero) – экземпляр класса героя, которому принадлежит данный питомец
class_name

Вид питомца.

Type:str
level

Уровень питомца.

Type:int
name

Имя питомца.

Type:str
wounded

Контужен ли питомец.

Type:bool

Модуль gvapi.util

В данном модуле расположены всякие штучки, в часности декораторы необходимые для корректной работы классов Hero и Pet

gvapi.util.syncing(func: Callable[[Any], Any]) → Callable[[Any], Any]

Декоратор для принудительной синхронизации при вызове метода.

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

Параметры:func – декорируемый метод
Результат:метод, обернутый в декоратор
gvapi.util.tokenized(func: Callable[[Any], Any]) → Callable[[Any], Any]

Декоратор для метода, требующего использования токена.

При вызове метода, обернутого в данный декоратор, произойдет проверка на наличие токена в классе переданного метода.

Параметры:

func – декорируемый метод

Результат:

метод, обернутый в декоратор

Исключение:
  • NeedToken – в случае, если производится обращение к атрибуту, доступному только при использовании токена, без использования токена.
  • InvalidToken – в случае, если токен невалиден или был сброшен.

Модуль gvapi.errors

Модуль с исключениями.

В данном модуле описаны исключения, использующиеся в пакете.

exception gvapi.errors.APIUnavailable(exc: Exception, message: str = 'API Недоступно {}')
Базовые классы: gvapi.errors.GVAPIException

API недоступно.

exception gvapi.errors.GVAPIException
Базовые классы: Exception

Общее исключение пакета. От данного исключения наследуются остальные исключения пакета.

exception gvapi.errors.InvalidToken(token: str, message: str = 'Токен {} невалиден или был сброшен')
Базовые классы: gvapi.errors.GVAPIException

Токен невалилен или был сброшен.

exception gvapi.errors.MinThresholdException
Базовые классы: gvapi.errors.GVAPIException

Порог обновления меньше минимального значения.

exception gvapi.errors.NeedToken(message: str = 'Для доступа к данному атрибуту необходим токен')
Базовые классы: gvapi.errors.GVAPIException

Для доступа необходим токен.

exception gvapi.errors.TheArkIsUndone
Базовые классы: gvapi.errors.GVAPIException

Ковчег еще не построен.

exception gvapi.errors.TheSavingsInUndone
Базовые классы: gvapi.errors.GVAPIException

Сбережения(пенсия) еще не собраны.

exception gvapi.errors.TheTempleIsUndone
Базовые классы: gvapi.errors.GVAPIException

Храм еще не построен.

exception gvapi.errors.UnexpectedAPIResponse(resp: requests.models.Response, message: str = 'Непредвиденный ответ API {}: {}')
Базовые классы: gvapi.errors.GVAPIException

Непредвиденный ответ API.

exception gvapi.errors.UnknownGod(god: str, message: str = 'Божество {} не было найдено.')
Базовые классы: gvapi.errors.GVAPIException

Бог не был найден.