mirror of
https://github.com/nichkara/InfinitumBotty.git
synced 2026-06-10 22:26:23 +02:00
allow Greeter to use NICK within responses. e.g. "Hello X, nice to see you"
This commit is contained in:
@@ -4,15 +4,17 @@ from FaustBot.Model.UserProvider import UserProvider
|
|||||||
import time
|
import time
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
|
|
||||||
|
|
||||||
class Greeter(JoinObserverPrototype):
|
class Greeter(JoinObserverPrototype):
|
||||||
"""
|
"""
|
||||||
A Class only reacting to pings
|
A Class only reacting to pings
|
||||||
"""
|
"""
|
||||||
|
|
||||||
greetings_dict = defaultdict(str)
|
greetings_dict = defaultdict(str)
|
||||||
greetings_dict['Luci'] = "Hewuu"
|
greetings_dict["Luci"] = "Hewuu"
|
||||||
greetings_dict['pome'] = "Hewuu"
|
greetings_dict["pome"] = "Hewuu"
|
||||||
greetings_dict['Skadi'] = "Awoo"
|
greetings_dict["Skadi"] = "Awoo {NICK}!"
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def cmd():
|
def cmd():
|
||||||
return None
|
return None
|
||||||
@@ -27,17 +29,21 @@ class Greeter(JoinObserverPrototype):
|
|||||||
self.greeting = greeting
|
self.greeting = greeting
|
||||||
|
|
||||||
def update_on_join(self, data, connection: Connection):
|
def update_on_join(self, data, connection: Connection):
|
||||||
if data['channel'] == connection.details.get_channel():
|
if data["channel"] == connection.details.get_channel():
|
||||||
if data['nick'].find("Guest") != -1:
|
joined_user = data["nick"]
|
||||||
|
if (
|
||||||
|
joined_user.startswith("Guest")
|
||||||
|
or UserProvider().get_characters(joined_user) < 100
|
||||||
|
):
|
||||||
return
|
return
|
||||||
UProvider= UserProvider()
|
|
||||||
if(UProvider.get_characters(data['nick'])) < 100:
|
|
||||||
return
|
|
||||||
if data['channel'] == connection.details.get_channel():
|
|
||||||
if int(time.time()) - self.names[data['nick']] > 28800:
|
|
||||||
if Greeter.greetings_dict[data['nick']] != "":
|
|
||||||
connection.send_back(Greeter.greetings_dict[data['nick']]+" " + data['nick'], data)
|
|
||||||
else:
|
|
||||||
connection.send_back(self.greeting+" " + data['nick'], data)
|
|
||||||
|
|
||||||
self.names[data['nick']] = int(time.time())
|
if int(time.time()) - self.names[joined_user] > 28800:
|
||||||
|
greeting_text = self.greetings_dict.get(joined_user, self.greeting)
|
||||||
|
|
||||||
|
if "{NICK}" in greeting_text:
|
||||||
|
response = greeting_text.replace("{NICK}", joined_user)
|
||||||
|
else:
|
||||||
|
response = f"{greeting_text} {joined_user}"
|
||||||
|
connection.send_back(response, data)
|
||||||
|
|
||||||
|
self.names[joined_user] = int(time.time())
|
||||||
|
|||||||
Reference in New Issue
Block a user