@events.disconnectотменить нельзя2 методаКогда игрока отключило от сервера: кик, обрыв связи или выход своими руками.
Приходит раньше, чем встаёт экран отключения, поэтому прямо из обработчика можно перезайти: client.reconnect() вернёт на тот же сервер.
На этом делают автозаход после кика, отметку о причине выхода, паузу для скриптов, которым нечего делать вне игры.
| Метод | Возвращает | Зачем |
|---|---|---|
getReason() | Text | Причина так, как её показал бы экран отключения |
getAddress() | str | None | Адрес сервера, с которого выкинуло |
mod = Module("AutoReconnect", "Other")
@events.disconnect
def on_disconnect(event):
if not mod.isEnabled():
return
reason = str(event.getReason().getString())
print("Выкинуло: " + reason)
# не лезем обратно, если это бан
if "бан" in reason.lower() or "ban" in reason.lower():
return
client.reconnect(3.0)Общий список всех событий и правила подписки лежат на странице События.