klasėSluoksnis(arkada. SpriteList):
def__init__(savaime, slinkties_greitis):
super().__init__()
self.scroll_speed = slinkties_greitis

klasėMano žaidimas(arkada. Langas):
def__init__(savaime, plotis, aukštis):
super().__init__(plotis, aukštis)
arcade.set_background_color (arcade.color. BALTAS)
savarankiškai.žaidėjas = Nė vienas
savarankiškai.platformos = Nė vienas
self.layers = []

defsąranka(savarankiškai):
self.player = Žaidėjas ()
savarankiškai.platformos = arkada. SpriteList()
pilka = arkada.spalva. PILKA
raudona = arkada.spalva. RAUDONA
ruda = arkadinė.spalva. RUDA
geltona = arkada.spalva. GELTONA

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

self.platforms.append (Platforma (w, h - 100, 200, 20, geltona))
self.platforms.append (Platforma (w, h + 100, 200, 20, geltona))

layers_data = [
(Layer(0.2), platforma (w, h, 800, 600, pilka)),
(Layer(0.5), platforma (w, h - 200, 400, 20, raudona)),
(Layer(0.5), platforma (w, h + 200, 400, 20, raudona)),
(Layer(1.0), platforma (w, h - 300, 200, 20, ruda)),
(Layer(1.0), platforma (w, h + 300, 200, 20, ruda))
]

instagram viewer

dėl sluoksnis, platforma in layers_data:
layer.append (platforma)
self.layers.pridėti (sluoksnis)

klasėMano žaidimas(arkada. Langas):
# ...

defsąranka(savarankiškai):

# ...

layers_data = [
(Layer(1.2), platforma (w, h, 800, 600, pilka)),
(Layer(2.5), platforma (w, h - 200, 400, 20, raudona)),
(Layer(3.0), platforma (w, h + 200, 400, 20, raudona)),
(Layer(4.0), platforma (w, h - 300, 200, 20, ruda)),
(Layer(5.0), platforma (w, h + 300, 200, 20, ruda))
]

# ...

klasėLietaus lašas(arkada. Sprite):
def__init__(savaime, x, y):
super().__init__()

self.texture = arcade.make_soft_square_texture(
3, mėlyna, išorinė_alfa=100)

self.center_x = x
self.center_y = y

klasėFono sluoksnis(arkada. SpriteList):
def__init__(savaime, slinkties_greitis):
super().__init__()
self.scroll_speed = slinkties_greitis
savaime.lietaus lašai = arkada. SpriteList()

defatnaujinti(savarankiškai):
dėl lietaus lašas in savaime.lietaus lašai:
raindrop.center_y -= self.scroll_speed * 5

jeigu lietaus lašas.centras_y < -10:
raindrop.remove_from_sprite_lists()

defpiešti(savarankiškai):
super().draw()
self.raindrops.draw()

klasėMano žaidimas(arkada. Langas):
def__init__(savaime, plotis, aukštis):
super().__init__(plotis, aukštis)
arcade.set_background_color (arcade.color. BALTAS)
self.background_layer = BackgroundLayer(0.2)
# ...

defsąranka(savarankiškai):
# ...
self.background_layer.raindrops.append(
Lietaus lašas (SCREEN_WIDTH // 2, SCREEN_HEIGHT + 10))

defatnaujinti(savaime, delta_laikas):
self.player.update()
self.background_layer.update()

defon_draw(savarankiškai):
arcade.start_render()
self.background_layer.draw()
self.platforms.draw()
self.player.draw()

Imranas yra MUO rašytojas, turintis 3 metų patirtį rašant techninį turinį. Jis taip pat dirbo su daugeliu pradedančiųjų įmonių kaip pilno krūvio kūrėjas. Jis aistringai rašo ir padeda kitiems sužinoti apie technologijas. Laisvalaikiu jis mėgsta tyrinėti naujas programavimo kalbas.