From e3f6c6e3695e920fa1c033a8044a64d7cb77b27e Mon Sep 17 00:00:00 2001 From: deathbybandaid Date: Thu, 5 May 2022 16:44:42 -0400 Subject: [PATCH] test --- spicebot_command_leetspeak/__init__.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/spicebot_command_leetspeak/__init__.py b/spicebot_command_leetspeak/__init__.py index 7d653ac..b07a395 100644 --- a/spicebot_command_leetspeak/__init__.py +++ b/spicebot_command_leetspeak/__init__.py @@ -15,6 +15,9 @@ def leatspeak(bot, trigger, comrun): def leet_convert(message): message = message.strip() + replacements = (('hacker', 'haxor'), ('elite', 'eleet'), ('a', '4'), ('e', '3'), + ('l', '1'), ('o', '0'), ('t', '+')) + char_map = { "a": ["4", "@", "/-\\", "^"], "b": ["I3", "8", "13", "|3"], @@ -44,11 +47,18 @@ def leet_convert(message): "z": ["2", "7_", "-/_", "%", ">_", "~/_", "-\_", "-|_"], } leetspeak = "" - for char in message: - if char.lower() in char_map and random.random() <= 0.70: # 70% convert - possible_replacements = char_map[char.lower()] - leet_replacement = random.choice(possible_replacements) - leetspeak = leetspeak + leet_replacement + + for word in message.split(" "): + if word.lower() in [old for old, new in replacements]: + leet_word = word.replace([old for old, new in replacements][0], [new for old, new in replacements][0]) + leetspeak = leetspeak + leet_word else: - leetspeak = leetspeak + char + for char in word: + if char.lower() in char_map and random.random() <= 0.70: # 70% convert + possible_replacements = char_map[char.lower()] + leet_replacement = random.choice(possible_replacements) + leetspeak = leetspeak + leet_replacement + else: + leetspeak = leetspeak + char + return leetspeak