This commit is contained in:
deathbybandaid 2022-05-05 13:00:02 -04:00
parent 1069f87333
commit e4abb21e8f
2 changed files with 36 additions and 14 deletions

View File

@ -61,6 +61,11 @@ def prerun():
if not comrun.is_pipe_command:
for say_message in comrun._say:
bot.say(say_message)
# Pipe text back to bot for next piped command
else:
for say_message in comrun._say:
trigger_dict = rebuild_pipes(comrun.commands, say_message)
sb.commands.dispatch(trigger_dict)
return internal_prerun
return actual_decorator
@ -73,29 +78,45 @@ def rebuild_trigger(comrun, function):
return trigger
def rebuild_pipes(commands):
def rebuild_pipes(commands, trigger_str_add=None):
if not trigger_str_add:
repipe_trigger_dict = commands[0]
else:
repipe_trigger_dict = ""
trigger_number = 1
for trigger_dict in commands[1:]:
if trigger_str_add and trigger_number == 1:
trigger_str = trigger_dict["trigger_str"] + " %s" % trigger_str_add
else:
trigger_str = trigger_dict["trigger_str"]
if trigger_str_add:
splitkey_str = ""
else:
splitkey_str = " %s " % sb.commands.pipe_split_key
if trigger_dict["trigger_type"] == "command":
repipe_trigger_dict["trigger_str"] += " %s %s%s %s" % (sb.commands.pipe_split_key,
repipe_trigger_dict["trigger_str"] += "%s%s%s %s" % (splitkey_str,
trigger_dict["trigger_prefix"],
trigger_dict["trigger_command"],
trigger_dict["trigger_str"])
trigger_str)
elif trigger_dict["trigger_type"] == "nickname_command":
repipe_trigger_dict["trigger_str"] += " %s %s %s %s" % (sb.commands.pipe_split_key,
repipe_trigger_dict["trigger_str"] += "%s%s %s %s" % (splitkey_str,
trigger_dict["trigger_prefix"],
trigger_dict["trigger_command"],
trigger_dict["trigger_str"])
trigger_str)
elif trigger_dict["trigger_type"] == "action_command":
repipe_trigger_dict["trigger_str"] += " %s %s %s %s" % (sb.commands.pipe_split_key,
repipe_trigger_dict["trigger_str"] += "%s%s %s %s" % (splitkey_str,
"/me",
trigger_dict["trigger_command"],
trigger_dict["trigger_str"])
trigger_str)
trigger_number += 1
return repipe_trigger_dict

View File

@ -15,6 +15,7 @@ def commands_output_a(bot, trigger, comrun):
@plugin.command('testob')
def commands_output_b(bot, trigger, comrun):
comrun.say("this is test b")
comrun.say(str(comrun.trigger).upper())
@prerun()