def sprite(self, image): # Sprite creation self.isSprite = True pygame.sprite.Sprite.__init__(self) self.baseImage = pygame.image.load(Functions.gfxPath(image)).convert_alpha() self.image = self.baseImage self.rect = self.image.get_rect() self.rect.center = (self.x, self.y)
def sprite(self, image): # Sprite creation self.isSprite = True pygame.sprite.Sprite.__init__(self) self.baseImage = pygame.image.load(Functions.gfxPath(image)).convert_alpha() self.image = self.baseImage self.rect = self.image.get_rect() self.rect.center = (self.x, self.y) if self.colorize: for x in range(self.baseImage.get_width()): for y in range(self.baseImage.get_height()): ownhue = colorsys.rgb_to_hls(self.owner.color[0]/255.0, self.owner.color[1]/255.0, self.owner.color[2]/255.0)[0] color = colorsys.rgb_to_hls(self.baseImage.get_at((x,y))[0]/255.0, self.baseImage.get_at((x,y))[1]/255.0, self.baseImage.get_at((x,y))[2]/255.0) newcolor = colorsys.hls_to_rgb(ownhue, color[1], color[2]) self.baseImage.set_at((x,y), (newcolor[0]*255, newcolor[1]*255, newcolor[2]*255, self.baseImage.get_at((x,y))[3]))
def draw(self, game, keys, i): if Settings.playerAmount == 3: if i == 0: i = 1 elif i == 1: i = 0 game.screen.fill((0,0,0), ((i*Settings.width/Settings.playerAmount,0),(Settings.width/Settings.playerAmount,Settings.height))) game.screen.blit(pygame.transform.scale(pygame.image.load(Functions.gfxPath(Settings.ships[self.shipNum]().image)), (200,150)),(i*Settings.width/Settings.playerAmount+25,25)) game.screen.blit(game.text2.render(Settings.ships[self.shipNum]().name, True, (0,255,0)), (i*Settings.width/Settings.playerAmount+25,190)) game.screen.blit(game.text.render("Strength:", True, (255,255,255)), (i*Settings.width/Settings.playerAmount+50,245)) for x in range(Settings.ships[self.shipNum]().strength): pygame.draw.rect(game.screen, (255,0,0), ((i*Settings.width/Settings.playerAmount+x*15+75,270),(10,20))) game.screen.blit(game.text.render("Acceleration:", True, (255,255,255)), (i*Settings.width/Settings.playerAmount+50,295)) for x in range(Settings.ships[self.shipNum]().acceleration): pygame.draw.rect(game.screen, (255,0,0), ((i*Settings.width/Settings.playerAmount+x*15+75,320),(10,20))) game.screen.blit(game.text.render("Loading speed:", True, (255,255,255)), (i*Settings.width/Settings.playerAmount+50,345)) for x in range(Settings.ships[self.shipNum]().loadingSpeed): pygame.draw.rect(game.screen, (255,0,0), ((i*Settings.width/Settings.playerAmount+x*15+75,370),(10,20))) game.screen.blit(game.text3.render("Controls:", True, (0,255,0)), (i*Settings.width/Settings.playerAmount+25,400)) game.screen.blit(game.text.render("Shoot / Select (menu)", True, (255,255,255)), (i*Settings.width/Settings.playerAmount+50,440)) game.screen.blit(game.text.render(pygame.key.name(keys[4]).upper(), True, (255,0,0)), (i*Settings.width/Settings.playerAmount+75,460)) game.screen.blit(game.text.render("Steer / Change item (menu)", True, (255,255,255)), (i*Settings.width/Settings.playerAmount+50,480)) game.screen.blit(game.text.render(pygame.key.name(keys[1]).upper() + " + " + pygame.key.name(keys[2]).upper(), True, (255,0,0)), (i*Settings.width/Settings.playerAmount+75,500)) game.screen.blit(game.text.render("Thrust", True, (255,255,255)), (i*Settings.width/Settings.playerAmount+50,520)) game.screen.blit(game.text.render(pygame.key.name(keys[0]).upper(), True, (255,0,0)), (i*Settings.width/Settings.playerAmount+75,540)) game.screen.blit(game.text.render("Shoot heavy weapon", True, (255,255,255)), (i*Settings.width/Settings.playerAmount+50,560)) game.screen.blit(game.text.render(pygame.key.name(keys[3]).upper(), True, (255,0,0)), (i*Settings.width/Settings.playerAmount+75,580)) if self.done: game.screen.blit(game.text2.render("Ready!", True, (0,255,255)), (i*Settings.width/Settings.playerAmount+60,25))
def draw(self, game, keys, i): if Settings.settings["Rules"]["playeramount"] == 3: if i == 0: i = 1 elif i == 1: i = 0 game.screen.fill((0,0,0), ((i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"],0),(Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"],Settings.settings["Screen"]["height"]))) game.screen.blit(pygame.transform.scale(pygame.image.load(Functions.gfxPath(eval("ShipTypes." + Settings.settings["Ships"][self.shipNum])().image)), (200,150)),(i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+25,25)) game.screen.blit(game.text2.render(eval("ShipTypes." + Settings.settings["Ships"][self.shipNum])().name, True, (0,255,0)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+25,190)) game.screen.blit(game.text.render("Strength:", True, (255,255,255)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+50,245)) for x in range(eval("ShipTypes." + Settings.settings["Ships"][self.shipNum])().strength): pygame.draw.rect(game.screen, (255,0,0), ((i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+x*15+75,270),(10,20))) game.screen.blit(game.text.render("Acceleration:", True, (255,255,255)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+50,295)) for x in range(eval("ShipTypes." + Settings.settings["Ships"][self.shipNum])().acceleration): pygame.draw.rect(game.screen, (255,0,0), ((i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+x*15+75,320),(10,20))) game.screen.blit(game.text.render("Loading speed:", True, (255,255,255)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+50,345)) for x in range(eval("ShipTypes." + Settings.settings["Ships"][self.shipNum])().loadingSpeed): pygame.draw.rect(game.screen, (255,0,0), ((i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+x*15+75,370),(10,20))) game.screen.blit(game.text3.render("Controls:", True, (0,255,0)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+25,400)) game.screen.blit(game.text.render("Shoot / Select (menu)", True, (255,255,255)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+50,440)) game.screen.blit(game.text.render(pygame.key.name(keys["shoot1"]).upper(), True, (255,0,0)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+75,460)) game.screen.blit(game.text.render("Steer / Change item (menu)", True, (255,255,255)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+50,480)) game.screen.blit(game.text.render(pygame.key.name(keys["rotate1"]).upper() + " + " + pygame.key.name(keys["rotate2"]).upper(), True, (255,0,0)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+75,500)) game.screen.blit(game.text.render("Thrust", True, (255,255,255)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+50,520)) game.screen.blit(game.text.render(pygame.key.name(keys["thrust"]).upper(), True, (255,0,0)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+75,540)) game.screen.blit(game.text.render("Shoot heavy weapon", True, (255,255,255)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+50,560)) game.screen.blit(game.text.render(pygame.key.name(keys["shoot2"]).upper(), True, (255,0,0)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+75,580)) if self.done: game.screen.blit(game.text2.render("Ready!", True, (0,255,255)), (i*Settings.settings["Screen"]["width"]/Settings.settings["Rules"]["playeramount"]+60,25))
def setImage(self, image): # Set weapon icon self.image = pygame.transform.smoothscale(pygame.image.load(Functions.gfxPath(image)).convert_alpha(), (18,18))