Added afk/brb
Timer messages ("Timer XX has yyy left") now get resumed after a bot restart
Alliance relay is discord compatible now. [Orgbot]
This commit is contained in:
@@ -6,6 +6,7 @@ from core.chat_blob import ChatBlob
|
||||
from core.command_param_types import Const, Character, Options, Any
|
||||
from core.conn import Conn
|
||||
from core.decorators import instance, command, setting
|
||||
from core.dict_object import DictObject
|
||||
from core.logger import Logger
|
||||
from core.lookup.character_service import CharacterService
|
||||
from core.setting_service import SettingService
|
||||
@@ -44,8 +45,8 @@ class AllianceRelay:
|
||||
100)
|
||||
self.bot.register_packet_handler(server_packets.PrivateChannelMessage.id, self.handle_private_channel_message)
|
||||
|
||||
@command(command="mrelay", params=[], access_level="admin",
|
||||
description="View the relay settings")
|
||||
@command(command="mrelay", params=[], access_level="member",
|
||||
description="View the relay settings", sub_command="info")
|
||||
def mrelay(self, request):
|
||||
def display_color(color, msg=None):
|
||||
if not msg:
|
||||
@@ -347,7 +348,8 @@ class AllianceRelay:
|
||||
name = self.format_text(self.relay_color_sender().get_value().get(priv, self.relay_color_sender().get_value().get("default")), name)
|
||||
text = self.format_text(self.relay_color_msg().get_value().get(priv, self.relay_color_msg().get_value().get("default")), text)
|
||||
formatted = self.format_text(self.relay_color_base().get_value().get(priv, self.relay_color_base().get_value().get("default")), f"[{org}] {name}: {text}")
|
||||
self.message_hub_service.send_message(self.MESSAGE_SOURCE, None, plain, formatted)
|
||||
sender = DictObject({"char_id": packet.char_id, "name": self.character_service.get_char_name(packet.char_id)})
|
||||
self.message_hub_service.send_message(self.MESSAGE_SOURCE, sender, plain, formatted)
|
||||
|
||||
def handle_relay_hub_message(self, ctx):
|
||||
enabled = lambda x: self.relay_enabled().get_value().get(x, self.relay_enabled().get_value().get('default', False))
|
||||
@@ -366,7 +368,12 @@ class AllianceRelay:
|
||||
if len(message) < 1:
|
||||
continue
|
||||
sender = ctx.sender.name
|
||||
abbrv = self.relay_guild_abbreviations().get_value().get(key, self.relay_guild_abbreviations().get_value().get("default"))
|
||||
|
||||
abbrv = self.relay_guild_abbreviations().get_value().get(key, self.setting_service.get_value("org_name"))
|
||||
if ctx.source == "private_channel":
|
||||
abbrv += " - Guest"
|
||||
elif ctx.source == "public_relay":
|
||||
abbrv += " - DC"
|
||||
cmd = self.relay_command().get_value().get(key, self.relay_command().get_value().get("default"))
|
||||
msg = f"{cmd} [{abbrv}] {sender}: {message}"
|
||||
self.send_message_to_alliance(key, msg)
|
||||
|
||||
@@ -88,7 +88,10 @@ class OrgChannelController:
|
||||
self.bot.send_org_message(msg, fire_outgoing_event=False)
|
||||
|
||||
self.message_hub_service.send_message(self.MESSAGE_SOURCE, None, None, "[<cyan>Org</cyan>] " + msg)
|
||||
od = OnlineDisplay(self.text, self.util, self.db)
|
||||
afk_list = []
|
||||
if self.online_controller:
|
||||
afk_list = self.online_controller.afk_list
|
||||
od = OnlineDisplay(self.text, self.util, self.db, afk_list)
|
||||
params = [self.bot.name, self.bot.get_char_id()]
|
||||
self.bot.send_mass_message(event_data.packet.char_id,
|
||||
od.format_blob(od.format_by_channel_main("and channel_id IN (1, 2) ", params)))
|
||||
|
||||
Reference in New Issue
Block a user