-> !wants
-> !orgs info
-> special cmd's
-> !assist
-> "afk" for players without active account
-> !loot add <item_ref> <count> => nolonger breaks !account
Changes:
-> grouped !tara, !gaunt, .. into !wb
-> Display the most recent news entry on logon (default: enabled)
-> improved grouping of !items
-> Added the option to authentificate WS connections (Datanet module). This is used in special cases, where the Websocket Server requires the clien tto authentificate itself. (Server sends "#auth", client responds with the auth string)
-> Add main name to relaying (priv <-> org) [default: disabled]
-> Added logon/logoff messages back
-> restricted default access to "dangerous" commands to moderator
-> Added optional logging (Private Channel, Org Channel, Tells, ... disabled by default)

Rewrite of the Tower Module.
-> More verbosity, if enabled in config. by default, GAS and Hot timer only.
-> !hot displays currently hot (and in penalty) sites, and these which go hot in < 60 minutes
-> !attacks filterable by PF and Site
-> display current contract QL's grouped by org: !contracts (requires managed cache)
This commit is contained in:
2021-11-25 14:09:43 +01:00
parent 2d7ecf4883
commit 17c776faec
44 changed files with 1669 additions and 1249 deletions
+12 -13
View File
@@ -67,20 +67,19 @@ class ItemsController:
blob += f"Search: <highlight>QL {ql:d} {search}</highlight>\n"
else:
blob += f"Search: <highlight>{search}</highlight>\n"
blob += "\n"
head_foot = ""
if page > 1:
blob += " " + self.text.make_chatcmd(f"<< Page {page - 1:d}",
self.get_chat_command(ql, search, page - 1))
head_foot += " " + self.text.make_chatcmd(f"«« Page {page - 1:d}",
self.get_chat_command(ql, search, page - 1))
if offset + self.PAGE_SIZE < len(all_items):
blob += " Page " + str(page)
blob += " " + self.text.make_chatcmd(f"Page {page + 1:d} >>",
self.get_chat_command(ql, search, page + 1))
head_foot += " Page " + str(page)
head_foot += " " + self.text.make_chatcmd(f"Page {page + 1:d} »»",
self.get_chat_command(ql, search, page + 1))
if self.PAGE_SIZE < len(all_items):
blob += "\n"
blob += "\n"
blob += head_foot + "\n\n"
blob += self.format_items(items, ql)
blob += head_foot
# noinspection LongLine
blob += f"\nItem DB rips created using the {self.text.make_chatcmd('Budabot Items Extractor', '/start https://github.com/Budabot/ItemsExtractor')} tool."
@@ -102,7 +101,7 @@ class ItemsController:
msg = ""
msg += item_group[0].name
for item in reversed(item_group):
for item in item_group:
if ql:
if item.lowql != item.highql:
msg += f" {self.text.make_item(item.lowid, item.highid, ql, ql)}"
@@ -134,7 +133,7 @@ class ItemsController:
params.append(ql)
params.append(ql)
sql += " ORDER BY name ASC, highql DESC"
sql += " ORDER BY name, highid, highql DESC"
return self.db.query(sql, params, extended_like=True)
@@ -223,10 +222,10 @@ class ItemIter:
item = self.items[self.current_index]
if item.name != current_item.name \
or item.icon != current_item.icon \
or item.highql == current_item.highql:
or item.highql == current_item.highql \
or item.highql < current_item.highql:
break
current_item = item
grouped.append(item)
self.current_index += 1
return grouped