Monet pelit käyttävät spritejä edustamaan pelaajan hahmoa tai vihollisia. Ota selvää, kuinka Pythonin Arcade-kirjasto tekee niistä helpon työskennellä.

Pythonin Arcade-kirjasto tarjoaa saumattoman ja intuitiivisen tavan sisällyttää spritejä pelien kehitysprojekteihisi. Spritet ovat olennaisia ​​elementtejä, jotka tuovat visuaalista vetovoimaa, interaktiivisuutta ja dynaamista liikettä peleihin.

Arcaden yksinkertaisen syntaksin ja tehokkaan toiminnallisuuden ansiosta spritien lisääminen on helppoa. Kirjaston avulla voit parantaa pelejäsi vaivattomasti kiehtovilla hahmoilla ja esineillä.

Yksinkertaisen pelin luominen

Tässä artikkelissa käytetty koodi on saatavilla tässä GitHub-arkisto ja sen käyttö on ilmaista MIT-lisenssin alaisena.

Ennen kuin aloitat, varmista, että sinulla on pip asennettuna laitteellesi. Käytä tätä komentoa asentaaksesi arcade-kirjaston:

pip asennus arcade

Aloita luomalla yksinkertainen peli Pythonin Arcade-kirjastolla. Tässä pelissä pelaaja voi liikkua vasemmalle ja oikealle.

instagram viewer

Luo MyGame-luokka, joka perii pelihalli. Ikkuna. Määritä sen jälkeen asetusmenetelmä muuttujien alustamiseksi ja on_draw tapa piirtää pelin esineitä. The on_key_press menetelmä antaa pelaajan siirtää sinistä suorakulmiota vasemmalle tai oikealle.

Tässä on peruspelisi koodi:

tuonti pelihalli

SCREEN_WIDTH = 640
SCREEN_HEIGHT = 480

luokkaaMyGame(pelihalli. Ikkuna):
def__sen sisällä__(itse, leveys, korkeus):
super().__init__(leveys, korkeus)
arcade.set_background_color (arcade.color. VALKOINEN)

defperustaa(itse):
self.player_x = 320

defon_draw(itse):
arcade.start_render()
arcade.draw_rectangle_filled (self.player_x, 50, 50, 50, arcade.color. SININEN)

defon_key_press(itse, avain, muokkaajat):
jos avain == arcade.key. VASEN:
self.player_x -= 10
elif avain == arcade.key. OIKEALLA:
self.player_x += 10

defpää():
peli = MyGame (SCREEN_WIDTH, SCREEN_HEIGHT)
game.setup()
arcade.run()

jos __nimi__ == "__main__":
pää()

Kuinka lisätä Sprite-pelejä peliisi

Nyt kun yksinkertainen peli toimii, on aika parantaa sitä lisäämällä joitain spritejä. Voit luoda spritejä käyttämällä pelihalli. Sprite luokkaa. Voit ladata kuvia edustamaan spritejäsi ja käyttää niitä pelissäsi.

Lataa kuvatiedosto nimeltä player.png luodaksesi pelaajaspriitesi. Aseta spriten alkusijainti näytön keskelle. Vuonna on_draw -menetelmällä piirrä pelaaja sprite piirtotoiminnolla.

luokkaaMyGame(pelihalli. Ikkuna):
def__sen sisällä__(itse, leveys, korkeus):
super().__init__(leveys, korkeus)
arcade.set_background_color (arcade.color. VALKOINEN)
self.player_sprite = Ei mitään

defperustaa(itse):
self.player_sprite = pelihalli. Sprite("soitin.png")
self.player_sprite.center_x = SCREEN_WIDTH // 2
self.player_sprite.center_y = SCREEN_HEIGHT // 2

defon_draw(itse):
arcade.start_render()
self.player_sprite.draw()

defon_key_press(itse, avain, muokkaajat):
jos avain == arcade.key. VASEN:
self.player_sprite.change_x = -5
elif avain == arcade.key. OIKEALLA:
self.player_sprite.change_x = 5

defpäivittää(itse, delta_aika):
self.player_sprite.update()

Sprite-lisäominaisuudet

Arcaden Sprites tarjoaa perusliikkeen lisäksi ominaisuuksia. Voit esimerkiksi muuttaa spriten kokoa asettamalla sen mittakaavaattribuutin.

Voit asettaa Player spriten mittakaava-attribuutiksi 0,5, jotta se on puolet alkuperäisestä koosta.

luokkaaMyGame(pelihalli. Ikkuna):
defperustaa(itse):
self.player_sprite = pelihalli. Sprite("soitin.png", mittakaava =0.5)

Sprite-liikkeen hallinta

Arcaden Spritet tarjoavat useita tapoja ohjata pelaajan liikettä. Sen lisäksi muutos_x attribuuttia, voit käyttää muutos_y attribuutti pystysuuntaisen liikkeen ohjaamiseen. Monimutkaisempiin liikekuvioihin voit myös käyttää muuta_kulmaa attribuutti kääntääksesi spriten.

self.player_sprite.change_angle = ROTATION_SPEED

Yhdistämällä nämä attribuutit näppäimistön tai hiiren syöttöön, voit luoda dynaamisia ja reagoivia liikesäätimiä pelispriiteillesi.

Törmäystunnistuksen lisääminen Spriteillä

Törmäysten havaitseminen on ratkaisevan tärkeää monissa peleissä. Arcaden avulla voit helposti havaita spritien väliset törmäykset käyttämällä arcade.check_for_collision toiminto. Muokataan koodia niin, että se sisältää törmäyksen havaitsemisen pelaajaspriitin ja toisen nimeltään spriten välillä este.png:

luokkaaMyGame(pelihalli. Ikkuna):
def__sen sisällä__(itse, leveys, korkeus):
super().__init__(leveys, korkeus)
arcade.set_background_color (arcade.color. VALKOINEN)
self.player_sprite = Ei mitään

defperustaa(itse):
self.player_sprite = pelihalli. Sprite("soitin.png", mittakaava =0.1)
self.obstacle_sprite = pelihalli. Sprite("este.png", mittakaava = 0.1)
self.obstacle_sprite.center_x = NÄYTTÖ_LEVEYS
self.obstacle_sprite.center_y = SCREEN_HEIGHT // 2
self.player_sprite.center_x = SCREEN_WIDTH // 2
self.player_sprite.center_y = SCREEN_HEIGHT // 2

defon_draw(itse):
arcade.start_render()
self.player_sprite.draw()
self.obstacle_sprite.draw()

defon_key_press(itse, avain, muokkaajat):
jos avain == arcade.key. VASEN:
self.player_sprite.change_x = -5
elif avain == arcade.key. OIKEALLA:
self.player_sprite.change_x = 5

defpäivittää(itse, delta_aika):
self.player_sprite.update()
self.obstacle_sprite.update()

jos arcade.check_for_collision (self.player_sprite, self.obstacle_sprite):
Tulosta("Työtörmäys havaittu!")

Tee peleistäsi kiinnostavampia Spriteillä

Spritet saavat hahmot, esineet ja animaatiot näyttämään todellisilta ja jännittäviltä. Ne voivat liikkua, törmätä ja olla vuorovaikutuksessa muiden pelisi asioiden kanssa, mikä tekee siitä realistisemman ja hauskempaa.

Spriteillä voit luoda pelejä, jotka pitävät pelaajat kiinnostuneena ja haluavat pelata enemmän. Spritet tarjoavat mahdollisuuden luoda kiinnostavia ja mieleenpainuvia pelejä.