以下是部分代码预览:
""" Octopus demo in sea by lixingqiu python街机模块arcade制作的模拟海底动画章鱼哥 """ __author__ = "lixingqiu" __date__ = "2014/4/3" __url__ = "https://www.lixingqiu.com/?p=313" __qq__ = "406273900" import os import arcade import random SCREEN_WIDTH = 500 SCREEN_HEIGHT = 685 SCREEN_TITLE = "Octopus demo python街机模块arcade制作的模拟海底动画章鱼哥 " COIN_SCALE = 1.0 COIN_COUNT = 50 MOVEMENT_SPEED = 5 class Actor(arcade.AnimatedTimeSprite): def __init__(self,images,scale): super().__init__() while images:self.textures.append(arcade.load_texture(images.pop(0),scale= scale)) class Octopus(arcade.Sprite): def __init__(self,images): super().__init__() self.costume_amount = len(images) def alt_costume(self): self.frame_counter += 1 class MyGame(arcade.Window): def __init__(self, width, height, title): """ 初始化方法 """ super().__init__(width, height, title) self.background = None self.octopus = None # 定义所有角色列表 self.all_actor_list = None def setup(self): self.all_actor_list = arcade.SpriteList() bgimages = ["images/bg2" + os.sep + f"{index:04d}" + ".png" for index in range(1,16)] self.background = Actor(bgimages,1.0) self.background.center_x = SCREEN_WIDTH//2 self.background.center_y = SCREEN_HEIGHT//2 self.all_actor_list.append(self.background) octopus_images = ["images/octopus/" + str(i) + ".png" for i in range(1,82)] self.octopus = Octopus(octopus_images) self.octopus.center_x = SCREEN_WIDTH//2 self.octopus.center_y = SCREEN_HEIGHT//2 self.octopus.alpha = 80 self.all_actor_list.append(self.octopus) def on_draw(self): """ 渲染屏幕 """ arcade.start_render() self.all_actor_list.draw() def update(self, delta_time): """ 更新角色""" self.all_actor_list.update() self.all_actor_list.update_animation() self.octopus.alt_costume() def main(): """ 主要方法 """ window = MyGame(SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_TITLE) window.setup() arcade.run() if __name__ == "__main__": main()
下载完整源代码与素材,请扫码付款。