def __init__(self, screen, position_x, position_y, height, width, inverted): super().__init__(screen, 0, 0) self.sprite = Sprite('base.png', height, width, None) self.inverted = inverted if self.inverted: self.sprite.image = pygame.transform.flip(self.sprite.image, False, True) self.group = self.sprite.group()
class LandScape(GameObject): def __init__(self, screen, position_x, position_y, height, width): super().__init__(screen, 0, 0) self.sprite = Sprite('background-day.png', height, width, (600, 600)) self.image = self.sprite.get_image() self.group = self.sprite.group() def load(self): self.group.add(self.sprite) def update(self): self.group.update() def draw(self): self.group.draw(self.screen)
def __init__(self, screen, position_x, position_y, height, width, neuralNetwork=None): super().__init__(screen, position_x, position_y) self.sprite = Sprite('bluebird-upflap.png', height, width, None) self.group = self.sprite.group() self.position_y = position_y if neuralNetwork == None: self.neuralNetwork = NeuralNetwork() else: self.neuralNetwork = neuralNetwork
class Bird(GameObject): def __init__(self, screen, position_x, position_y, height, width, neuralNetwork=None): super().__init__(screen, position_x, position_y) self.sprite = Sprite('bluebird-upflap.png', height, width, None) self.group = self.sprite.group() self.position_y = position_y if neuralNetwork == None: self.neuralNetwork = NeuralNetwork() else: self.neuralNetwork = neuralNetwork def load(self): self.group.add(self.sprite) def update(self, params): value = self.neuralNetwork.get_model().predict([params]) if value[0][0] > 0.5: flag_movement = 'down' else: flag_movement = 'up' self.movement(flag_movement) self.group.update() def movement(self, flag): if flag == 'up': self.position_y = -10 + self.position_y self.sprite.set_position(self.position_y) else: self.position_y += 1 self.sprite.set_position(self.position_y) def draw(self): self.group.draw(self.screen) def distance(self, sprite_object): dist = math.hypot(self.position_x - sprite_object.position_x, self.position_y - sprite_object.position_y) def get_neural_network(self): return self.neuralNetwork.get_model()
def __init__(self, game, playerid, *args, **kwargs): Character.__init__(self, rectangle=[0, 0, 11.0 / gfx.width, 12.0 / gfx.width]) EventMonitor.__init__(self) self.playerid = playerid self.game = game self.chatbox = game.hud.chatBox self.sb = None self.inventory = [] self.portal = None self.hspeed = self.hspeed / config.zoom self.jump = self.jump / config.zoom self.framerate = 25 self.active = kwargs.get("active", False) Sprite.__init__(self, "player", ["stand.left", "stand.right", "walk.left", "walk.right", "jump.left", "jump.right"]) for action in self.actions: for img in self.actions[action]: img.Scale(Multiply(img.Size(), config.zoom))
def __init__(self, game, playerid, *args, **kwargs): Character.__init__( self, rectangle=[0, 0, 11.0 / gfx.width, 12.0 / gfx.width]) EventMonitor.__init__(self) self.playerid = playerid self.game = game self.chatbox = game.hud.chatBox self.sb = None self.inventory = [] self.portal = None self.hspeed = self.hspeed / config.zoom self.jump = self.jump / config.zoom self.framerate = 25 self.active = kwargs.get("active", False) Sprite.__init__(self, "player", [ "stand.left", "stand.right", "walk.left", "walk.right", "jump.left", "jump.right" ]) for action in self.actions: for img in self.actions[action]: img.Scale(Multiply(img.Size(), config.zoom))
class BackGround(GameObject): def __init__(self, screen, position_x, position_y, height, width, inverted): super().__init__(screen, 0, 0) self.sprite = Sprite('base.png', height, width, None) self.inverted = inverted if self.inverted: self.sprite.image = pygame.transform.flip(self.sprite.image, False, True) self.group = self.sprite.group() def load(self): self.group.add(self.sprite) def update(self): self.group.update() def draw(self): self.group.draw(self.screen)
class Pipe(GameObject): def __init__(self, screen, position_x, position_y, height, width, inverted): super().__init__(screen, position_x, position_y) self.sprite = Sprite('pipe-red.png', height, width, None) self.inverted = inverted if inverted: self.sprite.image = pygame.transform.flip(self.sprite.image, False, True) self.group = self.sprite.group() def load(self): self.group.add(self.sprite) def update(self): self.sprite.rect[0]-= 5 self.group.update() def draw(self): self.group.draw(self.screen)
def Draw(self): Sprite.Draw(self) Concurrent.Draw(self)
def __init__(self, screen, position_x, position_y, height, width): super().__init__(screen, 0, 0) self.sprite = Sprite('background-day.png', height, width, (600, 600)) self.image = self.sprite.get_image() self.group = self.sprite.group()