Përmbajtje:

Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2: 7 hapa
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2: 7 hapa

Video: Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2: 7 hapa

Video: Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2: 7 hapa
Video: MONGOOSE ─ Even The King Cobra and Black Mamba are Afraid of This Snake Killer 2024, Korrik
Anonim
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2
Pushtuesit LCD: një pushtues hapësinorë si lojë në ekranin e karaktereve LCD 16x2

Nuk ka nevojë të prezantoni një lojë legjendare "Pushtuesit e Hapësirës". Karakteristika më interesante e këtij projekti është se përdor ekranin e tekstit për dalje grafike. Ajo arrihet duke zbatuar 8 karaktere me porosi.

Ju mund të shkarkoni skicën e plotë të Arduino këtu:

github.com/arduinocelentano/LCD_invaders/

Furnizimet

Bordi i Arduino UNO

Mburoja e tastierës LCD

Kabllo USB për ngarkimin e skicës

Hapi 1: Dizajni i lojës

Lojë Dizajni
Lojë Dizajni

Ekrani nuk lejon kontrollimin e pikselave të veçantë dhe siguron vetëm dy rreshta teksti që nuk janë të mjaftueshëm për lojë. Por ju lejon të zbatoni deri në 8 karaktere me porosi. Truku qëndron në përpunimin e secilit karakter 5x8 piksel si dy qeliza lojërash 5x4 piksel. Kjo do të thotë, ne do të kemi fushën e lojës 16x4, gjë që ka kuptim. 8 karaktere janë të mjaftueshme për të zbatuar spritet për anijen kozmike të lojtarit, plumbat dhe alienët e animuar. Meqenëse spritet janë 5x4 dhe personazhet janë 5x8, do të na duhen disa karaktere me dy sprita si sprite "një anije kozmike dhe një plumb", "një alien dhe një plumb sprite" etj. Të gjitha personazhet e personalizuara janë treguar në figurë.

Hapi 2: Përpunimi i butonave

Butonat e përpunimit
Butonat e përpunimit

Në mënyrë tipike, të gjithë butonat në një mburojë LCD janë të lidhura me të njëjtën pin analog. Ekzistojnë versione të ndryshme të mburojës LCD, kështu që ndoshta do t'ju duhet të ndryshoni pak shkronja të plota në kodin tim të përpunimit të butonit.

Hapi 3: Hierarkia e klasave

Hierarkia e klasave
Hierarkia e klasave

Kam zbatuar një klasë bazë GameObject e cila ka koordinata dhe fusha të shpejtësisë dhe përpunon përplasjet. Klasat Anije, Alien dhe Bullet trashëgohen prej tij.

Hapi 4: Përditësimi i ekranit

Përditësimi i ekranit
Përditësimi i ekranit

Logjika e paraqitjes mund të duket disi e komplikuar sepse duhet të transformojmë logjikën e lojës 16x4 në ekran 16x2. Ju lutemi lexoni komentet në kod për referencë të mëtejshme. Për të shmangur ndezjen, kam përdorur një grup dy -dimensionale të shkronjave si një tampon teksti. Kjo ju lejon të përdorni një çift (një për secilën rresht) të operacioneve të printimit për të azhurnuar ekranin.

Hapi 5: Logjika e lojës

Logjika e lojës
Logjika e lojës

Këtu është zemra e lojës. Laku kryesor ndryshon koordinatat e të gjitha objekteve, kontrollon të gjitha llojet e përplasjeve dhe ngjarjet e shtypjes së butonit. Shpejtësia e të huajve dhe probabiliteti i të shtënave të tyre rritet nga niveli në nivel. Por shpërblimi i rezultatit rritet gjithashtu.

Hapi 6: Një vezë e Pashkëve

Një vezë e Pashkëve
Një vezë e Pashkëve

Nuk ka nivel pas nivelit 42. Seriozisht. It’sshtë niveli përfundimtar i jetës, universit dhe gjithçkaje.:)

Recommended: