Orodha ya maudhui:
- Hatua ya 1: Muhtasari Mpana
- Hatua ya 2: Mahitaji
- Hatua ya 3: "Hello World" katika Pygame Zero
- Hatua ya 4: Kuchora muigizaji wako
- Hatua ya 5: Dhibiti Muigizaji
- Hatua ya 6: Kuunda wimbo
- Hatua ya 7: Ajali ya gari
- Hatua ya 8: Endesha Mchezo kwenye Raspberry Pi
- Hatua ya 9: Je! Ulishinda?
- Hatua ya 10: Hitimisho
Video: Unda Mchezo wako wa Kwanza wa Mashindano: Hatua 10
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:53
Ikiwa umefanya uandishi wa Python na unataka kuandika mchezo unaweza kuwa na Pygame Zero.
Katika mafunzo haya tutaandika mchezo rahisi wa mbio.
Hatua ya 1: Muhtasari Mpana
Moduli ya Pygame inaongeza kazi nyingi zinazokusaidia kuandika michezo kwenye Python.
Pygame Zero huenda hatua moja zaidi kukuruhusu uruke juu ya mchakato mzito wa kutengeneza vitanzi vyote vya mchezo na kuanzisha muundo wa programu yako.
Pygame Zero ni chaguo nzuri kwa mtu yeyote ambaye anataka kuanza kuandika michezo ya kompyuta kwenye Raspberry Pi au mashine yoyote ya Linux.
Utahitaji:
- Mashine inayoendesha Linux OS
- Mhariri wa kuandika mpango wa chatu
- Kinanda
- Mawazo fulani
Mafaili:
github.com/AhmNouira/-Racing-Game
Hatua ya 2: Mahitaji
Kwanza nitatumia kompyuta yangu ndogo na Ubuntu 18.04 OS. Kisha tutaendesha mchezo kwenye Raspberry Pi katika hatua ya 8.
Kabla ya kuendelea na mafunzo haya, hakikisha umeingia kama mtumiaji na haki za upendeleo.
Kuweka bomba kwa Python 3
Anza kwa kusasisha orodha ya kifurushi kwa kutumia amri ifuatayo:
sasisho la sudo apt
Tumia amri ifuatayo kusanikisha bomba la Python 3:
Sudo apt kufunga python3-pip
thibitisha usakinishaji kwa kuangalia toleo la bomba:
pip3 - mabadiliko
Kufunga Pygame Zero
pip3 sakinisha pgzero -user
Hii pia itaweka Pygame. Vifurushi vya mapema vya Pygame
Kwa hivyo hatua ya kwanza katika safari yako itakuwa kufungua Python 3 IDLE au mhariri wako wa chatu uipendayo.
Hatua ya 3: "Hello World" katika Pygame Zero
Kwa chaguo-msingi, dirisha la Pygame Zero linafungua kwa saizi ya saizi 800 kwa saizi 600 juu. Unaweza Customize
saizi ya dirisha lako, kuna anuwai mbili zilizopangwa unaweza kuweka, ikiwa unajumuisha WIDTH = 700 HIGH = 800.
Ziwa Pygame hutoa kazi zilizofafanuliwa kushughulikia kitanzi cha mchezo kawaida hufanya:
Chora () Kazi
Tunaweza kuandika kazi hii katika programu yetu sawa na vile tunavyoweza kufafanua kazi katika Python.
Pygame Zero inafuata sheria sawa za uumbizaji kama Python, kwa hivyo utahitaji kutunza kuingiza nambari yako kwa usahihi.
#! / usr / bin / python3 # weka mkalimani
kuagiza pgzrun # kuagiza moduli ya pgzero WIDTH = 700 # upana wa dirisha HEIGHT = 800 # urefu wa def def ya dirisha (): # pygame zero draw screen screen.fill ((128, 128, 128)) # jaza skrini na RGB screen screen.draw.text ("Hello World!", (270, 320), # chora "Hello World!" rangi = (255, 255, 255), fontsize = 40) pgzrun.go ()
Kwanza kabisa unahitaji kuhifadhi faili yako ya programu na kuipatia jina.
Kisha fungua Dirisha la Kituo, nenda kwenye eneo lako la faili na andika:
./.py
Hatua ya 4: Kuchora muigizaji wako
Sasa kwa kuwa tumeweka hatua yetu, tunaweza kuunda Waigizaji wetu, ni vitu vyenye nguvu katika Pygame Zero.
Tunaweza kupakia Muigizaji kwa kuandika juu ya programu:
gari = Muigizaji ("mbio ya mbio")
Katika Pygame Zero picha zetu zinahitaji kuhifadhiwa kwenye saraka inayoitwa picha, karibu na faili yetu ya programu. Inaweza kuwa GIF au faili ya JPG, lakini inashauriwa kuwa picha zako ni faili za-p.webp
Unaweza kuweka msimamo wake kwenye skrini kwa kuandika:
gari.pos = 350, 560
Baada ya hapo katika kazi yetu ya kuteka () tunaweza kuchapa
car.draw () # chora gari letu la mbio katika nafasi yake iliyoainishwa
Programu kamili itakuwa kama hii:
#! / usr / bin / chatu3
kuagiza pgzrun WIDTH = 700 # upana wa dirisha HEIGHT = 800 # urefu wa gari la dirisha = Actor ("racecar") car.pos = 350, 560 def draw (): # pygame zero draw function screen.fill ((128, 128, 128)) # jaza skrini na car.draw () pgzrun.go ()
Jaribu programu yako ili kuhakikisha kuwa hii inafanya kazi.
Hatua ya 5: Dhibiti Muigizaji
Mara tu tunapokuwa na gari yetu inayochora kwenye skrini, hatua inayofuata ni kuwezesha mchezaji kuihamisha.
Tunaweza kufanya hivyo na waandishi wa habari muhimu. Tunaweza kusoma hali ya funguo hizi ndani ya kazi nyingine iliyofafanuliwa inayoitwa sasisho ().
Sasisho () Kazi
Kazi hii inakaguliwa kila wakati mchezo unaendelea.
Tunahitaji kuandika nambari kadhaa ili kugundua mashinikizo muhimu ya funguo za mshale na pia kufanya kitu juu yake.
Kwa hivyo tutaongeza kazi hii kwenye programu yetu
sasisha ():
ikiwa keyboard. kushoto: car.x - = 2 ikiwa keyboard.kulia: car.x + = 2 ikiwa keyboard.up: car.y - = 2 ikiwa keyboard chini: car.y + = 2
Mistari hii ya nambari itasonga muigizaji wa gari kushoto, kulia, mbele na nyuma.
Hatua ya 6: Kuunda wimbo
Sasa kwa kuwa tuna gari ambalo tunaweza kuendesha, tunahitaji wimbo wa kuendesha.
Tutaunda wimbo wetu nje ya Watendaji, safu moja kwa wakati. Tutahitaji kutengeneza orodha kadhaa ili kufuatilia Waigizaji tunaowabuni.
Tutahitaji pia kuweka anuwai kadhaa za wimbo.
Basi wacha tufanye kazi mpya iitwayo makeTrack (), Kazi itaongeza mwigizaji mmoja wa track kushoto na moja kulia, wote wakitumia picha bare-p.webp
trackLeft = orodha # ya kuhifadhi baria za kushoto
trackRight = # orodha ya kuhifadhi vizuizi vya kulia trackCount = 0 # hesabu idadi ya barry trackPosition = 350 trackWidth = 150 # upana kati ya barries za kushoto na kulia def makeTrack (): # kazi ya kufanya barrie moja upande wa kushoto na kulia trackCount, trackLft, trackRight, trackPosition, trackWidth trackLeft.append (Actor ("bare", pos = (trackPosition-trackWidth, 0))) trackRight.append (Actor ("bare", pos = (trackPosition + trackWidth, 0))) trackCount + = 1
Jambo linalofuata tunalohitaji kufanya ni kusogeza sehemu za kufuatilia skrini kwa gari.
Wacha tuandike kazi mpya inayoitwa updateTrack (), Kazi hii inasasisha mahali ambapo vizuizi vya wimbo vitaonekana. Vipande vya wimbo vimeundwa na nambari za nasibu kwa hivyo kila mchezo ni tofauti.
trackDriction = Uongo
SPEED = 4 # huweka kasi ya mchezo kutoka kwa randint ya kuagiza bila mpangilio # kuagiza darasa la randint kutoka moduli ya nasibu def updateTrack (): trackCount ya kimataifa, trackPosition, trackDirection, trackWidth, SPEED b = 0 wakati b
Tafadhali rejelea faili ya zip hapa chini iitwayo "RaceGameDemo".
Ikiwa tunaendesha nambari yetu kwa wakati huu, tunapaswa kuona wimbo ukianguka kuelekea gari. Shida tu ni kwamba tunaweza kusonga gari juu ya vizuizi vya wimbo na tunataka kuweka gari ndani yao na kugundua mgongano.
Hatua ya 7: Ajali ya gari
Tunahitaji kuhakikisha kuwa gari letu haligusi Waigizaji wa wimbo.
tunaweza kujaribu pia migongano kwa kutumia njia colliderect () katika kazi yetu ya kusasishaTrack ().
Katika mchezo huu tutakuwa na majimbo matatu tofauti kwa mchezo uliohifadhiwa katika hali yetu ya mchezo inayobadilika:
- mchezoStatus == 0 # mchezo unaendesha
- mchezoStatus == 1 # ajali ya gari
- mchezoStatus == 2 # mchezo umekamilika
Tutahitaji kubadilisha kazi yetu ya kuteka () na kazi yetu ya kusasisha () kujibu utofauti wa GameStatus.
Kumaliza kugusa
Tunachohitaji kufanya sasa ni kuonyesha kitu ikiwa GameStatus imewekwa 1 au 2, kwa mfano tunapaswa kuonyesha nyekundu
bendera, ikiwa gari ilianguka. Tunaweza kufanya hivyo kwa nambari iliyo hapa chini:
screen.blit ("redflag", (230, 230))
Ili kuona ikiwa gari imefikia kumaliza, tunapaswa kuhesabu ni sehemu ngapi za wimbo zimeundwa na labda labda tukifika 200, weka hali ya mchezo hadi 2. Kisha onyesha bendera ya checkered:
screen.blit ("finishflag", (230, 230))
Pia tutaonyesha maandishi kwenye skrini kama alama ya sasa ya mchezo.
Angalia orodha kamili ya nambari ili uone jinsi hii yote inafanana.
Hatua ya 8: Endesha Mchezo kwenye Raspberry Pi
Kwenye Raspberry Pi pgzero imewekwa kwa msingi tangu kutolewa kwa Raspbian Jessie mnamo Septemba 2015.
Sasisha tu Raspberry Pi yako kwa kutumia amri:
Sudo apt-pata sasisho
Nenda kwenye eneo lako la faili na uandike kwenye Kituo.
pgzrun.py
Hatua ya 9: Je! Ulishinda?
Unaweza kuufanya mchezo uwe rahisi au mgumu kwa kubadilisha ubadilishaji wa trackWidth kufanya wimbo upana tofauti. Unaweza kubadilisha thamani ya SPEED ili kufanya wimbo uende haraka au polepole.
Hatua ya 10: Hitimisho
Pygame Zero ni chaguo nzuri kwa mtu yeyote ambaye anataka kuanza kuandika michezo ya kompyuta.
Ikiwa una swali lolote bila shaka unaweza kuacha maoni Ili kuona zaidi juu ya kazi zangu tafadhali tembelea kituo changu:
myYouTube
mkundu
myLinkedin
Asante kwa kusoma hii inayoweza kufundishwa na uwe na siku njema. Tuonane. Ahmed Nouira.
Ilipendekeza:
Jinsi ya Kuandika Mpango wako wa Kwanza wa Java: Hatua 5
Jinsi ya Kuandika Programu Yako ya Kwanza ya Java: Mafunzo haya yanaonyesha jinsi ya kuandika mpango wako wa kwanza wa Java hatua kwa hatua
Mdhibiti wa Mchezo wa Arduino Na Taa Akijibu Mchezo Wako wa Umoja :: Hatua 24
Mdhibiti wa Mchezo wa Arduino na Taa Akijibu Mchezo Wako wa Umoja :: Kwanza niliandika kitu hiki kwa neno. Hii ni mara yangu ya kwanza kutumia kufundisha kwa hivyo kila ninaposema: andika nambari kama vile ujue kwamba ninazungumzia picha iliyo juu ya hatua hiyo. Katika mradi huu ninatumia 2 arduino ’ s kuendesha kidogo 2 tofauti
Anza Mradi Wako wa Kwanza na Raspberry: Kuangaza kwa LED: Hatua 4
Anza Mradi Wako wa Kwanza na Raspberry: Kuangaza kwa LED: Katika mradi huu nitakuonyesha jinsi ya kupanga Raspberry Pi kutengeneza blink ya LED, Ikiwa karibu umenunua pi ya Raspberry na haujui chochote pa kuanzia, hii mafunzo inafaa kwa kuongezea Raspberry yako inayoendesha Raspbian, y
Tengeneza Wahusika Wako Wako Wako katika Windows. 4 Hatua
Tengeneza Wahusika Wako Wako Wako katika Windows. Ndio na vitu. Jihadharini na picha ambazo zimetengenezwa kwa rangi. Wanaweza kutisha
Mpango wako wa kwanza katika C #: Hatua 9
Mpango wako wa kwanza katika C #: Tengeneza programu ya msingi inayofungua sanduku la ujumbe kisha anza kuibadilisha kuifanya iwe yako mwenyewe! Utahitaji Kompyuta- Toleo la Microsoft Visual C # Express (Nenda hapa ikiwa hauna hii, je! bure! http: //www.micros