コード例 #1
0
ファイル: markov.py プロジェクト: thegreatestminer/GusBot-2
def parse_markov_from_text(message, connector, index, raw):
    global markov_dict

    for key, item in markov_dict.items():
        markov_dict[key] = set(item)

    if not raw:
        if len(message["arguments"]) < 2:
            connector.send_message(
                index, get_message_target(connector, message, index),
                "{}: Error: No argument provided!".format(message["nickname"]))

        data = open(" ".join(message["arguments"][1:])).read()
        data = " ".join([n.strip() for n in data.split("\n")])

        words = [
            x for x in simple_string_filter(
                data, "\'\"-/\\,.!?", isalnumspace).split(" ") if x != " "
        ]

        for x in xrange(len(words)):
            try:
                if words[x - 1] == words[x] or words[x] == words[x + 1]:
                    continue

            except IndexError:
                pass

            try:
                markov_dict[words[x - 1].lower()].add(words[x].lower())

            except KeyError:
                try:
                    markov_dict[words[x - 1].lower()] = {words[x].lower()}
                except IndexError:
                    pass

            except IndexError:
                pass

            try:
                markov_dict[words[x].lower()].add(words[x + 1].lower())

            except KeyError:
                try:
                    markov_dict[words[x].lower()] = {words[x + 1].lower()}
                except IndexError:
                    pass

            except IndexError:
                continue

        connector.send_message(
            index, get_message_target(connector, message, index),
            "{}: Text file succesfully parsed on Markov!".format(
                message["nickname"]))
コード例 #2
0
ファイル: markov.py プロジェクト: thegreatestminer/GusBot-2
    def smsg(msg):
        if type(msg) is str:
            connector.send_message(
                index, get_message_target(connector, message, index), msg)

            return True

        elif hasattr(msg, "__iter__"):
            for m in msg:
                connector.send_message(
                    index, get_message_target(connector, message, index), m)

            return True

        else:
            return False
コード例 #3
0
ファイル: core.py プロジェクト: Gustavo6046/GusBot-2
def ban_user(message, connector, index, raw):
	if raw:
		return
		
	if len(message["arguments"]) < 2:
		connector.send_message(index, get_message_target(connector, message, index), "Not enough arguments!")
		
	connector.send_command(index, "BAN {} {} :{}".format(message["channel"], message["arguments"][1], " ".join(message["arguments"][2:])))
コード例 #4
0
ファイル: core.py プロジェクト: thegreatestminer/GusBot-2
def part_channel(message, connector, index, raw):
    if not raw:
        if len(message["arguments"]) < 2:
            connector.send_message(
                index, get_message_target(connector, message, index),
                "Part failed!")

        connector.send_command(index, "PART " + message["arguments"][1])
コード例 #5
0
ファイル: core.py プロジェクト: thegreatestminer/GusBot-2
def join_channel(message, connector, index, raw):
    if not raw:
        if len(message["arguments"]) < 2:
            connector.send_message(
                index, get_message_target(connector, message, index),
                "Join failed!")

        connector.send_command(index, "JOIN " + message["arguments"][1])
コード例 #6
0
ファイル: core.py プロジェクト: thegreatestminer/GusBot-2
def part_channel(message, connector, index, raw):
    if not raw:
        if len(message["arguments"]) < 3:
            connector.send_message(
                index, get_message_target(mconnector, essage, index),
                "Message to channel failed!")

        connector.send_message(index, message["arguments"][1],
                               " ".join(message["arguments"][2:]))
コード例 #7
0
ファイル: markov.py プロジェクト: thegreatestminer/GusBot-2
def check_crawled(connector, index, message):
    global crawling, crawled

    while crawling > crawled:
        time.sleep(0.2)

    connector.send_message(
        index, get_message_target(connector, message, index),
        "Finished crawling {all} websites!".format(all=crawled))
コード例 #8
0
ファイル: core.py プロジェクト: thegreatestminer/GusBot-2
def action(message, connector, index, raw):
    if not raw:
        if len(message["arguments"]) < 3:
            connector.send_message(
                index, get_message_target(connector, message, index),
                "Action to channel failed!")

        connector.send_message(
            index, message["arguments"][1],
            "\x01ACTION {}\x01".format(" ".join((message["arguments"][2:]))))
コード例 #9
0
ファイル: core.py プロジェクト: thegreatestminer/GusBot-2
def send_command_to_server(message, connector, index, raw):
    if raw:
        return

    if len(message["arguments"][1:]) < 2:
        connector.send_message(index,
                               get_message_target(connector, message, index),
                               "Syntax: cmd <command to send>")

    connector.send_command(index, " ".join(message["arguments"][1:]))
コード例 #10
0
ファイル: core.py プロジェクト: Gustavo6046/GusBot-2
def invite_user(message, connector, index, raw):
	if raw:
		return
		
	tgtchan = get_message_target(connector, message, index)
		
	if len(message["arguments"]) < 2:
		connector.send_message(index, tgtchan, "Syntax: invite <user>")
		return

	connector.send_command(index, "INVITE {} {}".format(message["arguments"][1], message["channel"]))
コード例 #11
0
ファイル: markov.py プロジェクト: Gustavo6046/GusBot-2
def parse_markov_from_text(message, connector, index, raw):
	global markov_dict
	
	for key, item in markov_dict.items():
			markov_dict[key] = set(item)

	if not raw:
		if len(message["arguments"]) < 2:
			connector.send_message(index, get_message_target(connector, message, index), "{}: Error: No argument provided!".format(message["nickname"]))
	
		for line in open(" ".join(message["arguments"][1:])).readlines():
			words = simple_string_filter(line, "\'\"-/\\,.!?", isalnumspace).split(" ")

			for x in xrange(len(words)):
				try:
					if words[x - 1] == words[x] or words[x] == words[x + 1]:
						continue
				except IndexError:
					pass

				try:
					markov_dict[words[x - 1].lower()].add(words[x].lower())
				except KeyError:
					try:
						markov_dict[words[x - 1].lower()] = {words[x].lower()}
					except IndexError:
						pass
				except IndexError:
					pass

				try:
					markov_dict[words[x].lower()].add(words[x + 1].lower())
				except KeyError:
					try:
						markov_dict[words[x].lower()] = {words[x + 1].lower()}
					except IndexError:
						pass
				except IndexError:
					continue
		
		connector.send_message(index, get_message_target(connector, message, index), "{}: Text file succesfully parsed on Markov!".format(message["nickname"]))
コード例 #12
0
ファイル: core.py プロジェクト: thegreatestminer/GusBot-2
def ban_user(message, connector, index, raw):
    if raw:
        return

    if len(message["arguments"]) < 2:
        connector.send_message(index,
                               get_message_target(connector, message, index),
                               "Not enough arguments!")

    connector.send_command(
        index,
        "BAN {} {} :{}".format(message["channel"], message["arguments"][1],
                               " ".join(message["arguments"][2:])))
コード例 #13
0
ファイル: core.py プロジェクト: thegreatestminer/GusBot-2
def invite_user(message, connector, index, raw):
    if raw:
        return

    tgtchan = get_message_target(connector, message, index)

    if len(message["arguments"]) < 2:
        connector.send_message(index, tgtchan, "Syntax: invite <user>")
        return

    connector.send_command(
        index, "INVITE {} {}".format(message["arguments"][1],
                                     message["channel"]))
コード例 #14
0
ファイル: calc.py プロジェクト: Gustavo6046/GusBot-2
def sine_command(message, raw):
    if not raw:
        try:
            try:
                return ["{}: {}".format(message["nickname"], str(math.sin(float(message["arguments"][1]))))]

            except ValueError:
                return [index,get_message_target(connector, message, index), message["nickname"] + ": Invalid literal!"]

        except IndexError:
            return [message["nickname"] + ": No argument given!"]

    else:
        return []
コード例 #15
0
ファイル: calc.py プロジェクト: Gustavo6046/GusBot-2
def cosine_command(message, raw):
    if not raw:
        try:
            print "Sending decimal cosine..."
            try:
                return [str(math.cos(float(message["arguments"][1])))]

            except ValueError:
                return [index, get_message_target(connector, message, index), message["nickname"] + ": Invalid literal!"]

        except IndexError:
            return [message["nickname"] + ": No argument given!"]

    else:
        return []
コード例 #16
0
def cosine_command(message, raw):
    if not raw:
        try:
            print "Sending decimal cosine..."
            try:
                return [str(math.cos(float(message["arguments"][1])))]
				
            except ValueError:
                return [index, get_message_target(connector, message, index), message["nickname"] + ": Invalid literal!"]

        except IndexError:
            return [message["nickname"] + ": No argument given!"]

    else:
        return []
コード例 #17
0
ファイル: irchack.py プロジェクト: thegreatestminer/GusBot-2
        def __wrapper__(message, connector, index, raw):
            if raw:
                return

            global game

            p = message["nickname"]

            if p not in game.players.keys():
                connector.send_message(
                    index,
                    plugincon.get_message_target(connector, message, index),
                    "You didn't join yet!")

            return func(message, connector, index,
                        game.players[message["nickname"]], game)
コード例 #18
0
ファイル: minigames.py プロジェクト: Gustavo6046/GusBot-2
def smw_help(message, connector, index, raw):
	if raw:
		return
		
	def send_notices(mesgs):
		for item in mesgs:
			connector.send_command(index, "NOTICE {} :{}".format(message["nickname"], item.encode("utf-8")))
		
	connector.send_message(index, get_message_target(connector, message, index), "Sent you help via notice.")

	send_notices((
		"WARZONE HELP",
		"Join using smw_join.",
		"If you are mush, use smw_extract to get more spores (or smw_findspore) and smw_spike to in--I mean \"enlighten\". Or else, buy some good gun using smw_buygun and smw_buyammo. (List them and ammo using smw_listweaponry and smw_listammotypes!)",
		"Use smw_about for etc stuff or use smw_hide for a consolation message!", "Use smw_cost to get cost of stuff. Always remember: friendship is for FREE! <3",
		"Use smw_shoot <target> <weapon> to shoot at someone. Use smw_eat to regain immune/fungushealth. And smw_status to get your status and smw_getstatus to get other people's status!",
		"Some commands are turn-only. Check who's turn using smw_turn and check the turn queue using smw_turnlist! And check who is playing (and whether they're mush) using smw_players.",
		"Remember: instead of paranoia like in the original, use strategy! ;)"
	))
コード例 #19
0
def smw_help(message, connector, index, raw):
	if raw:
		return

	def send_notices(mesgs):
		for item in mesgs:
			connector.send_command(index, "NOTICE {} :{}".format(message["nickname"], item.encode("utf-8")))

	connector.send_message(index, get_message_target(connector, message, index), "Sent you help via notice.")

	send_notices((
		"WARZONE HELP",
		"Join using smw_join.",
		"If you are mush, use smw_extract to get more spores (or smw_findspore) and smw_spike to in--I mean \"enlighten\". Or else, buy some good gun using smw_buygun and smw_buyammo. (List them and ammo using smw_listweaponry and smw_listammotypes!)",
		"Use smw_about for etc stuff or use smw_hide for a consolation message!", "Use smw_cost to get cost of stuff. Always remember: friendship is for FREE! <3",
		"Use smw_shoot <target> <weapon> to shoot at someone. Use smw_eat to regain immune/fungushealth. And smw_status to get your status and smw_getstatus to get other people's status!",
		"Some commands are turn-only. Check who's turn using smw_turn and check the turn queue using smw_turns! And check who is playing (and whether they're mush) using smw_players.",
		"Remember: instead of paranoia like in the original, use strategy! ;)"
	))
コード例 #20
0
def sine_command(message, raw):
    if not raw:
        try:
            try:
                return [
                    "{}: {}".format(
                        message["nickname"],
                        str(math.sin(float(message["arguments"][1]))))
                ]

            except ValueError:
                return [
                    index,
                    get_message_target(connector, message, index),
                    message["nickname"] + ": Invalid literal!"
                ]

        except IndexError:
            return [message["nickname"] + ": No argument given!"]

    else:
        return []
コード例 #21
0
ファイル: calc.py プロジェクト: Gustavo6046/GusBot-2
def get_pi(message, connector, index, raw):
    if not raw:
        connector.send_message(index, get_message_target(connector, message, index), str(math.pi))
コード例 #22
0
ファイル: notemind.py プロジェクト: thegreatestminer/GusBot-2
def message(message, connector, index, out):
    return connector.send_message(
        index, plugincon.get_message_target(connector, message, index), out)
コード例 #23
0
ファイル: warzone.py プロジェクト: Gustavo6046/GusBot-2
	def msg(mseg):
		connector.send_message(index, get_message_target(connector, message, index), mseg)
コード例 #24
0
ファイル: warzone.py プロジェクト: thegreatestminer/GusBot-2
 def msg(mseg):
     connector.send_message(index,
                            get_message_target(connector, message, index),
                            mseg)
コード例 #25
0
ファイル: core.py プロジェクト: Gustavo6046/GusBot-2
	def msg(mesg):
		connector.send_message(index, get_message_target(connector, message, index), mesg.encode("utf-8"))
コード例 #26
0
ファイル: core.py プロジェクト: Gustavo6046/GusBot-2
def join_channel(message, connector, index, raw):
	if not raw:
		if len(message["arguments"]) < 2:
			connector.send_message(index, get_message_target(connector, message, index), "Join failed!")
		
		connector.send_command(index, "JOIN " + message["arguments"][1])
コード例 #27
0
 def send_message(self, message=""):
     self.connector.send_message(
         self.index,
         plugincon.get_message_target(self.connector, self.message,
                                      self.index), message)
コード例 #28
0
ファイル: listeners.py プロジェクト: Gustavo6046/GusBot-2
	def message_target(msg, target=None):
		if not target:
			target = get_message_target(connector, message, index)
			
		connector.send_message(index, target, msg)
コード例 #29
0
ファイル: timecommands.py プロジェクト: Gustavo6046/GusBot-2
 def send_message(self, message=""):
     self.connector.send_message(
         self.index,
         plugincon.get_message_target(self.connector, self.message, self.index),
         message
     )
コード例 #30
0
def get_pi(message, connector, index, raw):
    if not raw:
        connector.send_message(index, get_message_target(connector, message, index), str(math.pi))
コード例 #31
0
ファイル: core.py プロジェクト: Gustavo6046/GusBot-2
def part_channel(message, connector, index, raw):
	if not raw:
		if len(message["arguments"]) < 3:
			connector.send_message(index, get_message_target(mconnector, essage, index), "Message to channel failed!")
		
		connector.send_message(index, message["arguments"][1], " ".join(message["arguments"][2:]))
コード例 #32
0
    def message_target(idx, msg, target=None):
        if not target:
            target = get_message_target(connector, message, index)

        connector.send_message(idx, target, msg)
コード例 #33
0
ファイル: core.py プロジェクト: thegreatestminer/GusBot-2
 def msg(mesg):
     connector.send_message(index,
                            get_message_target(connector, message, index),
                            mesg.encode("utf-8"))
コード例 #34
0
ファイル: core.py プロジェクト: Gustavo6046/GusBot-2
def part_channel(message, connector, index, raw):
	if not raw:
		if len(message["arguments"]) < 2:
			connector.send_message(index, get_message_target(connector, message, index), "Part failed!")
		
		connector.send_command(index, "PART " + message["arguments"][1])
コード例 #35
0
ファイル: core.py プロジェクト: Gustavo6046/GusBot-2
def action(message, connector, index, raw):
	if not raw:
		if len(message["arguments"]) < 3:
			connector.send_message(index, get_message_target(connector, message, index), "Action to channel failed!")
			
		connector.send_message(index, message["arguments"][1], "\x01ACTION {}\x01".format(" ".join((message["arguments"][2:]))))
コード例 #36
0
ファイル: notemind.py プロジェクト: Gustavo6046/GusBot-2
def message(message, connector, index, out):
    return connector.send_message(
        index,
        plugincon.get_message_target(connector, message, index),
        out
    )