def__init__(self, scroll_speed):
super().__init__()
self.scroll_speed = scroll_speed
třídaMyGame(pasáž. Okno):
def__init__(vlastní, šířka, výška):
super().__init__(šířka, výška)
arcade.set_background_color (arcade.color. BÍLÝ)
self.player = Žádný
self.platformy = Žádný
vlastní vrstvy = []
defzaložit(já):
self.player = Hráč ()
self.platformy = arkáda. SpriteList()
šedá = arkáda.barva. ŠEDÁ
červená = arkáda.barva. ČERVENÉ
hnědá = arkáda.barva. HNĚDÝ
žlutá = arkáda.barva. ŽLUTÁ
w = SCREEN_WIDTH // 2
h = SCREEN_HEIGHT // 2
self.platforms.append (Platforma (š, v - 100, 200, 20, žlutá))
self.platforms.append (Platforma (š, v + 100, 200, 20, žlutá))
data_vrstvy = [
(Vrstva(0.2), Platforma (š, v, 800, 600, šedá)),
(Vrstva(0.5), Platforma (š, v - 200, 400, 20, Červené)),
(Vrstva(0.5), Plošina (š, v + 200, 400, 20, Červené)),
(Vrstva(1.0), Platforma (š, v - 300, 200, 20, hnědá))
(Vrstva(1.0), Plošina (š, v + 300, 200, 20, hnědá))
]
pro vrstva, platforma v data_vrstvy:
layer.append (platforma)
self.layers.append (vrstva)
# ...
defzaložit(já):
# ...
data_vrstvy = [
(Vrstva(1.2), Platforma (š, v, 800, 600, šedá)),
(Vrstva(2.5), Platforma (š, v - 200, 400, 20, Červené)),
(Vrstva(3.0), Plošina (š, v + 200, 400, 20, Červené)),
(Vrstva(4.0), Platforma (š, v - 300, 200, 20, hnědá))
(Vrstva(5.0), Plošina (š, v + 300, 200, 20, hnědá))
]
# ...
def__init__(já, x, y):
super().__init__()
self.texture = arcade.make_soft_square_texture(
3, modrá, vnější_alfa=100)
self.center_x = x
self.center_y = y
třídaVrstva pozadí(pasáž. SpriteList):
def__init__(self, scroll_speed):
super().__init__()
self.scroll_speed = scroll_speed
sebe.kapky deště = podloubí. SpriteList()
defAktualizace(já):
pro dešťová kapka v vlastní dešťové kapky:
raindrop.center_y -= self.scroll_speed * 5
-li raindrop.center_y < -10:
raindrop.remove_from_sprite_lists()
defkreslit(já):
super().kresli()
self.dešťové kapky.draw()
třídaMyGame(pasáž. Okno):
def__init__(vlastní, šířka, výška):
super().__init__(šířka, výška)
arcade.set_background_color (arcade.color. BÍLÝ)
self.background_layer = BackgroundLayer(0.2)
# ...
defzaložit(já):
# ...
self.background_layer.raindrops.append(
Dešťová kapka (SCREEN_WIDTH // 2, SCREEN_HEIGHT + 10))
defAktualizace(self, delta_time):
self.player.update()
self.background_layer.update()
defon_draw(já):
arcade.start_render()
self.background_layer.draw()
self.platforms.draw()
self.player.draw()
Imran je spisovatel na MUO s 3 lety zkušeností s psaním technického obsahu. Spolupracoval také s mnoha startupy jako full-stack vývojář. Je zapálený pro psaní a pomáhá ostatním učit se o technologiích. Ve volném čase rád zkoumá nové programovací jazyky.