třídaVrstva(pasáž. SpriteList):
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)

instagram viewer
třídaMyGame(pasáž. Okno):
# ...

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á))
]

# ...

třídaDešťová kapka(pasáž. Skřítek):
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.