klassLager(arkad. SpriteList):
def__i det__(self, scroll_speed):
super().__init__()
self.scroll_speed = scroll_speed

klassMitt spel(arkad. Fönster):
def__i det__(själv, bredd, höjd):
super().__init__(bredd, höjd)
arcade.set_background_color (arcade.color. VIT)
self.player = Ingen
self.platforms = Ingen
self.layers = []

defuppstart(själv):
self.player = Player()
self.platforms = arkad. SpriteList()
grå = arkad.färg. GRÅ
röd = arkad.färg. RÖD
brun = arkad.färg. BRUN
gul = arkad.färg. GUL

w = SCREEN_WIDTH // 2
h = SCREEN_HEIGHT // 2

self.platforms.append (Plattform (w, h - 100, 200, 20, gul))
self.platforms.append (Plattform (w, h + 100, 200, 20, gul))

lager_data = [
(Lager(0.2), Plattform (w, h, 800, 600, grå)),
(Lager(0.5), Plattform (w, h - 200, 400, 20, röd)),
(Lager(0.5), Plattform (w, h+ 200, 400, 20, röd)),
(Lager(1.0), Plattform (w, h - 300, 200, 20, brun)),
(Lager(1.0), Plattform (w, h+ 300, 200, 20, brun))
]

för lager, plattform i lager_data:
layer.append (plattform)
self.layers.append (lager)

instagram viewer
klassMitt spel(arkad. Fönster):
# ...

defuppstart(själv):

# ...

lager_data = [
(Lager(1.2), Plattform (w, h, 800, 600, grå)),
(Lager(2.5), Plattform (w, h - 200, 400, 20, röd)),
(Lager(3.0), Plattform (w, h+ 200, 400, 20, röd)),
(Lager(4.0), Plattform (w, h - 300, 200, 20, brun)),
(Lager(5.0), Plattform (w, h+ 300, 200, 20, brun))
]

# ...

klassRegndroppe(arkad. Sprite):
def__i det__(själv, x, y):
super().__init__()

self.texture = arcade.make_soft_square_texture(
3, blå, yttre_alfa=100)

self.center_x = x
self.center_y = y

klassBakgrundslager(arkad. SpriteList):
def__i det__(self, scroll_speed):
super().__init__()
self.scroll_speed = scroll_speed
self.raindrops = arkad. SpriteList()

defuppdatering(själv):
för regndroppe i self.raindrops:
raindrop.center_y -= self.scroll_speed * 5

om raindrop.center_y < -10:
raindrop.remove_from_sprite_lists()

defdra(själv):
super().draw()
self.raindrops.draw()

klassMitt spel(arkad. Fönster):
def__i det__(själv, bredd, höjd):
super().__init__(bredd, höjd)
arcade.set_background_color (arcade.color. VIT)
self.background_layer = BackgroundLayer(0.2)
# ...

defuppstart(själv):
# ...
self.background_layer.raindrops.append(
Regndroppe (SCREEN_WIDTH // 2, SCREEN_HEIGHT + 10))

defuppdatering(själv, delta_tid):
self.player.update()
self.background_layer.update()

defon_draw(själv):
arcade.start_render()
self.background_layer.draw()
self.platforms.draw()
self.player.draw()

Imran är skribent på MUO med 3 års erfarenhet av att skriva tekniskt innehåll. Han har också arbetat med många startups som full-stack-utvecklare. Han brinner för att skriva och hjälpa andra att lära sig om teknik. På fritiden tycker han om att utforska nya programmeringsspråk.