def __init__(self): # Setup GUI self.playerselection = 0 defaultStyle.init(gui) self.desktop = gui.Desktop() self.win = gui.Window(position = (800,0), size = (200,600), parent = self.desktop, text = 'Statistics and Help') self.lbl = gui.Label(position = (2, 30), text = '---- Mini-map Key ----', parent = self.win) self.movbtn = gui.OnImageButton(utils.load_image('movebx.png'), position = (15, 50), parent = self.win) self.mvlbl = gui.Label(position = (25, 45), text = 'Moving / Living Player', parent = self.win) self.atkbtn = gui.OnImageButton(utils.load_image('atkbx.png'), position = (15, 70), parent = self.win) self.atklbl = gui.Label(position = (25, 65), text = 'Attacking Player', parent = self.win) self.deadbtn = gui.OnImageButton(utils.load_image('deadbx.png'), position = (15, 90), parent = self.win) self.deadlbl = gui.Label(position = (25, 85), text = 'Slain Player', parent = self.win) self.ovbtn = gui.OnImageButton(utils.load_image('ovbx.png'), position = (15, 110), parent = self.win) self.ovlbl = gui.Label(position = (25, 105), text = 'Overlord Player', parent = self.win) self.statslbl = gui.Label(position = (2, 130), text = '---- Player List ----', parent = self.win) self.playerstats = gui.ListBox(position = (2, 150), size = (196, 200), parent = self.win) self.playerstats.onItemSelected = self.itemSelected self.lbl_title_pos = gui.Label(position = (5, 350), text='Player (id:#): Status - ', parent = self.win) self.lbl_pos = gui.Label(position = (5, 365), text='Location: ( #, # )', parent = self.win) self.lbl_health = gui.Label(position = (5, 380), text='Health: # / 25', parent = self.win) self.lbl_ai_courage = gui.Label(position = (5, 395), text='AI Courage: #', parent = self.win) self.lbl_ai_camper = gui.Label(position = (5, 410), text='AI Camper: #', parent = self.win) self.lbl_ai_clingy = gui.Label(position = (5, 425), text='AI Clingy: #', parent = self.win) self.lbl_ai_stack = gui.Label(position = (5, 440), text='AI Stack: #', parent = self.win) self.player_img_alive = gui.OnImageButton(utils.load_sliced_sprites(32, 32, 'characters/zelda_atk.png')[0], position = (100,420), parent = self.win, enabled = False) self.player_img_dead = gui.OnImageButton(utils.load_sliced_sprites(32, 32, 'characters/zelda_dead.png')[0], position = (100,420), parent = self.win, enabled = False)
def updatePlayer(self, player): if self.players.has_key(player.id): # Check to see if were dying if player.isDead(): self.players[player.id].die() elif player.attacking: self.players[player.id].attack() else: self.players[player.id].gotoTile(player.x, player.y) else: self.players[player.id] = AnimatedSprite.AnimatedSprite(utils.load_sliced_sprites(32, 32, 'characters/zelda_move.png'), player.x,player.y) # Add the death and attacking images self.players[player.id].addAttackImages(utils.load_sliced_sprites(32, 32, 'characters/zelda_atk.png')) self.players[player.id].addDeathImages(utils.load_sliced_sprites(32, 32, 'characters/zelda_dead.png'))
def __init__(self, sprite_filename): pygame.sprite.Sprite.__init__(self) # call Sprite intializer self._images = utils.load_sliced_sprites(self.rect.width, self.rect.height, sprite_filename) self._start = pygame.time.get_ticks() self._last_update = 0 self._frame_index = 0 self._distance = 0 self.image = self._images[0] self.update()
def __init__(self, images, player, speed=3, delay=250, image='powerup1.png'): pygame.sprite.Sprite.__init__(self) screen = pygame.display.get_surface() self.area = screen.get_rect() self.speed = speed self._last_update = 0 self._frame = 0 self._start = pygame.time.get_ticks() self._delay = delay self.powerUpSound = powerUpSound self.image, self.rect = load_image(image, -1) self.images = load_sliced_sprites(32, 32, images) self.player = player # powerup strength self.power = 0.1 self.rect.top = 0 self.rect.left = randint(0, self.area.right - 32) self.bonus = 0
def addPlayer(self, player): self.players[player.id] = AnimatedSprite.AnimatedSprite(utils.load_sliced_sprites(32, 32, 'characters/zelda_move.png'), player.x,player.y)
# Get the map if len(sys.argv) is not 2: print 'Usage: python TileMapTest.py <level number>' sys.exit() # Setup pygame pygame.init() screen = pygame.display.set_mode((800, 600)) pygame.display.set_caption('DIstributed Genetic Algorithm (DIGA) - Map Viewer') # Map scene mapscene = TileMap.TileMap('level'+sys.argv[1]) # main loop time = 0 running = True mapscene.addPlayer(player.player_class(1, 20, 1)) #mapscene.addPlayer(player.player_class(1, 2, 2)) overlord = OverlordSprite(utils.load_sliced_sprites(32, 32, 'characters/alien.png'), 6,6, 0, 3, 3, mapscene) mapscene.setOverlord(overlord) while running: # Handle map rendering and updating with movement for evt in pygame.event.get(): if evt.type == pygame.QUIT: running = False mapscene.update(screen, evt) pygame.display.flip()