mirror of
				https://github.com/solero/houdini.git
				synced 2025-11-04 06:31:54 +00:00 
			
		
		
		
	Filter words found in chat_filter_words server crumbs
				
					
				
			This commit is contained in:
		@@ -1,5 +1,7 @@
 | 
			
		||||
from houdini import handlers
 | 
			
		||||
from houdini.handlers import XTPacket
 | 
			
		||||
from houdini.handlers.play.moderation import moderator_ban
 | 
			
		||||
 | 
			
		||||
from houdini.commands import invoke_command_string, has_command_prefix
 | 
			
		||||
 | 
			
		||||
from houdini.data.moderator import ChatFilterRuleCollection
 | 
			
		||||
@@ -23,11 +25,12 @@ async def handle_send_message(p, penguin_id: int, message: str):
 | 
			
		||||
                await penguin.send_xt("mm", message, penguin_id)
 | 
			
		||||
        return
 | 
			
		||||
 | 
			
		||||
    tokens = message.lower()
 | 
			
		||||
    for word, consequence in p.server.chat_filter_words.items():
 | 
			
		||||
        if word in tokens:
 | 
			
		||||
    tokens = message.lower().split()
 | 
			
		||||
 | 
			
		||||
    word, consequence = next(((w, c) for w, c in p.server.chat_filter_words.items() if w in tokens))
 | 
			
		||||
 | 
			
		||||
    if consequence.ban:
 | 
			
		||||
                return
 | 
			
		||||
        return await moderator_ban(p, p.id, comment='Inappropriate language', message=message)
 | 
			
		||||
    elif consequence.warn:
 | 
			
		||||
        return
 | 
			
		||||
    elif consequence.filter:
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user