コード例 #1
0
ファイル: bind.py プロジェクト: epicvrvs/craw_module
def invite_all():
	print 'Inviting all players'
	my_player = utility.get_my_player()
	players = craw.get_players()
	for player in players:
		if my_player.id == player.id:
			continue
		packets.invite_player(player.id)
コード例 #2
0
ファイル: packets.py プロジェクト: epicvrvs/craw_module
def hostile_players():
    print "Declaring hostility to all players"
    players = craw.get_players()
    my_id = craw.get_player_id()
    players = filter(lambda player: player.id != my_id and player.level >= 9, players)
    packet = ""
    for player in players:
        packet += hostile_player_string(player.id)

    craw.send_packet(packet)
コード例 #3
0
ファイル: command.py プロジェクト: epicvrvs/craw_module
	def print_players(self, arguments):
		players = craw.get_players()
		index = 0
		for player in players:
			print 'Player index: %d' % index
			print 'Name: %s' % player.name
			print 'ID: %08x' % player.id
			print 'Level: %d' % player.level
			print 'Character class: %d' % player.character_class
			print 'Life: %d' % player.life
			print 'Area: %d' % player.level_id
			print 'Location: (%d, %d)\n' % (player.x, player.y)
			print 'Party ID: %08x' % player.party
			index += 1
コード例 #4
0
ファイル: command.py プロジェクト: epicvrvs/craw_module
	def flash(self, arguments):
		try:
			index = int(arguments[0])
			delay = int(arguments[1])
		except:
			print 'Invalid input'
			return
			
		players = craw.get_players()
		if index < 0 or index >= len(players):
			print 'Invalid player index specified'
			return
			
		id = players[index].id
		print 'Launching a flash thread for id %08x at %d ms' % (id, delay)
		delay = float(delay) / 1000.0
		self.flash_objects.append(flash.flash_thread(id, delay))
コード例 #5
0
ファイル: player_killer.py プロジェクト: epicvrvs/craw_module
	def get_target(self):
		players = craw.get_players()
		my_player = utility.get_my_player()
		players = filter(lambda x: x.level >= 9 and x.x != 0 and x.id != my_player.id and not self.is_a_friend(x), players)
		players = map(lambda x: (utility.get_d2_distance(my_player, x), x), players)
		players = filter(lambda x: x[0] <= configuration.maximal_attack_distance, players)
		players.sort(cmp = utility.sort_units)
		
		if len(players) == 0:
			print 'There are no suitable targets in range.'
			return None
		
		print 'List of targets:'
		counter = 1
		for distance, player in players:
			print '%d. %s: %.2f (%d, %d)' % (counter, player.name, distance, player.x, player.y)
			counter += 1
			
		target = players[0][1]
		return target
コード例 #6
0
ファイル: player_killer.py プロジェクト: epicvrvs/craw_module
	def is_in_range(self, id):
		players = filter(lambda x: x.id == id, craw.get_players())
		if len(players) == 0:
			return False
		player = players[0]
		return player.x != 0