деф__в него__(self, scroll_speed):
супер().__init__()
self.scroll_speed = скорост на превъртане
класMyGame(аркадна. прозорец):
деф__в него__(аз, ширина, височина):
super().__init__(ширина, височина)
arcade.set_background_color (arcade.color. БЯЛО)
self.player = Нито един
self.platforms = Нито един
self.layers = []
дефнастройвам(себе си):
self.player = Player()
self.platforms = аркада. SpriteList()
сиво = arcade.color. СИВО
червено = arcade.color. ЧЕРВЕН
кафяво = аркаден цвят. КАФЯВО
жълто = arcade.color. ЖЪЛТ
w = SCREEN_WIDTH // 2
h = SCREEN_HEIGHT // 2
self.platforms.append (Платформа (w, h - 100, 200, 20, жълто))
self.platforms.append (Платформа (w, h + 100, 200, 20, жълто))
слоеве_данни = [
(Слой(0.2), платформа (ш, в, 800, 600, сиво)),
(Слой(0.5), платформа (ш, в - 200, 400, 20, червен)),
(Слой(0.5), Платформа (ш, в + 200, 400, 20, червен)),
(Слой(1.0), платформа (ш, в - 300, 200, 20, кафяв)),
(Слой(1.0), Платформа (ш, в + 300, 200, 20, кафяв))
]
за слой, платформа в слоеве_данни:
layer.append (платформа)
self.layers.append (слой)
# ...
дефнастройвам(себе си):
# ...
слоеве_данни = [
(Слой(1.2), платформа (ш, в, 800, 600, сиво)),
(Слой(2.5), платформа (ш, в - 200, 400, 20, червен)),
(Слой(3.0), Платформа (ш, в + 200, 400, 20, червен)),
(Слой(4.0), платформа (ш, в - 300, 200, 20, кафяв)),
(Слой(5.0), Платформа (ш, в + 300, 200, 20, кафяв))
]
# ...
деф__в него__(себе си, x, y):
супер().__init__()
self.texture = arcade.make_soft_square_texture(
3, синьо, външна_алфа=100)
self.center_x = x
self.center_y = y
класBackgroundLayer(аркадна. SpriteList):
деф__в него__(self, scroll_speed):
супер().__init__()
self.scroll_speed = скорост на превъртане
self.raindrops = аркада. SpriteList()
дефактуализация(себе си):
за дъждовна капка в self.raindrops:
raindrop.center_y -= self.scroll_speed * 5
ако дъждовна капка.center_y < -10:
raindrop.remove_from_sprite_lists()
дефрисувам(себе си):
супер().нарисувай()
self.raindrops.draw()
класMyGame(аркадна. прозорец):
деф__в него__(аз, ширина, височина):
super().__init__(ширина, височина)
arcade.set_background_color (arcade.color. БЯЛО)
self.background_layer = BackgroundLayer(0.2)
# ...
дефнастройвам(себе си):
# ...
self.background_layer.raindrops.append(
Дъждовна капка (SCREEN_WIDTH // 2, SCREEN_HEIGHT + 10))
дефактуализация(самостоятелно, делта_време):
self.player.update()
self.background_layer.update()
дефon_draw(себе си):
arcade.start_render()
self.background_layer.draw()
self.platforms.draw()
self.player.draw()
Имран е писател в MUO с 3 години опит в писането на техническо съдържание. Той също така е работил с много стартиращи компании като full-stack разработчик. Той е страстен да пише и да помага на другите да научат за технологиите. В свободното си време той обича да изследва нови езици за програмиране.