Beispiel #1
0
def process(sender, type, args, client):
	room = sender.getStripped()
	me = sender.getResource()
	if len(args) == 0 and xmppUtils.isOwner(room, me):
		xmppUtils.sendMessage(room, 'This is Skullz checking this...', type='groupchat')
	elif len(args) == 0 and xmppUtils.isMember(room, me):
		xmppUtils.sendMessage(room, 'This is still probably Skullz checking this.', type='groupchat')
Beispiel #2
0
def process(sender, type, args, client):
	if len(args) > 0:
		room = sender.getStripped()
		if room in xmppUtils.rosters:
			if args in xmppUtils.rosters[room]:
				jid = xmppUtils.rosters[room][args] [2]
				xmppUtils.sendMessage(sender, jid, type)
Beispiel #3
0
def process(sender, type, args, client):
  room = sender.getStripped()
  if len(args) == 0:
    xmppUtils.sendMessage(room, helpText, type='groupchat')
  elif len(args) > 0:
    room = sender.getStripped()
    gift = '/me opens up a box and gives ' + args + ' ' + random.choice(rndobjects)
    xmppUtils.sendMessage(room, gift, type='groupchat')
Beispiel #4
0
def process(sender, type, args, client):
	room = sender.getStripped()
	if len(args) == 0:
		xmppUtils.sendMessage(room, helpText, type='groupchat')
	elif len(args) > 0:
		room = sender.getStripped()
		act = '/me ' + args
		xmppUtils.sendMessage(room, act, type='groupchat')
Beispiel #5
0
def process(sender, args, type, client):
	args = args.split(' ',2)
	action = args[0]
	room = sender.getStripped()
	translate = Translator().translate
	translatePhrase = ("%s" %(args))
	if action > 1:
		translation = translate(translatePhrase, action)
		xmppUtils.sendMessage(room, translation, type='groupchat')
Beispiel #6
0
def process(sender, type, args, client):
  room = sender.getStripped()
  target = args
  if len(args) == 0:
    xmppUtils.sendMessage(room, helpText, type='groupchat')
  elif len(args) > 0:
    room = sender.getStripped()
    slap = '/me slaps ' + target + ' with ' + random.choice(rndobjects)
    xmppUtils.sendMessage(room, slap, type='groupchat')
Beispiel #7
0
def process(sender, type, args, client):
#	if sender.isAdmin:
	if len(args) > 0:
#		if sender.isAdmin:
		orgin = sender.getStripped()
		print orgin
		for room in xmppUtils.rosters:
			#~ print room
			xmppUtils.sendMessage(room, args, type='groupchat')
Beispiel #8
0
def messageHandler(client, msg):
	room = msg.getFrom().getStripped()
	comSend = msg.getFrom().getResource()
	randanswer = random.choice(response)

	if config.get("nick", room) in msg.getBody():
		rnd = random.randint(1,5)
		if rnd != 3:
			xmppUtils.sendMessage(room, randanswer, type='groupchat')
Beispiel #9
0
def process(sender, type, args, client):
	room = sender.getStripped()
	comSend = sender.getResource()
	if xmppUtils.isModerator(room, comSend):
		if len(args) > 0:
			senderNick = sender.getResource()
			xmppUtils.setRole(room, args, 'visitor', 'Requested by ' + senderNick)
	elif not xmppUtils.isAdmin(room, comSend):
		xmppUtils.sendMessage(room, 'Unauthorized.', type='groupchat')
Beispiel #10
0
def process(sender, type, args, client):
        if len(args) > 0:
		room = sender.getStripped()
                req = urllib.quote(args)
                resp = urllib.urlopen('http://www.google.com/ig/calculator?json?hl=en&q=%s' % req)
                resp = resp.readline().split('",')[1][6:]
                if resp:
                        xmppUtils.sendMessage(room, resp, type)
                else:
                        xmppUtils.sendMessage(room, 'There was an error processing your request.', type)
Beispiel #11
0
def process(sender, type, args, client):
	room = sender.getStripped()
	if len(args) == 0:
		xmppUtils.sendMessage(room, helpText, type='groupchat')
	elif len(args) > 0:
		room = sender.getStripped()
		poke = '/me pokes ' + args
		for i in range(1,random.randint(1,5)):
			xmppUtils.sendMessage(room, poke, type='groupchat')
			time.sleep(1)
Beispiel #12
0
def checklvlup(nickJID, nick, room):
	level = pyrefight.fightdata[nickJID]['level']

	# amt is the amount of HP at the NEXT level. This times (level / 10) is the xp required
	amt = 100+(level*9)*(level*6)/(1+(level*3))
	if float(pyrefight.fightdata[nickJID]['xp']) > amt*(1+(level/10)):
		pyrefight.fightdata[nickJID]['xp'] -= amt*(1+(level/10))

		pyrefight.fightdata[nickJID]['level'] += 1
		# add the difference between the old max HP and the new one
		pyrefight.fightdata[nickJID]['hp'] += amt-(pyrefight.fightdata[nickJID]['maxhp'])
		pyrefight.fightdata[nickJID]['maxhp'] = amt
		pyrefight.fightdata[nickJID]['accuracy'] = 38 + (level * 2)
		pyrefight.fightdata[nickJID]['gold'] += 2*(amt-100)
		pyrefight.fightdata[nickJID]['ammo'] += 10+(level/2)
		print level
		xmppUtils.sendMessage(room+"/"+nick, "Congratulations! You are now level "+str(level+1)+"! You have been awarded "+str(2*(amt-100))+" gold and "+str(8*level)+" bullets.", "private")
		xmppUtils.sendMessage(room, nick+" has leveled up to level "+str(level)+".", "groupchat")
Beispiel #13
0
def messageHandler(client, msg):
	room = msg.getFrom().getStripped()
	comSend = msg.getFrom().getResource()

	if config.get("nick") == comSend: return 0

	for word in badwords:
		try:
			if word.lower() in msg.getBody().lower():
				if random.randint(1,2) == 1: # The higher the second number is, the less chance of getting kicked but greater chance fo getting devoiced
					xmppUtils.sendMessage(room,'/me slaps ' + comSend + ' around a while, then hastily shows them the door.','groupchat')
					xmppUtils.setRole(room, comSend, 'none', 'Watch your language!')
					return 1

				else:
					xmppUtils.sendMessage(room,'/me rips out ' + comSend + "'s voice and beats him with it",'groupchat')
					xmppUtils.setRole(room, comSend, 'visitor')
					return 1
		except AttributeError:
			return 0

	for word in advwords:
		try:
			if word.lower() in msg.getBody().lower():
				xmppUtils.sendMessage(room, advwords[word],'groupchat')

		except AttributeError:
			return 0
Beispiel #14
0
def process(sender, type, args, client):
	room = sender.getStripped()
	comSend = sender.getResource()
	if len(args) == 0 and xmppUtils.isAdmin(room, comSend):
		xmppUtils.sendMessage(sender, 'Available commands: help, say, voice, devoice, date, uptime, omegle, quote, act, slap, stab, gift, shoot, scold, google, mode, kick, jid, calc.', type='chat')
	elif len(args) == 0 and xmppUtils.isMember(room, comSend):
		xmppUtils.sendMessage(sender, 'Available commands: help, say, voice, date, uptime, omegle, quote, act, slap, stab, gift, shoot, google, calc.', type='chat')
	elif len(args) == 0 and not xmppUtils.isMember(room, comSend):
		xmppUtils.sendMessage(sender, 'Available commands: help, date, quote.', type='chat')
Beispiel #15
0
def checkmode(who, room):
	if len(who) < 1: return -1
	if xmppUtils.isAdmin(room, who):
		xmppUtils.sendMessage(room, 'Administrator', type='groupchat')
	elif xmppUtils.isModerator(room, who):
		xmppUtils.sendMessage(room, 'Moderator', type='groupchat')
	elif xmppUtils.isMember(room, who):
		xmppUtils.sendMessage(room, 'Member', type='groupchat')
	return 0
Beispiel #16
0
def process(sender, type, args, client):
	room = sender.getStripped()
	comSend = sender.getResource()
	room = sender.getStripped()
	if len(args) == 0:
		xmppUtils.sendMessage(room, helpText, type='groupchat')

	elif "!say !say !say" in args:
		xmppUtils.setRole(room, comSend, 'visitor', 'Recursion is not your friend!')
		xmppUtils.sendMessage(room, "Hush, you!", type='groupchat')
	elif "!say !say" in args:
		slap.process(sender, type, comSend, client)
	elif "!say" in args:
		xmppUtils.sendMessage(room, "nou.", type='groupchat')

	else :
		xmppUtils.sendMessage(room, args, type='groupchat')
Beispiel #17
0
def process(sender, type, args, client):
	comSend = sender.getResource()
	room = sender.getStripped()
	if xmppUtils.isAdmin(room, comSend):
		if len(args) >0:
			naughty = '/me slaps ' + args + ' around for five seconds. NAUGHTY.'
			nice = '/me bows and returns to his alcove.'
			xmppUtils.setRole(room, args, 'visitor')
			xmppUtils.sendMessage(room, naughty , type='groupchat')
			time.sleep(5) # This is ASKING for issues.
			xmppUtils.setRole(room, args, 'participant')
			xmppUtils.sendMessage(room, nice, type='groupchat')
	elif not xmppUtils.isAdmin(room, comSend):
		xmppUtils.sendMessage(room, 'Unauthorized.', type='groupchat')
Beispiel #18
0
def process(sender, type, args, client):
        if len(args) > 0:
                room = sender.getStripped()
                gs = GoogleSearch(args)
                gs.results_per_page = 1
                results = gs.get_results()
                try:
                        msg = results[0].title.encode('utf8'), results[0].desc.encode('utf8'), results[0].url.encode('utf8')
                        xmppUtils.sendMessage(room, msg, type='groupchat')
                except KeyError or SearchError or IndexError:
                        xmppUtils.sendMessage(room, 'Search failed', type='groupchat')

        elif len(args) == 0:
                room = sender.getStripped()
                xmppUtils.sendMessage(room, helpText, type='groupchat')
Beispiel #19
0
def process(sender, type, args, client):
	room = sender.getStripped()
	args = args.split(' ', 2)
	if len(args) < 2:
		if len(args) == 1:
			return checkmode(args[0],room)
		else:
			return 0
	action = args[0]
	who = args[1]
	if action == 'check': checkmode(who,room)
	memGrant = '%s: Membership granted!' %(args[1])
	memRevoke = '%s: Membership revoked!' %(args[1])
	modGrant = '%s: Moderator permissions granted!' %(args[1])
	modRevoke = '%s: Moderator permissions revoked!' %(args[1])
	comSend = sender.getResource()

	if action == '+m':
		#works
		if xmppUtils.isAdmin(room, comSend):
			if len(args) > 1:
				xmppUtils.setAffiliation(room, who, 'member')
				xmppUtils.sendMessage(room, memGrant, type='groupchat')
		elif not xmppUtils.isAdmin(room, comSend):
			xmppUtils.sendMessage(room, 'Unauthorized.', type='groupchat')

	elif action == '+M':
		#works
		if xmppUtils.isAdmin(room, comSend):
			xmppUtils.setRole(room, who, 'moderator')
			xmppUtils.sendMessage(room, modGrant, type='groupchat')
		elif not xmppUtils.isAdmin(room, comSend):
			xmppUtils.sendMessage(room, 'Unauthorized.', type='groupchat')

	elif action == '+A':
		#TODO# Make work
		if xmppUtils.isOwner(room, comSend):
			xmppUtils.setAffiliation(room, who, 'administrator')

	elif action == '-m':
		#works
		if xmppUtils.isMod(room, comSend):
			if len(args) > 1:
				xmppUtils.setAffiliation(room, who, 'none')
				xmppUtils.sendMessage(room, memRevoke, type='groupchat')
		elif not xmppUtils.isAdmin(room, comSend):
			xmppUtils.sendMessage(room, 'Unauthorized.', type='groupchat')

	elif action == '-M':
		#works
		if xmppUtils.isAdmin(room, comSend):
			if len(args) > 1:
				xmppUtils.setRole(room, who, 'participant')
				xmppUtils.sendMessage(room, modRevoke, type='groupchat')
		elif not xmppUtils.isAdmin(room, comSend):
			xmppUtils.sendMessage(room, 'Unauthorized.', type='groupchat')

	elif action == '-A':
		#TODO# Make work
		if xmppUtils.isAdmin(room, comSend):
			xmppUtils.setAffiliation(room, who, 'member')

	elif action == 'help':
		if '+m' in args:
			xmppUtils.sendMessage(room, 'Admin: grants membership.', type='groupchat')
		elif '-m' in args:
			xmppUtils.sendMessage(room, 'Admin: revokes membership.', type='groupchat')
		elif '+M' in args:
			xmppUtils.sendMessage(room, 'Admin: grants moderator access.', type='groupchat')
		elif '-M' in args:
			xmppUtils.sendMessage(room, 'Admin: revokes moderator access.', type='groupchat')
		elif '+A' in args:
			xmppUtils.sendMessage(room, 'To be implemented: sets administrator privileges.', type='groupchat')
		elif '-A' in args:
			xmppUtils.sendMessage(room, 'To be implemented: revokes administrator privileges.', type='groupchat')
Beispiel #20
0
def process(sender, type, args, client):
	# TODO: Implament timezones.
	#~ time = Popen(["date"], stdout=PIPE).communicate()[0].split('\n')[0] # No idea what the hell THAT is
	time = datetime.datetime.now().strftime("%a %b %d %H:%M:%S %Y")
	xmppUtils.sendMessage(sender, time, type)
Beispiel #21
0
def messageHandler(client, msg):
	# TODO: ignore messages from self

	data = msg.getBody()
	try:
		data = data.split(" ",4)
	except AttributeError:
		return 1

	if data and len(data) >= 3 and data[0] == '/me':

		room = msg.getFrom().getStripped()
		nick = msg.getFrom().getResource()
		target = data[2]
		targetJID = room+"/"+target
		nickJID = room+"/"+nick

		try:
			nickJID = xmppUtils.rosters[room][nick][2]
		except KeyError:
			return 0
		try:
			nickJID = str(nickJID)
		except UnicodeEncodeError:
			return -1
		try:
			nickJID = nickJID.split("/")[0]
		except AttributeError:
			return -2

		if data[1].lower() == "revives" or data[1].lower() == "shoots" or data[1].lower() == "heals" or data[1].lower() == "gives":
			try:
				targetJID = xmppUtils.rosters[room][target][2]
			except KeyError:
				xmppUtils.sendMessage(room+"/"+nick, "Target does not exist!", "private")
				return 0
			try:
				targetJID = str(targetJID)
			except UnicodeEncodeError:
				return -1
			try:
				targetJID = targetJID.split("/")[0]
			except AttributeError:
				return -2

		if targetJID == 'None' or nickJID == 'None':
			#~ client.RegisterHandler('message', fightHandler.messageHandler)
			#~ client.RegisterHandler('presence', pyrefight.presHandler)
			#~ xmppUtils.sendMessage(room, "PyreFight must be run as a moderator in order for it to work. Grant level of mod (or higher) and restart to reactivate", "groupchat")
			return -3

		#	#	#	#	#	SHOOTING 	#	#	#	#	#
		if len(data) >= 3 and data[1].lower() == "shoots":
			if pyrefight.fightdata[nickJID]['hp'] <= 0:
				xmppUtils.sendMessage(room+"/"+nick, "You're a bloody corpse. This is no time to be shooting people!", "private")
			elif pyrefight.fightdata[nickJID]['ammo'] >= 1:
				mod = (40-pyrefight.fightdata[nickJID]['karma'])/10
				if mod < -1: mod = -1
				if time.time() < 2+pyrefight.fightdata[nickJID]['timeout']:
					return -4
				pyrefight.fightdata[nickJID]['timeout'] = time.time()
				pyrefight.fightdata[nickJID]['ammo'] -= 1

				shot = random.randint(1, 100)
				if pyrefight.fightdata[targetJID]['hp'] <= 0: shot = shot/2
				if shot < pyrefight.fightdata[nickJID]['accuracy'] and shot != 4: # The higher the accuracy, the easyer for shot to be under it and therefore the more often it hits
					damage = random.randint(10+(pyrefight.fightdata[nickJID]['level']/4), 19+(pyrefight.fightdata[nickJID]['level']/2))
					if int(pyrefight.fightdata[targetJID]['hp']) <= 0:
						pyrefight.fightdata[nickJID]['xp'] += 1 # add exp
						xmppUtils.sendMessage(room+"/"+nick, "You shot "+target+"'s bloody corpse. yay......", "private")

					elif int(pyrefight.fightdata[targetJID]['hp']) - damage <= 0:
						pyrefight.fightdata[nickJID]['xp'] += 25+(pyrefight.fightdata[targetJID]['maxhp']/2) # add exp, If below 0 (overkill) give bonus exp
						pyrefight.fightdata[nickJID]['karma'] -= 5 # remove 5 karma
						pyrefight.fightdata[nickJID]['gold'] += 25+(pyrefight.fightdata[targetJID]['maxhp']/3) # add gold

						pyrefight.fightdata[targetJID]['hp'] = 0 # set health to 0 (dead)
						pyrefight.fightdata[targetJID]['xp'] -= 10 # remove xp
						pyrefight.fightdata[targetJID]['karma'] += 3 # add 3 karma
						if pyrefight.fightdata[targetJID]['karma'] > 100: pyrefight.fightdata[targetJID]['karma'] = 100
						if pyrefight.fightdata[targetJID]['xp'] < 0: pyrefight.fightdata[targetJID]['xp'] = 0 # make xp 0 if it's below zero

						xmppUtils.sendMessage(room+"/"+target, nick+" killed you D: You lost 10 xp.", "private")
						xmppUtils.sendMessage(room+"/"+nick, "You shoot and kill "+target+"! "+str(((damage/5)*4) - (pyrefight.fightdata[targetJID]['hp']*4))+"xp gained, "+str(pyrefight.fightdata[targetJID]['maxhp'])+" gold gained", "private")
						xmppUtils.sendMessage(room, nick+" has killed "+target+" D:", "groupchat")

					else:
						pyrefight.fightdata[nickJID]['xp'] += ((damage/3)*4) # add exp
						pyrefight.fightdata[nickJID]['gold'] += damage/pyrefight.fightdata[nickJID]['level'] # add gold
						pyrefight.fightdata[targetJID]['hp'] -= damage # remove health

						xmppUtils.sendMessage(room+"/"+target, nick+"'s shot hit you! "+str(pyrefight.fightdata[targetJID]['hp'])+"/"+str(pyrefight.fightdata[targetJID]['maxhp'])+" hp left, "+str(damage)+" hp lost.", "private")
						xmppUtils.sendMessage(room+"/"+nick, "You shot "+target+" ("+str(pyrefight.fightdata[targetJID]['hp'])+"/"+str(pyrefight.fightdata[targetJID]['maxhp'])+" hp). "+str(damage)+" damage dealt, "+str((damage/3)*4)+" xp gained", "private")

				else:
					if pyrefight.fightdata[targetJID]['hp'] <= 0:
						xmppUtils.sendMessage(room+"/"+nick, "You missed "+target+"'s corpse. Damn you suck :P", "private")
					else:
						xmppUtils.sendMessage(room+"/"+nick, "You missed "+target+" you dolt!", "private")
						xmppUtils.sendMessage(room+"/"+target, nick+" shot at you, and missed! Shoot that bugger back :P", "private")

				checklvlup(nickJID, nick, room)

			else:
				xmppUtils.sendMessage(room+"/"+nick, "You have no ammo left!", "private")

		#	#	#	#	#	 buying 	#	#	#	#	#
		elif len(data) >= 3 and data[1].lower() == "buys":
			num = 0
			#~ print data
			try:
				num = int(data[2])
			except ValueError:
				if data[2] == 'max':
					if data[3].lower() == "ammo" or data[3].lower() == "bullets": num = pyrefight.fightdata[nickJID]['gold']/5
					if data[3].lower() == "hp" or data[3].lower() == "health": num = pyrefight.fightdata[nickJID]['gold']/3
				else:
					xmppUtils.sendMessage(room+"/"+nick, "Syntax is '/me buys n object'. You must use 'bullets', 'ammo', 'hp', 'health' for object, and supply an integer, or the word 'max' for n.", "private")
					return 1

			if num < 0:
				xmppUtils.sendMessage(room+"/"+nick, "Cannot use amounts below 0", "private")
				return -1

			if data[3].lower() == "ammo" or data[3].lower() == "bullets":
				if  pyrefight.fightdata[nickJID]['gold'] < 5*num:
					xmppUtils.sendMessage(room+"/"+nick, "Insufficient gold!", "private")
				else:
					pyrefight.fightdata[nickJID]['gold'] -= 5*num
					pyrefight.fightdata[nickJID]['ammo'] += num

					xmppUtils.sendMessage(room, "/me takes "+str(5*num)+" gold from and gives "+str(num)+" bullets to "+nick, "groupchat")

			elif data[3].lower() == "health" or data[3].lower() == "hp":
				if num + pyrefight.fightdata[nickJID]['hp'] > pyrefight.fightdata[nickJID]['maxhp']:
					num = pyrefight.fightdata[nickJID]['maxhp'] - pyrefight.fightdata[nickJID]['hp']

				if pyrefight.fightdata[nickJID]['gold'] < 3*num:
					xmppUtils.sendMessage(room+"/"+nick, "Insufficient gold!", "private")
					#~ print 3*num
					#~ print pyrefight.fightdata[nickJID]['gold']

				else:
					pyrefight.fightdata[nickJID]['gold'] -= 3*num
					pyrefight.fightdata[nickJID]['hp'] += num
					xmppUtils.sendMessage(room, "/me takes "+str(3*num)+" gold from and heals "+str(num)+" hp for "+nick, "groupchat")

		#	#	#	#	#	 Revive 	#	#	#	#	#
		elif len(data) >= 3 and data[1].lower() == "revives":
			if pyrefight.fightdata[targetJID]['hp'] == 0 and pyrefight.fightdata[nickJID]['hp'] > 0:
				pyrefight.fightdata[nickJID]['hp'] -= pyrefight.fightdata[nickJID]['hp']/4
				pyrefight.fightdata[nickJID]['karma'] += 1
				pyrefight.fightdata[nickJID]['gold'] += 25
				pyrefight.fightdata[targetJID]['hp'] = pyrefight.fightdata[targetJID]['maxhp']/2
				xmppUtils.sendMessage(room+"/"+target, nick+" revived you! How nice :P", "private")
				xmppUtils.sendMessage(room+"/"+nick, "You revived "+target+" to half health! (and suffered "+str(pyrefight.fightdata[nickJID]['hp']/4)+" damage for it)", "private")
				xmppUtils.sendMessage(room, nick+" gave a quarter of their hp to give "+target+" half of theirs. How noble.", "groupchat")

		#	#	#	#	#	  heal  	#	#	#	#	#
		elif len(data) >= 3 and data[1].lower() == "heals":
			if pyrefight.fightdata[targetJID]['hp'] != 0 and pyrefight.fightdata[nickJID]['hp'] > 0 and nickJID <> targetJID and pyrefight.fightdata[targetJID]['maxhp'] != pyrefight.fightdata[targetJID]['hp']:
				amt = pyrefight.fightdata[nickJID]['hp']/10
				pyrefight.fightdata[nickJID]['hp'] -= amt
				if amt > 25: pyrefight.fightdata[nickJID]['karma'] += 1
				pyrefight.fightdata[nickJID]['gold'] += 5
				pyrefight.fightdata[targetJID]['hp'] += amt*3*(1+(pyrefight.fightdata[nickJID]['karma']-50))
				if pyrefight.fightdata[targetJID]['hp'] > pyrefight.fightdata[targetJID]['maxhp'] or pyrefight.fightdata[targetJID]['hp'] < 0:
					pyrefight.fightdata[targetJID]['hp'] = pyrefight.fightdata[targetJID]['maxhp']
				xmppUtils.sendMessage(room+"/"+target, nick+" healed you! "+str(amt*3)+" health restored", "private")
				xmppUtils.sendMessage(room+"/"+nick, "You healed "+target+" "+str(amt*3)+" hp! (and suffered "+str(amt)+" damage for it)", "private")
				#~ xmppUtils.sendMessage(room, nick+" gave "+str(amt)+" hp to heal "+target+" "+str(amt*3)+" of theirs.", "groupchat")

		#	#	#	#	#	  check 	#	#	#	#	#
		elif len(data) >= 3 and data[1].lower() == "checks" and "stats" in data:
			xmppUtils.sendMessage(room+"/"+nick,"Stats for "+str(pyrefight.fightdata[nickJID]['jid'])+" are:\rLevel:	"+str(pyrefight.fightdata[nickJID]['level'])+"\rHp:		"+str(pyrefight.fightdata[nickJID]['hp'])+"/"+str(pyrefight.fightdata[nickJID]['maxhp'])+"\rXp: 		"+str(pyrefight.fightdata[nickJID]['xp'])+"/"+str((11+pyrefight.fightdata[nickJID]['level'])*(12+pyrefight.fightdata[nickJID]['level']))+"\rAccuracy: 	"+str(pyrefight.fightdata[nickJID]['accuracy'])+"\rGold:	"+str(pyrefight.fightdata[nickJID]['gold'])+"\rKarma:	"+str(pyrefight.fightdata[nickJID]['karma'])+"/100\rAmmo:	"+str(pyrefight.fightdata[nickJID]['ammo']), 'private')

		#	#	#	#	#	  check 	#	#	#	#	#
		elif len(data) >= 3 and data[1].lower() == "checks" and "roster" in data and nick == "Corgano":
			xmppUtils.sendMessage(room+"/"+nick,pyrefight.fightdata, 'private')

		#	#	#	#	#	   save 	#	#	#	#	#
		elif len(data) >= 3 and data[1].lower() == "saves" and nick == "Corgano":
			for jid in pyrefight.fightdata:
				print jid
				pyrefight.setstats(jid,pyrefight.fightdata[jid])
			xmppUtils.sendMessage(room, "Data saved!", "groupchat")

		#	#	#	#	#	   give 	#	#	#	#	#
		elif len(data) >= 4 and data[1].lower() == "gives":
			try:
				num = int(data[3])
			except ValueError:
				xmppUtils.sendMessage(room+"/"+nick, "Syntax is '/me gives who n item'. You must supply a valid name for who, an integer for n, and one of the phrases 'bullets', 'ammo', 'gold' for item", "private")
				return 1

			if num < 0:
				xmppUtils.sendMessage(room+"/"+nick, "Cannot use amounts below 0", "private")
				return -1

			if data[4] == "bullets" or data[4] == "ammo":
				if num > pyrefight.fightdata[nickJID]['ammo']:
					xmppUtils.sendMessage(room+"/"+nick, "You havn't "+str(num)+" bullets to give!", "private")
					return 2
				pyrefight.fightdata[nickJID]['ammo'] -= num
				pyrefight.fightdata[targetJID]['ammo'] += num
				if num > 30: pyrefight.fightdata[nickJID]['karma'] += 1

			elif data[4] == "gold":
				if num > pyrefight.fightdata[nickJID]['gold']:
					xmppUtils.sendMessage(room+"/"+nick, "You havn't "+str(num)+" bullets to give!", "private")
					return 2
				pyrefight.fightdata[nickJID]['gold'] -= num
				pyrefight.fightdata[targetJID]['gold'] += num
				if num > 200: pyrefight.fightdata[nickJID]['karma'] += 1

			else:
				xmppUtils.sendMessage(room+"/"+nick, "Syntax is '/me gives who n item'. You must supply a valid name for who, an integer for n, and one of the phrases 'bullets', 'ammo', 'gold' for item", "private")

			xmppUtils.sendMessage(room+"/"+nick, target+" has recieved "+str(num)+" "+data[4]+" from you.", "private")
			xmppUtils.sendMessage(room+"/"+target, "You have recieved "+str(num)+" "+data[4]+" from "+nick+".", "private")
Beispiel #22
0
def process(sender, type, args, client):
	try:
		response = Popen(["uptime"], stdout=PIPE).communicate()[0].split('\n')[0]
	except WindowsError: # Bloody windows...
		return 0
	xmppUtils.sendMessage(sender, response, type)
Beispiel #23
0
def process(sender, type, args, client):
	if not args:
		args = 'help'

	args = args.split(' ', 2)

	action = args[0]
	if len(args) > 1:
			nick = args[1]
	else:
		nick = None

	if nick in omegleSessions and not omegleSessions[nick].connected:
		del omegleSessions[nick]

	if action == 'start':
		if nick:
			if nick in omegleSessions:
				xmppUtils.sendMessage(sender, '.' + sender.getResource() + ": already present: " + nick, type)
				return
		else:
			nick = getNick(nick)
			if not nick:
				xmppUtils.sendMessage(sender, '.' + sender.getResource() + ": failed to find a random nick", type)
				return

		omegle = OmegleClient(sender.getStripped(), nick)
		omegleSessions[nick] = omegle
		omegle.start()
#		xmppUtils.sendMessage(sender, sender.getResource() + ": added - " + nick, type)

	elif action == 'stop' or action == 'off':
		if len(omegleSessions) == 0:
			return

		if nick:
			if nick in omegleSessions:
				omegleSessions[nick].stop()
				del omegleSessions[nick]
#				xmppUtils.sendMessage(sender, sender.getResource() + ": removed - " + nick, type)
			else:
				xmppUtils.sendMessage(sender, "not found - " + nick, 'chat')
			return

		if len(omegleSessions) == 1:
			nick = omegleSessions.keys()[0]
			omegleSessions[nick].stop()
			del omegleSessions[nick]
#			xmppUtils.sendMessage(sender, sender.getResource() + ": removed - " + nick, type)
		else:
			xmppUtils.sendMessage(sender, sender.getResource() + ": stop who?", type)

	elif action == 'skip' or action == 'on' or action == 'next':
		if nick:
			if nick in omegleSessions:
				omegleSessions[nick].stop()
				del omegleSessions[nick]
#				xmppUtils.sendMessage(sender, sender.getResource() + ": removed - " + nick, type)
#			else:
#				xmppUtils.sendMessage(sender, sender.getResource() + ": not found - " + nick, type)

		if not nick:
			if len(omegleSessions) == 1:
				nick = omegleSessions.keys()[0]
				omegleSessions[nick].stop()
				del omegleSessions[nick]
#				xmppUtils.sendMessage(sender, sender.getResource() + ": removed - " + nick, type)
			else:
				nick = getNick(nick)
				if not nick:
					xmppUtils.sendMessage(sender, '.' + sender.getResource() + ": failed to find a random nick", type)
					return

		omegle = OmegleClient(sender.getStripped(), nick)
		omegleSessions[nick] = omegle
		omegle.start()
#		xmppUtils.sendMessage(sender, sender.getResource() + ": added - " + nick, type)

	elif action == 'public' or action == 'private':
		isPublic = (action == 'public')
		if nick and nick in omegleSessions:
				omegleSessions[nick].setScope(isPublic)
				xmppUtils.sendMessage(sender, sender.getResource() + ': switched to ' + action + ' - ' + nick, type)
				return

		if not nick:
			nick = getNick(nick)
			if not nick:
				xmppUtils.sendMessage(sender, sender.getResource() + ": Failed to find a random nick.", type)
				return

		omegle = OmegleClient(sender.getStripped(), nick)
		omegleSessions[nick] = omegle
		omegle.targetHandle = sender.getResource()
		omegle.start(isPublic)
		xmppUtils.sendMessage(sender, sender.getResource() + ': initiated ' + action + ' - ' + nick, type)

	elif action == 'captcha':
		if len(omegleSessions) == 0:
				return

		if not nick or nick not in omegleSessions:
			xmppUtils.sendMessage(sender, sender.getResource() + ': valid nickname required', type)
			return

		if len(args) < 3:
			xmppUtils.sendMessage(sender, sender.getResource() + ': what do I tell them?', type)
			return

		omegleSessions[nick].sendCaptcha(args[2])
		xmppUtils.sendMessage(sender, sender.getResource() + ': sent captcha response - ' + args[2], type)

	elif action == 'list':
		keys = omegleSessions.keys()
		for key in keys:
			if not omegleSessions[key].connected:
				del omegleSessions[key]

		xmppUtils.sendMessage(sender, str(omegleSessions.keys()), 'chat')

	else:
		xmppUtils.sendMessage(sender, "syntax = " + commandText + " (start, stop, skip, public, private, list, captcha) [nickname]", 'chat')
Beispiel #24
0
def process(sender, type, args, client):
	comSend = sender.getResource()
	room = sender.getStripped()
	if len(args) == 0:
		xmppUtils.sendMessage(room, helpText, type='groupchat')
	elif len(args) >= 1 and args == ('himself', 'herself'):
	#~	xmppUtils.sendMessage(room, '/me shoots ' + comSend + ' in the back of the head.'
		xmppUtils.setRole(room, comSend, 'none', random.choice(['Ouch.', 'Suicide...', 'Wait, why?', 'Nice Kurt Cobain imitation.']))
	elif len(args) > 0:
		fire = '/me shoots at %s with %s' % (args, random.choice(weapons))
		randaim = random.randint(1,100)
		if (randaim >= 80):
			xmppUtils.sendMessage(room, fire, type='groupchat')
			xmppUtils.setRole(room, args, 'none', random.choice(['BOOM. Headshot.', 'Ouch, that\'s gotta hurt.', 'He wont be in Rush Hour Three...', '...that\'s gonna leave a bruise in the mornin\'.']))

		elif (randaim >= 30):
			xmppUtils.sendMessage(room, fire, type='groupchat')
			xmppUtils.setRole(room, args, 'visitor')
			xmppUtils.sendMessage(room, random.choice(['Ouch, that\'s gotta hurt.', '...that\'s gonna leave a bruise in the mornin\'.', '\'Tis but a flesh wound!']), type='groupchat')

		elif (randaim <= 15):
			xmppUtils.sendMessage(room, fire, type='groupchat')
			xmppUtils.sendMessage(room, 'My apologies, it appears I missed horridly. Try again later.', type='groupchat')
Beispiel #25
0
def process(sender, type, quote, client):
	room = sender.getStripped()
	quote = random.choice(open(quote_file).readlines()).strip()
	xmppUtils.sendMessage(room, quote, type='groupchat')