From 250887e2bbfc80a73c15de894d014399f9ff7462 Mon Sep 17 00:00:00 2001 From: Minidodo Date: Sat, 16 Apr 2022 15:41:40 +0200 Subject: [PATCH] fix for double blob spam (temp) --- core/text.py | 2 +- modules/core/accounting/alts_controller.py | 2 +- .../private_channel_controller.py | 42 +++++++++---------- modules/onlinebot/online/online_controller.py | 1 + modules/orgbot/org/online_controller.py | 21 ---------- modules/orgbot/org/org_controller.py | 34 +++++++-------- modules/standard/online/online_controller.py | 6 ++- .../whois/character_info_controller.py | 6 +-- 8 files changed, 48 insertions(+), 66 deletions(-) diff --git a/core/text.py b/core/text.py index d94a948..44f7ae5 100644 --- a/core/text.py +++ b/core/text.py @@ -152,7 +152,7 @@ class Text: elif char_info.name: msg = f"{char_info.name}" else: - msg = f"CharId({char_info.char_id:d})" + msg = f"CharId({char_info.char_id})" if check_ban and self.ban: banned = f" :: Banned!" if self.ban.get_ban(char_info.char_id) else "" msg += banned diff --git a/modules/core/accounting/alts_controller.py b/modules/core/accounting/alts_controller.py index 5460794..76e49f6 100644 --- a/modules/core/accounting/alts_controller.py +++ b/modules/core/accounting/alts_controller.py @@ -189,7 +189,7 @@ class AltsController: f":: <{alt.faction.lower()}>{name}" if alt.org_name != "": blob += f" [<{alt.faction.lower()}>{alt.org_name} - " \ - f"{alt.org_rank_id + 1}]" + f"{alt.org_rank_id}]" if self.buddy_service.is_online(alt.char_id): blob += " [Online]" blob += "\n" diff --git a/modules/core/private_channel/private_channel_controller.py b/modules/core/private_channel/private_channel_controller.py index 944496d..65e7dd1 100644 --- a/modules/core/private_channel/private_channel_controller.py +++ b/modules/core/private_channel/private_channel_controller.py @@ -24,7 +24,7 @@ from modules.standard.online.online_display import OnlineDisplay @instance() class PrivateChannelController: MESSAGE_SOURCE = "private_channel" - PRIVATE_CHANNEL_PREFIX = "[Priv] " + PRIVATE_CHANNEL_PREFIX = "[Priv]" def inject(self, registry): self.bot: IgnCore = registry.get_instance("bot") @@ -192,7 +192,7 @@ class PrivateChannelController: char_name = self.character_service.resolve_char_to_name(event_data.char_id) sender = DictObject({"char_id": event_data.char_id, "name": char_name}) char = self.text.make_charlink(char_name) - formatted_message = f"{self.PRIVATE_CHANNEL_PREFIX}{char}: {event_data.message}" + formatted_message = f"{self.PRIVATE_CHANNEL_PREFIX} {char}: {event_data.message}" self.message_hub_service.send_message(self.MESSAGE_SOURCE, sender, event_data.message, formatted_message) @event(event_type=PrivateChannelService.JOINED_PRIVATE_CHANNEL_EVENT, @@ -214,7 +214,7 @@ class PrivateChannelController: msg = f"{self.text.format_char_info(self.pork.get_character_info(event_data.char_id))} joined us {info}" self.bot.send_private_channel_message(msg, fire_outgoing_event=False) - self.message_hub_service.send_message(self.MESSAGE_SOURCE, None, msg, self.PRIVATE_CHANNEL_PREFIX + msg) + self.message_hub_service.send_message(self.MESSAGE_SOURCE, None, msg, self.PRIVATE_CHANNEL_PREFIX + " " + msg) afk_list = {} if self.online_controller: afk_list = self.online_controller.afk_list @@ -237,25 +237,25 @@ class PrivateChannelController: def outgoing_private_channel_message_event(self, _, event_data): if isinstance(event_data.message, ChatBlob): - pages = self.text.paginate(event_data.message, - self.setting_service.get("org_channel_max_page_length").get_value()) - if len(pages) < 4: - for page in pages: - # message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=page) - event_data.message.page_prefix = self.PRIVATE_CHANNEL_PREFIX + " " + event_data.message.page_prefix - self.message_hub_service.send_message(self.MESSAGE_SOURCE, - None, - page, - event_data.message) - else: - # message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=event_data.message.title) - event_data.message.page_prefix = self.PRIVATE_CHANNEL_PREFIX + " " + event_data.message.page_prefix - self.message_hub_service.send_message(self.MESSAGE_SOURCE, - None, - event_data.message.title, - event_data.message) + # pages = self.text.paginate(event_data.message, + # self.setting_service.get("org_channel_max_page_length").get_value()) + # if len(pages) < 4: + # for page in pages: + # # message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=page) + # event_data.message.page_prefix = self.PRIVATE_CHANNEL_PREFIX + " " + event_data.message.page_prefix + # self.message_hub_service.send_message(self.MESSAGE_SOURCE, + # None, + # page, + # event_data.message) + # else: + # message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=event_data.message.title) + event_data.message.page_prefix = self.PRIVATE_CHANNEL_PREFIX + " " + event_data.message.page_prefix + self.message_hub_service.send_message(self.MESSAGE_SOURCE, + None, + event_data.message.title, + event_data.message) else: - message = "{priv}{message}".format(priv=self.PRIVATE_CHANNEL_PREFIX, message=event_data.message) + message = "{priv} {message}".format(priv=self.PRIVATE_CHANNEL_PREFIX, message=event_data.message) self.message_hub_service.send_message(self.MESSAGE_SOURCE, None, message, diff --git a/modules/onlinebot/online/online_controller.py b/modules/onlinebot/online/online_controller.py index 52466ae..9d99fdb 100644 --- a/modules/onlinebot/online/online_controller.py +++ b/modules/onlinebot/online/online_controller.py @@ -13,6 +13,7 @@ class OrgOnlineController(OnlineController): access_level="member") def online_all_cmd(self, request, const_all, min_level, profession): query = "" + const_all = True if request.channel == "discord" and const_all else False params = [self.bot.name, self.bot.get_char_id()] priv = self.priv.in_private_channel(request.sender.char_id) if priv: diff --git a/modules/orgbot/org/online_controller.py b/modules/orgbot/org/online_controller.py index 171ec99..a3fd409 100644 --- a/modules/orgbot/org/online_controller.py +++ b/modules/orgbot/org/online_controller.py @@ -50,24 +50,3 @@ class OrgOnlineController(OnlineController): if entry.logon: return f"Your current logoff message is: {entry.logon}" return f"You do not have a logoff message set." - - @command(command="online", params=[Const('all', is_optional=True), - Int("min_level", is_optional=True), - Any("profession", is_optional=True)], - description="shows online players", - access_level="member") - def online_all_cmd(self, request, const_all, min_level, profession): - query = "" - params = [self.bot.name, self.bot.get_char_id()] - if const_all: - query += "and channel_id IN (1, 2, 3) " - else: - query += "and channel_id IN (1, 2) " - if min_level: - query += "and p.level >= ? " - params.append(min_level) - if profession: - query += "and p.profession = ? " - params.append(self.util.get_profession(profession)) - blob = self.online_display.format_by_channel_main(query, params) - request.reply(self.online_display.format_blob(blob)) diff --git a/modules/orgbot/org/org_controller.py b/modules/orgbot/org/org_controller.py index 825d4a9..926dd84 100644 --- a/modules/orgbot/org/org_controller.py +++ b/modules/orgbot/org/org_controller.py @@ -116,23 +116,23 @@ class OrgChannelController: is_hidden=True) def outgoing_org_message_event(self, _, event_data): if isinstance(event_data.message, ChatBlob): - pages = self.text.paginate(event_data.message, - self.setting_service.get("org_channel_max_page_length").get_value()) - if len(pages) < 4: - for page in pages: - # message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=page) - event_data.message.page_prefix = self.ORG_CHANNEL_PREFIX + " " + event_data.message.page_prefix - self.message_hub_service.send_message(self.MESSAGE_SOURCE, - None, - page, - event_data.message) - else: - # message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=event_data.message.title) - event_data.message.page_prefix = self.ORG_CHANNEL_PREFIX + " " + event_data.message.page_prefix - self.message_hub_service.send_message(self.MESSAGE_SOURCE, - None, - event_data.message.title, - event_data.message) + # pages = self.text.paginate(event_data.message, + # self.setting_service.get("org_channel_max_page_length").get_value()) + # if len(pages) < 4: + # for page in pages: + # # message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=page) + # event_data.message.page_prefix = self.ORG_CHANNEL_PREFIX + " " + event_data.message.page_prefix + # self.message_hub_service.send_message(self.MESSAGE_SOURCE, + # None, + # page, + # event_data.message) + # else: + # message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=event_data.message.title) + event_data.message.page_prefix = self.ORG_CHANNEL_PREFIX + " " + event_data.message.page_prefix + self.message_hub_service.send_message(self.MESSAGE_SOURCE, + None, + event_data.message.title, + event_data.message) else: message = "{org} {message}".format(org=self.ORG_CHANNEL_PREFIX, message=event_data.message) self.message_hub_service.send_message(self.MESSAGE_SOURCE, diff --git a/modules/standard/online/online_controller.py b/modules/standard/online/online_controller.py index 479b50a..7b05564 100644 --- a/modules/standard/online/online_controller.py +++ b/modules/standard/online/online_controller.py @@ -6,6 +6,7 @@ from core.bot_status import BotStatus from core.buddy_service import BuddyService from core.command_alias_service import CommandAliasService from core.command_param_types import Int, Any, Const, Options +from core.command_request import CommandRequest from core.db import DB from core.decorators import instance, event, command from core.dict_object import DictObject @@ -108,8 +109,9 @@ class OnlineController: Any("profession", is_optional=True)], description="shows online players", access_level="member") - def online_all_cmd(self, _, const_all, min_level, profession): + def online_all_cmd(self, request: CommandRequest, const_all, min_level, profession): query = "" + const_all = True if request.channel == "discord" and const_all else False params = [self.bot.name, self.bot.get_char_id()] if const_all: query += "and channel_id IN (1, 2, 3) " @@ -122,7 +124,7 @@ class OnlineController: query += "and p.profession = ? " params.append(self.util.get_profession(profession)) blob = self.online_display.format_by_channel_main(query, params) - _.reply(self.online_display.format_blob(blob)) + request.reply(self.online_display.format_blob(blob)) @command(command="count", params=[Options(["org", "prof", "tl"], is_optional=True), Any("filter", is_optional=True)], diff --git a/modules/standard/whois/character_info_controller.py b/modules/standard/whois/character_info_controller.py index 264e461..6302945 100644 --- a/modules/standard/whois/character_info_controller.py +++ b/modules/standard/whois/character_info_controller.py @@ -87,11 +87,11 @@ class CharacterInfoController: blob += f"Faction: {self.text.get_formatted_faction(char_info.faction)}\n" blob += f"Breed: {char_info.breed}\n" blob += f"Gender: {char_info.gender}\n" - blob += f"Level: {char_info.level:d}\n" + blob += f"Level: {char_info.level}\n" blob += f"AI Level: {char_info.ai_level:d}\n" if char_info.org_id: - blob += f"Org: {char_info.org_name} ({char_info.org_id:d})\n" - blob += f"Org Rank: {char_info.org_rank_name} ({char_info.org_rank_id:d})\n" + blob += f"Org: {char_info.org_name} ({char_info.org_id})\n" + blob += f"Org Rank: {char_info.org_rank_name} ({char_info.org_rank_id})\n" else: blob += "Org: <None>\n" blob += "Org Rank: <None>\n"