Orodha ya maudhui:

Jukwaa na Ngazi zisizo na kipimo kwenye GameGo na Arcade ya Makecode: Hatua 5 (na Picha)
Jukwaa na Ngazi zisizo na kipimo kwenye GameGo na Arcade ya Makecode: Hatua 5 (na Picha)

Video: Jukwaa na Ngazi zisizo na kipimo kwenye GameGo na Arcade ya Makecode: Hatua 5 (na Picha)

Video: Jukwaa na Ngazi zisizo na kipimo kwenye GameGo na Arcade ya Makecode: Hatua 5 (na Picha)
Video: Самые красивые места древней Греции 2024, Julai
Anonim
Image
Image

GameGo ni koni inayobebeka ya michezo ya kubahatisha inayoweza kuambukizwa ya Microsoft Makecode iliyoundwa na elimu ya TinkerGen STEM. Inategemea chip ya STM32F401RET6 ARM Cortex M4 na imetengenezwa kwa waalimu wa STEM au watu tu ambao wanapenda kufurahiya kuunda michezo ya video ya retro. Unaweza kufuata mafunzo haya na ujaribu mchezo katika simulator ya Makecode Arcade kisha uiendeshe kwenye GameGo.

Katika nakala hii tutafanya mchezo wa jukwaa na viwango visivyo na kipimo vya nasibu. Katika jukwaa, tabia inayodhibitiwa na mchezaji lazima iruke na kupanda kati ya majukwaa yaliyosimamishwa wakati ikiepuka vizuizi. Mazingira mara nyingi huwa na ardhi isiyo na usawa ya urefu tofauti ambayo lazima ivuke. Mchezaji mara nyingi huwa na udhibiti juu ya urefu na umbali wa kuruka ili kuzuia tabia zao kuanguka kwa kifo chao au kukosa kuruka kwa lazima. Tutatekeleza mambo haya yote ya msingi na pia kuongeza kazi maalum ambayo itazalisha viwango vipya tunapofikia mwisho wa ile ya mwisho. Wacha tuanze!

Vifaa

MchezoGo

Hatua ya 1: Shujaa

Shujaa
Shujaa

Kama hatua ya kwanza tutaunda mabadiliko yetu. Ustadi wangu wa kuchora ni mbaya sana, kwa hivyo nimeamua tu kutumia moja kutoka kwa Matunzio;) Tofauti na mchezo uliopita tulioufanya, katika jukwaa hili mhusika wetu anayeweza kucheza anaweza kusonga kushoto na kulia na pia anaweza kuruka. Kwa hivyo badala ya kuwa na chembe mbili tofauti kwa mhusika mkuu, moja inatosha wakati huu - tunaweza tu kubonyeza picha ya sprite wakati tunabadilisha mwelekeo.

Jambo la kwanza kufanya ni kuongeza ramani ya mandharinyuma na tile. Nimechagua ramani ya urefu wa 32x8 - kwa kiwango cha kwanza tutaichora kwa mikono, kama kwenye skrini ya 2. Kisha tunaongeza mhusika wetu anayeweza kucheza na kuweka mySprite ili kukomesha aina nzuri ya Mchezaji na kuiweka juu ya tile 0-5. Pia tunaweka kamera ili isonge na tabia inayoweza kucheza na kudhibiti mwendo wake wa kushoto na kulia - tutaweka kasi ya vy kwa 0, kwani tabia yetu haipaswi kuelea kwa uhuru kwenye ramani kwenye mwelekeo wa y. Ongeza mbili kwenye… vitufe vilivyobanwa, moja kwa kifungo cha kushoto, moja kwa kulia. Kitufe cha kushoto kinapobanwa, tunaangalia ikiwa mwelekeo wetu ulikuwa "kushoto" kabla ya kubonyeza kitufe. Ikiwa ilikuwa, tunaendelea tu kushoto. Ikiwa haingekuwa tunahitaji kupindua picha ya tabia yetu. Mantiki sawa ya harakati sahihi.

Yote mazuri kwa sasa, shida pekee inaonekana kwamba shujaa wetu hawezi kuonekana kushinda kikwazo chochote. Kwa hivyo tunahitaji kuongeza kuruka. Tutafuatilia vidhibiti kwa kitufe cha juu na kitakapogunduliwa, tutaweka kuruka kwa kutofautiana hadi 1, tukumbuke harakati za kuruka wakati zilizoanza na kuweka kasi ya tabia ya kasi ya -200 (kwenda juu). Halafu baada ya muda maalum, tutaweka kasi kwa 200 (kwenda chini), ili shujaa wetu asipige angani kama roketi.

Nadhani tuliunda shujaa anayestahili changamoto sasa! Kweli, changamoto iko wapi?

Hatua ya 2: Maadui

Maadui
Maadui

Tutatumia muundo wa safu kuhifadhi chemchem za maadui. Kwa aina ya maadui tutachukua njia ya mkato kidogo na kutumia popo:) sio kumbukumbu ya coronavirus, popo tu wanaweza kuruka, ndiyo sababu hatutahitaji "kuiga" mvuto kwao, kama tunavyofanya na tabia yetu ya kucheza. Tumia kwenye sprite iliyoundwa ya aina ya Adui kuzuia kuweka popo zilizoundwa hivi karibuni kwenye tile ya kuzaa ya nasibu (iliyowekwa alama na alama nyeupe kidogo) na weka kasi ya vx hadi -10 (polepole ikiteleza kulia). Halafu ndani ya sasisho la mchezo kila kizuizi cha ms 2000 tunapunguza kila kitu cha orodha ya adui na ubadilishe mwelekeo wao kwa nasibu, wakati pia tukibadilisha spiti za popo ikiwa ni lazima (kuonyesha mabadiliko katika mwelekeo wa harakati). Mwishowe, tunaongeza kwenye sprite ya aina ya Mchezaji anayepishana na nyingineSprite ya aina Adui ya kuzuia, ambapo tunafanya ukaguzi rahisi ikiwa mchezaji amepigwa tayari. Ikiwa sio sisi tunakata maisha moja, weka bendera kwa 1 (imepigwa) na anza kipima muda. Mara 500 ms tangu wakati wa kugonga uliopita kupita tunabadilisha bendera kurudi kwa 0. Tunafanya hivyo ili mchezaji aepuke kupoteza maisha mengi ya thamani baada ya kugongana na adui.

Wacha tuangalie tunaendeleaje. Kweli, eneo hilo hakika linaonekana kupendeza na popo wote wakiruka karibu na kumng'ata mchezaji wetu. Sasa tunahitaji silaha ya kufanya shujaa wetu!

Hatua ya 3: Silaha

Silaha
Silaha

Kwa silaha, nilikuwa nikichora msukumo kutoka kwa mchezo wa zamani wa Nintendo juu ya ndugu wawili chipmunk:) Wacha tuongeze vijiko vya crate kwa kiwango, vile vile tunavyofanya na kuongeza maadui. Pia tunaanzisha has_crate kutofautisha hadi -1, ambayo inaonyesha tabia yetu haibebi kreti. Katika spite ya aina ya Mchezaji huingiliana na nyingineSalama ya aina ya Kuzuia Chakula, tunaangalia ikiwa tayari tunashikilia kreti na ikiwa hatuna, tunaweka has_crate kutofautisha kwa faharisi ya crate sprite kwenye orodha. Halafu kwenye kizuizi cha sasisho la mchezo tunahamisha sprite hiyo pamoja na mchezaji wa mchezaji na ikiwa kifungo A kinabanwa, tunabadilisha kasi ya vx ya crate kuwa 1200 au -1200 (kulingana na mwelekeo wa mwendo wa mhusika). Pia tunaweka has_crate variable kurudi -1 tena na kubadilisha aina ya sprite ya crate ambayo ilizinduliwa hewani sasa kuwa Projectile.

Mwishowe, tunahitaji kreti kuwaangamiza maadui wakati inazinduliwa (lakini sio wakati maadui wanaporomoka kwa bahati mbaya kwenye kreti! Ndio sababu tulipeana kreti kuchapa Chakula na kuibadilisha kuwa Projectile tu wakati imezinduliwa) na kujiharibu wakati unapiga Ukuta. Tunatumia nyingine kwenye sprite ya aina ya Projectile inayoingiliana na nyingineSprite ya aina Adui ya kuzuia kwa hiyo - kwa hali hiyo tunaharibu sprites zote mbili na kuongeza alama moja. Ikiwa Projectile itagonga ukuta, tunaharibu sprite yake.

Karibu umekamilisha sasa! Mchezo unachezwa sasa, lakini hakuna changamoto yoyote bado - kiwango kimoja tu na rahisi sana hapo. Tunaweza kutengeneza viwango zaidi kwa mkono au kuandika algorithm ambayo itazalisha viwango hivi moja kwa moja kwetu - ingawa hazitakuwa nzuri kama viwango vya mwanadamu bila shaka.

Hatua ya 4: Adventures isiyo na mwisho

Adventures isiyo na mwisho
Adventures isiyo na mwisho
Adventures isiyo na mwisho
Adventures isiyo na mwisho
Adventures isiyo na mwisho
Adventures isiyo na mwisho

Kazi ya kizazi cha kiwango cha nasibu inaonekana ya kutisha mwanzoni, lakini kwa kweli ni safu rahisi ya hatua za kutengeneza kiwango kipya, kwa njia ambayo ngazi mpya inaweza kupitishwa kwa tabia ya kucheza. Kwanza, tunajali kupata tabia zetu kwa kiwango kipya - kwa kutumia spiti ya Mchezaji wa aina huingiliana… katika eneo - tunatumia tile ya milango ya milango kama kichocheo cha kiwango kipya. Katika kazi ya kuzalisha_level tunaanzisha safu, kololi na nafasi. Pia tunaunda ramani mpya ya tile, saizi sawa na hapo awali, lakini tupu. Hapa kuna tahadhari kidogo - ili kutumia seti … kwenye safu ya tilemap… col… block, tilemap inahitaji kuwa na vigae hivi maalum - hiyo ni ya kukanusha kidogo na labda ni mdudu kwenye Makecode. Kwa hivyo, unachohitaji kufanya ni kuunda tilemap, weka aina zote za tile unayotaka kutumia katika kizazi cha nasibu na kisha uzifute.

Sisi huweka tile ya kwanza (0x6) na mchezaji juu yake. Halafu tunarudia hatua inayofuata mara 30 - hatua inayofuata ni safu rahisi ya hundi ya Kweli-Uongo, ambayo huamua ikiwa safu inayofuata itatuleta kuwa 1) kiwango sawa na 2 iliyopita) moja juu au 3) moja chini. Pia kuna nafasi ndogo sana kwamba tile inayofuata itakuwa tile ya lava - hatutaki nyingi hizi! Baada ya kila tile kuzalishwa tunajaza nafasi iliyo chini yake na lava - kwa sababu tu ya uzuri. Kama hatua ya mwisho tunaongeza maadui na kreti na kuziweka juu ya vigae visivyo kawaida.

Hatua ya 5: Vituko Vinaanza

Kuanza kwa Vituko
Kuanza kwa Vituko

Voila! Tulimaliza jukwaa letu na shujaa wetu anaweza kwenda kwenye adventure isiyo na kipimo, kushinda popo na kuharibu kreti. ikiwa unakumbana na shida, unaweza kupakua nambari kutoka kwa hazina yetu ya GitHub.

Ni mpango tu na kwa kweli kuna maboresho ambayo yanaweza kufanywa, kwa mfano aina tofauti za maadui, bonasi, kizazi bora zaidi na kadhalika. Ikiwa unafanya toleo bora la mchezo, shiriki kwenye maoni hapa chini! Kwa habari zaidi juu ya GameGo na vifaa vingine kwa watunga na waelimishaji wa STEM, tembelea wavuti yetu, https://tinkergen.com/ na ujiandikishe kwa jarida letu.

TinkerGen imeunda kampeni ya Kickstarter ya MARK (Tengeneza Kitanda cha Roboti), kitanda cha roboti cha kufundisha usimbuaji, roboti, AI!

Ilipendekeza: